diff --git a/asset-manifest.json b/asset-manifest.json index dec7261943..acbc48d40a 100644 --- a/asset-manifest.json +++ b/asset-manifest.json @@ -1,7 +1,7 @@ { "files": { "main.css": "./static/css/main.0fbd8991.css", - "main.js": "./static/js/main.18219ce4.js", + "main.js": "./static/js/main.43413829.js", "reactPlayerYouTube.js": "./static/js/reactPlayerYouTube.7af9731a.chunk.js", "reactPlayerSoundCloud.js": "./static/js/reactPlayerSoundCloud.711da1b8.chunk.js", "reactPlayerVimeo.js": "./static/js/reactPlayerVimeo.bb9275d4.chunk.js", @@ -21,7 +21,7 @@ "static/media/multisig.png": "./static/media/multisig.3ab2bbc3bda7df25ea83.png", "index.html": "./index.html", "main.0fbd8991.css.map": "./static/css/main.0fbd8991.css.map", - "main.18219ce4.js.map": "./static/js/main.18219ce4.js.map", + "main.43413829.js.map": "./static/js/main.43413829.js.map", "reactPlayerYouTube.7af9731a.chunk.js.map": "./static/js/reactPlayerYouTube.7af9731a.chunk.js.map", "reactPlayerSoundCloud.711da1b8.chunk.js.map": "./static/js/reactPlayerSoundCloud.711da1b8.chunk.js.map", "reactPlayerVimeo.bb9275d4.chunk.js.map": "./static/js/reactPlayerVimeo.bb9275d4.chunk.js.map", @@ -38,6 +38,6 @@ }, "entrypoints": [ "static/css/main.0fbd8991.css", - "static/js/main.18219ce4.js" + "static/js/main.43413829.js" ] } \ No newline at end of file diff --git a/index.html b/index.html index 9a503a67f1..295f1f040a 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -Umami
\ No newline at end of file +Umami
\ No newline at end of file diff --git a/static/js/main.18219ce4.js b/static/js/main.43413829.js similarity index 54% rename from static/js/main.18219ce4.js rename to static/js/main.43413829.js index b1575f5626..4a5ba423e3 100644 --- a/static/js/main.18219ce4.js +++ b/static/js/main.43413829.js @@ -1,5 +1,5 @@ -/*! For license information please see main.18219ce4.js.LICENSE.txt */ -(()=>{var e={5505:(e,t)=>{var r;function n(e,t){navigator.onLine||e("offline"),e("error",t)}function i(e,t,r){navigator.serviceWorker.register(e,r).then((function(e){t("registered",e),e.waiting?t("updated",e):e.onupdatefound=function(){t("updatefound",e);var r=e.installing;r.onstatechange=function(){"installed"===r.state&&(navigator.serviceWorker.controller?t("updated",e):t("cached",e))}}})).catch((function(e){return n(t,e)}))}"undefined"!==typeof window&&(r="undefined"===typeof document||"interactive"!==document.readyState&&"complete"!==document.readyState?"undefined"!==typeof Promise?new Promise((function(e){return window.addEventListener("load",e)})):{then:function(e){return window.addEventListener("load",e)}}:Promise.resolve()),t.z=function(e,t){void 0===t&&(t={});var o=t.registrationOptions;void 0===o&&(o={}),delete t.registrationOptions;var a=function(e){for(var r=[],n=arguments.length-1;n-- >0;)r[n]=arguments[n+1];t&&t[e]&&t[e].apply(t,r)};"serviceWorker"in navigator&&r.then((function(){Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/))?(!function(e,t,r){fetch(e).then((function(n){404===n.status?(t("error",new Error("Service worker not found at "+e)),unregister()):-1===n.headers.get("content-type").indexOf("javascript")?(t("error",new Error("Expected "+e+" to have javascript content-type, but received "+n.headers.get("content-type"))),unregister()):i(e,t,r)})).catch((function(e){return n(t,e)}))}(e,a,o),navigator.serviceWorker.ready.then((function(e){a("ready",e)}))):(i(e,a,o),navigator.serviceWorker.ready.then((function(e){a("ready",e)})))}))}},4103:(e,t)=>{"use strict";function r(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function n(e){if("boolean"!==typeof e)throw new Error(`Expected boolean, not ${e}`)}function i(e,...t){if(!(e instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new TypeError(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function o(e){if("function"!==typeof e||"function"!==typeof e.create)throw new Error("Hash should be wrapped by utils.wrapConstructor");r(e.outputLen),r(e.blockLen)}function a(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function s(e,t){i(e);const r=t.outputLen;if(e.length{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SHA2=void 0;const n=r(4103),i=r(9041);class o extends i.Hash{constructor(e,t,r,n){super(),this.blockLen=e,this.outputLen=t,this.padOffset=r,this.isLE=n,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=(0,i.createView)(this.buffer)}update(e){n.default.exists(this);const{view:t,buffer:r,blockLen:o}=this,a=(e=(0,i.toBytes)(e)).length;for(let n=0;no-s&&(this.process(r,0),s=0);for(let n=s;n>i&o),s=Number(r&o),c=n?4:0,l=n?0:4;e.setUint32(t+c,a,n),e.setUint32(t+l,s,n)}(r,o-8,BigInt(8*this.length),a),this.process(r,0);const c=(0,i.createView)(e),l=this.outputLen;if(l%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const u=l/4,d=this.get();if(u>d.length)throw new Error("_sha2: outputLen bigger than state");for(let n=0;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.add=t.toBig=t.split=t.fromBig=void 0;const r=BigInt(2**32-1),n=BigInt(32);function i(e,t=!1){return t?{h:Number(e&r),l:Number(e>>n&r)}:{h:0|Number(e>>n&r),l:0|Number(e&r)}}function o(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let o=0;oBigInt(e>>>0)<>>0);function a(e,t,r,n){const i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:0|i}}t.add=a;const s={fromBig:i,split:o,toBig:t.toBig,shrSH:(e,t,r)=>e>>>r,shrSL:(e,t,r)=>e<<32-r|t>>>r,rotrSH:(e,t,r)=>e>>>r|t<<32-r,rotrSL:(e,t,r)=>e<<32-r|t>>>r,rotrBH:(e,t,r)=>e<<64-r|t>>>r-32,rotrBL:(e,t,r)=>e>>>r-32|t<<64-r,rotr32H:(e,t)=>t,rotr32L:(e,t)=>e,rotlSH:(e,t,r)=>e<>>32-r,rotlSL:(e,t,r)=>t<>>32-r,rotlBH:(e,t,r)=>t<>>64-r,rotlBL:(e,t,r)=>e<>>64-r,add:a,add3L:(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),add3H:(e,t,r,n)=>t+r+n+(e/2**32|0)|0,add4L:(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),add4H:(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,add5H:(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0,add5L:(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0)};t.default=s},2639:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.crypto=void 0,t.crypto="object"===typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0},1834:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hmac=void 0;const n=r(4103),i=r(9041);class o extends i.Hash{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,n.default.hash(e);const r=(0,i.toBytes)(t);if(this.iHash=e.create(),"function"!==typeof this.iHash.update)throw new TypeError("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const o=this.blockLen,a=new Uint8Array(o);a.set(r.length>o?e.create().update(r).digest():r);for(let n=0;nnew o(e,t).update(r).digest(),t.hmac.create=(e,t)=>new o(e,t)},2291:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.pbkdf2Async=t.pbkdf2=void 0;const n=r(4103),i=r(1834),o=r(9041);function a(e,t,r,a){n.default.hash(e);const s=(0,o.checkOpts)({dkLen:32,asyncTick:10},a),{c:c,dkLen:l,asyncTick:u}=s;if(n.default.number(c),n.default.number(l),n.default.number(u),c<1)throw new Error("PBKDF2: iterations (c) should be >= 1");const d=(0,o.toBytes)(t),h=(0,o.toBytes)(r),f=new Uint8Array(l),p=i.hmac.create(e,d),m=p._cloneInto().update(h);return{c:c,dkLen:l,asyncTick:u,DK:f,PRF:p,PRFSalt:m}}function s(e,t,r,n,i){return e.destroy(),t.destroy(),n&&n.destroy(),i.fill(0),r}t.pbkdf2=function(e,t,r,n){const{c:i,dkLen:c,DK:l,PRF:u,PRFSalt:d}=a(e,t,r,n);let h;const f=new Uint8Array(4),p=(0,o.createView)(f),m=new Uint8Array(u.outputLen);for(let o=1,a=0;a{d._cloneInto(f).update(g).digestInto(g);for(let r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sha224=t.sha256=void 0;const n=r(826),i=r(9041),o=(e,t,r)=>e&t^e&r^t&r,a=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),s=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),c=new Uint32Array(64);class l extends n.SHA2{constructor(){super(64,32,8,!1),this.A=0|s[0],this.B=0|s[1],this.C=0|s[2],this.D=0|s[3],this.E=0|s[4],this.F=0|s[5],this.G=0|s[6],this.H=0|s[7]}get(){const{A:e,B:t,C:r,D:n,E:i,F:o,G:a,H:s}=this;return[e,t,r,n,i,o,a,s]}set(e,t,r,n,i,o,a,s){this.A=0|e,this.B=0|t,this.C=0|r,this.D=0|n,this.E=0|i,this.F=0|o,this.G=0|a,this.H=0|s}process(e,t){for(let i=0;i<16;i++,t+=4)c[i]=e.getUint32(t,!1);for(let o=16;o<64;o++){const e=c[o-15],t=c[o-2],r=(0,i.rotr)(e,7)^(0,i.rotr)(e,18)^e>>>3,n=(0,i.rotr)(t,17)^(0,i.rotr)(t,19)^t>>>10;c[o]=n+c[o-7]+r+c[o-16]|0}let{A:r,B:n,C:s,D:l,E:u,F:d,G:h,H:f}=this;for(let m=0;m<64;m++){const e=f+((0,i.rotr)(u,6)^(0,i.rotr)(u,11)^(0,i.rotr)(u,25))+((p=u)&d^~p&h)+a[m]+c[m]|0,t=((0,i.rotr)(r,2)^(0,i.rotr)(r,13)^(0,i.rotr)(r,22))+o(r,n,s)|0;f=h,h=d,d=u,u=l+e|0,l=s,s=n,n=r,r=e+t|0}var p;r=r+this.A|0,n=n+this.B|0,s=s+this.C|0,l=l+this.D|0,u=u+this.E|0,d=d+this.F|0,h=h+this.G|0,f=f+this.H|0,this.set(r,n,s,l,u,d,h,f)}roundClean(){c.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}class u extends l{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}}t.sha256=(0,i.wrapConstructor)((()=>new l)),t.sha224=(0,i.wrapConstructor)((()=>new u))},3974:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.shake256=t.shake128=t.keccak_512=t.keccak_384=t.keccak_256=t.keccak_224=t.sha3_512=t.sha3_384=t.sha3_256=t.sha3_224=t.Keccak=t.keccakP=void 0;const n=r(4103),i=r(1197),o=r(9041),[a,s,c]=[[],[],[]],l=BigInt(0),u=BigInt(1),d=BigInt(2),h=BigInt(7),f=BigInt(256),p=BigInt(113);for(let S=0,k=u,E=1,A=0;S<24;S++){[E,A]=[A,(2*E+3*A)%5],a.push(2*(5*A+E)),s.push((S+1)*(S+2)/2%64);let e=l;for(let t=0;t<7;t++)k=(k<>h)*p)%f,k&d&&(e^=u<<(u<r>32?i.default.rotlBH(e,t,r):i.default.rotlSH(e,t,r),y=(e,t,r)=>r>32?i.default.rotlBL(e,t,r):i.default.rotlSL(e,t,r);function b(e,t=24){const r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let n=0;n<10;n++)r[n]=e[n]^e[n+10]^e[n+20]^e[n+30]^e[n+40];for(let n=0;n<10;n+=2){const t=(n+8)%10,i=(n+2)%10,o=r[i],a=r[i+1],s=v(o,a,1)^r[t],c=y(o,a,1)^r[t+1];for(let r=0;r<50;r+=10)e[n+r]^=s,e[n+r+1]^=c}let t=e[2],i=e[3];for(let r=0;r<24;r++){const n=s[r],o=v(t,i,n),c=y(t,i,n),l=a[r];t=e[l],i=e[l+1],e[l]=o,e[l+1]=c}for(let n=0;n<50;n+=10){for(let t=0;t<10;t++)r[t]=e[n+t];for(let t=0;t<10;t++)e[n+t]^=~r[(t+2)%10]&r[(t+4)%10]}e[0]^=m[n],e[1]^=g[n]}r.fill(0)}t.keccakP=b;class w extends o.Hash{constructor(e,t,r,i=!1,a=24){if(super(),this.blockLen=e,this.suffix=t,this.outputLen=r,this.enableXOF=i,this.rounds=a,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,n.default.number(r),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=(0,o.u32)(this.state)}keccak(){b(this.state32,this.rounds),this.posOut=0,this.pos=0}update(e){n.default.exists(this);const{blockLen:t,state:r}=this,i=(e=(0,o.toBytes)(e)).length;for(let n=0;n=r&&this.keccak();const o=Math.min(r-this.posOut,i-n);e.set(t.subarray(this.posOut,this.posOut+o),n),this.posOut+=o,n+=o}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return n.default.number(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(n.default.output(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){const{blockLen:t,suffix:r,outputLen:n,rounds:i,enableXOF:o}=this;return e||(e=new w(t,r,n,o,i)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=i,e.suffix=r,e.outputLen=n,e.enableXOF=o,e.destroyed=this.destroyed,e}}t.Keccak=w;const x=(e,t,r)=>(0,o.wrapConstructor)((()=>new w(t,e,r)));t.sha3_224=x(6,144,28),t.sha3_256=x(6,136,32),t.sha3_384=x(6,104,48),t.sha3_512=x(6,72,64),t.keccak_224=x(1,144,28),t.keccak_256=x(1,136,32),t.keccak_384=x(1,104,48),t.keccak_512=x(1,72,64);const _=(e,t,r)=>(0,o.wrapConstructorWithOpts)(((n={})=>new w(t,e,void 0===n.dkLen?r:n.dkLen,!0)));t.shake128=_(31,168,16),t.shake256=_(31,136,32)},2670:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sha384=t.sha512_256=t.sha512_224=t.sha512=t.SHA512=void 0;const n=r(826),i=r(1197),o=r(9041),[a,s]=i.default.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map((e=>BigInt(e)))),c=new Uint32Array(80),l=new Uint32Array(80);class u extends n.SHA2{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:e,Al:t,Bh:r,Bl:n,Ch:i,Cl:o,Dh:a,Dl:s,Eh:c,El:l,Fh:u,Fl:d,Gh:h,Gl:f,Hh:p,Hl:m}=this;return[e,t,r,n,i,o,a,s,c,l,u,d,h,f,p,m]}set(e,t,r,n,i,o,a,s,c,l,u,d,h,f,p,m){this.Ah=0|e,this.Al=0|t,this.Bh=0|r,this.Bl=0|n,this.Ch=0|i,this.Cl=0|o,this.Dh=0|a,this.Dl=0|s,this.Eh=0|c,this.El=0|l,this.Fh=0|u,this.Fl=0|d,this.Gh=0|h,this.Gl=0|f,this.Hh=0|p,this.Hl=0|m}process(e,t){for(let i=0;i<16;i++,t+=4)c[i]=e.getUint32(t),l[i]=e.getUint32(t+=4);for(let a=16;a<80;a++){const e=0|c[a-15],t=0|l[a-15],r=i.default.rotrSH(e,t,1)^i.default.rotrSH(e,t,8)^i.default.shrSH(e,t,7),n=i.default.rotrSL(e,t,1)^i.default.rotrSL(e,t,8)^i.default.shrSL(e,t,7),o=0|c[a-2],s=0|l[a-2],u=i.default.rotrSH(o,s,19)^i.default.rotrBH(o,s,61)^i.default.shrSH(o,s,6),d=i.default.rotrSL(o,s,19)^i.default.rotrBL(o,s,61)^i.default.shrSL(o,s,6),h=i.default.add4L(n,d,l[a-7],l[a-16]),f=i.default.add4H(h,r,u,c[a-7],c[a-16]);c[a]=0|f,l[a]=0|h}let{Ah:r,Al:n,Bh:o,Bl:u,Ch:d,Cl:h,Dh:f,Dl:p,Eh:m,El:g,Fh:v,Fl:y,Gh:b,Gl:w,Hh:x,Hl:_}=this;for(let S=0;S<80;S++){const e=i.default.rotrSH(m,g,14)^i.default.rotrSH(m,g,18)^i.default.rotrBH(m,g,41),t=i.default.rotrSL(m,g,14)^i.default.rotrSL(m,g,18)^i.default.rotrBL(m,g,41),k=m&v^~m&b,E=g&y^~g&w,A=i.default.add5L(_,t,E,s[S],l[S]),P=i.default.add5H(A,x,e,k,a[S],c[S]),O=0|A,T=i.default.rotrSH(r,n,28)^i.default.rotrBH(r,n,34)^i.default.rotrBH(r,n,39),C=i.default.rotrSL(r,n,28)^i.default.rotrBL(r,n,34)^i.default.rotrBL(r,n,39),j=r&o^r&d^o&d,R=n&u^n&h^u&h;x=0|b,_=0|w,b=0|v,w=0|y,v=0|m,y=0|g,({h:m,l:g}=i.default.add(0|f,0|p,0|P,0|O)),f=0|d,p=0|h,d=0|o,h=0|u,o=0|r,u=0|n;const I=i.default.add3L(O,C,R);r=i.default.add3H(I,P,T,j),n=0|I}({h:r,l:n}=i.default.add(0|this.Ah,0|this.Al,0|r,0|n)),({h:o,l:u}=i.default.add(0|this.Bh,0|this.Bl,0|o,0|u)),({h:d,l:h}=i.default.add(0|this.Ch,0|this.Cl,0|d,0|h)),({h:f,l:p}=i.default.add(0|this.Dh,0|this.Dl,0|f,0|p)),({h:m,l:g}=i.default.add(0|this.Eh,0|this.El,0|m,0|g)),({h:v,l:y}=i.default.add(0|this.Fh,0|this.Fl,0|v,0|y)),({h:b,l:w}=i.default.add(0|this.Gh,0|this.Gl,0|b,0|w)),({h:x,l:_}=i.default.add(0|this.Hh,0|this.Hl,0|x,0|_)),this.set(r,n,o,u,d,h,f,p,m,g,v,y,b,w,x,_)}roundClean(){c.fill(0),l.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}t.SHA512=u;class d extends u{constructor(){super(),this.Ah=-1942145080,this.Al=424955298,this.Bh=1944164710,this.Bl=-1982016298,this.Ch=502970286,this.Cl=855612546,this.Dh=1738396948,this.Dl=1479516111,this.Eh=258812777,this.El=2077511080,this.Fh=2011393907,this.Fl=79989058,this.Gh=1067287976,this.Gl=1780299464,this.Hh=286451373,this.Hl=-1848208735,this.outputLen=28}}class h extends u{constructor(){super(),this.Ah=573645204,this.Al=-64227540,this.Bh=-1621794909,this.Bl=-934517566,this.Ch=596883563,this.Cl=1867755857,this.Dh=-1774684391,this.Dl=1497426621,this.Eh=-1775747358,this.El=-1467023389,this.Fh=-1101128155,this.Fl=1401305490,this.Gh=721525244,this.Gl=746961066,this.Hh=246885852,this.Hl=-2117784414,this.outputLen=32}}class f extends u{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}}t.sha512=(0,o.wrapConstructor)((()=>new u)),t.sha512_224=(0,o.wrapConstructor)((()=>new d)),t.sha512_256=(0,o.wrapConstructor)((()=>new h)),t.sha384=(0,o.wrapConstructor)((()=>new f))},9041:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomBytes=t.wrapConstructorWithOpts=t.wrapConstructor=t.checkOpts=t.Hash=t.concatBytes=t.toBytes=t.utf8ToBytes=t.asyncLoop=t.nextTick=t.hexToBytes=t.bytesToHex=t.isLE=t.rotr=t.createView=t.u32=t.u8=void 0;const n=r(2639);t.u8=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength);t.u32=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));t.createView=e=>new DataView(e.buffer,e.byteOffset,e.byteLength);if(t.rotr=(e,t)=>e<<32-t|e>>>t,t.isLE=68===new Uint8Array(new Uint32Array([287454020]).buffer)[0],!t.isLE)throw new Error("Non little-endian hardware is not supported");const i=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));t.bytesToHex=function(e){if(!(e instanceof Uint8Array))throw new Error("Uint8Array expected");let t="";for(let r=0;r{},t.asyncLoop=async function(e,r,n){let i=Date.now();for(let o=0;o=0&&ee instanceof Uint8Array)))throw new Error("Uint8Array list expected");if(1===e.length)return e[0];const t=e.reduce(((e,t)=>e+t.length),0),r=new Uint8Array(t);for(let n=0,i=0;ne().update(a(t)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t},t.wrapConstructorWithOpts=function(e){const t=(t,r)=>e(r).update(a(t)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=t=>e(t),t},t.randomBytes=function(e=32){if(n.crypto&&"function"===typeof n.crypto.getRandomValues)return n.crypto.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}},7318:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(6880);function i(e,t,r){return void 0===t&&(t=new Uint8Array(2)),void 0===r&&(r=0),t[r+0]=e>>>8,t[r+1]=e>>>0,t}function o(e,t,r){return void 0===t&&(t=new Uint8Array(2)),void 0===r&&(r=0),t[r+0]=e>>>0,t[r+1]=e>>>8,t}function a(e,t){return void 0===t&&(t=0),e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]}function s(e,t){return void 0===t&&(t=0),(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}function c(e,t){return void 0===t&&(t=0),e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t]}function l(e,t){return void 0===t&&(t=0),(e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t])>>>0}function u(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),t[r+0]=e>>>24,t[r+1]=e>>>16,t[r+2]=e>>>8,t[r+3]=e>>>0,t}function d(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),t[r+0]=e>>>0,t[r+1]=e>>>8,t[r+2]=e>>>16,t[r+3]=e>>>24,t}function h(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),u(e/4294967296>>>0,t,r),u(e>>>0,t,r+4),t}function f(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),d(e>>>0,t,r),d(e/4294967296>>>0,t,r+4),t}t.readInt16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])<<16>>16},t.readUint16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])>>>0},t.readInt16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])<<16>>16},t.readUint16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])>>>0},t.writeUint16BE=i,t.writeInt16BE=i,t.writeUint16LE=o,t.writeInt16LE=o,t.readInt32BE=a,t.readUint32BE=s,t.readInt32LE=c,t.readUint32LE=l,t.writeUint32BE=u,t.writeInt32BE=u,t.writeUint32LE=d,t.writeInt32LE=d,t.readInt64BE=function(e,t){void 0===t&&(t=0);var r=a(e,t),n=a(e,t+4);return 4294967296*r+n-4294967296*(n>>31)},t.readUint64BE=function(e,t){return void 0===t&&(t=0),4294967296*s(e,t)+s(e,t+4)},t.readInt64LE=function(e,t){void 0===t&&(t=0);var r=c(e,t);return 4294967296*c(e,t+4)+r-4294967296*(r>>31)},t.readUint64LE=function(e,t){void 0===t&&(t=0);var r=l(e,t);return 4294967296*l(e,t+4)+r},t.writeUint64BE=h,t.writeInt64BE=h,t.writeUint64LE=f,t.writeInt64LE=f,t.readUintBE=function(e,t,r){if(void 0===r&&(r=0),e%8!==0)throw new Error("readUintBE supports only bitLengths divisible by 8");if(e/8>t.length-r)throw new Error("readUintBE: array is too short for the given bitLength");for(var n=0,i=1,o=e/8+r-1;o>=r;o--)n+=t[o]*i,i*=256;return n},t.readUintLE=function(e,t,r){if(void 0===r&&(r=0),e%8!==0)throw new Error("readUintLE supports only bitLengths divisible by 8");if(e/8>t.length-r)throw new Error("readUintLE: array is too short for the given bitLength");for(var n=0,i=1,o=r;o=i;a--)r[a]=t/o&255,o*=256;return r},t.writeUintLE=function(e,t,r,i){if(void 0===r&&(r=new Uint8Array(e/8)),void 0===i&&(i=0),e%8!==0)throw new Error("writeUintLE supports only bitLengths divisible by 8");if(!n.isSafeInteger(t))throw new Error("writeUintLE value must be an integer");for(var o=1,a=i;a{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(7318),i=r(3133);t.BLOCK_SIZE=128,t.DIGEST_LENGTH=64,t.KEY_LENGTH=64,t.PERSONALIZATION_LENGTH=16,t.SALT_LENGTH=16,t.MAX_LEAF_SIZE=Math.pow(2,32)-1,t.MAX_FANOUT=255,t.MAX_MAX_DEPTH=255;var o=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),a=[[0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30],[28,20,8,16,18,30,26,12,2,24,0,4,22,14,10,6],[22,16,24,0,10,4,30,26,20,28,6,12,14,2,18,8],[14,18,6,2,26,24,22,28,4,12,10,20,8,0,30,16],[18,0,10,14,4,8,20,30,28,2,22,24,12,16,6,26],[4,24,12,20,0,22,16,6,8,26,14,10,30,28,2,18],[24,10,2,30,28,26,8,20,0,14,12,6,18,4,16,22],[26,22,14,28,24,2,6,18,10,0,30,8,16,12,4,20],[12,30,28,18,22,6,0,16,24,4,26,14,2,8,20,10],[20,4,16,8,14,12,2,10,30,22,18,28,6,24,26,0],[0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30],[28,20,8,16,18,30,26,12,2,24,0,4,22,14,10,6]],s=function(){function e(e,r){if(void 0===e&&(e=64),this.digestLength=e,this.blockSize=t.BLOCK_SIZE,this._state=new Int32Array(o),this._buffer=new Uint8Array(t.BLOCK_SIZE),this._bufferLength=0,this._ctr=new Uint32Array(4),this._flag=new Uint32Array(4),this._lastNode=!1,this._finished=!1,this._vtmp=new Uint32Array(32),this._mtmp=new Uint32Array(32),e<1||e>t.DIGEST_LENGTH)throw new Error("blake2b: wrong digest length");r&&this.validateConfig(r);var i=0;r&&r.key&&(i=r.key.length);var a=1,s=1;r&&r.tree&&(a=r.tree.fanout,s=r.tree.maxDepth),this._state[0]^=e|i<<8|a<<16|s<<24,r&&r.tree&&(this._state[1]^=r.tree.leafSize,this._state[2]^=r.tree.nodeOffsetLowBits,this._state[3]^=r.tree.nodeOffsetHighBits,this._state[4]^=r.tree.nodeDepth|r.tree.innerDigestLength<<8,this._lastNode=r.tree.lastNode),r&&r.salt&&(this._state[8]^=n.readUint32LE(r.salt,0),this._state[9]^=n.readUint32LE(r.salt,4),this._state[10]^=n.readUint32LE(r.salt,8),this._state[11]^=n.readUint32LE(r.salt,12)),r&&r.personalization&&(this._state[12]^=n.readUint32LE(r.personalization,0),this._state[13]^=n.readUint32LE(r.personalization,4),this._state[14]^=n.readUint32LE(r.personalization,8),this._state[15]^=n.readUint32LE(r.personalization,12)),this._initialState=new Uint32Array(this._state),r&&r.key&&i>0&&(this._paddedKey=new Uint8Array(t.BLOCK_SIZE),this._paddedKey.set(r.key),this._buffer.set(this._paddedKey),this._bufferLength=t.BLOCK_SIZE)}return e.prototype.reset=function(){return this._state.set(this._initialState),this._paddedKey?(this._buffer.set(this._paddedKey),this._bufferLength=t.BLOCK_SIZE):this._bufferLength=0,i.wipe(this._ctr),i.wipe(this._flag),this._finished=!1,this},e.prototype.validateConfig=function(e){if(e.key&&e.key.length>t.KEY_LENGTH)throw new Error("blake2b: wrong key length");if(e.salt&&e.salt.length!==t.SALT_LENGTH)throw new Error("blake2b: wrong salt length");if(e.personalization&&e.personalization.length!==t.PERSONALIZATION_LENGTH)throw new Error("blake2b: wrong personalization length");if(e.tree){if(e.tree.fanout<0||e.tree.fanout>t.MAX_FANOUT)throw new Error("blake2b: wrong tree fanout");if(e.tree.maxDepth<0||e.tree.maxDepth>t.MAX_MAX_DEPTH)throw new Error("blake2b: wrong tree depth");if(e.tree.leafSize<0||e.tree.leafSize>t.MAX_LEAF_SIZE)throw new Error("blake2b: wrong leaf size");if(e.tree.innerDigestLength<0||e.tree.innerDigestLength>t.DIGEST_LENGTH)throw new Error("blake2b: wrong tree inner digest length")}},e.prototype.update=function(e,r){if(void 0===r&&(r=e.length),this._finished)throw new Error("blake2b: can't update because hash was finished.");var n=t.BLOCK_SIZE-this._bufferLength,i=0;if(0===r)return this;if(r>n){for(var o=0;ot.BLOCK_SIZE;){for(o=0;o>>16,S=65535&p,k=p>>>16;_+=m>>>16,S+=65535&g,k+=g>>>16,S+=(_+=(x+=65535&m)>>>16)>>>16,x=65535&(f=65535&x|_<<16),_=f>>>16,S=65535&(p=65535&S|(k+=S>>>16)<<16),k=p>>>16,_+=l>>>16,S+=65535&u,k+=u>>>16,f=65535&(x+=65535&l)|(_+=x>>>16)<<16,x=w^=p=65535&(S+=_>>>16)|(k+=S>>>16)<<16,w=b^=f,b=x,x=65535&v,_=v>>>16,S=65535&y,k=y>>>16,_+=b>>>16,S+=65535&w,k+=w>>>16,x=(m^=v=65535&(x+=65535&b)|(_+=x>>>16)<<16)<<8|(g^=y=65535&(S+=_>>>16)|(k+=S>>>16)<<16)>>>24,m=g<<8|m>>>24,g=x,x=65535&f,_=f>>>16,S=65535&p,k=p>>>16,_+=m>>>16,S+=65535&g,k+=g>>>16,S+=(_+=(x+=65535&m)>>>16)>>>16,x=65535&(f=65535&x|_<<16),_=f>>>16,S=65535&(p=65535&S|(k+=S>>>16)<<16),k=p>>>16,_+=d>>>16,S+=65535&h,k+=h>>>16,x=(b^=f=65535&(x+=65535&d)|(_+=x>>>16)<<16)<<16|(w^=p=65535&(S+=_>>>16)|(k+=S>>>16)<<16)>>>16,b=w<<16|b>>>16,w=x,x=65535&v,_=v>>>16,S=65535&y,k=y>>>16,_+=b>>>16,S+=65535&w,k+=w>>>16,x=(g^=y=65535&(S+=(_+=(x+=65535&b)>>>16)>>>16)|(k+=S>>>16)<<16)<<1|(m^=v=65535&x|_<<16)>>>31,m=m<<1|g>>>31,g=x,e[t]=f,e[o]=p,e[r]=m,e[a]=g,e[n]=v,e[s]=y,e[i]=b,e[c]=w},e.prototype._incrementCounter=function(e){for(var t=0;t<3;t++){var r=this._ctr[t]+e;if(this._ctr[t]=r>>>0,this._ctr[t]===r)return;e=1}},e.prototype._processBlock=function(e){this._incrementCounter(e);var t=this._vtmp;t.set(this._state),t.set(o,16),t[24]^=this._ctr[0],t[25]^=this._ctr[1],t[26]^=this._ctr[2],t[27]^=this._ctr[3],t[28]^=this._flag[0],t[29]^=this._flag[1],t[30]^=this._flag[2],t[31]^=this._flag[3];for(var r=this._mtmp,i=0;i<32;i++)r[i]=n.readUint32LE(this._buffer,4*i);for(var s=0;s<12;s++)this._G(t,0,8,16,24,1,9,17,25,r[a[s][0]],r[a[s][0]+1],r[a[s][1]],r[a[s][1]+1]),this._G(t,2,10,18,26,3,11,19,27,r[a[s][2]],r[a[s][2]+1],r[a[s][3]],r[a[s][3]+1]),this._G(t,4,12,20,28,5,13,21,29,r[a[s][4]],r[a[s][4]+1],r[a[s][5]],r[a[s][5]+1]),this._G(t,6,14,22,30,7,15,23,31,r[a[s][6]],r[a[s][6]+1],r[a[s][7]],r[a[s][7]+1]),this._G(t,0,10,20,30,1,11,21,31,r[a[s][8]],r[a[s][8]+1],r[a[s][9]],r[a[s][9]+1]),this._G(t,2,12,22,24,3,13,23,25,r[a[s][10]],r[a[s][10]+1],r[a[s][11]],r[a[s][11]+1]),this._G(t,4,14,16,26,5,15,17,27,r[a[s][12]],r[a[s][12]+1],r[a[s][13]],r[a[s][13]+1]),this._G(t,6,8,18,28,7,9,19,29,r[a[s][14]],r[a[s][14]+1],r[a[s][15]],r[a[s][15]+1]);for(i=0;i<16;i++)this._state[i]^=t[i]^t[i+16]},e}();t.BLAKE2b=s,t.hash=function(e,r,n){void 0===r&&(r=t.DIGEST_LENGTH);var i=new s(r,n);i.update(e);var o=i.digest();return i.clean(),o}},4082:(e,t)=>{"use strict";t.z=function(){for(var e=0,t=0;t{"use strict";function r(e,t){if(e.length!==t.length)return 0;for(var r=0,n=0;n>>8}Object.defineProperty(t,"__esModule",{value:!0}),t.select=function(e,t,r){return~(e-1)&t|e-1&r},t.lessOrEqual=function(e,t){return(0|e)-(0|t)-1>>>31&1},t.compare=r,t.equal=function(e,t){return 0!==e.length&&0!==t.length&&0!==r(e,t)}},4670:(e,t,r)=>{"use strict";t.zh=t.SH=t.Xx=t._w=t.aP=t.KS=t.jQ=void 0;const n=r(5164),i=r(4516),o=r(3133);function a(e){const t=new Float64Array(16);if(e)for(let r=0;r>16&1),r[t-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);const e=r[15]>>16&1;r[14]&=65535,g(n,r,1-e)}for(let i=0;i<16;i++)e[2*i]=255&n[i],e[2*i+1]=n[i]>>8}function y(e,t){let r=0;for(let n=0;n<32;n++)r|=e[n]^t[n];return(1&r-1>>>8)-1}function b(e,t){const r=new Uint8Array(32),n=new Uint8Array(32);return v(r,e),v(n,t),y(r,n)}function w(e){const t=new Uint8Array(32);return v(t,e),1&t[0]}function x(e,t,r){for(let n=0;n<16;n++)e[n]=t[n]+r[n]}function _(e,t,r){for(let n=0;n<16;n++)e[n]=t[n]-r[n]}function S(e,t,r){let n,i,o=0,a=0,s=0,c=0,l=0,u=0,d=0,h=0,f=0,p=0,m=0,g=0,v=0,y=0,b=0,w=0,x=0,_=0,S=0,k=0,E=0,A=0,P=0,O=0,T=0,C=0,j=0,R=0,I=0,M=0,L=0,N=r[0],D=r[1],z=r[2],B=r[3],U=r[4],F=r[5],$=r[6],H=r[7],V=r[8],q=r[9],K=r[10],W=r[11],G=r[12],Z=r[13],Y=r[14],X=r[15];n=t[0],o+=n*N,a+=n*D,s+=n*z,c+=n*B,l+=n*U,u+=n*F,d+=n*$,h+=n*H,f+=n*V,p+=n*q,m+=n*K,g+=n*W,v+=n*G,y+=n*Z,b+=n*Y,w+=n*X,n=t[1],a+=n*N,s+=n*D,c+=n*z,l+=n*B,u+=n*U,d+=n*F,h+=n*$,f+=n*H,p+=n*V,m+=n*q,g+=n*K,v+=n*W,y+=n*G,b+=n*Z,w+=n*Y,x+=n*X,n=t[2],s+=n*N,c+=n*D,l+=n*z,u+=n*B,d+=n*U,h+=n*F,f+=n*$,p+=n*H,m+=n*V,g+=n*q,v+=n*K,y+=n*W,b+=n*G,w+=n*Z,x+=n*Y,_+=n*X,n=t[3],c+=n*N,l+=n*D,u+=n*z,d+=n*B,h+=n*U,f+=n*F,p+=n*$,m+=n*H,g+=n*V,v+=n*q,y+=n*K,b+=n*W,w+=n*G,x+=n*Z,_+=n*Y,S+=n*X,n=t[4],l+=n*N,u+=n*D,d+=n*z,h+=n*B,f+=n*U,p+=n*F,m+=n*$,g+=n*H,v+=n*V,y+=n*q,b+=n*K,w+=n*W,x+=n*G,_+=n*Z,S+=n*Y,k+=n*X,n=t[5],u+=n*N,d+=n*D,h+=n*z,f+=n*B,p+=n*U,m+=n*F,g+=n*$,v+=n*H,y+=n*V,b+=n*q,w+=n*K,x+=n*W,_+=n*G,S+=n*Z,k+=n*Y,E+=n*X,n=t[6],d+=n*N,h+=n*D,f+=n*z,p+=n*B,m+=n*U,g+=n*F,v+=n*$,y+=n*H,b+=n*V,w+=n*q,x+=n*K,_+=n*W,S+=n*G,k+=n*Z,E+=n*Y,A+=n*X,n=t[7],h+=n*N,f+=n*D,p+=n*z,m+=n*B,g+=n*U,v+=n*F,y+=n*$,b+=n*H,w+=n*V,x+=n*q,_+=n*K,S+=n*W,k+=n*G,E+=n*Z,A+=n*Y,P+=n*X,n=t[8],f+=n*N,p+=n*D,m+=n*z,g+=n*B,v+=n*U,y+=n*F,b+=n*$,w+=n*H,x+=n*V,_+=n*q,S+=n*K,k+=n*W,E+=n*G,A+=n*Z,P+=n*Y,O+=n*X,n=t[9],p+=n*N,m+=n*D,g+=n*z,v+=n*B,y+=n*U,b+=n*F,w+=n*$,x+=n*H,_+=n*V,S+=n*q,k+=n*K,E+=n*W,A+=n*G,P+=n*Z,O+=n*Y,T+=n*X,n=t[10],m+=n*N,g+=n*D,v+=n*z,y+=n*B,b+=n*U,w+=n*F,x+=n*$,_+=n*H,S+=n*V,k+=n*q,E+=n*K,A+=n*W,P+=n*G,O+=n*Z,T+=n*Y,C+=n*X,n=t[11],g+=n*N,v+=n*D,y+=n*z,b+=n*B,w+=n*U,x+=n*F,_+=n*$,S+=n*H,k+=n*V,E+=n*q,A+=n*K,P+=n*W,O+=n*G,T+=n*Z,C+=n*Y,j+=n*X,n=t[12],v+=n*N,y+=n*D,b+=n*z,w+=n*B,x+=n*U,_+=n*F,S+=n*$,k+=n*H,E+=n*V,A+=n*q,P+=n*K,O+=n*W,T+=n*G,C+=n*Z,j+=n*Y,R+=n*X,n=t[13],y+=n*N,b+=n*D,w+=n*z,x+=n*B,_+=n*U,S+=n*F,k+=n*$,E+=n*H,A+=n*V,P+=n*q,O+=n*K,T+=n*W,C+=n*G,j+=n*Z,R+=n*Y,I+=n*X,n=t[14],b+=n*N,w+=n*D,x+=n*z,_+=n*B,S+=n*U,k+=n*F,E+=n*$,A+=n*H,P+=n*V,O+=n*q,T+=n*K,C+=n*W,j+=n*G,R+=n*Z,I+=n*Y,M+=n*X,n=t[15],w+=n*N,x+=n*D,_+=n*z,S+=n*B,k+=n*U,E+=n*F,A+=n*$,P+=n*H,O+=n*V,T+=n*q,C+=n*K,j+=n*W,R+=n*G,I+=n*Z,M+=n*Y,L+=n*X,o+=38*x,a+=38*_,s+=38*S,c+=38*k,l+=38*E,u+=38*A,d+=38*P,h+=38*O,f+=38*T,p+=38*C,m+=38*j,g+=38*R,v+=38*I,y+=38*M,b+=38*L,i=1,n=o+i+65535,i=Math.floor(n/65536),o=n-65536*i,n=a+i+65535,i=Math.floor(n/65536),a=n-65536*i,n=s+i+65535,i=Math.floor(n/65536),s=n-65536*i,n=c+i+65535,i=Math.floor(n/65536),c=n-65536*i,n=l+i+65535,i=Math.floor(n/65536),l=n-65536*i,n=u+i+65535,i=Math.floor(n/65536),u=n-65536*i,n=d+i+65535,i=Math.floor(n/65536),d=n-65536*i,n=h+i+65535,i=Math.floor(n/65536),h=n-65536*i,n=f+i+65535,i=Math.floor(n/65536),f=n-65536*i,n=p+i+65535,i=Math.floor(n/65536),p=n-65536*i,n=m+i+65535,i=Math.floor(n/65536),m=n-65536*i,n=g+i+65535,i=Math.floor(n/65536),g=n-65536*i,n=v+i+65535,i=Math.floor(n/65536),v=n-65536*i,n=y+i+65535,i=Math.floor(n/65536),y=n-65536*i,n=b+i+65535,i=Math.floor(n/65536),b=n-65536*i,n=w+i+65535,i=Math.floor(n/65536),w=n-65536*i,o+=i-1+37*(i-1),i=1,n=o+i+65535,i=Math.floor(n/65536),o=n-65536*i,n=a+i+65535,i=Math.floor(n/65536),a=n-65536*i,n=s+i+65535,i=Math.floor(n/65536),s=n-65536*i,n=c+i+65535,i=Math.floor(n/65536),c=n-65536*i,n=l+i+65535,i=Math.floor(n/65536),l=n-65536*i,n=u+i+65535,i=Math.floor(n/65536),u=n-65536*i,n=d+i+65535,i=Math.floor(n/65536),d=n-65536*i,n=h+i+65535,i=Math.floor(n/65536),h=n-65536*i,n=f+i+65535,i=Math.floor(n/65536),f=n-65536*i,n=p+i+65535,i=Math.floor(n/65536),p=n-65536*i,n=m+i+65535,i=Math.floor(n/65536),m=n-65536*i,n=g+i+65535,i=Math.floor(n/65536),g=n-65536*i,n=v+i+65535,i=Math.floor(n/65536),v=n-65536*i,n=y+i+65535,i=Math.floor(n/65536),y=n-65536*i,n=b+i+65535,i=Math.floor(n/65536),b=n-65536*i,n=w+i+65535,i=Math.floor(n/65536),w=n-65536*i,o+=i-1+37*(i-1),e[0]=o,e[1]=a,e[2]=s,e[3]=c,e[4]=l,e[5]=u,e[6]=d,e[7]=h,e[8]=f,e[9]=p,e[10]=m,e[11]=g,e[12]=v,e[13]=y,e[14]=b,e[15]=w}function k(e,t){S(e,t,t)}function E(e,t){const r=a();let n;for(n=0;n<16;n++)r[n]=t[n];for(n=253;n>=0;n--)k(r,r),2!==n&&4!==n&&S(r,r,t);for(n=0;n<16;n++)e[n]=r[n]}function A(e,t){const r=a(),n=a(),i=a(),o=a(),s=a(),c=a(),l=a(),d=a(),h=a();_(r,e[1],e[0]),_(h,t[1],t[0]),S(r,r,h),x(n,e[0],e[1]),x(h,t[0],t[1]),S(n,n,h),S(i,e[3],t[3]),S(i,i,u),S(o,e[2],t[2]),x(o,o,o),_(s,n,r),_(c,o,i),x(l,o,i),x(d,n,r),S(e[0],s,c),S(e[1],d,l),S(e[2],l,c),S(e[3],s,d)}function P(e,t,r){for(let n=0;n<4;n++)g(e[n],t[n],r)}function O(e,t){const r=a(),n=a(),i=a();E(i,t[2]),S(r,t[0],i),S(n,t[1],i),v(e,n),e[31]^=w(r)<<7}function T(e,t,r){p(e[0],s),p(e[1],c),p(e[2],c),p(e[3],s);for(let n=255;n>=0;--n){const i=r[n/8|0]>>(7&n)&1;P(e,t,i),A(t,e),A(e,e),P(e,t,i)}}function C(e,t){const r=[a(),a(),a(),a()];p(r[0],d),p(r[1],h),p(r[2],c),S(r[3],d,h),T(e,r,t)}function j(e){if(e.length!==t.aP)throw new Error(`ed25519: seed must be ${t.aP} bytes`);const r=(0,i.hash)(e);r[0]&=248,r[31]&=127,r[31]|=64;const n=new Uint8Array(32),o=[a(),a(),a(),a()];C(o,r),O(n,o);const s=new Uint8Array(64);return s.set(e),s.set(n,32),{publicKey:n,secretKey:s}}t._w=j;const R=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function I(e,t){let r,n,i,o;for(n=63;n>=32;--n){for(r=0,i=n-32,o=n-12;i>4)*R[i],r=t[i]>>8,t[i]&=255;for(i=0;i<32;i++)t[i]-=r*R[i];for(n=0;n<32;n++)t[n+1]+=t[n]>>8,e[n]=255&t[n]}function M(e){const t=new Float64Array(64);for(let r=0;r<64;r++)t[r]=e[r];for(let r=0;r<64;r++)e[r]=0;I(e,t)}function L(e,t){const r=a(),n=a(),i=a(),o=a(),u=a(),d=a(),h=a();return p(e[2],c),function(e,t){for(let r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}(e[1],t),k(i,e[1]),S(o,i,l),_(i,i,e[2]),x(o,e[2],o),k(u,o),k(d,u),S(h,d,u),S(r,h,i),S(r,r,o),function(e,t){const r=a();let n;for(n=0;n<16;n++)r[n]=t[n];for(n=250;n>=0;n--)k(r,r),1!==n&&S(r,r,t);for(n=0;n<16;n++)e[n]=r[n]}(r,r),S(r,r,i),S(r,r,o),S(r,r,o),S(e[0],r,o),k(n,e[0]),S(n,n,o),b(n,i)&&S(e[0],e[0],f),k(n,e[0]),S(n,n,o),b(n,i)?-1:(w(e[0])===t[31]>>7&&_(e[0],s,e[0]),S(e[3],e[0],e[1]),0)}t.Xx=function(e,t){const r=new Float64Array(64),n=[a(),a(),a(),a()],o=(0,i.hash)(e.subarray(0,32));o[0]&=248,o[31]&=127,o[31]|=64;const s=new Uint8Array(64);s.set(o.subarray(32),32);const c=new i.SHA512;c.update(s.subarray(32)),c.update(t);const l=c.digest();c.clean(),M(l),C(n,l),O(s,n),c.reset(),c.update(s.subarray(0,32)),c.update(e.subarray(32)),c.update(t);const u=c.digest();M(u);for(let i=0;i<32;i++)r[i]=l[i];for(let i=0;i<32;i++)for(let e=0;e<32;e++)r[i+e]+=u[i]*o[e];return I(s.subarray(32),r),s},t.SH=function(e){let t=[a(),a(),a(),a()];if(L(t,e))throw new Error("Ed25519: invalid public key");let r=a(),n=a(),i=t[1];x(r,c,i),_(n,c,i),E(n,n),S(r,r,n);let o=new Uint8Array(32);return v(o,r),o},t.zh=function(e){const t=(0,i.hash)(e.subarray(0,32));t[0]&=248,t[31]&=127,t[31]|=64;const r=new Uint8Array(t.subarray(0,32));return(0,o.wipe)(t),r}},393:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSerializableHash=function(e){return"undefined"!==typeof e.saveState&&"undefined"!==typeof e.restoreState&&"undefined"!==typeof e.cleanSavedState}},1787:(e,t,r)=>{"use strict";var n=r(393),i=r(6433),o=r(3133),a=function(){function e(e,t){this._finished=!1,this._inner=new e,this._outer=new e,this.blockSize=this._outer.blockSize,this.digestLength=this._outer.digestLength;var r=new Uint8Array(this.blockSize);t.length>this.blockSize?this._inner.update(t).finish(r).clean():r.set(t);for(var i=0;i{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mul=Math.imul||function(e,t){var r=65535&e,n=65535&t;return r*n+((e>>>16&65535)*n+r*(t>>>16&65535)<<16>>>0)|0},t.add=function(e,t){return e+t|0},t.sub=function(e,t){return e-t|0},t.rotl=function(e,t){return e<>>32-t},t.rotr=function(e,t){return e<<32-t|e>>>t},t.isInteger=Number.isInteger||function(e){return"number"===typeof e&&isFinite(e)&&Math.floor(e)===e},t.MAX_SAFE_INTEGER=9007199254740991,t.isSafeInteger=function(e){return t.isInteger(e)&&e>=-t.MAX_SAFE_INTEGER&&e<=t.MAX_SAFE_INTEGER}},168:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.openBox=t.box=t.precomputeSharedKey=t.generateKeyPair=void 0;const n=r(4592),i=r(3911),o=r(7054),a=r(3133);var s=r(4592);Object.defineProperty(t,"generateKeyPair",{enumerable:!0,get:function(){return s.generateKeyPair}});const c=new Uint8Array(16);function l(e,t){const r=(0,n.scalarMult)(t,e);return(0,i.hsalsa)(r,c,r),r}t.precomputeSharedKey=l,t.box=function(e,t,r,n){const i=l(e,t),s=(0,o.secretBox)(i,r,n);return(0,a.wipe)(i),s},t.openBox=function(e,t,r,n){const i=l(e,t),s=(0,o.openSecretBox)(i,r,n);return(0,a.wipe)(i),s}},8945:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(168),t),i(r(7054),t)},7054:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.generateKey=t.openSecretBox=t.secretBox=void 0;const n=r(3911),i=r(3795),o=r(3133),a=r(5164);t.secretBox=function(e,t,r){if(24!==t.length)throw new Error("secretBox nonce must be 24 bytes");const a=new Uint8Array(64),s=new Uint8Array(32);s.set(t),(0,n.stream)(e,s,a,8);const c=new Uint8Array(16+r.length);for(let n=0;n<32&&n32&&(0,n.streamXOR)(e,s,r.subarray(32),c.subarray(48),8);const l=(0,i.oneTimeAuth)(a.subarray(0,32),c.subarray(16));for(let n=0;n32&&(0,n.streamXOR)(e,s,l.subarray(32),u.subarray(32),8),(0,o.wipe)(c),(0,o.wipe)(a),(0,o.wipe)(s),u},t.generateKey=function(e){return(0,a.randomBytes)(32,e)}},3795:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(6433),i=r(3133);t.DIGEST_LENGTH=16;var o=function(){function e(e){this.digestLength=t.DIGEST_LENGTH,this._buffer=new Uint8Array(16),this._r=new Uint16Array(10),this._h=new Uint16Array(10),this._pad=new Uint16Array(8),this._leftover=0,this._fin=0,this._finished=!1;var r=e[0]|e[1]<<8;this._r[0]=8191&r;var n=e[2]|e[3]<<8;this._r[1]=8191&(r>>>13|n<<3);var i=e[4]|e[5]<<8;this._r[2]=7939&(n>>>10|i<<6);var o=e[6]|e[7]<<8;this._r[3]=8191&(i>>>7|o<<9);var a=e[8]|e[9]<<8;this._r[4]=255&(o>>>4|a<<12),this._r[5]=a>>>1&8190;var s=e[10]|e[11]<<8;this._r[6]=8191&(a>>>14|s<<2);var c=e[12]|e[13]<<8;this._r[7]=8065&(s>>>11|c<<5);var l=e[14]|e[15]<<8;this._r[8]=8191&(c>>>8|l<<8),this._r[9]=l>>>5&127,this._pad[0]=e[16]|e[17]<<8,this._pad[1]=e[18]|e[19]<<8,this._pad[2]=e[20]|e[21]<<8,this._pad[3]=e[22]|e[23]<<8,this._pad[4]=e[24]|e[25]<<8,this._pad[5]=e[26]|e[27]<<8,this._pad[6]=e[28]|e[29]<<8,this._pad[7]=e[30]|e[31]<<8}return e.prototype._blocks=function(e,t,r){for(var n=this._fin?0:2048,i=this._h[0],o=this._h[1],a=this._h[2],s=this._h[3],c=this._h[4],l=this._h[5],u=this._h[6],d=this._h[7],h=this._h[8],f=this._h[9],p=this._r[0],m=this._r[1],g=this._r[2],v=this._r[3],y=this._r[4],b=this._r[5],w=this._r[6],x=this._r[7],_=this._r[8],S=this._r[9];r>=16;){var k=e[t+0]|e[t+1]<<8;i+=8191&k;var E=e[t+2]|e[t+3]<<8;o+=8191&(k>>>13|E<<3);var A=e[t+4]|e[t+5]<<8;a+=8191&(E>>>10|A<<6);var P=e[t+6]|e[t+7]<<8;s+=8191&(A>>>7|P<<9);var O=e[t+8]|e[t+9]<<8;c+=8191&(P>>>4|O<<12),l+=O>>>1&8191;var T=e[t+10]|e[t+11]<<8;u+=8191&(O>>>14|T<<2);var C=e[t+12]|e[t+13]<<8;d+=8191&(T>>>11|C<<5);var j=e[t+14]|e[t+15]<<8,R=0,I=R;I+=i*p,I+=o*(5*S),I+=a*(5*_),I+=s*(5*x),R=(I+=c*(5*w))>>>13,I&=8191,I+=l*(5*b),I+=u*(5*y),I+=d*(5*v),I+=(h+=8191&(C>>>8|j<<8))*(5*g);var M=R+=(I+=(f+=j>>>5|n)*(5*m))>>>13;M+=i*m,M+=o*p,M+=a*(5*S),M+=s*(5*_),R=(M+=c*(5*x))>>>13,M&=8191,M+=l*(5*w),M+=u*(5*b),M+=d*(5*y),M+=h*(5*v),R+=(M+=f*(5*g))>>>13,M&=8191;var L=R;L+=i*g,L+=o*m,L+=a*p,L+=s*(5*S),R=(L+=c*(5*_))>>>13,L&=8191,L+=l*(5*x),L+=u*(5*w),L+=d*(5*b),L+=h*(5*y);var N=R+=(L+=f*(5*v))>>>13;N+=i*v,N+=o*g,N+=a*m,N+=s*p,R=(N+=c*(5*S))>>>13,N&=8191,N+=l*(5*_),N+=u*(5*x),N+=d*(5*w),N+=h*(5*b);var D=R+=(N+=f*(5*y))>>>13;D+=i*y,D+=o*v,D+=a*g,D+=s*m,R=(D+=c*p)>>>13,D&=8191,D+=l*(5*S),D+=u*(5*_),D+=d*(5*x),D+=h*(5*w);var z=R+=(D+=f*(5*b))>>>13;z+=i*b,z+=o*y,z+=a*v,z+=s*g,R=(z+=c*m)>>>13,z&=8191,z+=l*p,z+=u*(5*S),z+=d*(5*_),z+=h*(5*x);var B=R+=(z+=f*(5*w))>>>13;B+=i*w,B+=o*b,B+=a*y,B+=s*v,R=(B+=c*g)>>>13,B&=8191,B+=l*m,B+=u*p,B+=d*(5*S),B+=h*(5*_);var U=R+=(B+=f*(5*x))>>>13;U+=i*x,U+=o*w,U+=a*b,U+=s*y,R=(U+=c*v)>>>13,U&=8191,U+=l*g,U+=u*m,U+=d*p,U+=h*(5*S);var F=R+=(U+=f*(5*_))>>>13;F+=i*_,F+=o*x,F+=a*w,F+=s*b,R=(F+=c*y)>>>13,F&=8191,F+=l*v,F+=u*g,F+=d*m,F+=h*p;var $=R+=(F+=f*(5*S))>>>13;$+=i*S,$+=o*_,$+=a*x,$+=s*w,R=($+=c*b)>>>13,$&=8191,$+=l*y,$+=u*v,$+=d*g,$+=h*m,i=I=8191&(R=(R=((R+=($+=f*p)>>>13)<<2)+R|0)+(I&=8191)|0),o=M+=R>>>=13,a=L&=8191,s=N&=8191,c=D&=8191,l=z&=8191,u=B&=8191,d=U&=8191,h=F&=8191,f=$&=8191,t+=16,r-=16}this._h[0]=i,this._h[1]=o,this._h[2]=a,this._h[3]=s,this._h[4]=c,this._h[5]=l,this._h[6]=u,this._h[7]=d,this._h[8]=h,this._h[9]=f},e.prototype.finish=function(e,t){void 0===t&&(t=0);var r,n,i,o,a=new Uint16Array(10);if(this._leftover){for(o=this._leftover,this._buffer[o++]=1;o<16;o++)this._buffer[o]=0;this._fin=1,this._blocks(this._buffer,0,16)}for(r=this._h[1]>>>13,this._h[1]&=8191,o=2;o<10;o++)this._h[o]+=r,r=this._h[o]>>>13,this._h[o]&=8191;for(this._h[0]+=5*r,r=this._h[0]>>>13,this._h[0]&=8191,this._h[1]+=r,r=this._h[1]>>>13,this._h[1]&=8191,this._h[2]+=r,a[0]=this._h[0]+5,r=a[0]>>>13,a[0]&=8191,o=1;o<10;o++)a[o]=this._h[o]+r,r=a[o]>>>13,a[o]&=8191;for(a[9]-=8192,n=(1^r)-1,o=0;o<10;o++)a[o]&=n;for(n=~n,o=0;o<10;o++)this._h[o]=this._h[o]&n|a[o];for(this._h[0]=65535&(this._h[0]|this._h[1]<<13),this._h[1]=65535&(this._h[1]>>>3|this._h[2]<<10),this._h[2]=65535&(this._h[2]>>>6|this._h[3]<<7),this._h[3]=65535&(this._h[3]>>>9|this._h[4]<<4),this._h[4]=65535&(this._h[4]>>>12|this._h[5]<<1|this._h[6]<<14),this._h[5]=65535&(this._h[6]>>>2|this._h[7]<<11),this._h[6]=65535&(this._h[7]>>>5|this._h[8]<<8),this._h[7]=65535&(this._h[8]>>>8|this._h[9]<<5),i=this._h[0]+this._pad[0],this._h[0]=65535&i,o=1;o<8;o++)i=(this._h[o]+this._pad[o]|0)+(i>>>16)|0,this._h[o]=65535&i;return e[t+0]=this._h[0]>>>0,e[t+1]=this._h[0]>>>8,e[t+2]=this._h[1]>>>0,e[t+3]=this._h[1]>>>8,e[t+4]=this._h[2]>>>0,e[t+5]=this._h[2]>>>8,e[t+6]=this._h[3]>>>0,e[t+7]=this._h[3]>>>8,e[t+8]=this._h[4]>>>0,e[t+9]=this._h[4]>>>8,e[t+10]=this._h[5]>>>0,e[t+11]=this._h[5]>>>8,e[t+12]=this._h[6]>>>0,e[t+13]=this._h[6]>>>8,e[t+14]=this._h[7]>>>0,e[t+15]=this._h[7]>>>8,this._finished=!0,this},e.prototype.update=function(e){var t,r=0,n=e.length;if(this._leftover){(t=16-this._leftover)>n&&(t=n);for(var i=0;i=16&&(t=n-n%16,this._blocks(e,r,t),r+=t,n-=t),n){for(i=0;i{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomStringForEntropy=t.randomString=t.randomUint32=t.randomBytes=t.defaultRandomSource=void 0;const n=r(9973),i=r(7318),o=r(3133);function a(e,r=t.defaultRandomSource){return r.randomBytes(e)}t.defaultRandomSource=new n.SystemRandomSource,t.randomBytes=a,t.randomUint32=function(e=t.defaultRandomSource){const r=a(4,e),n=(0,i.readUint32LE)(r);return(0,o.wipe)(r),n};const s="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function c(e,r=s,n=t.defaultRandomSource){if(r.length<2)throw new Error("randomString charset is too short");if(r.length>256)throw new Error("randomString charset is too long");let i="";const c=r.length,l=256-256%c;for(;e>0;){const t=a(Math.ceil(256*e/l),n);for(let n=0;n0;n++){const o=t[n];o{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BrowserRandomSource=void 0;t.BrowserRandomSource=class{constructor(){this.isAvailable=!1,this.isInstantiated=!1;const e="undefined"!==typeof self?self.crypto||self.msCrypto:null;e&&void 0!==e.getRandomValues&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");const t=new Uint8Array(e);for(let r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeRandomSource=void 0;const n=r(3133);t.NodeRandomSource=class{constructor(){this.isAvailable=!1,this.isInstantiated=!1;{const e=r(5883);e&&e.randomBytes&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");let t=this._crypto.randomBytes(e);if(t.length!==e)throw new Error("NodeRandomSource: got fewer bytes than requested");const r=new Uint8Array(e);for(let n=0;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SystemRandomSource=void 0;const n=r(6373),i=r(4042);t.SystemRandomSource=class{constructor(){return this.isAvailable=!1,this.name="",this._source=new n.BrowserRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Browser")):(this._source=new i.NodeRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Node")):void 0)}randomBytes(e){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(e)}}},4336:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(7318),i=r(3133),o=20;function a(e,t,r){for(var i,a=1634760805,s=r[3]<<24|r[2]<<16|r[1]<<8|r[0],c=r[7]<<24|r[6]<<16|r[5]<<8|r[4],l=r[11]<<24|r[10]<<16|r[9]<<8|r[8],u=r[15]<<24|r[14]<<16|r[13]<<8|r[12],d=857760878,h=t[3]<<24|t[2]<<16|t[1]<<8|t[0],f=t[7]<<24|t[6]<<16|t[5]<<8|t[4],p=t[11]<<24|t[10]<<16|t[9]<<8|t[8],m=t[15]<<24|t[14]<<16|t[13]<<8|t[12],g=2036477234,v=r[19]<<24|r[18]<<16|r[17]<<8|r[16],y=r[23]<<24|r[22]<<16|r[21]<<8|r[20],b=r[27]<<24|r[26]<<16|r[25]<<8|r[24],w=r[31]<<24|r[30]<<16|r[29]<<8|r[28],x=1797285236,_=a,S=s,k=c,E=l,A=u,P=d,O=h,T=f,C=p,j=m,R=g,I=v,M=y,L=b,N=w,D=x,z=0;z>>25)+_|0)<<9|i>>>23)+A|0)<<13|i>>>19)+C|0)<<18|i>>>14,P^=(i=(S^=(i=(L^=(i=(j^=(i=P+S|0)<<7|i>>>25)+P|0)<<9|i>>>23)+j|0)<<13|i>>>19)+L|0)<<18|i>>>14,R^=(i=(O^=(i=(k^=(i=(N^=(i=R+O|0)<<7|i>>>25)+R|0)<<9|i>>>23)+N|0)<<13|i>>>19)+k|0)<<18|i>>>14,D^=(i=(I^=(i=(T^=(i=(E^=(i=D+I|0)<<7|i>>>25)+D|0)<<9|i>>>23)+E|0)<<13|i>>>19)+T|0)<<18|i>>>14,_^=(i=(E^=(i=(k^=(i=(S^=(i=_+E|0)<<7|i>>>25)+_|0)<<9|i>>>23)+S|0)<<13|i>>>19)+k|0)<<18|i>>>14,P^=(i=(A^=(i=(T^=(i=(O^=(i=P+A|0)<<7|i>>>25)+P|0)<<9|i>>>23)+O|0)<<13|i>>>19)+T|0)<<18|i>>>14,R^=(i=(j^=(i=(C^=(i=(I^=(i=R+j|0)<<7|i>>>25)+R|0)<<9|i>>>23)+I|0)<<13|i>>>19)+C|0)<<18|i>>>14,D^=(i=(N^=(i=(L^=(i=(M^=(i=D+N|0)<<7|i>>>25)+D|0)<<9|i>>>23)+M|0)<<13|i>>>19)+L|0)<<18|i>>>14;n.writeUint32LE(_+a|0,e,0),n.writeUint32LE(S+s|0,e,4),n.writeUint32LE(k+c|0,e,8),n.writeUint32LE(E+l|0,e,12),n.writeUint32LE(A+u|0,e,16),n.writeUint32LE(P+d|0,e,20),n.writeUint32LE(O+h|0,e,24),n.writeUint32LE(T+f|0,e,28),n.writeUint32LE(C+p|0,e,32),n.writeUint32LE(j+m|0,e,36),n.writeUint32LE(R+g|0,e,40),n.writeUint32LE(I+v|0,e,44),n.writeUint32LE(M+y|0,e,48),n.writeUint32LE(L+b|0,e,52),n.writeUint32LE(N+w|0,e,56),n.writeUint32LE(D+x|0,e,60)}function s(e,t,r,n,o){if(void 0===o&&(o=0),32!==e.length)throw new Error("Salsa20: key size must be 32 bytes");if(n.length>>=8,t++;if(n>0)throw new Error("Salsa20: counter overflow")}t.streamXOR=s,t.stream=function(e,t,r,n){return void 0===n&&(n=0),i.wipe(r),s(e,t,r,r,n)}},4516:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(7318),i=r(3133);t.DIGEST_LENGTH=64,t.BLOCK_SIZE=128;var o=function(){function e(){this.digestLength=t.DIGEST_LENGTH,this.blockSize=t.BLOCK_SIZE,this._stateHi=new Int32Array(8),this._stateLo=new Int32Array(8),this._tempHi=new Int32Array(16),this._tempLo=new Int32Array(16),this._buffer=new Uint8Array(256),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this.reset()}return e.prototype._initState=function(){this._stateHi[0]=1779033703,this._stateHi[1]=3144134277,this._stateHi[2]=1013904242,this._stateHi[3]=2773480762,this._stateHi[4]=1359893119,this._stateHi[5]=2600822924,this._stateHi[6]=528734635,this._stateHi[7]=1541459225,this._stateLo[0]=4089235720,this._stateLo[1]=2227873595,this._stateLo[2]=4271175723,this._stateLo[3]=1595750129,this._stateLo[4]=2917565137,this._stateLo[5]=725511199,this._stateLo[6]=4215389547,this._stateLo[7]=327033209},e.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},e.prototype.clean=function(){i.wipe(this._buffer),i.wipe(this._tempHi),i.wipe(this._tempLo),this.reset()},e.prototype.update=function(e,r){if(void 0===r&&(r=e.length),this._finished)throw new Error("SHA512: can't update because hash was finished.");var n=0;if(this._bytesHashed+=r,this._bufferLength>0){for(;this._bufferLength0;)this._buffer[this._bufferLength++]=e[n++],r--;this._bufferLength===this.blockSize&&(s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,this.blockSize),this._bufferLength=0)}for(r>=this.blockSize&&(n=s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,e,n,r),r%=this.blockSize);r>0;)this._buffer[this._bufferLength++]=e[n++],r--;return this},e.prototype.finish=function(e){if(!this._finished){var t=this._bytesHashed,r=this._bufferLength,i=t/536870912|0,o=t<<3,a=t%128<112?128:256;this._buffer[r]=128;for(var c=r+1;c0?new Uint8Array(this._buffer):void 0,bufferLength:this._bufferLength,bytesHashed:this._bytesHashed}},e.prototype.restoreState=function(e){return this._stateHi.set(e.stateHi),this._stateLo.set(e.stateLo),this._bufferLength=e.bufferLength,e.buffer&&this._buffer.set(e.buffer),this._bytesHashed=e.bytesHashed,this._finished=!1,this},e.prototype.cleanSavedState=function(e){i.wipe(e.stateHi),i.wipe(e.stateLo),e.buffer&&i.wipe(e.buffer),e.bufferLength=0,e.bytesHashed=0},e}();t.SHA512=o;var a=new Int32Array([1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591]);function s(e,t,r,i,o,s,c){for(var l,u,d,h,f,p,m,g,v=r[0],y=r[1],b=r[2],w=r[3],x=r[4],_=r[5],S=r[6],k=r[7],E=i[0],A=i[1],P=i[2],O=i[3],T=i[4],C=i[5],j=i[6],R=i[7];c>=128;){for(var I=0;I<16;I++){var M=8*I+s;e[I]=n.readUint32BE(o,M),t[I]=n.readUint32BE(o,M+4)}for(I=0;I<80;I++){var L,N,D=v,z=y,B=b,U=w,F=x,$=_,H=S,V=E,q=A,K=P,W=O,G=T,Z=C,Y=j;if(f=65535&(u=R),p=u>>>16,m=65535&(l=k),g=l>>>16,f+=65535&(u=(T>>>14|x<<18)^(T>>>18|x<<14)^(x>>>9|T<<23)),p+=u>>>16,m+=65535&(l=(x>>>14|T<<18)^(x>>>18|T<<14)^(T>>>9|x<<23)),g+=l>>>16,f+=65535&(u=T&C^~T&j),p+=u>>>16,m+=65535&(l=x&_^~x&S),g+=l>>>16,l=a[2*I],f+=65535&(u=a[2*I+1]),p+=u>>>16,m+=65535&l,g+=l>>>16,l=e[I%16],p+=(u=t[I%16])>>>16,m+=65535&l,g+=l>>>16,m+=(p+=(f+=65535&u)>>>16)>>>16,f=65535&(u=h=65535&f|p<<16),p=u>>>16,m=65535&(l=d=65535&m|(g+=m>>>16)<<16),g=l>>>16,f+=65535&(u=(E>>>28|v<<4)^(v>>>2|E<<30)^(v>>>7|E<<25)),p+=u>>>16,m+=65535&(l=(v>>>28|E<<4)^(E>>>2|v<<30)^(E>>>7|v<<25)),g+=l>>>16,p+=(u=E&A^E&P^A&P)>>>16,m+=65535&(l=v&y^v&b^y&b),g+=l>>>16,L=65535&(m+=(p+=(f+=65535&u)>>>16)>>>16)|(g+=m>>>16)<<16,N=65535&f|p<<16,f=65535&(u=W),p=u>>>16,m=65535&(l=U),g=l>>>16,p+=(u=h)>>>16,m+=65535&(l=d),g+=l>>>16,y=D,b=z,w=B,x=U=65535&(m+=(p+=(f+=65535&u)>>>16)>>>16)|(g+=m>>>16)<<16,_=F,S=$,k=H,v=L,A=V,P=q,O=K,T=W=65535&f|p<<16,C=G,j=Z,R=Y,E=N,I%16===15)for(M=0;M<16;M++)l=e[M],f=65535&(u=t[M]),p=u>>>16,m=65535&l,g=l>>>16,l=e[(M+9)%16],f+=65535&(u=t[(M+9)%16]),p+=u>>>16,m+=65535&l,g+=l>>>16,d=e[(M+1)%16],f+=65535&(u=((h=t[(M+1)%16])>>>1|d<<31)^(h>>>8|d<<24)^(h>>>7|d<<25)),p+=u>>>16,m+=65535&(l=(d>>>1|h<<31)^(d>>>8|h<<24)^d>>>7),g+=l>>>16,d=e[(M+14)%16],p+=(u=((h=t[(M+14)%16])>>>19|d<<13)^(d>>>29|h<<3)^(h>>>6|d<<26))>>>16,m+=65535&(l=(d>>>19|h<<13)^(h>>>29|d<<3)^d>>>6),g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,e[M]=65535&m|g<<16,t[M]=65535&f|p<<16}f=65535&(u=E),p=u>>>16,m=65535&(l=v),g=l>>>16,l=r[0],p+=(u=i[0])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[0]=v=65535&m|g<<16,i[0]=E=65535&f|p<<16,f=65535&(u=A),p=u>>>16,m=65535&(l=y),g=l>>>16,l=r[1],p+=(u=i[1])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[1]=y=65535&m|g<<16,i[1]=A=65535&f|p<<16,f=65535&(u=P),p=u>>>16,m=65535&(l=b),g=l>>>16,l=r[2],p+=(u=i[2])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[2]=b=65535&m|g<<16,i[2]=P=65535&f|p<<16,f=65535&(u=O),p=u>>>16,m=65535&(l=w),g=l>>>16,l=r[3],p+=(u=i[3])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[3]=w=65535&m|g<<16,i[3]=O=65535&f|p<<16,f=65535&(u=T),p=u>>>16,m=65535&(l=x),g=l>>>16,l=r[4],p+=(u=i[4])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[4]=x=65535&m|g<<16,i[4]=T=65535&f|p<<16,f=65535&(u=C),p=u>>>16,m=65535&(l=_),g=l>>>16,l=r[5],p+=(u=i[5])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[5]=_=65535&m|g<<16,i[5]=C=65535&f|p<<16,f=65535&(u=j),p=u>>>16,m=65535&(l=S),g=l>>>16,l=r[6],p+=(u=i[6])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[6]=S=65535&m|g<<16,i[6]=j=65535&f|p<<16,f=65535&(u=R),p=u>>>16,m=65535&(l=k),g=l>>>16,l=r[7],p+=(u=i[7])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[7]=k=65535&m|g<<16,i[7]=R=65535&f|p<<16,s+=128,c-=128}return s}t.hash=function(e){var t=new o;t.update(e);var r=t.digest();return t.clean(),r}},9070:(e,t)=>{"use strict";var r="utf8: invalid string",n="utf8: invalid source encoding";function i(e){for(var t=0,n=0;n=e.length-1)throw new Error(r);n++,t+=4}}return t}t.cv=function(e){for(var t=new Uint8Array(i(e)),r=0,n=0;n>6,t[r++]=128|63&o):o<55296?(t[r++]=224|o>>12,t[r++]=128|o>>6&63,t[r++]=128|63&o):(n++,o=(1023&o)<<10,o|=1023&e.charCodeAt(n),o+=65536,t[r++]=240|o>>18,t[r++]=128|o>>12&63,t[r++]=128|o>>6&63,t[r++]=128|63&o)}return t}},3133:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.wipe=function(e){for(var t=0;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.X25519Session=t.SECRET_SEED_LENGTH=t.SAVED_STATE_LENGTH=t.ACCEPT_MESSAGE_LENGTH=t.OFFER_MESSAGE_LENGTH=void 0;const n=r(5164),i=r(3133),o=r(4592),a=r(347);t.OFFER_MESSAGE_LENGTH=o.PUBLIC_KEY_LENGTH,t.ACCEPT_MESSAGE_LENGTH=o.PUBLIC_KEY_LENGTH,t.SAVED_STATE_LENGTH=o.SECRET_KEY_LENGTH,t.SECRET_SEED_LENGTH=o.SECRET_KEY_LENGTH;t.X25519Session=class{constructor(e,r){this.offerMessageLength=t.OFFER_MESSAGE_LENGTH,this.acceptMessageLength=t.ACCEPT_MESSAGE_LENGTH,this.sharedKeyLength=o.SHARED_KEY_LENGTH,this.savedStateLength=t.SAVED_STATE_LENGTH,this._seed=e||(0,n.randomBytes)(o.SECRET_KEY_LENGTH,r)}saveState(){return new Uint8Array(this._seed)}restoreState(e){return this._seed=new Uint8Array(e),this}clean(){this._seed&&(0,i.wipe)(this._seed),this._keyPair&&((0,i.wipe)(this._keyPair.secretKey),(0,i.wipe)(this._keyPair.publicKey)),this._sharedKey&&(0,i.wipe)(this._sharedKey),this._sessionKeys&&((0,i.wipe)(this._sessionKeys.receive),(0,i.wipe)(this._sessionKeys.send))}offer(){return this._keyPair=(0,o.generateKeyPairFromSeed)(this._seed),new Uint8Array(this._keyPair.publicKey)}accept(e){if(this._keyPair)throw new Error("X25519Session: accept shouldn't be called by offering party");if(e.length!==this.offerMessageLength)throw new Error("X25519Session: incorrect offer message length");if(this._sharedKey)throw new Error("X25519Session: accept was already called");const t=(0,o.generateKeyPairFromSeed)(this._seed);return this._sharedKey=(0,o.sharedKey)(t.secretKey,e),this._sessionKeys=(0,a.clientSessionKeysFromSharedKey)(this._sharedKey,t.publicKey,e),(0,i.wipe)(t.secretKey),t.publicKey}finish(e){if(e.length!==this.acceptMessageLength)throw new Error("X25519Session: incorrect accept message length");if(!this._keyPair)throw new Error("X25519Session: no offer state");if(this._sharedKey)throw new Error("X25519Session: finish was already called");return this._sharedKey=(0,o.sharedKey)(this._keyPair.secretKey,e),this._sessionKeys=(0,a.serverSessionKeysFromSharedKey)(this._sharedKey,this._keyPair.publicKey,e),this}getSharedKey(){if(!this._sharedKey)throw new Error("X25519Session: no shared key established");return new Uint8Array(this._sharedKey)}getSessionKeys(){if(!this._sessionKeys)throw new Error("X25519Session: no shared key established");return{receive:new Uint8Array(this._sessionKeys.receive),send:new Uint8Array(this._sessionKeys.send)}}}},347:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.clientSessionKeys=t.serverSessionKeys=t.clientSessionKeysFromSharedKey=t.serverSessionKeysFromSharedKey=t.X25519Session=void 0;const n=r(448),i=r(4592);var o=r(6758);Object.defineProperty(t,"X25519Session",{enumerable:!0,get:function(){return o.X25519Session}});const a=32;function s(e,t,r,i=n.BLAKE2b){const o=new i;if(o.digestLength!==2*a)throw new Error("X25519: incorrect digest length");const s=o.update(e).update(r).update(t).digest();return{send:s.subarray(0,a),receive:s.subarray(a)}}function c(e,t,r,i=n.BLAKE2b){const o=new i;if(o.digestLength!==2*a)throw new Error("X25519: incorrect digest length");const s=o.update(e).update(t).update(r).digest();return{receive:s.subarray(0,a),send:s.subarray(a)}}t.serverSessionKeysFromSharedKey=s,t.clientSessionKeysFromSharedKey=c,t.serverSessionKeys=function(e,t,r=n.BLAKE2b){return s((0,i.sharedKey)(e.secretKey,t),e.publicKey,t,r)},t.clientSessionKeys=function(e,t,r=n.BLAKE2b){return c((0,i.sharedKey)(e.secretKey,t),e.publicKey,t,r)}},4592:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sharedKey=t.generateKeyPair=t.generateKeyPairFromSeed=t.scalarMultBase=t.scalarMult=t.SHARED_KEY_LENGTH=t.SECRET_KEY_LENGTH=t.PUBLIC_KEY_LENGTH=void 0;const n=r(5164),i=r(3133);function o(e){const t=new Float64Array(16);if(e)for(let r=0;r=0;--o){const e=r[o>>>3]>>>(7&o)&1;l(i,a,e),l(p,m,e),u(g,i,p),d(i,i,p),u(p,a,m),d(a,a,m),f(m,g),f(v,i),h(i,p,i),h(p,a,g),u(g,i,p),d(i,i,p),f(a,i),d(p,m,v),h(i,p,s),u(i,i,m),h(p,p,i),h(i,m,v),h(m,a,n),f(a,g),l(i,a,e),l(p,m,e)}for(let o=0;o<16;o++)n[o+16]=i[o],n[o+32]=p[o],n[o+48]=a[o],n[o+64]=m[o];const y=n.subarray(32),b=n.subarray(16);!function(e,t){const r=o();for(let n=0;n<16;n++)r[n]=t[n];for(let n=253;n>=0;n--)f(r,r),2!==n&&4!==n&&h(r,r,t);for(let n=0;n<16;n++)e[n]=r[n]}(y,y),h(b,b,y);const w=new Uint8Array(32);return function(e,t){const r=o(),n=o();for(let i=0;i<16;i++)n[i]=t[i];c(n),c(n),c(n);for(let i=0;i<2;i++){r[0]=n[0]-65517;for(let t=1;t<15;t++)r[t]=n[t]-65535-(r[t-1]>>16&1),r[t-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);const e=r[15]>>16&1;r[14]&=65535,l(n,r,1-e)}for(let i=0;i<16;i++)e[2*i]=255&n[i],e[2*i+1]=n[i]>>8}(w,b),w}function m(e){return p(e,a)}function g(e){if(e.length!==t.SECRET_KEY_LENGTH)throw new Error(`x25519: seed must be ${t.SECRET_KEY_LENGTH} bytes`);const r=new Uint8Array(e);return{publicKey:m(r),secretKey:r}}t.scalarMult=p,t.scalarMultBase=m,t.generateKeyPairFromSeed=g,t.generateKeyPair=function(e){const t=(0,n.randomBytes)(32,e),r=g(t);return(0,i.wipe)(t),r},t.sharedKey=function(e,r,n=!1){if(e.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect secret key length");if(r.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect public key length");const i=p(e,r);if(n){let e=0;for(let t=0;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(7318),i=r(4336),o=r(3133);function a(e,t,r,n,a){if(void 0===a&&(a=0),0===a){if(24!==t.length)throw new Error("XSalsa20 nonce must be 24 bytes")}else if(32!==t.length)throw new Error("XSalsa20 nonce with counter must be 32 bytes");var s=c(e,t.subarray(0,16),new Uint8Array(32)),l=i.streamXOR(s,t.subarray(16),r,n,a);return o.wipe(s),l}t.streamXOR=a,t.stream=function(e,t,r,n){return void 0===n&&(n=0),o.wipe(r),a(e,t,r,r,n)};var s=20;function c(e,t,r){for(var i,o=1634760805,a=e[3]<<24|e[2]<<16|e[1]<<8|e[0],c=e[7]<<24|e[6]<<16|e[5]<<8|e[4],l=e[11]<<24|e[10]<<16|e[9]<<8|e[8],u=e[15]<<24|e[14]<<16|e[13]<<8|e[12],d=857760878,h=t[3]<<24|t[2]<<16|t[1]<<8|t[0],f=t[7]<<24|t[6]<<16|t[5]<<8|t[4],p=t[11]<<24|t[10]<<16|t[9]<<8|t[8],m=t[15]<<24|t[14]<<16|t[13]<<8|t[12],g=2036477234,v=e[19]<<24|e[18]<<16|e[17]<<8|e[16],y=e[23]<<24|e[22]<<16|e[21]<<8|e[20],b=e[27]<<24|e[26]<<16|e[25]<<8|e[24],w=e[31]<<24|e[30]<<16|e[29]<<8|e[28],x=1797285236,_=0;_>>25)+o|0)<<9|i>>>23)+u|0)<<13|i>>>19)+p|0)<<18|i>>>14,d^=(i=(a^=(i=(b^=(i=(m^=(i=d+a|0)<<7|i>>>25)+d|0)<<9|i>>>23)+m|0)<<13|i>>>19)+b|0)<<18|i>>>14,g^=(i=(h^=(i=(c^=(i=(w^=(i=g+h|0)<<7|i>>>25)+g|0)<<9|i>>>23)+w|0)<<13|i>>>19)+c|0)<<18|i>>>14,x^=(i=(v^=(i=(f^=(i=(l^=(i=x+v|0)<<7|i>>>25)+x|0)<<9|i>>>23)+l|0)<<13|i>>>19)+f|0)<<18|i>>>14,o^=(i=(l^=(i=(c^=(i=(a^=(i=o+l|0)<<7|i>>>25)+o|0)<<9|i>>>23)+a|0)<<13|i>>>19)+c|0)<<18|i>>>14,d^=(i=(u^=(i=(f^=(i=(h^=(i=d+u|0)<<7|i>>>25)+d|0)<<9|i>>>23)+h|0)<<13|i>>>19)+f|0)<<18|i>>>14,g^=(i=(m^=(i=(p^=(i=(v^=(i=g+m|0)<<7|i>>>25)+g|0)<<9|i>>>23)+v|0)<<13|i>>>19)+p|0)<<18|i>>>14,x^=(i=(w^=(i=(b^=(i=(y^=(i=x+w|0)<<7|i>>>25)+x|0)<<9|i>>>23)+y|0)<<13|i>>>19)+b|0)<<18|i>>>14;return n.writeUint32LE(o,r,0),n.writeUint32LE(d,r,4),n.writeUint32LE(g,r,8),n.writeUint32LE(x,r,12),n.writeUint32LE(h,r,16),n.writeUint32LE(f,r,20),n.writeUint32LE(p,r,24),n.writeUint32LE(m,r,28),r}t.hsalsa=c},1017:e=>{"use strict";e.exports=function(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r>>0,l=new Uint8Array(o);e[r];){var u=t[e.charCodeAt(r)];if(255===u)return;for(var d=0,h=o-1;(0!==u||d>>0,l[h]=u%256>>>0,u=u/256>>>0;if(0!==u)throw new Error("Non-zero carry");i=d,r++}for(var f=o-i;f!==o&&0===l[f];)f++;for(var p=new Uint8Array(n+(o-f)),m=n;f!==o;)p[m++]=l[f++];return p}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(0===t.length)return"";for(var r=0,n=0,i=0,o=t.length;i!==o&&0===t[i];)i++,r++;for(var c=(o-i)*l+1>>>0,u=new Uint8Array(c);i!==o;){for(var d=t[i],h=0,f=c-1;(0!==d||h>>0,u[f]=d%a>>>0,d=d/a>>>0;if(0!==d)throw new Error("Non-zero carry");n=h,i++}for(var p=c-n;p!==c&&0===u[p];)p++;for(var m=s.repeat(r);p{const n=r(1017);e.exports=n("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},4020:(e,t,r)=>{"use strict";var n=r(748);e.exports=function(e){function t(t){var r=t.slice(0,-4),n=t.slice(-4),i=e(r);if(!(n[0]^i[0]|n[1]^i[1]|n[2]^i[2]|n[3]^i[3]))return r}return{encode:function(t){var r=Uint8Array.from(t),i=e(r),o=r.length+4,a=new Uint8Array(o);return a.set(r,0),a.set(i.subarray(0,4),r.length),n.encode(a,o)},decode:function(e){var r=t(n.decode(e));if(!r)throw new Error("Invalid checksum");return r},decodeUnsafe:function(e){var r=n.decodeUnsafe(e);if(r)return t(r)}}}},7491:(e,t,r)=>{"use strict";var{sha256:n}=r(1985),i=r(4020);e.exports=i((function(e){return n(n(e))}))},4203:function(e,t,r){!function(e,t){"use strict";function n(e,t){if(!e)throw new Error(t||"Assertion failed")}function i(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function o(e,t,r){if(o.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var a;"object"===typeof e?e.exports=o:t.BN=o,o.BN=o,o.wordSize=26;try{a="undefined"!==typeof window&&"undefined"!==typeof window.Buffer?window.Buffer:r(3018).Buffer}catch(O){}function s(e,t){var r=e.charCodeAt(t);return r>=48&&r<=57?r-48:r>=65&&r<=70?r-55:r>=97&&r<=102?r-87:void n(!1,"Invalid character in "+e)}function c(e,t,r){var n=s(e,r);return r-1>=t&&(n|=s(e,r-1)<<4),n}function l(e,t,r,i){for(var o=0,a=0,s=Math.min(e.length,r),c=t;c=49?l-49+10:l>=17?l-17+10:l,n(l>=0&&a0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,r){if("number"===typeof e)return this._initNumber(e,t,r);if("object"===typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),n(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)a=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(i=0,o=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this._strip()},o.prototype._parseHex=function(e,t,r){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n=t;n-=2)i=c(e,t,n)<=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;else for(n=(e.length-t)%2===0?t+1:t;n=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;this._strip()},o.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var o=e.length-r,a=o%n,s=Math.min(o,o-a)+r,c=0,u=r;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},"undefined"!==typeof Symbol&&"function"===typeof Symbol.for)try{o.prototype[Symbol.for("nodejs.util.inspect.custom")]=d}catch(O){o.prototype.inspect=d}else o.prototype.inspect=d;function d(){return(this.red?""}var h=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],f=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],p=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];o.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var i=0,o=0,a=0;a>>24-i&16777215,(i+=2)>=26&&(i-=26,a--),r=0!==o||a!==this.length-1?h[6-c.length]+c+r:c+r}for(0!==o&&(r=o.toString(16)+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var l=f[e],u=p[e];r="";var d=this.clone();for(d.negative=0;!d.isZero();){var m=d.modrn(u).toString(e);r=(d=d.idivn(u)).isZero()?m+r:h[l-m.length]+m+r}for(this.isZero()&&(r="0"+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16,2)},a&&(o.prototype.toBuffer=function(e,t){return this.toArrayLike(a,e,t)}),o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)};function m(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],o=0|t.words[0],a=i*o,s=67108863&a,c=a/67108864|0;r.words[0]=s;for(var l=1;l>>26,d=67108863&c,h=Math.min(l,t.length-1),f=Math.max(0,l-e.length+1);f<=h;f++){var p=l-f|0;u+=(a=(i=0|e.words[p])*(o=0|t.words[f])+d)/67108864|0,d=67108863&a}r.words[l]=0|d,c=0|u}return 0!==c?r.words[l]=0|c:r.length--,r._strip()}o.prototype.toArrayLike=function(e,t,r){this._strip();var i=this.byteLength(),o=r||Math.max(1,i);n(i<=o,"byte array longer than desired length"),n(o>0,"Requested array length <= 0");var a=function(e,t){return e.allocUnsafe?e.allocUnsafe(t):new e(t)}(e,o);return this["_toArrayLike"+("le"===t?"LE":"BE")](a,i),a},o.prototype._toArrayLikeLE=function(e,t){for(var r=0,n=0,i=0,o=0;i>8&255),r>16&255),6===o?(r>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r=0&&(e[r--]=a>>8&255),r>=0&&(e[r--]=a>>16&255),6===o?(r>=0&&(e[r--]=a>>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r>=0)for(e[r--]=n;r>=0;)e[r--]=0},Math.clz32?o.prototype._countBits=function(e){return 32-Math.clz32(e)}:o.prototype._countBits=function(e){var t=e,r=0;return t>=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0===(8191&t)&&(r+=13,t>>>=13),0===(127&t)&&(r+=7,t>>>=7),0===(15&t)&&(r+=4,t>>>=4),0===(3&t)&&(r+=2,t>>>=2),0===(1&t)&&r++,r},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){n("number"===typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this._strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){n("number"===typeof e&&e>=0);var r=e/26|0,i=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;oe.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&t;for(;0!==o&&a>26,this.words[a]=67108863&t;if(0===o&&a>>13,f=0|a[1],p=8191&f,m=f>>>13,g=0|a[2],v=8191&g,y=g>>>13,b=0|a[3],w=8191&b,x=b>>>13,_=0|a[4],S=8191&_,k=_>>>13,E=0|a[5],A=8191&E,P=E>>>13,O=0|a[6],T=8191&O,C=O>>>13,j=0|a[7],R=8191&j,I=j>>>13,M=0|a[8],L=8191&M,N=M>>>13,D=0|a[9],z=8191&D,B=D>>>13,U=0|s[0],F=8191&U,$=U>>>13,H=0|s[1],V=8191&H,q=H>>>13,K=0|s[2],W=8191&K,G=K>>>13,Z=0|s[3],Y=8191&Z,X=Z>>>13,J=0|s[4],Q=8191&J,ee=J>>>13,te=0|s[5],re=8191&te,ne=te>>>13,ie=0|s[6],oe=8191&ie,ae=ie>>>13,se=0|s[7],ce=8191&se,le=se>>>13,ue=0|s[8],de=8191&ue,he=ue>>>13,fe=0|s[9],pe=8191&fe,me=fe>>>13;r.negative=e.negative^t.negative,r.length=19;var ge=(l+(n=Math.imul(d,F))|0)+((8191&(i=(i=Math.imul(d,$))+Math.imul(h,F)|0))<<13)|0;l=((o=Math.imul(h,$))+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(p,F),i=(i=Math.imul(p,$))+Math.imul(m,F)|0,o=Math.imul(m,$);var ve=(l+(n=n+Math.imul(d,V)|0)|0)+((8191&(i=(i=i+Math.imul(d,q)|0)+Math.imul(h,V)|0))<<13)|0;l=((o=o+Math.imul(h,q)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(v,F),i=(i=Math.imul(v,$))+Math.imul(y,F)|0,o=Math.imul(y,$),n=n+Math.imul(p,V)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(m,V)|0,o=o+Math.imul(m,q)|0;var ye=(l+(n=n+Math.imul(d,W)|0)|0)+((8191&(i=(i=i+Math.imul(d,G)|0)+Math.imul(h,W)|0))<<13)|0;l=((o=o+Math.imul(h,G)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,n=Math.imul(w,F),i=(i=Math.imul(w,$))+Math.imul(x,F)|0,o=Math.imul(x,$),n=n+Math.imul(v,V)|0,i=(i=i+Math.imul(v,q)|0)+Math.imul(y,V)|0,o=o+Math.imul(y,q)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,G)|0;var be=(l+(n=n+Math.imul(d,Y)|0)|0)+((8191&(i=(i=i+Math.imul(d,X)|0)+Math.imul(h,Y)|0))<<13)|0;l=((o=o+Math.imul(h,X)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(S,F),i=(i=Math.imul(S,$))+Math.imul(k,F)|0,o=Math.imul(k,$),n=n+Math.imul(w,V)|0,i=(i=i+Math.imul(w,q)|0)+Math.imul(x,V)|0,o=o+Math.imul(x,q)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,X)|0)+Math.imul(m,Y)|0,o=o+Math.imul(m,X)|0;var we=(l+(n=n+Math.imul(d,Q)|0)|0)+((8191&(i=(i=i+Math.imul(d,ee)|0)+Math.imul(h,Q)|0))<<13)|0;l=((o=o+Math.imul(h,ee)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(A,F),i=(i=Math.imul(A,$))+Math.imul(P,F)|0,o=Math.imul(P,$),n=n+Math.imul(S,V)|0,i=(i=i+Math.imul(S,q)|0)+Math.imul(k,V)|0,o=o+Math.imul(k,q)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(x,W)|0,o=o+Math.imul(x,G)|0,n=n+Math.imul(v,Y)|0,i=(i=i+Math.imul(v,X)|0)+Math.imul(y,Y)|0,o=o+Math.imul(y,X)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,ee)|0;var xe=(l+(n=n+Math.imul(d,re)|0)|0)+((8191&(i=(i=i+Math.imul(d,ne)|0)+Math.imul(h,re)|0))<<13)|0;l=((o=o+Math.imul(h,ne)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(T,F),i=(i=Math.imul(T,$))+Math.imul(C,F)|0,o=Math.imul(C,$),n=n+Math.imul(A,V)|0,i=(i=i+Math.imul(A,q)|0)+Math.imul(P,V)|0,o=o+Math.imul(P,q)|0,n=n+Math.imul(S,W)|0,i=(i=i+Math.imul(S,G)|0)+Math.imul(k,W)|0,o=o+Math.imul(k,G)|0,n=n+Math.imul(w,Y)|0,i=(i=i+Math.imul(w,X)|0)+Math.imul(x,Y)|0,o=o+Math.imul(x,X)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(m,re)|0,o=o+Math.imul(m,ne)|0;var _e=(l+(n=n+Math.imul(d,oe)|0)|0)+((8191&(i=(i=i+Math.imul(d,ae)|0)+Math.imul(h,oe)|0))<<13)|0;l=((o=o+Math.imul(h,ae)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(R,F),i=(i=Math.imul(R,$))+Math.imul(I,F)|0,o=Math.imul(I,$),n=n+Math.imul(T,V)|0,i=(i=i+Math.imul(T,q)|0)+Math.imul(C,V)|0,o=o+Math.imul(C,q)|0,n=n+Math.imul(A,W)|0,i=(i=i+Math.imul(A,G)|0)+Math.imul(P,W)|0,o=o+Math.imul(P,G)|0,n=n+Math.imul(S,Y)|0,i=(i=i+Math.imul(S,X)|0)+Math.imul(k,Y)|0,o=o+Math.imul(k,X)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,ee)|0)+Math.imul(x,Q)|0,o=o+Math.imul(x,ee)|0,n=n+Math.imul(v,re)|0,i=(i=i+Math.imul(v,ne)|0)+Math.imul(y,re)|0,o=o+Math.imul(y,ne)|0,n=n+Math.imul(p,oe)|0,i=(i=i+Math.imul(p,ae)|0)+Math.imul(m,oe)|0,o=o+Math.imul(m,ae)|0;var Se=(l+(n=n+Math.imul(d,ce)|0)|0)+((8191&(i=(i=i+Math.imul(d,le)|0)+Math.imul(h,ce)|0))<<13)|0;l=((o=o+Math.imul(h,le)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(L,F),i=(i=Math.imul(L,$))+Math.imul(N,F)|0,o=Math.imul(N,$),n=n+Math.imul(R,V)|0,i=(i=i+Math.imul(R,q)|0)+Math.imul(I,V)|0,o=o+Math.imul(I,q)|0,n=n+Math.imul(T,W)|0,i=(i=i+Math.imul(T,G)|0)+Math.imul(C,W)|0,o=o+Math.imul(C,G)|0,n=n+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,X)|0)+Math.imul(P,Y)|0,o=o+Math.imul(P,X)|0,n=n+Math.imul(S,Q)|0,i=(i=i+Math.imul(S,ee)|0)+Math.imul(k,Q)|0,o=o+Math.imul(k,ee)|0,n=n+Math.imul(w,re)|0,i=(i=i+Math.imul(w,ne)|0)+Math.imul(x,re)|0,o=o+Math.imul(x,ne)|0,n=n+Math.imul(v,oe)|0,i=(i=i+Math.imul(v,ae)|0)+Math.imul(y,oe)|0,o=o+Math.imul(y,ae)|0,n=n+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,le)|0)+Math.imul(m,ce)|0,o=o+Math.imul(m,le)|0;var ke=(l+(n=n+Math.imul(d,de)|0)|0)+((8191&(i=(i=i+Math.imul(d,he)|0)+Math.imul(h,de)|0))<<13)|0;l=((o=o+Math.imul(h,he)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(z,F),i=(i=Math.imul(z,$))+Math.imul(B,F)|0,o=Math.imul(B,$),n=n+Math.imul(L,V)|0,i=(i=i+Math.imul(L,q)|0)+Math.imul(N,V)|0,o=o+Math.imul(N,q)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(T,Y)|0,i=(i=i+Math.imul(T,X)|0)+Math.imul(C,Y)|0,o=o+Math.imul(C,X)|0,n=n+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,ee)|0)+Math.imul(P,Q)|0,o=o+Math.imul(P,ee)|0,n=n+Math.imul(S,re)|0,i=(i=i+Math.imul(S,ne)|0)+Math.imul(k,re)|0,o=o+Math.imul(k,ne)|0,n=n+Math.imul(w,oe)|0,i=(i=i+Math.imul(w,ae)|0)+Math.imul(x,oe)|0,o=o+Math.imul(x,ae)|0,n=n+Math.imul(v,ce)|0,i=(i=i+Math.imul(v,le)|0)+Math.imul(y,ce)|0,o=o+Math.imul(y,le)|0,n=n+Math.imul(p,de)|0,i=(i=i+Math.imul(p,he)|0)+Math.imul(m,de)|0,o=o+Math.imul(m,he)|0;var Ee=(l+(n=n+Math.imul(d,pe)|0)|0)+((8191&(i=(i=i+Math.imul(d,me)|0)+Math.imul(h,pe)|0))<<13)|0;l=((o=o+Math.imul(h,me)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(z,V),i=(i=Math.imul(z,q))+Math.imul(B,V)|0,o=Math.imul(B,q),n=n+Math.imul(L,W)|0,i=(i=i+Math.imul(L,G)|0)+Math.imul(N,W)|0,o=o+Math.imul(N,G)|0,n=n+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,X)|0)+Math.imul(I,Y)|0,o=o+Math.imul(I,X)|0,n=n+Math.imul(T,Q)|0,i=(i=i+Math.imul(T,ee)|0)+Math.imul(C,Q)|0,o=o+Math.imul(C,ee)|0,n=n+Math.imul(A,re)|0,i=(i=i+Math.imul(A,ne)|0)+Math.imul(P,re)|0,o=o+Math.imul(P,ne)|0,n=n+Math.imul(S,oe)|0,i=(i=i+Math.imul(S,ae)|0)+Math.imul(k,oe)|0,o=o+Math.imul(k,ae)|0,n=n+Math.imul(w,ce)|0,i=(i=i+Math.imul(w,le)|0)+Math.imul(x,ce)|0,o=o+Math.imul(x,le)|0,n=n+Math.imul(v,de)|0,i=(i=i+Math.imul(v,he)|0)+Math.imul(y,de)|0,o=o+Math.imul(y,he)|0;var Ae=(l+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,me)|0)+Math.imul(m,pe)|0))<<13)|0;l=((o=o+Math.imul(m,me)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(z,W),i=(i=Math.imul(z,G))+Math.imul(B,W)|0,o=Math.imul(B,G),n=n+Math.imul(L,Y)|0,i=(i=i+Math.imul(L,X)|0)+Math.imul(N,Y)|0,o=o+Math.imul(N,X)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,ee)|0,n=n+Math.imul(T,re)|0,i=(i=i+Math.imul(T,ne)|0)+Math.imul(C,re)|0,o=o+Math.imul(C,ne)|0,n=n+Math.imul(A,oe)|0,i=(i=i+Math.imul(A,ae)|0)+Math.imul(P,oe)|0,o=o+Math.imul(P,ae)|0,n=n+Math.imul(S,ce)|0,i=(i=i+Math.imul(S,le)|0)+Math.imul(k,ce)|0,o=o+Math.imul(k,le)|0,n=n+Math.imul(w,de)|0,i=(i=i+Math.imul(w,he)|0)+Math.imul(x,de)|0,o=o+Math.imul(x,he)|0;var Pe=(l+(n=n+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,me)|0)+Math.imul(y,pe)|0))<<13)|0;l=((o=o+Math.imul(y,me)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(z,Y),i=(i=Math.imul(z,X))+Math.imul(B,Y)|0,o=Math.imul(B,X),n=n+Math.imul(L,Q)|0,i=(i=i+Math.imul(L,ee)|0)+Math.imul(N,Q)|0,o=o+Math.imul(N,ee)|0,n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(I,re)|0,o=o+Math.imul(I,ne)|0,n=n+Math.imul(T,oe)|0,i=(i=i+Math.imul(T,ae)|0)+Math.imul(C,oe)|0,o=o+Math.imul(C,ae)|0,n=n+Math.imul(A,ce)|0,i=(i=i+Math.imul(A,le)|0)+Math.imul(P,ce)|0,o=o+Math.imul(P,le)|0,n=n+Math.imul(S,de)|0,i=(i=i+Math.imul(S,he)|0)+Math.imul(k,de)|0,o=o+Math.imul(k,he)|0;var Oe=(l+(n=n+Math.imul(w,pe)|0)|0)+((8191&(i=(i=i+Math.imul(w,me)|0)+Math.imul(x,pe)|0))<<13)|0;l=((o=o+Math.imul(x,me)|0)+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,n=Math.imul(z,Q),i=(i=Math.imul(z,ee))+Math.imul(B,Q)|0,o=Math.imul(B,ee),n=n+Math.imul(L,re)|0,i=(i=i+Math.imul(L,ne)|0)+Math.imul(N,re)|0,o=o+Math.imul(N,ne)|0,n=n+Math.imul(R,oe)|0,i=(i=i+Math.imul(R,ae)|0)+Math.imul(I,oe)|0,o=o+Math.imul(I,ae)|0,n=n+Math.imul(T,ce)|0,i=(i=i+Math.imul(T,le)|0)+Math.imul(C,ce)|0,o=o+Math.imul(C,le)|0,n=n+Math.imul(A,de)|0,i=(i=i+Math.imul(A,he)|0)+Math.imul(P,de)|0,o=o+Math.imul(P,he)|0;var Te=(l+(n=n+Math.imul(S,pe)|0)|0)+((8191&(i=(i=i+Math.imul(S,me)|0)+Math.imul(k,pe)|0))<<13)|0;l=((o=o+Math.imul(k,me)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(z,re),i=(i=Math.imul(z,ne))+Math.imul(B,re)|0,o=Math.imul(B,ne),n=n+Math.imul(L,oe)|0,i=(i=i+Math.imul(L,ae)|0)+Math.imul(N,oe)|0,o=o+Math.imul(N,ae)|0,n=n+Math.imul(R,ce)|0,i=(i=i+Math.imul(R,le)|0)+Math.imul(I,ce)|0,o=o+Math.imul(I,le)|0,n=n+Math.imul(T,de)|0,i=(i=i+Math.imul(T,he)|0)+Math.imul(C,de)|0,o=o+Math.imul(C,he)|0;var Ce=(l+(n=n+Math.imul(A,pe)|0)|0)+((8191&(i=(i=i+Math.imul(A,me)|0)+Math.imul(P,pe)|0))<<13)|0;l=((o=o+Math.imul(P,me)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,n=Math.imul(z,oe),i=(i=Math.imul(z,ae))+Math.imul(B,oe)|0,o=Math.imul(B,ae),n=n+Math.imul(L,ce)|0,i=(i=i+Math.imul(L,le)|0)+Math.imul(N,ce)|0,o=o+Math.imul(N,le)|0,n=n+Math.imul(R,de)|0,i=(i=i+Math.imul(R,he)|0)+Math.imul(I,de)|0,o=o+Math.imul(I,he)|0;var je=(l+(n=n+Math.imul(T,pe)|0)|0)+((8191&(i=(i=i+Math.imul(T,me)|0)+Math.imul(C,pe)|0))<<13)|0;l=((o=o+Math.imul(C,me)|0)+(i>>>13)|0)+(je>>>26)|0,je&=67108863,n=Math.imul(z,ce),i=(i=Math.imul(z,le))+Math.imul(B,ce)|0,o=Math.imul(B,le),n=n+Math.imul(L,de)|0,i=(i=i+Math.imul(L,he)|0)+Math.imul(N,de)|0,o=o+Math.imul(N,he)|0;var Re=(l+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,me)|0)+Math.imul(I,pe)|0))<<13)|0;l=((o=o+Math.imul(I,me)|0)+(i>>>13)|0)+(Re>>>26)|0,Re&=67108863,n=Math.imul(z,de),i=(i=Math.imul(z,he))+Math.imul(B,de)|0,o=Math.imul(B,he);var Ie=(l+(n=n+Math.imul(L,pe)|0)|0)+((8191&(i=(i=i+Math.imul(L,me)|0)+Math.imul(N,pe)|0))<<13)|0;l=((o=o+Math.imul(N,me)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863;var Me=(l+(n=Math.imul(z,pe))|0)+((8191&(i=(i=Math.imul(z,me))+Math.imul(B,pe)|0))<<13)|0;return l=((o=Math.imul(B,me))+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,c[0]=ge,c[1]=ve,c[2]=ye,c[3]=be,c[4]=we,c[5]=xe,c[6]=_e,c[7]=Se,c[8]=ke,c[9]=Ee,c[10]=Ae,c[11]=Pe,c[12]=Oe,c[13]=Te,c[14]=Ce,c[15]=je,c[16]=Re,c[17]=Ie,c[18]=Me,0!==l&&(c[19]=l,r.length++),r};function v(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r._strip()}function y(e,t,r){return v(e,t,r)}function b(e,t){this.x=e,this.y=t}Math.imul||(g=m),o.prototype.mulTo=function(e,t){var r=this.length+e.length;return 10===this.length&&10===e.length?g(this,e,t):r<63?m(this,e,t):r<1024?v(this,e,t):y(this,e,t)},b.prototype.makeRBT=function(e){for(var t=new Array(e),r=o.prototype._countBits(e)-1,n=0;n>=1;return n},b.prototype.permute=function(e,t,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*t;a>=26,r+=o/67108864|0,r+=a>>>26,this.words[i]=67108863&a}return 0!==r&&(this.words[i]=r,this.length++),t?this.ineg():this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i&1}return t}(e);if(0===t.length)return new o(1);for(var r=this,n=0;n=0);var t,r=e%26,i=(e-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(t=0;t>>26-r}a&&(this.words[t]=a,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var o=e%26,a=Math.min((e-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,l=0;l=0&&(0!==u||l>=i);l--){var d=0|this.words[l];this.words[l]=u<<26-o|d>>>o,u=d&s}return c&&0!==u&&(c.words[c.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this._strip()},o.prototype.ishrn=function(e,t,r){return n(0===this.negative),this.iushrn(e,t,r)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){n("number"===typeof e&&e>=0);var t=e%26,r=(e-t)/26,i=1<=0);var t=e%26,r=(e-t)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},o.prototype.isubn=function(e){if(n("number"===typeof e),n(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[i+r]=67108863&o}for(;i>26,this.words[i+r]=67108863&o;if(0===s)return this._strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this._strip()},o.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,a=0|i.words[i.length-1];0!==(r=26-this._countBits(a))&&(i=i.ushln(r),n.iushln(r),a=0|i.words[i.length-1]);var s,c=n.length-i.length;if("mod"!==t){(s=new o(null)).length=c+1,s.words=new Array(s.length);for(var l=0;l=0;d--){var h=67108864*(0|n.words[i.length+d])+(0|n.words[i.length+d-1]);for(h=Math.min(h/a|0,67108863),n._ishlnsubmul(i,h,d);0!==n.negative;)h--,n.negative=0,n._ishlnsubmul(i,1,d),n.isZero()||(n.negative^=1);s&&(s.words[d]=h)}return s&&s._strip(),n._strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},o.prototype.divmod=function(e,t,r){return n(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(i=s.div.neg()),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.iadd(e)),{div:i,mod:a}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(i=s.div.neg()),{div:i,mod:s.mod}):0!==(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.isub(e)),{div:s.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modrn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modrn(e.words[0]))}:this._wordDiv(e,t);var i,a,s},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modrn=function(e){var t=e<0;t&&(e=-e),n(e<=67108863);for(var r=(1<<26)%e,i=0,o=this.length-1;o>=0;o--)i=(r*i+(0|this.words[o]))%e;return t?-i:i},o.prototype.modn=function(e){return this.modrn(e)},o.prototype.idivn=function(e){var t=e<0;t&&(e=-e),n(e<=67108863);for(var r=0,i=this.length-1;i>=0;i--){var o=(0|this.words[i])+67108864*r;this.words[i]=o/e|0,r=o%e}return this._strip(),t?this.ineg():this},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new o(1),a=new o(0),s=new o(0),c=new o(1),l=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++l;for(var u=r.clone(),d=t.clone();!t.isZero();){for(var h=0,f=1;0===(t.words[0]&f)&&h<26;++h,f<<=1);if(h>0)for(t.iushrn(h);h-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(u),a.isub(d)),i.iushrn(1),a.iushrn(1);for(var p=0,m=1;0===(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||c.isOdd())&&(s.iadd(u),c.isub(d)),s.iushrn(1),c.iushrn(1);t.cmp(r)>=0?(t.isub(r),i.isub(s),a.isub(c)):(r.isub(t),s.isub(i),c.isub(a))}return{a:s,b:c,gcd:r.iushln(l)}},o.prototype._invmp=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,a=new o(1),s=new o(0),c=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var l=0,u=1;0===(t.words[0]&u)&&l<26;++l,u<<=1);if(l>0)for(t.iushrn(l);l-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);for(var d=0,h=1;0===(r.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(r.iushrn(d);d-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),a.isub(s)):(r.isub(t),s.isub(a))}return(i=0===t.cmpn(1)?a:s).cmpn(0)<0&&i.iadd(e),i},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var o=t;t=r,r=o}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0===(1&this.words[0])},o.prototype.isOdd=function(){return 1===(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){n("number"===typeof e);var t=e%26,r=(e-t)/26,i=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this._strip(),this.length>1)t=1;else{r&&(e=-e),n(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new A(e)},o.prototype.toRed=function(e){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return n(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return n(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var w={k256:null,p224:null,p192:null,p25519:null};function x(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function _(){x.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function S(){x.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function k(){x.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function E(){x.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function A(e){if("string"===typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else n(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function P(e){A.call(this,e),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}x.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},x.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},x.prototype.split=function(e,t){e.iushrn(this.n,0,t)},x.prototype.imulK=function(e){return e.imul(this.k)},i(_,x),_.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),i=0;i>>22,o=a}o>>>=22,e.words[i-10]=o,0===o&&e.length>10?e.length-=10:e.length-=9},_.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(w[e])return w[e];var t;if("k256"===e)t=new _;else if("p224"===e)t=new S;else if("p192"===e)t=new k;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new E}return w[e]=t,t},A.prototype._verify1=function(e){n(0===e.negative,"red works only with positives"),n(e.red,"red works only with red numbers")},A.prototype._verify2=function(e,t){n(0===(e.negative|t.negative),"red works only with positives"),n(e.red&&e.red===t.red,"red works only with red numbers")},A.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):(u(e,e.umod(this.m)._forceRed(this)),e)},A.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},A.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},A.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},A.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},A.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},A.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},A.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},A.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},A.prototype.isqr=function(e){return this.imul(e,e.clone())},A.prototype.sqr=function(e){return this.mul(e,e)},A.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(n(t%2===1),3===t){var r=this.m.add(new o(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);n(!i.isZero());var s=new o(1).toRed(this),c=s.redNeg(),l=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new o(2*u*u).toRed(this);0!==this.pow(u,l).cmp(c);)u.redIAdd(c);for(var d=this.pow(u,i),h=this.pow(e,i.addn(1).iushrn(1)),f=this.pow(e,i),p=a;0!==f.cmp(s);){for(var m=f,g=0;0!==m.cmp(s);g++)m=m.redSqr();n(g=0;n--){for(var l=t.words[n],u=c-1;u>=0;u--){var d=l>>u&1;i!==r[0]&&(i=this.sqr(i)),0!==d||0!==a?(a<<=1,a|=d,(4===++s||0===n&&0===u)&&(i=this.mul(i,r[a]),s=0,a=0)):s=0}c=26}return i},A.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},A.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new P(e)},i(P,A),P.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},P.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},P.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},P.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},P.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e=r.nmd(e),this)},161:(e,t,r)=>{"use strict";var n=r(6293).Buffer;e.exports=function(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r>>0,u=new Uint8Array(a);e[r];){var d=t[e.charCodeAt(r)];if(255===d)return;for(var h=0,f=a-1;(0!==d||h>>0,u[f]=d%256>>>0,d=d/256>>>0;if(0!==d)throw new Error("Non-zero carry");o=h,r++}for(var p=a-o;p!==a&&0===u[p];)p++;var m=n.allocUnsafe(i+(a-p));m.fill(0,0,i);for(var g=i;p!==a;)m[g++]=u[p++];return m}return{encode:function(t){if((Array.isArray(t)||t instanceof Uint8Array)&&(t=n.from(t)),!n.isBuffer(t))throw new TypeError("Expected Buffer");if(0===t.length)return"";for(var r=0,i=0,o=0,a=t.length;o!==a&&0===t[o];)o++,r++;for(var l=(a-o)*u+1>>>0,d=new Uint8Array(l);o!==a;){for(var h=t[o],f=0,p=l-1;(0!==h||f>>0,d[p]=h%s>>>0,h=h/s>>>0;if(0!==h)throw new Error("Non-zero carry");i=f,o++}for(var m=l-i;m!==l&&0===d[m];)m++;for(var g=c.repeat(r);m{"use strict";t.byteLength=function(e){var t=s(e),r=t[0],n=t[1];return 3*(r+n)/4-n},t.toByteArray=function(e){var t,r,o=s(e),a=o[0],c=o[1],l=new i(function(e,t,r){return 3*(t+r)/4-r}(0,a,c)),u=0,d=c>0?a-4:a;for(r=0;r>16&255,l[u++]=t>>8&255,l[u++]=255&t;2===c&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,l[u++]=255&t);1===c&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,l[u++]=t>>8&255,l[u++]=255&t);return l},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,o=[],a=16383,s=0,l=n-i;sl?l:s+a));1===i?(t=e[n-1],o.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],o.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return o.join("")};for(var r=[],n=[],i="undefined"!==typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0;a<64;++a)r[a]=o[a],n[o.charCodeAt(a)]=a;function s(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function c(e,t,n){for(var i,o,a=[],s=t;s>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return a.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},8419:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n={};let i;t.wordlists=n,t._default=i;try{t._default=i=r(32),n.czech=i}catch(o){}try{t._default=i=r(6996),n.chinese_simplified=i}catch(o){}try{t._default=i=r(4262),n.chinese_traditional=i}catch(o){}try{t._default=i=r(8013),n.korean=i}catch(o){}try{t._default=i=r(1848),n.french=i}catch(o){}try{t._default=i=r(2841),n.italian=i}catch(o){}try{t._default=i=r(659),n.spanish=i}catch(o){}try{t._default=i=r(4472),n.japanese=i,n.JA=i}catch(o){}try{t._default=i=r(1945),n.portuguese=i}catch(o){}try{t._default=i=r(4573),n.english=i,n.EN=i}catch(o){}},4200:(e,t,r)=>{"use strict";var n=r(4872).Buffer;const i=r(1985),o=r(2670),a=r(2291),s=r(9041),c=r(8419);let l=c._default;const u="Invalid mnemonic",d="Invalid entropy",h="Invalid mnemonic checksum",f="A wordlist is required but a default could not be found.\nPlease pass a 2048 word array explicitly.";function p(e){return(e||"").normalize("NFKD")}function m(e,t,r){for(;e.lengthm(e.toString(2),"0",8))).join("")}function y(e){const t=8*e.length/32,r=i.sha256(Uint8Array.from(e));return v(Array.from(r)).slice(0,t)}function b(e){return"mnemonic"+(e||"")}function w(e,t){if(!(t=t||l))throw new Error(f);const r=p(e).split(" ");if(r.length%3!==0)throw new Error(u);const i=r.map((e=>{const r=t.indexOf(e);if(-1===r)throw new Error(u);return m(r.toString(2),"0",11)})).join(""),o=32*Math.floor(i.length/33),a=i.slice(0,o),s=i.slice(o),c=a.match(/(.{1,8})/g).map(g);if(c.length<16)throw new Error(d);if(c.length>32)throw new Error(d);if(c.length%4!==0)throw new Error(d);const v=n.from(c);if(y(v)!==s)throw new Error(h);return v.toString("hex")}function x(e,t){if(n.isBuffer(e)||(e=n.from(e,"hex")),!(t=t||l))throw new Error(f);if(e.length<16)throw new TypeError(d);if(e.length>32)throw new TypeError(d);if(e.length%4!==0)throw new TypeError(d);const r=(v(Array.from(e))+y(e)).match(/(.{1,11})/g).map((e=>{const r=g(e);return t[r]}));return"\u3042\u3044\u3053\u304f\u3057\u3093"===t[0]?r.join("\u3000"):r.join(" ")}t.Z1=function(e,t){const r=Uint8Array.from(n.from(p(e),"utf8")),i=Uint8Array.from(n.from(b(p(t)),"utf8")),s=a.pbkdf2(o.sha512,r,i,{c:2048,dkLen:64});return n.from(s)},t.OF=function(e,t,r){if((e=e||128)%32!==0)throw new TypeError(d);return x((t=t||(e=>n.from(s.randomBytes(e))))(e/8),r)},t._I=function(e,t){try{w(e,t)}catch(r){return!1}return!0};var _=r(8419);t.ET=_.wordlists},5192:(e,t,r)=>{const n=r(6377);function i(e,t,r){const n=e[t]+e[r];let i=e[t+1]+e[r+1];n>=4294967296&&i++,e[t]=n,e[t+1]=i}function o(e,t,r,n){let i=e[t]+r;r<0&&(i+=4294967296);let o=e[t+1]+n;i>=4294967296&&o++,e[t]=i,e[t+1]=o}function a(e,t){return e[t]^e[t+1]<<8^e[t+2]<<16^e[t+3]<<24}function s(e,t,r,n,a,s){const c=d[a],l=d[a+1],h=d[s],f=d[s+1];i(u,e,t),o(u,e,c,l);let p=u[n]^u[e],m=u[n+1]^u[e+1];u[n]=m,u[n+1]=p,i(u,r,n),p=u[t]^u[r],m=u[t+1]^u[r+1],u[t]=p>>>24^m<<8,u[t+1]=m>>>24^p<<8,i(u,e,t),o(u,e,h,f),p=u[n]^u[e],m=u[n+1]^u[e+1],u[n]=p>>>16^m<<16,u[n+1]=m>>>16^p<<16,i(u,r,n),p=u[t]^u[r],m=u[t+1]^u[r+1],u[t]=m>>>31^p<<1,u[t+1]=p>>>31^m<<1}const c=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),l=new Uint8Array([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].map((function(e){return 2*e}))),u=new Uint32Array(32),d=new Uint32Array(32);function h(e,t){let r=0;for(r=0;r<16;r++)u[r]=e.h[r],u[r+16]=c[r];for(u[24]=u[24]^e.t,u[25]=u[25]^e.t/4294967296,t&&(u[28]=~u[28],u[29]=~u[29]),r=0;r<32;r++)d[r]=a(e.b,4*r);for(r=0;r<12;r++)s(0,8,16,24,l[16*r+0],l[16*r+1]),s(2,10,18,26,l[16*r+2],l[16*r+3]),s(4,12,20,28,l[16*r+4],l[16*r+5]),s(6,14,22,30,l[16*r+6],l[16*r+7]),s(0,10,20,30,l[16*r+8],l[16*r+9]),s(2,12,22,24,l[16*r+10],l[16*r+11]),s(4,14,16,26,l[16*r+12],l[16*r+13]),s(6,8,18,28,l[16*r+14],l[16*r+15]);for(r=0;r<16;r++)e.h[r]=e.h[r]^u[r]^u[r+16]}const f=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function p(e,t,r,n){if(0===e||e>64)throw new Error("Illegal output length, expected 0 < length <= 64");if(t&&t.length>64)throw new Error("Illegal key, expected Uint8Array with 0 < length <= 64");if(r&&16!==r.length)throw new Error("Illegal salt, expected Uint8Array with length is 16");if(n&&16!==n.length)throw new Error("Illegal personal, expected Uint8Array with length is 16");const i={b:new Uint8Array(128),h:new Uint32Array(16),t:0,c:0,outlen:e};f.fill(0),f[0]=e,t&&(f[1]=t.length),f[2]=1,f[3]=1,r&&f.set(r,32),n&&f.set(n,48);for(let o=0;o<16;o++)i.h[o]=c[o]^a(f,4*o);return t&&(m(i,t),i.c=128),i}function m(e,t){for(let r=0;r>2]>>8*(3&r);return t}function v(e,t,r,i,o){r=r||64,e=n.normalizeInput(e),i&&(i=n.normalizeInput(i)),o&&(o=n.normalizeInput(o));const a=p(r,t,i,o);return m(a,e),g(a)}e.exports={blake2b:v,blake2bHex:function(e,t,r,i,o){const a=v(e,t,r,i,o);return n.toHex(a)},blake2bInit:p,blake2bUpdate:m,blake2bFinal:g}},7114:(e,t,r)=>{const n=r(6377);function i(e,t){return e[t]^e[t+1]<<8^e[t+2]<<16^e[t+3]<<24}function o(e,t,r,n,i,o){l[e]=l[e]+l[t]+i,l[n]=a(l[n]^l[e],16),l[r]=l[r]+l[n],l[t]=a(l[t]^l[r],12),l[e]=l[e]+l[t]+o,l[n]=a(l[n]^l[e],8),l[r]=l[r]+l[n],l[t]=a(l[t]^l[r],7)}function a(e,t){return e>>>t^e<<32-t}const s=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),c=new Uint8Array([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]),l=new Uint32Array(16),u=new Uint32Array(16);function d(e,t){let r=0;for(r=0;r<8;r++)l[r]=e.h[r],l[r+8]=s[r];for(l[12]^=e.t,l[13]^=e.t/4294967296,t&&(l[14]=~l[14]),r=0;r<16;r++)u[r]=i(e.b,4*r);for(r=0;r<10;r++)o(0,4,8,12,u[c[16*r+0]],u[c[16*r+1]]),o(1,5,9,13,u[c[16*r+2]],u[c[16*r+3]]),o(2,6,10,14,u[c[16*r+4]],u[c[16*r+5]]),o(3,7,11,15,u[c[16*r+6]],u[c[16*r+7]]),o(0,5,10,15,u[c[16*r+8]],u[c[16*r+9]]),o(1,6,11,12,u[c[16*r+10]],u[c[16*r+11]]),o(2,7,8,13,u[c[16*r+12]],u[c[16*r+13]]),o(3,4,9,14,u[c[16*r+14]],u[c[16*r+15]]);for(r=0;r<8;r++)e.h[r]^=l[r]^l[r+8]}function h(e,t){if(!(e>0&&e<=32))throw new Error("Incorrect output length, should be in [1, 32]");const r=t?t.length:0;if(t&&!(r>0&&r<=32))throw new Error("Incorrect key length, should be in [1, 32]");const n={h:new Uint32Array(s),b:new Uint8Array(64),c:0,t:0,outlen:e};return n.h[0]^=16842752^r<<8^e,r>0&&(f(n,t),n.c=64),n}function f(e,t){for(let r=0;r>2]>>8*(3&r)&255;return t}function m(e,t,r){r=r||32,e=n.normalizeInput(e);const i=h(r,t);return f(i,e),p(i)}e.exports={blake2s:m,blake2sHex:function(e,t,r){const i=m(e,t,r);return n.toHex(i)},blake2sInit:h,blake2sUpdate:f,blake2sFinal:p}},4563:(e,t,r)=>{const n=r(5192),i=r(7114);e.exports={blake2b:n.blake2b,blake2bHex:n.blake2bHex,blake2bInit:n.blake2bInit,blake2bUpdate:n.blake2bUpdate,blake2bFinal:n.blake2bFinal,blake2s:i.blake2s,blake2sHex:i.blake2sHex,blake2sInit:i.blake2sInit,blake2sUpdate:i.blake2sUpdate,blake2sFinal:i.blake2sFinal}},6377:e=>{function t(e){return(4294967296+e).toString(16).substring(1)}e.exports={normalizeInput:function(e){let t;if(e instanceof Uint8Array)t=e;else{if("string"!==typeof e)throw new Error("Input must be an string, Buffer or Uint8Array");t=(new TextEncoder).encode(e)}return t},toHex:function(e){return Array.prototype.map.call(e,(function(e){return(e<16?"0":"")+e.toString(16)})).join("")},debugPrint:function(e,r,n){let i="\n"+e+" = ";for(let o=0;o=65&&r<=70?r-55:r>=97&&r<=102?r-87:r-48&15}function c(e,t,r){var n=s(e,r);return r-1>=t&&(n|=s(e,r-1)<<4),n}function l(e,t,r,n){for(var i=0,o=Math.min(e.length,r),a=t;a=49?s-49+10:s>=17?s-17+10:s}return i}o.isBN=function(e){return e instanceof o||null!==e&&"object"===typeof e&&e.constructor.wordSize===o.wordSize&&Array.isArray(e.words)},o.max=function(e,t){return e.cmp(t)>0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,r){if("number"===typeof e)return this._initNumber(e,t,r);if("object"===typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),n(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)a=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(i=0,o=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this.strip()},o.prototype._parseHex=function(e,t,r){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n=t;n-=2)i=c(e,t,n)<=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;else for(n=(e.length-t)%2===0?t+1:t;n=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;this.strip()},o.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var o=e.length-r,a=o%n,s=Math.min(o,o-a)+r,c=0,u=r;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var u=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],d=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],h=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function f(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],o=0|t.words[0],a=i*o,s=67108863&a,c=a/67108864|0;r.words[0]=s;for(var l=1;l>>26,d=67108863&c,h=Math.min(l,t.length-1),f=Math.max(0,l-e.length+1);f<=h;f++){var p=l-f|0;u+=(a=(i=0|e.words[p])*(o=0|t.words[f])+d)/67108864|0,d=67108863&a}r.words[l]=0|d,c=0|u}return 0!==c?r.words[l]=0|c:r.length--,r.strip()}o.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var i=0,o=0,a=0;a>>24-i&16777215)||a!==this.length-1?u[6-c.length]+c+r:c+r,(i+=2)>=26&&(i-=26,a--)}for(0!==o&&(r=o.toString(16)+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var l=d[e],f=h[e];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var m=p.modn(f).toString(e);r=(p=p.idivn(f)).isZero()?m+r:u[l-m.length]+m+r}for(this.isZero()&&(r="0"+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(e,t){return n("undefined"!==typeof a),this.toArrayLike(a,e,t)},o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},o.prototype.toArrayLike=function(e,t,r){var i=this.byteLength(),o=r||Math.max(1,i);n(i<=o,"byte array longer than desired length"),n(o>0,"Requested array length <= 0"),this.strip();var a,s,c="le"===t,l=new e(o),u=this.clone();if(c){for(s=0;!u.isZero();s++)a=u.andln(255),u.iushrn(8),l[s]=a;for(;s=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0===(8191&t)&&(r+=13,t>>>=13),0===(127&t)&&(r+=7,t>>>=7),0===(15&t)&&(r+=4,t>>>=4),0===(3&t)&&(r+=2,t>>>=2),0===(1&t)&&r++,r},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){n("number"===typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this.strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){n("number"===typeof e&&e>=0);var r=e/26|0,i=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;oe.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&t;for(;0!==o&&a>26,this.words[a]=67108863&t;if(0===o&&a>>13,f=0|a[1],p=8191&f,m=f>>>13,g=0|a[2],v=8191&g,y=g>>>13,b=0|a[3],w=8191&b,x=b>>>13,_=0|a[4],S=8191&_,k=_>>>13,E=0|a[5],A=8191&E,P=E>>>13,O=0|a[6],T=8191&O,C=O>>>13,j=0|a[7],R=8191&j,I=j>>>13,M=0|a[8],L=8191&M,N=M>>>13,D=0|a[9],z=8191&D,B=D>>>13,U=0|s[0],F=8191&U,$=U>>>13,H=0|s[1],V=8191&H,q=H>>>13,K=0|s[2],W=8191&K,G=K>>>13,Z=0|s[3],Y=8191&Z,X=Z>>>13,J=0|s[4],Q=8191&J,ee=J>>>13,te=0|s[5],re=8191&te,ne=te>>>13,ie=0|s[6],oe=8191&ie,ae=ie>>>13,se=0|s[7],ce=8191&se,le=se>>>13,ue=0|s[8],de=8191&ue,he=ue>>>13,fe=0|s[9],pe=8191&fe,me=fe>>>13;r.negative=e.negative^t.negative,r.length=19;var ge=(l+(n=Math.imul(d,F))|0)+((8191&(i=(i=Math.imul(d,$))+Math.imul(h,F)|0))<<13)|0;l=((o=Math.imul(h,$))+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(p,F),i=(i=Math.imul(p,$))+Math.imul(m,F)|0,o=Math.imul(m,$);var ve=(l+(n=n+Math.imul(d,V)|0)|0)+((8191&(i=(i=i+Math.imul(d,q)|0)+Math.imul(h,V)|0))<<13)|0;l=((o=o+Math.imul(h,q)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(v,F),i=(i=Math.imul(v,$))+Math.imul(y,F)|0,o=Math.imul(y,$),n=n+Math.imul(p,V)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(m,V)|0,o=o+Math.imul(m,q)|0;var ye=(l+(n=n+Math.imul(d,W)|0)|0)+((8191&(i=(i=i+Math.imul(d,G)|0)+Math.imul(h,W)|0))<<13)|0;l=((o=o+Math.imul(h,G)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,n=Math.imul(w,F),i=(i=Math.imul(w,$))+Math.imul(x,F)|0,o=Math.imul(x,$),n=n+Math.imul(v,V)|0,i=(i=i+Math.imul(v,q)|0)+Math.imul(y,V)|0,o=o+Math.imul(y,q)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,G)|0;var be=(l+(n=n+Math.imul(d,Y)|0)|0)+((8191&(i=(i=i+Math.imul(d,X)|0)+Math.imul(h,Y)|0))<<13)|0;l=((o=o+Math.imul(h,X)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(S,F),i=(i=Math.imul(S,$))+Math.imul(k,F)|0,o=Math.imul(k,$),n=n+Math.imul(w,V)|0,i=(i=i+Math.imul(w,q)|0)+Math.imul(x,V)|0,o=o+Math.imul(x,q)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,X)|0)+Math.imul(m,Y)|0,o=o+Math.imul(m,X)|0;var we=(l+(n=n+Math.imul(d,Q)|0)|0)+((8191&(i=(i=i+Math.imul(d,ee)|0)+Math.imul(h,Q)|0))<<13)|0;l=((o=o+Math.imul(h,ee)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(A,F),i=(i=Math.imul(A,$))+Math.imul(P,F)|0,o=Math.imul(P,$),n=n+Math.imul(S,V)|0,i=(i=i+Math.imul(S,q)|0)+Math.imul(k,V)|0,o=o+Math.imul(k,q)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(x,W)|0,o=o+Math.imul(x,G)|0,n=n+Math.imul(v,Y)|0,i=(i=i+Math.imul(v,X)|0)+Math.imul(y,Y)|0,o=o+Math.imul(y,X)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,ee)|0;var xe=(l+(n=n+Math.imul(d,re)|0)|0)+((8191&(i=(i=i+Math.imul(d,ne)|0)+Math.imul(h,re)|0))<<13)|0;l=((o=o+Math.imul(h,ne)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(T,F),i=(i=Math.imul(T,$))+Math.imul(C,F)|0,o=Math.imul(C,$),n=n+Math.imul(A,V)|0,i=(i=i+Math.imul(A,q)|0)+Math.imul(P,V)|0,o=o+Math.imul(P,q)|0,n=n+Math.imul(S,W)|0,i=(i=i+Math.imul(S,G)|0)+Math.imul(k,W)|0,o=o+Math.imul(k,G)|0,n=n+Math.imul(w,Y)|0,i=(i=i+Math.imul(w,X)|0)+Math.imul(x,Y)|0,o=o+Math.imul(x,X)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(m,re)|0,o=o+Math.imul(m,ne)|0;var _e=(l+(n=n+Math.imul(d,oe)|0)|0)+((8191&(i=(i=i+Math.imul(d,ae)|0)+Math.imul(h,oe)|0))<<13)|0;l=((o=o+Math.imul(h,ae)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(R,F),i=(i=Math.imul(R,$))+Math.imul(I,F)|0,o=Math.imul(I,$),n=n+Math.imul(T,V)|0,i=(i=i+Math.imul(T,q)|0)+Math.imul(C,V)|0,o=o+Math.imul(C,q)|0,n=n+Math.imul(A,W)|0,i=(i=i+Math.imul(A,G)|0)+Math.imul(P,W)|0,o=o+Math.imul(P,G)|0,n=n+Math.imul(S,Y)|0,i=(i=i+Math.imul(S,X)|0)+Math.imul(k,Y)|0,o=o+Math.imul(k,X)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,ee)|0)+Math.imul(x,Q)|0,o=o+Math.imul(x,ee)|0,n=n+Math.imul(v,re)|0,i=(i=i+Math.imul(v,ne)|0)+Math.imul(y,re)|0,o=o+Math.imul(y,ne)|0,n=n+Math.imul(p,oe)|0,i=(i=i+Math.imul(p,ae)|0)+Math.imul(m,oe)|0,o=o+Math.imul(m,ae)|0;var Se=(l+(n=n+Math.imul(d,ce)|0)|0)+((8191&(i=(i=i+Math.imul(d,le)|0)+Math.imul(h,ce)|0))<<13)|0;l=((o=o+Math.imul(h,le)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(L,F),i=(i=Math.imul(L,$))+Math.imul(N,F)|0,o=Math.imul(N,$),n=n+Math.imul(R,V)|0,i=(i=i+Math.imul(R,q)|0)+Math.imul(I,V)|0,o=o+Math.imul(I,q)|0,n=n+Math.imul(T,W)|0,i=(i=i+Math.imul(T,G)|0)+Math.imul(C,W)|0,o=o+Math.imul(C,G)|0,n=n+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,X)|0)+Math.imul(P,Y)|0,o=o+Math.imul(P,X)|0,n=n+Math.imul(S,Q)|0,i=(i=i+Math.imul(S,ee)|0)+Math.imul(k,Q)|0,o=o+Math.imul(k,ee)|0,n=n+Math.imul(w,re)|0,i=(i=i+Math.imul(w,ne)|0)+Math.imul(x,re)|0,o=o+Math.imul(x,ne)|0,n=n+Math.imul(v,oe)|0,i=(i=i+Math.imul(v,ae)|0)+Math.imul(y,oe)|0,o=o+Math.imul(y,ae)|0,n=n+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,le)|0)+Math.imul(m,ce)|0,o=o+Math.imul(m,le)|0;var ke=(l+(n=n+Math.imul(d,de)|0)|0)+((8191&(i=(i=i+Math.imul(d,he)|0)+Math.imul(h,de)|0))<<13)|0;l=((o=o+Math.imul(h,he)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(z,F),i=(i=Math.imul(z,$))+Math.imul(B,F)|0,o=Math.imul(B,$),n=n+Math.imul(L,V)|0,i=(i=i+Math.imul(L,q)|0)+Math.imul(N,V)|0,o=o+Math.imul(N,q)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(T,Y)|0,i=(i=i+Math.imul(T,X)|0)+Math.imul(C,Y)|0,o=o+Math.imul(C,X)|0,n=n+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,ee)|0)+Math.imul(P,Q)|0,o=o+Math.imul(P,ee)|0,n=n+Math.imul(S,re)|0,i=(i=i+Math.imul(S,ne)|0)+Math.imul(k,re)|0,o=o+Math.imul(k,ne)|0,n=n+Math.imul(w,oe)|0,i=(i=i+Math.imul(w,ae)|0)+Math.imul(x,oe)|0,o=o+Math.imul(x,ae)|0,n=n+Math.imul(v,ce)|0,i=(i=i+Math.imul(v,le)|0)+Math.imul(y,ce)|0,o=o+Math.imul(y,le)|0,n=n+Math.imul(p,de)|0,i=(i=i+Math.imul(p,he)|0)+Math.imul(m,de)|0,o=o+Math.imul(m,he)|0;var Ee=(l+(n=n+Math.imul(d,pe)|0)|0)+((8191&(i=(i=i+Math.imul(d,me)|0)+Math.imul(h,pe)|0))<<13)|0;l=((o=o+Math.imul(h,me)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(z,V),i=(i=Math.imul(z,q))+Math.imul(B,V)|0,o=Math.imul(B,q),n=n+Math.imul(L,W)|0,i=(i=i+Math.imul(L,G)|0)+Math.imul(N,W)|0,o=o+Math.imul(N,G)|0,n=n+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,X)|0)+Math.imul(I,Y)|0,o=o+Math.imul(I,X)|0,n=n+Math.imul(T,Q)|0,i=(i=i+Math.imul(T,ee)|0)+Math.imul(C,Q)|0,o=o+Math.imul(C,ee)|0,n=n+Math.imul(A,re)|0,i=(i=i+Math.imul(A,ne)|0)+Math.imul(P,re)|0,o=o+Math.imul(P,ne)|0,n=n+Math.imul(S,oe)|0,i=(i=i+Math.imul(S,ae)|0)+Math.imul(k,oe)|0,o=o+Math.imul(k,ae)|0,n=n+Math.imul(w,ce)|0,i=(i=i+Math.imul(w,le)|0)+Math.imul(x,ce)|0,o=o+Math.imul(x,le)|0,n=n+Math.imul(v,de)|0,i=(i=i+Math.imul(v,he)|0)+Math.imul(y,de)|0,o=o+Math.imul(y,he)|0;var Ae=(l+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,me)|0)+Math.imul(m,pe)|0))<<13)|0;l=((o=o+Math.imul(m,me)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(z,W),i=(i=Math.imul(z,G))+Math.imul(B,W)|0,o=Math.imul(B,G),n=n+Math.imul(L,Y)|0,i=(i=i+Math.imul(L,X)|0)+Math.imul(N,Y)|0,o=o+Math.imul(N,X)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,ee)|0,n=n+Math.imul(T,re)|0,i=(i=i+Math.imul(T,ne)|0)+Math.imul(C,re)|0,o=o+Math.imul(C,ne)|0,n=n+Math.imul(A,oe)|0,i=(i=i+Math.imul(A,ae)|0)+Math.imul(P,oe)|0,o=o+Math.imul(P,ae)|0,n=n+Math.imul(S,ce)|0,i=(i=i+Math.imul(S,le)|0)+Math.imul(k,ce)|0,o=o+Math.imul(k,le)|0,n=n+Math.imul(w,de)|0,i=(i=i+Math.imul(w,he)|0)+Math.imul(x,de)|0,o=o+Math.imul(x,he)|0;var Pe=(l+(n=n+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,me)|0)+Math.imul(y,pe)|0))<<13)|0;l=((o=o+Math.imul(y,me)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(z,Y),i=(i=Math.imul(z,X))+Math.imul(B,Y)|0,o=Math.imul(B,X),n=n+Math.imul(L,Q)|0,i=(i=i+Math.imul(L,ee)|0)+Math.imul(N,Q)|0,o=o+Math.imul(N,ee)|0,n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(I,re)|0,o=o+Math.imul(I,ne)|0,n=n+Math.imul(T,oe)|0,i=(i=i+Math.imul(T,ae)|0)+Math.imul(C,oe)|0,o=o+Math.imul(C,ae)|0,n=n+Math.imul(A,ce)|0,i=(i=i+Math.imul(A,le)|0)+Math.imul(P,ce)|0,o=o+Math.imul(P,le)|0,n=n+Math.imul(S,de)|0,i=(i=i+Math.imul(S,he)|0)+Math.imul(k,de)|0,o=o+Math.imul(k,he)|0;var Oe=(l+(n=n+Math.imul(w,pe)|0)|0)+((8191&(i=(i=i+Math.imul(w,me)|0)+Math.imul(x,pe)|0))<<13)|0;l=((o=o+Math.imul(x,me)|0)+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,n=Math.imul(z,Q),i=(i=Math.imul(z,ee))+Math.imul(B,Q)|0,o=Math.imul(B,ee),n=n+Math.imul(L,re)|0,i=(i=i+Math.imul(L,ne)|0)+Math.imul(N,re)|0,o=o+Math.imul(N,ne)|0,n=n+Math.imul(R,oe)|0,i=(i=i+Math.imul(R,ae)|0)+Math.imul(I,oe)|0,o=o+Math.imul(I,ae)|0,n=n+Math.imul(T,ce)|0,i=(i=i+Math.imul(T,le)|0)+Math.imul(C,ce)|0,o=o+Math.imul(C,le)|0,n=n+Math.imul(A,de)|0,i=(i=i+Math.imul(A,he)|0)+Math.imul(P,de)|0,o=o+Math.imul(P,he)|0;var Te=(l+(n=n+Math.imul(S,pe)|0)|0)+((8191&(i=(i=i+Math.imul(S,me)|0)+Math.imul(k,pe)|0))<<13)|0;l=((o=o+Math.imul(k,me)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(z,re),i=(i=Math.imul(z,ne))+Math.imul(B,re)|0,o=Math.imul(B,ne),n=n+Math.imul(L,oe)|0,i=(i=i+Math.imul(L,ae)|0)+Math.imul(N,oe)|0,o=o+Math.imul(N,ae)|0,n=n+Math.imul(R,ce)|0,i=(i=i+Math.imul(R,le)|0)+Math.imul(I,ce)|0,o=o+Math.imul(I,le)|0,n=n+Math.imul(T,de)|0,i=(i=i+Math.imul(T,he)|0)+Math.imul(C,de)|0,o=o+Math.imul(C,he)|0;var Ce=(l+(n=n+Math.imul(A,pe)|0)|0)+((8191&(i=(i=i+Math.imul(A,me)|0)+Math.imul(P,pe)|0))<<13)|0;l=((o=o+Math.imul(P,me)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,n=Math.imul(z,oe),i=(i=Math.imul(z,ae))+Math.imul(B,oe)|0,o=Math.imul(B,ae),n=n+Math.imul(L,ce)|0,i=(i=i+Math.imul(L,le)|0)+Math.imul(N,ce)|0,o=o+Math.imul(N,le)|0,n=n+Math.imul(R,de)|0,i=(i=i+Math.imul(R,he)|0)+Math.imul(I,de)|0,o=o+Math.imul(I,he)|0;var je=(l+(n=n+Math.imul(T,pe)|0)|0)+((8191&(i=(i=i+Math.imul(T,me)|0)+Math.imul(C,pe)|0))<<13)|0;l=((o=o+Math.imul(C,me)|0)+(i>>>13)|0)+(je>>>26)|0,je&=67108863,n=Math.imul(z,ce),i=(i=Math.imul(z,le))+Math.imul(B,ce)|0,o=Math.imul(B,le),n=n+Math.imul(L,de)|0,i=(i=i+Math.imul(L,he)|0)+Math.imul(N,de)|0,o=o+Math.imul(N,he)|0;var Re=(l+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,me)|0)+Math.imul(I,pe)|0))<<13)|0;l=((o=o+Math.imul(I,me)|0)+(i>>>13)|0)+(Re>>>26)|0,Re&=67108863,n=Math.imul(z,de),i=(i=Math.imul(z,he))+Math.imul(B,de)|0,o=Math.imul(B,he);var Ie=(l+(n=n+Math.imul(L,pe)|0)|0)+((8191&(i=(i=i+Math.imul(L,me)|0)+Math.imul(N,pe)|0))<<13)|0;l=((o=o+Math.imul(N,me)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863;var Me=(l+(n=Math.imul(z,pe))|0)+((8191&(i=(i=Math.imul(z,me))+Math.imul(B,pe)|0))<<13)|0;return l=((o=Math.imul(B,me))+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,c[0]=ge,c[1]=ve,c[2]=ye,c[3]=be,c[4]=we,c[5]=xe,c[6]=_e,c[7]=Se,c[8]=ke,c[9]=Ee,c[10]=Ae,c[11]=Pe,c[12]=Oe,c[13]=Te,c[14]=Ce,c[15]=je,c[16]=Re,c[17]=Ie,c[18]=Me,0!==l&&(c[19]=l,r.length++),r};function m(e,t,r){return(new g).mulp(e,t,r)}function g(e,t){this.x=e,this.y=t}Math.imul||(p=f),o.prototype.mulTo=function(e,t){var r,n=this.length+e.length;return r=10===this.length&&10===e.length?p(this,e,t):n<63?f(this,e,t):n<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r.strip()}(this,e,t):m(this,e,t),r},g.prototype.makeRBT=function(e){for(var t=new Array(e),r=o.prototype._countBits(e)-1,n=0;n>=1;return n},g.prototype.permute=function(e,t,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*t;a>=26,t+=i/67108864|0,t+=o>>>26,this.words[r]=67108863&o}return 0!==t&&(this.words[r]=t,this.length++),this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i}return t}(e);if(0===t.length)return new o(1);for(var r=this,n=0;n=0);var t,r=e%26,i=(e-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(t=0;t>>26-r}a&&(this.words[t]=a,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var o=e%26,a=Math.min((e-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,l=0;l=0&&(0!==u||l>=i);l--){var d=0|this.words[l];this.words[l]=u<<26-o|d>>>o,u=d&s}return c&&0!==u&&(c.words[c.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(e,t,r){return n(0===this.negative),this.iushrn(e,t,r)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){n("number"===typeof e&&e>=0);var t=e%26,r=(e-t)/26,i=1<=0);var t=e%26,r=(e-t)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},o.prototype.isubn=function(e){if(n("number"===typeof e),n(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[i+r]=67108863&o}for(;i>26,this.words[i+r]=67108863&o;if(0===s)return this.strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,a=0|i.words[i.length-1];0!==(r=26-this._countBits(a))&&(i=i.ushln(r),n.iushln(r),a=0|i.words[i.length-1]);var s,c=n.length-i.length;if("mod"!==t){(s=new o(null)).length=c+1,s.words=new Array(s.length);for(var l=0;l=0;d--){var h=67108864*(0|n.words[i.length+d])+(0|n.words[i.length+d-1]);for(h=Math.min(h/a|0,67108863),n._ishlnsubmul(i,h,d);0!==n.negative;)h--,n.negative=0,n._ishlnsubmul(i,1,d),n.isZero()||(n.negative^=1);s&&(s.words[d]=h)}return s&&s.strip(),n.strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},o.prototype.divmod=function(e,t,r){return n(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(i=s.div.neg()),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.iadd(e)),{div:i,mod:a}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(i=s.div.neg()),{div:i,mod:s.mod}):0!==(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.isub(e)),{div:s.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,a,s},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modn=function(e){n(e<=67108863);for(var t=(1<<26)%e,r=0,i=this.length-1;i>=0;i--)r=(t*r+(0|this.words[i]))%e;return r},o.prototype.idivn=function(e){n(e<=67108863);for(var t=0,r=this.length-1;r>=0;r--){var i=(0|this.words[r])+67108864*t;this.words[r]=i/e|0,t=i%e}return this.strip()},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new o(1),a=new o(0),s=new o(0),c=new o(1),l=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++l;for(var u=r.clone(),d=t.clone();!t.isZero();){for(var h=0,f=1;0===(t.words[0]&f)&&h<26;++h,f<<=1);if(h>0)for(t.iushrn(h);h-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(u),a.isub(d)),i.iushrn(1),a.iushrn(1);for(var p=0,m=1;0===(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||c.isOdd())&&(s.iadd(u),c.isub(d)),s.iushrn(1),c.iushrn(1);t.cmp(r)>=0?(t.isub(r),i.isub(s),a.isub(c)):(r.isub(t),s.isub(i),c.isub(a))}return{a:s,b:c,gcd:r.iushln(l)}},o.prototype._invmp=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,a=new o(1),s=new o(0),c=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var l=0,u=1;0===(t.words[0]&u)&&l<26;++l,u<<=1);if(l>0)for(t.iushrn(l);l-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);for(var d=0,h=1;0===(r.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(r.iushrn(d);d-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),a.isub(s)):(r.isub(t),s.isub(a))}return(i=0===t.cmpn(1)?a:s).cmpn(0)<0&&i.iadd(e),i},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var o=t;t=r,r=o}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0===(1&this.words[0])},o.prototype.isOdd=function(){return 1===(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){n("number"===typeof e);var t=e%26,r=(e-t)/26,i=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)t=1;else{r&&(e=-e),n(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new S(e)},o.prototype.toRed=function(e){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return n(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return n(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var v={k256:null,p224:null,p192:null,p25519:null};function y(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function b(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function w(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function x(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function _(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function S(e){if("string"===typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else n(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function k(e){S.call(this,e),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}y.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},y.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},y.prototype.split=function(e,t){e.iushrn(this.n,0,t)},y.prototype.imulK=function(e){return e.imul(this.k)},i(b,y),b.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),i=0;i>>22,o=a}o>>>=22,e.words[i-10]=o,0===o&&e.length>10?e.length-=10:e.length-=9},b.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(v[e])return v[e];var t;if("k256"===e)t=new b;else if("p224"===e)t=new w;else if("p192"===e)t=new x;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new _}return v[e]=t,t},S.prototype._verify1=function(e){n(0===e.negative,"red works only with positives"),n(e.red,"red works only with red numbers")},S.prototype._verify2=function(e,t){n(0===(e.negative|t.negative),"red works only with positives"),n(e.red&&e.red===t.red,"red works only with red numbers")},S.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},S.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},S.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},S.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},S.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},S.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},S.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},S.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},S.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},S.prototype.isqr=function(e){return this.imul(e,e.clone())},S.prototype.sqr=function(e){return this.mul(e,e)},S.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(n(t%2===1),3===t){var r=this.m.add(new o(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);n(!i.isZero());var s=new o(1).toRed(this),c=s.redNeg(),l=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new o(2*u*u).toRed(this);0!==this.pow(u,l).cmp(c);)u.redIAdd(c);for(var d=this.pow(u,i),h=this.pow(e,i.addn(1).iushrn(1)),f=this.pow(e,i),p=a;0!==f.cmp(s);){for(var m=f,g=0;0!==m.cmp(s);g++)m=m.redSqr();n(g=0;n--){for(var l=t.words[n],u=c-1;u>=0;u--){var d=l>>u&1;i!==r[0]&&(i=this.sqr(i)),0!==d||0!==a?(a<<=1,a|=d,(4===++s||0===n&&0===u)&&(i=this.mul(i,r[a]),s=0,a=0)):s=0}c=26}return i},S.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},S.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new k(e)},i(k,S),k.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},k.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},k.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},k.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},k.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e=r.nmd(e),this)},3521:function(e){e.exports=function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=90)}({17:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n=r(18),i=function(){function e(){}return e.getFirstMatch=function(e,t){var r=t.match(e);return r&&r.length>0&&r[1]||""},e.getSecondMatch=function(e,t){var r=t.match(e);return r&&r.length>1&&r[2]||""},e.matchAndReturnConst=function(e,t,r){if(e.test(t))return r},e.getWindowsVersionName=function(e){switch(e){case"NT":return"NT";case"XP":case"NT 5.1":return"XP";case"NT 5.0":return"2000";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}},e.getMacOSVersionName=function(e){var t=e.split(".").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}},e.getAndroidVersionName=function(e){var t=e.split(".").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?"Cupcake":1===t[0]&&t[1]>=6?"Donut":2===t[0]&&t[1]<2?"Eclair":2===t[0]&&2===t[1]?"Froyo":2===t[0]&&t[1]>2?"Gingerbread":3===t[0]?"Honeycomb":4===t[0]&&t[1]<1?"Ice Cream Sandwich":4===t[0]&&t[1]<4?"Jelly Bean":4===t[0]&&t[1]>=4?"KitKat":5===t[0]?"Lollipop":6===t[0]?"Marshmallow":7===t[0]?"Nougat":8===t[0]?"Oreo":9===t[0]?"Pie":void 0},e.getVersionPrecision=function(e){return e.split(".").length},e.compareVersions=function(t,r,n){void 0===n&&(n=!1);var i=e.getVersionPrecision(t),o=e.getVersionPrecision(r),a=Math.max(i,o),s=0,c=e.map([t,r],(function(t){var r=a-e.getVersionPrecision(t),n=t+new Array(r+1).join(".0");return e.map(n.split("."),(function(e){return new Array(20-e.length).join("0")+e})).reverse()}));for(n&&(s=a-Math.min(i,o)),a-=1;a>=s;){if(c[0][a]>c[1][a])return 1;if(c[0][a]===c[1][a]){if(a===s)return 0;a-=1}else if(c[0][a]1?i-1:0),a=1;a0){var a=Object.keys(r),c=s.default.find(a,(function(e){return t.isOS(e)}));if(c){var l=this.satisfies(r[c]);if(void 0!==l)return l}var u=s.default.find(a,(function(e){return t.isPlatform(e)}));if(u){var d=this.satisfies(r[u]);if(void 0!==d)return d}}if(o>0){var h=Object.keys(i),f=s.default.find(h,(function(e){return t.isBrowser(e,!0)}));if(void 0!==f)return this.compareVersion(i[f])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var r=this.getBrowserName().toLowerCase(),n=e.toLowerCase(),i=s.default.getBrowserTypeByAlias(n);return t&&i&&(n=i.toLowerCase()),n===r},t.compareVersion=function(e){var t=[0],r=e,n=!1,i=this.getBrowserVersion();if("string"==typeof i)return">"===e[0]||"<"===e[0]?(r=e.substr(1),"="===e[1]?(n=!0,r=e.substr(2)):t=[],">"===e[0]?t.push(1):t.push(-1)):"="===e[0]?r=e.substr(1):"~"===e[0]&&(n=!0,r=e.substr(1)),t.indexOf(s.default.compareVersions(i,r,n))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e}();t.default=l,e.exports=t.default},92:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=/version\/(\d+(\.?_?\d+)+)/i,a=[{test:[/googlebot/i],describe:function(e){var t={name:"Googlebot"},r=i.default.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/opera/i],describe:function(e){var t={name:"Opera"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opr\/|opios/i],describe:function(e){var t={name:"Opera"},r=i.default.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:"Samsung Internet for Android"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Whale/i],describe:function(e){var t={name:"NAVER Whale Browser"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:"MZ Browser"},r=i.default.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/focus/i],describe:function(e){var t={name:"Focus"},r=i.default.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/swing/i],describe:function(e){var t={name:"Swing"},r=i.default.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/coast/i],describe:function(e){var t={name:"Opera Coast"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe:function(e){var t={name:"Opera Touch"},r=i.default.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/yabrowser/i],describe:function(e){var t={name:"Yandex Browser"},r=i.default.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:"UC Browser"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:"Maxthon"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/epiphany/i],describe:function(e){var t={name:"Epiphany"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/puffin/i],describe:function(e){var t={name:"Puffin"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sleipnir/i],describe:function(e){var t={name:"Sleipnir"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/k-meleon/i],describe:function(e){var t={name:"K-Meleon"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/micromessenger/i],describe:function(e){var t={name:"WeChat"},r=i.default.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},r=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/msie|trident/i],describe:function(e){var t={name:"Internet Explorer"},r=i.default.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/\sedg\//i],describe:function(e){var t={name:"Microsoft Edge"},r=i.default.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:"Microsoft Edge"},r=i.default.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/vivaldi/i],describe:function(e){var t={name:"Vivaldi"},r=i.default.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/seamonkey/i],describe:function(e){var t={name:"SeaMonkey"},r=i.default.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sailfish/i],describe:function(e){var t={name:"Sailfish"},r=i.default.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return r&&(t.version=r),t}},{test:[/silk/i],describe:function(e){var t={name:"Amazon Silk"},r=i.default.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/phantom/i],describe:function(e){var t={name:"PhantomJS"},r=i.default.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/slimerjs/i],describe:function(e){var t={name:"SlimerJS"},r=i.default.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t={name:"BlackBerry"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:"WebOS Browser"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/bada/i],describe:function(e){var t={name:"Bada"},r=i.default.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/tizen/i],describe:function(e){var t={name:"Tizen"},r=i.default.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/qupzilla/i],describe:function(e){var t={name:"QupZilla"},r=i.default.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:"Firefox"},r=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/electron/i],describe:function(e){var t={name:"Electron"},r=i.default.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:"Miui"},r=i.default.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/chromium/i],describe:function(e){var t={name:"Chromium"},r=i.default.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:"Chrome"},r=i.default.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/GSA/i],describe:function(e){var t={name:"Google Search"},r=i.default.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t={name:"Android Browser"},r=i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/playstation 4/i],describe:function(e){var t={name:"PlayStation 4"},r=i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:"Safari"},r=i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search("\\(")?/^(.*)\/(.*)[ \t]\((.*)/:/^(.*)\/(.*) /;return{name:i.default.getFirstMatch(t,e),version:i.default.getSecondMatch(t,e)}}}];t.default=a,e.exports=t.default},93:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:[/Roku\/DVP/],describe:function(e){var t=i.default.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:o.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=i.default.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=i.default.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),r=i.default.getWindowsVersionName(t);return{name:o.OS_MAP.Windows,version:t,versionName:r}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(e){var t={name:o.OS_MAP.iOS},r=i.default.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return r&&(t.version=r),t}},{test:[/macintosh/i],describe:function(e){var t=i.default.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),r=i.default.getMacOSVersionName(t),n={name:o.OS_MAP.MacOS,version:t};return r&&(n.versionName=r),n}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=i.default.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:o.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t=i.default.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),r=i.default.getAndroidVersionName(t),n={name:o.OS_MAP.Android,version:t};return r&&(n.versionName=r),n}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=i.default.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),r={name:o.OS_MAP.WebOS};return t&&t.length&&(r.version=t),r}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t=i.default.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||i.default.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||i.default.getFirstMatch(/\bbb(\d+)/i,e);return{name:o.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=i.default.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=i.default.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:o.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:o.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=i.default.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.PlayStation4,version:t}}}];t.default=a,e.exports=t.default},94:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:[/googlebot/i],describe:function(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe:function(e){var t=i.default.getFirstMatch(/(can-l01)/i,e)&&"Nova",r={type:o.PLATFORMS_MAP.mobile,vendor:"Huawei"};return t&&(r.model=t),r}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),r=e.test(/like (ipod|iphone)/i);return t&&!r},describe:function(e){var t=i.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:o.PLATFORMS_MAP.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return"blackberry"===e.getBrowserName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"BlackBerry"}}},{test:function(e){return"bada"===e.getBrowserName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return"windows phone"===e.getBrowserName()},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Microsoft"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(".")[0]);return"android"===e.getOSName(!0)&&t>=3},describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(e){return"android"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return"macos"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop,vendor:"Apple"}}},{test:function(e){return"windows"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(e){return"linux"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(e){return"playstation 4"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.tv}}},{test:function(e){return"roku"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.tv}}}];t.default=a,e.exports=t.default},95:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:function(e){return"microsoft edge"===e.getBrowserName(!0)},describe:function(e){if(/\sedg\//i.test(e))return{name:o.ENGINE_MAP.Blink};var t=i.default.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:o.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:o.ENGINE_MAP.Trident},r=i.default.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:o.ENGINE_MAP.Presto},r=i.default.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=e.test(/gecko/i),r=e.test(/like gecko/i);return t&&!r},describe:function(e){var t={name:o.ENGINE_MAP.Gecko},r=i.default.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(apple)?webkit\/537\.36/i],describe:function(){return{name:o.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:o.ENGINE_MAP.WebKit},r=i.default.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}}];t.default=a,e.exports=t.default}})},5094:(e,t,r)=>{var n;function i(e){this.rand=e}if(e.exports=function(e){return n||(n=new i(null)),n.generate(e)},e.exports.Rand=i,i.prototype.generate=function(e){return this._rand(e)},i.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),r=0;r{var n=r(161);e.exports=n("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},5919:(e,t,r)=>{"use strict";var n=r(8705),i=r(6293).Buffer;e.exports=function(e){function t(t){var r=t.slice(0,-4),n=t.slice(-4),i=e(r);if(!(n[0]^i[0]|n[1]^i[1]|n[2]^i[2]|n[3]^i[3]))return r}return{encode:function(t){var r=e(t);return n.encode(i.concat([t,r],t.length+4))},decode:function(e){var r=t(n.decode(e));if(!r)throw new Error("Invalid checksum");return r},decodeUnsafe:function(e){var r=n.decodeUnsafe(e);if(r)return t(r)}}}},427:(e,t,r)=>{"use strict";var n=r(8045),i=r(5919);e.exports=i((function(e){var t=n("sha256").update(e).digest();return n("sha256").update(t).digest()}))},4872:(e,t,r)=>{"use strict";const n=r(3539),i=r(3299),o="function"===typeof Symbol&&"function"===typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=c,t.SlowBuffer=function(e){+e!=e&&(e=0);return c.alloc(+e)},t.INSPECT_MAX_BYTES=50;const a=2147483647;function s(e){if(e>a)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,c.prototype),t}function c(e,t,r){if("number"===typeof e){if("string"===typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return d(e)}return l(e,t,r)}function l(e,t,r){if("string"===typeof e)return function(e,t){"string"===typeof t&&""!==t||(t="utf8");if(!c.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const r=0|m(e,t);let n=s(r);const i=n.write(e,t);i!==r&&(n=n.slice(0,i));return n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(Z(e,Uint8Array)){const t=new Uint8Array(e);return f(t.buffer,t.byteOffset,t.byteLength)}return h(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(Z(e,ArrayBuffer)||e&&Z(e.buffer,ArrayBuffer))return f(e,t,r);if("undefined"!==typeof SharedArrayBuffer&&(Z(e,SharedArrayBuffer)||e&&Z(e.buffer,SharedArrayBuffer)))return f(e,t,r);if("number"===typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return c.from(n,t,r);const i=function(e){if(c.isBuffer(e)){const t=0|p(e.length),r=s(t);return 0===r.length||e.copy(r,0,0,t),r}if(void 0!==e.length)return"number"!==typeof e.length||Y(e.length)?s(0):h(e);if("Buffer"===e.type&&Array.isArray(e.data))return h(e.data)}(e);if(i)return i;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof e[Symbol.toPrimitive])return c.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function u(e){if("number"!==typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function d(e){return u(e),s(e<0?0:0|p(e))}function h(e){const t=e.length<0?0:0|p(e.length),r=s(t);for(let n=0;n=a)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a.toString(16)+" bytes");return 0|e}function m(e,t){if(c.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||Z(e,ArrayBuffer))return e.byteLength;if("string"!==typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return K(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return W(e).length;default:if(i)return n?-1:K(e).length;t=(""+t).toLowerCase(),i=!0}}function g(e,t,r){let n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return C(this,t,r);case"utf8":case"utf-8":return A(this,t,r);case"ascii":return O(this,t,r);case"latin1":case"binary":return T(this,t,r);case"base64":return E(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return j(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function v(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function y(e,t,r,n,i){if(0===e.length)return-1;if("string"===typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),Y(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"===typeof t&&(t=c.from(t,n)),c.isBuffer(t))return 0===t.length?-1:b(e,t,r,n,i);if("number"===typeof t)return t&=255,"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):b(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function b(e,t,r,n,i){let o,a=1,s=e.length,c=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;a=2,s/=2,c/=2,r/=2}function l(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(i){let n=-1;for(o=r;os&&(r=s-c),o=r;o>=0;o--){let r=!0;for(let n=0;ni&&(n=i):n=i;const o=t.length;let a;for(n>o/2&&(n=o/2),a=0;a>8,i=r%256,o.push(i),o.push(n);return o}(t,e.length-r),e,r,n)}function E(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function A(e,t,r){r=Math.min(e.length,r);const n=[];let i=t;for(;i239?4:t>223?3:t>191?2:1;if(i+a<=r){let r,n,s,c;switch(a){case 1:t<128&&(o=t);break;case 2:r=e[i+1],128===(192&r)&&(c=(31&t)<<6|63&r,c>127&&(o=c));break;case 3:r=e[i+1],n=e[i+2],128===(192&r)&&128===(192&n)&&(c=(15&t)<<12|(63&r)<<6|63&n,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:r=e[i+1],n=e[i+2],s=e[i+3],128===(192&r)&&128===(192&n)&&128===(192&s)&&(c=(15&t)<<18|(63&r)<<12|(63&n)<<6|63&s,c>65535&&c<1114112&&(o=c))}}null===o?(o=65533,a=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|1023&o),n.push(o),i+=a}return function(e){const t=e.length;if(t<=P)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn.length?(c.isBuffer(t)||(t=c.from(t)),t.copy(n,i)):Uint8Array.prototype.set.call(n,t,i);else{if(!c.isBuffer(t))throw new TypeError('"list" argument must be an Array of Buffers');t.copy(n,i)}i+=t.length}return n},c.byteLength=m,c.prototype._isBuffer=!0,c.prototype.swap16=function(){const e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tr&&(e+=" ... "),""},o&&(c.prototype[o]=c.prototype.inspect),c.prototype.compare=function(e,t,r,n,i){if(Z(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;let o=(i>>>=0)-(n>>>=0),a=(r>>>=0)-(t>>>=0);const s=Math.min(o,a),l=this.slice(n,i),u=e.slice(t,r);for(let c=0;c>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}const i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return w(this,e,t,r);case"utf8":case"utf-8":return x(this,e,t,r);case"ascii":case"latin1":case"binary":return _(this,e,t,r);case"base64":return S(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const P=4096;function O(e,t,r){let n="";r=Math.min(e.length,r);for(let i=t;in)&&(r=n);let i="";for(let o=t;or)throw new RangeError("Trying to access beyond buffer length")}function I(e,t,r,n,i,o){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function M(e,t,r,n,i){$(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o;let a=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,r}function L(e,t,r,n,i){$(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r+7]=o,o>>=8,e[r+6]=o,o>>=8,e[r+5]=o,o>>=8,e[r+4]=o;let a=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=a,a>>=8,e[r+2]=a,a>>=8,e[r+1]=a,a>>=8,e[r]=a,r+8}function N(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function D(e,t,r,n,o){return t=+t,r>>>=0,o||N(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function z(e,t,r,n,o){return t=+t,r>>>=0,o||N(e,0,r,8),i.write(e,t,r,n,52,8),r+8}c.prototype.slice=function(e,t){const r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||R(e,t,this.length);let n=this[e],i=1,o=0;for(;++o>>=0,t>>>=0,r||R(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n},c.prototype.readUint8=c.prototype.readUInt8=function(e,t){return e>>>=0,t||R(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,t){return e>>>=0,t||R(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,t){return e>>>=0,t||R(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,t){return e>>>=0,t||R(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,t){return e>>>=0,t||R(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readBigUInt64LE=J((function(e){H(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=t+256*this[++e]+65536*this[++e]+this[++e]*2**24,i=this[++e]+256*this[++e]+65536*this[++e]+r*2**24;return BigInt(n)+(BigInt(i)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=t*2**24+65536*this[++e]+256*this[++e]+this[++e],i=this[++e]*2**24+65536*this[++e]+256*this[++e]+r;return(BigInt(n)<>>=0,t>>>=0,r||R(e,t,this.length);let n=this[e],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n},c.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||R(e,t,this.length);let n=t,i=1,o=this[e+--n];for(;n>0&&(i*=256);)o+=this[e+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o},c.prototype.readInt8=function(e,t){return e>>>=0,t||R(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){e>>>=0,t||R(e,2,this.length);const r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){e>>>=0,t||R(e,2,this.length);const r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return e>>>=0,t||R(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return e>>>=0,t||R(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readBigInt64LE=J((function(e){H(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=this[e+4]+256*this[e+5]+65536*this[e+6]+(r<<24);return(BigInt(n)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=(t<<24)+65536*this[++e]+256*this[++e]+this[++e];return(BigInt(n)<>>=0,t||R(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return e>>>=0,t||R(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return e>>>=0,t||R(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return e>>>=0,t||R(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,t,r,n){if(e=+e,t>>>=0,r>>>=0,!n){I(this,e,t,r,Math.pow(2,8*r)-1,0)}let i=1,o=0;for(this[t]=255&e;++o>>=0,r>>>=0,!n){I(this,e,t,r,Math.pow(2,8*r)-1,0)}let i=r-1,o=1;for(this[t+i]=255&e;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,1,255,0),this[t]=255&e,t+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigUInt64LE=J((function(e,t=0){return M(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeBigUInt64BE=J((function(e,t=0){return L(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);I(this,e,t,r,n-1,-n)}let i=0,o=1,a=0;for(this[t]=255&e;++i>0)-a&255;return t+r},c.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);I(this,e,t,r,n-1,-n)}let i=r-1,o=1,a=0;for(this[t+i]=255&e;--i>=0&&(o*=256);)e<0&&0===a&&0!==this[t+i+1]&&(a=1),this[t+i]=(e/o>>0)-a&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigInt64LE=J((function(e,t=0){return M(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeBigInt64BE=J((function(e,t=0){return L(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeFloatLE=function(e,t,r){return D(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return D(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return z(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return z(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,n){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"===typeof e)for(i=t;i=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function $(e,t,r,n,i,o){if(e>r||e3?0===t||t===BigInt(0)?`>= 0${n} and < 2${n} ** ${8*(o+1)}${n}`:`>= -(2${n} ** ${8*(o+1)-1}${n}) and < 2 ** ${8*(o+1)-1}${n}`:`>= ${t}${n} and <= ${r}${n}`,new B.ERR_OUT_OF_RANGE("value",i,e)}!function(e,t,r){H(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||V(t,e.length-(r+1))}(n,i,o)}function H(e,t){if("number"!==typeof e)throw new B.ERR_INVALID_ARG_TYPE(t,"number",e)}function V(e,t,r){if(Math.floor(e)!==e)throw H(e,r),new B.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new B.ERR_BUFFER_OUT_OF_BOUNDS;throw new B.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}U("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),U("ERR_INVALID_ARG_TYPE",(function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`}),TypeError),U("ERR_OUT_OF_RANGE",(function(e,t,r){let n=`The value of "${e}" is out of range.`,i=r;return Number.isInteger(r)&&Math.abs(r)>2**32?i=F(String(r)):"bigint"===typeof r&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=F(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n}),RangeError);const q=/[^+/0-9A-Za-z-_]/g;function K(e,t){let r;t=t||1/0;const n=e.length;let i=null;const o=[];for(let a=0;a55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function W(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(q,"")).length<2)return"";for(;e.length%4!==0;)e+="=";return e}(e))}function G(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function Z(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function Y(e){return e!==e}const X=function(){const e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){const n=16*r;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function J(e){return"undefined"===typeof BigInt?Q:e}function Q(){throw new Error("BigInt not supported")}},7821:e=>{var t={utf8:{stringToBytes:function(e){return t.bin.stringToBytes(unescape(encodeURIComponent(e)))},bytesToString:function(e){return decodeURIComponent(escape(t.bin.bytesToString(e)))}},bin:{stringToBytes:function(e){for(var t=[],r=0;r{var n=r(6293).Buffer,i=r(1702).Transform,o=r(5049).s;function a(e){i.call(this),this.hashMode="string"===typeof e,this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}r(637)(a,i),a.prototype.update=function(e,t,r){"string"===typeof e&&(e=n.from(e,t));var i=this._update(e);return this.hashMode?this:(r&&(i=this._toString(i,r)),i)},a.prototype.setAutoPadding=function(){},a.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},a.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},a.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},a.prototype._transform=function(e,t,r){var n;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(i){n=i}finally{r(n)}},a.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(r){t=r}e(t)},a.prototype._finalOrDigest=function(e){var t=this.__final()||n.alloc(0);return e&&(t=this._toString(t,e,!0)),t},a.prototype._toString=function(e,t,r){if(this._decoder||(this._decoder=new o(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var n=this._decoder.write(e);return r&&(n+=this._decoder.end()),n},e.exports=a},5245:(e,t)=>{var r;!function(){"use strict";var n={}.hasOwnProperty;function i(){for(var e=[],t=0;t{"use strict";var n=r(637),i=r(4768),o=r(4805),a=r(6478),s=r(1036);function c(e){s.call(this,"digest"),this._hash=e}n(c,s),c.prototype._update=function(e){this._hash.update(e)},c.prototype._final=function(){return this._hash.digest()},e.exports=function(e){return"md5"===(e=e.toLowerCase())?new i:"rmd160"===e||"ripemd160"===e?new o:new c(a(e))}},8533:(e,t,r)=>{var n=r(4768);e.exports=function(e){return(new n).update(e).digest()}},9799:e=>{!function(){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r={rotl:function(e,t){return e<>>32-t},rotr:function(e,t){return e<<32-t|e>>>t},endian:function(e){if(e.constructor==Number)return 16711935&r.rotl(e,8)|4278255360&r.rotl(e,24);for(var t=0;t0;e--)t.push(Math.floor(256*Math.random()));return t},bytesToWords:function(e){for(var t=[],r=0,n=0;r>>5]|=e[r]<<24-n%32;return t},wordsToBytes:function(e){for(var t=[],r=0;r<32*e.length;r+=8)t.push(e[r>>>5]>>>24-r%32&255);return t},bytesToHex:function(e){for(var t=[],r=0;r>>4).toString(16)),t.push((15&e[r]).toString(16));return t.join("")},hexToBytes:function(e){for(var t=[],r=0;r>>6*(3-o)&63)):r.push("=");return r.join("")},base64ToBytes:function(e){e=e.replace(/[^A-Z0-9+\/]/gi,"");for(var r=[],n=0,i=0;n>>6-2*i);return r}};e.exports=r}()},5434:e=>{"use strict";var t=function(e){return function(e){return!!e&&"object"===typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return"[object RegExp]"===t||"[object Date]"===t||function(e){return e.$$typeof===r}(e)}(e)};var r="function"===typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(e,t){return!1!==t.clone&&t.isMergeableObject(e)?c((r=e,Array.isArray(r)?[]:{}),e,t):e;var r}function i(e,t,r){return e.concat(t).map((function(e){return n(e,r)}))}function o(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return Object.propertyIsEnumerable.call(e,t)})):[]}(e))}function a(e,t){try{return t in e}catch(r){return!1}}function s(e,t,r){var i={};return r.isMergeableObject(e)&&o(e).forEach((function(t){i[t]=n(e[t],r)})),o(t).forEach((function(o){(function(e,t){return a(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))})(e,o)||(a(e,o)&&r.isMergeableObject(t[o])?i[o]=function(e,t){if(!t.customMerge)return c;var r=t.customMerge(e);return"function"===typeof r?r:c}(o,r)(e[o],t[o],r):i[o]=n(t[o],r))})),i}function c(e,r,o){(o=o||{}).arrayMerge=o.arrayMerge||i,o.isMergeableObject=o.isMergeableObject||t,o.cloneUnlessOtherwiseSpecified=n;var a=Array.isArray(r);return a===Array.isArray(e)?a?o.arrayMerge(e,r,o):s(e,r,o):n(r,o)}c.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,r){return c(e,r,t)}),{})};var l=c;e.exports=l},7007:(e,t,r)=>{"use strict";var n=t;n.version=r(8597).i8,n.utils=r(5649),n.rand=r(5094),n.curve=r(9057),n.curves=r(4011),n.ec=r(8563),n.eddsa=r(5494)},1399:(e,t,r)=>{"use strict";var n=r(292),i=r(5649),o=i.getNAF,a=i.getJSF,s=i.assert;function c(e,t){this.type=e,this.p=new n(t.p,16),this.red=t.prime?n.red(t.prime):n.mont(this.p),this.zero=new n(0).toRed(this.red),this.one=new n(1).toRed(this.red),this.two=new n(2).toRed(this.red),this.n=t.n&&new n(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function l(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){s(e.precomputed);var r=e._getDoubles(),n=o(t,1,this._bitLength),i=(1<=a;u--)c=(c<<1)+n[u];l.push(c)}for(var d=this.jpoint(null,null,null),h=this.jpoint(null,null,null),f=i;f>0;f--){for(a=0;a=0;l--){for(var u=0;l>=0&&0===a[l];l--)u++;if(l>=0&&u++,c=c.dblp(u),l<0)break;var d=a[l];s(0!==d),c="affine"===e.type?d>0?c.mixedAdd(i[d-1>>1]):c.mixedAdd(i[-d-1>>1].neg()):d>0?c.add(i[d-1>>1]):c.add(i[-d-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,r,n,i){var s,c,l,u=this._wnafT1,d=this._wnafT2,h=this._wnafT3,f=0;for(s=0;s=1;s-=2){var m=s-1,g=s;if(1===u[m]&&1===u[g]){var v=[t[m],null,null,t[g]];0===t[m].y.cmp(t[g].y)?(v[1]=t[m].add(t[g]),v[2]=t[m].toJ().mixedAdd(t[g].neg())):0===t[m].y.cmp(t[g].y.redNeg())?(v[1]=t[m].toJ().mixedAdd(t[g]),v[2]=t[m].add(t[g].neg())):(v[1]=t[m].toJ().mixedAdd(t[g]),v[2]=t[m].toJ().mixedAdd(t[g].neg()));var y=[-3,-1,-5,-7,0,7,5,1,3],b=a(r[m],r[g]);for(f=Math.max(b[0].length,f),h[m]=new Array(f),h[g]=new Array(f),c=0;c=0;s--){for(var k=0;s>=0;){var E=!0;for(c=0;c=0&&k++,_=_.dblp(k),s<0)break;for(c=0;c0?l=d[c][A-1>>1]:A<0&&(l=d[c][-A-1>>1].neg()),_="affine"===l.type?_.mixedAdd(l):_.add(l))}}for(s=0;s=Math.ceil((e.bitLength()+1)/t.step)},l.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;i{"use strict";var n=r(5649),i=r(292),o=r(637),a=r(1399),s=n.assert;function c(e){this.twisted=1!==(0|e.a),this.mOneA=this.twisted&&-1===(0|e.a),this.extended=this.mOneA,a.call(this,"edwards",e),this.a=new i(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new i(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new i(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),s(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1===(0|e.c)}function l(e,t,r,n,o){a.BasePoint.call(this,e,"projective"),null===t&&null===r&&null===n?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new i(t,16),this.y=new i(r,16),this.z=n?new i(n,16):this.curve.one,this.t=o&&new i(o,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}o(c,a),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,r,n){return this.point(e,t,r,n)},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=this.c2.redSub(this.a.redMul(r)),o=this.one.redSub(this.c2.redMul(this.d).redMul(r)),a=n.redMul(o.redInvm()),s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");var c=s.fromRed().isOdd();return(t&&!c||!t&&c)&&(s=s.redNeg()),this.point(e,s)},c.prototype.pointFromY=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=r.redSub(this.c2),o=r.redMul(this.d).redMul(this.c2).redSub(this.a),a=n.redMul(o.redInvm());if(0===a.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");return s.fromRed().isOdd()!==t&&(s=s.redNeg()),this.point(s,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),r=e.y.redSqr(),n=t.redMul(this.a).redAdd(r),i=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(r)));return 0===n.cmp(i)},o(l,a.BasePoint),c.prototype.pointFromJSON=function(e){return l.fromJSON(this,e)},c.prototype.point=function(e,t,r,n){return new l(this,e,t,r,n)},l.fromJSON=function(e,t){return new l(e,t[0],t[1],t[2])},l.prototype.inspect=function(){return this.isInfinity()?"":""},l.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},l.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var n=this.curve._mulA(e),i=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),o=n.redAdd(t),a=o.redSub(r),s=n.redSub(t),c=i.redMul(a),l=o.redMul(s),u=i.redMul(s),d=a.redMul(o);return this.curve.point(c,l,d,u)},l.prototype._projDbl=function(){var e,t,r,n,i,o,a=this.x.redAdd(this.y).redSqr(),s=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var l=(n=this.curve._mulA(s)).redAdd(c);this.zOne?(e=a.redSub(s).redSub(c).redMul(l.redSub(this.curve.two)),t=l.redMul(n.redSub(c)),r=l.redSqr().redSub(l).redSub(l)):(i=this.z.redSqr(),o=l.redSub(i).redISub(i),e=a.redSub(s).redISub(c).redMul(o),t=l.redMul(n.redSub(c)),r=l.redMul(o))}else n=s.redAdd(c),i=this.curve._mulC(this.z).redSqr(),o=n.redSub(i).redSub(i),e=this.curve._mulC(a.redISub(n)).redMul(o),t=this.curve._mulC(n).redMul(s.redISub(c)),r=n.redMul(o);return this.curve.point(e,t,r)},l.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},l.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),r=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),n=this.t.redMul(this.curve.dd).redMul(e.t),i=this.z.redMul(e.z.redAdd(e.z)),o=r.redSub(t),a=i.redSub(n),s=i.redAdd(n),c=r.redAdd(t),l=o.redMul(a),u=s.redMul(c),d=o.redMul(c),h=a.redMul(s);return this.curve.point(l,u,h,d)},l.prototype._projAdd=function(e){var t,r,n=this.z.redMul(e.z),i=n.redSqr(),o=this.x.redMul(e.x),a=this.y.redMul(e.y),s=this.curve.d.redMul(o).redMul(a),c=i.redSub(s),l=i.redAdd(s),u=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(o).redISub(a),d=n.redMul(c).redMul(u);return this.curve.twisted?(t=n.redMul(l).redMul(a.redSub(this.curve._mulA(o))),r=c.redMul(l)):(t=n.redMul(l).redMul(a.redSub(o)),r=this.curve._mulC(c).redMul(l)),this.curve.point(d,t,r)},l.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},l.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},l.prototype.mulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!1)},l.prototype.jmulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!0)},l.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},l.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},l.prototype.getX=function(){return this.normalize(),this.x.fromRed()},l.prototype.getY=function(){return this.normalize(),this.y.fromRed()},l.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},l.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var r=e.clone(),n=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(n),0===this.x.cmp(t))return!0}},l.prototype.toP=l.prototype.normalize,l.prototype.mixedAdd=l.prototype.add},9057:(e,t,r)=>{"use strict";var n=t;n.base=r(1399),n.short=r(8289),n.mont=r(8507),n.edwards=r(3961)},8507:(e,t,r)=>{"use strict";var n=r(292),i=r(637),o=r(1399),a=r(5649);function s(e){o.call(this,"mont",e),this.a=new n(e.a,16).toRed(this.red),this.b=new n(e.b,16).toRed(this.red),this.i4=new n(4).toRed(this.red).redInvm(),this.two=new n(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,r){o.BasePoint.call(this,e,"projective"),null===t&&null===r?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new n(t,16),this.z=new n(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}i(s,o),e.exports=s,s.prototype.validate=function(e){var t=e.normalize().x,r=t.redSqr(),n=r.redMul(t).redAdd(r.redMul(this.a)).redAdd(t);return 0===n.redSqrt().redSqr().cmp(n)},i(c,o.BasePoint),s.prototype.decodePoint=function(e,t){return this.point(a.toArray(e,t),1)},s.prototype.point=function(e,t){return new c(this,e,t)},s.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),r=e.redSub(t),n=e.redMul(t),i=r.redMul(t.redAdd(this.curve.a24.redMul(r)));return this.curve.point(n,i)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var r=this.x.redAdd(this.z),n=this.x.redSub(this.z),i=e.x.redAdd(e.z),o=e.x.redSub(e.z).redMul(r),a=i.redMul(n),s=t.z.redMul(o.redAdd(a).redSqr()),c=t.x.redMul(o.redISub(a).redSqr());return this.curve.point(s,c)},c.prototype.mul=function(e){for(var t=e.clone(),r=this,n=this.curve.point(null,null),i=[];0!==t.cmpn(0);t.iushrn(1))i.push(t.andln(1));for(var o=i.length-1;o>=0;o--)0===i[o]?(r=r.diffAdd(n,this),n=n.dbl()):(n=r.diffAdd(n,this),r=r.dbl());return n},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},8289:(e,t,r)=>{"use strict";var n=r(5649),i=r(292),o=r(637),a=r(1399),s=n.assert;function c(e){a.call(this,"short",e),this.a=new i(e.a,16).toRed(this.red),this.b=new i(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function l(e,t,r,n){a.BasePoint.call(this,e,"affine"),null===t&&null===r?(this.x=null,this.y=null,this.inf=!0):(this.x=new i(t,16),this.y=new i(r,16),n&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function u(e,t,r,n){a.BasePoint.call(this,e,"jacobian"),null===t&&null===r&&null===n?(this.x=this.curve.one,this.y=this.curve.one,this.z=new i(0)):(this.x=new i(t,16),this.y=new i(r,16),this.z=new i(n,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}o(c,a),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,r;if(e.beta)t=new i(e.beta,16).toRed(this.red);else{var n=this._getEndoRoots(this.p);t=(t=n[0].cmp(n[1])<0?n[0]:n[1]).toRed(this.red)}if(e.lambda)r=new i(e.lambda,16);else{var o=this._getEndoRoots(this.n);0===this.g.mul(o[0]).x.cmp(this.g.x.redMul(t))?r=o[0]:(r=o[1],s(0===this.g.mul(r).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:r,basis:e.basis?e.basis.map((function(e){return{a:new i(e.a,16),b:new i(e.b,16)}})):this._getEndoBasis(r)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:i.mont(e),r=new i(2).toRed(t).redInvm(),n=r.redNeg(),o=new i(3).toRed(t).redNeg().redSqrt().redMul(r);return[n.redAdd(o).fromRed(),n.redSub(o).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,r,n,o,a,s,c,l,u,d=this.n.ushrn(Math.floor(this.n.bitLength()/2)),h=e,f=this.n.clone(),p=new i(1),m=new i(0),g=new i(0),v=new i(1),y=0;0!==h.cmpn(0);){var b=f.div(h);l=f.sub(b.mul(h)),u=g.sub(b.mul(p));var w=v.sub(b.mul(m));if(!n&&l.cmp(d)<0)t=c.neg(),r=p,n=l.neg(),o=u;else if(n&&2===++y)break;c=l,f=h,h=l,g=p,p=u,v=m,m=w}a=l.neg(),s=u;var x=n.sqr().add(o.sqr());return a.sqr().add(s.sqr()).cmp(x)>=0&&(a=t,s=r),n.negative&&(n=n.neg(),o=o.neg()),a.negative&&(a=a.neg(),s=s.neg()),[{a:n,b:o},{a:a,b:s}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],n=t[1],i=n.b.mul(e).divRound(this.n),o=r.b.neg().mul(e).divRound(this.n),a=i.mul(r.a),s=o.mul(n.a),c=i.mul(r.b),l=o.mul(n.b);return{k1:e.sub(a).sub(s),k2:c.add(l).neg()}},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(0!==n.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var o=n.fromRed().isOdd();return(t&&!o||!t&&o)&&(n=n.redNeg()),this.point(e,n)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,n=this.a.redMul(t),i=t.redSqr().redMul(t).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(i).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,o=0;o":""},l.prototype.isInfinity=function(){return this.inf},l.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),n=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},l.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),n=e.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(n),o=i.redSqr().redISub(this.x.redAdd(this.x)),a=i.redMul(this.x.redSub(o)).redISub(this.y);return this.curve.point(o,a)},l.prototype.getX=function(){return this.x.fromRed()},l.prototype.getY=function(){return this.y.fromRed()},l.prototype.mul=function(e){return e=new i(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},l.prototype.mulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)},l.prototype.jmulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)},l.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},l.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,n=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return t},l.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},o(u,a.BasePoint),c.prototype.jpoint=function(e,t,r){return new u(this,e,t,r)},u.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),n=this.y.redMul(t).redMul(e);return this.curve.point(r,n)},u.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},u.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(t),i=e.x.redMul(r),o=this.y.redMul(t.redMul(e.z)),a=e.y.redMul(r.redMul(this.z)),s=n.redSub(i),c=o.redSub(a);if(0===s.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var l=s.redSqr(),u=l.redMul(s),d=n.redMul(l),h=c.redSqr().redIAdd(u).redISub(d).redISub(d),f=c.redMul(d.redISub(h)).redISub(o.redMul(u)),p=this.z.redMul(e.z).redMul(s);return this.curve.jpoint(h,f,p)},u.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,n=e.x.redMul(t),i=this.y,o=e.y.redMul(t).redMul(this.z),a=r.redSub(n),s=i.redSub(o);if(0===a.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=a.redSqr(),l=c.redMul(a),u=r.redMul(c),d=s.redSqr().redIAdd(l).redISub(u).redISub(u),h=s.redMul(u.redISub(d)).redISub(i.redMul(l)),f=this.z.redMul(a);return this.curve.jpoint(d,h,f)},u.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var r=this;for(t=0;t=0)return!1;if(r.redIAdd(i),0===this.x.cmp(r))return!0}},u.prototype.inspect=function(){return this.isInfinity()?"":""},u.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},4011:(e,t,r)=>{"use strict";var n,i=t,o=r(7992),a=r(9057),s=r(5649).assert;function c(e){"short"===e.type?this.curve=new a.short(e):"edwards"===e.type?this.curve=new a.edwards(e):this.curve=new a.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function l(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var r=new c(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:r}),r}})}i.PresetCurve=c,l("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),l("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),l("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),l("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),l("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),l("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),l("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{n=r(240)}catch(u){n=void 0}l("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",n]})},8563:(e,t,r)=>{"use strict";var n=r(292),i=r(8375),o=r(5649),a=r(4011),s=r(5094),c=o.assert,l=r(5755),u=r(1543);function d(e){if(!(this instanceof d))return new d(e);"string"===typeof e&&(c(Object.prototype.hasOwnProperty.call(a,e),"Unknown curve "+e),e=a[e]),e instanceof a.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}e.exports=d,d.prototype.keyPair=function(e){return new l(this,e)},d.prototype.keyFromPrivate=function(e,t){return l.fromPrivate(this,e,t)},d.prototype.keyFromPublic=function(e,t){return l.fromPublic(this,e,t)},d.prototype.genKeyPair=function(e){e||(e={});for(var t=new i({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||s(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),o=this.n.sub(new n(2));;){var a=new n(t.generate(r));if(!(a.cmp(o)>0))return a.iaddn(1),this.keyFromPrivate(a)}},d.prototype._truncateToN=function(e,t){var r=8*e.byteLength()-this.n.bitLength();return r>0&&(e=e.ushrn(r)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,r,o){"object"===typeof r&&(o=r,r=null),o||(o={}),t=this.keyFromPrivate(t,r),e=this._truncateToN(new n(e,16));for(var a=this.n.byteLength(),s=t.getPrivate().toArray("be",a),c=e.toArray("be",a),l=new i({hash:this.hash,entropy:s,nonce:c,pers:o.pers,persEnc:o.persEnc||"utf8"}),d=this.n.sub(new n(1)),h=0;;h++){var f=o.k?o.k(h):new n(l.generate(this.n.byteLength()));if(!((f=this._truncateToN(f,!0)).cmpn(1)<=0||f.cmp(d)>=0)){var p=this.g.mul(f);if(!p.isInfinity()){var m=p.getX(),g=m.umod(this.n);if(0!==g.cmpn(0)){var v=f.invm(this.n).mul(g.mul(t.getPrivate()).iadd(e));if(0!==(v=v.umod(this.n)).cmpn(0)){var y=(p.getY().isOdd()?1:0)|(0!==m.cmp(g)?2:0);return o.canonical&&v.cmp(this.nh)>0&&(v=this.n.sub(v),y^=1),new u({r:g,s:v,recoveryParam:y})}}}}}},d.prototype.verify=function(e,t,r,i){e=this._truncateToN(new n(e,16)),r=this.keyFromPublic(r,i);var o=(t=new u(t,"hex")).r,a=t.s;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;var s,c=a.invm(this.n),l=c.mul(e).umod(this.n),d=c.mul(o).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(l,r.getPublic(),d)).isInfinity()&&s.eqXToP(o):!(s=this.g.mulAdd(l,r.getPublic(),d)).isInfinity()&&0===s.getX().umod(this.n).cmp(o)},d.prototype.recoverPubKey=function(e,t,r,i){c((3&r)===r,"The recovery param is more than two bits"),t=new u(t,i);var o=this.n,a=new n(e),s=t.r,l=t.s,d=1&r,h=r>>1;if(s.cmp(this.curve.p.umod(this.curve.n))>=0&&h)throw new Error("Unable to find sencond key candinate");s=h?this.curve.pointFromX(s.add(this.curve.n),d):this.curve.pointFromX(s,d);var f=t.r.invm(o),p=o.sub(a).mul(f).umod(o),m=l.mul(f).umod(o);return this.g.mulAdd(p,s,m)},d.prototype.getKeyRecoveryParam=function(e,t,r,n){if(null!==(t=new u(t,n)).recoveryParam)return t.recoveryParam;for(var i=0;i<4;i++){var o;try{o=this.recoverPubKey(e,t,i)}catch(e){continue}if(o.eq(r))return i}throw new Error("Unable to find valid recovery factor")}},5755:(e,t,r)=>{"use strict";var n=r(292),i=r(5649).assert;function o(e,t){this.ec=e,this.priv=null,this.pub=null,t.priv&&this._importPrivate(t.priv,t.privEnc),t.pub&&this._importPublic(t.pub,t.pubEnc)}e.exports=o,o.fromPublic=function(e,t,r){return t instanceof o?t:new o(e,{pub:t,pubEnc:r})},o.fromPrivate=function(e,t,r){return t instanceof o?t:new o(e,{priv:t,privEnc:r})},o.prototype.validate=function(){var e=this.getPublic();return e.isInfinity()?{result:!1,reason:"Invalid public key"}:e.validate()?e.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},o.prototype.getPublic=function(e,t){return"string"===typeof e&&(t=e,e=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),t?this.pub.encode(t,e):this.pub},o.prototype.getPrivate=function(e){return"hex"===e?this.priv.toString(16,2):this.priv},o.prototype._importPrivate=function(e,t){this.priv=new n(e,t||16),this.priv=this.priv.umod(this.ec.curve.n)},o.prototype._importPublic=function(e,t){if(e.x||e.y)return"mont"===this.ec.curve.type?i(e.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||i(e.x&&e.y,"Need both x and y coordinate"),void(this.pub=this.ec.curve.point(e.x,e.y));this.pub=this.ec.curve.decodePoint(e,t)},o.prototype.derive=function(e){return e.validate()||i(e.validate(),"public point not validated"),e.mul(this.priv).getX()},o.prototype.sign=function(e,t,r){return this.ec.sign(e,this,t,r)},o.prototype.verify=function(e,t){return this.ec.verify(e,t,this)},o.prototype.inspect=function(){return""}},1543:(e,t,r)=>{"use strict";var n=r(292),i=r(5649),o=i.assert;function a(e,t){if(e instanceof a)return e;this._importDER(e,t)||(o(e.r&&e.s,"Signature without r or s"),this.r=new n(e.r,16),this.s=new n(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function s(){this.place=0}function c(e,t){var r=e[t.place++];if(!(128&r))return r;var n=15&r;if(0===n||n>4)return!1;for(var i=0,o=0,a=t.place;o>>=0;return!(i<=127)&&(t.place=a,i)}function l(e){for(var t=0,r=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}e.exports=a,a.prototype._importDER=function(e,t){e=i.toArray(e,t);var r=new s;if(48!==e[r.place++])return!1;var o=c(e,r);if(!1===o)return!1;if(o+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var a=c(e,r);if(!1===a)return!1;var l=e.slice(r.place,a+r.place);if(r.place+=a,2!==e[r.place++])return!1;var u=c(e,r);if(!1===u)return!1;if(e.length!==u+r.place)return!1;var d=e.slice(r.place,u+r.place);if(0===l[0]){if(!(128&l[1]))return!1;l=l.slice(1)}if(0===d[0]){if(!(128&d[1]))return!1;d=d.slice(1)}return this.r=new n(l),this.s=new n(d),this.recoveryParam=null,!0},a.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=l(t),r=l(r);!r[0]&&!(128&r[1]);)r=r.slice(1);var n=[2];u(n,t.length),(n=n.concat(t)).push(2),u(n,r.length);var o=n.concat(r),a=[48];return u(a,o.length),a=a.concat(o),i.encode(a,e)}},5494:(e,t,r)=>{"use strict";var n=r(7992),i=r(4011),o=r(5649),a=o.assert,s=o.parseBytes,c=r(2260),l=r(4311);function u(e){if(a("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof u))return new u(e);e=i[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=n.sha512}e.exports=u,u.prototype.sign=function(e,t){e=s(e);var r=this.keyFromSecret(t),n=this.hashInt(r.messagePrefix(),e),i=this.g.mul(n),o=this.encodePoint(i),a=this.hashInt(o,r.pubBytes(),e).mul(r.priv()),c=n.add(a).umod(this.curve.n);return this.makeSignature({R:i,S:c,Rencoded:o})},u.prototype.verify=function(e,t,r){e=s(e),t=this.makeSignature(t);var n=this.keyFromPublic(r),i=this.hashInt(t.Rencoded(),n.pubBytes(),e),o=this.g.mul(t.S());return t.R().add(n.pub().mul(i)).eq(o)},u.prototype.hashInt=function(){for(var e=this.hash(),t=0;t{"use strict";var n=r(5649),i=n.assert,o=n.parseBytes,a=n.cachedProperty;function s(e,t){this.eddsa=e,this._secret=o(t.secret),e.isPoint(t.pub)?this._pub=t.pub:this._pubBytes=o(t.pub)}s.fromPublic=function(e,t){return t instanceof s?t:new s(e,{pub:t})},s.fromSecret=function(e,t){return t instanceof s?t:new s(e,{secret:t})},s.prototype.secret=function(){return this._secret},a(s,"pubBytes",(function(){return this.eddsa.encodePoint(this.pub())})),a(s,"pub",(function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())})),a(s,"privBytes",(function(){var e=this.eddsa,t=this.hash(),r=e.encodingLength-1,n=t.slice(0,e.encodingLength);return n[0]&=248,n[r]&=127,n[r]|=64,n})),a(s,"priv",(function(){return this.eddsa.decodeInt(this.privBytes())})),a(s,"hash",(function(){return this.eddsa.hash().update(this.secret()).digest()})),a(s,"messagePrefix",(function(){return this.hash().slice(this.eddsa.encodingLength)})),s.prototype.sign=function(e){return i(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)},s.prototype.verify=function(e,t){return this.eddsa.verify(e,t,this)},s.prototype.getSecret=function(e){return i(this._secret,"KeyPair is public only"),n.encode(this.secret(),e)},s.prototype.getPublic=function(e){return n.encode(this.pubBytes(),e)},e.exports=s},4311:(e,t,r)=>{"use strict";var n=r(292),i=r(5649),o=i.assert,a=i.cachedProperty,s=i.parseBytes;function c(e,t){this.eddsa=e,"object"!==typeof t&&(t=s(t)),Array.isArray(t)&&(t={R:t.slice(0,e.encodingLength),S:t.slice(e.encodingLength)}),o(t.R&&t.S,"Signature without R or S"),e.isPoint(t.R)&&(this._R=t.R),t.S instanceof n&&(this._S=t.S),this._Rencoded=Array.isArray(t.R)?t.R:t.Rencoded,this._Sencoded=Array.isArray(t.S)?t.S:t.Sencoded}a(c,"S",(function(){return this.eddsa.decodeInt(this.Sencoded())})),a(c,"R",(function(){return this.eddsa.decodePoint(this.Rencoded())})),a(c,"Rencoded",(function(){return this.eddsa.encodePoint(this.R())})),a(c,"Sencoded",(function(){return this.eddsa.encodeInt(this.S())})),c.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},c.prototype.toHex=function(){return i.encode(this.toBytes(),"hex").toUpperCase()},e.exports=c},240:e=>{e.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}},5649:(e,t,r)=>{"use strict";var n=t,i=r(292),o=r(490),a=r(5659);n.assert=o,n.toArray=a.toArray,n.zero2=a.zero2,n.toHex=a.toHex,n.encode=a.encode,n.getNAF=function(e,t,r){var n=new Array(Math.max(e.bitLength(),r)+1);n.fill(0);for(var i=1<(i>>1)-1?(i>>1)-c:c,o.isubn(s)):s=0,n[a]=s,o.iushrn(1)}return n},n.getJSF=function(e,t){var r=[[],[]];e=e.clone(),t=t.clone();for(var n,i=0,o=0;e.cmpn(-i)>0||t.cmpn(-o)>0;){var a,s,c=e.andln(3)+i&3,l=t.andln(3)+o&3;3===c&&(c=-1),3===l&&(l=-1),a=0===(1&c)?0:3!==(n=e.andln(7)+i&7)&&5!==n||2!==l?c:-c,r[0].push(a),s=0===(1&l)?0:3!==(n=t.andln(7)+o&7)&&5!==n||2!==c?l:-l,r[1].push(s),2*i===a+1&&(i=1-i),2*o===s+1&&(o=1-o),e.iushrn(1),t.iushrn(1)}return r},n.cachedProperty=function(e,t,r){var n="_"+t;e.prototype[t]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},n.parseBytes=function(e){return"string"===typeof e?n.toArray(e,"hex"):e},n.intFromLE=function(e){return new i(e,"hex","le")}},7581:e=>{"use strict";function t(e,t){for(const r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}e.exports=function(e,r,n){if(!e||"string"===typeof e)throw new TypeError("Please pass an Error to err-code");n||(n={}),"object"===typeof r&&(n=r,r=void 0),null!=r&&(n.code=r);try{return t(e,n)}catch(i){n.message=e.message,n.stack=e.stack;const r=function(){};return r.prototype=Object.create(Object.getPrototypeOf(e)),t(new r,n)}}},1042:(e,t,r)=>{"use strict";t.wn=void 0;const n=r(3974),i=r(1186);(0,i.wrapHash)(n.keccak_224),t.wn=(()=>{const e=(0,i.wrapHash)(n.keccak_256);return e.create=n.keccak_256.create,e})(),(0,i.wrapHash)(n.keccak_384),(0,i.wrapHash)(n.keccak_512)},1186:function(e,t,r){"use strict";e=r.nmd(e);var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.crypto=t.wrapHash=t.equalsBytes=t.hexToBytes=t.bytesToUtf8=t.utf8ToBytes=t.createView=t.concatBytes=t.toHex=t.bytesToHex=t.assertBytes=t.assertBool=void 0;const i=n(r(4103)),o=r(9041),a=i.default.bool;t.assertBool=a;const s=i.default.bytes;t.assertBytes=s;var c=r(9041);Object.defineProperty(t,"bytesToHex",{enumerable:!0,get:function(){return c.bytesToHex}}),Object.defineProperty(t,"toHex",{enumerable:!0,get:function(){return c.bytesToHex}}),Object.defineProperty(t,"concatBytes",{enumerable:!0,get:function(){return c.concatBytes}}),Object.defineProperty(t,"createView",{enumerable:!0,get:function(){return c.createView}}),Object.defineProperty(t,"utf8ToBytes",{enumerable:!0,get:function(){return c.utf8ToBytes}}),t.bytesToUtf8=function(e){if(!(e instanceof Uint8Array))throw new TypeError("bytesToUtf8 expected Uint8Array, got "+typeof e);return(new TextDecoder).decode(e)},t.hexToBytes=function(e){const t=e.startsWith("0x")?e.substring(2):e;return(0,o.hexToBytes)(t)},t.equalsBytes=function(e,t){if(e.length!==t.length)return!1;for(let r=0;r(i.default.bytes(t),e(t))},t.crypto=(()=>{const t="object"===typeof self&&"crypto"in self?self.crypto:void 0,r="function"===typeof e.require&&e.require.bind(e);return{node:r&&!t?r("crypto"):void 0,web:t}})()},4062:e=>{"use strict";var t,r="object"===typeof Reflect?Reflect:null,n=r&&"function"===typeof r.apply?r.apply:function(e,t,r){return Function.prototype.apply.call(e,t,r)};t=r&&"function"===typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var i=Number.isNaN||function(e){return e!==e};function o(){o.init.call(this)}e.exports=o,e.exports.once=function(e,t){return new Promise((function(r,n){function i(r){e.removeListener(t,o),n(r)}function o(){"function"===typeof e.removeListener&&e.removeListener("error",i),r([].slice.call(arguments))}m(e,t,o,{once:!0}),"error"!==t&&function(e,t,r){"function"===typeof e.on&&m(e,"error",t,r)}(e,i,{once:!0})}))},o.EventEmitter=o,o.prototype._events=void 0,o.prototype._eventsCount=0,o.prototype._maxListeners=void 0;var a=10;function s(e){if("function"!==typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function c(e){return void 0===e._maxListeners?o.defaultMaxListeners:e._maxListeners}function l(e,t,r,n){var i,o,a,l;if(s(r),void 0===(o=e._events)?(o=e._events=Object.create(null),e._eventsCount=0):(void 0!==o.newListener&&(e.emit("newListener",t,r.listener?r.listener:r),o=e._events),a=o[t]),void 0===a)a=o[t]=r,++e._eventsCount;else if("function"===typeof a?a=o[t]=n?[r,a]:[a,r]:n?a.unshift(r):a.push(r),(i=c(e))>0&&a.length>i&&!a.warned){a.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=e,u.type=t,u.count=a.length,l=u,console&&console.warn&&console.warn(l)}return e}function u(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=u.bind(n);return i.listener=r,n.wrapFn=i,i}function h(e,t,r){var n=e._events;if(void 0===n)return[];var i=n[t];return void 0===i?[]:"function"===typeof i?r?[i.listener||i]:[i]:r?function(e){for(var t=new Array(e.length),r=0;r0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var c=o[e];if(void 0===c)return!1;if("function"===typeof c)n(c,this,t);else{var l=c.length,u=p(c,l);for(r=0;r=0;o--)if(r[o]===t||r[o].listener===t){a=r[o].listener,i=o;break}if(i<0)return this;0===i?r.shift():function(e,t){for(;t+1=0;n--)this.removeListener(e,t[n]);return this},o.prototype.listeners=function(e){return h(this,e,!0)},o.prototype.rawListeners=function(e){return h(this,e,!1)},o.listenerCount=function(e,t){return"function"===typeof e.listenerCount?e.listenerCount(t):f.call(e,t)},o.prototype.listenerCount=f,o.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},2259:e=>{"use strict";e.exports=function(e,t){t||(t={}),"function"===typeof t&&(t={cmp:t});var r,n="boolean"===typeof t.cycles&&t.cycles,i=t.cmp&&(r=t.cmp,function(e){return function(t,n){var i={key:t,value:e[t]},o={key:n,value:e[n]};return r(i,o)}}),o=[];return function e(t){if(t&&t.toJSON&&"function"===typeof t.toJSON&&(t=t.toJSON()),void 0!==t){if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!==typeof t)return JSON.stringify(t);var r,a;if(Array.isArray(t)){for(a="[",r=0;r{"use strict";var n=r(6293).Buffer,i=r(3859).Transform;function o(e){i.call(this),this._block=n.allocUnsafe(e),this._blockSize=e,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}r(637)(o,i),o.prototype._transform=function(e,t,r){var n=null;try{this.update(e,t)}catch(i){n=i}r(n)},o.prototype._flush=function(e){var t=null;try{this.push(this.digest())}catch(r){t=r}e(t)},o.prototype.update=function(e,t){if(function(e,t){if(!n.isBuffer(e)&&"string"!==typeof e)throw new TypeError(t+" must be a string or a buffer")}(e,"Data"),this._finalized)throw new Error("Digest already called");n.isBuffer(e)||(e=n.from(e,t));for(var r=this._block,i=0;this._blockOffset+e.length-i>=this._blockSize;){for(var o=this._blockOffset;o0;++a)this._length[a]+=s,(s=this._length[a]/4294967296|0)>0&&(this._length[a]-=4294967296*s);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();void 0!==e&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return t},o.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=o},7992:(e,t,r)=>{var n=t;n.utils=r(7841),n.common=r(2012),n.sha=r(7885),n.ripemd=r(56),n.hmac=r(57),n.sha1=n.sha.sha1,n.sha256=n.sha.sha256,n.sha224=n.sha.sha224,n.sha384=n.sha.sha384,n.sha512=n.sha.sha512,n.ripemd160=n.ripemd.ripemd160},2012:(e,t,r)=>{"use strict";var n=r(7841),i=r(490);function o(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}t.BlockHash=o,o.prototype.update=function(e,t){if(e=n.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=n.join32(e,0,e.length-r,this.endian);for(var i=0;i>>24&255,n[i++]=e>>>16&255,n[i++]=e>>>8&255,n[i++]=255&e}else for(n[i++]=255&e,n[i++]=e>>>8&255,n[i++]=e>>>16&255,n[i++]=e>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,o=8;o{"use strict";var n=r(7841),i=r(490);function o(e,t,r){if(!(this instanceof o))return new o(e,t,r);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(n.toArray(t,r))}e.exports=o,o.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),i(e.length<=this.blockSize);for(var t=e.length;t{"use strict";var n=r(7841),i=r(2012),o=n.rotl32,a=n.sum32,s=n.sum32_3,c=n.sum32_4,l=i.BlockHash;function u(){if(!(this instanceof u))return new u;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function d(e,t,r,n){return e<=15?t^r^n:e<=31?t&r|~t&n:e<=47?(t|~r)^n:e<=63?t&n|r&~n:t^(r|~n)}function h(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function f(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}n.inherits(u,l),t.ripemd160=u,u.blockSize=512,u.outSize=160,u.hmacStrength=192,u.padLength=64,u.prototype._update=function(e,t){for(var r=this.h[0],n=this.h[1],i=this.h[2],l=this.h[3],u=this.h[4],y=r,b=n,w=i,x=l,_=u,S=0;S<80;S++){var k=a(o(c(r,d(S,n,i,l),e[p[S]+t],h(S)),g[S]),u);r=u,u=l,l=o(i,10),i=n,n=k,k=a(o(c(y,d(79-S,b,w,x),e[m[S]+t],f(S)),v[S]),_),y=_,_=x,x=o(w,10),w=b,b=k}k=s(this.h[1],i,x),this.h[1]=s(this.h[2],l,_),this.h[2]=s(this.h[3],u,y),this.h[3]=s(this.h[4],r,b),this.h[4]=s(this.h[0],n,w),this.h[0]=k},u.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h,"little"):n.split32(this.h,"little")};var p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],m=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],g=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],v=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},7885:(e,t,r)=>{"use strict";t.sha1=r(9046),t.sha224=r(5962),t.sha256=r(7353),t.sha384=r(8151),t.sha512=r(6814)},9046:(e,t,r)=>{"use strict";var n=r(7841),i=r(2012),o=r(2015),a=n.rotl32,s=n.sum32,c=n.sum32_5,l=o.ft_1,u=i.BlockHash,d=[1518500249,1859775393,2400959708,3395469782];function h(){if(!(this instanceof h))return new h;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}n.inherits(h,u),e.exports=h,h.blockSize=512,h.outSize=160,h.hmacStrength=80,h.padLength=64,h.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(7841),i=r(7353);function o(){if(!(this instanceof o))return new o;i.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}n.inherits(o,i),e.exports=o,o.blockSize=512,o.outSize=224,o.hmacStrength=192,o.padLength=64,o.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,7),"big"):n.split32(this.h.slice(0,7),"big")}},7353:(e,t,r)=>{"use strict";var n=r(7841),i=r(2012),o=r(2015),a=r(490),s=n.sum32,c=n.sum32_4,l=n.sum32_5,u=o.ch32,d=o.maj32,h=o.s0_256,f=o.s1_256,p=o.g0_256,m=o.g1_256,g=i.BlockHash,v=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function y(){if(!(this instanceof y))return new y;g.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=v,this.W=new Array(64)}n.inherits(y,g),e.exports=y,y.blockSize=512,y.outSize=256,y.hmacStrength=192,y.padLength=64,y.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(7841),i=r(6814);function o(){if(!(this instanceof o))return new o;i.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}n.inherits(o,i),e.exports=o,o.blockSize=1024,o.outSize=384,o.hmacStrength=192,o.padLength=128,o.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,12),"big"):n.split32(this.h.slice(0,12),"big")}},6814:(e,t,r)=>{"use strict";var n=r(7841),i=r(2012),o=r(490),a=n.rotr64_hi,s=n.rotr64_lo,c=n.shr64_hi,l=n.shr64_lo,u=n.sum64,d=n.sum64_hi,h=n.sum64_lo,f=n.sum64_4_hi,p=n.sum64_4_lo,m=n.sum64_5_hi,g=n.sum64_5_lo,v=i.BlockHash,y=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function b(){if(!(this instanceof b))return new b;v.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=y,this.W=new Array(160)}function w(e,t,r,n,i){var o=e&r^~e&i;return o<0&&(o+=4294967296),o}function x(e,t,r,n,i,o){var a=t&n^~t&o;return a<0&&(a+=4294967296),a}function _(e,t,r,n,i){var o=e&r^e&i^r&i;return o<0&&(o+=4294967296),o}function S(e,t,r,n,i,o){var a=t&n^t&o^n&o;return a<0&&(a+=4294967296),a}function k(e,t){var r=a(e,t,28)^a(t,e,2)^a(t,e,7);return r<0&&(r+=4294967296),r}function E(e,t){var r=s(e,t,28)^s(t,e,2)^s(t,e,7);return r<0&&(r+=4294967296),r}function A(e,t){var r=a(e,t,14)^a(e,t,18)^a(t,e,9);return r<0&&(r+=4294967296),r}function P(e,t){var r=s(e,t,14)^s(e,t,18)^s(t,e,9);return r<0&&(r+=4294967296),r}function O(e,t){var r=a(e,t,1)^a(e,t,8)^c(e,t,7);return r<0&&(r+=4294967296),r}function T(e,t){var r=s(e,t,1)^s(e,t,8)^l(e,t,7);return r<0&&(r+=4294967296),r}function C(e,t){var r=a(e,t,19)^a(t,e,29)^c(e,t,6);return r<0&&(r+=4294967296),r}function j(e,t){var r=s(e,t,19)^s(t,e,29)^l(e,t,6);return r<0&&(r+=4294967296),r}n.inherits(b,v),e.exports=b,b.blockSize=1024,b.outSize=512,b.hmacStrength=192,b.padLength=128,b.prototype._prepareBlock=function(e,t){for(var r=this.W,n=0;n<32;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(7841).rotr32;function i(e,t,r){return e&t^~e&r}function o(e,t,r){return e&t^e&r^t&r}function a(e,t,r){return e^t^r}t.ft_1=function(e,t,r,n){return 0===e?i(t,r,n):1===e||3===e?a(t,r,n):2===e?o(t,r,n):void 0},t.ch32=i,t.maj32=o,t.p32=a,t.s0_256=function(e){return n(e,2)^n(e,13)^n(e,22)},t.s1_256=function(e){return n(e,6)^n(e,11)^n(e,25)},t.g0_256=function(e){return n(e,7)^n(e,18)^e>>>3},t.g1_256=function(e){return n(e,17)^n(e,19)^e>>>10}},7841:(e,t,r)=>{"use strict";var n=r(490),i=r(637);function o(e,t){return 55296===(64512&e.charCodeAt(t))&&(!(t<0||t+1>=e.length)&&56320===(64512&e.charCodeAt(t+1)))}function a(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function s(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=i,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"===typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!==0&&(e="0"+e),i=0;i>6|192,r[n++]=63&a|128):o(e,i)?(a=65536+((1023&a)<<10)+(1023&e.charCodeAt(++i)),r[n++]=a>>18|240,r[n++]=a>>12&63|128,r[n++]=a>>6&63|128,r[n++]=63&a|128):(r[n++]=a>>12|224,r[n++]=a>>6&63|128,r[n++]=63&a|128)}else for(i=0;i>>0}return a},t.split32=function(e,t){for(var r=new Array(4*e.length),n=0,i=0;n>>24,r[i+1]=o>>>16&255,r[i+2]=o>>>8&255,r[i+3]=255&o):(r[i+3]=o>>>24,r[i+2]=o>>>16&255,r[i+1]=o>>>8&255,r[i]=255&o)}return r},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,r){return e+t+r>>>0},t.sum32_4=function(e,t,r,n){return e+t+r+n>>>0},t.sum32_5=function(e,t,r,n,i){return e+t+r+n+i>>>0},t.sum64=function(e,t,r,n){var i=e[t],o=n+e[t+1]>>>0,a=(o>>0,e[t+1]=o},t.sum64_hi=function(e,t,r,n){return(t+n>>>0>>0},t.sum64_lo=function(e,t,r,n){return t+n>>>0},t.sum64_4_hi=function(e,t,r,n,i,o,a,s){var c=0,l=t;return c+=(l=l+n>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,r,n,i,o,a,s){return t+n+o+s>>>0},t.sum64_5_hi=function(e,t,r,n,i,o,a,s,c,l){var u=0,d=t;return u+=(d=d+n>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,r,n,i,o,a,s,c,l){return t+n+o+s+l>>>0},t.rotr64_hi=function(e,t,r){return(t<<32-r|e>>>r)>>>0},t.rotr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0},t.shr64_hi=function(e,t,r){return e>>>r},t.shr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0}},8375:(e,t,r)=>{"use strict";var n=r(7992),i=r(5659),o=r(490);function a(e){if(!(this instanceof a))return new a(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=i.toArray(e.entropy,e.entropyEnc||"hex"),r=i.toArray(e.nonce,e.nonceEnc||"hex"),n=i.toArray(e.pers,e.persEnc||"hex");o(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,n)}e.exports=a,a.prototype._init=function(e,t,r){var n=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this._reseed=1},a.prototype.generate=function(e,t,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!==typeof t&&(n=r,r=t,t=null),r&&(r=i.toArray(r,n||"hex"),this._update(r));for(var o=[];o.length{"use strict";var n=r(5235),i={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},a={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function c(e){return n.isMemo(e)?a:s[e.$$typeof]||i}s[n.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[n.Memo]=a;var l=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,h=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,p=Object.prototype;e.exports=function e(t,r,n){if("string"!==typeof r){if(p){var i=f(r);i&&i!==p&&e(t,i,n)}var a=u(r);d&&(a=a.concat(d(r)));for(var s=c(t),m=c(r),g=0;g{"use strict";var r="function"===typeof Symbol&&Symbol.for,n=r?Symbol.for("react.element"):60103,i=r?Symbol.for("react.portal"):60106,o=r?Symbol.for("react.fragment"):60107,a=r?Symbol.for("react.strict_mode"):60108,s=r?Symbol.for("react.profiler"):60114,c=r?Symbol.for("react.provider"):60109,l=r?Symbol.for("react.context"):60110,u=r?Symbol.for("react.async_mode"):60111,d=r?Symbol.for("react.concurrent_mode"):60111,h=r?Symbol.for("react.forward_ref"):60112,f=r?Symbol.for("react.suspense"):60113,p=r?Symbol.for("react.suspense_list"):60120,m=r?Symbol.for("react.memo"):60115,g=r?Symbol.for("react.lazy"):60116,v=r?Symbol.for("react.block"):60121,y=r?Symbol.for("react.fundamental"):60117,b=r?Symbol.for("react.responder"):60118,w=r?Symbol.for("react.scope"):60119;function x(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type){case u:case d:case o:case s:case a:case f:return e;default:switch(e=e&&e.$$typeof){case l:case h:case g:case m:case c:return e;default:return t}}case i:return t}}}function _(e){return x(e)===d}t.AsyncMode=u,t.ConcurrentMode=d,t.ContextConsumer=l,t.ContextProvider=c,t.Element=n,t.ForwardRef=h,t.Fragment=o,t.Lazy=g,t.Memo=m,t.Portal=i,t.Profiler=s,t.StrictMode=a,t.Suspense=f,t.isAsyncMode=function(e){return _(e)||x(e)===u},t.isConcurrentMode=_,t.isContextConsumer=function(e){return x(e)===l},t.isContextProvider=function(e){return x(e)===c},t.isElement=function(e){return"object"===typeof e&&null!==e&&e.$$typeof===n},t.isForwardRef=function(e){return x(e)===h},t.isFragment=function(e){return x(e)===o},t.isLazy=function(e){return x(e)===g},t.isMemo=function(e){return x(e)===m},t.isPortal=function(e){return x(e)===i},t.isProfiler=function(e){return x(e)===s},t.isStrictMode=function(e){return x(e)===a},t.isSuspense=function(e){return x(e)===f},t.isValidElementType=function(e){return"string"===typeof e||"function"===typeof e||e===o||e===d||e===s||e===a||e===f||e===p||"object"===typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===m||e.$$typeof===c||e.$$typeof===l||e.$$typeof===h||e.$$typeof===y||e.$$typeof===b||e.$$typeof===w||e.$$typeof===v)},t.typeOf=x},5235:(e,t,r)=>{"use strict";e.exports=r(6261)},3299:(e,t)=>{t.read=function(e,t,r,n,i){var o,a,s=8*i-n-1,c=(1<>1,u=-7,d=r?i-1:0,h=r?-1:1,f=e[t+d];for(d+=h,o=f&(1<<-u)-1,f>>=-u,u+=s;u>0;o=256*o+e[t+d],d+=h,u-=8);for(a=o&(1<<-u)-1,o>>=-u,u+=n;u>0;a=256*a+e[t+d],d+=h,u-=8);if(0===o)o=1-l;else{if(o===c)return a?NaN:1/0*(f?-1:1);a+=Math.pow(2,n),o-=l}return(f?-1:1)*a*Math.pow(2,o-n)},t.write=function(e,t,r,n,i,o){var a,s,c,l=8*o-i-1,u=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:o-1,p=n?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=u):(a=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-a))<1&&(a--,c*=2),(t+=a+d>=1?h/c:h*Math.pow(2,1-d))*c>=2&&(a++,c/=2),a+d>=u?(s=0,a=u):a+d>=1?(s=(t*c-1)*Math.pow(2,i),a+=d):(s=t*Math.pow(2,d-1)*Math.pow(2,i),a=0));i>=8;e[r+f]=255&s,f+=p,s/=256,i-=8);for(a=a<0;e[r+f]=255&a,f+=p,a/=256,l-=8);e[r+f-p]|=128*m}},637:e=>{"function"===typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},2311:e=>{function t(e){return!!e.constructor&&"function"===typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}e.exports=function(e){return null!=e&&(t(e)||function(e){return"function"===typeof e.readFloatLE&&"function"===typeof e.slice&&t(e.slice(0,0))}(e)||!!e._isBuffer)}},8981:(e,t,r)=>{"use strict";var n="undefined"!==typeof JSON?JSON:r(5384),i=Array.isArray||function(e){return"[object Array]"==={}.toString.call(e)},o=Object.keys||function(e){var t=Object.prototype.hasOwnProperty||function(){return!0},r=[];for(var n in e)t.call(e,n)&&r.push(n);return r};e.exports=function(e,t){t||(t={}),"function"===typeof t&&(t={cmp:t});var r=t.space||"";"number"===typeof r&&(r=Array(r+1).join(" "));var a,s="boolean"===typeof t.cycles&&t.cycles,c=t.replacer||function(e,t){return t},l=t.cmp&&(a=t.cmp,function(e){return function(t,r){var n={key:t,value:e[t]},i={key:r,value:e[r]};return a(n,i)}}),u=[];return function e(t,a,d,h){var f=r?"\n"+new Array(h+1).join(r):"",p=r?": ":":";if(d&&d.toJSON&&"function"===typeof d.toJSON&&(d=d.toJSON()),void 0!==(d=c.call(t,a,d))){if("object"!==typeof d||null===d)return n.stringify(d);if(i(d)){for(var m=[],g=0;g{"use strict";t.parse=r(1916),t.stringify=r(8920)},1916:e=>{"use strict";var t,r,n,i={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"};function o(e){throw{name:"SyntaxError",message:e,at:t,text:n}}function a(e){return e&&e!==r&&o("Expected '"+e+"' instead of '"+r+"'"),r=n.charAt(t),t+=1,r}function s(){var e,t="";for("-"===r&&(t="-",a("-"));r>="0"&&r<="9";)t+=r,a();if("."===r)for(t+=".";a()&&r>="0"&&r<="9";)t+=r;if("e"===r||"E"===r)for(t+=r,a(),"-"!==r&&"+"!==r||(t+=r,a());r>="0"&&r<="9";)t+=r,a();return e=Number(t),isFinite(e)||o("Bad number"),e}function c(){var e,t,n,s="";if('"'===r)for(;a();){if('"'===r)return a(),s;if("\\"===r)if(a(),"u"===r){for(n=0,t=0;t<4&&(e=parseInt(a(),16),isFinite(e));t+=1)n=16*n+e;s+=String.fromCharCode(n)}else{if("string"!==typeof i[r])break;s+=i[r]}else s+=r}o("Bad string")}function l(){for(;r&&r<=" ";)a()}function u(){switch(l(),r){case"{":return function(){var e,t={};if("{"===r){if(a("{"),l(),"}"===r)return a("}"),t;for(;r;){if(e=c(),l(),a(":"),Object.prototype.hasOwnProperty.call(t,e)&&o('Duplicate key "'+e+'"'),t[e]=u(),l(),"}"===r)return a("}"),t;a(","),l()}}o("Bad object")}();case"[":return function(){var e=[];if("["===r){if(a("["),l(),"]"===r)return a("]"),e;for(;r;){if(e.push(u()),l(),"]"===r)return a("]"),e;a(","),l()}}o("Bad array")}();case'"':return c();case"-":return s();default:return r>="0"&&r<="9"?s():function(){switch(r){case"t":return a("t"),a("r"),a("u"),a("e"),!0;case"f":return a("f"),a("a"),a("l"),a("s"),a("e"),!1;case"n":return a("n"),a("u"),a("l"),a("l"),null;default:o("Unexpected '"+r+"'")}}()}}e.exports=function(e,i){var a;return n=e,t=0,r=" ",a=u(),l(),r&&o("Syntax error"),"function"===typeof i?function e(t,r){var n,o,a=t[r];if(a&&"object"===typeof a)for(n in u)Object.prototype.hasOwnProperty.call(a,n)&&("undefined"===typeof(o=e(a,n))?delete a[n]:a[n]=o);return i.call(t,r,a)}({"":a},""):a}},8920:e=>{"use strict";var t,r,n,i=/[\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,o={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function a(e){return i.lastIndex=0,i.test(e)?'"'+e.replace(i,(function(e){var t=o[e];return"string"===typeof t?t:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)}))+'"':'"'+e+'"'}function s(e,i){var o,c,l,u,d,h=t,f=i[e];switch(f&&"object"===typeof f&&"function"===typeof f.toJSON&&(f=f.toJSON(e)),"function"===typeof n&&(f=n.call(i,e,f)),typeof f){case"string":return a(f);case"number":return isFinite(f)?String(f):"null";case"boolean":case"null":return String(f);case"object":if(!f)return"null";if(t+=r,d=[],"[object Array]"===Object.prototype.toString.apply(f)){for(u=f.length,o=0;o{function t(e,t){e.onload=function(){this.onerror=this.onload=null,t(null,e)},e.onerror=function(){this.onerror=this.onload=null,t(new Error("Failed to load "+this.src),e)}}function r(e,t){e.onreadystatechange=function(){"complete"!=this.readyState&&"loaded"!=this.readyState||(this.onreadystatechange=null,t(null,e))}}e.exports=function(e,n,i){var o=document.head||document.getElementsByTagName("head")[0],a=document.createElement("script");"function"===typeof n&&(i=n,n={}),n=n||{},i=i||function(){},a.type=n.type||"text/javascript",a.charset=n.charset||"utf8",a.async=!("async"in n)||!!n.async,a.src=e,n.attrs&&function(e,t){for(var r in t)e.setAttribute(r,t[r])}(a,n.attrs),n.text&&(a.text=""+n.text),("onload"in a?t:r)(a,i),a.onload||t(a,i),o.appendChild(a)}},9724:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=1,o=2,a=9007199254740991,s="[object Arguments]",c="[object Array]",l="[object AsyncFunction]",u="[object Boolean]",d="[object Date]",h="[object Error]",f="[object Function]",p="[object GeneratorFunction]",m="[object Map]",g="[object Number]",v="[object Null]",y="[object Object]",b="[object Promise]",w="[object Proxy]",x="[object RegExp]",_="[object Set]",S="[object String]",k="[object Symbol]",E="[object Undefined]",A="[object WeakMap]",P="[object ArrayBuffer]",O="[object DataView]",T=/^\[object .+?Constructor\]$/,C=/^(?:0|[1-9]\d*)$/,j={};j["[object Float32Array]"]=j["[object Float64Array]"]=j["[object Int8Array]"]=j["[object Int16Array]"]=j["[object Int32Array]"]=j["[object Uint8Array]"]=j["[object Uint8ClampedArray]"]=j["[object Uint16Array]"]=j["[object Uint32Array]"]=!0,j[s]=j[c]=j[P]=j[u]=j[O]=j[d]=j[h]=j[f]=j[m]=j[g]=j[y]=j[x]=j[_]=j[S]=j[A]=!1;var R="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,I="object"==typeof self&&self&&self.Object===Object&&self,M=R||I||Function("return this")(),L=t&&!t.nodeType&&t,N=L&&e&&!e.nodeType&&e,D=N&&N.exports===L,z=D&&R.process,B=function(){try{return z&&z.binding&&z.binding("util")}catch(e){}}(),U=B&&B.isTypedArray;function F(e,t){for(var r=-1,n=null==e?0:e.length;++rl))return!1;var d=s.get(e);if(d&&s.get(t))return d==t;var h=-1,f=!0,p=r&o?new Ae:void 0;for(s.set(e,t),s.set(t,e);++h-1},ke.prototype.set=function(e,t){var r=this.__data__,n=Te(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Ee.prototype.clear=function(){this.size=0,this.__data__={hash:new Se,map:new(de||ke),string:new Se}},Ee.prototype.delete=function(e){var t=De(this,e).delete(e);return this.size-=t?1:0,t},Ee.prototype.get=function(e){return De(this,e).get(e)},Ee.prototype.has=function(e){return De(this,e).has(e)},Ee.prototype.set=function(e,t){var r=De(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Ae.prototype.add=Ae.prototype.push=function(e){return this.__data__.set(e,n),this},Ae.prototype.has=function(e){return this.__data__.has(e)},Pe.prototype.clear=function(){this.__data__=new ke,this.size=0},Pe.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Pe.prototype.get=function(e){return this.__data__.get(e)},Pe.prototype.has=function(e){return this.__data__.has(e)},Pe.prototype.set=function(e,t){var r=this.__data__;if(r instanceof ke){var n=r.__data__;if(!de||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Ee(n)}return r.set(e,t),this.size=r.size,this};var Be=se?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,n=null==e?0:e.length,i=0,o=[];++r-1&&e%1==0&&e-1&&e%1==0&&e<=a}function Ze(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ye(e){return null!=e&&"object"==typeof e}var Xe=U?function(e){return function(t){return e(t)}}(U):function(e){return Ye(e)&&Ge(e.length)&&!!j[Ce(e)]};function Je(e){return null!=(t=e)&&Ge(t.length)&&!We(t)?Oe(e):Me(e);var t}e.exports=function(e,t){return Re(e,t)}},4579:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=9007199254740991,o="[object Arguments]",a="[object AsyncFunction]",s="[object Function]",c="[object GeneratorFunction]",l="[object Null]",u="[object Object]",d="[object Proxy]",h="[object Undefined]",f=/^\[object .+?Constructor\]$/,p=/^(?:0|[1-9]\d*)$/,m={};m["[object Float32Array]"]=m["[object Float64Array]"]=m["[object Int8Array]"]=m["[object Int16Array]"]=m["[object Int32Array]"]=m["[object Uint8Array]"]=m["[object Uint8ClampedArray]"]=m["[object Uint16Array]"]=m["[object Uint32Array]"]=!0,m[o]=m["[object Array]"]=m["[object ArrayBuffer]"]=m["[object Boolean]"]=m["[object DataView]"]=m["[object Date]"]=m["[object Error]"]=m[s]=m["[object Map]"]=m["[object Number]"]=m[u]=m["[object RegExp]"]=m["[object Set]"]=m["[object String]"]=m["[object WeakMap]"]=!1;var g="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,v="object"==typeof self&&self&&self.Object===Object&&self,y=g||v||Function("return this")(),b=t&&!t.nodeType&&t,w=b&&e&&!e.nodeType&&e,x=w&&w.exports===b,_=x&&g.process,S=function(){try{var e=w&&w.require&&w.require("util").types;return e||_&&_.binding&&_.binding("util")}catch(t){}}(),k=S&&S.isTypedArray;var E,A,P=Array.prototype,O=Function.prototype,T=Object.prototype,C=y["__core-js_shared__"],j=O.toString,R=T.hasOwnProperty,I=function(){var e=/[^.]+$/.exec(C&&C.keys&&C.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),M=T.toString,L=j.call(Object),N=RegExp("^"+j.call(R).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),D=x?y.Buffer:void 0,z=y.Symbol,B=y.Uint8Array,U=D?D.allocUnsafe:void 0,F=(E=Object.getPrototypeOf,A=Object,function(e){return E(A(e))}),$=Object.create,H=T.propertyIsEnumerable,V=P.splice,q=z?z.toStringTag:void 0,K=function(){try{var e=ye(Object,"defineProperty");return e({},"",{}),e}catch(t){}}(),W=D?D.isBuffer:void 0,G=Math.max,Z=Date.now,Y=ye(y,"Map"),X=ye(Object,"create"),J=function(){function e(){}return function(t){if(!Ce(t))return{};if($)return $(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();function Q(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t-1},ee.prototype.set=function(e,t){var r=this.__data__,n=ae(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},te.prototype.clear=function(){this.size=0,this.__data__={hash:new Q,map:new(Y||ee),string:new Q}},te.prototype.delete=function(e){var t=ve(this,e).delete(e);return this.size-=t?1:0,t},te.prototype.get=function(e){return ve(this,e).get(e)},te.prototype.has=function(e){return ve(this,e).has(e)},te.prototype.set=function(e,t){var r=ve(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},re.prototype.clear=function(){this.__data__=new ee,this.size=0},re.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},re.prototype.get=function(e){return this.__data__.get(e)},re.prototype.has=function(e){return this.__data__.has(e)},re.prototype.set=function(e,t){var r=this.__data__;if(r instanceof ee){var n=r.__data__;if(!Y||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new te(n)}return r.set(e,t),this.size=r.size,this};var ce,le=function(e,t,r){for(var n=-1,i=Object(e),o=r(e),a=o.length;a--;){var s=o[ce?a:++n];if(!1===t(i[s],s,i))break}return e};function ue(e){return null==e?void 0===e?h:l:q&&q in Object(e)?function(e){var t=R.call(e,q),r=e[q];try{e[q]=void 0;var n=!0}catch(o){}var i=M.call(e);n&&(t?e[q]=r:delete e[q]);return i}(e):function(e){return M.call(e)}(e)}function de(e){return je(e)&&ue(e)==o}function he(e){return!(!Ce(e)||function(e){return!!I&&I in e}(e))&&(Oe(e)?N:f).test(function(e){if(null!=e){try{return j.call(e)}catch(t){}try{return e+""}catch(t){}}return""}(e))}function fe(e){if(!Ce(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t=we(e),r=[];for(var n in e)("constructor"!=n||!t&&R.call(e,n))&&r.push(n);return r}function pe(e,t,r,n,i){e!==t&&le(t,(function(o,a){if(i||(i=new re),Ce(o))!function(e,t,r,n,i,o,a){var s=xe(e,r),c=xe(t,r),l=a.get(c);if(l)return void ie(e,r,l);var d=o?o(s,c,r+"",e,t,a):void 0,h=void 0===d;if(h){var f=Ee(c),p=!f&&Pe(c),m=!f&&!p&&Re(c);d=c,f||p||m?Ee(s)?d=s:je(g=s)&&Ae(g)?d=function(e,t){var r=-1,n=e.length;t||(t=Array(n));for(;++r-1&&e%1==0&&e0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}(ge);function Se(e,t){return e===t||e!==e&&t!==t}var ke=de(function(){return arguments}())?de:function(e){return je(e)&&R.call(e,"callee")&&!H.call(e,"callee")},Ee=Array.isArray;function Ae(e){return null!=e&&Te(e.length)&&!Oe(e)}var Pe=W||function(){return!1};function Oe(e){if(!Ce(e))return!1;var t=ue(e);return t==s||t==c||t==a||t==d}function Te(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=i}function Ce(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function je(e){return null!=e&&"object"==typeof e}var Re=k?function(e){return function(t){return e(t)}}(k):function(e){return je(e)&&Te(e.length)&&!!m[ue(e)]};function Ie(e){return Ae(e)?ne(e,!0):fe(e)}var Me,Le=(Me=function(e,t,r){pe(e,t,r)},me((function(e,t){var r=-1,n=t.length,i=n>1?t[n-1]:void 0,o=n>2?t[2]:void 0;for(i=Me.length>3&&"function"==typeof i?(n--,i):void 0,o&&function(e,t,r){if(!Ce(r))return!1;var n=typeof t;return!!("number"==n?Ae(r)&&be(t,r.length):"string"==n&&t in r)&&Se(r[t],e)}(t[0],t[1],o)&&(i=n<3?void 0:i,n=1),e=Object(e);++r{e=r.nmd(e);var n="__lodash_hash_undefined__",i=9007199254740991,o="[object Arguments]",a="[object AsyncFunction]",s="[object Function]",c="[object GeneratorFunction]",l="[object Null]",u="[object Object]",d="[object Proxy]",h="[object Undefined]",f=/^\[object .+?Constructor\]$/,p=/^(?:0|[1-9]\d*)$/,m={};m["[object Float32Array]"]=m["[object Float64Array]"]=m["[object Int8Array]"]=m["[object Int16Array]"]=m["[object Int32Array]"]=m["[object Uint8Array]"]=m["[object Uint8ClampedArray]"]=m["[object Uint16Array]"]=m["[object Uint32Array]"]=!0,m[o]=m["[object Array]"]=m["[object ArrayBuffer]"]=m["[object Boolean]"]=m["[object DataView]"]=m["[object Date]"]=m["[object Error]"]=m[s]=m["[object Map]"]=m["[object Number]"]=m[u]=m["[object RegExp]"]=m["[object Set]"]=m["[object String]"]=m["[object WeakMap]"]=!1;var g="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,v="object"==typeof self&&self&&self.Object===Object&&self,y=g||v||Function("return this")(),b=t&&!t.nodeType&&t,w=b&&e&&!e.nodeType&&e,x=w&&w.exports===b,_=x&&g.process,S=function(){try{var e=w&&w.require&&w.require("util").types;return e||_&&_.binding&&_.binding("util")}catch(t){}}(),k=S&&S.isTypedArray;var E,A,P=Array.prototype,O=Function.prototype,T=Object.prototype,C=y["__core-js_shared__"],j=O.toString,R=T.hasOwnProperty,I=function(){var e=/[^.]+$/.exec(C&&C.keys&&C.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),M=T.toString,L=j.call(Object),N=RegExp("^"+j.call(R).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),D=x?y.Buffer:void 0,z=y.Symbol,B=y.Uint8Array,U=D?D.allocUnsafe:void 0,F=(E=Object.getPrototypeOf,A=Object,function(e){return E(A(e))}),$=Object.create,H=T.propertyIsEnumerable,V=P.splice,q=z?z.toStringTag:void 0,K=function(){try{var e=ye(Object,"defineProperty");return e({},"",{}),e}catch(t){}}(),W=D?D.isBuffer:void 0,G=Math.max,Z=Date.now,Y=ye(y,"Map"),X=ye(Object,"create"),J=function(){function e(){}return function(t){if(!Ce(t))return{};if($)return $(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();function Q(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t-1},ee.prototype.set=function(e,t){var r=this.__data__,n=ae(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},te.prototype.clear=function(){this.size=0,this.__data__={hash:new Q,map:new(Y||ee),string:new Q}},te.prototype.delete=function(e){var t=ve(this,e).delete(e);return this.size-=t?1:0,t},te.prototype.get=function(e){return ve(this,e).get(e)},te.prototype.has=function(e){return ve(this,e).has(e)},te.prototype.set=function(e,t){var r=ve(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},re.prototype.clear=function(){this.__data__=new ee,this.size=0},re.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},re.prototype.get=function(e){return this.__data__.get(e)},re.prototype.has=function(e){return this.__data__.has(e)},re.prototype.set=function(e,t){var r=this.__data__;if(r instanceof ee){var n=r.__data__;if(!Y||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new te(n)}return r.set(e,t),this.size=r.size,this};var ce,le=function(e,t,r){for(var n=-1,i=Object(e),o=r(e),a=o.length;a--;){var s=o[ce?a:++n];if(!1===t(i[s],s,i))break}return e};function ue(e){return null==e?void 0===e?h:l:q&&q in Object(e)?function(e){var t=R.call(e,q),r=e[q];try{e[q]=void 0;var n=!0}catch(o){}var i=M.call(e);n&&(t?e[q]=r:delete e[q]);return i}(e):function(e){return M.call(e)}(e)}function de(e){return je(e)&&ue(e)==o}function he(e){return!(!Ce(e)||function(e){return!!I&&I in e}(e))&&(Oe(e)?N:f).test(function(e){if(null!=e){try{return j.call(e)}catch(t){}try{return e+""}catch(t){}}return""}(e))}function fe(e){if(!Ce(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t=we(e),r=[];for(var n in e)("constructor"!=n||!t&&R.call(e,n))&&r.push(n);return r}function pe(e,t,r,n,i){e!==t&&le(t,(function(o,a){if(i||(i=new re),Ce(o))!function(e,t,r,n,i,o,a){var s=xe(e,r),c=xe(t,r),l=a.get(c);if(l)return void ie(e,r,l);var d=o?o(s,c,r+"",e,t,a):void 0,h=void 0===d;if(h){var f=Ee(c),p=!f&&Pe(c),m=!f&&!p&&Re(c);d=c,f||p||m?Ee(s)?d=s:je(g=s)&&Ae(g)?d=function(e,t){var r=-1,n=e.length;t||(t=Array(n));for(;++r-1&&e%1==0&&e0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}(ge);function Se(e,t){return e===t||e!==e&&t!==t}var ke=de(function(){return arguments}())?de:function(e){return je(e)&&R.call(e,"callee")&&!H.call(e,"callee")},Ee=Array.isArray;function Ae(e){return null!=e&&Te(e.length)&&!Oe(e)}var Pe=W||function(){return!1};function Oe(e){if(!Ce(e))return!1;var t=ue(e);return t==s||t==c||t==a||t==d}function Te(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=i}function Ce(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function je(e){return null!=e&&"object"==typeof e}var Re=k?function(e){return function(t){return e(t)}}(k):function(e){return je(e)&&Te(e.length)&&!!m[ue(e)]};function Ie(e){return Ae(e)?ne(e,!0):fe(e)}var Me,Le=(Me=function(e,t,r,n){pe(e,t,r,n)},me((function(e,t){var r=-1,n=t.length,i=n>1?t[n-1]:void 0,o=n>2?t[2]:void 0;for(i=Me.length>3&&"function"==typeof i?(n--,i):void 0,o&&function(e,t,r){if(!Ce(r))return!1;var n=typeof t;return!!("number"==n?Ae(r)&&be(t,r.length):"string"==n&&t in r)&&Se(r[t],e)}(t[0],t[1],o)&&(i=n<3?void 0:i,n=1),e=Object(e);++r"']/g,Y=RegExp(G.source),X=RegExp(Z.source),J=/<%-([\s\S]+?)%>/g,Q=/<%([\s\S]+?)%>/g,ee=/<%=([\s\S]+?)%>/g,te=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,re=/^\w*$/,ne=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ie=/[\\^$.*+?()[\]{}|]/g,oe=RegExp(ie.source),ae=/^\s+/,se=/\s/,ce=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,le=/\{\n\/\* \[wrapped with (.+)\] \*/,ue=/,? & /,de=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,he=/[()=,{}\[\]\/\s]/,fe=/\\(\\)?/g,pe=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,me=/\w*$/,ge=/^[-+]0x[0-9a-f]+$/i,ve=/^0b[01]+$/i,ye=/^\[object .+?Constructor\]$/,be=/^0o[0-7]+$/i,we=/^(?:0|[1-9]\d*)$/,xe=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,_e=/($^)/,Se=/['\n\r\u2028\u2029\\]/g,ke="\\ud800-\\udfff",Ee="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ae="\\u2700-\\u27bf",Pe="a-z\\xdf-\\xf6\\xf8-\\xff",Oe="A-Z\\xc0-\\xd6\\xd8-\\xde",Te="\\ufe0e\\ufe0f",Ce="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",je="['\u2019]",Re="["+ke+"]",Ie="["+Ce+"]",Me="["+Ee+"]",Le="\\d+",Ne="["+Ae+"]",De="["+Pe+"]",ze="[^"+ke+Ce+Le+Ae+Pe+Oe+"]",Be="\\ud83c[\\udffb-\\udfff]",Ue="[^"+ke+"]",Fe="(?:\\ud83c[\\udde6-\\uddff]){2}",$e="[\\ud800-\\udbff][\\udc00-\\udfff]",He="["+Oe+"]",Ve="\\u200d",qe="(?:"+De+"|"+ze+")",Ke="(?:"+He+"|"+ze+")",We="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Ge="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",Ze="(?:"+Me+"|"+Be+")"+"?",Ye="["+Te+"]?",Xe=Ye+Ze+("(?:"+Ve+"(?:"+[Ue,Fe,$e].join("|")+")"+Ye+Ze+")*"),Je="(?:"+[Ne,Fe,$e].join("|")+")"+Xe,Qe="(?:"+[Ue+Me+"?",Me,Fe,$e,Re].join("|")+")",et=RegExp(je,"g"),tt=RegExp(Me,"g"),rt=RegExp(Be+"(?="+Be+")|"+Qe+Xe,"g"),nt=RegExp([He+"?"+De+"+"+We+"(?="+[Ie,He,"$"].join("|")+")",Ke+"+"+Ge+"(?="+[Ie,He+qe,"$"].join("|")+")",He+"?"+qe+"+"+We,He+"+"+Ge,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Le,Je].join("|"),"g"),it=RegExp("["+Ve+ke+Ee+Te+"]"),ot=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,at=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],st=-1,ct={};ct[N]=ct[D]=ct[z]=ct[B]=ct[U]=ct[F]=ct[$]=ct[H]=ct[V]=!0,ct[y]=ct[b]=ct[M]=ct[w]=ct[L]=ct[x]=ct[_]=ct[S]=ct[E]=ct[A]=ct[P]=ct[T]=ct[C]=ct[j]=ct[I]=!1;var lt={};lt[y]=lt[b]=lt[M]=lt[L]=lt[w]=lt[x]=lt[N]=lt[D]=lt[z]=lt[B]=lt[U]=lt[E]=lt[A]=lt[P]=lt[T]=lt[C]=lt[j]=lt[R]=lt[F]=lt[$]=lt[H]=lt[V]=!0,lt[_]=lt[S]=lt[I]=!1;var ut={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},dt=parseFloat,ht=parseInt,ft="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,pt="object"==typeof self&&self&&self.Object===Object&&self,mt=ft||pt||Function("return this")(),gt=t&&!t.nodeType&&t,vt=gt&&e&&!e.nodeType&&e,yt=vt&&vt.exports===gt,bt=yt&&ft.process,wt=function(){try{var e=vt&&vt.require&&vt.require("util").types;return e||bt&&bt.binding&&bt.binding("util")}catch(t){}}(),xt=wt&&wt.isArrayBuffer,_t=wt&&wt.isDate,St=wt&&wt.isMap,kt=wt&&wt.isRegExp,Et=wt&&wt.isSet,At=wt&&wt.isTypedArray;function Pt(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function Ot(e,t,r,n){for(var i=-1,o=null==e?0:e.length;++i-1}function Mt(e,t,r){for(var n=-1,i=null==e?0:e.length;++n-1;);return r}function nr(e,t){for(var r=e.length;r--&&Ht(t,e[r],0)>-1;);return r}var ir=Gt({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),or=Gt({"&":"&","<":"<",">":">",'"':""","'":"'"});function ar(e){return"\\"+ut[e]}function sr(e){return it.test(e)}function cr(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function lr(e,t){return function(r){return e(t(r))}}function ur(e,t){for(var r=-1,n=e.length,i=0,o=[];++r",""":'"',"'":"'"});var vr=function e(t){var r=(t=null==t?mt:vr.defaults(mt.Object(),t,vr.pick(mt,at))).Array,n=t.Date,se=t.Error,ke=t.Function,Ee=t.Math,Ae=t.Object,Pe=t.RegExp,Oe=t.String,Te=t.TypeError,Ce=r.prototype,je=ke.prototype,Re=Ae.prototype,Ie=t["__core-js_shared__"],Me=je.toString,Le=Re.hasOwnProperty,Ne=0,De=function(){var e=/[^.]+$/.exec(Ie&&Ie.keys&&Ie.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),ze=Re.toString,Be=Me.call(Ae),Ue=mt._,Fe=Pe("^"+Me.call(Le).replace(ie,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),$e=yt?t.Buffer:i,He=t.Symbol,Ve=t.Uint8Array,qe=$e?$e.allocUnsafe:i,Ke=lr(Ae.getPrototypeOf,Ae),We=Ae.create,Ge=Re.propertyIsEnumerable,Ze=Ce.splice,Ye=He?He.isConcatSpreadable:i,Xe=He?He.iterator:i,Je=He?He.toStringTag:i,Qe=function(){try{var e=ho(Ae,"defineProperty");return e({},"",{}),e}catch(t){}}(),rt=t.clearTimeout!==mt.clearTimeout&&t.clearTimeout,it=n&&n.now!==mt.Date.now&&n.now,ut=t.setTimeout!==mt.setTimeout&&t.setTimeout,ft=Ee.ceil,pt=Ee.floor,gt=Ae.getOwnPropertySymbols,vt=$e?$e.isBuffer:i,bt=t.isFinite,wt=Ce.join,Ut=lr(Ae.keys,Ae),Gt=Ee.max,yr=Ee.min,br=n.now,wr=t.parseInt,xr=Ee.random,_r=Ce.reverse,Sr=ho(t,"DataView"),kr=ho(t,"Map"),Er=ho(t,"Promise"),Ar=ho(t,"Set"),Pr=ho(t,"WeakMap"),Or=ho(Ae,"create"),Tr=Pr&&new Pr,Cr={},jr=zo(Sr),Rr=zo(kr),Ir=zo(Er),Mr=zo(Ar),Lr=zo(Pr),Nr=He?He.prototype:i,Dr=Nr?Nr.valueOf:i,zr=Nr?Nr.toString:i;function Br(e){if(ts(e)&&!Va(e)&&!(e instanceof Hr)){if(e instanceof $r)return e;if(Le.call(e,"__wrapped__"))return Bo(e)}return new $r(e)}var Ur=function(){function e(){}return function(t){if(!es(t))return{};if(We)return We(t);e.prototype=t;var r=new e;return e.prototype=i,r}}();function Fr(){}function $r(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=i}function Hr(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=g,this.__views__=[]}function Vr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t=t?e:t)),e}function cn(e,t,r,n,o,a){var s,c=1&t,l=2&t,u=4&t;if(r&&(s=o?r(e,n,o,a):r(e)),s!==i)return s;if(!es(e))return e;var d=Va(e);if(d){if(s=function(e){var t=e.length,r=new e.constructor(t);t&&"string"==typeof e[0]&&Le.call(e,"index")&&(r.index=e.index,r.input=e.input);return r}(e),!c)return Ti(e,s)}else{var h=mo(e),f=h==S||h==k;if(Ga(e))return Si(e,c);if(h==P||h==y||f&&!o){if(s=l||f?{}:vo(e),!c)return l?function(e,t){return Ci(e,po(e),t)}(e,function(e,t){return e&&Ci(t,Rs(t),e)}(s,e)):function(e,t){return Ci(e,fo(e),t)}(e,nn(s,e))}else{if(!lt[h])return o?e:{};s=function(e,t,r){var n=e.constructor;switch(t){case M:return ki(e);case w:case x:return new n(+e);case L:return function(e,t){var r=t?ki(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}(e,r);case N:case D:case z:case B:case U:case F:case $:case H:case V:return Ei(e,r);case E:return new n;case A:case j:return new n(e);case T:return function(e){var t=new e.constructor(e.source,me.exec(e));return t.lastIndex=e.lastIndex,t}(e);case C:return new n;case R:return i=e,Dr?Ae(Dr.call(i)):{}}var i}(e,h,c)}}a||(a=new Gr);var p=a.get(e);if(p)return p;a.set(e,s),as(e)?e.forEach((function(n){s.add(cn(n,t,r,n,e,a))})):rs(e)&&e.forEach((function(n,i){s.set(i,cn(n,t,r,i,e,a))}));var m=d?i:(u?l?io:no:l?Rs:js)(e);return Tt(m||e,(function(n,i){m&&(n=e[i=n]),en(s,i,cn(n,t,r,i,e,a))})),s}function ln(e,t,r){var n=r.length;if(null==e)return!n;for(e=Ae(e);n--;){var o=r[n],a=t[o],s=e[o];if(s===i&&!(o in e)||!a(s))return!1}return!0}function un(e,t,r){if("function"!=typeof e)throw new Te(o);return jo((function(){e.apply(i,r)}),t)}function dn(e,t,r,n){var i=-1,o=It,a=!0,s=e.length,c=[],l=t.length;if(!s)return c;r&&(t=Lt(t,Qt(r))),n?(o=Mt,a=!1):t.length>=200&&(o=tr,a=!1,t=new Wr(t));e:for(;++i-1},qr.prototype.set=function(e,t){var r=this.__data__,n=tn(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Kr.prototype.clear=function(){this.size=0,this.__data__={hash:new Vr,map:new(kr||qr),string:new Vr}},Kr.prototype.delete=function(e){var t=lo(this,e).delete(e);return this.size-=t?1:0,t},Kr.prototype.get=function(e){return lo(this,e).get(e)},Kr.prototype.has=function(e){return lo(this,e).has(e)},Kr.prototype.set=function(e,t){var r=lo(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Wr.prototype.add=Wr.prototype.push=function(e){return this.__data__.set(e,a),this},Wr.prototype.has=function(e){return this.__data__.has(e)},Gr.prototype.clear=function(){this.__data__=new qr,this.size=0},Gr.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Gr.prototype.get=function(e){return this.__data__.get(e)},Gr.prototype.has=function(e){return this.__data__.has(e)},Gr.prototype.set=function(e,t){var r=this.__data__;if(r instanceof qr){var n=r.__data__;if(!kr||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Kr(n)}return r.set(e,t),this.size=r.size,this};var hn=Ii(wn),fn=Ii(xn,!0);function pn(e,t){var r=!0;return hn(e,(function(e,n,i){return r=!!t(e,n,i)})),r}function mn(e,t,r){for(var n=-1,o=e.length;++n0&&r(s)?t>1?vn(s,t-1,r,n,i):Nt(i,s):n||(i[i.length]=s)}return i}var yn=Mi(),bn=Mi(!0);function wn(e,t){return e&&yn(e,t,js)}function xn(e,t){return e&&bn(e,t,js)}function _n(e,t){return Rt(t,(function(t){return Xa(e[t])}))}function Sn(e,t){for(var r=0,n=(t=bi(t,e)).length;null!=e&&rt}function Pn(e,t){return null!=e&&Le.call(e,t)}function On(e,t){return null!=e&&t in Ae(e)}function Tn(e,t,n){for(var o=n?Mt:It,a=e[0].length,s=e.length,c=s,l=r(s),u=1/0,d=[];c--;){var h=e[c];c&&t&&(h=Lt(h,Qt(t))),u=yr(h.length,u),l[c]=!n&&(t||a>=120&&h.length>=120)?new Wr(c&&h):i}h=e[0];var f=-1,p=l[0];e:for(;++f=s?c:c*("desc"==r[n]?-1:1)}return e.index-t.index}(e,t,r)}))}function qn(e,t,r){for(var n=-1,i=t.length,o={};++n-1;)s!==e&&Ze.call(s,c,1),Ze.call(e,c,1);return e}function Wn(e,t){for(var r=e?t.length:0,n=r-1;r--;){var i=t[r];if(r==n||i!==o){var o=i;bo(i)?Ze.call(e,i,1):di(e,i)}}return e}function Gn(e,t){return e+pt(xr()*(t-e+1))}function Zn(e,t){var r="";if(!e||t<1||t>p)return r;do{t%2&&(r+=e),(t=pt(t/2))&&(e+=e)}while(t);return r}function Yn(e,t){return Ro(Po(e,t,nc),e+"")}function Xn(e){return Yr(Us(e))}function Jn(e,t){var r=Us(e);return Lo(r,sn(t,0,r.length))}function Qn(e,t,r,n){if(!es(e))return e;for(var o=-1,a=(t=bi(t,e)).length,s=a-1,c=e;null!=c&&++oo?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var a=r(o);++i>>1,a=e[o];null!==a&&!cs(a)&&(r?a<=t:a=200){var l=t?null:Zi(e);if(l)return dr(l);a=!1,i=tr,c=new Wr}else c=t?[]:s;e:for(;++n=n?e:ni(e,t,r)}var _i=rt||function(e){return mt.clearTimeout(e)};function Si(e,t){if(t)return e.slice();var r=e.length,n=qe?qe(r):new e.constructor(r);return e.copy(n),n}function ki(e){var t=new e.constructor(e.byteLength);return new Ve(t).set(new Ve(e)),t}function Ei(e,t){var r=t?ki(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}function Ai(e,t){if(e!==t){var r=e!==i,n=null===e,o=e===e,a=cs(e),s=t!==i,c=null===t,l=t===t,u=cs(t);if(!c&&!u&&!a&&e>t||a&&s&&l&&!c&&!u||n&&s&&l||!r&&l||!o)return 1;if(!n&&!a&&!u&&e1?r[o-1]:i,s=o>2?r[2]:i;for(a=e.length>3&&"function"==typeof a?(o--,a):i,s&&wo(r[0],r[1],s)&&(a=o<3?i:a,o=1),t=Ae(t);++n-1?o[a?t[s]:s]:i}}function Bi(e){return ro((function(t){var r=t.length,n=r,a=$r.prototype.thru;for(e&&t.reverse();n--;){var s=t[n];if("function"!=typeof s)throw new Te(o);if(a&&!c&&"wrapper"==ao(s))var c=new $r([],!0)}for(n=c?n:r;++n1&&w.reverse(),f&&uc))return!1;var u=a.get(e),d=a.get(t);if(u&&d)return u==t&&d==e;var h=-1,f=!0,p=2&r?new Wr:i;for(a.set(e,t),a.set(t,e);++h-1&&e%1==0&&e1?"& ":"")+t[n],t=t.join(r>2?", ":" "),e.replace(ce,"{\n/* [wrapped with "+t+"] */\n")}(n,function(e,t){return Tt(v,(function(r){var n="_."+r[0];t&r[1]&&!It(e,n)&&e.push(n)})),e.sort()}(function(e){var t=e.match(le);return t?t[1].split(ue):[]}(n),r)))}function Mo(e){var t=0,r=0;return function(){var n=br(),o=16-(n-r);if(r=n,o>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(i,arguments)}}function Lo(e,t){var r=-1,n=e.length,o=n-1;for(t=t===i?n:t;++r1?e[t-1]:i;return r="function"==typeof r?(e.pop(),r):i,oa(e,r)}));function ha(e){var t=Br(e);return t.__chain__=!0,t}function fa(e,t){return t(e)}var pa=ro((function(e){var t=e.length,r=t?e[0]:0,n=this.__wrapped__,o=function(t){return an(t,e)};return!(t>1||this.__actions__.length)&&n instanceof Hr&&bo(r)?((n=n.slice(r,+r+(t?1:0))).__actions__.push({func:fa,args:[o],thisArg:i}),new $r(n,this.__chain__).thru((function(e){return t&&!e.length&&e.push(i),e}))):this.thru(o)}));var ma=ji((function(e,t,r){Le.call(e,r)?++e[r]:on(e,r,1)}));var ga=zi(Ho),va=zi(Vo);function ya(e,t){return(Va(e)?Tt:hn)(e,co(t,3))}function ba(e,t){return(Va(e)?Ct:fn)(e,co(t,3))}var wa=ji((function(e,t,r){Le.call(e,r)?e[r].push(t):on(e,r,[t])}));var xa=Yn((function(e,t,n){var i=-1,o="function"==typeof t,a=Ka(e)?r(e.length):[];return hn(e,(function(e){a[++i]=o?Pt(t,e,n):Cn(e,t,n)})),a})),_a=ji((function(e,t,r){on(e,r,t)}));function Sa(e,t){return(Va(e)?Lt:Bn)(e,co(t,3))}var ka=ji((function(e,t,r){e[r?0:1].push(t)}),(function(){return[[],[]]}));var Ea=Yn((function(e,t){if(null==e)return[];var r=t.length;return r>1&&wo(e,t[0],t[1])?t=[]:r>2&&wo(t[0],t[1],t[2])&&(t=[t[0]]),Vn(e,vn(t,1),[])})),Aa=it||function(){return mt.Date.now()};function Pa(e,t,r){return t=r?i:t,t=e&&null==t?e.length:t,Xi(e,d,i,i,i,i,t)}function Oa(e,t){var r;if("function"!=typeof t)throw new Te(o);return e=ps(e),function(){return--e>0&&(r=t.apply(this,arguments)),e<=1&&(t=i),r}}var Ta=Yn((function(e,t,r){var n=1;if(r.length){var i=ur(r,so(Ta));n|=l}return Xi(e,n,t,r,i)})),Ca=Yn((function(e,t,r){var n=3;if(r.length){var i=ur(r,so(Ca));n|=l}return Xi(t,n,e,r,i)}));function ja(e,t,r){var n,a,s,c,l,u,d=0,h=!1,f=!1,p=!0;if("function"!=typeof e)throw new Te(o);function m(t){var r=n,o=a;return n=a=i,d=t,c=e.apply(o,r)}function g(e){var r=e-u;return u===i||r>=t||r<0||f&&e-d>=s}function v(){var e=Aa();if(g(e))return y(e);l=jo(v,function(e){var r=t-(e-u);return f?yr(r,s-(e-d)):r}(e))}function y(e){return l=i,p&&n?m(e):(n=a=i,c)}function b(){var e=Aa(),r=g(e);if(n=arguments,a=this,u=e,r){if(l===i)return function(e){return d=e,l=jo(v,t),h?m(e):c}(u);if(f)return _i(l),l=jo(v,t),m(u)}return l===i&&(l=jo(v,t)),c}return t=gs(t)||0,es(r)&&(h=!!r.leading,s=(f="maxWait"in r)?Gt(gs(r.maxWait)||0,t):s,p="trailing"in r?!!r.trailing:p),b.cancel=function(){l!==i&&_i(l),d=0,n=u=a=l=i},b.flush=function(){return l===i?c:y(Aa())},b}var Ra=Yn((function(e,t){return un(e,1,t)})),Ia=Yn((function(e,t,r){return un(e,gs(t)||0,r)}));function Ma(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Te(o);var r=function(){var n=arguments,i=t?t.apply(this,n):n[0],o=r.cache;if(o.has(i))return o.get(i);var a=e.apply(this,n);return r.cache=o.set(i,a)||o,a};return r.cache=new(Ma.Cache||Kr),r}function La(e){if("function"!=typeof e)throw new Te(o);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ma.Cache=Kr;var Na=wi((function(e,t){var r=(t=1==t.length&&Va(t[0])?Lt(t[0],Qt(co())):Lt(vn(t,1),Qt(co()))).length;return Yn((function(n){for(var i=-1,o=yr(n.length,r);++i=t})),Ha=jn(function(){return arguments}())?jn:function(e){return ts(e)&&Le.call(e,"callee")&&!Ge.call(e,"callee")},Va=r.isArray,qa=xt?Qt(xt):function(e){return ts(e)&&En(e)==M};function Ka(e){return null!=e&&Qa(e.length)&&!Xa(e)}function Wa(e){return ts(e)&&Ka(e)}var Ga=vt||gc,Za=_t?Qt(_t):function(e){return ts(e)&&En(e)==x};function Ya(e){if(!ts(e))return!1;var t=En(e);return t==_||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!is(e)}function Xa(e){if(!es(e))return!1;var t=En(e);return t==S||t==k||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Ja(e){return"number"==typeof e&&e==ps(e)}function Qa(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=p}function es(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function ts(e){return null!=e&&"object"==typeof e}var rs=St?Qt(St):function(e){return ts(e)&&mo(e)==E};function ns(e){return"number"==typeof e||ts(e)&&En(e)==A}function is(e){if(!ts(e)||En(e)!=P)return!1;var t=Ke(e);if(null===t)return!0;var r=Le.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&Me.call(r)==Be}var os=kt?Qt(kt):function(e){return ts(e)&&En(e)==T};var as=Et?Qt(Et):function(e){return ts(e)&&mo(e)==C};function ss(e){return"string"==typeof e||!Va(e)&&ts(e)&&En(e)==j}function cs(e){return"symbol"==typeof e||ts(e)&&En(e)==R}var ls=At?Qt(At):function(e){return ts(e)&&Qa(e.length)&&!!ct[En(e)]};var us=Ki(zn),ds=Ki((function(e,t){return e<=t}));function hs(e){if(!e)return[];if(Ka(e))return ss(e)?pr(e):Ti(e);if(Xe&&e[Xe])return function(e){for(var t,r=[];!(t=e.next()).done;)r.push(t.value);return r}(e[Xe]());var t=mo(e);return(t==E?cr:t==C?dr:Us)(e)}function fs(e){return e?(e=gs(e))===f||e===-1/0?17976931348623157e292*(e<0?-1:1):e===e?e:0:0===e?e:0}function ps(e){var t=fs(e),r=t%1;return t===t?r?t-r:t:0}function ms(e){return e?sn(ps(e),0,g):0}function gs(e){if("number"==typeof e)return e;if(cs(e))return m;if(es(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=es(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Jt(e);var r=ve.test(e);return r||be.test(e)?ht(e.slice(2),r?2:8):ge.test(e)?m:+e}function vs(e){return Ci(e,Rs(e))}function ys(e){return null==e?"":li(e)}var bs=Ri((function(e,t){if(ko(t)||Ka(t))Ci(t,js(t),e);else for(var r in t)Le.call(t,r)&&en(e,r,t[r])})),ws=Ri((function(e,t){Ci(t,Rs(t),e)})),xs=Ri((function(e,t,r,n){Ci(t,Rs(t),e,n)})),_s=Ri((function(e,t,r,n){Ci(t,js(t),e,n)})),Ss=ro(an);var ks=Yn((function(e,t){e=Ae(e);var r=-1,n=t.length,o=n>2?t[2]:i;for(o&&wo(t[0],t[1],o)&&(n=1);++r1),t})),Ci(e,io(e),r),n&&(r=cn(r,7,eo));for(var i=t.length;i--;)di(r,t[i]);return r}));var Ns=ro((function(e,t){return null==e?{}:function(e,t){return qn(e,t,(function(t,r){return Ps(e,r)}))}(e,t)}));function Ds(e,t){if(null==e)return{};var r=Lt(io(e),(function(e){return[e]}));return t=co(t),qn(e,r,(function(e,r){return t(e,r[0])}))}var zs=Yi(js),Bs=Yi(Rs);function Us(e){return null==e?[]:er(e,js(e))}var Fs=Ni((function(e,t,r){return t=t.toLowerCase(),e+(r?$s(t):t)}));function $s(e){return Ys(ys(e).toLowerCase())}function Hs(e){return(e=ys(e))&&e.replace(xe,ir).replace(tt,"")}var Vs=Ni((function(e,t,r){return e+(r?"-":"")+t.toLowerCase()})),qs=Ni((function(e,t,r){return e+(r?" ":"")+t.toLowerCase()})),Ks=Li("toLowerCase");var Ws=Ni((function(e,t,r){return e+(r?"_":"")+t.toLowerCase()}));var Gs=Ni((function(e,t,r){return e+(r?" ":"")+Ys(t)}));var Zs=Ni((function(e,t,r){return e+(r?" ":"")+t.toUpperCase()})),Ys=Li("toUpperCase");function Xs(e,t,r){return e=ys(e),(t=r?i:t)===i?function(e){return ot.test(e)}(e)?function(e){return e.match(nt)||[]}(e):function(e){return e.match(de)||[]}(e):e.match(t)||[]}var Js=Yn((function(e,t){try{return Pt(e,i,t)}catch(r){return Ya(r)?r:new se(r)}})),Qs=ro((function(e,t){return Tt(t,(function(t){t=Do(t),on(e,t,Ta(e[t],e))})),e}));function ec(e){return function(){return e}}var tc=Bi(),rc=Bi(!0);function nc(e){return e}function ic(e){return Ln("function"==typeof e?e:cn(e,1))}var oc=Yn((function(e,t){return function(r){return Cn(r,e,t)}})),ac=Yn((function(e,t){return function(r){return Cn(e,r,t)}}));function sc(e,t,r){var n=js(t),i=_n(t,n);null!=r||es(t)&&(i.length||!n.length)||(r=t,t=e,e=this,i=_n(t,js(t)));var o=!(es(r)&&"chain"in r)||!!r.chain,a=Xa(e);return Tt(i,(function(r){var n=t[r];e[r]=n,a&&(e.prototype[r]=function(){var t=this.__chain__;if(o||t){var r=e(this.__wrapped__);return(r.__actions__=Ti(this.__actions__)).push({func:n,args:arguments,thisArg:e}),r.__chain__=t,r}return n.apply(e,Nt([this.value()],arguments))})})),e}function cc(){}var lc=Hi(Lt),uc=Hi(jt),dc=Hi(Bt);function hc(e){return xo(e)?Wt(Do(e)):function(e){return function(t){return Sn(t,e)}}(e)}var fc=qi(),pc=qi(!0);function mc(){return[]}function gc(){return!1}var vc=$i((function(e,t){return e+t}),0),yc=Gi("ceil"),bc=$i((function(e,t){return e/t}),1),wc=Gi("floor");var xc=$i((function(e,t){return e*t}),1),_c=Gi("round"),Sc=$i((function(e,t){return e-t}),0);return Br.after=function(e,t){if("function"!=typeof t)throw new Te(o);return e=ps(e),function(){if(--e<1)return t.apply(this,arguments)}},Br.ary=Pa,Br.assign=bs,Br.assignIn=ws,Br.assignInWith=xs,Br.assignWith=_s,Br.at=Ss,Br.before=Oa,Br.bind=Ta,Br.bindAll=Qs,Br.bindKey=Ca,Br.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Va(e)?e:[e]},Br.chain=ha,Br.chunk=function(e,t,n){t=(n?wo(e,t,n):t===i)?1:Gt(ps(t),0);var o=null==e?0:e.length;if(!o||t<1)return[];for(var a=0,s=0,c=r(ft(o/t));ao?0:o+r),(n=n===i||n>o?o:ps(n))<0&&(n+=o),n=r>n?0:ms(n);r>>0)?(e=ys(e))&&("string"==typeof t||null!=t&&!os(t))&&!(t=li(t))&&sr(e)?xi(pr(e),0,r):e.split(t,r):[]},Br.spread=function(e,t){if("function"!=typeof e)throw new Te(o);return t=null==t?0:Gt(ps(t),0),Yn((function(r){var n=r[t],i=xi(r,0,t);return n&&Nt(i,n),Pt(e,this,i)}))},Br.tail=function(e){var t=null==e?0:e.length;return t?ni(e,1,t):[]},Br.take=function(e,t,r){return e&&e.length?ni(e,0,(t=r||t===i?1:ps(t))<0?0:t):[]},Br.takeRight=function(e,t,r){var n=null==e?0:e.length;return n?ni(e,(t=n-(t=r||t===i?1:ps(t)))<0?0:t,n):[]},Br.takeRightWhile=function(e,t){return e&&e.length?fi(e,co(t,3),!1,!0):[]},Br.takeWhile=function(e,t){return e&&e.length?fi(e,co(t,3)):[]},Br.tap=function(e,t){return t(e),e},Br.throttle=function(e,t,r){var n=!0,i=!0;if("function"!=typeof e)throw new Te(o);return es(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),ja(e,t,{leading:n,maxWait:t,trailing:i})},Br.thru=fa,Br.toArray=hs,Br.toPairs=zs,Br.toPairsIn=Bs,Br.toPath=function(e){return Va(e)?Lt(e,Do):cs(e)?[e]:Ti(No(ys(e)))},Br.toPlainObject=vs,Br.transform=function(e,t,r){var n=Va(e),i=n||Ga(e)||ls(e);if(t=co(t,4),null==r){var o=e&&e.constructor;r=i?n?new o:[]:es(e)&&Xa(o)?Ur(Ke(e)):{}}return(i?Tt:wn)(e,(function(e,n,i){return t(r,e,n,i)})),r},Br.unary=function(e){return Pa(e,1)},Br.union=ta,Br.unionBy=ra,Br.unionWith=na,Br.uniq=function(e){return e&&e.length?ui(e):[]},Br.uniqBy=function(e,t){return e&&e.length?ui(e,co(t,2)):[]},Br.uniqWith=function(e,t){return t="function"==typeof t?t:i,e&&e.length?ui(e,i,t):[]},Br.unset=function(e,t){return null==e||di(e,t)},Br.unzip=ia,Br.unzipWith=oa,Br.update=function(e,t,r){return null==e?e:hi(e,t,yi(r))},Br.updateWith=function(e,t,r,n){return n="function"==typeof n?n:i,null==e?e:hi(e,t,yi(r),n)},Br.values=Us,Br.valuesIn=function(e){return null==e?[]:er(e,Rs(e))},Br.without=aa,Br.words=Xs,Br.wrap=function(e,t){return Da(yi(t),e)},Br.xor=sa,Br.xorBy=ca,Br.xorWith=la,Br.zip=ua,Br.zipObject=function(e,t){return gi(e||[],t||[],en)},Br.zipObjectDeep=function(e,t){return gi(e||[],t||[],Qn)},Br.zipWith=da,Br.entries=zs,Br.entriesIn=Bs,Br.extend=ws,Br.extendWith=xs,sc(Br,Br),Br.add=vc,Br.attempt=Js,Br.camelCase=Fs,Br.capitalize=$s,Br.ceil=yc,Br.clamp=function(e,t,r){return r===i&&(r=t,t=i),r!==i&&(r=(r=gs(r))===r?r:0),t!==i&&(t=(t=gs(t))===t?t:0),sn(gs(e),t,r)},Br.clone=function(e){return cn(e,4)},Br.cloneDeep=function(e){return cn(e,5)},Br.cloneDeepWith=function(e,t){return cn(e,5,t="function"==typeof t?t:i)},Br.cloneWith=function(e,t){return cn(e,4,t="function"==typeof t?t:i)},Br.conformsTo=function(e,t){return null==t||ln(e,t,js(t))},Br.deburr=Hs,Br.defaultTo=function(e,t){return null==e||e!==e?t:e},Br.divide=bc,Br.endsWith=function(e,t,r){e=ys(e),t=li(t);var n=e.length,o=r=r===i?n:sn(ps(r),0,n);return(r-=t.length)>=0&&e.slice(r,o)==t},Br.eq=Ua,Br.escape=function(e){return(e=ys(e))&&X.test(e)?e.replace(Z,or):e},Br.escapeRegExp=function(e){return(e=ys(e))&&oe.test(e)?e.replace(ie,"\\$&"):e},Br.every=function(e,t,r){var n=Va(e)?jt:pn;return r&&wo(e,t,r)&&(t=i),n(e,co(t,3))},Br.find=ga,Br.findIndex=Ho,Br.findKey=function(e,t){return Ft(e,co(t,3),wn)},Br.findLast=va,Br.findLastIndex=Vo,Br.findLastKey=function(e,t){return Ft(e,co(t,3),xn)},Br.floor=wc,Br.forEach=ya,Br.forEachRight=ba,Br.forIn=function(e,t){return null==e?e:yn(e,co(t,3),Rs)},Br.forInRight=function(e,t){return null==e?e:bn(e,co(t,3),Rs)},Br.forOwn=function(e,t){return e&&wn(e,co(t,3))},Br.forOwnRight=function(e,t){return e&&xn(e,co(t,3))},Br.get=As,Br.gt=Fa,Br.gte=$a,Br.has=function(e,t){return null!=e&&go(e,t,Pn)},Br.hasIn=Ps,Br.head=Ko,Br.identity=nc,Br.includes=function(e,t,r,n){e=Ka(e)?e:Us(e),r=r&&!n?ps(r):0;var i=e.length;return r<0&&(r=Gt(i+r,0)),ss(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&Ht(e,t,r)>-1},Br.indexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var i=null==r?0:ps(r);return i<0&&(i=Gt(n+i,0)),Ht(e,t,i)},Br.inRange=function(e,t,r){return t=fs(t),r===i?(r=t,t=0):r=fs(r),function(e,t,r){return e>=yr(t,r)&&e=-9007199254740991&&e<=p},Br.isSet=as,Br.isString=ss,Br.isSymbol=cs,Br.isTypedArray=ls,Br.isUndefined=function(e){return e===i},Br.isWeakMap=function(e){return ts(e)&&mo(e)==I},Br.isWeakSet=function(e){return ts(e)&&"[object WeakSet]"==En(e)},Br.join=function(e,t){return null==e?"":wt.call(e,t)},Br.kebabCase=Vs,Br.last=Yo,Br.lastIndexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var o=n;return r!==i&&(o=(o=ps(r))<0?Gt(n+o,0):yr(o,n-1)),t===t?function(e,t,r){for(var n=r+1;n--;)if(e[n]===t)return n;return n}(e,t,o):$t(e,qt,o,!0)},Br.lowerCase=qs,Br.lowerFirst=Ks,Br.lt=us,Br.lte=ds,Br.max=function(e){return e&&e.length?mn(e,nc,An):i},Br.maxBy=function(e,t){return e&&e.length?mn(e,co(t,2),An):i},Br.mean=function(e){return Kt(e,nc)},Br.meanBy=function(e,t){return Kt(e,co(t,2))},Br.min=function(e){return e&&e.length?mn(e,nc,zn):i},Br.minBy=function(e,t){return e&&e.length?mn(e,co(t,2),zn):i},Br.stubArray=mc,Br.stubFalse=gc,Br.stubObject=function(){return{}},Br.stubString=function(){return""},Br.stubTrue=function(){return!0},Br.multiply=xc,Br.nth=function(e,t){return e&&e.length?Hn(e,ps(t)):i},Br.noConflict=function(){return mt._===this&&(mt._=Ue),this},Br.noop=cc,Br.now=Aa,Br.pad=function(e,t,r){e=ys(e);var n=(t=ps(t))?fr(e):0;if(!t||n>=t)return e;var i=(t-n)/2;return Vi(pt(i),r)+e+Vi(ft(i),r)},Br.padEnd=function(e,t,r){e=ys(e);var n=(t=ps(t))?fr(e):0;return t&&nt){var n=e;e=t,t=n}if(r||e%1||t%1){var o=xr();return yr(e+o*(t-e+dt("1e-"+((o+"").length-1))),t)}return Gn(e,t)},Br.reduce=function(e,t,r){var n=Va(e)?Dt:Zt,i=arguments.length<3;return n(e,co(t,4),r,i,hn)},Br.reduceRight=function(e,t,r){var n=Va(e)?zt:Zt,i=arguments.length<3;return n(e,co(t,4),r,i,fn)},Br.repeat=function(e,t,r){return t=(r?wo(e,t,r):t===i)?1:ps(t),Zn(ys(e),t)},Br.replace=function(){var e=arguments,t=ys(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Br.result=function(e,t,r){var n=-1,o=(t=bi(t,e)).length;for(o||(o=1,e=i);++np)return[];var r=g,n=yr(e,g);t=co(t),e-=g;for(var i=Xt(n,t);++r=a)return e;var c=r-fr(n);if(c<1)return n;var l=s?xi(s,0,c).join(""):e.slice(0,c);if(o===i)return l+n;if(s&&(c+=l.length-c),os(o)){if(e.slice(c).search(o)){var u,d=l;for(o.global||(o=Pe(o.source,ys(me.exec(o))+"g")),o.lastIndex=0;u=o.exec(d);)var h=u.index;l=l.slice(0,h===i?c:h)}}else if(e.indexOf(li(o),c)!=c){var f=l.lastIndexOf(o);f>-1&&(l=l.slice(0,f))}return l+n},Br.unescape=function(e){return(e=ys(e))&&Y.test(e)?e.replace(G,gr):e},Br.uniqueId=function(e){var t=++Ne;return ys(e)+t},Br.upperCase=Zs,Br.upperFirst=Ys,Br.each=ya,Br.eachRight=ba,Br.first=Ko,sc(Br,function(){var e={};return wn(Br,(function(t,r){Le.call(Br.prototype,r)||(e[r]=t)})),e}(),{chain:!1}),Br.VERSION="4.17.21",Tt(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Br[e].placeholder=Br})),Tt(["drop","take"],(function(e,t){Hr.prototype[e]=function(r){r=r===i?1:Gt(ps(r),0);var n=this.__filtered__&&!t?new Hr(this):this.clone();return n.__filtered__?n.__takeCount__=yr(r,n.__takeCount__):n.__views__.push({size:yr(r,g),type:e+(n.__dir__<0?"Right":"")}),n},Hr.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Tt(["filter","map","takeWhile"],(function(e,t){var r=t+1,n=1==r||3==r;Hr.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:co(e,3),type:r}),t.__filtered__=t.__filtered__||n,t}})),Tt(["head","last"],(function(e,t){var r="take"+(t?"Right":"");Hr.prototype[e]=function(){return this[r](1).value()[0]}})),Tt(["initial","tail"],(function(e,t){var r="drop"+(t?"":"Right");Hr.prototype[e]=function(){return this.__filtered__?new Hr(this):this[r](1)}})),Hr.prototype.compact=function(){return this.filter(nc)},Hr.prototype.find=function(e){return this.filter(e).head()},Hr.prototype.findLast=function(e){return this.reverse().find(e)},Hr.prototype.invokeMap=Yn((function(e,t){return"function"==typeof e?new Hr(this):this.map((function(r){return Cn(r,e,t)}))})),Hr.prototype.reject=function(e){return this.filter(La(co(e)))},Hr.prototype.slice=function(e,t){e=ps(e);var r=this;return r.__filtered__&&(e>0||t<0)?new Hr(r):(e<0?r=r.takeRight(-e):e&&(r=r.drop(e)),t!==i&&(r=(t=ps(t))<0?r.dropRight(-t):r.take(t-e)),r)},Hr.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Hr.prototype.toArray=function(){return this.take(g)},wn(Hr.prototype,(function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),n=/^(?:head|last)$/.test(t),o=Br[n?"take"+("last"==t?"Right":""):t],a=n||/^find/.test(t);o&&(Br.prototype[t]=function(){var t=this.__wrapped__,s=n?[1]:arguments,c=t instanceof Hr,l=s[0],u=c||Va(t),d=function(e){var t=o.apply(Br,Nt([e],s));return n&&h?t[0]:t};u&&r&&"function"==typeof l&&1!=l.length&&(c=u=!1);var h=this.__chain__,f=!!this.__actions__.length,p=a&&!h,m=c&&!f;if(!a&&u){t=m?t:new Hr(this);var g=e.apply(t,s);return g.__actions__.push({func:fa,args:[d],thisArg:i}),new $r(g,h)}return p&&m?e.apply(this,s):(g=this.thru(d),p?n?g.value()[0]:g.value():g)})})),Tt(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Ce[e],r=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",n=/^(?:pop|shift)$/.test(e);Br.prototype[e]=function(){var e=arguments;if(n&&!this.__chain__){var i=this.value();return t.apply(Va(i)?i:[],e)}return this[r]((function(r){return t.apply(Va(r)?r:[],e)}))}})),wn(Hr.prototype,(function(e,t){var r=Br[t];if(r){var n=r.name+"";Le.call(Cr,n)||(Cr[n]=[]),Cr[n].push({name:t,func:r})}})),Cr[Ui(i,2).name]=[{name:"wrapper",func:i}],Hr.prototype.clone=function(){var e=new Hr(this.__wrapped__);return e.__actions__=Ti(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Ti(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Ti(this.__views__),e},Hr.prototype.reverse=function(){if(this.__filtered__){var e=new Hr(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Hr.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,r=Va(e),n=t<0,i=r?e.length:0,o=function(e,t,r){var n=-1,i=r.length;for(;++n=this.__values__.length;return{done:e,value:e?i:this.__values__[this.__index__++]}},Br.prototype.plant=function(e){for(var t,r=this;r instanceof Fr;){var n=Bo(r);n.__index__=0,n.__values__=i,t?o.__wrapped__=n:t=n;var o=n;r=r.__wrapped__}return o.__wrapped__=e,t},Br.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Hr){var t=e;return this.__actions__.length&&(t=new Hr(this)),(t=t.reverse()).__actions__.push({func:fa,args:[ea],thisArg:i}),new $r(t,this.__chain__)}return this.thru(ea)},Br.prototype.toJSON=Br.prototype.valueOf=Br.prototype.value=function(){return pi(this.__wrapped__,this.__actions__)},Br.prototype.first=Br.prototype.head,Xe&&(Br.prototype[Xe]=function(){return this}),Br}();mt._=vr,(n=function(){return vr}.call(t,r,t,e))===i||(e.exports=n)}.call(this)},8634:function(e,t,r){var n,i;!function(o,a){"use strict";n=function(){var e=function(){},t="undefined",r=typeof window!==t&&typeof window.navigator!==t&&/Trident\/|MSIE /.test(window.navigator.userAgent),n=["trace","debug","info","warn","error"];function i(e,t){var r=e[t];if("function"===typeof r.bind)return r.bind(e);try{return Function.prototype.bind.call(r,e)}catch(n){return function(){return Function.prototype.apply.apply(r,[e,arguments])}}}function o(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function a(n){return"debug"===n&&(n="log"),typeof console!==t&&("trace"===n&&r?o:void 0!==console[n]?i(console,n):void 0!==console.log?i(console,"log"):e)}function s(t,r){for(var i=0;i=0&&r<=a.levels.SILENT))throw"log.setLevel() called with invalid level: "+r;if(o=r,!1!==n&&u(r),s.call(a,r,e),typeof console===t&&r{"use strict";const n=r(9616),i=Symbol("max"),o=Symbol("length"),a=Symbol("lengthCalculator"),s=Symbol("allowStale"),c=Symbol("maxAge"),l=Symbol("dispose"),u=Symbol("noDisposeOnSet"),d=Symbol("lruList"),h=Symbol("cache"),f=Symbol("updateAgeOnGet"),p=()=>1;const m=(e,t,r)=>{const n=e[h].get(t);if(n){const t=n.value;if(g(e,t)){if(y(e,n),!e[s])return}else r&&(e[f]&&(n.value.now=Date.now()),e[d].unshiftNode(n));return t.value}},g=(e,t)=>{if(!t||!t.maxAge&&!e[c])return!1;const r=Date.now()-t.now;return t.maxAge?r>t.maxAge:e[c]&&r>e[c]},v=e=>{if(e[o]>e[i])for(let t=e[d].tail;e[o]>e[i]&&null!==t;){const r=t.prev;y(e,t),t=r}},y=(e,t)=>{if(t){const r=t.value;e[l]&&e[l](r.key,r.value),e[o]-=r.length,e[h].delete(r.key),e[d].removeNode(t)}};class b{constructor(e,t,r,n,i){this.key=e,this.value=t,this.length=r,this.now=n,this.maxAge=i||0}}const w=(e,t,r,n)=>{let i=r.value;g(e,i)&&(y(e,r),e[s]||(i=void 0)),i&&t.call(n,i.value,i.key,e)};e.exports=class{constructor(e){if("number"===typeof e&&(e={max:e}),e||(e={}),e.max&&("number"!==typeof e.max||e.max<0))throw new TypeError("max must be a non-negative number");this[i]=e.max||1/0;const t=e.length||p;if(this[a]="function"!==typeof t?p:t,this[s]=e.stale||!1,e.maxAge&&"number"!==typeof e.maxAge)throw new TypeError("maxAge must be a number");this[c]=e.maxAge||0,this[l]=e.dispose,this[u]=e.noDisposeOnSet||!1,this[f]=e.updateAgeOnGet||!1,this.reset()}set max(e){if("number"!==typeof e||e<0)throw new TypeError("max must be a non-negative number");this[i]=e||1/0,v(this)}get max(){return this[i]}set allowStale(e){this[s]=!!e}get allowStale(){return this[s]}set maxAge(e){if("number"!==typeof e)throw new TypeError("maxAge must be a non-negative number");this[c]=e,v(this)}get maxAge(){return this[c]}set lengthCalculator(e){"function"!==typeof e&&(e=p),e!==this[a]&&(this[a]=e,this[o]=0,this[d].forEach((e=>{e.length=this[a](e.value,e.key),this[o]+=e.length}))),v(this)}get lengthCalculator(){return this[a]}get length(){return this[o]}get itemCount(){return this[d].length}rforEach(e,t){t=t||this;for(let r=this[d].tail;null!==r;){const n=r.prev;w(this,e,r,t),r=n}}forEach(e,t){t=t||this;for(let r=this[d].head;null!==r;){const n=r.next;w(this,e,r,t),r=n}}keys(){return this[d].toArray().map((e=>e.key))}values(){return this[d].toArray().map((e=>e.value))}reset(){this[l]&&this[d]&&this[d].length&&this[d].forEach((e=>this[l](e.key,e.value))),this[h]=new Map,this[d]=new n,this[o]=0}dump(){return this[d].map((e=>!g(this,e)&&{k:e.key,v:e.value,e:e.now+(e.maxAge||0)})).toArray().filter((e=>e))}dumpLru(){return this[d]}set(e,t,r){if((r=r||this[c])&&"number"!==typeof r)throw new TypeError("maxAge must be a number");const n=r?Date.now():0,s=this[a](t,e);if(this[h].has(e)){if(s>this[i])return y(this,this[h].get(e)),!1;const a=this[h].get(e).value;return this[l]&&(this[u]||this[l](e,a.value)),a.now=n,a.maxAge=r,a.value=t,this[o]+=s-a.length,a.length=s,this.get(e),v(this),!0}const f=new b(e,t,s,n,r);return f.length>this[i]?(this[l]&&this[l](e,t),!1):(this[o]+=f.length,this[d].unshift(f),this[h].set(e,this[d].head),v(this),!0)}has(e){if(!this[h].has(e))return!1;const t=this[h].get(e).value;return!g(this,t)}get(e){return m(this,e,!0)}peek(e){return m(this,e,!1)}pop(){const e=this[d].tail;return e?(y(this,e),e.value):null}del(e){y(this,this[h].get(e))}load(e){this.reset();const t=Date.now();for(let r=e.length-1;r>=0;r--){const n=e[r],i=n.e||0;if(0===i)this.set(n.k,n.v);else{const e=i-t;e>0&&this.set(n.k,n.v,e)}}}prune(){this[h].forEach(((e,t)=>m(this,t,!1)))}}},4768:(e,t,r)=>{"use strict";var n=r(637),i=r(8682),o=r(6293).Buffer,a=new Array(16);function s(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function c(e,t){return e<>>32-t}function l(e,t,r,n,i,o,a){return c(e+(t&r|~t&n)+i+o|0,a)+t|0}function u(e,t,r,n,i,o,a){return c(e+(t&n|r&~n)+i+o|0,a)+t|0}function d(e,t,r,n,i,o,a){return c(e+(t^r^n)+i+o|0,a)+t|0}function h(e,t,r,n,i,o,a){return c(e+(r^(t|~n))+i+o|0,a)+t|0}n(s,i),s.prototype._update=function(){for(var e=a,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var r=this._a,n=this._b,i=this._c,o=this._d;r=l(r,n,i,o,e[0],3614090360,7),o=l(o,r,n,i,e[1],3905402710,12),i=l(i,o,r,n,e[2],606105819,17),n=l(n,i,o,r,e[3],3250441966,22),r=l(r,n,i,o,e[4],4118548399,7),o=l(o,r,n,i,e[5],1200080426,12),i=l(i,o,r,n,e[6],2821735955,17),n=l(n,i,o,r,e[7],4249261313,22),r=l(r,n,i,o,e[8],1770035416,7),o=l(o,r,n,i,e[9],2336552879,12),i=l(i,o,r,n,e[10],4294925233,17),n=l(n,i,o,r,e[11],2304563134,22),r=l(r,n,i,o,e[12],1804603682,7),o=l(o,r,n,i,e[13],4254626195,12),i=l(i,o,r,n,e[14],2792965006,17),r=u(r,n=l(n,i,o,r,e[15],1236535329,22),i,o,e[1],4129170786,5),o=u(o,r,n,i,e[6],3225465664,9),i=u(i,o,r,n,e[11],643717713,14),n=u(n,i,o,r,e[0],3921069994,20),r=u(r,n,i,o,e[5],3593408605,5),o=u(o,r,n,i,e[10],38016083,9),i=u(i,o,r,n,e[15],3634488961,14),n=u(n,i,o,r,e[4],3889429448,20),r=u(r,n,i,o,e[9],568446438,5),o=u(o,r,n,i,e[14],3275163606,9),i=u(i,o,r,n,e[3],4107603335,14),n=u(n,i,o,r,e[8],1163531501,20),r=u(r,n,i,o,e[13],2850285829,5),o=u(o,r,n,i,e[2],4243563512,9),i=u(i,o,r,n,e[7],1735328473,14),r=d(r,n=u(n,i,o,r,e[12],2368359562,20),i,o,e[5],4294588738,4),o=d(o,r,n,i,e[8],2272392833,11),i=d(i,o,r,n,e[11],1839030562,16),n=d(n,i,o,r,e[14],4259657740,23),r=d(r,n,i,o,e[1],2763975236,4),o=d(o,r,n,i,e[4],1272893353,11),i=d(i,o,r,n,e[7],4139469664,16),n=d(n,i,o,r,e[10],3200236656,23),r=d(r,n,i,o,e[13],681279174,4),o=d(o,r,n,i,e[0],3936430074,11),i=d(i,o,r,n,e[3],3572445317,16),n=d(n,i,o,r,e[6],76029189,23),r=d(r,n,i,o,e[9],3654602809,4),o=d(o,r,n,i,e[12],3873151461,11),i=d(i,o,r,n,e[15],530742520,16),r=h(r,n=d(n,i,o,r,e[2],3299628645,23),i,o,e[0],4096336452,6),o=h(o,r,n,i,e[7],1126891415,10),i=h(i,o,r,n,e[14],2878612391,15),n=h(n,i,o,r,e[5],4237533241,21),r=h(r,n,i,o,e[12],1700485571,6),o=h(o,r,n,i,e[3],2399980690,10),i=h(i,o,r,n,e[10],4293915773,15),n=h(n,i,o,r,e[1],2240044497,21),r=h(r,n,i,o,e[8],1873313359,6),o=h(o,r,n,i,e[15],4264355552,10),i=h(i,o,r,n,e[6],2734768916,15),n=h(n,i,o,r,e[13],1309151649,21),r=h(r,n,i,o,e[4],4149444226,6),o=h(o,r,n,i,e[11],3174756917,10),i=h(i,o,r,n,e[2],718787259,15),n=h(n,i,o,r,e[9],3951481745,21),this._a=this._a+r|0,this._b=this._b+n|0,this._c=this._c+i|0,this._d=this._d+o|0},s.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=o.allocUnsafe(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e},e.exports=s},9685:(e,t,r)=>{!function(){var t=r(9799),n=r(7821).utf8,i=r(2311),o=r(7821).bin,a=function(e,r){e.constructor==String?e=r&&"binary"===r.encoding?o.stringToBytes(e):n.stringToBytes(e):i(e)?e=Array.prototype.slice.call(e,0):Array.isArray(e)||e.constructor===Uint8Array||(e=e.toString());for(var s=t.bytesToWords(e),c=8*e.length,l=1732584193,u=-271733879,d=-1732584194,h=271733878,f=0;f>>24)|4278255360&(s[f]<<24|s[f]>>>8);s[c>>>5]|=128<>>9<<4)]=c;var p=a._ff,m=a._gg,g=a._hh,v=a._ii;for(f=0;f>>0,u=u+b>>>0,d=d+w>>>0,h=h+x>>>0}return t.endian([l,u,d,h])};a._ff=function(e,t,r,n,i,o,a){var s=e+(t&r|~t&n)+(i>>>0)+a;return(s<>>32-o)+t},a._gg=function(e,t,r,n,i,o,a){var s=e+(t&n|r&~n)+(i>>>0)+a;return(s<>>32-o)+t},a._hh=function(e,t,r,n,i,o,a){var s=e+(t^r^n)+(i>>>0)+a;return(s<>>32-o)+t},a._ii=function(e,t,r,n,i,o,a){var s=e+(r^(t|~n))+(i>>>0)+a;return(s<>>32-o)+t},a._blocksize=16,a._digestsize=16,e.exports=function(e,r){if(void 0===e||null===e)throw new Error("Illegal argument "+e);var n=t.wordsToBytes(a(e,r));return r&&r.asBytes?n:r&&r.asString?o.bytesToString(n):t.bytesToHex(n)}}()},9961:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>o});var n=Number.isNaN||function(e){return"number"===typeof e&&e!==e};function i(e,t){if(e.length!==t.length)return!1;for(var r=0;r{function t(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=t,t.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)}},5659:(e,t)=>{"use strict";var r=t;function n(e){return 1===e.length?"0"+e:e}function i(e){for(var t="",r=0;r>8,a=255&i;o?r.push(o,a):r.push(a)}return r},r.zero2=n,r.toHex=i,r.encode=function(e,t){return"hex"===t?i(e):e}},2329:(e,t,r)=>{"use strict";var n=function(){if("undefined"!==typeof self)return self;if("undefined"!==typeof window)return window;if("undefined"!==typeof r.g)return r.g;throw new Error("unable to locate global object")}();e.exports=t=n.fetch,n.fetch&&(t.default=n.fetch.bind(n)),t.Headers=n.Headers,t.Request=n.Request,t.Response=n.Response},5199:function(e,t){var r,n,i;n=[],r=function e(){"use strict";var t="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==t?t:{},r=!t.document&&!!t.postMessage,n=t.IS_PAPA_WORKER||!1,i={},o=0,a={parse:function(r,n){var s=(n=n||{}).dynamicTyping||!1;if(x(s)&&(n.dynamicTypingFunction=s,s={}),n.dynamicTyping=s,n.transform=!!x(n.transform)&&n.transform,n.worker&&a.WORKERS_SUPPORTED){var c=function(){if(!a.WORKERS_SUPPORTED)return!1;var r,n,s=(r=t.URL||t.webkitURL||null,n=e.toString(),a.BLOB_URL||(a.BLOB_URL=r.createObjectURL(new Blob(["var global = (function() { if (typeof self !== 'undefined') { return self; } if (typeof window !== 'undefined') { return window; } if (typeof global !== 'undefined') { return global; } return {}; })(); global.IS_PAPA_WORKER=true; ","(",n,")();"],{type:"text/javascript"})))),c=new t.Worker(s);return c.onmessage=g,c.id=o++,i[c.id]=c}();return c.userStep=n.step,c.userChunk=n.chunk,c.userComplete=n.complete,c.userError=n.error,n.step=x(n.step),n.chunk=x(n.chunk),n.complete=x(n.complete),n.error=x(n.error),delete n.worker,void c.postMessage({input:r,config:n,workerId:c.id})}var f=null;return a.NODE_STREAM_INPUT,"string"==typeof r?(r=function(e){return 65279===e.charCodeAt(0)?e.slice(1):e}(r),f=n.download?new l(n):new d(n)):!0===r.readable&&x(r.read)&&x(r.on)?f=new h(n):(t.File&&r instanceof File||r instanceof Object)&&(f=new u(n)),f.stream(r)},unparse:function(e,t){var r=!1,n=!0,i=",",o="\r\n",s='"',c=s+s,l=!1,u=null,d=!1;!function(){if("object"==typeof t){if("string"!=typeof t.delimiter||a.BAD_DELIMITERS.filter((function(e){return-1!==t.delimiter.indexOf(e)})).length||(i=t.delimiter),("boolean"==typeof t.quotes||"function"==typeof t.quotes||Array.isArray(t.quotes))&&(r=t.quotes),"boolean"!=typeof t.skipEmptyLines&&"string"!=typeof t.skipEmptyLines||(l=t.skipEmptyLines),"string"==typeof t.newline&&(o=t.newline),"string"==typeof t.quoteChar&&(s=t.quoteChar),"boolean"==typeof t.header&&(n=t.header),Array.isArray(t.columns)){if(0===t.columns.length)throw new Error("Option columns is empty");u=t.columns}void 0!==t.escapeChar&&(c=t.escapeChar+s),("boolean"==typeof t.escapeFormulae||t.escapeFormulae instanceof RegExp)&&(d=t.escapeFormulae instanceof RegExp?t.escapeFormulae:/^[=+\-@\t\r].*$/)}}();var h=new RegExp(p(s),"g");if("string"==typeof e&&(e=JSON.parse(e)),Array.isArray(e)){if(!e.length||Array.isArray(e[0]))return f(null,e,l);if("object"==typeof e[0])return f(u||Object.keys(e[0]),e,l)}else if("object"==typeof e)return"string"==typeof e.data&&(e.data=JSON.parse(e.data)),Array.isArray(e.data)&&(e.fields||(e.fields=e.meta&&e.meta.fields||u),e.fields||(e.fields=Array.isArray(e.data[0])?e.fields:"object"==typeof e.data[0]?Object.keys(e.data[0]):[]),Array.isArray(e.data[0])||"object"==typeof e.data[0]||(e.data=[e.data])),f(e.fields||[],e.data||[],l);throw new Error("Unable to serialize unrecognized input");function f(e,t,r){var a="";"string"==typeof e&&(e=JSON.parse(e)),"string"==typeof t&&(t=JSON.parse(t));var s=Array.isArray(e)&&0=this._config.preview;if(n)t.postMessage({results:s,workerId:a.WORKER_ID,finished:l});else if(x(this._config.chunk)&&!r){if(this._config.chunk(s,this._handle),this._handle.paused()||this._handle.aborted())return void(this._halted=!0);s=void 0,this._completeResults=void 0}return this._config.step||this._config.chunk||(this._completeResults.data=this._completeResults.data.concat(s.data),this._completeResults.errors=this._completeResults.errors.concat(s.errors),this._completeResults.meta=s.meta),this._completed||!l||!x(this._config.complete)||s&&s.meta.aborted||(this._config.complete(this._completeResults,this._input),this._completed=!0),l||s&&s.meta.paused||this._nextChunk(),s}this._halted=!0},this._sendError=function(e){x(this._config.error)?this._config.error(e):n&&this._config.error&&t.postMessage({workerId:a.WORKER_ID,error:e,finished:!1})}}function l(e){var t;(e=e||{}).chunkSize||(e.chunkSize=a.RemoteChunkSize),c.call(this,e),this._nextChunk=r?function(){this._readChunk(),this._chunkLoaded()}:function(){this._readChunk()},this.stream=function(e){this._input=e,this._nextChunk()},this._readChunk=function(){if(this._finished)this._chunkLoaded();else{if(t=new XMLHttpRequest,this._config.withCredentials&&(t.withCredentials=this._config.withCredentials),r||(t.onload=w(this._chunkLoaded,this),t.onerror=w(this._chunkError,this)),t.open(this._config.downloadRequestBody?"POST":"GET",this._input,!r),this._config.downloadRequestHeaders){var e=this._config.downloadRequestHeaders;for(var n in e)t.setRequestHeader(n,e[n])}if(this._config.chunkSize){var i=this._start+this._config.chunkSize-1;t.setRequestHeader("Range","bytes="+this._start+"-"+i)}try{t.send(this._config.downloadRequestBody)}catch(e){this._chunkError(e.message)}r&&0===t.status&&this._chunkError()}},this._chunkLoaded=function(){4===t.readyState&&(t.status<200||400<=t.status?this._chunkError():(this._start+=this._config.chunkSize?this._config.chunkSize:t.responseText.length,this._finished=!this._config.chunkSize||this._start>=function(e){var t=e.getResponseHeader("Content-Range");return null===t?-1:parseInt(t.substring(t.lastIndexOf("/")+1))}(t),this.parseChunk(t.responseText)))},this._chunkError=function(e){var r=t.statusText||e;this._sendError(new Error(r))}}function u(e){var t,r;(e=e||{}).chunkSize||(e.chunkSize=a.LocalChunkSize),c.call(this,e);var n="undefined"!=typeof FileReader;this.stream=function(e){this._input=e,r=e.slice||e.webkitSlice||e.mozSlice,n?((t=new FileReader).onload=w(this._chunkLoaded,this),t.onerror=w(this._chunkError,this)):t=new FileReaderSync,this._nextChunk()},this._nextChunk=function(){this._finished||this._config.preview&&!(this._rowCount=this._input.size,this.parseChunk(e.target.result)},this._chunkError=function(){this._sendError(t.error)}}function d(e){var t;c.call(this,e=e||{}),this.stream=function(e){return t=e,this._nextChunk()},this._nextChunk=function(){if(!this._finished){var e,r=this._config.chunkSize;return r?(e=t.substring(0,r),t=t.substring(r)):(e=t,t=""),this._finished=!t,this.parseChunk(e)}}}function h(e){c.call(this,e=e||{});var t=[],r=!0,n=!1;this.pause=function(){c.prototype.pause.apply(this,arguments),this._input.pause()},this.resume=function(){c.prototype.resume.apply(this,arguments),this._input.resume()},this.stream=function(e){this._input=e,this._input.on("data",this._streamData),this._input.on("end",this._streamEnd),this._input.on("error",this._streamError)},this._checkIsFinished=function(){n&&1===t.length&&(this._finished=!0)},this._nextChunk=function(){this._checkIsFinished(),t.length?this.parseChunk(t.shift()):r=!0},this._streamData=w((function(e){try{t.push("string"==typeof e?e:e.toString(this._config.encoding)),r&&(r=!1,this._checkIsFinished(),this.parseChunk(t.shift()))}catch(e){this._streamError(e)}}),this),this._streamError=w((function(e){this._streamCleanUp(),this._sendError(e)}),this),this._streamEnd=w((function(){this._streamCleanUp(),n=!0,this._streamData("")}),this),this._streamCleanUp=w((function(){this._input.removeListener("data",this._streamData),this._input.removeListener("end",this._streamEnd),this._input.removeListener("error",this._streamError)}),this)}function f(e){var t,r,n,i=Math.pow(2,53),o=-i,s=/^\s*-?(\d+\.?|\.\d+|\d+\.\d+)([eE][-+]?\d+)?\s*$/,c=/^((\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z)))$/,l=this,u=0,d=0,h=!1,f=!1,g=[],v={data:[],errors:[],meta:{}};if(x(e.step)){var y=e.step;e.step=function(t){if(v=t,S())_();else{if(_(),0===v.data.length)return;u+=t.data.length,e.preview&&u>e.preview?r.abort():(v.data=v.data[0],y(v,l))}}}function w(t){return"greedy"===e.skipEmptyLines?""===t.join("").trim():1===t.length&&0===t[0].length}function _(){return v&&n&&(E("Delimiter","UndetectableDelimiter","Unable to auto-detect delimiting character; defaulted to '"+a.DefaultDelimiter+"'"),n=!1),e.skipEmptyLines&&(v.data=v.data.filter((function(e){return!w(e)}))),S()&&function(){if(v)if(Array.isArray(v.data[0])){for(var t=0;S()&&t=g.length?"__parsed_extra":g[n]),e.transform&&(a=e.transform(a,o)),a=k(o,a),"__parsed_extra"===o?(i[o]=i[o]||[],i[o].push(a)):i[o]=a}return e.header&&(n>g.length?E("FieldMismatch","TooManyFields","Too many fields: expected "+g.length+" fields but parsed "+n,d+r):n=n.length/2?"\r\n":"\r"}(i,c)),n=!1,e.delimiter)x(e.delimiter)&&(e.delimiter=e.delimiter(i),v.meta.delimiter=e.delimiter);else{var l=function(t,r,n,i,o){var s,c,l,u;o=o||[",","\t","|",";",a.RECORD_SEP,a.UNIT_SEP];for(var d=0;d=s)return K(!0)}else for(B=u,u++;;){if(-1===(B=a.indexOf(t,B+1)))return f||_.push({type:"Quotes",code:"MissingQuotes",message:"Quoted field unterminated",row:w.length,index:u}),V();if(B===m-1)return V(a.substring(u,B).replace(z,t));if(t!==l||a[B+1]!==l){if(t===l||0===B||a[B-1]!==l){-1!==N&&N=s)return K(!0);break}_.push({type:"Quotes",code:"InvalidQuotes",message:"Trailing quote on quoted field is malformed",row:w.length,index:u}),B++}}else B++}return V();function $(e){w.push(e),k=u}function H(e){var t=0;if(-1!==e){var r=a.substring(B+1,e);r&&""===r.trim()&&(t=r.length)}return t}function V(e){return f||(void 0===e&&(e=a.substring(u)),S.push(e),u=m,$(S),b&&W()),K()}function q(e){u=e,$(S),S=[],D=a.indexOf(n,u)}function K(e){return{data:w,errors:_,meta:{delimiter:r,linebreak:n,aborted:d,truncated:!!e,cursor:k+(h||0)}}}function W(){o(K()),w=[],_=[]}},this.abort=function(){d=!0},this.getCharIndex=function(){return u}}function g(e){var t=e.data,r=i[t.workerId],n=!1;if(t.error)r.userError(t.error,t.file);else if(t.results&&t.results.data){var o={abort:function(){n=!0,v(t.workerId,{data:[],errors:[],meta:{aborted:!0}})},pause:y,resume:y};if(x(r.userStep)){for(var a=0;a{t.pbkdf2=r(8998),t.pbkdf2Sync=r(8886)},8998:(e,t,r)=>{var n,i,o=r(6293).Buffer,a=r(9612),s=r(905),c=r(8886),l=r(5825),u=r.g.crypto&&r.g.crypto.subtle,d={sha:"SHA-1","sha-1":"SHA-1",sha1:"SHA-1",sha256:"SHA-256","sha-256":"SHA-256",sha384:"SHA-384","sha-384":"SHA-384","sha-512":"SHA-512",sha512:"SHA-512"},h=[];function f(){return i||(i=r.g.process&&r.g.process.nextTick?r.g.process.nextTick:r.g.queueMicrotask?r.g.queueMicrotask:r.g.setImmediate?r.g.setImmediate:r.g.setTimeout)}function p(e,t,r,n,i){return u.importKey("raw",e,{name:"PBKDF2"},!1,["deriveBits"]).then((function(e){return u.deriveBits({name:"PBKDF2",salt:t,iterations:r,hash:{name:i}},e,n<<3)})).then((function(e){return o.from(e)}))}e.exports=function(e,t,i,m,g,v){"function"===typeof g&&(v=g,g=void 0);var y=d[(g=g||"sha1").toLowerCase()];if(y&&"function"===typeof r.g.Promise){if(a(i,m),e=l(e,s,"Password"),t=l(t,s,"Salt"),"function"!==typeof v)throw new Error("No callback provided to pbkdf2");!function(e,t){e.then((function(e){f()((function(){t(null,e)}))}),(function(e){f()((function(){t(e)}))}))}(function(e){if(r.g.process&&!r.g.process.browser)return Promise.resolve(!1);if(!u||!u.importKey||!u.deriveBits)return Promise.resolve(!1);if(void 0!==h[e])return h[e];var t=p(n=n||o.alloc(8),n,10,128,e).then((function(){return!0})).catch((function(){return!1}));return h[e]=t,t}(y).then((function(r){return r?p(e,t,i,m,y):c(e,t,i,m,g)})),v)}else f()((function(){var r;try{r=c(e,t,i,m,g)}catch(n){return v(n)}v(null,r)}))}},905:(e,t,r)=>{var n,i=r(5469);if(r.g.process&&r.g.process.browser)n="utf-8";else if(r.g.process&&r.g.process.version){n=parseInt(i.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary"}else n="utf-8";e.exports=n},9612:e=>{var t=Math.pow(2,30)-1;e.exports=function(e,r){if("number"!==typeof e)throw new TypeError("Iterations not a number");if(e<0)throw new TypeError("Bad iterations");if("number"!==typeof r)throw new TypeError("Key length not a number");if(r<0||r>t||r!==r)throw new TypeError("Bad key length")}},8886:(e,t,r)=>{var n=r(8533),i=r(4805),o=r(6478),a=r(6293).Buffer,s=r(9612),c=r(905),l=r(5825),u=a.alloc(128),d={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function h(e,t,r){var s=function(e){function t(t){return o(e).update(t).digest()}function r(e){return(new i).update(e).digest()}return"rmd160"===e||"ripemd160"===e?r:"md5"===e?n:t}(e),c="sha512"===e||"sha384"===e?128:64;t.length>c?t=s(t):t.length{var n=r(6293).Buffer;e.exports=function(e,t,r){if(n.isBuffer(e))return e;if("string"===typeof e)return n.from(e,t);if(ArrayBuffer.isView(e))return n.from(e.buffer);throw new TypeError(r+" must be a string, a Buffer, a typed array or a DataView")}},9095:function(e){e.exports=function(){var e=[],t=[],r={},n={},i={};function o(e){return"string"===typeof e?new RegExp("^"+e+"$","i"):e}function a(e,t){return e===t?t:e===e.toLowerCase()?t.toLowerCase():e===e.toUpperCase()?t.toUpperCase():e[0]===e[0].toUpperCase()?t.charAt(0).toUpperCase()+t.substr(1).toLowerCase():t.toLowerCase()}function s(e,t){return e.replace(/\$(\d{1,2})/g,(function(e,r){return t[r]||""}))}function c(e,t){return e.replace(t[0],(function(r,n){var i=s(t[1],arguments);return a(""===r?e[n-1]:r,i)}))}function l(e,t,n){if(!e.length||r.hasOwnProperty(e))return t;for(var i=n.length;i--;){var o=n[i];if(o[0].test(t))return c(t,o)}return t}function u(e,t,r){return function(n){var i=n.toLowerCase();return t.hasOwnProperty(i)?a(n,i):e.hasOwnProperty(i)?a(n,e[i]):l(i,n,r)}}function d(e,t,r,n){return function(n){var i=n.toLowerCase();return!!t.hasOwnProperty(i)||!e.hasOwnProperty(i)&&l(i,i,r)===i}}function h(e,t,r){return(r?t+" ":"")+(1===t?h.singular(e):h.plural(e))}return h.plural=u(i,n,e),h.isPlural=d(i,n,e),h.singular=u(n,i,t),h.isSingular=d(n,i,t),h.addPluralRule=function(t,r){e.push([o(t),r])},h.addSingularRule=function(e,r){t.push([o(e),r])},h.addUncountableRule=function(e){"string"!==typeof e?(h.addPluralRule(e,"$0"),h.addSingularRule(e,"$0")):r[e.toLowerCase()]=!0},h.addIrregularRule=function(e,t){t=t.toLowerCase(),e=e.toLowerCase(),i[e]=t,n[t]=e},[["I","we"],["me","us"],["he","they"],["she","they"],["them","them"],["myself","ourselves"],["yourself","yourselves"],["itself","themselves"],["herself","themselves"],["himself","themselves"],["themself","themselves"],["is","are"],["was","were"],["has","have"],["this","these"],["that","those"],["echo","echoes"],["dingo","dingoes"],["volcano","volcanoes"],["tornado","tornadoes"],["torpedo","torpedoes"],["genus","genera"],["viscus","viscera"],["stigma","stigmata"],["stoma","stomata"],["dogma","dogmata"],["lemma","lemmata"],["schema","schemata"],["anathema","anathemata"],["ox","oxen"],["axe","axes"],["die","dice"],["yes","yeses"],["foot","feet"],["eave","eaves"],["goose","geese"],["tooth","teeth"],["quiz","quizzes"],["human","humans"],["proof","proofs"],["carve","carves"],["valve","valves"],["looey","looies"],["thief","thieves"],["groove","grooves"],["pickaxe","pickaxes"],["passerby","passersby"]].forEach((function(e){return h.addIrregularRule(e[0],e[1])})),[[/s?$/i,"s"],[/[^\u0000-\u007F]$/i,"$0"],[/([^aeiou]ese)$/i,"$1"],[/(ax|test)is$/i,"$1es"],[/(alias|[^aou]us|t[lm]as|gas|ris)$/i,"$1es"],[/(e[mn]u)s?$/i,"$1s"],[/([^l]ias|[aeiou]las|[ejzr]as|[iu]am)$/i,"$1"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1i"],[/(alumn|alg|vertebr)(?:a|ae)$/i,"$1ae"],[/(seraph|cherub)(?:im)?$/i,"$1im"],[/(her|at|gr)o$/i,"$1oes"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i,"$1a"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i,"$1a"],[/sis$/i,"ses"],[/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i,"$1$2ves"],[/([^aeiouy]|qu)y$/i,"$1ies"],[/([^ch][ieo][ln])ey$/i,"$1ies"],[/(x|ch|ss|sh|zz)$/i,"$1es"],[/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i,"$1ices"],[/\b((?:tit)?m|l)(?:ice|ouse)$/i,"$1ice"],[/(pe)(?:rson|ople)$/i,"$1ople"],[/(child)(?:ren)?$/i,"$1ren"],[/eaux$/i,"$0"],[/m[ae]n$/i,"men"],["thou","you"]].forEach((function(e){return h.addPluralRule(e[0],e[1])})),[[/s$/i,""],[/(ss)$/i,"$1"],[/(wi|kni|(?:after|half|high|low|mid|non|night|[^\w]|^)li)ves$/i,"$1fe"],[/(ar|(?:wo|[ae])l|[eo][ao])ves$/i,"$1f"],[/ies$/i,"y"],[/\b([pl]|zomb|(?:neck|cross)?t|coll|faer|food|gen|goon|group|lass|talk|goal|cut)ies$/i,"$1ie"],[/\b(mon|smil)ies$/i,"$1ey"],[/\b((?:tit)?m|l)ice$/i,"$1ouse"],[/(seraph|cherub)im$/i,"$1"],[/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|t[lm]as|gas|(?:her|at|gr)o|[aeiou]ris)(?:es)?$/i,"$1"],[/(analy|diagno|parenthe|progno|synop|the|empha|cri|ne)(?:sis|ses)$/i,"$1sis"],[/(movie|twelve|abuse|e[mn]u)s$/i,"$1"],[/(test)(?:is|es)$/i,"$1is"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1us"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i,"$1um"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i,"$1on"],[/(alumn|alg|vertebr)ae$/i,"$1a"],[/(cod|mur|sil|vert|ind)ices$/i,"$1ex"],[/(matr|append)ices$/i,"$1ix"],[/(pe)(rson|ople)$/i,"$1rson"],[/(child)ren$/i,"$1"],[/(eau)x?$/i,"$1"],[/men$/i,"man"]].forEach((function(e){return h.addSingularRule(e[0],e[1])})),["adulthood","advice","agenda","aid","aircraft","alcohol","ammo","analytics","anime","athletics","audio","bison","blood","bream","buffalo","butter","carp","cash","chassis","chess","clothing","cod","commerce","cooperation","corps","debris","diabetes","digestion","elk","energy","equipment","excretion","expertise","firmware","flounder","fun","gallows","garbage","graffiti","hardware","headquarters","health","herpes","highjinks","homework","housework","information","jeans","justice","kudos","labour","literature","machinery","mackerel","mail","media","mews","moose","music","mud","manga","news","only","personnel","pike","plankton","pliers","police","pollution","premises","rain","research","rice","salmon","scissors","series","sewage","shambles","shrimp","software","species","staff","swine","tennis","traffic","transportation","trout","tuna","wealth","welfare","whiting","wildebeest","wildlife","you",/pok[e\xe9]mon$/i,/[^aeiou]ese$/i,/deer$/i,/fish$/i,/measles$/i,/o[iu]s$/i,/pox$/i,/sheep$/i].forEach(h.addUncountableRule),h}()},5469:e=>{var t,r,n=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function a(e){if(t===setTimeout)return setTimeout(e,0);if((t===i||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(r){try{return t.call(null,e,0)}catch(r){return t.call(this,e,0)}}}!function(){try{t="function"===typeof setTimeout?setTimeout:i}catch(e){t=i}try{r="function"===typeof clearTimeout?clearTimeout:o}catch(e){r=o}}();var s,c=[],l=!1,u=-1;function d(){l&&s&&(l=!1,s.length?c=s.concat(c):u=-1,c.length&&h())}function h(){if(!l){var e=a(d);l=!0;for(var t=c.length;t;){for(s=c,c=[];++u1)for(var r=1;r{"use strict";var n=r(7581),i=r(3392),o=Object.prototype.hasOwnProperty;function a(e){return e&&"EPROMISERETRY"===e.code&&o.call(e,"retried")}e.exports=function(e,t){var r,o;return"object"===typeof e&&"function"===typeof t&&(r=t,t=e,e=r),o=i.operation(t),new Promise((function(t,r){o.attempt((function(i){Promise.resolve().then((function(){return e((function(e){throw a(e)&&(e=e.retried),n(new Error("Retrying"),"EPROMISERETRY",{retried:e})}),i)})).then(t,(function(e){a(e)&&(e=e.retried,o.retry(e||new Error))||r(e)}))}))}))}},2233:(e,t,r)=>{"use strict";var n=r(1681);function i(){}function o(){}o.resetWarningCache=i,e.exports=function(){function e(e,t,r,i,o,a){if(a!==n){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:i};return r.PropTypes=r,r}},8795:(e,t,r)=>{e.exports=r(2233)()},1681:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},3330:(e,t)=>{var r,n,i,o=function(){var e=function(e,t){var r=e,n=o[t],i=null,a=0,s=null,c=[],l={},u=function(e,t){i=function(e){for(var t=new Array(e),r=0;r=7&&m(e),null==s&&(s=A(r,n,c)),k(s,t)},d=function(e,t){for(var r=-1;r<=7;r+=1)if(!(e+r<=-1||a<=e+r))for(var n=-1;n<=7;n+=1)t+n<=-1||a<=t+n||(i[e+r][t+n]=0<=r&&r<=6&&(0==n||6==n)||0<=n&&n<=6&&(0==r||6==r)||2<=r&&r<=4&&2<=n&&n<=4)},h=function(){for(var e=8;e>n&1);i[Math.floor(n/3)][n%3+a-8-3]=o}for(n=0;n<18;n+=1){o=!e&&1==(t>>n&1);i[n%3+a-8-3][Math.floor(n/3)]=o}},S=function(e,t){for(var r=n<<3|t,o=p.getBCHTypeInfo(r),s=0;s<15;s+=1){var c=!e&&1==(o>>s&1);s<6?i[s][8]=c:s<8?i[s+1][8]=c:i[a-15+s][8]=c}for(s=0;s<15;s+=1){c=!e&&1==(o>>s&1);s<8?i[8][a-s-1]=c:s<9?i[8][15-s-1+1]=c:i[8][15-s-1]=c}i[a-8][8]=!e},k=function(e,t){for(var r=-1,n=a-1,o=7,s=0,c=p.getMaskFunction(t),l=a-1;l>0;l-=2)for(6==l&&(l-=1);;){for(var u=0;u<2;u+=1)if(null==i[n][l-u]){var d=!1;s>>o&1)),c(n,l-u)&&(d=!d),i[n][l-u]=d,-1==(o-=1)&&(s+=1,o=7)}if((n+=r)<0||a<=n){n-=r,r=-r;break}}},A=function(e,t,r){for(var n=v.getRSBlocks(e,t),i=y(),o=0;o8*s)throw"code length overflow. ("+i.getLengthInBits()+">"+8*s+")";for(i.getLengthInBits()+4<=8*s&&i.put(0,4);i.getLengthInBits()%8!=0;)i.putBit(!1);for(;!(i.getLengthInBits()>=8*s)&&(i.put(236,8),!(i.getLengthInBits()>=8*s));)i.put(17,8);return function(e,t){for(var r=0,n=0,i=0,o=new Array(t.length),a=new Array(t.length),s=0;s=0?h.getAt(f):0}}var m=0;for(u=0;un)&&(e=n,t=r)}return t}())},l.createTableTag=function(e,t){e=e||2;var r="";r+='";for(var i=0;i';r+=""}return r+="",r+="
"},l.createSvgTag=function(e,t,r,n){var i={};"object"==typeof arguments[0]&&(e=(i=arguments[0]).cellSize,t=i.margin,r=i.alt,n=i.title),e=e||2,t="undefined"==typeof t?4*e:t,(r="string"===typeof r?{text:r}:r||{}).text=r.text||null,r.id=r.text?r.id||"qrcode-description":null,(n="string"===typeof n?{text:n}:n||{}).text=n.text||null,n.id=n.text?n.id||"qrcode-title":null;var o,a,s,c,u=l.getModuleCount()*e+2*t,d="";for(c="l"+e+",0 0,"+e+" -"+e+",0 0,-"+e+"z ",d+=''+P(n.text)+"":"",d+=r.text?''+P(r.text)+"":"",d+='',d+='":t+=">";break;case"&":t+="&";break;case'"':t+=""";break;default:t+=n}}return t};return l.createASCII=function(e,t){if((e=e||1)<2)return function(e){e="undefined"==typeof e?2:e;var t,r,n,i,o,a=1*l.getModuleCount()+2*e,s=e,c=a-e,u={"\u2588\u2588":"\u2588","\u2588 ":"\u2580"," \u2588":"\u2584"," ":" "},d={"\u2588\u2588":"\u2580","\u2588 ":"\u2580"," \u2588":" "," ":" "},h="";for(t=0;t=c?d[o]:u[o];h+="\n"}return a%2&&e>0?h.substring(0,h.length-a-1)+Array(a+1).join("\u2580"):h.substring(0,h.length-1)}(t);e-=1,t="undefined"==typeof t?2*e:t;var r,n,i,o,a=l.getModuleCount()*e+2*t,s=t,c=a-t,u=Array(e+1).join("\u2588\u2588"),d=Array(e+1).join(" "),h="",f="";for(r=0;r>>8),t.push(255&a)):t.push(n)}}return t}};var t=1,r=2,n=4,i=8,o={L:1,M:0,Q:3,H:2},a=0,s=1,c=2,l=3,u=4,d=5,h=6,f=7,p=function(){var e=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],o=1335,p=7973,v={},y=function(e){for(var t=0;0!=e;)t+=1,e>>>=1;return t};return v.getBCHTypeInfo=function(e){for(var t=e<<10;y(t)-y(o)>=0;)t^=o<=0;)t^=p<5&&(r+=3+o-5)}for(n=0;n=256;)t-=255;return e[t]}};return n}();function g(e,t){if("undefined"==typeof e.length)throw e.length+"/"+t;var r=function(){for(var r=0;r>>7-t%8&1)},put:function(e,t){for(var n=0;n>>t-n-1&1))},getLengthInBits:function(){return t},putBit:function(r){var n=Math.floor(t/8);e.length<=n&&e.push(0),r&&(e[n]|=128>>>t%8),t+=1}};return r},b=function(e){var r=t,n=e,i={getMode:function(){return r},getLength:function(e){return n.length},write:function(e){for(var t=n,r=0;r+2>>8&255)+(255&n),e.put(n,13),r+=2}if(r>>8)},writeBytes:function(e,r,n){r=r||0,n=n||e.length;for(var i=0;i0&&(t+=","),t+=e[r];return t+="]"}};return t},k=function(e){var t=e,r=0,n=0,i=0,o={read:function(){for(;i<8;){if(r>=t.length){if(0==i)return-1;throw"unexpected end of file./"+i}var e=t.charAt(r);if(r+=1,"="==e)return i=0,-1;e.match(/^\s$/)||(n=n<<6|a(e.charCodeAt(0)),i+=6)}var o=n>>>i-8&255;return i-=8,o}},a=function(e){if(65<=e&&e<=90)return e-65;if(97<=e&&e<=122)return e-97+26;if(48<=e&&e<=57)return e-48+52;if(43==e)return 62;if(47==e)return 63;throw"c:"+e};return o},E=function(e,t,r){for(var n=function(e,t){var r=e,n=t,i=new Array(e*t),o={setPixel:function(e,t,n){i[t*r+e]=n},write:function(e){e.writeString("GIF87a"),e.writeShort(r),e.writeShort(n),e.writeByte(128),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(255),e.writeByte(255),e.writeByte(255),e.writeString(","),e.writeShort(0),e.writeShort(0),e.writeShort(r),e.writeShort(n),e.writeByte(0);var t=a(2);e.writeByte(2);for(var i=0;t.length-i>255;)e.writeByte(255),e.writeBytes(t,i,255),i+=255;e.writeByte(t.length-i),e.writeBytes(t,i,t.length-i),e.writeByte(0),e.writeString(";")}},a=function(e){for(var t=1<>>i!=0)throw"length over";for(;r+i>=8;)t.writeByte(255&(e<>>=8-r,n=0,r=0;n|=e<0&&t.writeByte(n)}}}(c);l.write(t,n);var u=0,d=String.fromCharCode(i[u]);for(u+=1;u=6;)o(e>>>t-6),t-=6},i.flush=function(){if(t>0&&(o(e<<6-t),e=0,t=0),r%3!=0)for(var i=3-r%3,a=0;a>6,128|63&n):n<55296||n>=57344?t.push(224|n>>12,128|n>>6&63,128|63&n):(r++,n=65536+((1023&n)<<10|1023&e.charCodeAt(r)),t.push(240|n>>18,128|n>>12&63,128|n>>6&63,128|63&n))}return t}(e)},n=[],void 0===(i="function"===typeof(r=function(){return o})?r.apply(t,n):r)||(e.exports=i)},557:(e,t,r)=>{"use strict";var n=r(9652),i=r(8586);function o(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r",t=le.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,r,n){MSApp.execUnsafeLocalFunction((function(){return ue(e,t)}))}:ue);function he(e,t){if(t){var r=e.firstChild;if(r&&r===e.lastChild&&3===r.nodeType)return void(r.nodeValue=t)}e.textContent=t}var fe={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},pe=["Webkit","ms","Moz","O"];function me(e,t,r){return null==t||"boolean"===typeof t||""===t?"":r||"number"!==typeof t||0===t||fe.hasOwnProperty(e)&&fe[e]?(""+t).trim():t+"px"}function ge(e,t){for(var r in e=e.style,t)if(t.hasOwnProperty(r)){var n=0===r.indexOf("--"),i=me(r,t[r],n);"float"===r&&(r="cssFloat"),n?e.setProperty(r,i):e[r]=i}}Object.keys(fe).forEach((function(e){pe.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),fe[t]=fe[e]}))}));var ve=D({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ye(e,t){if(t){if(ve[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(o(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(o(60));if("object"!==typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(o(61))}if(null!=t.style&&"object"!==typeof t.style)throw Error(o(62))}}function be(e,t){if(-1===e.indexOf("-"))return"string"===typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var we=null;function xe(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var _e=null,Se=null,ke=null;function Ee(e){if(e=bi(e)){if("function"!==typeof _e)throw Error(o(280));var t=e.stateNode;t&&(t=xi(t),_e(e.stateNode,e.type,t))}}function Ae(e){Se?ke?ke.push(e):ke=[e]:Se=e}function Pe(){if(Se){var e=Se,t=ke;if(ke=Se=null,Ee(e),t)for(e=0;e>>=0,0===e?32:31-(st(e)/ct|0)|0},st=Math.log,ct=Math.LN2;var lt=64,ut=4194304;function dt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ht(e,t){var r=e.pendingLanes;if(0===r)return 0;var n=0,i=e.suspendedLanes,o=e.pingedLanes,a=268435455&r;if(0!==a){var s=a&~i;0!==s?n=dt(s):0!==(o&=a)&&(n=dt(o))}else 0!==(a=r&~i)?n=dt(a):0!==o&&(n=dt(o));if(0===n)return 0;if(0!==t&&t!==n&&0===(t&i)&&((i=n&-n)>=(o=t&-t)||16===i&&0!==(4194240&o)))return t;if(0!==(4&n)&&(n|=16&r),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=n;0r;r++)t.push(e);return t}function vt(e,t,r){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-at(t)]=r}function yt(e,t){var r=e.entangledLanes|=t;for(e=e.entanglements;r;){var n=31-at(r),i=1<=Mr),Dr=String.fromCharCode(32),zr=!1;function Br(e,t){switch(e){case"keyup":return-1!==Rr.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Ur(e){return"object"===typeof(e=e.detail)&&"data"in e?e.data:null}var Fr=!1;var $r={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Hr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!$r[e.type]:"textarea"===t}function Vr(e,t,r,n){Ae(n),0<(t=Kn(t,"onChange")).length&&(r=new lr("onChange","change",null,r,n),e.push({event:r,listeners:t}))}var qr=null,Kr=null;function Wr(e){zn(e,0)}function Gr(e){if(W(wi(e)))return e}function Zr(e,t){if("change"===e)return t}var Yr=!1;if(u){var Xr;if(u){var Jr="oninput"in document;if(!Jr){var Qr=document.createElement("div");Qr.setAttribute("oninput","return;"),Jr="function"===typeof Qr.oninput}Xr=Jr}else Xr=!1;Yr=Xr&&(!document.documentMode||9=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=ln(n)}}function dn(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?dn(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function hn(){for(var e=window,t=G();t instanceof e.HTMLIFrameElement;){try{var r="string"===typeof t.contentWindow.location.href}catch(n){r=!1}if(!r)break;t=G((e=t.contentWindow).document)}return t}function fn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function pn(e){var t=hn(),r=e.focusedElem,n=e.selectionRange;if(t!==r&&r&&r.ownerDocument&&dn(r.ownerDocument.documentElement,r)){if(null!==n&&fn(r))if(t=n.start,void 0===(e=n.end)&&(e=t),"selectionStart"in r)r.selectionStart=t,r.selectionEnd=Math.min(e,r.value.length);else if((e=(t=r.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var i=r.textContent.length,o=Math.min(n.start,i);n=void 0===n.end?o:Math.min(n.end,i),!e.extend&&o>n&&(i=n,n=o,o=i),i=un(r,o);var a=un(r,n);i&&a&&(1!==e.rangeCount||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==a.node||e.focusOffset!==a.offset)&&((t=t.createRange()).setStart(i.node,i.offset),e.removeAllRanges(),o>n?(e.addRange(t),e.extend(a.node,a.offset)):(t.setEnd(a.node,a.offset),e.addRange(t)))}for(t=[],e=r;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"===typeof r.focus&&r.focus(),r=0;r=document.documentMode,gn=null,vn=null,yn=null,bn=!1;function wn(e,t,r){var n=r.window===r?r.document:9===r.nodeType?r:r.ownerDocument;bn||null==gn||gn!==G(n)||("selectionStart"in(n=gn)&&fn(n)?n={start:n.selectionStart,end:n.selectionEnd}:n={anchorNode:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset},yn&&cn(yn,n)||(yn=n,0<(n=Kn(vn,"onSelect")).length&&(t=new lr("onSelect","select",null,t,r),e.push({event:t,listeners:n}),t.target=gn)))}function xn(e,t){var r={};return r[e.toLowerCase()]=t.toLowerCase(),r["Webkit"+e]="webkit"+t,r["Moz"+e]="moz"+t,r}var _n={animationend:xn("Animation","AnimationEnd"),animationiteration:xn("Animation","AnimationIteration"),animationstart:xn("Animation","AnimationStart"),transitionend:xn("Transition","TransitionEnd")},Sn={},kn={};function En(e){if(Sn[e])return Sn[e];if(!_n[e])return e;var t,r=_n[e];for(t in r)if(r.hasOwnProperty(t)&&t in kn)return Sn[e]=r[t];return e}u&&(kn=document.createElement("div").style,"AnimationEvent"in window||(delete _n.animationend.animation,delete _n.animationiteration.animation,delete _n.animationstart.animation),"TransitionEvent"in window||delete _n.transitionend.transition);var An=En("animationend"),Pn=En("animationiteration"),On=En("animationstart"),Tn=En("transitionend"),Cn=new Map,jn="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Rn(e,t){Cn.set(e,t),c(t,[e])}for(var In=0;InSi||(e.current=_i[Si],_i[Si]=null,Si--)}function Ai(e,t){Si++,_i[Si]=e.current,e.current=t}var Pi={},Oi=ki(Pi),Ti=ki(!1),Ci=Pi;function ji(e,t){var r=e.type.contextTypes;if(!r)return Pi;var n=e.stateNode;if(n&&n.__reactInternalMemoizedUnmaskedChildContext===t)return n.__reactInternalMemoizedMaskedChildContext;var i,o={};for(i in r)o[i]=t[i];return n&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function Ri(e){return null!==(e=e.childContextTypes)&&void 0!==e}function Ii(){Ei(Ti),Ei(Oi)}function Mi(e,t,r){if(Oi.current!==Pi)throw Error(o(168));Ai(Oi,t),Ai(Ti,r)}function Li(e,t,r){var n=e.stateNode;if(t=t.childContextTypes,"function"!==typeof n.getChildContext)return r;for(var i in n=n.getChildContext())if(!(i in t))throw Error(o(108,H(e)||"Unknown",i));return D({},r,n)}function Ni(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Pi,Ci=Oi.current,Ai(Oi,e),Ai(Ti,Ti.current),!0}function Di(e,t,r){var n=e.stateNode;if(!n)throw Error(o(169));r?(e=Li(e,t,Ci),n.__reactInternalMemoizedMergedChildContext=e,Ei(Ti),Ei(Oi),Ai(Oi,e)):Ei(Ti),Ai(Ti,r)}var zi=null,Bi=!1,Ui=!1;function Fi(e){null===zi?zi=[e]:zi.push(e)}function $i(){if(!Ui&&null!==zi){Ui=!0;var e=0,t=bt;try{var r=zi;for(bt=1;e>=a,i-=a,Yi=1<<32-at(t)+i|r<m?(g=d,d=null):g=d.sibling;var v=f(i,d,s[m],c);if(null===v){null===d&&(d=g);break}e&&d&&null===v.alternate&&t(i,d),o=a(v,o,m),null===u?l=v:u.sibling=v,u=v,d=g}if(m===s.length)return r(i,d),io&&Ji(i,m),l;if(null===d){for(;mg?(v=m,m=null):v=m.sibling;var b=f(i,m,y.value,l);if(null===b){null===m&&(m=v);break}e&&m&&null===b.alternate&&t(i,m),s=a(b,s,g),null===d?u=b:d.sibling=b,d=b,m=v}if(y.done)return r(i,m),io&&Ji(i,g),u;if(null===m){for(;!y.done;g++,y=c.next())null!==(y=h(i,y.value,l))&&(s=a(y,s,g),null===d?u=y:d.sibling=y,d=y);return io&&Ji(i,g),u}for(m=n(i,m);!y.done;g++,y=c.next())null!==(y=p(m,i,g,y.value,l))&&(e&&null!==y.alternate&&m.delete(null===y.key?g:y.key),s=a(y,s,g),null===d?u=y:d.sibling=y,d=y);return e&&m.forEach((function(e){return t(i,e)})),io&&Ji(i,g),u}return function e(n,o,a,c){if("object"===typeof a&&null!==a&&a.type===S&&null===a.key&&(a=a.props.children),"object"===typeof a&&null!==a){switch(a.$$typeof){case x:e:{for(var l=a.key,u=o;null!==u;){if(u.key===l){if((l=a.type)===S){if(7===u.tag){r(n,u.sibling),(o=i(u,a.props.children)).return=n,n=o;break e}}else if(u.elementType===l||"object"===typeof l&&null!==l&&l.$$typeof===R&&Zo(l)===u.type){r(n,u.sibling),(o=i(u,a.props)).ref=Wo(n,u,a),o.return=n,n=o;break e}r(n,u);break}t(n,u),u=u.sibling}a.type===S?((o=Nl(a.props.children,n.mode,c,a.key)).return=n,n=o):((c=Ll(a.type,a.key,a.props,null,n.mode,c)).ref=Wo(n,o,a),c.return=n,n=c)}return s(n);case _:e:{for(u=a.key;null!==o;){if(o.key===u){if(4===o.tag&&o.stateNode.containerInfo===a.containerInfo&&o.stateNode.implementation===a.implementation){r(n,o.sibling),(o=i(o,a.children||[])).return=n,n=o;break e}r(n,o);break}t(n,o),o=o.sibling}(o=Bl(a,n.mode,c)).return=n,n=o}return s(n);case R:return e(n,o,(u=a._init)(a._payload),c)}if(te(a))return m(n,o,a,c);if(L(a))return g(n,o,a,c);Go(n,a)}return"string"===typeof a&&""!==a||"number"===typeof a?(a=""+a,null!==o&&6===o.tag?(r(n,o.sibling),(o=i(o,a)).return=n,n=o):(r(n,o),(o=zl(a,n.mode,c)).return=n,n=o),s(n)):r(n,o)}}var Xo=Yo(!0),Jo=Yo(!1),Qo={},ea=ki(Qo),ta=ki(Qo),ra=ki(Qo);function na(e){if(e===Qo)throw Error(o(174));return e}function ia(e,t){switch(Ai(ra,t),Ai(ta,e),Ai(ea,Qo),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:ce(null,"");break;default:t=ce(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}Ei(ea),Ai(ea,t)}function oa(){Ei(ea),Ei(ta),Ei(ra)}function aa(e){na(ra.current);var t=na(ea.current),r=ce(t,e.type);t!==r&&(Ai(ta,e),Ai(ea,r))}function sa(e){ta.current===e&&(Ei(ea),Ei(ta))}var ca=ki(0);function la(e){for(var t=e;null!==t;){if(13===t.tag){var r=t.memoizedState;if(null!==r&&(null===(r=r.dehydrated)||"$?"===r.data||"$!"===r.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!==(128&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var ua=[];function da(){for(var e=0;er?r:4,e(!0);var n=fa.transition;fa.transition={};try{e(!1),t()}finally{bt=r,fa.transition=n}}function es(){return Pa().memoizedState}function ts(e,t,r){var n=rl(e);if(r={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null},ns(e))is(t,r);else if(null!==(r=To(e,t,r,n))){nl(r,e,n,tl()),os(r,t,n)}}function rs(e,t,r){var n=rl(e),i={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null};if(ns(e))is(t,i);else{var o=e.alternate;if(0===e.lanes&&(null===o||0===o.lanes)&&null!==(o=t.lastRenderedReducer))try{var a=t.lastRenderedState,s=o(a,r);if(i.hasEagerState=!0,i.eagerState=s,sn(s,a)){var c=t.interleaved;return null===c?(i.next=i,Oo(t)):(i.next=c.next,c.next=i),void(t.interleaved=i)}}catch(l){}null!==(r=To(e,t,i,n))&&(nl(r,e,n,i=tl()),os(r,t,n))}}function ns(e){var t=e.alternate;return e===ma||null!==t&&t===ma}function is(e,t){ba=ya=!0;var r=e.pending;null===r?t.next=t:(t.next=r.next,r.next=t),e.pending=t}function os(e,t,r){if(0!==(4194240&r)){var n=t.lanes;r|=n&=e.pendingLanes,t.lanes=r,yt(e,r)}}var as={readContext:Ao,useCallback:_a,useContext:_a,useEffect:_a,useImperativeHandle:_a,useInsertionEffect:_a,useLayoutEffect:_a,useMemo:_a,useReducer:_a,useRef:_a,useState:_a,useDebugValue:_a,useDeferredValue:_a,useTransition:_a,useMutableSource:_a,useSyncExternalStore:_a,useId:_a,unstable_isNewReconciler:!1},ss={readContext:Ao,useCallback:function(e,t){return Aa().memoizedState=[e,void 0===t?null:t],e},useContext:Ao,useEffect:Ha,useImperativeHandle:function(e,t,r){return r=null!==r&&void 0!==r?r.concat([e]):null,Fa(4194308,4,Wa.bind(null,t,e),r)},useLayoutEffect:function(e,t){return Fa(4194308,4,e,t)},useInsertionEffect:function(e,t){return Fa(4,2,e,t)},useMemo:function(e,t){var r=Aa();return t=void 0===t?null:t,e=e(),r.memoizedState=[e,t],e},useReducer:function(e,t,r){var n=Aa();return t=void 0!==r?r(t):t,n.memoizedState=n.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},n.queue=e,e=e.dispatch=ts.bind(null,ma,e),[n.memoizedState,e]},useRef:function(e){return e={current:e},Aa().memoizedState=e},useState:za,useDebugValue:Za,useDeferredValue:function(e){return Aa().memoizedState=e},useTransition:function(){var e=za(!1),t=e[0];return e=Qa.bind(null,e[1]),Aa().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,r){var n=ma,i=Aa();if(io){if(void 0===r)throw Error(o(407));r=r()}else{if(r=t(),null===Cc)throw Error(o(349));0!==(30&pa)||Ia(n,t,r)}i.memoizedState=r;var a={value:r,getSnapshot:t};return i.queue=a,Ha(La.bind(null,n,a,e),[e]),n.flags|=2048,Ba(9,Ma.bind(null,n,a,r,t),void 0,null),r},useId:function(){var e=Aa(),t=Cc.identifierPrefix;if(io){var r=Xi;t=":"+t+"R"+(r=(Yi&~(1<<32-at(Yi)-1)).toString(32)+r),0<(r=wa++)&&(t+="H"+r.toString(32)),t+=":"}else t=":"+t+"r"+(r=xa++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},cs={readContext:Ao,useCallback:Ya,useContext:Ao,useEffect:Va,useImperativeHandle:Ga,useInsertionEffect:qa,useLayoutEffect:Ka,useMemo:Xa,useReducer:Ta,useRef:Ua,useState:function(){return Ta(Oa)},useDebugValue:Za,useDeferredValue:function(e){return Ja(Pa(),ga.memoizedState,e)},useTransition:function(){return[Ta(Oa)[0],Pa().memoizedState]},useMutableSource:ja,useSyncExternalStore:Ra,useId:es,unstable_isNewReconciler:!1},ls={readContext:Ao,useCallback:Ya,useContext:Ao,useEffect:Va,useImperativeHandle:Ga,useInsertionEffect:qa,useLayoutEffect:Ka,useMemo:Xa,useReducer:Ca,useRef:Ua,useState:function(){return Ca(Oa)},useDebugValue:Za,useDeferredValue:function(e){var t=Pa();return null===ga?t.memoizedState=e:Ja(t,ga.memoizedState,e)},useTransition:function(){return[Ca(Oa)[0],Pa().memoizedState]},useMutableSource:ja,useSyncExternalStore:Ra,useId:es,unstable_isNewReconciler:!1};function us(e,t){try{var r="",n=t;do{r+=F(n),n=n.return}while(n);var i=r}catch(o){i="\nError generating stack: "+o.message+"\n"+o.stack}return{value:e,source:t,stack:i,digest:null}}function ds(e,t,r){return{value:e,source:null,stack:null!=r?r:null,digest:null!=t?t:null}}function hs(e,t){try{console.error(t.value)}catch(r){setTimeout((function(){throw r}))}}var fs="function"===typeof WeakMap?WeakMap:Map;function ps(e,t,r){(r=Mo(-1,r)).tag=3,r.payload={element:null};var n=t.value;return r.callback=function(){qc||(qc=!0,Kc=n),hs(0,t)},r}function ms(e,t,r){(r=Mo(-1,r)).tag=3;var n=e.type.getDerivedStateFromError;if("function"===typeof n){var i=t.value;r.payload=function(){return n(i)},r.callback=function(){hs(0,t)}}var o=e.stateNode;return null!==o&&"function"===typeof o.componentDidCatch&&(r.callback=function(){hs(0,t),"function"!==typeof n&&(null===Wc?Wc=new Set([this]):Wc.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),r}function gs(e,t,r){var n=e.pingCache;if(null===n){n=e.pingCache=new fs;var i=new Set;n.set(t,i)}else void 0===(i=n.get(t))&&(i=new Set,n.set(t,i));i.has(r)||(i.add(r),e=Al.bind(null,e,t,r),t.then(e,e))}function vs(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function ys(e,t,r,n,i){return 0===(1&e.mode)?(e===t?e.flags|=65536:(e.flags|=128,r.flags|=131072,r.flags&=-52805,1===r.tag&&(null===r.alternate?r.tag=17:((t=Mo(-1,1)).tag=2,Lo(r,t,1))),r.lanes|=1),e):(e.flags|=65536,e.lanes=i,e)}var bs=w.ReactCurrentOwner,ws=!1;function xs(e,t,r,n){t.child=null===e?Jo(t,null,r,n):Xo(t,e.child,r,n)}function _s(e,t,r,n,i){r=r.render;var o=t.ref;return Eo(t,i),n=ka(e,t,r,n,o,i),r=Ea(),null===e||ws?(io&&r&&eo(t),t.flags|=1,xs(e,t,n,i),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,qs(e,t,i))}function Ss(e,t,r,n,i){if(null===e){var o=r.type;return"function"!==typeof o||Il(o)||void 0!==o.defaultProps||null!==r.compare||void 0!==r.defaultProps?((e=Ll(r.type,null,n,t,t.mode,i)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=o,ks(e,t,o,n,i))}if(o=e.child,0===(e.lanes&i)){var a=o.memoizedProps;if((r=null!==(r=r.compare)?r:cn)(a,n)&&e.ref===t.ref)return qs(e,t,i)}return t.flags|=1,(e=Ml(o,n)).ref=t.ref,e.return=t,t.child=e}function ks(e,t,r,n,i){if(null!==e){var o=e.memoizedProps;if(cn(o,n)&&e.ref===t.ref){if(ws=!1,t.pendingProps=n=o,0===(e.lanes&i))return t.lanes=e.lanes,qs(e,t,i);0!==(131072&e.flags)&&(ws=!0)}}return Ps(e,t,r,n,i)}function Es(e,t,r){var n=t.pendingProps,i=n.children,o=null!==e?e.memoizedState:null;if("hidden"===n.mode)if(0===(1&t.mode))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Ai(Mc,Ic),Ic|=r;else{if(0===(1073741824&r))return e=null!==o?o.baseLanes|r:r,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Ai(Mc,Ic),Ic|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},n=null!==o?o.baseLanes:r,Ai(Mc,Ic),Ic|=n}else null!==o?(n=o.baseLanes|r,t.memoizedState=null):n=r,Ai(Mc,Ic),Ic|=n;return xs(e,t,i,r),t.child}function As(e,t){var r=t.ref;(null===e&&null!==r||null!==e&&e.ref!==r)&&(t.flags|=512,t.flags|=2097152)}function Ps(e,t,r,n,i){var o=Ri(r)?Ci:Oi.current;return o=ji(t,o),Eo(t,i),r=ka(e,t,r,n,o,i),n=Ea(),null===e||ws?(io&&n&&eo(t),t.flags|=1,xs(e,t,r,i),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,qs(e,t,i))}function Os(e,t,r,n,i){if(Ri(r)){var o=!0;Ni(t)}else o=!1;if(Eo(t,i),null===t.stateNode)Vs(e,t),Vo(t,r,n),Ko(t,r,n,i),n=!0;else if(null===e){var a=t.stateNode,s=t.memoizedProps;a.props=s;var c=a.context,l=r.contextType;"object"===typeof l&&null!==l?l=Ao(l):l=ji(t,l=Ri(r)?Ci:Oi.current);var u=r.getDerivedStateFromProps,d="function"===typeof u||"function"===typeof a.getSnapshotBeforeUpdate;d||"function"!==typeof a.UNSAFE_componentWillReceiveProps&&"function"!==typeof a.componentWillReceiveProps||(s!==n||c!==l)&&qo(t,a,n,l),jo=!1;var h=t.memoizedState;a.state=h,zo(t,n,a,i),c=t.memoizedState,s!==n||h!==c||Ti.current||jo?("function"===typeof u&&(Fo(t,r,u,n),c=t.memoizedState),(s=jo||Ho(t,r,s,n,h,c,l))?(d||"function"!==typeof a.UNSAFE_componentWillMount&&"function"!==typeof a.componentWillMount||("function"===typeof a.componentWillMount&&a.componentWillMount(),"function"===typeof a.UNSAFE_componentWillMount&&a.UNSAFE_componentWillMount()),"function"===typeof a.componentDidMount&&(t.flags|=4194308)):("function"===typeof a.componentDidMount&&(t.flags|=4194308),t.memoizedProps=n,t.memoizedState=c),a.props=n,a.state=c,a.context=l,n=s):("function"===typeof a.componentDidMount&&(t.flags|=4194308),n=!1)}else{a=t.stateNode,Io(e,t),s=t.memoizedProps,l=t.type===t.elementType?s:vo(t.type,s),a.props=l,d=t.pendingProps,h=a.context,"object"===typeof(c=r.contextType)&&null!==c?c=Ao(c):c=ji(t,c=Ri(r)?Ci:Oi.current);var f=r.getDerivedStateFromProps;(u="function"===typeof f||"function"===typeof a.getSnapshotBeforeUpdate)||"function"!==typeof a.UNSAFE_componentWillReceiveProps&&"function"!==typeof a.componentWillReceiveProps||(s!==d||h!==c)&&qo(t,a,n,c),jo=!1,h=t.memoizedState,a.state=h,zo(t,n,a,i);var p=t.memoizedState;s!==d||h!==p||Ti.current||jo?("function"===typeof f&&(Fo(t,r,f,n),p=t.memoizedState),(l=jo||Ho(t,r,l,n,h,p,c)||!1)?(u||"function"!==typeof a.UNSAFE_componentWillUpdate&&"function"!==typeof a.componentWillUpdate||("function"===typeof a.componentWillUpdate&&a.componentWillUpdate(n,p,c),"function"===typeof a.UNSAFE_componentWillUpdate&&a.UNSAFE_componentWillUpdate(n,p,c)),"function"===typeof a.componentDidUpdate&&(t.flags|=4),"function"===typeof a.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!==typeof a.componentDidUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),"function"!==typeof a.getSnapshotBeforeUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),t.memoizedProps=n,t.memoizedState=p),a.props=n,a.state=p,a.context=c,n=l):("function"!==typeof a.componentDidUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),"function"!==typeof a.getSnapshotBeforeUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),n=!1)}return Ts(e,t,r,n,o,i)}function Ts(e,t,r,n,i,o){As(e,t);var a=0!==(128&t.flags);if(!n&&!a)return i&&Di(t,r,!1),qs(e,t,o);n=t.stateNode,bs.current=t;var s=a&&"function"!==typeof r.getDerivedStateFromError?null:n.render();return t.flags|=1,null!==e&&a?(t.child=Xo(t,e.child,null,o),t.child=Xo(t,null,s,o)):xs(e,t,s,o),t.memoizedState=n.state,i&&Di(t,r,!0),t.child}function Cs(e){var t=e.stateNode;t.pendingContext?Mi(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Mi(0,t.context,!1),ia(e,t.containerInfo)}function js(e,t,r,n,i){return po(),mo(i),t.flags|=256,xs(e,t,r,n),t.child}var Rs,Is,Ms,Ls,Ns={dehydrated:null,treeContext:null,retryLane:0};function Ds(e){return{baseLanes:e,cachePool:null,transitions:null}}function zs(e,t,r){var n,i=t.pendingProps,a=ca.current,s=!1,c=0!==(128&t.flags);if((n=c)||(n=(null===e||null!==e.memoizedState)&&0!==(2&a)),n?(s=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(a|=1),Ai(ca,1&a),null===e)return lo(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(0===(1&t.mode)?t.lanes=1:"$!"===e.data?t.lanes=8:t.lanes=1073741824,null):(c=i.children,e=i.fallback,s?(i=t.mode,s=t.child,c={mode:"hidden",children:c},0===(1&i)&&null!==s?(s.childLanes=0,s.pendingProps=c):s=Dl(c,i,0,null),e=Nl(e,i,r,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Ds(r),t.memoizedState=Ns,e):Bs(t,c));if(null!==(a=e.memoizedState)&&null!==(n=a.dehydrated))return function(e,t,r,n,i,a,s){if(r)return 256&t.flags?(t.flags&=-257,Us(e,t,s,n=ds(Error(o(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(a=n.fallback,i=t.mode,n=Dl({mode:"visible",children:n.children},i,0,null),(a=Nl(a,i,s,null)).flags|=2,n.return=t,a.return=t,n.sibling=a,t.child=n,0!==(1&t.mode)&&Xo(t,e.child,null,s),t.child.memoizedState=Ds(s),t.memoizedState=Ns,a);if(0===(1&t.mode))return Us(e,t,s,null);if("$!"===i.data){if(n=i.nextSibling&&i.nextSibling.dataset)var c=n.dgst;return n=c,Us(e,t,s,n=ds(a=Error(o(419)),n,void 0))}if(c=0!==(s&e.childLanes),ws||c){if(null!==(n=Cc)){switch(s&-s){case 4:i=2;break;case 16:i=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:i=32;break;case 536870912:i=268435456;break;default:i=0}0!==(i=0!==(i&(n.suspendedLanes|s))?0:i)&&i!==a.retryLane&&(a.retryLane=i,Co(e,i),nl(n,e,i,-1))}return gl(),Us(e,t,s,n=ds(Error(o(421))))}return"$?"===i.data?(t.flags|=128,t.child=e.child,t=Ol.bind(null,e),i._reactRetry=t,null):(e=a.treeContext,no=li(i.nextSibling),ro=t,io=!0,oo=null,null!==e&&(Wi[Gi++]=Yi,Wi[Gi++]=Xi,Wi[Gi++]=Zi,Yi=e.id,Xi=e.overflow,Zi=t),t=Bs(t,n.children),t.flags|=4096,t)}(e,t,c,i,n,a,r);if(s){s=i.fallback,c=t.mode,n=(a=e.child).sibling;var l={mode:"hidden",children:i.children};return 0===(1&c)&&t.child!==a?((i=t.child).childLanes=0,i.pendingProps=l,t.deletions=null):(i=Ml(a,l)).subtreeFlags=14680064&a.subtreeFlags,null!==n?s=Ml(n,s):(s=Nl(s,c,r,null)).flags|=2,s.return=t,i.return=t,i.sibling=s,t.child=i,i=s,s=t.child,c=null===(c=e.child.memoizedState)?Ds(r):{baseLanes:c.baseLanes|r,cachePool:null,transitions:c.transitions},s.memoizedState=c,s.childLanes=e.childLanes&~r,t.memoizedState=Ns,i}return e=(s=e.child).sibling,i=Ml(s,{mode:"visible",children:i.children}),0===(1&t.mode)&&(i.lanes=r),i.return=t,i.sibling=null,null!==e&&(null===(r=t.deletions)?(t.deletions=[e],t.flags|=16):r.push(e)),t.child=i,t.memoizedState=null,i}function Bs(e,t){return(t=Dl({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function Us(e,t,r,n){return null!==n&&mo(n),Xo(t,e.child,null,r),(e=Bs(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Fs(e,t,r){e.lanes|=t;var n=e.alternate;null!==n&&(n.lanes|=t),ko(e.return,t,r)}function $s(e,t,r,n,i){var o=e.memoizedState;null===o?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:n,tail:r,tailMode:i}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=n,o.tail=r,o.tailMode=i)}function Hs(e,t,r){var n=t.pendingProps,i=n.revealOrder,o=n.tail;if(xs(e,t,n.children,r),0!==(2&(n=ca.current)))n=1&n|2,t.flags|=128;else{if(null!==e&&0!==(128&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Fs(e,r,t);else if(19===e.tag)Fs(e,r,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}n&=1}if(Ai(ca,n),0===(1&t.mode))t.memoizedState=null;else switch(i){case"forwards":for(r=t.child,i=null;null!==r;)null!==(e=r.alternate)&&null===la(e)&&(i=r),r=r.sibling;null===(r=i)?(i=t.child,t.child=null):(i=r.sibling,r.sibling=null),$s(t,!1,i,r,o);break;case"backwards":for(r=null,i=t.child,t.child=null;null!==i;){if(null!==(e=i.alternate)&&null===la(e)){t.child=i;break}e=i.sibling,i.sibling=r,r=i,i=e}$s(t,!0,r,null,o);break;case"together":$s(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Vs(e,t){0===(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function qs(e,t,r){if(null!==e&&(t.dependencies=e.dependencies),Dc|=t.lanes,0===(r&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(o(153));if(null!==t.child){for(r=Ml(e=t.child,e.pendingProps),t.child=r,r.return=t;null!==e.sibling;)e=e.sibling,(r=r.sibling=Ml(e,e.pendingProps)).return=t;r.sibling=null}return t.child}function Ks(e,t){if(!io)switch(e.tailMode){case"hidden":t=e.tail;for(var r=null;null!==t;)null!==t.alternate&&(r=t),t=t.sibling;null===r?e.tail=null:r.sibling=null;break;case"collapsed":r=e.tail;for(var n=null;null!==r;)null!==r.alternate&&(n=r),r=r.sibling;null===n?t||null===e.tail?e.tail=null:e.tail.sibling=null:n.sibling=null}}function Ws(e){var t=null!==e.alternate&&e.alternate.child===e.child,r=0,n=0;if(t)for(var i=e.child;null!==i;)r|=i.lanes|i.childLanes,n|=14680064&i.subtreeFlags,n|=14680064&i.flags,i.return=e,i=i.sibling;else for(i=e.child;null!==i;)r|=i.lanes|i.childLanes,n|=i.subtreeFlags,n|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=n,e.childLanes=r,t}function Gs(e,t,r){var n=t.pendingProps;switch(to(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ws(t),null;case 1:case 17:return Ri(t.type)&&Ii(),Ws(t),null;case 3:return n=t.stateNode,oa(),Ei(Ti),Ei(Oi),da(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),null!==e&&null!==e.child||(ho(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&0===(256&t.flags)||(t.flags|=1024,null!==oo&&(sl(oo),oo=null))),Is(e,t),Ws(t),null;case 5:sa(t);var i=na(ra.current);if(r=t.type,null!==e&&null!=t.stateNode)Ms(e,t,r,n,i),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!n){if(null===t.stateNode)throw Error(o(166));return Ws(t),null}if(e=na(ea.current),ho(t)){n=t.stateNode,r=t.type;var a=t.memoizedProps;switch(n[hi]=t,n[fi]=a,e=0!==(1&t.mode),r){case"dialog":Bn("cancel",n),Bn("close",n);break;case"iframe":case"object":case"embed":Bn("load",n);break;case"video":case"audio":for(i=0;i<\/script>",e=e.removeChild(e.firstChild)):"string"===typeof n.is?e=c.createElement(r,{is:n.is}):(e=c.createElement(r),"select"===r&&(c=e,n.multiple?c.multiple=!0:n.size&&(c.size=n.size))):e=c.createElementNS(e,r),e[hi]=t,e[fi]=n,Rs(e,t,!1,!1),t.stateNode=e;e:{switch(c=be(r,n),r){case"dialog":Bn("cancel",e),Bn("close",e),i=n;break;case"iframe":case"object":case"embed":Bn("load",e),i=n;break;case"video":case"audio":for(i=0;iHc&&(t.flags|=128,n=!0,Ks(a,!1),t.lanes=4194304)}else{if(!n)if(null!==(e=la(c))){if(t.flags|=128,n=!0,null!==(r=e.updateQueue)&&(t.updateQueue=r,t.flags|=4),Ks(a,!0),null===a.tail&&"hidden"===a.tailMode&&!c.alternate&&!io)return Ws(t),null}else 2*Xe()-a.renderingStartTime>Hc&&1073741824!==r&&(t.flags|=128,n=!0,Ks(a,!1),t.lanes=4194304);a.isBackwards?(c.sibling=t.child,t.child=c):(null!==(r=a.last)?r.sibling=c:t.child=c,a.last=c)}return null!==a.tail?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=Xe(),t.sibling=null,r=ca.current,Ai(ca,n?1&r|2:1&r),t):(Ws(t),null);case 22:case 23:return hl(),n=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==n&&(t.flags|=8192),n&&0!==(1&t.mode)?0!==(1073741824&Ic)&&(Ws(t),6&t.subtreeFlags&&(t.flags|=8192)):Ws(t),null;case 24:case 25:return null}throw Error(o(156,t.tag))}function Zs(e,t){switch(to(t),t.tag){case 1:return Ri(t.type)&&Ii(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return oa(),Ei(Ti),Ei(Oi),da(),0!==(65536&(e=t.flags))&&0===(128&e)?(t.flags=-65537&e|128,t):null;case 5:return sa(t),null;case 13:if(Ei(ca),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(o(340));po()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Ei(ca),null;case 4:return oa(),null;case 10:return So(t.type._context),null;case 22:case 23:return hl(),null;default:return null}}Rs=function(e,t){for(var r=t.child;null!==r;){if(5===r.tag||6===r.tag)e.appendChild(r.stateNode);else if(4!==r.tag&&null!==r.child){r.child.return=r,r=r.child;continue}if(r===t)break;for(;null===r.sibling;){if(null===r.return||r.return===t)return;r=r.return}r.sibling.return=r.return,r=r.sibling}},Is=function(){},Ms=function(e,t,r,n){var i=e.memoizedProps;if(i!==n){e=t.stateNode,na(ea.current);var o,a=null;switch(r){case"input":i=Z(e,i),n=Z(e,n),a=[];break;case"select":i=D({},i,{value:void 0}),n=D({},n,{value:void 0}),a=[];break;case"textarea":i=ne(e,i),n=ne(e,n),a=[];break;default:"function"!==typeof i.onClick&&"function"===typeof n.onClick&&(e.onclick=Qn)}for(u in ye(r,n),r=null,i)if(!n.hasOwnProperty(u)&&i.hasOwnProperty(u)&&null!=i[u])if("style"===u){var c=i[u];for(o in c)c.hasOwnProperty(o)&&(r||(r={}),r[o]="")}else"dangerouslySetInnerHTML"!==u&&"children"!==u&&"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(s.hasOwnProperty(u)?a||(a=[]):(a=a||[]).push(u,null));for(u in n){var l=n[u];if(c=null!=i?i[u]:void 0,n.hasOwnProperty(u)&&l!==c&&(null!=l||null!=c))if("style"===u)if(c){for(o in c)!c.hasOwnProperty(o)||l&&l.hasOwnProperty(o)||(r||(r={}),r[o]="");for(o in l)l.hasOwnProperty(o)&&c[o]!==l[o]&&(r||(r={}),r[o]=l[o])}else r||(a||(a=[]),a.push(u,r)),r=l;else"dangerouslySetInnerHTML"===u?(l=l?l.__html:void 0,c=c?c.__html:void 0,null!=l&&c!==l&&(a=a||[]).push(u,l)):"children"===u?"string"!==typeof l&&"number"!==typeof l||(a=a||[]).push(u,""+l):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&(s.hasOwnProperty(u)?(null!=l&&"onScroll"===u&&Bn("scroll",e),a||c===l||(a=[])):(a=a||[]).push(u,l))}r&&(a=a||[]).push("style",r);var u=a;(t.updateQueue=u)&&(t.flags|=4)}},Ls=function(e,t,r,n){r!==n&&(t.flags|=4)};var Ys=!1,Xs=!1,Js="function"===typeof WeakSet?WeakSet:Set,Qs=null;function ec(e,t){var r=e.ref;if(null!==r)if("function"===typeof r)try{r(null)}catch(n){El(e,t,n)}else r.current=null}function tc(e,t,r){try{r()}catch(n){El(e,t,n)}}var rc=!1;function nc(e,t,r){var n=t.updateQueue;if(null!==(n=null!==n?n.lastEffect:null)){var i=n=n.next;do{if((i.tag&e)===e){var o=i.destroy;i.destroy=void 0,void 0!==o&&tc(t,r,o)}i=i.next}while(i!==n)}}function ic(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var r=t=t.next;do{if((r.tag&e)===e){var n=r.create;r.destroy=n()}r=r.next}while(r!==t)}}function oc(e){var t=e.ref;if(null!==t){var r=e.stateNode;e.tag,e=r,"function"===typeof t?t(e):t.current=e}}function ac(e){var t=e.alternate;null!==t&&(e.alternate=null,ac(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(null!==(t=e.stateNode)&&(delete t[hi],delete t[fi],delete t[mi],delete t[gi],delete t[vi])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function sc(e){return 5===e.tag||3===e.tag||4===e.tag}function cc(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||sc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function lc(e,t,r){var n=e.tag;if(5===n||6===n)e=e.stateNode,t?8===r.nodeType?r.parentNode.insertBefore(e,t):r.insertBefore(e,t):(8===r.nodeType?(t=r.parentNode).insertBefore(e,r):(t=r).appendChild(e),null!==(r=r._reactRootContainer)&&void 0!==r||null!==t.onclick||(t.onclick=Qn));else if(4!==n&&null!==(e=e.child))for(lc(e,t,r),e=e.sibling;null!==e;)lc(e,t,r),e=e.sibling}function uc(e,t,r){var n=e.tag;if(5===n||6===n)e=e.stateNode,t?r.insertBefore(e,t):r.appendChild(e);else if(4!==n&&null!==(e=e.child))for(uc(e,t,r),e=e.sibling;null!==e;)uc(e,t,r),e=e.sibling}var dc=null,hc=!1;function fc(e,t,r){for(r=r.child;null!==r;)pc(e,t,r),r=r.sibling}function pc(e,t,r){if(ot&&"function"===typeof ot.onCommitFiberUnmount)try{ot.onCommitFiberUnmount(it,r)}catch(s){}switch(r.tag){case 5:Xs||ec(r,t);case 6:var n=dc,i=hc;dc=null,fc(e,t,r),hc=i,null!==(dc=n)&&(hc?(e=dc,r=r.stateNode,8===e.nodeType?e.parentNode.removeChild(r):e.removeChild(r)):dc.removeChild(r.stateNode));break;case 18:null!==dc&&(hc?(e=dc,r=r.stateNode,8===e.nodeType?ci(e.parentNode,r):1===e.nodeType&&ci(e,r),$t(e)):ci(dc,r.stateNode));break;case 4:n=dc,i=hc,dc=r.stateNode.containerInfo,hc=!0,fc(e,t,r),dc=n,hc=i;break;case 0:case 11:case 14:case 15:if(!Xs&&(null!==(n=r.updateQueue)&&null!==(n=n.lastEffect))){i=n=n.next;do{var o=i,a=o.destroy;o=o.tag,void 0!==a&&(0!==(2&o)||0!==(4&o))&&tc(r,t,a),i=i.next}while(i!==n)}fc(e,t,r);break;case 1:if(!Xs&&(ec(r,t),"function"===typeof(n=r.stateNode).componentWillUnmount))try{n.props=r.memoizedProps,n.state=r.memoizedState,n.componentWillUnmount()}catch(s){El(r,t,s)}fc(e,t,r);break;case 21:fc(e,t,r);break;case 22:1&r.mode?(Xs=(n=Xs)||null!==r.memoizedState,fc(e,t,r),Xs=n):fc(e,t,r);break;default:fc(e,t,r)}}function mc(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var r=e.stateNode;null===r&&(r=e.stateNode=new Js),t.forEach((function(t){var n=Tl.bind(null,e,t);r.has(t)||(r.add(t),t.then(n,n))}))}}function gc(e,t){var r=t.deletions;if(null!==r)for(var n=0;ni&&(i=s),n&=~a}if(n=i,10<(n=(120>(n=Xe()-n)?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*Ec(n/1960))-n)){e.timeoutHandle=ni(_l.bind(null,e,Fc,Vc),n);break}_l(e,Fc,Vc);break;default:throw Error(o(329))}}}return il(e,Xe()),e.callbackNode===r?ol.bind(null,e):null}function al(e,t){var r=Uc;return e.current.memoizedState.isDehydrated&&(fl(e,t).flags|=256),2!==(e=vl(e,t))&&(t=Fc,Fc=r,null!==t&&sl(t)),e}function sl(e){null===Fc?Fc=e:Fc.push.apply(Fc,e)}function cl(e,t){for(t&=~Bc,t&=~zc,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0e?16:e,null===Zc)var n=!1;else{if(e=Zc,Zc=null,Yc=0,0!==(6&Tc))throw Error(o(331));var i=Tc;for(Tc|=4,Qs=e.current;null!==Qs;){var a=Qs,s=a.child;if(0!==(16&Qs.flags)){var c=a.deletions;if(null!==c){for(var l=0;lXe()-$c?fl(e,0):Bc|=r),il(e,t)}function Pl(e,t){0===t&&(0===(1&e.mode)?t=1:(t=ut,0===(130023424&(ut<<=1))&&(ut=4194304)));var r=tl();null!==(e=Co(e,t))&&(vt(e,t,r),il(e,r))}function Ol(e){var t=e.memoizedState,r=0;null!==t&&(r=t.retryLane),Pl(e,r)}function Tl(e,t){var r=0;switch(e.tag){case 13:var n=e.stateNode,i=e.memoizedState;null!==i&&(r=i.retryLane);break;case 19:n=e.stateNode;break;default:throw Error(o(314))}null!==n&&n.delete(t),Pl(e,r)}function Cl(e,t){return We(e,t)}function jl(e,t,r,n){this.tag=e,this.key=r,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Rl(e,t,r,n){return new jl(e,t,r,n)}function Il(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Ml(e,t){var r=e.alternate;return null===r?((r=Rl(e.tag,t,e.key,e.mode)).elementType=e.elementType,r.type=e.type,r.stateNode=e.stateNode,r.alternate=e,e.alternate=r):(r.pendingProps=t,r.type=e.type,r.flags=0,r.subtreeFlags=0,r.deletions=null),r.flags=14680064&e.flags,r.childLanes=e.childLanes,r.lanes=e.lanes,r.child=e.child,r.memoizedProps=e.memoizedProps,r.memoizedState=e.memoizedState,r.updateQueue=e.updateQueue,t=e.dependencies,r.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},r.sibling=e.sibling,r.index=e.index,r.ref=e.ref,r}function Ll(e,t,r,n,i,a){var s=2;if(n=e,"function"===typeof e)Il(e)&&(s=1);else if("string"===typeof e)s=5;else e:switch(e){case S:return Nl(r.children,i,a,t);case k:s=8,i|=8;break;case E:return(e=Rl(12,r,t,2|i)).elementType=E,e.lanes=a,e;case T:return(e=Rl(13,r,t,i)).elementType=T,e.lanes=a,e;case C:return(e=Rl(19,r,t,i)).elementType=C,e.lanes=a,e;case I:return Dl(r,i,a,t);default:if("object"===typeof e&&null!==e)switch(e.$$typeof){case A:s=10;break e;case P:s=9;break e;case O:s=11;break e;case j:s=14;break e;case R:s=16,n=null;break e}throw Error(o(130,null==e?e:typeof e,""))}return(t=Rl(s,r,t,i)).elementType=e,t.type=n,t.lanes=a,t}function Nl(e,t,r,n){return(e=Rl(7,e,n,t)).lanes=r,e}function Dl(e,t,r,n){return(e=Rl(22,e,n,t)).elementType=I,e.lanes=r,e.stateNode={isHidden:!1},e}function zl(e,t,r){return(e=Rl(6,e,null,t)).lanes=r,e}function Bl(e,t,r){return(t=Rl(4,null!==e.children?e.children:[],e.key,t)).lanes=r,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Ul(e,t,r,n,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=gt(0),this.expirationTimes=gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=gt(0),this.identifierPrefix=n,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function Fl(e,t,r,n,i,o,a,s,c){return e=new Ul(e,t,r,s,c),1===t?(t=1,!0===o&&(t|=8)):t=0,o=Rl(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:n,isDehydrated:r,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ro(o),e}function $l(e){if(!e)return Pi;e:{if($e(e=e._reactInternals)!==e||1!==e.tag)throw Error(o(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Ri(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(o(171))}if(1===e.tag){var r=e.type;if(Ri(r))return Li(e,r,t)}return t}function Hl(e,t,r,n,i,o,a,s,c){return(e=Fl(r,n,!0,e,0,o,0,s,c)).context=$l(null),r=e.current,(o=Mo(n=tl(),i=rl(r))).callback=void 0!==t&&null!==t?t:null,Lo(r,o,i),e.current.lanes=i,vt(e,i,n),il(e,n),e}function Vl(e,t,r,n){var i=t.current,o=tl(),a=rl(i);return r=$l(r),null===t.context?t.context=r:t.pendingContext=r,(t=Mo(o,a)).payload={element:e},null!==(n=void 0===n?null:n)&&(t.callback=n),null!==(e=Lo(i,t,a))&&(nl(e,i,a,o),No(e,i,a)),a}function ql(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Kl(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var r=e.retryLane;e.retryLane=0!==r&&r{"use strict";var n=r(2717);t.createRoot=n.createRoot,t.hydrateRoot=n.hydrateRoot},2717:(e,t,r)=>{"use strict";!function e(){if("undefined"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"===typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=r(557)},1131:function(e,t,r){var n,i,o;i=[t,r(5450)],n=function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(t);function n(e){return e&&e.__esModule?e:{default:e}}e.default=r.default},void 0===(o="function"===typeof n?n.apply(t,i):n)||(e.exports=o)},5450:function(e,t,r){var n,i,o;i=[t,r(9652),r(8795)],n=function(e,t,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.setHasSupportToCaptureOption=f;var n=o(t),i=o(r);function o(e){return e&&e.__esModule?e:{default:e}}var a=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=e[n]);return r}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var l=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{capture:!0};return h?e:e.capture}function m(e){if("touches"in e){var t=e.touches[0];return{x:t.pageX,y:t.pageY}}return{x:e.screenX,y:e.screenY}}var g=function(e){function t(){var e;c(this,t);for(var r=arguments.length,n=Array(r),i=0;it&&this.props.onSwipeRight(1,e),this.movePosition.deltaY<-t?this.props.onSwipeUp(1,e):this.movePosition.deltaY>t&&this.props.onSwipeDown(1,e)),this.moveStart=null,this.moving=!1,this.movePosition=null}},{key:"_setSwiperRef",value:function(e){this.swiper=e,this.props.innerRef(e)}},{key:"render",value:function(){var e=this.props,t=(e.tagName,e.className),r=e.style,i=e.children,o=(e.allowMouseEvents,e.onSwipeUp,e.onSwipeDown,e.onSwipeLeft,e.onSwipeRight,e.onSwipeStart,e.onSwipeMove,e.onSwipeEnd,e.innerRef,e.tolerance,s(e,["tagName","className","style","children","allowMouseEvents","onSwipeUp","onSwipeDown","onSwipeLeft","onSwipeRight","onSwipeStart","onSwipeMove","onSwipeEnd","innerRef","tolerance"]));return n.default.createElement(this.props.tagName,a({ref:this._setSwiperRef,onMouseDown:this._onMouseDown,onTouchStart:this._handleSwipeStart,onTouchEnd:this._handleSwipeEnd,className:t,style:r},o),i)}}]),t}(t.Component);g.displayName="ReactSwipe",g.propTypes={tagName:i.default.string,className:i.default.string,style:i.default.object,children:i.default.node,allowMouseEvents:i.default.bool,onSwipeUp:i.default.func,onSwipeDown:i.default.func,onSwipeLeft:i.default.func,onSwipeRight:i.default.func,onSwipeStart:i.default.func,onSwipeMove:i.default.func,onSwipeEnd:i.default.func,innerRef:i.default.func,tolerance:i.default.number.isRequired},g.defaultProps={tagName:"div",allowMouseEvents:!1,onSwipeUp:function(){},onSwipeDown:function(){},onSwipeLeft:function(){},onSwipeRight:function(){},onSwipeStart:function(){},onSwipeMove:function(){},onSwipeEnd:function(){},innerRef:function(){},tolerance:0},e.default=g},void 0===(o="function"===typeof n?n.apply(t,i):n)||(e.exports=o)},8366:e=>{var t="undefined"!==typeof Element,r="function"===typeof Map,n="function"===typeof Set,i="function"===typeof ArrayBuffer&&!!ArrayBuffer.isView;function o(e,a){if(e===a)return!0;if(e&&a&&"object"==typeof e&&"object"==typeof a){if(e.constructor!==a.constructor)return!1;var s,c,l,u;if(Array.isArray(e)){if((s=e.length)!=a.length)return!1;for(c=s;0!==c--;)if(!o(e[c],a[c]))return!1;return!0}if(r&&e instanceof Map&&a instanceof Map){if(e.size!==a.size)return!1;for(u=e.entries();!(c=u.next()).done;)if(!a.has(c.value[0]))return!1;for(u=e.entries();!(c=u.next()).done;)if(!o(c.value[1],a.get(c.value[0])))return!1;return!0}if(n&&e instanceof Set&&a instanceof Set){if(e.size!==a.size)return!1;for(u=e.entries();!(c=u.next()).done;)if(!a.has(c.value[0]))return!1;return!0}if(i&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(a)){if((s=e.length)!=a.length)return!1;for(c=s;0!==c--;)if(e[c]!==a[c])return!1;return!0}if(e.constructor===RegExp)return e.source===a.source&&e.flags===a.flags;if(e.valueOf!==Object.prototype.valueOf&&"function"===typeof e.valueOf&&"function"===typeof a.valueOf)return e.valueOf()===a.valueOf();if(e.toString!==Object.prototype.toString&&"function"===typeof e.toString&&"function"===typeof a.toString)return e.toString()===a.toString();if((s=(l=Object.keys(e)).length)!==Object.keys(a).length)return!1;for(c=s;0!==c--;)if(!Object.prototype.hasOwnProperty.call(a,l[c]))return!1;if(t&&e instanceof Element)return!1;for(c=s;0!==c--;)if(("_owner"!==l[c]&&"__v"!==l[c]&&"__o"!==l[c]||!e.$$typeof)&&!o(e[l[c]],a[l[c]]))return!1;return!0}return e!==e&&a!==a}e.exports=function(e,t){try{return o(e,t)}catch(r){if((r.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw r}}},9378:(e,t,r)=>{e.exports=function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(1),i=s(n),o=s(r(2)),a=s(r(3));function s(e){return e&&e.__esModule?e:{default:e}}var c=function(e){var t=e.fg,r=e.bg,s=e.count,c=e.palette,l=e.string,u=e.size,d=e.getColor,h=e.padding,f=e.className,p=(0,n.useRef)(null);(0,n.useEffect)((function(){m(e)}));var m=function(){var e=(0,o.default)(l),n=Math.floor(u/s),i=e.slice(0,6);if(c&&c.length){var f=Math.floor((0,a.default)(parseInt(e.slice(-3),16),0,4095,0,c.length));t=c[f]}d&&d(t||i);var m=h;p.current.width=n*s+m,p.current.height=n*s+m;var g=e.split("").map((function(e){return(e=parseInt(e,16))<8?0:1})),v=[];v[0]=v[4]=g.slice(0,5),v[1]=v[3]=g.slice(5,10),v[2]=g.slice(10,15);var y=p.current.getContext("2d");y.imageSmoothingEnabled=!1,y.clearRect(0,0,p.current.width,p.current.height),v.forEach((function(e,o){e.forEach((function(e,a){e?(y.fillStyle=t||"#"+i,y.fillRect(n*o+m,n*a+m,n-m,n-m)):(y.fillStyle=r,y.fillRect(n*o+m,n*a+m,n-m,n-m))}))}))};return i.default.createElement("canvas",{ref:p,className:f,style:{width:u,height:u}})};c.defaultProps={className:"identicon",bg:"transparent",count:5,palette:null,fg:null,padding:0,size:400,getColor:null,string:""},t.default=c},function(e,t){e.exports=r(9652)},function(e,t,r){"use strict";var n;"function"==typeof Symbol&&Symbol.iterator,function(i){function o(e,t){var r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}function a(e,t,r,n,i,a){return o(function(e,t){return e<>>32-t}(o(o(t,e),o(n,a)),i),r)}function s(e,t,r,n,i,o,s){return a(t&r|~t&n,e,t,i,o,s)}function c(e,t,r,n,i,o,s){return a(t&n|r&~n,e,t,i,o,s)}function l(e,t,r,n,i,o,s){return a(t^r^n,e,t,i,o,s)}function u(e,t,r,n,i,o,s){return a(r^(t|~n),e,t,i,o,s)}function d(e,t){e[t>>5]|=128<>>9<<4)]=t;var r,n,i,a,d,h=1732584193,f=-271733879,p=-1732584194,m=271733878;for(r=0;r>5]>>>t%32&255);return r}function f(e){var t,r=[];for(r[(e.length>>2)-1]=void 0,t=0;t>5]|=(255&e.charCodeAt(t/8))<>>4&15)+"0123456789abcdef".charAt(15&t);return n}function m(e){return unescape(encodeURIComponent(e))}function g(e){return function(e){return h(d(f(e),8*e.length))}(m(e))}function v(e,t){return function(e,t){var r,n,i=f(e),o=[],a=[];for(o[15]=a[15]=void 0,i.length>16&&(i=d(i,8*e.length)),r=0;r<16;r+=1)o[r]=909522486^i[r],a[r]=1549556828^i[r];return n=d(o.concat(f(t)),512+8*t.length),h(d(a.concat(n),640))}(m(e),m(t))}function y(e,t,r){return t?r?v(t,e):function(e,t){return p(v(e,t))}(t,e):r?g(e):function(e){return p(g(e))}(e)}void 0===(n=function(){return y}.call(t,r,t,e))||(e.exports=n)}()},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r,n,i){return(e-t)*(i-n)/(r-t)+n}}])},3906:(e,t)=>{"use strict";var r,n=Symbol.for("react.element"),i=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),l=Symbol.for("react.context"),u=Symbol.for("react.server_context"),d=Symbol.for("react.forward_ref"),h=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),g=Symbol.for("react.offscreen");function v(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type){case o:case s:case a:case h:case f:return e;default:switch(e=e&&e.$$typeof){case u:case l:case d:case m:case p:case c:return e;default:return t}}case i:return t}}}r=Symbol.for("react.module.reference")},931:(e,t,r)=>{"use strict";r(3906)},3937:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d=(e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)),h=(e,t,r)=>(((e,t,r)=>{t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r),f={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(f,{default:()=>y}),e.exports=(n=f,u(o({},"__esModule",{value:!0}),n));var p=d(r(9652)),m=d(r(8366)),g=r(4480),v=r(9356);class y extends p.Component{constructor(){super(...arguments),h(this,"mounted",!1),h(this,"isReady",!1),h(this,"isPlaying",!1),h(this,"isLoading",!0),h(this,"loadOnReady",null),h(this,"startOnPlay",!0),h(this,"seekOnPlay",null),h(this,"onDurationCalled",!1),h(this,"handlePlayerMount",(e=>{this.player||(this.player=e,this.player.load(this.props.url)),this.progress()})),h(this,"getInternalPlayer",(e=>this.player?this.player[e]:null)),h(this,"progress",(()=>{if(this.props.url&&this.player&&this.isReady){const e=this.getCurrentTime()||0,t=this.getSecondsLoaded(),r=this.getDuration();if(r){const n={playedSeconds:e,played:e/r};null!==t&&(n.loadedSeconds=t,n.loaded=t/r),n.playedSeconds===this.prevPlayed&&n.loadedSeconds===this.prevLoaded||this.props.onProgress(n),this.prevPlayed=n.playedSeconds,this.prevLoaded=n.loadedSeconds}}this.progressTimeout=setTimeout(this.progress,this.props.progressFrequency||this.props.progressInterval)})),h(this,"handleReady",(()=>{if(!this.mounted)return;this.isReady=!0,this.isLoading=!1;const{onReady:e,playing:t,volume:r,muted:n}=this.props;e(),n||null===r||this.player.setVolume(r),this.loadOnReady?(this.player.load(this.loadOnReady,!0),this.loadOnReady=null):t&&this.player.play(),this.handleDurationCheck()})),h(this,"handlePlay",(()=>{this.isPlaying=!0,this.isLoading=!1;const{onStart:e,onPlay:t,playbackRate:r}=this.props;this.startOnPlay&&(this.player.setPlaybackRate&&1!==r&&this.player.setPlaybackRate(r),e(),this.startOnPlay=!1),t(),this.seekOnPlay&&(this.seekTo(this.seekOnPlay),this.seekOnPlay=null),this.handleDurationCheck()})),h(this,"handlePause",(e=>{this.isPlaying=!1,this.isLoading||this.props.onPause(e)})),h(this,"handleEnded",(()=>{const{activePlayer:e,loop:t,onEnded:r}=this.props;e.loopOnEnded&&t&&this.seekTo(0),t||(this.isPlaying=!1,r())})),h(this,"handleError",((...e)=>{this.isLoading=!1,this.props.onError(...e)})),h(this,"handleDurationCheck",(()=>{clearTimeout(this.durationCheckTimeout);const e=this.getDuration();e?this.onDurationCalled||(this.props.onDuration(e),this.onDurationCalled=!0):this.durationCheckTimeout=setTimeout(this.handleDurationCheck,100)})),h(this,"handleLoaded",(()=>{this.isLoading=!1}))}componentDidMount(){this.mounted=!0}componentWillUnmount(){clearTimeout(this.progressTimeout),clearTimeout(this.durationCheckTimeout),this.isReady&&this.props.stopOnUnmount&&(this.player.stop(),this.player.disablePIP&&this.player.disablePIP()),this.mounted=!1}componentDidUpdate(e){if(!this.player)return;const{url:t,playing:r,volume:n,muted:i,playbackRate:o,pip:a,loop:s,activePlayer:c,disableDeferredLoading:l}=this.props;if(!(0,m.default)(e.url,t)){if(this.isLoading&&!c.forceLoad&&!l&&!(0,v.isMediaStream)(t))return console.warn(`ReactPlayer: the attempt to load ${t} is being deferred until the player has loaded`),void(this.loadOnReady=t);this.isLoading=!0,this.startOnPlay=!0,this.onDurationCalled=!1,this.player.load(t,this.isReady)}e.playing||!r||this.isPlaying||this.player.play(),e.playing&&!r&&this.isPlaying&&this.player.pause(),!e.pip&&a&&this.player.enablePIP&&this.player.enablePIP(),e.pip&&!a&&this.player.disablePIP&&this.player.disablePIP(),e.volume!==n&&null!==n&&this.player.setVolume(n),e.muted!==i&&(i?this.player.mute():(this.player.unmute(),null!==n&&setTimeout((()=>this.player.setVolume(n))))),e.playbackRate!==o&&this.player.setPlaybackRate&&this.player.setPlaybackRate(o),e.loop!==s&&this.player.setLoop&&this.player.setLoop(s)}getDuration(){return this.isReady?this.player.getDuration():null}getCurrentTime(){return this.isReady?this.player.getCurrentTime():null}getSecondsLoaded(){return this.isReady?this.player.getSecondsLoaded():null}seekTo(e,t,r){if(!this.isReady)return void(0!==e&&(this.seekOnPlay=e,setTimeout((()=>{this.seekOnPlay=null}),5e3)));if(t?"fraction"===t:e>0&&e<1){const t=this.player.getDuration();return t?void this.player.seekTo(t*e,r):void console.warn("ReactPlayer: could not seek using fraction \u2013\xa0duration not yet available")}this.player.seekTo(e,r)}render(){const e=this.props.activePlayer;return e?p.default.createElement(e,{...this.props,onMount:this.handlePlayerMount,onReady:this.handleReady,onPlay:this.handlePlay,onPause:this.handlePause,onEnded:this.handleEnded,onLoaded:this.handleLoaded,onError:this.handleError}):null}}h(y,"displayName","Player"),h(y,"propTypes",g.propTypes),h(y,"defaultProps",g.defaultProps)},3475:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d=(e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)),h=(e,t,r)=>(((e,t,r)=>{t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r),f={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(f,{createReactPlayer:()=>P}),e.exports=(n=f,u(o({},"__esModule",{value:!0}),n));var p=d(r(9652)),m=d(r(5434)),g=d(r(9961)),v=d(r(8366)),y=r(4480),b=r(9356),w=d(r(3937));const x=(0,b.lazy)((()=>r.e(664).then(r.t.bind(r,9296,23)))),_="undefined"!==typeof window&&window.document,S="undefined"!==typeof r.g&&r.g.window&&r.g.window.document,k=Object.keys(y.propTypes),E=_||S?p.Suspense:()=>null,A=[],P=(e,t)=>{var r;return r=class extends p.Component{constructor(){super(...arguments),h(this,"state",{showPreview:!!this.props.light}),h(this,"references",{wrapper:e=>{this.wrapper=e},player:e=>{this.player=e}}),h(this,"handleClickPreview",(e=>{this.setState({showPreview:!1}),this.props.onClickPreview(e)})),h(this,"showPreview",(()=>{this.setState({showPreview:!0})})),h(this,"getDuration",(()=>this.player?this.player.getDuration():null)),h(this,"getCurrentTime",(()=>this.player?this.player.getCurrentTime():null)),h(this,"getSecondsLoaded",(()=>this.player?this.player.getSecondsLoaded():null)),h(this,"getInternalPlayer",((e="player")=>this.player?this.player.getInternalPlayer(e):null)),h(this,"seekTo",((e,t,r)=>{if(!this.player)return null;this.player.seekTo(e,t,r)})),h(this,"handleReady",(()=>{this.props.onReady(this)})),h(this,"getActivePlayer",(0,g.default)((r=>{for(const t of[...A,...e])if(t.canPlay(r))return t;return t||null}))),h(this,"getConfig",(0,g.default)(((e,t)=>{const{config:r}=this.props;return m.default.all([y.defaultProps.config,y.defaultProps.config[t]||{},r,r[t]||{}])}))),h(this,"getAttributes",(0,g.default)((e=>(0,b.omit)(this.props,k)))),h(this,"renderActivePlayer",(e=>{if(!e)return null;const t=this.getActivePlayer(e);if(!t)return null;const r=this.getConfig(e,t.key);return p.default.createElement(w.default,{...this.props,key:t.key,ref:this.references.player,config:r,activePlayer:t.lazyPlayer||t,onReady:this.handleReady})}))}shouldComponentUpdate(e,t){return!(0,v.default)(this.props,e)||!(0,v.default)(this.state,t)}componentDidUpdate(e){const{light:t}=this.props;!e.light&&t&&this.setState({showPreview:!0}),e.light&&!t&&this.setState({showPreview:!1})}renderPreview(e){if(!e)return null;const{light:t,playIcon:r,previewTabIndex:n,oEmbedUrl:i}=this.props;return p.default.createElement(x,{url:e,light:t,playIcon:r,previewTabIndex:n,oEmbedUrl:i,onClick:this.handleClickPreview})}render(){const{url:e,style:t,width:r,height:n,fallback:i,wrapper:o}=this.props,{showPreview:a}=this.state,s=this.getAttributes(e),c="string"===typeof o?this.references.wrapper:void 0;return p.default.createElement(o,{ref:c,style:{...t,width:r,height:n},...s},p.default.createElement(E,{fallback:i},a?this.renderPreview(e):this.renderActivePlayer(e)))}},h(r,"displayName","ReactPlayer"),h(r,"propTypes",y.propTypes),h(r,"defaultProps",y.defaultProps),h(r,"addCustomPlayer",(e=>{A.push(e)})),h(r,"removeCustomPlayers",(()=>{A.length=0})),h(r,"canPlay",(t=>{for(const r of[...A,...e])if(r.canPlay(t))return!0;return!1})),h(r,"canEnablePIP",(t=>{for(const r of[...A,...e])if(r.canEnablePIP&&r.canEnablePIP(t))return!0;return!1})),r}},4606:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(d,{default:()=>m}),e.exports=(n=d,u(o({},"__esModule",{value:!0}),n));var h=((e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)))(r(9247)),f=r(3475);const p=h.default[h.default.length-1];var m=(0,f.createReactPlayer)(h.default,p)},8243:(e,t,r)=>{var n,i=Object.defineProperty,o=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,c={};((e,t)=>{for(var r in t)i(e,r,{get:t[r],enumerable:!0})})(c,{AUDIO_EXTENSIONS:()=>S,DASH_EXTENSIONS:()=>A,FLV_EXTENSIONS:()=>P,HLS_EXTENSIONS:()=>E,MATCH_URL_DAILYMOTION:()=>b,MATCH_URL_FACEBOOK:()=>f,MATCH_URL_FACEBOOK_WATCH:()=>p,MATCH_URL_KALTURA:()=>_,MATCH_URL_MIXCLOUD:()=>w,MATCH_URL_SOUNDCLOUD:()=>d,MATCH_URL_STREAMABLE:()=>m,MATCH_URL_TWITCH_CHANNEL:()=>y,MATCH_URL_TWITCH_VIDEO:()=>v,MATCH_URL_VIDYARD:()=>x,MATCH_URL_VIMEO:()=>h,MATCH_URL_WISTIA:()=>g,MATCH_URL_YOUTUBE:()=>u,VIDEO_EXTENSIONS:()=>k,canPlay:()=>T}),e.exports=(n=c,((e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let c of a(t))s.call(e,c)||c===r||i(e,c,{get:()=>t[c],enumerable:!(n=o(t,c))||n.enumerable});return e})(i({},"__esModule",{value:!0}),n));var l=r(9356);const u=/(?:youtu\.be\/|youtube(?:-nocookie|education)?\.com\/(?:embed\/|v\/|watch\/|watch\?v=|watch\?.+&v=|shorts\/|live\/))((\w|-){11})|youtube\.com\/playlist\?list=|youtube\.com\/user\//,d=/(?:soundcloud\.com|snd\.sc)\/[^.]+$/,h=/vimeo\.com\/(?!progressive_redirect).+/,f=/^https?:\/\/(www\.)?facebook\.com.*\/(video(s)?|watch|story)(\.php?|\/).+$/,p=/^https?:\/\/fb\.watch\/.+$/,m=/streamable\.com\/([a-z0-9]+)$/,g=/(?:wistia\.(?:com|net)|wi\.st)\/(?:medias|embed)\/(?:iframe\/)?([^?]+)/,v=/(?:www\.|go\.)?twitch\.tv\/videos\/(\d+)($|\?)/,y=/(?:www\.|go\.)?twitch\.tv\/([a-zA-Z0-9_]+)($|\?)/,b=/^(?:(?:https?):)?(?:\/\/)?(?:www\.)?(?:(?:dailymotion\.com(?:\/embed)?\/video)|dai\.ly)\/([a-zA-Z0-9]+)(?:_[\w_-]+)?(?:[\w.#_-]+)?/,w=/mixcloud\.com\/([^/]+\/[^/]+)/,x=/vidyard.com\/(?:watch\/)?([a-zA-Z0-9-_]+)/,_=/^https?:\/\/[a-zA-Z]+\.kaltura.(com|org)\/p\/([0-9]+)\/sp\/([0-9]+)00\/embedIframeJs\/uiconf_id\/([0-9]+)\/partner_id\/([0-9]+)(.*)entry_id.([a-zA-Z0-9-_].*)$/,S=/\.(m4a|m4b|mp4a|mpga|mp2|mp2a|mp3|m2a|m3a|wav|weba|aac|oga|spx)($|\?)/i,k=/\.(mp4|og[gv]|webm|mov|m4v)(#t=[,\d+]+)?($|\?)/i,E=/\.(m3u8)($|\?)/i,A=/\.(mpd)($|\?)/i,P=/\.(flv)($|\?)/i,O=e=>{if(e instanceof Array){for(const t of e){if("string"===typeof t&&O(t))return!0;if(O(t.src))return!0}return!1}return!(!(0,l.isMediaStream)(e)&&!(0,l.isBlobUrl)(e))||(S.test(e)||k.test(e)||E.test(e)||A.test(e)||P.test(e))},T={youtube:e=>e instanceof Array?e.every((e=>u.test(e))):u.test(e),soundcloud:e=>d.test(e)&&!S.test(e),vimeo:e=>h.test(e)&&!k.test(e)&&!E.test(e),facebook:e=>f.test(e)||p.test(e),streamable:e=>m.test(e),wistia:e=>g.test(e),twitch:e=>v.test(e)||y.test(e),dailymotion:e=>b.test(e),mixcloud:e=>w.test(e),vidyard:e=>x.test(e),kaltura:e=>_.test(e),file:O}},9247:(e,t,r)=>{Object.create;var n,i=Object.defineProperty,o=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,s=(Object.getPrototypeOf,Object.prototype.hasOwnProperty),c=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let c of a(t))s.call(e,c)||c===r||i(e,c,{get:()=>t[c],enumerable:!(n=o(t,c))||n.enumerable});return e},l={};((e,t)=>{for(var r in t)i(e,r,{get:t[r],enumerable:!0})})(l,{default:()=>h}),e.exports=(n=l,c(i({},"__esModule",{value:!0}),n));var u=r(9356),d=r(8243),h=[{key:"youtube",name:"YouTube",canPlay:d.canPlay.youtube,lazyPlayer:(0,u.lazy)((()=>r.e(439).then(r.t.bind(r,1646,23))))},{key:"soundcloud",name:"SoundCloud",canPlay:d.canPlay.soundcloud,lazyPlayer:(0,u.lazy)((()=>r.e(125).then(r.t.bind(r,8633,23))))},{key:"vimeo",name:"Vimeo",canPlay:d.canPlay.vimeo,lazyPlayer:(0,u.lazy)((()=>r.e(743).then(r.t.bind(r,4061,23))))},{key:"facebook",name:"Facebook",canPlay:d.canPlay.facebook,lazyPlayer:(0,u.lazy)((()=>r.e(121).then(r.t.bind(r,1879,23))))},{key:"streamable",name:"Streamable",canPlay:d.canPlay.streamable,lazyPlayer:(0,u.lazy)((()=>r.e(546).then(r.t.bind(r,6149,23))))},{key:"wistia",name:"Wistia",canPlay:d.canPlay.wistia,lazyPlayer:(0,u.lazy)((()=>r.e(55).then(r.t.bind(r,3791,23))))},{key:"twitch",name:"Twitch",canPlay:d.canPlay.twitch,lazyPlayer:(0,u.lazy)((()=>r.e(216).then(r.t.bind(r,2301,23))))},{key:"dailymotion",name:"DailyMotion",canPlay:d.canPlay.dailymotion,lazyPlayer:(0,u.lazy)((()=>r.e(596).then(r.t.bind(r,935,23))))},{key:"mixcloud",name:"Mixcloud",canPlay:d.canPlay.mixcloud,lazyPlayer:(0,u.lazy)((()=>r.e(667).then(r.t.bind(r,2339,23))))},{key:"vidyard",name:"Vidyard",canPlay:d.canPlay.vidyard,lazyPlayer:(0,u.lazy)((()=>r.e(888).then(r.t.bind(r,8484,23))))},{key:"kaltura",name:"Kaltura",canPlay:d.canPlay.kaltura,lazyPlayer:(0,u.lazy)((()=>r.e(261).then(r.t.bind(r,6275,23))))},{key:"file",name:"FilePlayer",canPlay:d.canPlay.file,canEnablePIP:e=>d.canPlay.file(e)&&(document.pictureInPictureEnabled||(0,u.supportsWebKitPresentationMode)())&&!d.AUDIO_EXTENSIONS.test(e),lazyPlayer:(0,u.lazy)((()=>r.e(11).then(r.t.bind(r,5257,23))))}]},4480:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(d,{defaultProps:()=>k,propTypes:()=>_}),e.exports=(n=d,u(o({},"__esModule",{value:!0}),n));var h=((e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)))(r(8795));const{string:f,bool:p,number:m,array:g,oneOfType:v,shape:y,object:b,func:w,node:x}=h.default,_={url:v([f,g,b]),playing:p,loop:p,controls:p,volume:m,muted:p,playbackRate:m,width:v([f,m]),height:v([f,m]),style:b,progressInterval:m,playsinline:p,pip:p,stopOnUnmount:p,light:v([p,f,b]),playIcon:x,previewTabIndex:m,fallback:x,oEmbedUrl:f,wrapper:v([f,w,y({render:w.isRequired})]),config:y({soundcloud:y({options:b}),youtube:y({playerVars:b,embedOptions:b,onUnstarted:w}),facebook:y({appId:f,version:f,playerId:f,attributes:b}),dailymotion:y({params:b}),vimeo:y({playerOptions:b,title:f}),file:y({attributes:b,tracks:g,forceVideo:p,forceAudio:p,forceHLS:p,forceSafariHLS:p,forceDisableHls:p,forceDASH:p,forceFLV:p,hlsOptions:b,hlsVersion:f,dashVersion:f,flvVersion:f}),wistia:y({options:b,playerId:f,customControls:g}),mixcloud:y({options:b}),twitch:y({options:b,playerId:f}),vidyard:y({options:b})}),onReady:w,onStart:w,onPlay:w,onPause:w,onBuffer:w,onBufferEnd:w,onEnded:w,onError:w,onDuration:w,onSeek:w,onPlaybackRateChange:w,onPlaybackQualityChange:w,onProgress:w,onClickPreview:w,onEnablePIP:w,onDisablePIP:w},S=()=>{},k={playing:!1,loop:!1,controls:!1,volume:null,muted:!1,playbackRate:1,width:"640px",height:"360px",style:{},progressInterval:1e3,playsinline:!1,pip:!1,stopOnUnmount:!0,light:!1,fallback:null,wrapper:"div",previewTabIndex:0,oEmbedUrl:"https://noembed.com/embed?url={url}",config:{soundcloud:{options:{visual:!0,buying:!1,liking:!1,download:!1,sharing:!1,show_comments:!1,show_playcount:!1}},youtube:{playerVars:{playsinline:1,showinfo:0,rel:0,iv_load_policy:3,modestbranding:1},embedOptions:{},onUnstarted:S},facebook:{appId:"1309697205772819",version:"v3.3",playerId:null,attributes:{}},dailymotion:{params:{api:1,"endscreen-enable":!1}},vimeo:{playerOptions:{autopause:!1,byline:!1,portrait:!1,title:!1},title:null},file:{attributes:{},tracks:[],forceVideo:!1,forceAudio:!1,forceHLS:!1,forceDASH:!1,forceFLV:!1,hlsOptions:{},hlsVersion:"1.1.4",dashVersion:"3.1.3",flvVersion:"1.5.0",forceDisableHls:!1},wistia:{options:{},playerId:null,customControls:null},mixcloud:{options:{hide_cover:1}},twitch:{options:{},playerId:null},vidyard:{options:{}}},onReady:S,onStart:S,onPlay:S,onPause:S,onBuffer:S,onBufferEnd:S,onEnded:S,onError:S,onDuration:S,onSeek:S,onPlaybackRateChange:S,onPlaybackQualityChange:S,onProgress:S,onClickPreview:S,onEnablePIP:S,onDisablePIP:S}},9356:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d=(e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)),h={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(h,{callPlayer:()=>j,getConfig:()=>T,getSDK:()=>O,isBlobUrl:()=>I,isMediaStream:()=>R,lazy:()=>g,omit:()=>C,parseEndTime:()=>S,parseStartTime:()=>_,queryString:()=>E,randomString:()=>k,supportsWebKitPresentationMode:()=>M}),e.exports=(n=h,u(o({},"__esModule",{value:!0}),n));var f=d(r(9652)),p=d(r(3419)),m=d(r(5434));const g=e=>f.default.lazy((async()=>{const t=await e();return"function"===typeof t.default?t:t.default})),v=/[?&#](?:start|t)=([0-9hms]+)/,y=/[?&#]end=([0-9hms]+)/,b=/(\d+)(h|m|s)/g,w=/^\d+$/;function x(e,t){if(e instanceof Array)return;const r=e.match(t);if(r){const e=r[1];if(e.match(b))return function(e){let t=0,r=b.exec(e);for(;null!==r;){const[,n,i]=r;"h"===i&&(t+=60*parseInt(n,10)*60),"m"===i&&(t+=60*parseInt(n,10)),"s"===i&&(t+=parseInt(n,10)),r=b.exec(e)}return t}(e);if(w.test(e))return parseInt(e)}}function _(e){return x(e,v)}function S(e){return x(e,y)}function k(){return Math.random().toString(36).substr(2,5)}function E(e){return Object.keys(e).map((t=>`${t}=${e[t]}`)).join("&")}function A(e){return window[e]?window[e]:window.exports&&window.exports[e]?window.exports[e]:window.module&&window.module.exports&&window.module.exports[e]?window.module.exports[e]:null}const P={},O=function(e){0;return e}((function(e,t,r=null,n=(()=>!0),i=p.default){const o=A(t);return o&&n(o)?Promise.resolve(o):new Promise(((n,o)=>{if(P[e])return void P[e].push({resolve:n,reject:o});P[e]=[{resolve:n,reject:o}];const a=t=>{P[e].forEach((e=>e.resolve(t)))};if(r){const e=window[r];window[r]=function(){e&&e(),a(A(t))}}i(e,(n=>{n?(P[e].forEach((e=>e.reject(n))),P[e]=null):r||a(A(t))}))}))}));function T(e,t){return(0,m.default)(t.config,e.config)}function C(e,...t){const r=[].concat(...t),n={},i=Object.keys(e);for(const o of i)-1===r.indexOf(o)&&(n[o]=e[o]);return n}function j(e,...t){if(!this.player||!this.player[e]){let t=`ReactPlayer: ${this.constructor.displayName} player could not call %c${e}%c \u2013 `;return this.player?this.player[e]||(t+="The method was not available"):t+="The player was not available",console.warn(t,"font-weight: bold",""),null}return this.player[e](...t)}function R(e){return"undefined"!==typeof window&&"undefined"!==typeof window.MediaStream&&e instanceof window.MediaStream}function I(e){return/^blob:/.test(e)}function M(e=document.createElement("video")){const t=!1===/iPhone|iPod/.test(navigator.userAgent);return e.webkitSupportsPresentationMode&&"function"===typeof e.webkitSetPresentationMode&&t}},2083:function(e,t,r){"use strict";var n=this&&this.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])},e(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(t,"__esModule",{value:!0}),t.QRCode=void 0;var i=r(9724),o=r(3330),a=r(9652),s=r(2717),c=function(e){function t(t){var r=e.call(this,t)||this;return r.canvas=a.createRef(),r}return n(t,e),t.utf16to8=function(e){var t,r,n="",i=e.length;for(t=0;t=1&&r<=127?n+=e.charAt(t):r>2047?(n+=String.fromCharCode(224|r>>12&15),n+=String.fromCharCode(128|r>>6&63),n+=String.fromCharCode(128|r>>0&63)):(n+=String.fromCharCode(192|r>>6&31),n+=String.fromCharCode(128|r>>0&63));return n},t.prototype.drawRoundedSquare=function(e,t,r,n,i,o,a,s){s.lineWidth=e,s.fillStyle=i,s.strokeStyle=i,r+=e/2,t+=e/2,n-=e,Array.isArray(o)||(o=[o,o,o,o]);var c=(o=o.map((function(e){return(e=Math.min(e,n/2))<0?0:e})))[0]||0,l=o[1]||0,u=o[2]||0,d=o[3]||0;s.beginPath(),s.moveTo(t+c,r),s.lineTo(t+n-l,r),l&&s.quadraticCurveTo(t+n,r,t+n,r+l),s.lineTo(t+n,r+n-u),u&&s.quadraticCurveTo(t+n,r+n,t+n-u,r+n),s.lineTo(t+d,r+n),d&&s.quadraticCurveTo(t,r+n,t,r+n-d),s.lineTo(t,r+c),c&&s.quadraticCurveTo(t,r,t+c,r),s.closePath(),s.stroke(),a&&s.fill()},t.prototype.drawPositioningPattern=function(e,t,r,n,i,o,a){void 0===a&&(a=[0,0,0,0]);var s,c,l,u,d=Math.ceil(t);"number"===typeof a||Array.isArray(a)?c=s=a:(s=a.outer||0,c=a.inner||0),"string"!==typeof o?(l=o.outer,u=o.inner):(l=o,u=o);var h=n*t+r,f=i*t+r,p=7*t;this.drawRoundedSquare(d,f,h,p,l,s,!1,e),p=3*t,h+=2*t,f+=2*t,this.drawRoundedSquare(d,f,h,p,u,c,!0,e)},t.prototype.isInPositioninZone=function(e,t,r){return r.some((function(r){return t>=r.row&&t<=r.row+7&&e>=r.col&&e<=r.col+7}))},t.prototype.transformPixelLengthIntoNumberOfCells=function(e,t){return e/t},t.prototype.isCoordinateInImage=function(e,t,r,n,i,o,a,s){if(s){var c=this.transformPixelLengthIntoNumberOfCells(i,a),l=this.transformPixelLengthIntoNumberOfCells(o,a),u=this.transformPixelLengthIntoNumberOfCells(r,a)-1,d=this.transformPixelLengthIntoNumberOfCells(n,a)-1;return t>=c-2&&t<=c+u+2&&e>=l-2&&e<=l+d+2}return!1},t.prototype.shouldComponentUpdate=function(e){return!i(this.props,e)},t.prototype.componentDidMount=function(){this.update()},t.prototype.componentDidUpdate=function(){this.update()},t.prototype.update=function(){var e=this.props,r=e.value,n=e.ecLevel,i=e.enableCORS,a=e.bgColor,c=e.fgColor,l=e.logoImage,u=e.logoOpacity,d=e.logoOnLoad,h=e.removeQrCodeBehindLogo,f=e.qrStyle,p=e.eyeRadius,m=e.eyeColor,g=e.logoPaddingStyle,v=+this.props.size,y=+this.props.quietZone,b=this.props.logoWidth?+this.props.logoWidth:0,w=this.props.logoHeight?+this.props.logoHeight:0,x=this.props.logoPadding?+this.props.logoPadding:0,_=o(0,n);_.addData(t.utf16to8(r)),_.make();var S=s.findDOMNode(this.canvas.current),k=S.getContext("2d"),E=v+2*y,A=_.getModuleCount(),P=v/A,O=window.devicePixelRatio||1;S.height=S.width=E*O,k.scale(O,O),k.fillStyle=a,k.fillRect(0,0,E,E);var T=y,C=[{row:0,col:0},{row:0,col:A-7},{row:A-7,col:0}];if(k.strokeStyle=c,"dots"===f){k.fillStyle=c;for(var j=P/2,R=0;R{"use strict";r.d(t,{j:()=>a});var n=r(8619),i=r(37),o=r(9864),a=new(function(e){function t(){var t;return(t=e.call(this)||this).setup=function(e){var t;if(!o.sk&&(null==(t=window)?void 0:t.addEventListener)){var r=function(){return e()};return window.addEventListener("visibilitychange",r,!1),window.addEventListener("focus",r,!1),function(){window.removeEventListener("visibilitychange",r),window.removeEventListener("focus",r)}}},t}(0,n.Z)(t,e);var r=t.prototype;return r.onSubscribe=function(){this.cleanup||this.setEventListener(this.setup)},r.onUnsubscribe=function(){var e;this.hasListeners()||(null==(e=this.cleanup)||e.call(this),this.cleanup=void 0)},r.setEventListener=function(e){var t,r=this;this.setup=e,null==(t=this.cleanup)||t.call(this),this.cleanup=e((function(e){"boolean"===typeof e?r.setFocused(e):r.onFocus()}))},r.setFocused=function(e){this.focused=e,e&&this.onFocus()},r.onFocus=function(){this.listeners.forEach((function(e){e()}))},r.isFocused=function(){return"boolean"===typeof this.focused?this.focused:"undefined"===typeof document||[void 0,"visible","prerender"].includes(document.visibilityState)},t}(i.l))},9299:(e,t,r)=>{"use strict";r.d(t,{QueryClient:()=>n.S});var n=r(8699),i=r(6414);r.o(i,"QueryClientProvider")&&r.d(t,{QueryClientProvider:function(){return i.QueryClientProvider}}),r.o(i,"useQuery")&&r.d(t,{useQuery:function(){return i.useQuery}}),r.o(i,"useQueryClient")&&r.d(t,{useQueryClient:function(){return i.useQueryClient}})},6648:(e,t,r)=>{"use strict";r.d(t,{E:()=>o,j:()=>i});var n=console;function i(){return n}function o(e){n=e}},6346:(e,t,r)=>{"use strict";r.d(t,{V:()=>i});var n=r(9864),i=new(function(){function e(){this.queue=[],this.transactions=0,this.notifyFn=function(e){e()},this.batchNotifyFn=function(e){e()}}var t=e.prototype;return t.batch=function(e){var t;this.transactions++;try{t=e()}finally{this.transactions--,this.transactions||this.flush()}return t},t.schedule=function(e){var t=this;this.transactions?this.queue.push(e):(0,n.A4)((function(){t.notifyFn(e)}))},t.batchCalls=function(e){var t=this;return function(){for(var r=arguments.length,n=new Array(r),i=0;i{"use strict";r.d(t,{N:()=>a});var n=r(8619),i=r(37),o=r(9864),a=new(function(e){function t(){var t;return(t=e.call(this)||this).setup=function(e){var t;if(!o.sk&&(null==(t=window)?void 0:t.addEventListener)){var r=function(){return e()};return window.addEventListener("online",r,!1),window.addEventListener("offline",r,!1),function(){window.removeEventListener("online",r),window.removeEventListener("offline",r)}}},t}(0,n.Z)(t,e);var r=t.prototype;return r.onSubscribe=function(){this.cleanup||this.setEventListener(this.setup)},r.onUnsubscribe=function(){var e;this.hasListeners()||(null==(e=this.cleanup)||e.call(this),this.cleanup=void 0)},r.setEventListener=function(e){var t,r=this;this.setup=e,null==(t=this.cleanup)||t.call(this),this.cleanup=e((function(e){"boolean"===typeof e?r.setOnline(e):r.onOnline()}))},r.setOnline=function(e){this.online=e,e&&this.onOnline()},r.onOnline=function(){this.listeners.forEach((function(e){e()}))},r.isOnline=function(){return"boolean"===typeof this.online?this.online:"undefined"===typeof navigator||"undefined"===typeof navigator.onLine||navigator.onLine},t}(i.l))},8699:(e,t,r)=>{"use strict";r.d(t,{S:()=>y});var n=r(1730),i=r(9864),o=r(8619),a=r(6346),s=r(6648),c=r(7356),l=function(){function e(e){this.abortSignalConsumed=!1,this.hadObservers=!1,this.defaultOptions=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.cache=e.cache,this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.initialState=e.state||this.getDefaultState(this.options),this.state=this.initialState,this.meta=e.meta,this.scheduleGc()}var t=e.prototype;return t.setOptions=function(e){var t;this.options=(0,n.Z)({},this.defaultOptions,e),this.meta=null==e?void 0:e.meta,this.cacheTime=Math.max(this.cacheTime||0,null!=(t=this.options.cacheTime)?t:3e5)},t.setDefaultOptions=function(e){this.defaultOptions=e},t.scheduleGc=function(){var e=this;this.clearGcTimeout(),(0,i.PN)(this.cacheTime)&&(this.gcTimeout=setTimeout((function(){e.optionalRemove()}),this.cacheTime))},t.clearGcTimeout=function(){this.gcTimeout&&(clearTimeout(this.gcTimeout),this.gcTimeout=void 0)},t.optionalRemove=function(){this.observers.length||(this.state.isFetching?this.hadObservers&&this.scheduleGc():this.cache.remove(this))},t.setData=function(e,t){var r,n,o=this.state.data,a=(0,i.SE)(e,o);return(null==(r=(n=this.options).isDataEqual)?void 0:r.call(n,o,a))?a=o:!1!==this.options.structuralSharing&&(a=(0,i.Q$)(o,a)),this.dispatch({data:a,type:"success",dataUpdatedAt:null==t?void 0:t.updatedAt}),a},t.setState=function(e,t){this.dispatch({type:"setState",state:e,setStateOptions:t})},t.cancel=function(e){var t,r=this.promise;return null==(t=this.retryer)||t.cancel(e),r?r.then(i.ZT).catch(i.ZT):Promise.resolve()},t.destroy=function(){this.clearGcTimeout(),this.cancel({silent:!0})},t.reset=function(){this.destroy(),this.setState(this.initialState)},t.isActive=function(){return this.observers.some((function(e){return!1!==e.options.enabled}))},t.isFetching=function(){return this.state.isFetching},t.isStale=function(){return this.state.isInvalidated||!this.state.dataUpdatedAt||this.observers.some((function(e){return e.getCurrentResult().isStale}))},t.isStaleByTime=function(e){return void 0===e&&(e=0),this.state.isInvalidated||!this.state.dataUpdatedAt||!(0,i.Kp)(this.state.dataUpdatedAt,e)},t.onFocus=function(){var e,t=this.observers.find((function(e){return e.shouldFetchOnWindowFocus()}));t&&t.refetch(),null==(e=this.retryer)||e.continue()},t.onOnline=function(){var e,t=this.observers.find((function(e){return e.shouldFetchOnReconnect()}));t&&t.refetch(),null==(e=this.retryer)||e.continue()},t.addObserver=function(e){-1===this.observers.indexOf(e)&&(this.observers.push(e),this.hadObservers=!0,this.clearGcTimeout(),this.cache.notify({type:"observerAdded",query:this,observer:e}))},t.removeObserver=function(e){-1!==this.observers.indexOf(e)&&(this.observers=this.observers.filter((function(t){return t!==e})),this.observers.length||(this.retryer&&(this.retryer.isTransportCancelable||this.abortSignalConsumed?this.retryer.cancel({revert:!0}):this.retryer.cancelRetry()),this.cacheTime?this.scheduleGc():this.cache.remove(this)),this.cache.notify({type:"observerRemoved",query:this,observer:e}))},t.getObserversCount=function(){return this.observers.length},t.invalidate=function(){this.state.isInvalidated||this.dispatch({type:"invalidate"})},t.fetch=function(e,t){var r,n,o,a=this;if(this.state.isFetching)if(this.state.dataUpdatedAt&&(null==t?void 0:t.cancelRefetch))this.cancel({silent:!0});else if(this.promise){var l;return null==(l=this.retryer)||l.continueRetry(),this.promise}if(e&&this.setOptions(e),!this.options.queryFn){var u=this.observers.find((function(e){return e.options.queryFn}));u&&this.setOptions(u.options)}var d=(0,i.mc)(this.queryKey),h=(0,i.G9)(),f={queryKey:d,pageParam:void 0,meta:this.meta};Object.defineProperty(f,"signal",{enumerable:!0,get:function(){if(h)return a.abortSignalConsumed=!0,h.signal}});var p,m,g={fetchOptions:t,options:this.options,queryKey:d,state:this.state,fetchFn:function(){return a.options.queryFn?(a.abortSignalConsumed=!1,a.options.queryFn(f)):Promise.reject("Missing queryFn")},meta:this.meta};(null==(r=this.options.behavior)?void 0:r.onFetch)&&(null==(p=this.options.behavior)||p.onFetch(g));(this.revertState=this.state,this.state.isFetching&&this.state.fetchMeta===(null==(n=g.fetchOptions)?void 0:n.meta))||this.dispatch({type:"fetch",meta:null==(m=g.fetchOptions)?void 0:m.meta});return this.retryer=new c.m4({fn:g.fetchFn,abort:null==h||null==(o=h.abort)?void 0:o.bind(h),onSuccess:function(e){a.setData(e),null==a.cache.config.onSuccess||a.cache.config.onSuccess(e,a),0===a.cacheTime&&a.optionalRemove()},onError:function(e){(0,c.DV)(e)&&e.silent||a.dispatch({type:"error",error:e}),(0,c.DV)(e)||(null==a.cache.config.onError||a.cache.config.onError(e,a),(0,s.j)().error(e)),0===a.cacheTime&&a.optionalRemove()},onFail:function(){a.dispatch({type:"failed"})},onPause:function(){a.dispatch({type:"pause"})},onContinue:function(){a.dispatch({type:"continue"})},retry:g.options.retry,retryDelay:g.options.retryDelay}),this.promise=this.retryer.promise,this.promise},t.dispatch=function(e){var t=this;this.state=this.reducer(this.state,e),a.V.batch((function(){t.observers.forEach((function(t){t.onQueryUpdate(e)})),t.cache.notify({query:t,type:"queryUpdated",action:e})}))},t.getDefaultState=function(e){var t="function"===typeof e.initialData?e.initialData():e.initialData,r="undefined"!==typeof e.initialData?"function"===typeof e.initialDataUpdatedAt?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0,n="undefined"!==typeof t;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?null!=r?r:Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchMeta:null,isFetching:!1,isInvalidated:!1,isPaused:!1,status:n?"success":"idle"}},t.reducer=function(e,t){var r,i;switch(t.type){case"failed":return(0,n.Z)({},e,{fetchFailureCount:e.fetchFailureCount+1});case"pause":return(0,n.Z)({},e,{isPaused:!0});case"continue":return(0,n.Z)({},e,{isPaused:!1});case"fetch":return(0,n.Z)({},e,{fetchFailureCount:0,fetchMeta:null!=(r=t.meta)?r:null,isFetching:!0,isPaused:!1},!e.dataUpdatedAt&&{error:null,status:"loading"});case"success":return(0,n.Z)({},e,{data:t.data,dataUpdateCount:e.dataUpdateCount+1,dataUpdatedAt:null!=(i=t.dataUpdatedAt)?i:Date.now(),error:null,fetchFailureCount:0,isFetching:!1,isInvalidated:!1,isPaused:!1,status:"success"});case"error":var o=t.error;return(0,c.DV)(o)&&o.revert&&this.revertState?(0,n.Z)({},this.revertState):(0,n.Z)({},e,{error:o,errorUpdateCount:e.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:e.fetchFailureCount+1,isFetching:!1,isPaused:!1,status:"error"});case"invalidate":return(0,n.Z)({},e,{isInvalidated:!0});case"setState":return(0,n.Z)({},e,t.state);default:return e}},e}(),u=r(37),d=function(e){function t(t){var r;return(r=e.call(this)||this).config=t||{},r.queries=[],r.queriesMap={},r}(0,o.Z)(t,e);var r=t.prototype;return r.build=function(e,t,r){var n,o=t.queryKey,a=null!=(n=t.queryHash)?n:(0,i.Rm)(o,t),s=this.get(a);return s||(s=new l({cache:this,queryKey:o,queryHash:a,options:e.defaultQueryOptions(t),state:r,defaultOptions:e.getQueryDefaults(o),meta:t.meta}),this.add(s)),s},r.add=function(e){this.queriesMap[e.queryHash]||(this.queriesMap[e.queryHash]=e,this.queries.push(e),this.notify({type:"queryAdded",query:e}))},r.remove=function(e){var t=this.queriesMap[e.queryHash];t&&(e.destroy(),this.queries=this.queries.filter((function(t){return t!==e})),t===e&&delete this.queriesMap[e.queryHash],this.notify({type:"queryRemoved",query:e}))},r.clear=function(){var e=this;a.V.batch((function(){e.queries.forEach((function(t){e.remove(t)}))}))},r.get=function(e){return this.queriesMap[e]},r.getAll=function(){return this.queries},r.find=function(e,t){var r=(0,i.I6)(e,t)[0];return"undefined"===typeof r.exact&&(r.exact=!0),this.queries.find((function(e){return(0,i._x)(r,e)}))},r.findAll=function(e,t){var r=(0,i.I6)(e,t)[0];return Object.keys(r).length>0?this.queries.filter((function(e){return(0,i._x)(r,e)})):this.queries},r.notify=function(e){var t=this;a.V.batch((function(){t.listeners.forEach((function(t){t(e)}))}))},r.onFocus=function(){var e=this;a.V.batch((function(){e.queries.forEach((function(e){e.onFocus()}))}))},r.onOnline=function(){var e=this;a.V.batch((function(){e.queries.forEach((function(e){e.onOnline()}))}))},t}(u.l),h=function(){function e(e){this.options=(0,n.Z)({},e.defaultOptions,e.options),this.mutationId=e.mutationId,this.mutationCache=e.mutationCache,this.observers=[],this.state=e.state||{context:void 0,data:void 0,error:null,failureCount:0,isPaused:!1,status:"idle",variables:void 0},this.meta=e.meta}var t=e.prototype;return t.setState=function(e){this.dispatch({type:"setState",state:e})},t.addObserver=function(e){-1===this.observers.indexOf(e)&&this.observers.push(e)},t.removeObserver=function(e){this.observers=this.observers.filter((function(t){return t!==e}))},t.cancel=function(){return this.retryer?(this.retryer.cancel(),this.retryer.promise.then(i.ZT).catch(i.ZT)):Promise.resolve()},t.continue=function(){return this.retryer?(this.retryer.continue(),this.retryer.promise):this.execute()},t.execute=function(){var e,t=this,r="loading"===this.state.status,n=Promise.resolve();return r||(this.dispatch({type:"loading",variables:this.options.variables}),n=n.then((function(){null==t.mutationCache.config.onMutate||t.mutationCache.config.onMutate(t.state.variables,t)})).then((function(){return null==t.options.onMutate?void 0:t.options.onMutate(t.state.variables)})).then((function(e){e!==t.state.context&&t.dispatch({type:"loading",context:e,variables:t.state.variables})}))),n.then((function(){return t.executeMutation()})).then((function(r){e=r,null==t.mutationCache.config.onSuccess||t.mutationCache.config.onSuccess(e,t.state.variables,t.state.context,t)})).then((function(){return null==t.options.onSuccess?void 0:t.options.onSuccess(e,t.state.variables,t.state.context)})).then((function(){return null==t.options.onSettled?void 0:t.options.onSettled(e,null,t.state.variables,t.state.context)})).then((function(){return t.dispatch({type:"success",data:e}),e})).catch((function(e){return null==t.mutationCache.config.onError||t.mutationCache.config.onError(e,t.state.variables,t.state.context,t),(0,s.j)().error(e),Promise.resolve().then((function(){return null==t.options.onError?void 0:t.options.onError(e,t.state.variables,t.state.context)})).then((function(){return null==t.options.onSettled?void 0:t.options.onSettled(void 0,e,t.state.variables,t.state.context)})).then((function(){throw t.dispatch({type:"error",error:e}),e}))}))},t.executeMutation=function(){var e,t=this;return this.retryer=new c.m4({fn:function(){return t.options.mutationFn?t.options.mutationFn(t.state.variables):Promise.reject("No mutationFn found")},onFail:function(){t.dispatch({type:"failed"})},onPause:function(){t.dispatch({type:"pause"})},onContinue:function(){t.dispatch({type:"continue"})},retry:null!=(e=this.options.retry)?e:0,retryDelay:this.options.retryDelay}),this.retryer.promise},t.dispatch=function(e){var t=this;this.state=function(e,t){switch(t.type){case"failed":return(0,n.Z)({},e,{failureCount:e.failureCount+1});case"pause":return(0,n.Z)({},e,{isPaused:!0});case"continue":return(0,n.Z)({},e,{isPaused:!1});case"loading":return(0,n.Z)({},e,{context:t.context,data:void 0,error:null,isPaused:!1,status:"loading",variables:t.variables});case"success":return(0,n.Z)({},e,{data:t.data,error:null,status:"success",isPaused:!1});case"error":return(0,n.Z)({},e,{data:void 0,error:t.error,failureCount:e.failureCount+1,isPaused:!1,status:"error"});case"setState":return(0,n.Z)({},e,t.state);default:return e}}(this.state,e),a.V.batch((function(){t.observers.forEach((function(t){t.onMutationUpdate(e)})),t.mutationCache.notify(t)}))},e}();var f=function(e){function t(t){var r;return(r=e.call(this)||this).config=t||{},r.mutations=[],r.mutationId=0,r}(0,o.Z)(t,e);var r=t.prototype;return r.build=function(e,t,r){var n=new h({mutationCache:this,mutationId:++this.mutationId,options:e.defaultMutationOptions(t),state:r,defaultOptions:t.mutationKey?e.getMutationDefaults(t.mutationKey):void 0,meta:t.meta});return this.add(n),n},r.add=function(e){this.mutations.push(e),this.notify(e)},r.remove=function(e){this.mutations=this.mutations.filter((function(t){return t!==e})),e.cancel(),this.notify(e)},r.clear=function(){var e=this;a.V.batch((function(){e.mutations.forEach((function(t){e.remove(t)}))}))},r.getAll=function(){return this.mutations},r.find=function(e){return"undefined"===typeof e.exact&&(e.exact=!0),this.mutations.find((function(t){return(0,i.X7)(e,t)}))},r.findAll=function(e){return this.mutations.filter((function(t){return(0,i.X7)(e,t)}))},r.notify=function(e){var t=this;a.V.batch((function(){t.listeners.forEach((function(t){t(e)}))}))},r.onFocus=function(){this.resumePausedMutations()},r.onOnline=function(){this.resumePausedMutations()},r.resumePausedMutations=function(){var e=this.mutations.filter((function(e){return e.state.isPaused}));return a.V.batch((function(){return e.reduce((function(e,t){return e.then((function(){return t.continue().catch(i.ZT)}))}),Promise.resolve())}))},t}(u.l),p=r(5133),m=r(8101);function g(e,t){return null==e.getNextPageParam?void 0:e.getNextPageParam(t[t.length-1],t)}function v(e,t){return null==e.getPreviousPageParam?void 0:e.getPreviousPageParam(t[0],t)}var y=function(){function e(e){void 0===e&&(e={}),this.queryCache=e.queryCache||new d,this.mutationCache=e.mutationCache||new f,this.defaultOptions=e.defaultOptions||{},this.queryDefaults=[],this.mutationDefaults=[]}var t=e.prototype;return t.mount=function(){var e=this;this.unsubscribeFocus=p.j.subscribe((function(){p.j.isFocused()&&m.N.isOnline()&&(e.mutationCache.onFocus(),e.queryCache.onFocus())})),this.unsubscribeOnline=m.N.subscribe((function(){p.j.isFocused()&&m.N.isOnline()&&(e.mutationCache.onOnline(),e.queryCache.onOnline())}))},t.unmount=function(){var e,t;null==(e=this.unsubscribeFocus)||e.call(this),null==(t=this.unsubscribeOnline)||t.call(this)},t.isFetching=function(e,t){var r=(0,i.I6)(e,t)[0];return r.fetching=!0,this.queryCache.findAll(r).length},t.isMutating=function(e){return this.mutationCache.findAll((0,n.Z)({},e,{fetching:!0})).length},t.getQueryData=function(e,t){var r;return null==(r=this.queryCache.find(e,t))?void 0:r.state.data},t.getQueriesData=function(e){return this.getQueryCache().findAll(e).map((function(e){return[e.queryKey,e.state.data]}))},t.setQueryData=function(e,t,r){var n=(0,i._v)(e),o=this.defaultQueryOptions(n);return this.queryCache.build(this,o).setData(t,r)},t.setQueriesData=function(e,t,r){var n=this;return a.V.batch((function(){return n.getQueryCache().findAll(e).map((function(e){var i=e.queryKey;return[i,n.setQueryData(i,t,r)]}))}))},t.getQueryState=function(e,t){var r;return null==(r=this.queryCache.find(e,t))?void 0:r.state},t.removeQueries=function(e,t){var r=(0,i.I6)(e,t)[0],n=this.queryCache;a.V.batch((function(){n.findAll(r).forEach((function(e){n.remove(e)}))}))},t.resetQueries=function(e,t,r){var o=this,s=(0,i.I6)(e,t,r),c=s[0],l=s[1],u=this.queryCache,d=(0,n.Z)({},c,{active:!0});return a.V.batch((function(){return u.findAll(c).forEach((function(e){e.reset()})),o.refetchQueries(d,l)}))},t.cancelQueries=function(e,t,r){var n=this,o=(0,i.I6)(e,t,r),s=o[0],c=o[1],l=void 0===c?{}:c;"undefined"===typeof l.revert&&(l.revert=!0);var u=a.V.batch((function(){return n.queryCache.findAll(s).map((function(e){return e.cancel(l)}))}));return Promise.all(u).then(i.ZT).catch(i.ZT)},t.invalidateQueries=function(e,t,r){var o,s,c,l=this,u=(0,i.I6)(e,t,r),d=u[0],h=u[1],f=(0,n.Z)({},d,{active:null==(o=null!=(s=d.refetchActive)?s:d.active)||o,inactive:null!=(c=d.refetchInactive)&&c});return a.V.batch((function(){return l.queryCache.findAll(d).forEach((function(e){e.invalidate()})),l.refetchQueries(f,h)}))},t.refetchQueries=function(e,t,r){var o=this,s=(0,i.I6)(e,t,r),c=s[0],l=s[1],u=a.V.batch((function(){return o.queryCache.findAll(c).map((function(e){return e.fetch(void 0,(0,n.Z)({},l,{meta:{refetchPage:null==c?void 0:c.refetchPage}}))}))})),d=Promise.all(u).then(i.ZT);return(null==l?void 0:l.throwOnError)||(d=d.catch(i.ZT)),d},t.fetchQuery=function(e,t,r){var n=(0,i._v)(e,t,r),o=this.defaultQueryOptions(n);"undefined"===typeof o.retry&&(o.retry=!1);var a=this.queryCache.build(this,o);return a.isStaleByTime(o.staleTime)?a.fetch(o):Promise.resolve(a.state.data)},t.prefetchQuery=function(e,t,r){return this.fetchQuery(e,t,r).then(i.ZT).catch(i.ZT)},t.fetchInfiniteQuery=function(e,t,r){var n=(0,i._v)(e,t,r);return n.behavior={onFetch:function(e){e.fetchFn=function(){var t,r,n,o,a,s,l,u=null==(t=e.fetchOptions)||null==(r=t.meta)?void 0:r.refetchPage,d=null==(n=e.fetchOptions)||null==(o=n.meta)?void 0:o.fetchMore,h=null==d?void 0:d.pageParam,f="forward"===(null==d?void 0:d.direction),p="backward"===(null==d?void 0:d.direction),m=(null==(a=e.state.data)?void 0:a.pages)||[],y=(null==(s=e.state.data)?void 0:s.pageParams)||[],b=(0,i.G9)(),w=null==b?void 0:b.signal,x=y,_=!1,S=e.options.queryFn||function(){return Promise.reject("Missing queryFn")},k=function(e,t,r,n){return x=n?[t].concat(x):[].concat(x,[t]),n?[r].concat(e):[].concat(e,[r])},E=function(t,r,n,i){if(_)return Promise.reject("Cancelled");if("undefined"===typeof n&&!r&&t.length)return Promise.resolve(t);var o={queryKey:e.queryKey,signal:w,pageParam:n,meta:e.meta},a=S(o),s=Promise.resolve(a).then((function(e){return k(t,n,e,i)}));return(0,c.LE)(a)&&(s.cancel=a.cancel),s};if(m.length)if(f){var A="undefined"!==typeof h,P=A?h:g(e.options,m);l=E(m,A,P)}else if(p){var O="undefined"!==typeof h,T=O?h:v(e.options,m);l=E(m,O,T,!0)}else!function(){x=[];var t="undefined"===typeof e.options.getNextPageParam,r=!u||!m[0]||u(m[0],0,m);l=r?E([],t,y[0]):Promise.resolve(k([],y[0],m[0]));for(var n=function(r){l=l.then((function(n){if(!u||!m[r]||u(m[r],r,m)){var i=t?y[r]:g(e.options,n);return E(n,t,i)}return Promise.resolve(k(n,y[r],m[r]))}))},i=1;i{"use strict";r.d(t,{DV:()=>l,LE:()=>s,m4:()=>u});var n=r(5133),i=r(8101),o=r(9864);function a(e){return Math.min(1e3*Math.pow(2,e),3e4)}function s(e){return"function"===typeof(null==e?void 0:e.cancel)}var c=function(e){this.revert=null==e?void 0:e.revert,this.silent=null==e?void 0:e.silent};function l(e){return e instanceof c}var u=function(e){var t,r,l,u,d=this,h=!1;this.abort=e.abort,this.cancel=function(e){return null==t?void 0:t(e)},this.cancelRetry=function(){h=!0},this.continueRetry=function(){h=!1},this.continue=function(){return null==r?void 0:r()},this.failureCount=0,this.isPaused=!1,this.isResolved=!1,this.isTransportCancelable=!1,this.promise=new Promise((function(e,t){l=e,u=t}));var f=function(t){d.isResolved||(d.isResolved=!0,null==e.onSuccess||e.onSuccess(t),null==r||r(),l(t))},p=function(t){d.isResolved||(d.isResolved=!0,null==e.onError||e.onError(t),null==r||r(),u(t))};!function l(){if(!d.isResolved){var u;try{u=e.fn()}catch(m){u=Promise.reject(m)}t=function(e){if(!d.isResolved&&(p(new c(e)),null==d.abort||d.abort(),s(u)))try{u.cancel()}catch(t){}},d.isTransportCancelable=s(u),Promise.resolve(u).then(f).catch((function(t){var s,c;if(!d.isResolved){var u=null!=(s=e.retry)?s:3,f=null!=(c=e.retryDelay)?c:a,m="function"===typeof f?f(d.failureCount,t):f,g=!0===u||"number"===typeof u&&d.failureCount{"use strict";r.d(t,{l:()=>n});var n=function(){function e(){this.listeners=[]}var t=e.prototype;return t.subscribe=function(e){var t=this,r=e||function(){};return this.listeners.push(r),this.onSubscribe(),function(){t.listeners=t.listeners.filter((function(e){return e!==r})),t.onUnsubscribe()}},t.hasListeners=function(){return this.listeners.length>0},t.onSubscribe=function(){},t.onUnsubscribe=function(){},e}()},6414:()=>{},9864:(e,t,r)=>{"use strict";r.d(t,{A4:()=>k,G9:()=>E,Gh:()=>S,I6:()=>d,Kp:()=>l,PN:()=>s,Q$:()=>y,Rm:()=>p,SE:()=>a,VS:()=>b,X7:()=>f,ZT:()=>o,_v:()=>u,_x:()=>h,mc:()=>c,sk:()=>i,to:()=>g,yF:()=>m});var n=r(1730),i="undefined"===typeof window;function o(){}function a(e,t){return"function"===typeof e?e(t):e}function s(e){return"number"===typeof e&&e>=0&&e!==1/0}function c(e){return Array.isArray(e)?e:[e]}function l(e,t){return Math.max(e+(t||0)-Date.now(),0)}function u(e,t,r){return _(e)?"function"===typeof t?(0,n.Z)({},r,{queryKey:e,queryFn:t}):(0,n.Z)({},t,{queryKey:e}):e}function d(e,t,r){return _(e)?[(0,n.Z)({},t,{queryKey:e}),r]:[e||{},t]}function h(e,t){var r=e.active,n=e.exact,i=e.fetching,o=e.inactive,a=e.predicate,s=e.queryKey,c=e.stale;if(_(s))if(n){if(t.queryHash!==p(s,t.options))return!1}else if(!g(t.queryKey,s))return!1;var l=function(e,t){return!0===e&&!0===t||null==e&&null==t?"all":!1===e&&!1===t?"none":(null!=e?e:!t)?"active":"inactive"}(r,o);if("none"===l)return!1;if("all"!==l){var u=t.isActive();if("active"===l&&!u)return!1;if("inactive"===l&&u)return!1}return("boolean"!==typeof c||t.isStale()===c)&&(("boolean"!==typeof i||t.isFetching()===i)&&!(a&&!a(t)))}function f(e,t){var r=e.exact,n=e.fetching,i=e.predicate,o=e.mutationKey;if(_(o)){if(!t.options.mutationKey)return!1;if(r){if(m(t.options.mutationKey)!==m(o))return!1}else if(!g(t.options.mutationKey,o))return!1}return("boolean"!==typeof n||"loading"===t.state.status===n)&&!(i&&!i(t))}function p(e,t){return((null==t?void 0:t.queryKeyHashFn)||m)(e)}function m(e){var t,r=c(e);return t=r,JSON.stringify(t,(function(e,t){return w(t)?Object.keys(t).sort().reduce((function(e,r){return e[r]=t[r],e}),{}):t}))}function g(e,t){return v(c(e),c(t))}function v(e,t){return e===t||typeof e===typeof t&&(!(!e||!t||"object"!==typeof e||"object"!==typeof t)&&!Object.keys(t).some((function(r){return!v(e[r],t[r])})))}function y(e,t){if(e===t)return e;var r=Array.isArray(e)&&Array.isArray(t);if(r||w(e)&&w(t)){for(var n=r?e.length:Object.keys(e).length,i=r?t:Object.keys(t),o=i.length,a=r?[]:{},s=0,c=0;c{"use strict";r.d(t,{QueryClient:()=>n.QueryClient,QueryClientProvider:()=>i.QueryClientProvider,useQuery:()=>i.useQuery,useQueryClient:()=>i.useQueryClient});var n=r(9299);r.o(n,"QueryClientProvider")&&r.d(t,{QueryClientProvider:function(){return n.QueryClientProvider}}),r.o(n,"useQuery")&&r.d(t,{useQuery:function(){return n.useQuery}}),r.o(n,"useQueryClient")&&r.d(t,{useQueryClient:function(){return n.useQueryClient}});var i=r(9090)},9090:(e,t,r)=>{"use strict";r.d(t,{QueryClientProvider:()=>h,useQuery:()=>P,useQueryClient:()=>d});var n=r(6346),i=r(2717).unstable_batchedUpdates;n.V.setBatchNotifyFunction(i);var o=r(6648),a=console;(0,o.E)(a);var s=r(9652),c=s.createContext(void 0),l=s.createContext(!1);function u(e){return e&&"undefined"!==typeof window?(window.ReactQueryClientContext||(window.ReactQueryClientContext=c),window.ReactQueryClientContext):c}var d=function(){var e=s.useContext(u(s.useContext(l)));if(!e)throw new Error("No QueryClient set, use QueryClientProvider to set one");return e},h=function(e){var t=e.client,r=e.contextSharing,n=void 0!==r&&r,i=e.children;s.useEffect((function(){return t.mount(),function(){t.unmount()}}),[t]);var o=u(n);return s.createElement(l.Provider,{value:n},s.createElement(o.Provider,{value:t},i))},f=r(1730),p=r(8619),m=r(9864),g=r(5133),v=r(37),y=r(7356),b=function(e){function t(t,r){var n;return(n=e.call(this)||this).client=t,n.options=r,n.trackedProps=[],n.selectError=null,n.bindMethods(),n.setOptions(r),n}(0,p.Z)(t,e);var r=t.prototype;return r.bindMethods=function(){this.remove=this.remove.bind(this),this.refetch=this.refetch.bind(this)},r.onSubscribe=function(){1===this.listeners.length&&(this.currentQuery.addObserver(this),w(this.currentQuery,this.options)&&this.executeFetch(),this.updateTimers())},r.onUnsubscribe=function(){this.listeners.length||this.destroy()},r.shouldFetchOnReconnect=function(){return x(this.currentQuery,this.options,this.options.refetchOnReconnect)},r.shouldFetchOnWindowFocus=function(){return x(this.currentQuery,this.options,this.options.refetchOnWindowFocus)},r.destroy=function(){this.listeners=[],this.clearTimers(),this.currentQuery.removeObserver(this)},r.setOptions=function(e,t){var r=this.options,n=this.currentQuery;if(this.options=this.client.defaultQueryObserverOptions(e),"undefined"!==typeof this.options.enabled&&"boolean"!==typeof this.options.enabled)throw new Error("Expected enabled to be a boolean");this.options.queryKey||(this.options.queryKey=r.queryKey),this.updateQuery();var i=this.hasListeners();i&&_(this.currentQuery,n,this.options,r)&&this.executeFetch(),this.updateResult(t),!i||this.currentQuery===n&&this.options.enabled===r.enabled&&this.options.staleTime===r.staleTime||this.updateStaleTimeout();var o=this.computeRefetchInterval();!i||this.currentQuery===n&&this.options.enabled===r.enabled&&o===this.currentRefetchInterval||this.updateRefetchInterval(o)},r.getOptimisticResult=function(e){var t=this.client.defaultQueryObserverOptions(e),r=this.client.getQueryCache().build(this.client,t);return this.createResult(r,t)},r.getCurrentResult=function(){return this.currentResult},r.trackResult=function(e,t){var r=this,n={},i=function(e){r.trackedProps.includes(e)||r.trackedProps.push(e)};return Object.keys(e).forEach((function(t){Object.defineProperty(n,t,{configurable:!1,enumerable:!0,get:function(){return i(t),e[t]}})})),(t.useErrorBoundary||t.suspense)&&i("error"),n},r.getNextResult=function(e){var t=this;return new Promise((function(r,n){var i=t.subscribe((function(t){t.isFetching||(i(),t.isError&&(null==e?void 0:e.throwOnError)?n(t.error):r(t))}))}))},r.getCurrentQuery=function(){return this.currentQuery},r.remove=function(){this.client.getQueryCache().remove(this.currentQuery)},r.refetch=function(e){return this.fetch((0,f.Z)({},e,{meta:{refetchPage:null==e?void 0:e.refetchPage}}))},r.fetchOptimistic=function(e){var t=this,r=this.client.defaultQueryObserverOptions(e),n=this.client.getQueryCache().build(this.client,r);return n.fetch().then((function(){return t.createResult(n,r)}))},r.fetch=function(e){var t=this;return this.executeFetch(e).then((function(){return t.updateResult(),t.currentResult}))},r.executeFetch=function(e){this.updateQuery();var t=this.currentQuery.fetch(this.options,e);return(null==e?void 0:e.throwOnError)||(t=t.catch(m.ZT)),t},r.updateStaleTimeout=function(){var e=this;if(this.clearStaleTimeout(),!m.sk&&!this.currentResult.isStale&&(0,m.PN)(this.options.staleTime)){var t=(0,m.Kp)(this.currentResult.dataUpdatedAt,this.options.staleTime)+1;this.staleTimeoutId=setTimeout((function(){e.currentResult.isStale||e.updateResult()}),t)}},r.computeRefetchInterval=function(){var e;return"function"===typeof this.options.refetchInterval?this.options.refetchInterval(this.currentResult.data,this.currentQuery):null!=(e=this.options.refetchInterval)&&e},r.updateRefetchInterval=function(e){var t=this;this.clearRefetchInterval(),this.currentRefetchInterval=e,!m.sk&&!1!==this.options.enabled&&(0,m.PN)(this.currentRefetchInterval)&&0!==this.currentRefetchInterval&&(this.refetchIntervalId=setInterval((function(){(t.options.refetchIntervalInBackground||g.j.isFocused())&&t.executeFetch()}),this.currentRefetchInterval))},r.updateTimers=function(){this.updateStaleTimeout(),this.updateRefetchInterval(this.computeRefetchInterval())},r.clearTimers=function(){this.clearStaleTimeout(),this.clearRefetchInterval()},r.clearStaleTimeout=function(){this.staleTimeoutId&&(clearTimeout(this.staleTimeoutId),this.staleTimeoutId=void 0)},r.clearRefetchInterval=function(){this.refetchIntervalId&&(clearInterval(this.refetchIntervalId),this.refetchIntervalId=void 0)},r.createResult=function(e,t){var r,n=this.currentQuery,i=this.options,a=this.currentResult,s=this.currentResultState,c=this.currentResultOptions,l=e!==n,u=l?e.state:this.currentQueryInitialState,d=l?this.currentResult:this.previousQueryResult,h=e.state,f=h.dataUpdatedAt,p=h.error,g=h.errorUpdatedAt,v=h.isFetching,y=h.status,b=!1,x=!1;if(t.optimisticResults){var k=this.hasListeners(),E=!k&&w(e,t),A=k&&_(e,n,t,i);(E||A)&&(v=!0,f||(y="loading"))}if(t.keepPreviousData&&!h.dataUpdateCount&&(null==d?void 0:d.isSuccess)&&"error"!==y)r=d.data,f=d.dataUpdatedAt,y=d.status,b=!0;else if(t.select&&"undefined"!==typeof h.data)if(a&&h.data===(null==s?void 0:s.data)&&t.select===this.selectFn)r=this.selectResult;else try{this.selectFn=t.select,r=t.select(h.data),!1!==t.structuralSharing&&(r=(0,m.Q$)(null==a?void 0:a.data,r)),this.selectResult=r,this.selectError=null}catch(O){(0,o.j)().error(O),this.selectError=O}else r=h.data;if("undefined"!==typeof t.placeholderData&&"undefined"===typeof r&&("loading"===y||"idle"===y)){var P;if((null==a?void 0:a.isPlaceholderData)&&t.placeholderData===(null==c?void 0:c.placeholderData))P=a.data;else if(P="function"===typeof t.placeholderData?t.placeholderData():t.placeholderData,t.select&&"undefined"!==typeof P)try{P=t.select(P),!1!==t.structuralSharing&&(P=(0,m.Q$)(null==a?void 0:a.data,P)),this.selectError=null}catch(O){(0,o.j)().error(O),this.selectError=O}"undefined"!==typeof P&&(y="success",r=P,x=!0)}return this.selectError&&(p=this.selectError,r=this.selectResult,g=Date.now(),y="error"),{status:y,isLoading:"loading"===y,isSuccess:"success"===y,isError:"error"===y,isIdle:"idle"===y,data:r,dataUpdatedAt:f,error:p,errorUpdatedAt:g,failureCount:h.fetchFailureCount,errorUpdateCount:h.errorUpdateCount,isFetched:h.dataUpdateCount>0||h.errorUpdateCount>0,isFetchedAfterMount:h.dataUpdateCount>u.dataUpdateCount||h.errorUpdateCount>u.errorUpdateCount,isFetching:v,isRefetching:v&&"loading"!==y,isLoadingError:"error"===y&&0===h.dataUpdatedAt,isPlaceholderData:x,isPreviousData:b,isRefetchError:"error"===y&&0!==h.dataUpdatedAt,isStale:S(e,t),refetch:this.refetch,remove:this.remove}},r.shouldNotifyListeners=function(e,t){if(!t)return!0;var r=this.options,n=r.notifyOnChangeProps,i=r.notifyOnChangePropsExclusions;if(!n&&!i)return!0;if("tracked"===n&&!this.trackedProps.length)return!0;var o="tracked"===n?this.trackedProps:n;return Object.keys(e).some((function(r){var n=r,a=e[n]!==t[n],s=null==o?void 0:o.some((function(e){return e===r})),c=null==i?void 0:i.some((function(e){return e===r}));return a&&!c&&(!o||s)}))},r.updateResult=function(e){var t=this.currentResult;if(this.currentResult=this.createResult(this.currentQuery,this.options),this.currentResultState=this.currentQuery.state,this.currentResultOptions=this.options,!(0,m.VS)(this.currentResult,t)){var r={cache:!0};!1!==(null==e?void 0:e.listeners)&&this.shouldNotifyListeners(this.currentResult,t)&&(r.listeners=!0),this.notify((0,f.Z)({},r,e))}},r.updateQuery=function(){var e=this.client.getQueryCache().build(this.client,this.options);if(e!==this.currentQuery){var t=this.currentQuery;this.currentQuery=e,this.currentQueryInitialState=e.state,this.previousQueryResult=this.currentResult,this.hasListeners()&&(null==t||t.removeObserver(this),e.addObserver(this))}},r.onQueryUpdate=function(e){var t={};"success"===e.type?t.onSuccess=!0:"error"!==e.type||(0,y.DV)(e.error)||(t.onError=!0),this.updateResult(t),this.hasListeners()&&this.updateTimers()},r.notify=function(e){var t=this;n.V.batch((function(){e.onSuccess?(null==t.options.onSuccess||t.options.onSuccess(t.currentResult.data),null==t.options.onSettled||t.options.onSettled(t.currentResult.data,null)):e.onError&&(null==t.options.onError||t.options.onError(t.currentResult.error),null==t.options.onSettled||t.options.onSettled(void 0,t.currentResult.error)),e.listeners&&t.listeners.forEach((function(e){e(t.currentResult)})),e.cache&&t.client.getQueryCache().notify({query:t.currentQuery,type:"observerResultsUpdated"})}))},t}(v.l);function w(e,t){return function(e,t){return!1!==t.enabled&&!e.state.dataUpdatedAt&&!("error"===e.state.status&&!1===t.retryOnMount)}(e,t)||e.state.dataUpdatedAt>0&&x(e,t,t.refetchOnMount)}function x(e,t,r){if(!1!==t.enabled){var n="function"===typeof r?r(e):r;return"always"===n||!1!==n&&S(e,t)}return!1}function _(e,t,r,n){return!1!==r.enabled&&(e!==t||!1===n.enabled)&&(!r.suspense||"error"!==e.state.status)&&S(e,r)}function S(e,t){return e.isStaleByTime(t.staleTime)}function k(){var e=!1;return{clearReset:function(){e=!1},reset:function(){e=!0},isReset:function(){return e}}}var E=s.createContext(k()),A=function(){return s.useContext(E)};function P(e,t,r){return function(e,t){var r=s.useRef(!1),i=s.useState(0)[1],o=d(),a=A(),c=o.defaultQueryObserverOptions(e);c.optimisticResults=!0,c.onError&&(c.onError=n.V.batchCalls(c.onError)),c.onSuccess&&(c.onSuccess=n.V.batchCalls(c.onSuccess)),c.onSettled&&(c.onSettled=n.V.batchCalls(c.onSettled)),c.suspense&&("number"!==typeof c.staleTime&&(c.staleTime=1e3),0===c.cacheTime&&(c.cacheTime=1)),(c.suspense||c.useErrorBoundary)&&(a.isReset()||(c.retryOnMount=!1));var l,u,h,f=s.useState((function(){return new t(o,c)}))[0],p=f.getOptimisticResult(c);if(s.useEffect((function(){r.current=!0,a.clearReset();var e=f.subscribe(n.V.batchCalls((function(){r.current&&i((function(e){return e+1}))})));return f.updateResult(),function(){r.current=!1,e()}}),[a,f]),s.useEffect((function(){f.setOptions(c,{listeners:!1})}),[c,f]),c.suspense&&p.isLoading)throw f.fetchOptimistic(c).then((function(e){var t=e.data;null==c.onSuccess||c.onSuccess(t),null==c.onSettled||c.onSettled(t,null)})).catch((function(e){a.clearReset(),null==c.onError||c.onError(e),null==c.onSettled||c.onSettled(void 0,e)}));if(p.isError&&!a.isReset()&&!p.isFetching&&(l=c.suspense,u=c.useErrorBoundary,h=[p.error,f.getCurrentQuery()],"function"===typeof u?u.apply(void 0,h):"boolean"===typeof u?u:l))throw p.error;return"tracked"===c.notifyOnChangeProps&&(p=f.trackResult(p,c)),p}((0,m._v)(e,t,r),b)}},6234:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(e,t,r){var n=0===e?e:e+t;return"translate3d"+("("+("horizontal"===r?[n,0,0]:[0,n,0]).join(",")+")")}},4398:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fadeAnimationHandler=t.slideStopSwipingHandler=t.slideSwipeAnimationHandler=t.slideAnimationHandler=void 0;var n,i=r(9652),o=(n=r(6234))&&n.__esModule?n:{default:n},a=r(2903);function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;tl))return s<0?e.centerMode&&e.centerSlidePercentage&&"horizontal"===e.axis?r.itemListStyle=(0,a.setPosition)(-(l+2)*e.centerSlidePercentage-(100-e.centerSlidePercentage)/2,e.axis):r.itemListStyle=(0,a.setPosition)(100*-(l+2),e.axis):s>l&&(r.itemListStyle=(0,a.setPosition)(0,e.axis)),r;var u=(0,a.getPosition)(n,e),d=(0,o.default)(u,"%",e.axis),h=e.transitionTime+"ms";return r.itemListStyle={WebkitTransform:d,msTransform:d,OTransform:d,transform:d},t.swiping||(r.itemListStyle=c(c({},r.itemListStyle),{},{WebkitTransitionDuration:h,MozTransitionDuration:h,OTransitionDuration:h,transitionDuration:h,msTransitionDuration:h})),r};t.slideSwipeAnimationHandler=function(e,t,r,n){var o={},s="horizontal"===t.axis,c=i.Children.count(t.children),l=(0,a.getPosition)(r.selectedItem,t),u=t.infiniteLoop?(0,a.getPosition)(c-1,t)-100:(0,a.getPosition)(c-1,t),d=s?e.x:e.y,h=d;0===l&&d>0&&(h=0),l===u&&d<0&&(h=0);var f=l+100/(r.itemSize/h),p=Math.abs(d)>t.swipeScrollTolerance;return t.infiniteLoop&&p&&(0===r.selectedItem&&f>-100?f-=100*c:r.selectedItem===c-1&&f<100*-c&&(f+=100*c)),(!t.preventMovementUntilSwipeScrollTolerance||p||r.swipeMovementStarted)&&(r.swipeMovementStarted||n({swipeMovementStarted:!0}),o.itemListStyle=(0,a.setPosition)(f,t.axis)),p&&!r.cancelClick&&n({cancelClick:!0}),o};t.slideStopSwipingHandler=function(e,t){var r=(0,a.getPosition)(t.selectedItem,e);return{itemListStyle:(0,a.setPosition)(r,e.axis)}};t.fadeAnimationHandler=function(e,t){var r=e.transitionTime+"ms",n="ease-in-out",i={position:"absolute",display:"block",zIndex:-2,minHeight:"100%",opacity:0,top:0,right:0,left:0,bottom:0,transitionTimingFunction:n,msTransitionTimingFunction:n,MozTransitionTimingFunction:n,WebkitTransitionTimingFunction:n,OTransitionTimingFunction:n};return t.swiping||(i=c(c({},i),{},{WebkitTransitionDuration:r,MozTransitionDuration:r,OTransitionDuration:r,transitionDuration:r,msTransitionDuration:r})),{slideStyle:i,selectedStyle:c(c({},i),{},{opacity:1,position:"relative"}),prevStyle:c({},i)}}},101:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==f(e)&&"function"!==typeof e)return{default:e};var t=h();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=n?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(r,i,o):r[i]=e[i]}r.default=e,t&&t.set(e,r);return r}(r(9652)),i=d(r(1131)),o=d(r(7616)),a=d(r(3079)),s=d(r(5461)),c=d(r(3270)),l=r(2903),u=r(4398);function d(e){return e&&e.__esModule?e:{default:e}}function h(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return h=function(){return e},e}function f(e){return f="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f(e)}function p(){return p=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:1;t.moveTo(t.state.selectedItem-("number"===typeof e?e:1))})),_(w(t),"increment",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.moveTo(t.state.selectedItem+("number"===typeof e?e:1))})),_(w(t),"moveTo",(function(e){if("number"===typeof e){var r=n.Children.count(t.props.children)-1;e<0&&(e=t.props.infiniteLoop?r:0),e>r&&(e=t.props.infiniteLoop?0:r),t.selectItem({selectedItem:e}),t.state.autoPlay&&!1===t.state.isMouseEntered&&t.resetAutoPlay()}})),_(w(t),"onClickNext",(function(){t.increment(1)})),_(w(t),"onClickPrev",(function(){t.decrement(1)})),_(w(t),"onSwipeForward",(function(){t.increment(1),t.props.emulateTouch&&t.setState({cancelClick:!0})})),_(w(t),"onSwipeBackwards",(function(){t.decrement(1),t.props.emulateTouch&&t.setState({cancelClick:!0})})),_(w(t),"changeItem",(function(e){return function(r){(0,l.isKeyboardEvent)(r)&&"Enter"!==r.key||t.moveTo(e)}})),_(w(t),"selectItem",(function(e){t.setState(g({previousItem:t.state.selectedItem},e),(function(){t.setState(t.animationHandler(t.props,t.state))})),t.handleOnChange(e.selectedItem,n.Children.toArray(t.props.children)[e.selectedItem])})),_(w(t),"getInitialImage",(function(){var e=t.props.selectedItem,r=t.itemsRef&&t.itemsRef[e];return(r&&r.getElementsByTagName("img")||[])[0]})),_(w(t),"getVariableItemHeight",(function(e){var r=t.itemsRef&&t.itemsRef[e];if(t.state.hasMount&&r&&r.children.length){var n=r.children[0].getElementsByTagName("img")||[];if(n.length>0){var i=n[0];if(!i.complete){i.addEventListener("load",(function e(){t.forceUpdate(),i.removeEventListener("load",e)}))}}var o=(n[0]||r.children[0]).clientHeight;return o>0?o:null}return null}));var r={initialized:!1,previousItem:e.selectedItem,selectedItem:e.selectedItem,hasMount:!1,isMouseEntered:!1,autoPlay:e.autoPlay,swiping:!1,swipeMovementStarted:!1,cancelClick:!1,itemSize:1,itemListStyle:{},slideStyle:{},selectedStyle:{},prevStyle:{}};return t.animationHandler="function"===typeof e.animationHandler&&e.animationHandler||"fade"===e.animationHandler&&u.fadeAnimationHandler||u.slideAnimationHandler,t.state=g(g({},r),t.animationHandler(e,r)),t}return t=f,(r=[{key:"componentDidMount",value:function(){this.props.children&&this.setupCarousel()}},{key:"componentDidUpdate",value:function(e,t){e.children||!this.props.children||this.state.initialized||this.setupCarousel(),!e.autoFocus&&this.props.autoFocus&&this.forceFocus(),t.swiping&&!this.state.swiping&&this.setState(g({},this.props.stopSwipingHandler(this.props,this.state))),e.selectedItem===this.props.selectedItem&&e.centerMode===this.props.centerMode||(this.updateSizes(),this.moveTo(this.props.selectedItem)),e.autoPlay!==this.props.autoPlay&&(this.props.autoPlay?this.setupAutoPlay():this.destroyAutoPlay(),this.setState({autoPlay:this.props.autoPlay}))}},{key:"componentWillUnmount",value:function(){this.destroyCarousel()}},{key:"setupCarousel",value:function(){var e=this;this.bindEvents(),this.state.autoPlay&&n.Children.count(this.props.children)>1&&this.setupAutoPlay(),this.props.autoFocus&&this.forceFocus(),this.setState({initialized:!0},(function(){var t=e.getInitialImage();t&&!t.complete?t.addEventListener("load",e.setMountState):e.setMountState()}))}},{key:"destroyCarousel",value:function(){this.state.initialized&&(this.unbindEvents(),this.destroyAutoPlay())}},{key:"setupAutoPlay",value:function(){this.autoPlay();var e=this.carouselWrapperRef;this.props.stopOnHover&&e&&(e.addEventListener("mouseenter",this.stopOnHover),e.addEventListener("mouseleave",this.startOnLeave))}},{key:"destroyAutoPlay",value:function(){this.clearAutoPlay();var e=this.carouselWrapperRef;this.props.stopOnHover&&e&&(e.removeEventListener("mouseenter",this.stopOnHover),e.removeEventListener("mouseleave",this.startOnLeave))}},{key:"bindEvents",value:function(){(0,c.default)().addEventListener("resize",this.updateSizes),(0,c.default)().addEventListener("DOMContentLoaded",this.updateSizes),this.props.useKeyboardArrows&&(0,s.default)().addEventListener("keydown",this.navigateWithKeyboard)}},{key:"unbindEvents",value:function(){(0,c.default)().removeEventListener("resize",this.updateSizes),(0,c.default)().removeEventListener("DOMContentLoaded",this.updateSizes);var e=this.getInitialImage();e&&e.removeEventListener("load",this.setMountState),this.props.useKeyboardArrows&&(0,s.default)().removeEventListener("keydown",this.navigateWithKeyboard)}},{key:"forceFocus",value:function(){var e;null===(e=this.carouselWrapperRef)||void 0===e||e.focus()}},{key:"renderItems",value:function(e){var t=this;return this.props.children?n.Children.map(this.props.children,(function(r,i){var a=i===t.state.selectedItem,s=i===t.state.previousItem,c=a&&t.state.selectedStyle||s&&t.state.prevStyle||t.state.slideStyle||{};t.props.centerMode&&"horizontal"===t.props.axis&&(c=g(g({},c),{},{minWidth:t.props.centerSlidePercentage+"%"})),t.state.swiping&&t.state.swipeMovementStarted&&(c=g(g({},c),{},{pointerEvents:"none"}));var l={ref:function(e){return t.setItemsRef(e,i)},key:"itemKey"+i+(e?"clone":""),className:o.default.ITEM(!0,i===t.state.selectedItem,i===t.state.previousItem),onClick:t.handleClickItem.bind(t,i,r),style:c};return n.default.createElement("li",l,t.props.renderItem(r,{isSelected:i===t.state.selectedItem,isPrevious:i===t.state.previousItem}))})):[]}},{key:"renderControls",value:function(){var e=this,t=this.props,r=t.showIndicators,i=t.labels,o=t.renderIndicator,a=t.children;return r?n.default.createElement("ul",{className:"control-dots"},n.Children.map(a,(function(t,r){return o&&o(e.changeItem(r),r===e.state.selectedItem,r,i.item)}))):null}},{key:"renderStatus",value:function(){return this.props.showStatus?n.default.createElement("p",{className:"carousel-status"},this.props.statusFormatter(this.state.selectedItem+1,n.Children.count(this.props.children))):null}},{key:"renderThumbs",value:function(){return this.props.showThumbs&&this.props.children&&0!==n.Children.count(this.props.children)?n.default.createElement(a.default,{ref:this.setThumbsRef,onSelectItem:this.handleClickThumb,selectedItem:this.state.selectedItem,transitionTime:this.props.transitionTime,thumbWidth:this.props.thumbWidth,labels:this.props.labels,emulateTouch:this.props.emulateTouch},this.props.renderThumbs(this.props.children)):null}},{key:"render",value:function(){var e=this;if(!this.props.children||0===n.Children.count(this.props.children))return null;var t=this.props.swipeable&&n.Children.count(this.props.children)>1,r="horizontal"===this.props.axis,a=this.props.showArrows&&n.Children.count(this.props.children)>1,s=a&&(this.state.selectedItem>0||this.props.infiniteLoop)||!1,c=a&&(this.state.selectedItem{},2903:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.setPosition=t.getPosition=t.isKeyboardEvent=t.defaultStatusFormatter=t.noop=void 0;var n,i=r(9652),o=(n=r(6234))&&n.__esModule?n:{default:n};t.noop=function(){};t.defaultStatusFormatter=function(e,t){return"".concat(e," of ").concat(t)};t.isKeyboardEvent=function(e){return!!e&&e.hasOwnProperty("key")};t.getPosition=function(e,t){if(t.infiniteLoop&&++e,0===e)return 0;var r=i.Children.count(t.children);if(t.centerMode&&"horizontal"===t.axis){var n=-e*t.centerSlidePercentage,o=r-1;return e&&(e!==o||t.infiniteLoop)?n+=(100-t.centerSlidePercentage)/2:e===o&&(n+=100-t.centerSlidePercentage),n}return 100*-e};t.setPosition=function(e,t){var r={};return["WebkitTransform","MozTransform","MsTransform","OTransform","transform","msTransform"].forEach((function(n){r[n]=(0,o.default)(e,"%",t)})),r}},3079:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==d(e)&&"function"!==typeof e)return{default:e};var t=u();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=n?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(r,i,o):r[i]=e[i]}r.default=e,t&&t.set(e,r);return r}(r(9652)),i=l(r(7616)),o=r(3448),a=l(r(6234)),s=l(r(1131)),c=l(r(3270));function l(e){return e&&e.__esModule?e:{default:e}}function u(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return u=function(){return e},e}function d(e){return d="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},d(e)}function h(){return h=Object.assign||function(e){for(var t=1;t0&&(r=0),o===100*-Math.max(i-t.state.visibleItems,0)/t.state.visibleItems&&r<0&&(r=0);var s=o+100/(t.itemsWrapperRef.clientWidth/r);return t.itemsListRef&&["WebkitTransform","MozTransform","MsTransform","OTransform","transform","msTransform"].forEach((function(e){t.itemsListRef.style[e]=(0,a.default)(s,"%",t.props.axis)})),!0})),y(g(t),"slideRight",(function(e){t.moveTo(t.state.firstItem-("number"===typeof e?e:1))})),y(g(t),"slideLeft",(function(e){t.moveTo(t.state.firstItem+("number"===typeof e?e:1))})),y(g(t),"moveTo",(function(e){e=(e=e<0?0:e)>=t.state.lastPosition?t.state.lastPosition:e,t.setState({firstItem:e})})),t.state={selectedItem:e.selectedItem,swiping:!1,showArrows:!1,firstItem:0,visibleItems:0,lastPosition:0},t}return t=d,(r=[{key:"componentDidMount",value:function(){this.setupThumbs()}},{key:"componentDidUpdate",value:function(e){this.props.selectedItem!==this.state.selectedItem&&this.setState({selectedItem:this.props.selectedItem,firstItem:this.getFirstItem(this.props.selectedItem)}),this.props.children!==e.children&&this.updateSizes()}},{key:"componentWillUnmount",value:function(){this.destroyThumbs()}},{key:"setupThumbs",value:function(){(0,c.default)().addEventListener("resize",this.updateSizes),(0,c.default)().addEventListener("DOMContentLoaded",this.updateSizes),this.updateSizes()}},{key:"destroyThumbs",value:function(){(0,c.default)().removeEventListener("resize",this.updateSizes),(0,c.default)().removeEventListener("DOMContentLoaded",this.updateSizes)}},{key:"getFirstItem",value:function(e){var t=e;return e>=this.state.lastPosition&&(t=this.state.lastPosition),e1,o=this.state.showArrows&&this.state.firstItem>0,c=this.state.showArrows&&this.state.firstItem{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,i=(n=r(5245))&&n.__esModule?n:{default:n};var o={ROOT:function(e){return(0,i.default)(function(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}({"carousel-root":!0},e||"",!!e))},CAROUSEL:function(e){return(0,i.default)({carousel:!0,"carousel-slider":e})},WRAPPER:function(e,t){return(0,i.default)({"thumbs-wrapper":!e,"slider-wrapper":e,"axis-horizontal":"horizontal"===t,"axis-vertical":"horizontal"!==t})},SLIDER:function(e,t){return(0,i.default)({thumbs:!e,slider:e,animated:!t})},ITEM:function(e,t,r){return(0,i.default)({thumb:!e,slide:e,selected:t,previous:r})},ARROW_PREV:function(e){return(0,i.default)({"control-arrow control-prev":!0,"control-disabled":e})},ARROW_NEXT:function(e){return(0,i.default)({"control-arrow control-next":!0,"control-disabled":e})},DOT:function(e){return(0,i.default)({dot:!0,selected:e})}};t.default=o},3448:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.outerWidth=void 0;t.outerWidth=function(e){var t=e.offsetWidth,r=getComputedStyle(e);return t+=parseInt(r.marginLeft)+parseInt(r.marginRight)}},2602:(e,t,r)=>{"use strict";Object.defineProperty(t,"lr",{enumerable:!0,get:function(){return n.default}});var n=a(r(101)),i=r(3447),o=a(r(3079));function a(e){return e&&e.__esModule?e:{default:e}}},5461:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(){return document}},3270:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(){return window}},9119:(e,t,r)=>{"use strict";var n=r(9652),i=Symbol.for("react.element"),o=Symbol.for("react.fragment"),a=Object.prototype.hasOwnProperty,s=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,c={key:!0,ref:!0,__self:!0,__source:!0};function l(e,t,r){var n,o={},l=null,u=null;for(n in void 0!==r&&(l=""+r),void 0!==t.key&&(l=""+t.key),void 0!==t.ref&&(u=t.ref),t)a.call(t,n)&&!c.hasOwnProperty(n)&&(o[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps)void 0===o[n]&&(o[n]=t[n]);return{$$typeof:i,type:e,key:l,ref:u,props:o,_owner:s.current}}t.Fragment=o,t.jsx=l,t.jsxs=l},693:(e,t)=>{"use strict";var r=Symbol.for("react.element"),n=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),s=Symbol.for("react.provider"),c=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),f=Symbol.iterator;var p={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},m=Object.assign,g={};function v(e,t,r){this.props=e,this.context=t,this.refs=g,this.updater=r||p}function y(){}function b(e,t,r){this.props=e,this.context=t,this.refs=g,this.updater=r||p}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if("object"!==typeof e&&"function"!==typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},y.prototype=v.prototype;var w=b.prototype=new y;w.constructor=b,m(w,v.prototype),w.isPureReactComponent=!0;var x=Array.isArray,_=Object.prototype.hasOwnProperty,S={current:null},k={key:!0,ref:!0,__self:!0,__source:!0};function E(e,t,n){var i,o={},a=null,s=null;if(null!=t)for(i in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(a=""+t.key),t)_.call(t,i)&&!k.hasOwnProperty(i)&&(o[i]=t[i]);var c=arguments.length-2;if(1===c)o.children=n;else if(1{"use strict";e.exports=r(693)},5124:(e,t,r)=>{"use strict";e.exports=r(9119)},9849:e=>{"use strict";var t={};function r(e,r,n){n||(n=Error);var i=function(e){var t,n;function i(t,n,i){return e.call(this,function(e,t,n){return"string"===typeof r?r:r(e,t,n)}(t,n,i))||this}return n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,i}(n);i.prototype.name=n.name,i.prototype.code=e,t[e]=i}function n(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map((function(e){return String(e)})),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:2===r?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}r("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),r("ERR_INVALID_ARG_TYPE",(function(e,t,r){var i,o,a,s;if("string"===typeof t&&(o="not ",t.substr(!a||a<0?0:+a,o.length)===o)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}(e," argument"))s="The ".concat(e," ").concat(i," ").concat(n(t,"type"));else{var c=function(e,t,r){return"number"!==typeof r&&(r=0),!(r+t.length>e.length)&&-1!==e.indexOf(t,r)}(e,".")?"property":"argument";s='The "'.concat(e,'" ').concat(c," ").concat(i," ").concat(n(t,"type"))}return s+=". Received type ".concat(typeof r)}),TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.q=t},4751:(e,t,r)=>{"use strict";var n=r(5469),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=u;var o=r(2833),a=r(6672);r(637)(u,o);for(var s=i(a.prototype),c=0;c{"use strict";e.exports=i;var n=r(2598);function i(e){if(!(this instanceof i))return new i(e);n.call(this,e)}r(637)(i,n),i.prototype._transform=function(e,t,r){r(null,e)}},2833:(e,t,r)=>{"use strict";var n,i=r(5469);e.exports=E,E.ReadableState=k;r(4062).EventEmitter;var o=function(e,t){return e.listeners(t).length},a=r(7378),s=r(4872).Buffer,c=("undefined"!==typeof r.g?r.g:"undefined"!==typeof window?window:"undefined"!==typeof self?self:{}).Uint8Array||function(){};var l,u=r(4616);l=u&&u.debuglog?u.debuglog("stream"):function(){};var d,h,f,p=r(8868),m=r(9346),g=r(8887).getHighWaterMark,v=r(9849).q,y=v.ERR_INVALID_ARG_TYPE,b=v.ERR_STREAM_PUSH_AFTER_EOF,w=v.ERR_METHOD_NOT_IMPLEMENTED,x=v.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;r(637)(E,a);var _=m.errorOrDestroy,S=["error","close","destroy","pause","resume"];function k(e,t,i){n=n||r(4751),e=e||{},"boolean"!==typeof i&&(i=t instanceof n),this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=g(this,e,"readableHighWaterMark",i),this.buffer=new p,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(d||(d=r(5049).s),this.decoder=new d(e.encoding),this.encoding=e.encoding)}function E(e){if(n=n||r(4751),!(this instanceof E))return new E(e);var t=this instanceof n;this._readableState=new k(e,this,t),this.readable=!0,e&&("function"===typeof e.read&&(this._read=e.read),"function"===typeof e.destroy&&(this._destroy=e.destroy)),a.call(this)}function A(e,t,r,n,i){l("readableAddChunk",t);var o,a=e._readableState;if(null===t)a.reading=!1,function(e,t){if(l("onEofChunk"),t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?C(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,j(e)))}(e,a);else if(i||(o=function(e,t){var r;n=t,s.isBuffer(n)||n instanceof c||"string"===typeof t||void 0===t||e.objectMode||(r=new y("chunk",["string","Buffer","Uint8Array"],t));var n;return r}(a,t)),o)_(e,o);else if(a.objectMode||t&&t.length>0)if("string"===typeof t||a.objectMode||Object.getPrototypeOf(t)===s.prototype||(t=function(e){return s.from(e)}(t)),n)a.endEmitted?_(e,new x):P(e,a,t,!0);else if(a.ended)_(e,new b);else{if(a.destroyed)return!1;a.reading=!1,a.decoder&&!r?(t=a.decoder.write(t),a.objectMode||0!==t.length?P(e,a,t,!1):R(e,a)):P(e,a,t,!1)}else n||(a.reading=!1,R(e,a));return!a.ended&&(a.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=O?e=O:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function C(e){var t=e._readableState;l("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(l("emitReadable",t.flowing),t.emittedReadable=!0,i.nextTick(j,e))}function j(e){var t=e._readableState;l("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,D(e)}function R(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(I,e,t))}function I(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function L(e){l("readable nexttick read 0"),e.read(0)}function N(e,t){l("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),D(e),t.flowing&&!t.reading&&e.read(0)}function D(e){var t=e._readableState;for(l("flow",t.flowing);t.flowing&&null!==e.read(););}function z(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r);var r}function B(e){var t=e._readableState;l("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,i.nextTick(U,t,e))}function U(e,t){if(l("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}function F(e,t){for(var r=0,n=e.length;r=t.highWaterMark:t.length>0)||t.ended))return l("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?B(this):C(this),null;if(0===(e=T(e,t))&&t.ended)return 0===t.length&&B(this),null;var n,i=t.needReadable;return l("need readable",i),(0===t.length||t.length-e0?z(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&B(this)),null!==n&&this.emit("data",n),n},E.prototype._read=function(e){_(this,new w("_read()"))},E.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,l("pipe count=%d opts=%j",n.pipesCount,t);var a=(!t||!1!==t.end)&&e!==i.stdout&&e!==i.stderr?c:g;function s(t,i){l("onunpipe"),t===r&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,l("cleanup"),e.removeListener("close",p),e.removeListener("finish",m),e.removeListener("drain",u),e.removeListener("error",f),e.removeListener("unpipe",s),r.removeListener("end",c),r.removeListener("end",g),r.removeListener("data",h),d=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function c(){l("onend"),e.end()}n.endEmitted?i.nextTick(a):r.once("end",a),e.on("unpipe",s);var u=function(e){return function(){var t=e._readableState;l("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,D(e))}}(r);e.on("drain",u);var d=!1;function h(t){l("ondata");var i=e.write(t);l("dest.write",i),!1===i&&((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==F(n.pipes,e))&&!d&&(l("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function f(t){l("onerror",t),g(),e.removeListener("error",f),0===o(e,"error")&&_(e,t)}function p(){e.removeListener("finish",m),g()}function m(){l("onfinish"),e.removeListener("close",p),g()}function g(){l("unpipe"),r.unpipe(e)}return r.on("data",h),function(e,t,r){if("function"===typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",f),e.once("close",p),e.once("finish",m),e.emit("pipe",r),n.flowing||(l("pipe resume"),r.resume()),e},E.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,!1!==n.flowing&&this.resume()):"readable"===e&&(n.endEmitted||n.readableListening||(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,l("on readable",n.length,n.reading),n.length?C(this):n.reading||i.nextTick(L,this))),r},E.prototype.addListener=E.prototype.on,E.prototype.removeListener=function(e,t){var r=a.prototype.removeListener.call(this,e,t);return"readable"===e&&i.nextTick(M,this),r},E.prototype.removeAllListeners=function(e){var t=a.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||i.nextTick(M,this),t},E.prototype.resume=function(){var e=this._readableState;return e.flowing||(l("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,i.nextTick(N,e,t))}(this,e)),e.paused=!1,this},E.prototype.pause=function(){return l("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(l("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},E.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(l("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(l("wrapped data"),r.decoder&&(i=r.decoder.write(i)),!r.objectMode||null!==i&&void 0!==i)&&((r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause())))})),e)void 0===this[i]&&"function"===typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var o=0;o{"use strict";e.exports=u;var n=r(9849).q,i=n.ERR_METHOD_NOT_IMPLEMENTED,o=n.ERR_MULTIPLE_CALLBACK,a=n.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=n.ERR_TRANSFORM_WITH_LENGTH_0,c=r(4751);function l(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit("error",new o);r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length{"use strict";var n,i=r(5469);function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=E,E.WritableState=k;var a={deprecate:r(4460)},s=r(7378),c=r(4872).Buffer,l=("undefined"!==typeof r.g?r.g:"undefined"!==typeof window?window:"undefined"!==typeof self?self:{}).Uint8Array||function(){};var u,d=r(9346),h=r(8887).getHighWaterMark,f=r(9849).q,p=f.ERR_INVALID_ARG_TYPE,m=f.ERR_METHOD_NOT_IMPLEMENTED,g=f.ERR_MULTIPLE_CALLBACK,v=f.ERR_STREAM_CANNOT_PIPE,y=f.ERR_STREAM_DESTROYED,b=f.ERR_STREAM_NULL_VALUES,w=f.ERR_STREAM_WRITE_AFTER_END,x=f.ERR_UNKNOWN_ENCODING,_=d.errorOrDestroy;function S(){}function k(e,t,a){n=n||r(4751),e=e||{},"boolean"!==typeof a&&(a=t instanceof n),this.objectMode=!!e.objectMode,a&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=h(this,e,"writableHighWaterMark",a),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var s=!1===e.decodeStrings;this.decodeStrings=!s,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,n=r.sync,o=r.writecb;if("function"!==typeof o)throw new g;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,n,o){--t.pendingcb,r?(i.nextTick(o,n),i.nextTick(j,e,t),e._writableState.errorEmitted=!0,_(e,n)):(o(n),e._writableState.errorEmitted=!0,_(e,n),j(e,t))}(e,r,n,t,o);else{var a=T(r)||e.destroyed;a||r.corked||r.bufferProcessing||!r.bufferedRequest||O(e,r),n?i.nextTick(P,e,r,a,o):P(e,r,a,o)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function E(e){var t=this instanceof(n=n||r(4751));if(!t&&!u.call(E,this))return new E(e);this._writableState=new k(e,this,t),this.writable=!0,e&&("function"===typeof e.write&&(this._write=e.write),"function"===typeof e.writev&&(this._writev=e.writev),"function"===typeof e.destroy&&(this._destroy=e.destroy),"function"===typeof e.final&&(this._final=e.final)),s.call(this)}function A(e,t,r,n,i,o,a){t.writelen=n,t.writecb=a,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new y("write")):r?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function P(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),j(e,t)}function O(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,i=new Array(n),a=t.corkedRequestsFree;a.entry=r;for(var s=0,c=!0;r;)i[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;i.allBuffers=c,A(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new o(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(A(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function T(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function C(e,t){e._final((function(r){t.pendingcb--,r&&_(e,r),t.prefinished=!0,e.emit("prefinish"),j(e,t)}))}function j(e,t){var r=T(t);if(r&&(function(e,t){t.prefinished||t.finalCalled||("function"!==typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.pendingcb++,t.finalCalled=!0,i.nextTick(C,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var n=e._readableState;(!n||n.autoDestroy&&n.endEmitted)&&e.destroy()}return r}r(637)(E,s),k.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(k.prototype,"buffer",{get:a.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"===typeof Symbol&&Symbol.hasInstance&&"function"===typeof Function.prototype[Symbol.hasInstance]?(u=Function.prototype[Symbol.hasInstance],Object.defineProperty(E,Symbol.hasInstance,{value:function(e){return!!u.call(this,e)||this===E&&(e&&e._writableState instanceof k)}})):u=function(e){return e instanceof this},E.prototype.pipe=function(){_(this,new v)},E.prototype.write=function(e,t,r){var n,o=this._writableState,a=!1,s=!o.objectMode&&(n=e,c.isBuffer(n)||n instanceof l);return s&&!c.isBuffer(e)&&(e=function(e){return c.from(e)}(e)),"function"===typeof t&&(r=t,t=null),s?t="buffer":t||(t=o.defaultEncoding),"function"!==typeof r&&(r=S),o.ending?function(e,t){var r=new w;_(e,r),i.nextTick(t,r)}(this,r):(s||function(e,t,r,n){var o;return null===r?o=new b:"string"===typeof r||t.objectMode||(o=new p("chunk",["string","Buffer"],r)),!o||(_(e,o),i.nextTick(n,o),!1)}(this,o,e,r))&&(o.pendingcb++,a=function(e,t,r,n,i,o){if(!r){var a=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!==typeof t||(t=c.from(t,r));return t}(t,n,i);n!==a&&(r=!0,i="buffer",n=a)}var s=t.objectMode?1:n.length;t.length+=s;var l=t.length-1))throw new x(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(E.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(E.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),E.prototype._write=function(e,t,r){r(new m("_write()"))},E.prototype._writev=null,E.prototype.end=function(e,t,r){var n=this._writableState;return"function"===typeof e?(r=e,e=null,t=null):"function"===typeof t&&(r=t,t=null),null!==e&&void 0!==e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||function(e,t,r){t.ending=!0,j(e,t),r&&(t.finished?i.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,n,r),this},Object.defineProperty(E.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(E.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),E.prototype.destroy=d.destroy,E.prototype._undestroy=d.undestroy,E.prototype._destroy=function(e,t){t(e)}},5538:(e,t,r)=>{"use strict";var n,i=r(5469);function o(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var a=r(8279),s=Symbol("lastResolve"),c=Symbol("lastReject"),l=Symbol("error"),u=Symbol("ended"),d=Symbol("lastPromise"),h=Symbol("handlePromise"),f=Symbol("stream");function p(e,t){return{value:e,done:t}}function m(e){var t=e[s];if(null!==t){var r=e[f].read();null!==r&&(e[d]=null,e[s]=null,e[c]=null,t(p(r,!1)))}}function g(e){i.nextTick(m,e)}var v=Object.getPrototypeOf((function(){})),y=Object.setPrototypeOf((o(n={get stream(){return this[f]},next:function(){var e=this,t=this[l];if(null!==t)return Promise.reject(t);if(this[u])return Promise.resolve(p(void 0,!0));if(this[f].destroyed)return new Promise((function(t,r){i.nextTick((function(){e[l]?r(e[l]):t(p(void 0,!0))}))}));var r,n=this[d];if(n)r=new Promise(function(e,t){return function(r,n){e.then((function(){t[u]?r(p(void 0,!0)):t[h](r,n)}),n)}}(n,this));else{var o=this[f].read();if(null!==o)return Promise.resolve(p(o,!1));r=new Promise(this[h])}return this[d]=r,r}},Symbol.asyncIterator,(function(){return this})),o(n,"return",(function(){var e=this;return new Promise((function(t,r){e[f].destroy(null,(function(e){e?r(e):t(p(void 0,!0))}))}))})),n),v);e.exports=function(e){var t,r=Object.create(y,(o(t={},f,{value:e,writable:!0}),o(t,s,{value:null,writable:!0}),o(t,c,{value:null,writable:!0}),o(t,l,{value:null,writable:!0}),o(t,u,{value:e._readableState.endEmitted,writable:!0}),o(t,h,{value:function(e,t){var n=r[f].read();n?(r[d]=null,r[s]=null,r[c]=null,e(p(n,!1))):(r[s]=e,r[c]=t)},writable:!0}),t));return r[d]=null,a(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=r[c];return null!==t&&(r[d]=null,r[s]=null,r[c]=null,t(e)),void(r[l]=e)}var n=r[s];null!==n&&(r[d]=null,r[s]=null,r[c]=null,n(p(void 0,!0))),r[u]=!0})),e.on("readable",g.bind(null,r)),r}},8868:(e,t,r)=>{"use strict";function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r}},{key:"concat",value:function(e){if(0===this.length)return c.alloc(0);for(var t,r,n,i=c.allocUnsafe(e>>>0),o=this.head,a=0;o;)t=o.data,r=i,n=a,c.prototype.copy.call(t,r,n),a+=o.data.length,o=o.next;return i}},{key:"consume",value:function(e,t){var r;return ei.length?i.length:e;if(o===i.length?n+=i:n+=i.slice(0,e),0===(e-=o)){o===i.length?(++r,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(o));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(e){var t=c.allocUnsafe(e),r=this.head,n=1;for(r.data.copy(t),e-=r.data.length;r=r.next;){var i=r.data,o=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,o),0===(e-=o)){o===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(o));break}++n}return this.length-=n,t}},{key:u,value:function(e,t){return l(this,i(i({},t),{},{depth:0,customInspect:!1}))}}])&&a(t.prototype,r),n&&a(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}()},9346:(e,t,r)=>{"use strict";var n=r(5469);function i(e,t){a(e,t),o(e)}function o(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function a(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,s=this._readableState&&this._readableState.destroyed,c=this._writableState&&this._writableState.destroyed;return s||c?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(a,this,e)):n.nextTick(a,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted?n.nextTick(o,r):(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t?(n.nextTick(o,r),t(e)):n.nextTick(o,r)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}}},8279:(e,t,r)=>{"use strict";var n=r(9849).q.ERR_STREAM_PREMATURE_CLOSE;function i(){}e.exports=function e(t,r,o){if("function"===typeof r)return e(t,null,r);r||(r={}),o=function(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i{e.exports=function(){throw new Error("Readable.from is not available in the browser")}},5942:(e,t,r)=>{"use strict";var n;var i=r(9849).q,o=i.ERR_MISSING_ARGS,a=i.ERR_STREAM_DESTROYED;function s(e){if(e)throw e}function c(e){e()}function l(e,t){return e.pipe(t)}e.exports=function(){for(var e=arguments.length,t=new Array(e),i=0;i0,(function(e){u||(u=e),e&&h.forEach(c),o||(h.forEach(c),d(u))}))}));return t.reduce(l)}},8887:(e,t,r)=>{"use strict";var n=r(9849).q.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,r,i){var o=function(e,t,r){return null!=e.highWaterMark?e.highWaterMark:t?e[r]:null}(t,i,r);if(null!=o){if(!isFinite(o)||Math.floor(o)!==o||o<0)throw new n(i?r:"highWaterMark",o);return Math.floor(o)}return e.objectMode?16:16384}}},7378:(e,t,r)=>{e.exports=r(4062).EventEmitter},3859:(e,t,r)=>{(t=e.exports=r(2833)).Stream=t,t.Readable=t,t.Writable=r(6672),t.Duplex=r(4751),t.Transform=r(2598),t.PassThrough=r(6388),t.finished=r(8279),t.pipeline=r(5942)},2980:(e,t,r)=>{"use strict";t.__esModule=!0,t.default=function(e){var t=(0,i.default)(e);return{getItem:function(e){return new Promise((function(r,n){r(t.getItem(e))}))},setItem:function(e,r){return new Promise((function(n,i){n(t.setItem(e,r))}))},removeItem:function(e){return new Promise((function(r,n){r(t.removeItem(e))}))}}};var n,i=(n=r(953))&&n.__esModule?n:{default:n}},953:(e,t)=>{"use strict";function r(e){return r="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function n(){}t.__esModule=!0,t.default=function(e){var t="".concat(e,"Storage");return function(e){if("object"!==("undefined"===typeof self?"undefined":r(self))||!(e in self))return!1;try{var t=self[e],n="redux-persist ".concat(e," test");t.setItem(n,"test"),t.getItem(n),t.removeItem(n)}catch(i){return!1}return!0}(t)?self[t]:i};var i={getItem:n,setItem:n,removeItem:n}},967:(e,t,r)=>{"use strict";var n;t.Z=void 0;var i=(0,((n=r(2980))&&n.__esModule?n:{default:n}).default)("local");t.Z=i},3392:(e,t,r)=>{e.exports=r(7712)},7712:(e,t,r)=>{var n=r(1914);t.operation=function(e){var r=t.timeouts(e);return new n(r,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})},t.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1e3,maxTimeout:1/0,randomize:!1};for(var r in e)t[r]=e[r];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var n=[],i=0;i{function t(e,t){"boolean"===typeof t&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}e.exports=t,t.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts},t.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null},t.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=(new Date).getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var r=this._timeouts.shift();if(void 0===r){if(!this._cachedTimeouts)return!1;this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),r=this._timeouts.shift()}var n=this,i=setTimeout((function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout((function(){n._operationTimeoutCb(n._attempts)}),n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)}),r);return this._options.unref&&i.unref(),!0},t.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout((function(){r._operationTimeoutCb()}),r._operationTimeout)),this._operationStart=(new Date).getTime(),this._fn(this._attempts)},t.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)},t.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)},t.prototype.start=t.prototype.try,t.prototype.errors=function(){return this._errors},t.prototype.attempts=function(){return this._attempts},t.prototype.mainError=function(){if(0===this._errors.length)return null;for(var e={},t=null,r=0,n=0;n=r&&(t=i,r=a)}return t}},4805:(e,t,r)=>{"use strict";var n=r(4872).Buffer,i=r(637),o=r(8682),a=new Array(16),s=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],c=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],l=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],u=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],d=[0,1518500249,1859775393,2400959708,2840853838],h=[1352829926,1548603684,1836072691,2053994217,0];function f(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function p(e,t){return e<>>32-t}function m(e,t,r,n,i,o,a,s){return p(e+(t^r^n)+o+a|0,s)+i|0}function g(e,t,r,n,i,o,a,s){return p(e+(t&r|~t&n)+o+a|0,s)+i|0}function v(e,t,r,n,i,o,a,s){return p(e+((t|~r)^n)+o+a|0,s)+i|0}function y(e,t,r,n,i,o,a,s){return p(e+(t&n|r&~n)+o+a|0,s)+i|0}function b(e,t,r,n,i,o,a,s){return p(e+(t^(r|~n))+o+a|0,s)+i|0}i(f,o),f.prototype._update=function(){for(var e=a,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var r=0|this._a,n=0|this._b,i=0|this._c,o=0|this._d,f=0|this._e,w=0|this._a,x=0|this._b,_=0|this._c,S=0|this._d,k=0|this._e,E=0;E<80;E+=1){var A,P;E<16?(A=m(r,n,i,o,f,e[s[E]],d[0],l[E]),P=b(w,x,_,S,k,e[c[E]],h[0],u[E])):E<32?(A=g(r,n,i,o,f,e[s[E]],d[1],l[E]),P=y(w,x,_,S,k,e[c[E]],h[1],u[E])):E<48?(A=v(r,n,i,o,f,e[s[E]],d[2],l[E]),P=v(w,x,_,S,k,e[c[E]],h[2],u[E])):E<64?(A=y(r,n,i,o,f,e[s[E]],d[3],l[E]),P=g(w,x,_,S,k,e[c[E]],h[3],u[E])):(A=b(r,n,i,o,f,e[s[E]],d[4],l[E]),P=m(w,x,_,S,k,e[c[E]],h[4],u[E])),r=f,f=o,o=p(i,10),i=n,n=A,w=k,k=S,S=p(_,10),_=x,x=P}var O=this._b+i+S|0;this._b=this._c+o+k|0,this._c=this._d+f+w|0,this._d=this._e+r+x|0,this._e=this._a+n+_|0,this._a=O},f.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=n.alloc?n.alloc(20):new n(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e},e.exports=f},6293:(e,t,r)=>{var n=r(4872),i=n.Buffer;function o(e,t){for(var r in e)t[r]=e[r]}function a(e,t,r){return i(e,t,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(o(n,t),t.Buffer=a),a.prototype=Object.create(i.prototype),o(i,a),a.from=function(e,t,r){if("number"===typeof e)throw new TypeError("Argument must not be a number");return i(e,t,r)},a.alloc=function(e,t,r){if("number"!==typeof e)throw new TypeError("Argument must be a number");var n=i(e);return void 0!==t?"string"===typeof r?n.fill(t,r):n.fill(t):n.fill(0),n},a.allocUnsafe=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return i(e)},a.allocUnsafeSlow=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return n.SlowBuffer(e)}},6215:(e,t)=>{"use strict";function r(e,t){var r=e.length;e.push(t);e:for(;0>>1,i=e[n];if(!(0>>1;no(c,r))lo(u,c)?(e[n]=u,e[l]=r,n=l):(e[n]=c,e[s]=r,n=s);else{if(!(lo(u,r)))break e;e[n]=u,e[l]=r,n=l}}}return t}function o(e,t){var r=e.sortIndex-t.sortIndex;return 0!==r?r:e.id-t.id}if("object"===typeof performance&&"function"===typeof performance.now){var a=performance;t.unstable_now=function(){return a.now()}}else{var s=Date,c=s.now();t.unstable_now=function(){return s.now()-c}}var l=[],u=[],d=1,h=null,f=3,p=!1,m=!1,g=!1,v="function"===typeof setTimeout?setTimeout:null,y="function"===typeof clearTimeout?clearTimeout:null,b="undefined"!==typeof setImmediate?setImmediate:null;function w(e){for(var t=n(u);null!==t;){if(null===t.callback)i(u);else{if(!(t.startTime<=e))break;i(u),t.sortIndex=t.expirationTime,r(l,t)}t=n(u)}}function x(e){if(g=!1,w(e),!m)if(null!==n(l))m=!0,I(_);else{var t=n(u);null!==t&&M(x,t.startTime-e)}}function _(e,r){m=!1,g&&(g=!1,y(A),A=-1),p=!0;var o=f;try{for(w(r),h=n(l);null!==h&&(!(h.expirationTime>r)||e&&!T());){var a=h.callback;if("function"===typeof a){h.callback=null,f=h.priorityLevel;var s=a(h.expirationTime<=r);r=t.unstable_now(),"function"===typeof s?h.callback=s:h===n(l)&&i(l),w(r)}else i(l);h=n(l)}if(null!==h)var c=!0;else{var d=n(u);null!==d&&M(x,d.startTime-r),c=!1}return c}finally{h=null,f=o,p=!1}}"undefined"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var S,k=!1,E=null,A=-1,P=5,O=-1;function T(){return!(t.unstable_now()-Oe||125a?(e.sortIndex=o,r(u,e),null===n(l)&&e===n(u)&&(g?(y(A),A=-1):g=!0,M(x,o-a))):(e.sortIndex=s,r(l,e),m||p||(m=!0,I(_))),e},t.unstable_shouldYield=T,t.unstable_wrapCallback=function(e){var t=f;return function(){var r=f;f=t;try{return e.apply(this,arguments)}finally{f=r}}}},8586:(e,t,r)=>{"use strict";e.exports=r(6215)},1703:(e,t,r)=>{const n=Symbol("SemVer ANY");class i{static get ANY(){return n}constructor(e,t){if(t=o(t),e instanceof i){if(e.loose===!!t.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),l("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===n?this.value="":this.value=this.operator+this.semver.version,l("comp",this)}parse(e){const t=this.options.loose?a[s.COMPARATORLOOSE]:a[s.COMPARATOR],r=e.match(t);if(!r)throw new TypeError(`Invalid comparator: ${e}`);this.operator=void 0!==r[1]?r[1]:"","="===this.operator&&(this.operator=""),r[2]?this.semver=new u(r[2],this.options.loose):this.semver=n}toString(){return this.value}test(e){if(l("Comparator.test",e,this.options.loose),this.semver===n||e===n)return!0;if("string"===typeof e)try{e=new u(e,this.options)}catch(t){return!1}return c(e,this.operator,this.semver,this.options)}intersects(e,t){if(!(e instanceof i))throw new TypeError("a Comparator is required");return""===this.operator?""===this.value||new d(e.value,t).test(this.value):""===e.operator?""===e.value||new d(this.value,t).test(e.semver):(!(t=o(t)).includePrerelease||"<0.0.0-0"!==this.value&&"<0.0.0-0"!==e.value)&&(!(!t.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0")))&&(!(!this.operator.startsWith(">")||!e.operator.startsWith(">"))||(!(!this.operator.startsWith("<")||!e.operator.startsWith("<"))||(!(this.semver.version!==e.semver.version||!this.operator.includes("=")||!e.operator.includes("="))||(!!(c(this.semver,"<",e.semver,t)&&this.operator.startsWith(">")&&e.operator.startsWith("<"))||!!(c(this.semver,">",e.semver,t)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))))))}}e.exports=i;const o=r(2407),{safeRe:a,t:s}=r(4195),c=r(5489),l=r(2243),u=r(3915),d=r(2908)},2908:(e,t,r)=>{class n{constructor(e,t){if(t=o(t),e instanceof n)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new n(e.raw,t);if(e instanceof a)return this.raw=e.value,this.set=[[e]],this.format(),this;if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map((e=>this.parseRange(e.trim()))).filter((e=>e.length)),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){const e=this.set[0];if(this.set=this.set.filter((e=>!g(e[0]))),0===this.set.length)this.set=[e];else if(this.set.length>1)for(const t of this.set)if(1===t.length&&v(t[0])){this.set=[t];break}}this.format()}format(){return this.range=this.set.map((e=>e.join(" ").trim())).join("||").trim(),this.range}toString(){return this.range}parseRange(e){const t=((this.options.includePrerelease&&p)|(this.options.loose&&m))+":"+e,r=i.get(t);if(r)return r;const n=this.options.loose,o=n?l[u.HYPHENRANGELOOSE]:l[u.HYPHENRANGE];e=e.replace(o,T(this.options.includePrerelease)),s("hyphen replace",e),e=e.replace(l[u.COMPARATORTRIM],d),s("comparator trim",e),e=e.replace(l[u.TILDETRIM],h),s("tilde trim",e),e=e.replace(l[u.CARETTRIM],f),s("caret trim",e);let c=e.split(" ").map((e=>b(e,this.options))).join(" ").split(/\s+/).map((e=>O(e,this.options)));n&&(c=c.filter((e=>(s("loose invalid filter",e,this.options),!!e.match(l[u.COMPARATORLOOSE]))))),s("range list",c);const v=new Map,y=c.map((e=>new a(e,this.options)));for(const i of y){if(g(i))return[i];v.set(i.value,i)}v.size>1&&v.has("")&&v.delete("");const w=[...v.values()];return i.set(t,w),w}intersects(e,t){if(!(e instanceof n))throw new TypeError("a Range is required");return this.set.some((r=>y(r,t)&&e.set.some((e=>y(e,t)&&r.every((r=>e.every((e=>r.intersects(e,t)))))))))}test(e){if(!e)return!1;if("string"===typeof e)try{e=new c(e,this.options)}catch(t){return!1}for(let r=0;r"<0.0.0-0"===e.value,v=e=>""===e.value,y=(e,t)=>{let r=!0;const n=e.slice();let i=n.pop();for(;r&&n.length;)r=n.every((e=>i.intersects(e,t))),i=n.pop();return r},b=(e,t)=>(s("comp",e,t),e=S(e,t),s("caret",e),e=x(e,t),s("tildes",e),e=E(e,t),s("xrange",e),e=P(e,t),s("stars",e),e),w=e=>!e||"x"===e.toLowerCase()||"*"===e,x=(e,t)=>e.trim().split(/\s+/).map((e=>_(e,t))).join(" "),_=(e,t)=>{const r=t.loose?l[u.TILDELOOSE]:l[u.TILDE];return e.replace(r,((t,r,n,i,o)=>{let a;return s("tilde",e,t,r,n,i,o),w(r)?a="":w(n)?a=`>=${r}.0.0 <${+r+1}.0.0-0`:w(i)?a=`>=${r}.${n}.0 <${r}.${+n+1}.0-0`:o?(s("replaceTilde pr",o),a=`>=${r}.${n}.${i}-${o} <${r}.${+n+1}.0-0`):a=`>=${r}.${n}.${i} <${r}.${+n+1}.0-0`,s("tilde return",a),a}))},S=(e,t)=>e.trim().split(/\s+/).map((e=>k(e,t))).join(" "),k=(e,t)=>{s("caret",e,t);const r=t.loose?l[u.CARETLOOSE]:l[u.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,((t,r,i,o,a)=>{let c;return s("caret",e,t,r,i,o,a),w(r)?c="":w(i)?c=`>=${r}.0.0${n} <${+r+1}.0.0-0`:w(o)?c="0"===r?`>=${r}.${i}.0${n} <${r}.${+i+1}.0-0`:`>=${r}.${i}.0${n} <${+r+1}.0.0-0`:a?(s("replaceCaret pr",a),c="0"===r?"0"===i?`>=${r}.${i}.${o}-${a} <${r}.${i}.${+o+1}-0`:`>=${r}.${i}.${o}-${a} <${r}.${+i+1}.0-0`:`>=${r}.${i}.${o}-${a} <${+r+1}.0.0-0`):(s("no pr"),c="0"===r?"0"===i?`>=${r}.${i}.${o}${n} <${r}.${i}.${+o+1}-0`:`>=${r}.${i}.${o}${n} <${r}.${+i+1}.0-0`:`>=${r}.${i}.${o} <${+r+1}.0.0-0`),s("caret return",c),c}))},E=(e,t)=>(s("replaceXRanges",e,t),e.split(/\s+/).map((e=>A(e,t))).join(" ")),A=(e,t)=>{e=e.trim();const r=t.loose?l[u.XRANGELOOSE]:l[u.XRANGE];return e.replace(r,((r,n,i,o,a,c)=>{s("xRange",e,r,n,i,o,a,c);const l=w(i),u=l||w(o),d=u||w(a),h=d;return"="===n&&h&&(n=""),c=t.includePrerelease?"-0":"",l?r=">"===n||"<"===n?"<0.0.0-0":"*":n&&h?(u&&(o=0),a=0,">"===n?(n=">=",u?(i=+i+1,o=0,a=0):(o=+o+1,a=0)):"<="===n&&(n="<",u?i=+i+1:o=+o+1),"<"===n&&(c="-0"),r=`${n+i}.${o}.${a}${c}`):u?r=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(r=`>=${i}.${o}.0${c} <${i}.${+o+1}.0-0`),s("xRange return",r),r}))},P=(e,t)=>(s("replaceStars",e,t),e.trim().replace(l[u.STAR],"")),O=(e,t)=>(s("replaceGTE0",e,t),e.trim().replace(l[t.includePrerelease?u.GTE0PRE:u.GTE0],"")),T=e=>(t,r,n,i,o,a,s,c,l,u,d,h,f)=>`${r=w(n)?"":w(i)?`>=${n}.0.0${e?"-0":""}`:w(o)?`>=${n}.${i}.0${e?"-0":""}`:a?`>=${r}`:`>=${r}${e?"-0":""}`} ${c=w(l)?"":w(u)?`<${+l+1}.0.0-0`:w(d)?`<${l}.${+u+1}.0-0`:h?`<=${l}.${u}.${d}-${h}`:e?`<${l}.${u}.${+d+1}-0`:`<=${c}`}`.trim(),C=(e,t,r)=>{for(let n=0;n0){const n=e[r].semver;if(n.major===t.major&&n.minor===t.minor&&n.patch===t.patch)return!0}return!1}return!0}},3915:(e,t,r)=>{const n=r(2243),{MAX_LENGTH:i,MAX_SAFE_INTEGER:o}=r(8474),{safeRe:a,t:s}=r(4195),c=r(2407),{compareIdentifiers:l}=r(903);class u{constructor(e,t){if(t=c(t),e instanceof u){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;e=e.version}else if("string"!==typeof e)throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>i)throw new TypeError(`version is longer than ${i} characters`);n("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;const r=e.trim().match(t.loose?a[s.LOOSE]:a[s.FULL]);if(!r)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+r[1],this.minor=+r[2],this.patch=+r[3],this.major>o||this.major<0)throw new TypeError("Invalid major version");if(this.minor>o||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>o||this.patch<0)throw new TypeError("Invalid patch version");r[4]?this.prerelease=r[4].split(".").map((e=>{if(/^[0-9]+$/.test(e)){const t=+e;if(t>=0&&t=0;)"number"===typeof this.prerelease[n]&&(this.prerelease[n]++,n=-2);if(-1===n){if(t===this.prerelease.join(".")&&!1===r)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(e)}}if(t){let n=[t,e];!1===r&&(n=[t]),0===l(this.prerelease[0],t)?isNaN(this.prerelease[1])&&(this.prerelease=n):this.prerelease=n}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}}e.exports=u},3819:(e,t,r)=>{const n=r(5666);e.exports=(e,t)=>{const r=n(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null}},5489:(e,t,r)=>{const n=r(2736),i=r(8859),o=r(3573),a=r(772),s=r(3805),c=r(315);e.exports=(e,t,r,l)=>{switch(t){case"===":return"object"===typeof e&&(e=e.version),"object"===typeof r&&(r=r.version),e===r;case"!==":return"object"===typeof e&&(e=e.version),"object"===typeof r&&(r=r.version),e!==r;case"":case"=":case"==":return n(e,r,l);case"!=":return i(e,r,l);case">":return o(e,r,l);case">=":return a(e,r,l);case"<":return s(e,r,l);case"<=":return c(e,r,l);default:throw new TypeError(`Invalid operator: ${t}`)}}},4107:(e,t,r)=>{const n=r(3915),i=r(5666),{safeRe:o,t:a}=r(4195);e.exports=(e,t)=>{if(e instanceof n)return e;if("number"===typeof e&&(e=String(e)),"string"!==typeof e)return null;let r=null;if((t=t||{}).rtl){let t;for(;(t=o[a.COERCERTL].exec(e))&&(!r||r.index+r[0].length!==e.length);)r&&t.index+t[0].length===r.index+r[0].length||(r=t),o[a.COERCERTL].lastIndex=t.index+t[1].length+t[2].length;o[a.COERCERTL].lastIndex=-1}else r=e.match(o[a.COERCE]);return null===r?null:i(`${r[2]}.${r[3]||"0"}.${r[4]||"0"}`,t)}},3739:(e,t,r)=>{const n=r(3915);e.exports=(e,t,r)=>{const i=new n(e,r),o=new n(t,r);return i.compare(o)||i.compareBuild(o)}},2453:(e,t,r)=>{const n=r(2871);e.exports=(e,t)=>n(e,t,!0)},2871:(e,t,r)=>{const n=r(3915);e.exports=(e,t,r)=>new n(e,r).compare(new n(t,r))},7342:(e,t,r)=>{const n=r(5666);e.exports=(e,t)=>{const r=n(e,null,!0),i=n(t,null,!0),o=r.compare(i);if(0===o)return null;const a=o>0,s=a?r:i,c=a?i:r,l=!!s.prerelease.length;if(!!c.prerelease.length&&!l)return c.patch||c.minor?s.patch?"patch":s.minor?"minor":"major":"major";const u=l?"pre":"";return r.major!==i.major?u+"major":r.minor!==i.minor?u+"minor":r.patch!==i.patch?u+"patch":"prerelease"}},2736:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>0===n(e,t,r)},3573:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>n(e,t,r)>0},772:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>n(e,t,r)>=0},3262:(e,t,r)=>{const n=r(3915);e.exports=(e,t,r,i,o)=>{"string"===typeof r&&(o=i,i=r,r=void 0);try{return new n(e instanceof n?e.version:e,r).inc(t,i,o).version}catch(a){return null}}},3805:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>n(e,t,r)<0},315:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>n(e,t,r)<=0},7141:(e,t,r)=>{const n=r(3915);e.exports=(e,t)=>new n(e,t).major},3426:(e,t,r)=>{const n=r(3915);e.exports=(e,t)=>new n(e,t).minor},8859:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>0!==n(e,t,r)},5666:(e,t,r)=>{const n=r(3915);e.exports=(e,t,r=!1)=>{if(e instanceof n)return e;try{return new n(e,t)}catch(i){if(!r)return null;throw i}}},5915:(e,t,r)=>{const n=r(3915);e.exports=(e,t)=>new n(e,t).patch},5993:(e,t,r)=>{const n=r(5666);e.exports=(e,t)=>{const r=n(e,t);return r&&r.prerelease.length?r.prerelease:null}},8630:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>n(t,e,r)},1758:(e,t,r)=>{const n=r(3739);e.exports=(e,t)=>e.sort(((e,r)=>n(r,e,t)))},9670:(e,t,r)=>{const n=r(2908);e.exports=(e,t,r)=>{try{t=new n(t,r)}catch(i){return!1}return t.test(e)}},3854:(e,t,r)=>{const n=r(3739);e.exports=(e,t)=>e.sort(((e,r)=>n(e,r,t)))},9573:(e,t,r)=>{const n=r(5666);e.exports=(e,t)=>{const r=n(e,t);return r?r.version:null}},5353:(e,t,r)=>{const n=r(4195),i=r(8474),o=r(3915),a=r(903),s=r(5666),c=r(9573),l=r(3819),u=r(3262),d=r(7342),h=r(7141),f=r(3426),p=r(5915),m=r(5993),g=r(2871),v=r(8630),y=r(2453),b=r(3739),w=r(3854),x=r(1758),_=r(3573),S=r(3805),k=r(2736),E=r(8859),A=r(772),P=r(315),O=r(5489),T=r(4107),C=r(1703),j=r(2908),R=r(9670),I=r(1820),M=r(7226),L=r(2501),N=r(5344),D=r(3673),z=r(351),B=r(2837),U=r(3930),F=r(4777),$=r(4799),H=r(8936);e.exports={parse:s,valid:c,clean:l,inc:u,diff:d,major:h,minor:f,patch:p,prerelease:m,compare:g,rcompare:v,compareLoose:y,compareBuild:b,sort:w,rsort:x,gt:_,lt:S,eq:k,neq:E,gte:A,lte:P,cmp:O,coerce:T,Comparator:C,Range:j,satisfies:R,toComparators:I,maxSatisfying:M,minSatisfying:L,minVersion:N,validRange:D,outside:z,gtr:B,ltr:U,intersects:F,simplifyRange:$,subset:H,SemVer:o,re:n.re,src:n.src,tokens:n.t,SEMVER_SPEC_VERSION:i.SEMVER_SPEC_VERSION,RELEASE_TYPES:i.RELEASE_TYPES,compareIdentifiers:a.compareIdentifiers,rcompareIdentifiers:a.rcompareIdentifiers}},8474:e=>{const t=Number.MAX_SAFE_INTEGER||9007199254740991;e.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:t,RELEASE_TYPES:["major","premajor","minor","preminor","patch","prepatch","prerelease"],SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}},2243:(e,t,r)=>{const n="object"===typeof r(5469)&&{NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0}.NODE_DEBUG&&/\bsemver\b/i.test({NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0}.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};e.exports=n},903:e=>{const t=/^[0-9]+$/,r=(e,r)=>{const n=t.test(e),i=t.test(r);return n&&i&&(e=+e,r=+r),e===r?0:n&&!i?-1:i&&!n?1:er(t,e)}},2407:e=>{const t=Object.freeze({loose:!0}),r=Object.freeze({});e.exports=e=>e?"object"!==typeof e?t:e:r},4195:(e,t,r)=>{const{MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:i,MAX_LENGTH:o}=r(8474),a=r(2243),s=(t=e.exports={}).re=[],c=t.safeRe=[],l=t.src=[],u=t.t={};let d=0;const h="[a-zA-Z0-9-]",f=[["\\s",1],["\\d",o],[h,i]],p=(e,t,r)=>{const n=(e=>{for(const[t,r]of f)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e})(t),i=d++;a(e,i,t),u[e]=i,l[i]=t,s[i]=new RegExp(t,r?"g":void 0),c[i]=new RegExp(n,r?"g":void 0)};p("NUMERICIDENTIFIER","0|[1-9]\\d*"),p("NUMERICIDENTIFIERLOOSE","\\d+"),p("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${h}*`),p("MAINVERSION",`(${l[u.NUMERICIDENTIFIER]})\\.(${l[u.NUMERICIDENTIFIER]})\\.(${l[u.NUMERICIDENTIFIER]})`),p("MAINVERSIONLOOSE",`(${l[u.NUMERICIDENTIFIERLOOSE]})\\.(${l[u.NUMERICIDENTIFIERLOOSE]})\\.(${l[u.NUMERICIDENTIFIERLOOSE]})`),p("PRERELEASEIDENTIFIER",`(?:${l[u.NUMERICIDENTIFIER]}|${l[u.NONNUMERICIDENTIFIER]})`),p("PRERELEASEIDENTIFIERLOOSE",`(?:${l[u.NUMERICIDENTIFIERLOOSE]}|${l[u.NONNUMERICIDENTIFIER]})`),p("PRERELEASE",`(?:-(${l[u.PRERELEASEIDENTIFIER]}(?:\\.${l[u.PRERELEASEIDENTIFIER]})*))`),p("PRERELEASELOOSE",`(?:-?(${l[u.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${l[u.PRERELEASEIDENTIFIERLOOSE]})*))`),p("BUILDIDENTIFIER",`${h}+`),p("BUILD",`(?:\\+(${l[u.BUILDIDENTIFIER]}(?:\\.${l[u.BUILDIDENTIFIER]})*))`),p("FULLPLAIN",`v?${l[u.MAINVERSION]}${l[u.PRERELEASE]}?${l[u.BUILD]}?`),p("FULL",`^${l[u.FULLPLAIN]}$`),p("LOOSEPLAIN",`[v=\\s]*${l[u.MAINVERSIONLOOSE]}${l[u.PRERELEASELOOSE]}?${l[u.BUILD]}?`),p("LOOSE",`^${l[u.LOOSEPLAIN]}$`),p("GTLT","((?:<|>)?=?)"),p("XRANGEIDENTIFIERLOOSE",`${l[u.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),p("XRANGEIDENTIFIER",`${l[u.NUMERICIDENTIFIER]}|x|X|\\*`),p("XRANGEPLAIN",`[v=\\s]*(${l[u.XRANGEIDENTIFIER]})(?:\\.(${l[u.XRANGEIDENTIFIER]})(?:\\.(${l[u.XRANGEIDENTIFIER]})(?:${l[u.PRERELEASE]})?${l[u.BUILD]}?)?)?`),p("XRANGEPLAINLOOSE",`[v=\\s]*(${l[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${l[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${l[u.XRANGEIDENTIFIERLOOSE]})(?:${l[u.PRERELEASELOOSE]})?${l[u.BUILD]}?)?)?`),p("XRANGE",`^${l[u.GTLT]}\\s*${l[u.XRANGEPLAIN]}$`),p("XRANGELOOSE",`^${l[u.GTLT]}\\s*${l[u.XRANGEPLAINLOOSE]}$`),p("COERCE",`(^|[^\\d])(\\d{1,${n}})(?:\\.(\\d{1,${n}}))?(?:\\.(\\d{1,${n}}))?(?:$|[^\\d])`),p("COERCERTL",l[u.COERCE],!0),p("LONETILDE","(?:~>?)"),p("TILDETRIM",`(\\s*)${l[u.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",p("TILDE",`^${l[u.LONETILDE]}${l[u.XRANGEPLAIN]}$`),p("TILDELOOSE",`^${l[u.LONETILDE]}${l[u.XRANGEPLAINLOOSE]}$`),p("LONECARET","(?:\\^)"),p("CARETTRIM",`(\\s*)${l[u.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",p("CARET",`^${l[u.LONECARET]}${l[u.XRANGEPLAIN]}$`),p("CARETLOOSE",`^${l[u.LONECARET]}${l[u.XRANGEPLAINLOOSE]}$`),p("COMPARATORLOOSE",`^${l[u.GTLT]}\\s*(${l[u.LOOSEPLAIN]})$|^$`),p("COMPARATOR",`^${l[u.GTLT]}\\s*(${l[u.FULLPLAIN]})$|^$`),p("COMPARATORTRIM",`(\\s*)${l[u.GTLT]}\\s*(${l[u.LOOSEPLAIN]}|${l[u.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",p("HYPHENRANGE",`^\\s*(${l[u.XRANGEPLAIN]})\\s+-\\s+(${l[u.XRANGEPLAIN]})\\s*$`),p("HYPHENRANGELOOSE",`^\\s*(${l[u.XRANGEPLAINLOOSE]})\\s+-\\s+(${l[u.XRANGEPLAINLOOSE]})\\s*$`),p("STAR","(<|>)?=?\\s*\\*"),p("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),p("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")},2837:(e,t,r)=>{const n=r(351);e.exports=(e,t,r)=>n(e,t,">",r)},4777:(e,t,r)=>{const n=r(2908);e.exports=(e,t,r)=>(e=new n(e,r),t=new n(t,r),e.intersects(t,r))},3930:(e,t,r)=>{const n=r(351);e.exports=(e,t,r)=>n(e,t,"<",r)},7226:(e,t,r)=>{const n=r(3915),i=r(2908);e.exports=(e,t,r)=>{let o=null,a=null,s=null;try{s=new i(t,r)}catch(c){return null}return e.forEach((e=>{s.test(e)&&(o&&-1!==a.compare(e)||(o=e,a=new n(o,r)))})),o}},2501:(e,t,r)=>{const n=r(3915),i=r(2908);e.exports=(e,t,r)=>{let o=null,a=null,s=null;try{s=new i(t,r)}catch(c){return null}return e.forEach((e=>{s.test(e)&&(o&&1!==a.compare(e)||(o=e,a=new n(o,r)))})),o}},5344:(e,t,r)=>{const n=r(3915),i=r(2908),o=r(3573);e.exports=(e,t)=>{e=new i(e,t);let r=new n("0.0.0");if(e.test(r))return r;if(r=new n("0.0.0-0"),e.test(r))return r;r=null;for(let i=0;i{const t=new n(e.semver.version);switch(e.operator){case">":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":a&&!o(t,a)||(a=t);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${e.operator}`)}})),!a||r&&!o(r,a)||(r=a)}return r&&e.test(r)?r:null}},351:(e,t,r)=>{const n=r(3915),i=r(1703),{ANY:o}=i,a=r(2908),s=r(9670),c=r(3573),l=r(3805),u=r(315),d=r(772);e.exports=(e,t,r,h)=>{let f,p,m,g,v;switch(e=new n(e,h),t=new a(t,h),r){case">":f=c,p=u,m=l,g=">",v=">=";break;case"<":f=l,p=d,m=c,g="<",v="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(s(e,t,h))return!1;for(let n=0;n{e.semver===o&&(e=new i(">=0.0.0")),a=a||e,s=s||e,f(e.semver,a.semver,h)?a=e:m(e.semver,s.semver,h)&&(s=e)})),a.operator===g||a.operator===v)return!1;if((!s.operator||s.operator===g)&&p(e,s.semver))return!1;if(s.operator===v&&m(e,s.semver))return!1}return!0}},4799:(e,t,r)=>{const n=r(9670),i=r(2871);e.exports=(e,t,r)=>{const o=[];let a=null,s=null;const c=e.sort(((e,t)=>i(e,t,r)));for(const i of c){n(i,t,r)?(s=i,a||(a=i)):(s&&o.push([a,s]),s=null,a=null)}a&&o.push([a,null]);const l=[];for(const[n,i]of o)n===i?l.push(n):i||n!==c[0]?i?n===c[0]?l.push(`<=${i}`):l.push(`${n} - ${i}`):l.push(`>=${n}`):l.push("*");const u=l.join(" || "),d="string"===typeof t.raw?t.raw:String(t);return u.length{const n=r(2908),i=r(1703),{ANY:o}=i,a=r(9670),s=r(2871),c=[new i(">=0.0.0-0")],l=[new i(">=0.0.0")],u=(e,t,r)=>{if(e===t)return!0;if(1===e.length&&e[0].semver===o){if(1===t.length&&t[0].semver===o)return!0;e=r.includePrerelease?c:l}if(1===t.length&&t[0].semver===o){if(r.includePrerelease)return!0;t=l}const n=new Set;let i,u,f,p,m,g,v;for(const o of e)">"===o.operator||">="===o.operator?i=d(i,o,r):"<"===o.operator||"<="===o.operator?u=h(u,o,r):n.add(o.semver);if(n.size>1)return null;if(i&&u){if(f=s(i.semver,u.semver,r),f>0)return null;if(0===f&&(">="!==i.operator||"<="!==u.operator))return null}for(const o of n){if(i&&!a(o,String(i),r))return null;if(u&&!a(o,String(u),r))return null;for(const e of t)if(!a(o,String(e),r))return!1;return!0}let y=!(!u||r.includePrerelease||!u.semver.prerelease.length)&&u.semver,b=!(!i||r.includePrerelease||!i.semver.prerelease.length)&&i.semver;y&&1===y.prerelease.length&&"<"===u.operator&&0===y.prerelease[0]&&(y=!1);for(const o of t){if(v=v||">"===o.operator||">="===o.operator,g=g||"<"===o.operator||"<="===o.operator,i)if(b&&o.semver.prerelease&&o.semver.prerelease.length&&o.semver.major===b.major&&o.semver.minor===b.minor&&o.semver.patch===b.patch&&(b=!1),">"===o.operator||">="===o.operator){if(p=d(i,o,r),p===o&&p!==i)return!1}else if(">="===i.operator&&!a(i.semver,String(o),r))return!1;if(u)if(y&&o.semver.prerelease&&o.semver.prerelease.length&&o.semver.major===y.major&&o.semver.minor===y.minor&&o.semver.patch===y.patch&&(y=!1),"<"===o.operator||"<="===o.operator){if(m=h(u,o,r),m===o&&m!==u)return!1}else if("<="===u.operator&&!a(u.semver,String(o),r))return!1;if(!o.operator&&(u||i)&&0!==f)return!1}return!(i&&g&&!u&&0!==f)&&(!(u&&v&&!i&&0!==f)&&(!b&&!y))},d=(e,t,r)=>{if(!e)return t;const n=s(e.semver,t.semver,r);return n>0?e:n<0||">"===t.operator&&">="===e.operator?t:e},h=(e,t,r)=>{if(!e)return t;const n=s(e.semver,t.semver,r);return n<0?e:n>0||"<"===t.operator&&"<="===e.operator?t:e};e.exports=(e,t,r={})=>{if(e===t)return!0;e=new n(e,r),t=new n(t,r);let i=!1;e:for(const n of e.set){for(const e of t.set){const t=u(n,e,r);if(i=i||null!==t,t)continue e}if(i)return!1}return!0}},1820:(e,t,r)=>{const n=r(2908);e.exports=(e,t)=>new n(e,t).set.map((e=>e.map((e=>e.value)).join(" ").trim().split(" ")))},3673:(e,t,r)=>{const n=r(2908);e.exports=(e,t)=>{try{return new n(e,t).range||"*"}catch(r){return null}}},1742:(e,t,r)=>{var n=r(6293).Buffer;function i(e,t){this._block=n.alloc(e),this._finalSize=t,this._blockSize=e,this._len=0}i.prototype.update=function(e,t){"string"===typeof e&&(t=t||"utf8",e=n.from(e,t));for(var r=this._block,i=this._blockSize,o=e.length,a=this._len,s=0;s=this._finalSize&&(this._update(this._block),this._block.fill(0));var r=8*this._len;if(r<=4294967295)this._block.writeUInt32BE(r,this._blockSize-4);else{var n=(4294967295&r)>>>0,i=(r-n)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(n,this._blockSize-4)}this._update(this._block);var o=this._hash();return e?o.toString(e):o},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=i},6478:(e,t,r)=>{var n=e.exports=function(e){e=e.toLowerCase();var t=n[e];if(!t)throw new Error(e+" is not supported (we accept pull requests)");return new t};n.sha=r(3357),n.sha1=r(4709),n.sha224=r(2023),n.sha256=r(5988),n.sha384=r(5676),n.sha512=r(4696)},3357:(e,t,r)=>{var n=r(637),i=r(1742),o=r(6293).Buffer,a=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function c(){this.init(),this._w=s,i.call(this,64,56)}function l(e){return e<<30|e>>>2}function u(e,t,r,n){return 0===e?t&r|~t&n:2===e?t&r|t&n|r&n:t^r^n}n(c,i),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,c=0|this._e,d=0;d<16;++d)r[d]=e.readInt32BE(4*d);for(;d<80;++d)r[d]=r[d-3]^r[d-8]^r[d-14]^r[d-16];for(var h=0;h<80;++h){var f=~~(h/20),p=0|((t=n)<<5|t>>>27)+u(f,i,o,s)+c+r[h]+a[f];c=s,s=o,o=l(i),i=n,n=p}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=o.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},4709:(e,t,r)=>{var n=r(637),i=r(1742),o=r(6293).Buffer,a=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function c(){this.init(),this._w=s,i.call(this,64,56)}function l(e){return e<<5|e>>>27}function u(e){return e<<30|e>>>2}function d(e,t,r,n){return 0===e?t&r|~t&n:2===e?t&r|t&n|r&n:t^r^n}n(c,i),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,c=0|this._e,h=0;h<16;++h)r[h]=e.readInt32BE(4*h);for(;h<80;++h)r[h]=(t=r[h-3]^r[h-8]^r[h-14]^r[h-16])<<1|t>>>31;for(var f=0;f<80;++f){var p=~~(f/20),m=l(n)+d(p,i,o,s)+c+r[f]+a[p]|0;c=s,s=o,o=u(i),i=n,n=m}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=o.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},2023:(e,t,r)=>{var n=r(637),i=r(5988),o=r(1742),a=r(6293).Buffer,s=new Array(64);function c(){this.init(),this._w=s,o.call(this,64,56)}n(c,i),c.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},c.prototype._hash=function(){var e=a.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},e.exports=c},5988:(e,t,r)=>{var n=r(637),i=r(1742),o=r(6293).Buffer,a=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],s=new Array(64);function c(){this.init(),this._w=s,i.call(this,64,56)}function l(e,t,r){return r^e&(t^r)}function u(e,t,r){return e&t|r&(e|t)}function d(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function h(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function f(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}n(c,i),c.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},c.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,c=0|this._e,p=0|this._f,m=0|this._g,g=0|this._h,v=0;v<16;++v)r[v]=e.readInt32BE(4*v);for(;v<64;++v)r[v]=0|(((t=r[v-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+r[v-7]+f(r[v-15])+r[v-16];for(var y=0;y<64;++y){var b=g+h(c)+l(c,p,m)+a[y]+r[y]|0,w=d(n)+u(n,i,o)|0;g=m,m=p,p=c,c=s+b|0,s=o,o=i,i=n,n=b+w|0}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0,this._f=p+this._f|0,this._g=m+this._g|0,this._h=g+this._h|0},c.prototype._hash=function(){var e=o.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},5676:(e,t,r)=>{var n=r(637),i=r(4696),o=r(1742),a=r(6293).Buffer,s=new Array(160);function c(){this.init(),this._w=s,o.call(this,128,112)}n(c,i),c.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},c.prototype._hash=function(){var e=a.allocUnsafe(48);function t(t,r,n){e.writeInt32BE(t,n),e.writeInt32BE(r,n+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),e},e.exports=c},4696:(e,t,r)=>{var n=r(637),i=r(1742),o=r(6293).Buffer,a=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],s=new Array(160);function c(){this.init(),this._w=s,i.call(this,128,112)}function l(e,t,r){return r^e&(t^r)}function u(e,t,r){return e&t|r&(e|t)}function d(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function h(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function f(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function g(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function v(e,t){return e>>>0>>0?1:0}n(c,i),c.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},c.prototype._update=function(e){for(var t=this._w,r=0|this._ah,n=0|this._bh,i=0|this._ch,o=0|this._dh,s=0|this._eh,c=0|this._fh,y=0|this._gh,b=0|this._hh,w=0|this._al,x=0|this._bl,_=0|this._cl,S=0|this._dl,k=0|this._el,E=0|this._fl,A=0|this._gl,P=0|this._hl,O=0;O<32;O+=2)t[O]=e.readInt32BE(4*O),t[O+1]=e.readInt32BE(4*O+4);for(;O<160;O+=2){var T=t[O-30],C=t[O-30+1],j=f(T,C),R=p(C,T),I=m(T=t[O-4],C=t[O-4+1]),M=g(C,T),L=t[O-14],N=t[O-14+1],D=t[O-32],z=t[O-32+1],B=R+N|0,U=j+L+v(B,R)|0;U=(U=U+I+v(B=B+M|0,M)|0)+D+v(B=B+z|0,z)|0,t[O]=U,t[O+1]=B}for(var F=0;F<160;F+=2){U=t[F],B=t[F+1];var $=u(r,n,i),H=u(w,x,_),V=d(r,w),q=d(w,r),K=h(s,k),W=h(k,s),G=a[F],Z=a[F+1],Y=l(s,c,y),X=l(k,E,A),J=P+W|0,Q=b+K+v(J,P)|0;Q=(Q=(Q=Q+Y+v(J=J+X|0,X)|0)+G+v(J=J+Z|0,Z)|0)+U+v(J=J+B|0,B)|0;var ee=q+H|0,te=V+$+v(ee,q)|0;b=y,P=A,y=c,A=E,c=s,E=k,s=o+Q+v(k=S+J|0,S)|0,o=i,S=_,i=n,_=x,n=r,x=w,r=Q+te+v(w=J+ee|0,J)|0}this._al=this._al+w|0,this._bl=this._bl+x|0,this._cl=this._cl+_|0,this._dl=this._dl+S|0,this._el=this._el+k|0,this._fl=this._fl+E|0,this._gl=this._gl+A|0,this._hl=this._hl+P|0,this._ah=this._ah+r+v(this._al,w)|0,this._bh=this._bh+n+v(this._bl,x)|0,this._ch=this._ch+i+v(this._cl,_)|0,this._dh=this._dh+o+v(this._dl,S)|0,this._eh=this._eh+s+v(this._el,k)|0,this._fh=this._fh+c+v(this._fl,E)|0,this._gh=this._gh+y+v(this._gl,A)|0,this._hh=this._hh+b+v(this._hl,P)|0},c.prototype._hash=function(){var e=o.allocUnsafe(64);function t(t,r,n){e.writeInt32BE(t,n),e.writeInt32BE(r,n+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},1702:(e,t,r)=>{e.exports=i;var n=r(4062).EventEmitter;function i(){n.call(this)}r(637)(i,n),i.Readable=r(2833),i.Writable=r(6672),i.Duplex=r(4751),i.Transform=r(2598),i.PassThrough=r(6388),i.finished=r(8279),i.pipeline=r(5942),i.Stream=i,i.prototype.pipe=function(e,t){var r=this;function i(t){e.writable&&!1===e.write(t)&&r.pause&&r.pause()}function o(){r.readable&&r.resume&&r.resume()}r.on("data",i),e.on("drain",o),e._isStdio||t&&!1===t.end||(r.on("end",s),r.on("close",c));var a=!1;function s(){a||(a=!0,e.end())}function c(){a||(a=!0,"function"===typeof e.destroy&&e.destroy())}function l(e){if(u(),0===n.listenerCount(this,"error"))throw e}function u(){r.removeListener("data",i),e.removeListener("drain",o),r.removeListener("end",s),r.removeListener("close",c),r.removeListener("error",l),e.removeListener("error",l),r.removeListener("end",u),r.removeListener("close",u),e.removeListener("close",u)}return r.on("error",l),e.on("error",l),r.on("end",u),r.on("close",u),e.on("close",u),e.emit("pipe",r),e}},5049:(e,t,r)=>{"use strict";var n=r(6293).Buffer,i=n.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!==typeof t&&(n.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=l,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=u,this.end=d,t=3;break;default:return this.write=h,void(this.end=f)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function a(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!==(192&t[0]))return e.lastNeed=0,"\ufffd";if(e.lastNeed>1&&t.length>1){if(128!==(192&t[1]))return e.lastNeed=1,"\ufffd";if(e.lastNeed>2&&t.length>2&&128!==(192&t[2]))return e.lastNeed=2,"\ufffd"}}(this,e);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function l(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function u(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function d(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function h(e){return e.toString(this.encoding)}function f(e){return e&&e.length?this.write(e):""}t.s=o,o.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0)return i>0&&(e.lastNeed=i-1),i;if(--n=0)return i>0&&(e.lastNeed=i-2),i;if(--n=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},o.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},1808:(e,t,r)=>{var n=r(4872).Buffer;e.exports=function(e){return ArrayBuffer.isView(e)?n.from(e.buffer,e.byteOffset,e.byteLength):n.from(e)}},6688:(e,t,r)=>{"use strict";var n=r(9652);var i="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t},o=n.useState,a=n.useEffect,s=n.useLayoutEffect,c=n.useDebugValue;function l(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!i(e,r)}catch(n){return!0}}var u="undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),n=o({inst:{value:r,getSnapshot:t}}),i=n[0].inst,u=n[1];return s((function(){i.value=r,i.getSnapshot=t,l(i)&&u({inst:i})}),[e,r,t]),a((function(){return l(i)&&u({inst:i}),e((function(){l(i)&&u({inst:i})}))}),[e]),c(r),r};t.useSyncExternalStore=void 0!==n.useSyncExternalStore?n.useSyncExternalStore:u},9821:(e,t,r)=>{"use strict";var n=r(9652),i=r(5447);var o="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t},a=i.useSyncExternalStore,s=n.useRef,c=n.useEffect,l=n.useMemo,u=n.useDebugValue;t.useSyncExternalStoreWithSelector=function(e,t,r,n,i){var d=s(null);if(null===d.current){var h={hasValue:!1,value:null};d.current=h}else h=d.current;d=l((function(){function e(e){if(!c){if(c=!0,a=e,e=n(e),void 0!==i&&h.hasValue){var t=h.value;if(i(t,e))return s=t}return s=e}if(t=s,o(a,e))return t;var r=n(e);return void 0!==i&&i(t,r)?t:(a=e,s=r)}var a,s,c=!1,l=void 0===r?null:r;return[function(){return e(t())},null===l?void 0:function(){return e(l())}]}),[t,r,n,i]);var f=a(e,d[0],d[1]);return c((function(){h.hasValue=!0,h.value=f}),[f]),u(f),f}},5447:(e,t,r)=>{"use strict";e.exports=r(6688)},2003:(e,t,r)=>{"use strict";e.exports=r(9821)},4460:(e,t,r)=>{function n(e){try{if(!r.g.localStorage)return!1}catch(n){return!1}var t=r.g.localStorage[e];return null!=t&&"true"===String(t).toLowerCase()}e.exports=function(e,t){if(n("noDeprecation"))return e;var r=!1;return function(){if(!r){if(n("throwDeprecation"))throw new Error(t);n("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}}},5897:e=>{"use strict";e.exports=function(e){e.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}},9616:(e,t,r)=>{"use strict";function n(e){var t=this;if(t instanceof n||(t=new n),t.tail=null,t.head=null,t.length=0,e&&"function"===typeof e.forEach)e.forEach((function(e){t.push(e)}));else if(arguments.length>0)for(var r=0,i=arguments.length;r1)r=t;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");n=this.head.next,r=this.head.value}for(var i=0;null!==n;i++)r=e(r,n.value,i),n=n.next;return r},n.prototype.reduceReverse=function(e,t){var r,n=this.tail;if(arguments.length>1)r=t;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");n=this.tail.prev,r=this.tail.value}for(var i=this.length-1;null!==n;i--)r=e(r,n.value,i),n=n.prev;return r},n.prototype.toArray=function(){for(var e=new Array(this.length),t=0,r=this.head;null!==r;t++)e[t]=r.value,r=r.next;return e},n.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,r=this.tail;null!==r;t++)e[t]=r.value,r=r.prev;return e},n.prototype.slice=function(e,t){(t=t||this.length)<0&&(t+=this.length),(e=e||0)<0&&(e+=this.length);var r=new n;if(tthis.length&&(t=this.length);for(var i=0,o=this.head;null!==o&&ithis.length&&(t=this.length);for(var i=this.length,o=this.tail;null!==o&&i>t;i--)o=o.prev;for(;null!==o&&i>e;i--,o=o.prev)r.push(o.value);return r},n.prototype.splice=function(e,t,...r){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var n=0,o=this.head;null!==o&&n{},8247:()=>{},3018:()=>{},6601:()=>{},9214:()=>{},2361:()=>{},4616:()=>{},6564:(e,t,r)=>{var n=r(9766).default;function i(){"use strict";e.exports=i=function(){return t},e.exports.__esModule=!0,e.exports.default=e.exports;var t={},r=Object.prototype,o=r.hasOwnProperty,a=Object.defineProperty||function(e,t,r){e[t]=r.value},s="function"==typeof Symbol?Symbol:{},c=s.iterator||"@@iterator",l=s.asyncIterator||"@@asyncIterator",u=s.toStringTag||"@@toStringTag";function d(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{d({},"")}catch(C){d=function(e,t,r){return e[t]=r}}function h(e,t,r,n){var i=t&&t.prototype instanceof m?t:m,o=Object.create(i.prototype),s=new O(n||[]);return a(o,"_invoke",{value:k(e,r,s)}),o}function f(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(C){return{type:"throw",arg:C}}}t.wrap=h;var p={};function m(){}function g(){}function v(){}var y={};d(y,c,(function(){return this}));var b=Object.getPrototypeOf,w=b&&b(b(T([])));w&&w!==r&&o.call(w,c)&&(y=w);var x=v.prototype=m.prototype=Object.create(y);function _(e){["next","throw","return"].forEach((function(t){d(e,t,(function(e){return this._invoke(t,e)}))}))}function S(e,t){function r(i,a,s,c){var l=f(e[i],e,a);if("throw"!==l.type){var u=l.arg,d=u.value;return d&&"object"==n(d)&&o.call(d,"__await")?t.resolve(d.__await).then((function(e){r("next",e,s,c)}),(function(e){r("throw",e,s,c)})):t.resolve(d).then((function(e){u.value=e,s(u)}),(function(e){return r("throw",e,s,c)}))}c(l.arg)}var i;a(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,i){r(e,n,t,i)}))}return i=i?i.then(o,o):o()}})}function k(e,t,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return{value:void 0,done:!0}}for(r.method=i,r.arg=o;;){var a=r.delegate;if(a){var s=E(a,r);if(s){if(s===p)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=f(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===p)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function E(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,E(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),p;var i=f(n,e.iterator,t.arg);if("throw"===i.type)return t.method="throw",t.arg=i.arg,t.delegate=null,p;var o=i.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,p):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,p)}function A(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function P(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function O(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(A,this),this.reset(!0)}function T(e){if(e||""===e){var t=e[c];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,i=function t(){for(;++r=0;--n){var i=this.tryEntries[n],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=o.call(i,"catchLoc"),c=o.call(i,"finallyLoc");if(s&&c){if(this.prev=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),P(r),p}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var i=n.arg;P(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:T(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),p}},t}e.exports=i,e.exports.__esModule=!0,e.exports.default=e.exports},9766:e=>{function t(r){return e.exports=t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,t(r)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},3050:(e,t,r)=>{var n=r(6564)();e.exports=n;try{regeneratorRuntime=n}catch(i){"object"===typeof globalThis?globalThis.regeneratorRuntime=n:Function("r","regeneratorRuntime = r")(n)}},1730:(e,t,r)=>{"use strict";function n(){return n=Object.assign?Object.assign.bind():function(e){for(var t=1;tn})},8619:(e,t,r)=>{"use strict";function n(e,t){return n=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},n(e,t)}function i(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,n(e,t)}r.d(t,{Z:()=>i})},6996:e=>{"use strict";e.exports=JSON.parse('["\u7684","\u4e00","\u662f","\u5728","\u4e0d","\u4e86","\u6709","\u548c","\u4eba","\u8fd9","\u4e2d","\u5927","\u4e3a","\u4e0a","\u4e2a","\u56fd","\u6211","\u4ee5","\u8981","\u4ed6","\u65f6","\u6765","\u7528","\u4eec","\u751f","\u5230","\u4f5c","\u5730","\u4e8e","\u51fa","\u5c31","\u5206","\u5bf9","\u6210","\u4f1a","\u53ef","\u4e3b","\u53d1","\u5e74","\u52a8","\u540c","\u5de5","\u4e5f","\u80fd","\u4e0b","\u8fc7","\u5b50","\u8bf4","\u4ea7","\u79cd","\u9762","\u800c","\u65b9","\u540e","\u591a","\u5b9a","\u884c","\u5b66","\u6cd5","\u6240","\u6c11","\u5f97","\u7ecf","\u5341","\u4e09","\u4e4b","\u8fdb","\u7740","\u7b49","\u90e8","\u5ea6","\u5bb6","\u7535","\u529b","\u91cc","\u5982","\u6c34","\u5316","\u9ad8","\u81ea","\u4e8c","\u7406","\u8d77","\u5c0f","\u7269","\u73b0","\u5b9e","\u52a0","\u91cf","\u90fd","\u4e24","\u4f53","\u5236","\u673a","\u5f53","\u4f7f","\u70b9","\u4ece","\u4e1a","\u672c","\u53bb","\u628a","\u6027","\u597d","\u5e94","\u5f00","\u5b83","\u5408","\u8fd8","\u56e0","\u7531","\u5176","\u4e9b","\u7136","\u524d","\u5916","\u5929","\u653f","\u56db","\u65e5","\u90a3","\u793e","\u4e49","\u4e8b","\u5e73","\u5f62","\u76f8","\u5168","\u8868","\u95f4","\u6837","\u4e0e","\u5173","\u5404","\u91cd","\u65b0","\u7ebf","\u5185","\u6570","\u6b63","\u5fc3","\u53cd","\u4f60","\u660e","\u770b","\u539f","\u53c8","\u4e48","\u5229","\u6bd4","\u6216","\u4f46","\u8d28","\u6c14","\u7b2c","\u5411","\u9053","\u547d","\u6b64","\u53d8","\u6761","\u53ea","\u6ca1","\u7ed3","\u89e3","\u95ee","\u610f","\u5efa","\u6708","\u516c","\u65e0","\u7cfb","\u519b","\u5f88","\u60c5","\u8005","\u6700","\u7acb","\u4ee3","\u60f3","\u5df2","\u901a","\u5e76","\u63d0","\u76f4","\u9898","\u515a","\u7a0b","\u5c55","\u4e94","\u679c","\u6599","\u8c61","\u5458","\u9769","\u4f4d","\u5165","\u5e38","\u6587","\u603b","\u6b21","\u54c1","\u5f0f","\u6d3b","\u8bbe","\u53ca","\u7ba1","\u7279","\u4ef6","\u957f","\u6c42","\u8001","\u5934","\u57fa","\u8d44","\u8fb9","\u6d41","\u8def","\u7ea7","\u5c11","\u56fe","\u5c71","\u7edf","\u63a5","\u77e5","\u8f83","\u5c06","\u7ec4","\u89c1","\u8ba1","\u522b","\u5979","\u624b","\u89d2","\u671f","\u6839","\u8bba","\u8fd0","\u519c","\u6307","\u51e0","\u4e5d","\u533a","\u5f3a","\u653e","\u51b3","\u897f","\u88ab","\u5e72","\u505a","\u5fc5","\u6218","\u5148","\u56de","\u5219","\u4efb","\u53d6","\u636e","\u5904","\u961f","\u5357","\u7ed9","\u8272","\u5149","\u95e8","\u5373","\u4fdd","\u6cbb","\u5317","\u9020","\u767e","\u89c4","\u70ed","\u9886","\u4e03","\u6d77","\u53e3","\u4e1c","\u5bfc","\u5668","\u538b","\u5fd7","\u4e16","\u91d1","\u589e","\u4e89","\u6d4e","\u9636","\u6cb9","\u601d","\u672f","\u6781","\u4ea4","\u53d7","\u8054","\u4ec0","\u8ba4","\u516d","\u5171","\u6743","\u6536","\u8bc1","\u6539","\u6e05","\u7f8e","\u518d","\u91c7","\u8f6c","\u66f4","\u5355","\u98ce","\u5207","\u6253","\u767d","\u6559","\u901f","\u82b1","\u5e26","\u5b89","\u573a","\u8eab","\u8f66","\u4f8b","\u771f","\u52a1","\u5177","\u4e07","\u6bcf","\u76ee","\u81f3","\u8fbe","\u8d70","\u79ef","\u793a","\u8bae","\u58f0","\u62a5","\u6597","\u5b8c","\u7c7b","\u516b","\u79bb","\u534e","\u540d","\u786e","\u624d","\u79d1","\u5f20","\u4fe1","\u9a6c","\u8282","\u8bdd","\u7c73","\u6574","\u7a7a","\u5143","\u51b5","\u4eca","\u96c6","\u6e29","\u4f20","\u571f","\u8bb8","\u6b65","\u7fa4","\u5e7f","\u77f3","\u8bb0","\u9700","\u6bb5","\u7814","\u754c","\u62c9","\u6797","\u5f8b","\u53eb","\u4e14","\u7a76","\u89c2","\u8d8a","\u7ec7","\u88c5","\u5f71","\u7b97","\u4f4e","\u6301","\u97f3","\u4f17","\u4e66","\u5e03","\u590d","\u5bb9","\u513f","\u987b","\u9645","\u5546","\u975e","\u9a8c","\u8fde","\u65ad","\u6df1","\u96be","\u8fd1","\u77ff","\u5343","\u5468","\u59d4","\u7d20","\u6280","\u5907","\u534a","\u529e","\u9752","\u7701","\u5217","\u4e60","\u54cd","\u7ea6","\u652f","\u822c","\u53f2","\u611f","\u52b3","\u4fbf","\u56e2","\u5f80","\u9178","\u5386","\u5e02","\u514b","\u4f55","\u9664","\u6d88","\u6784","\u5e9c","\u79f0","\u592a","\u51c6","\u7cbe","\u503c","\u53f7","\u7387","\u65cf","\u7ef4","\u5212","\u9009","\u6807","\u5199","\u5b58","\u5019","\u6bdb","\u4eb2","\u5feb","\u6548","\u65af","\u9662","\u67e5","\u6c5f","\u578b","\u773c","\u738b","\u6309","\u683c","\u517b","\u6613","\u7f6e","\u6d3e","\u5c42","\u7247","\u59cb","\u5374","\u4e13","\u72b6","\u80b2","\u5382","\u4eac","\u8bc6","\u9002","\u5c5e","\u5706","\u5305","\u706b","\u4f4f","\u8c03","\u6ee1","\u53bf","\u5c40","\u7167","\u53c2","\u7ea2","\u7ec6","\u5f15","\u542c","\u8be5","\u94c1","\u4ef7","\u4e25","\u9996","\u5e95","\u6db2","\u5b98","\u5fb7","\u968f","\u75c5","\u82cf","\u5931","\u5c14","\u6b7b","\u8bb2","\u914d","\u5973","\u9ec4","\u63a8","\u663e","\u8c08","\u7f6a","\u795e","\u827a","\u5462","\u5e2d","\u542b","\u4f01","\u671b","\u5bc6","\u6279","\u8425","\u9879","\u9632","\u4e3e","\u7403","\u82f1","\u6c27","\u52bf","\u544a","\u674e","\u53f0","\u843d","\u6728","\u5e2e","\u8f6e","\u7834","\u4e9a","\u5e08","\u56f4","\u6ce8","\u8fdc","\u5b57","\u6750","\u6392","\u4f9b","\u6cb3","\u6001","\u5c01","\u53e6","\u65bd","\u51cf","\u6811","\u6eb6","\u600e","\u6b62","\u6848","\u8a00","\u58eb","\u5747","\u6b66","\u56fa","\u53f6","\u9c7c","\u6ce2","\u89c6","\u4ec5","\u8d39","\u7d27","\u7231","\u5de6","\u7ae0","\u65e9","\u671d","\u5bb3","\u7eed","\u8f7b","\u670d","\u8bd5","\u98df","\u5145","\u5175","\u6e90","\u5224","\u62a4","\u53f8","\u8db3","\u67d0","\u7ec3","\u5dee","\u81f4","\u677f","\u7530","\u964d","\u9ed1","\u72af","\u8d1f","\u51fb","\u8303","\u7ee7","\u5174","\u4f3c","\u4f59","\u575a","\u66f2","\u8f93","\u4fee","\u6545","\u57ce","\u592b","\u591f","\u9001","\u7b14","\u8239","\u5360","\u53f3","\u8d22","\u5403","\u5bcc","\u6625","\u804c","\u89c9","\u6c49","\u753b","\u529f","\u5df4","\u8ddf","\u867d","\u6742","\u98de","\u68c0","\u5438","\u52a9","\u5347","\u9633","\u4e92","\u521d","\u521b","\u6297","\u8003","\u6295","\u574f","\u7b56","\u53e4","\u5f84","\u6362","\u672a","\u8dd1","\u7559","\u94a2","\u66fe","\u7aef","\u8d23","\u7ad9","\u7b80","\u8ff0","\u94b1","\u526f","\u5c3d","\u5e1d","\u5c04","\u8349","\u51b2","\u627f","\u72ec","\u4ee4","\u9650","\u963f","\u5ba3","\u73af","\u53cc","\u8bf7","\u8d85","\u5fae","\u8ba9","\u63a7","\u5dde","\u826f","\u8f74","\u627e","\u5426","\u7eaa","\u76ca","\u4f9d","\u4f18","\u9876","\u7840","\u8f7d","\u5012","\u623f","\u7a81","\u5750","\u7c89","\u654c","\u7565","\u5ba2","\u8881","\u51b7","\u80dc","\u7edd","\u6790","\u5757","\u5242","\u6d4b","\u4e1d","\u534f","\u8bc9","\u5ff5","\u9648","\u4ecd","\u7f57","\u76d0","\u53cb","\u6d0b","\u9519","\u82e6","\u591c","\u5211","\u79fb","\u9891","\u9010","\u9760","\u6df7","\u6bcd","\u77ed","\u76ae","\u7ec8","\u805a","\u6c7d","\u6751","\u4e91","\u54ea","\u65e2","\u8ddd","\u536b","\u505c","\u70c8","\u592e","\u5bdf","\u70e7","\u8fc5","\u5883","\u82e5","\u5370","\u6d32","\u523b","\u62ec","\u6fc0","\u5b54","\u641e","\u751a","\u5ba4","\u5f85","\u6838","\u6821","\u6563","\u4fb5","\u5427","\u7532","\u6e38","\u4e45","\u83dc","\u5473","\u65e7","\u6a21","\u6e56","\u8d27","\u635f","\u9884","\u963b","\u6beb","\u666e","\u7a33","\u4e59","\u5988","\u690d","\u606f","\u6269","\u94f6","\u8bed","\u6325","\u9152","\u5b88","\u62ff","\u5e8f","\u7eb8","\u533b","\u7f3a","\u96e8","\u5417","\u9488","\u5218","\u554a","\u6025","\u5531","\u8bef","\u8bad","\u613f","\u5ba1","\u9644","\u83b7","\u8336","\u9c9c","\u7cae","\u65a4","\u5b69","\u8131","\u786b","\u80a5","\u5584","\u9f99","\u6f14","\u7236","\u6e10","\u8840","\u6b22","\u68b0","\u638c","\u6b4c","\u6c99","\u521a","\u653b","\u8c13","\u76fe","\u8ba8","\u665a","\u7c92","\u4e71","\u71c3","\u77db","\u4e4e","\u6740","\u836f","\u5b81","\u9c81","\u8d35","\u949f","\u7164","\u8bfb","\u73ed","\u4f2f","\u9999","\u4ecb","\u8feb","\u53e5","\u4e30","\u57f9","\u63e1","\u5170","\u62c5","\u5f26","\u86cb","\u6c89","\u5047","\u7a7f","\u6267","\u7b54","\u4e50","\u8c01","\u987a","\u70df","\u7f29","\u5f81","\u8138","\u559c","\u677e","\u811a","\u56f0","\u5f02","\u514d","\u80cc","\u661f","\u798f","\u4e70","\u67d3","\u4e95","\u6982","\u6162","\u6015","\u78c1","\u500d","\u7956","\u7687","\u4fc3","\u9759","\u8865","\u8bc4","\u7ffb","\u8089","\u8df5","\u5c3c","\u8863","\u5bbd","\u626c","\u68c9","\u5e0c","\u4f24","\u64cd","\u5782","\u79cb","\u5b9c","\u6c22","\u5957","\u7763","\u632f","\u67b6","\u4eae","\u672b","\u5baa","\u5e86","\u7f16","\u725b","\u89e6","\u6620","\u96f7","\u9500","\u8bd7","\u5ea7","\u5c45","\u6293","\u88c2","\u80de","\u547c","\u5a18","\u666f","\u5a01","\u7eff","\u6676","\u539a","\u76df","\u8861","\u9e21","\u5b59","\u5ef6","\u5371","\u80f6","\u5c4b","\u4e61","\u4e34","\u9646","\u987e","\u6389","\u5440","\u706f","\u5c81","\u63aa","\u675f","\u8010","\u5267","\u7389","\u8d75","\u8df3","\u54e5","\u5b63","\u8bfe","\u51ef","\u80e1","\u989d","\u6b3e","\u7ecd","\u5377","\u9f50","\u4f1f","\u84b8","\u6b96","\u6c38","\u5b97","\u82d7","\u5ddd","\u7089","\u5ca9","\u5f31","\u96f6","\u6768","\u594f","\u6cbf","\u9732","\u6746","\u63a2","\u6ed1","\u9547","\u996d","\u6d53","\u822a","\u6000","\u8d76","\u5e93","\u593a","\u4f0a","\u7075","\u7a0e","\u9014","\u706d","\u8d5b","\u5f52","\u53ec","\u9f13","\u64ad","\u76d8","\u88c1","\u9669","\u5eb7","\u552f","\u5f55","\u83cc","\u7eaf","\u501f","\u7cd6","\u76d6","\u6a2a","\u7b26","\u79c1","\u52aa","\u5802","\u57df","\u67aa","\u6da6","\u5e45","\u54c8","\u7adf","\u719f","\u866b","\u6cfd","\u8111","\u58e4","\u78b3","\u6b27","\u904d","\u4fa7","\u5be8","\u6562","\u5f7b","\u8651","\u659c","\u8584","\u5ead","\u7eb3","\u5f39","\u9972","\u4f38","\u6298","\u9ea6","\u6e7f","\u6697","\u8377","\u74e6","\u585e","\u5e8a","\u7b51","\u6076","\u6237","\u8bbf","\u5854","\u5947","\u900f","\u6881","\u5200","\u65cb","\u8ff9","\u5361","\u6c2f","\u9047","\u4efd","\u6bd2","\u6ce5","\u9000","\u6d17","\u6446","\u7070","\u5f69","\u5356","\u8017","\u590f","\u62e9","\u5fd9","\u94dc","\u732e","\u786c","\u4e88","\u7e41","\u5708","\u96ea","\u51fd","\u4ea6","\u62bd","\u7bc7","\u9635","\u9634","\u4e01","\u5c3a","\u8ffd","\u5806","\u96c4","\u8fce","\u6cdb","\u7238","\u697c","\u907f","\u8c0b","\u5428","\u91ce","\u732a","\u65d7","\u7d2f","\u504f","\u5178","\u9986","\u7d22","\u79e6","\u8102","\u6f6e","\u7237","\u8c46","\u5ffd","\u6258","\u60ca","\u5851","\u9057","\u6108","\u6731","\u66ff","\u7ea4","\u7c97","\u503e","\u5c1a","\u75db","\u695a","\u8c22","\u594b","\u8d2d","\u78e8","\u541b","\u6c60","\u65c1","\u788e","\u9aa8","\u76d1","\u6355","\u5f1f","\u66b4","\u5272","\u8d2f","\u6b8a","\u91ca","\u8bcd","\u4ea1","\u58c1","\u987f","\u5b9d","\u5348","\u5c18","\u95fb","\u63ed","\u70ae","\u6b8b","\u51ac","\u6865","\u5987","\u8b66","\u7efc","\u62db","\u5434","\u4ed8","\u6d6e","\u906d","\u5f90","\u60a8","\u6447","\u8c37","\u8d5e","\u7bb1","\u9694","\u8ba2","\u7537","\u5439","\u56ed","\u7eb7","\u5510","\u8d25","\u5b8b","\u73bb","\u5de8","\u8015","\u5766","\u8363","\u95ed","\u6e7e","\u952e","\u51e1","\u9a7b","\u9505","\u6551","\u6069","\u5265","\u51dd","\u78b1","\u9f7f","\u622a","\u70bc","\u9ebb","\u7eba","\u7981","\u5e9f","\u76db","\u7248","\u7f13","\u51c0","\u775b","\u660c","\u5a5a","\u6d89","\u7b52","\u5634","\u63d2","\u5cb8","\u6717","\u5e84","\u8857","\u85cf","\u59d1","\u8d38","\u8150","\u5974","\u5566","\u60ef","\u4e58","\u4f19","\u6062","\u5300","\u7eb1","\u624e","\u8fa9","\u8033","\u5f6a","\u81e3","\u4ebf","\u7483","\u62b5","\u8109","\u79c0","\u8428","\u4fc4","\u7f51","\u821e","\u5e97","\u55b7","\u7eb5","\u5bf8","\u6c57","\u6302","\u6d2a","\u8d3a","\u95ea","\u67ec","\u7206","\u70ef","\u6d25","\u7a3b","\u5899","\u8f6f","\u52c7","\u50cf","\u6eda","\u5398","\u8499","\u82b3","\u80af","\u5761","\u67f1","\u8361","\u817f","\u4eea","\u65c5","\u5c3e","\u8f67","\u51b0","\u8d21","\u767b","\u9ece","\u524a","\u94bb","\u52d2","\u9003","\u969c","\u6c28","\u90ed","\u5cf0","\u5e01","\u6e2f","\u4f0f","\u8f68","\u4ea9","\u6bd5","\u64e6","\u83ab","\u523a","\u6d6a","\u79d8","\u63f4","\u682a","\u5065","\u552e","\u80a1","\u5c9b","\u7518","\u6ce1","\u7761","\u7ae5","\u94f8","\u6c64","\u9600","\u4f11","\u6c47","\u820d","\u7267","\u7ed5","\u70b8","\u54f2","\u78f7","\u7ee9","\u670b","\u6de1","\u5c16","\u542f","\u9677","\u67f4","\u5448","\u5f92","\u989c","\u6cea","\u7a0d","\u5fd8","\u6cf5","\u84dd","\u62d6","\u6d1e","\u6388","\u955c","\u8f9b","\u58ee","\u950b","\u8d2b","\u865a","\u5f2f","\u6469","\u6cf0","\u5e7c","\u5ef7","\u5c0a","\u7a97","\u7eb2","\u5f04","\u96b6","\u7591","\u6c0f","\u5bab","\u59d0","\u9707","\u745e","\u602a","\u5c24","\u7434","\u5faa","\u63cf","\u819c","\u8fdd","\u5939","\u8170","\u7f18","\u73e0","\u7a77","\u68ee","\u679d","\u7af9","\u6c9f","\u50ac","\u7ef3","\u5fc6","\u90a6","\u5269","\u5e78","\u6d46","\u680f","\u62e5","\u7259","\u8d2e","\u793c","\u6ee4","\u94a0","\u7eb9","\u7f62","\u62cd","\u54b1","\u558a","\u8896","\u57c3","\u52e4","\u7f5a","\u7126","\u6f5c","\u4f0d","\u58a8","\u6b32","\u7f1d","\u59d3","\u520a","\u9971","\u4eff","\u5956","\u94dd","\u9b3c","\u4e3d","\u8de8","\u9ed8","\u6316","\u94fe","\u626b","\u559d","\u888b","\u70ad","\u6c61","\u5e55","\u8bf8","\u5f27","\u52b1","\u6885","\u5976","\u6d01","\u707e","\u821f","\u9274","\u82ef","\u8bbc","\u62b1","\u6bc1","\u61c2","\u5bd2","\u667a","\u57d4","\u5bc4","\u5c4a","\u8dc3","\u6e21","\u6311","\u4e39","\u8270","\u8d1d","\u78b0","\u62d4","\u7239","\u6234","\u7801","\u68a6","\u82bd","\u7194","\u8d64","\u6e14","\u54ed","\u656c","\u9897","\u5954","\u94c5","\u4ef2","\u864e","\u7a00","\u59b9","\u4e4f","\u73cd","\u7533","\u684c","\u9075","\u5141","\u9686","\u87ba","\u4ed3","\u9b4f","\u9510","\u6653","\u6c2e","\u517c","\u9690","\u788d","\u8d6b","\u62e8","\u5fe0","\u8083","\u7f38","\u7275","\u62a2","\u535a","\u5de7","\u58f3","\u5144","\u675c","\u8baf","\u8bda","\u78a7","\u7965","\u67ef","\u9875","\u5de1","\u77e9","\u60b2","\u704c","\u9f84","\u4f26","\u7968","\u5bfb","\u6842","\u94fa","\u5723","\u6050","\u6070","\u90d1","\u8da3","\u62ac","\u8352","\u817e","\u8d34","\u67d4","\u6ef4","\u731b","\u9614","\u8f86","\u59bb","\u586b","\u64a4","\u50a8","\u7b7e","\u95f9","\u6270","\u7d2b","\u7802","\u9012","\u620f","\u540a","\u9676","\u4f10","\u5582","\u7597","\u74f6","\u5a46","\u629a","\u81c2","\u6478","\u5fcd","\u867e","\u8721","\u90bb","\u80f8","\u5de9","\u6324","\u5076","\u5f03","\u69fd","\u52b2","\u4e73","\u9093","\u5409","\u4ec1","\u70c2","\u7816","\u79df","\u4e4c","\u8230","\u4f34","\u74dc","\u6d45","\u4e19","\u6682","\u71e5","\u6a61","\u67f3","\u8ff7","\u6696","\u724c","\u79e7","\u80c6","\u8be6","\u7c27","\u8e0f","\u74f7","\u8c31","\u5446","\u5bbe","\u7cca","\u6d1b","\u8f89","\u6124","\u7ade","\u9699","\u6012","\u7c98","\u4e43","\u7eea","\u80a9","\u7c4d","\u654f","\u6d82","\u7199","\u7686","\u4fa6","\u60ac","\u6398","\u4eab","\u7ea0","\u9192","\u72c2","\u9501","\u6dc0","\u6068","\u7272","\u9738","\u722c","\u8d4f","\u9006","\u73a9","\u9675","\u795d","\u79d2","\u6d59","\u8c8c","\u5f79","\u5f7c","\u6089","\u9e2d","\u8d8b","\u51e4","\u6668","\u755c","\u8f88","\u79e9","\u5375","\u7f72","\u68af","\u708e","\u6ee9","\u68cb","\u9a71","\u7b5b","\u5ce1","\u5192","\u5565","\u5bff","\u8bd1","\u6d78","\u6cc9","\u5e3d","\u8fdf","\u7845","\u7586","\u8d37","\u6f0f","\u7a3f","\u51a0","\u5ae9","\u80c1","\u82af","\u7262","\u53db","\u8680","\u5965","\u9e23","\u5cad","\u7f8a","\u51ed","\u4e32","\u5858","\u7ed8","\u9175","\u878d","\u76c6","\u9521","\u5e99","\u7b79","\u51bb","\u8f85","\u6444","\u88ad","\u7b4b","\u62d2","\u50da","\u65f1","\u94be","\u9e1f","\u6f06","\u6c88","\u7709","\u758f","\u6dfb","\u68d2","\u7a57","\u785d","\u97e9","\u903c","\u626d","\u4fa8","\u51c9","\u633a","\u7897","\u683d","\u7092","\u676f","\u60a3","\u998f","\u529d","\u8c6a","\u8fbd","\u52c3","\u9e3f","\u65e6","\u540f","\u62dc","\u72d7","\u57cb","\u8f8a","\u63a9","\u996e","\u642c","\u9a82","\u8f9e","\u52fe","\u6263","\u4f30","\u848b","\u7ed2","\u96fe","\u4e08","\u6735","\u59c6","\u62df","\u5b87","\u8f91","\u9655","\u96d5","\u507f","\u84c4","\u5d07","\u526a","\u5021","\u5385","\u54ac","\u9a76","\u85af","\u5237","\u65a5","\u756a","\u8d4b","\u5949","\u4f5b","\u6d47","\u6f2b","\u66fc","\u6247","\u9499","\u6843","\u6276","\u4ed4","\u8fd4","\u4fd7","\u4e8f","\u8154","\u978b","\u68f1","\u8986","\u6846","\u6084","\u53d4","\u649e","\u9a97","\u52d8","\u65fa","\u6cb8","\u5b64","\u5410","\u5b5f","\u6e20","\u5c48","\u75be","\u5999","\u60dc","\u4ef0","\u72e0","\u80c0","\u8c10","\u629b","\u9709","\u6851","\u5c97","\u561b","\u8870","\u76d7","\u6e17","\u810f","\u8d56","\u6d8c","\u751c","\u66f9","\u9605","\u808c","\u54e9","\u5389","\u70c3","\u7eac","\u6bc5","\u6628","\u4f2a","\u75c7","\u716e","\u53f9","\u9489","\u642d","\u830e","\u7b3c","\u9177","\u5077","\u5f13","\u9525","\u6052","\u6770","\u5751","\u9f3b","\u7ffc","\u7eb6","\u53d9","\u72f1","\u902e","\u7f50","\u7edc","\u68da","\u6291","\u81a8","\u852c","\u5bfa","\u9aa4","\u7a46","\u51b6","\u67af","\u518c","\u5c38","\u51f8","\u7ec5","\u576f","\u727a","\u7130","\u8f70","\u6b23","\u664b","\u7626","\u5fa1","\u952d","\u9526","\u4e27","\u65ec","\u953b","\u5784","\u641c","\u6251","\u9080","\u4ead","\u916f","\u8fc8","\u8212","\u8106","\u9176","\u95f2","\u5fe7","\u915a","\u987d","\u7fbd","\u6da8","\u5378","\u4ed7","\u966a","\u8f9f","\u60e9","\u676d","\u59da","\u809a","\u6349","\u98d8","\u6f02","\u6606","\u6b3a","\u543e","\u90ce","\u70f7","\u6c41","\u5475","\u9970","\u8427","\u96c5","\u90ae","\u8fc1","\u71d5","\u6492","\u59fb","\u8d74","\u5bb4","\u70e6","\u503a","\u5e10","\u6591","\u94c3","\u65e8","\u9187","\u8463","\u997c","\u96cf","\u59ff","\u62cc","\u5085","\u8179","\u59a5","\u63c9","\u8d24","\u62c6","\u6b6a","\u8461","\u80fa","\u4e22","\u6d69","\u5fbd","\u6602","\u57ab","\u6321","\u89c8","\u8d2a","\u6170","\u7f34","\u6c6a","\u614c","\u51af","\u8bfa","\u59dc","\u8c0a","\u51f6","\u52a3","\u8bec","\u8000","\u660f","\u8eba","\u76c8","\u9a91","\u4e54","\u6eaa","\u4e1b","\u5362","\u62b9","\u95f7","\u54a8","\u522e","\u9a7e","\u7f06","\u609f","\u6458","\u94d2","\u63b7","\u9887","\u5e7b","\u67c4","\u60e0","\u60e8","\u4f73","\u4ec7","\u814a","\u7a9d","\u6da4","\u5251","\u77a7","\u5821","\u6cfc","\u8471","\u7f69","\u970d","\u635e","\u80ce","\u82cd","\u6ee8","\u4fe9","\u6345","\u6e58","\u780d","\u971e","\u90b5","\u8404","\u75af","\u6dee","\u9042","\u718a","\u7caa","\u70d8","\u5bbf","\u6863","\u6208","\u9a73","\u5ac2","\u88d5","\u5f99","\u7bad","\u6350","\u80a0","\u6491","\u6652","\u8fa8","\u6bbf","\u83b2","\u644a","\u6405","\u9171","\u5c4f","\u75ab","\u54c0","\u8521","\u5835","\u6cab","\u76b1","\u7545","\u53e0","\u9601","\u83b1","\u6572","\u8f96","\u94a9","\u75d5","\u575d","\u5df7","\u997f","\u7978","\u4e18","\u7384","\u6e9c","\u66f0","\u903b","\u5f6d","\u5c1d","\u537f","\u59a8","\u8247","\u541e","\u97e6","\u6028","\u77ee","\u6b47"]')},4262:e=>{"use strict";e.exports=JSON.parse('["\u7684","\u4e00","\u662f","\u5728","\u4e0d","\u4e86","\u6709","\u548c","\u4eba","\u9019","\u4e2d","\u5927","\u70ba","\u4e0a","\u500b","\u570b","\u6211","\u4ee5","\u8981","\u4ed6","\u6642","\u4f86","\u7528","\u5011","\u751f","\u5230","\u4f5c","\u5730","\u65bc","\u51fa","\u5c31","\u5206","\u5c0d","\u6210","\u6703","\u53ef","\u4e3b","\u767c","\u5e74","\u52d5","\u540c","\u5de5","\u4e5f","\u80fd","\u4e0b","\u904e","\u5b50","\u8aaa","\u7522","\u7a2e","\u9762","\u800c","\u65b9","\u5f8c","\u591a","\u5b9a","\u884c","\u5b78","\u6cd5","\u6240","\u6c11","\u5f97","\u7d93","\u5341","\u4e09","\u4e4b","\u9032","\u8457","\u7b49","\u90e8","\u5ea6","\u5bb6","\u96fb","\u529b","\u88e1","\u5982","\u6c34","\u5316","\u9ad8","\u81ea","\u4e8c","\u7406","\u8d77","\u5c0f","\u7269","\u73fe","\u5be6","\u52a0","\u91cf","\u90fd","\u5169","\u9ad4","\u5236","\u6a5f","\u7576","\u4f7f","\u9ede","\u5f9e","\u696d","\u672c","\u53bb","\u628a","\u6027","\u597d","\u61c9","\u958b","\u5b83","\u5408","\u9084","\u56e0","\u7531","\u5176","\u4e9b","\u7136","\u524d","\u5916","\u5929","\u653f","\u56db","\u65e5","\u90a3","\u793e","\u7fa9","\u4e8b","\u5e73","\u5f62","\u76f8","\u5168","\u8868","\u9593","\u6a23","\u8207","\u95dc","\u5404","\u91cd","\u65b0","\u7dda","\u5167","\u6578","\u6b63","\u5fc3","\u53cd","\u4f60","\u660e","\u770b","\u539f","\u53c8","\u9ebc","\u5229","\u6bd4","\u6216","\u4f46","\u8cea","\u6c23","\u7b2c","\u5411","\u9053","\u547d","\u6b64","\u8b8a","\u689d","\u53ea","\u6c92","\u7d50","\u89e3","\u554f","\u610f","\u5efa","\u6708","\u516c","\u7121","\u7cfb","\u8ecd","\u5f88","\u60c5","\u8005","\u6700","\u7acb","\u4ee3","\u60f3","\u5df2","\u901a","\u4e26","\u63d0","\u76f4","\u984c","\u9ee8","\u7a0b","\u5c55","\u4e94","\u679c","\u6599","\u8c61","\u54e1","\u9769","\u4f4d","\u5165","\u5e38","\u6587","\u7e3d","\u6b21","\u54c1","\u5f0f","\u6d3b","\u8a2d","\u53ca","\u7ba1","\u7279","\u4ef6","\u9577","\u6c42","\u8001","\u982d","\u57fa","\u8cc7","\u908a","\u6d41","\u8def","\u7d1a","\u5c11","\u5716","\u5c71","\u7d71","\u63a5","\u77e5","\u8f03","\u5c07","\u7d44","\u898b","\u8a08","\u5225","\u5979","\u624b","\u89d2","\u671f","\u6839","\u8ad6","\u904b","\u8fb2","\u6307","\u5e7e","\u4e5d","\u5340","\u5f37","\u653e","\u6c7a","\u897f","\u88ab","\u5e79","\u505a","\u5fc5","\u6230","\u5148","\u56de","\u5247","\u4efb","\u53d6","\u64da","\u8655","\u968a","\u5357","\u7d66","\u8272","\u5149","\u9580","\u5373","\u4fdd","\u6cbb","\u5317","\u9020","\u767e","\u898f","\u71b1","\u9818","\u4e03","\u6d77","\u53e3","\u6771","\u5c0e","\u5668","\u58d3","\u5fd7","\u4e16","\u91d1","\u589e","\u722d","\u6fdf","\u968e","\u6cb9","\u601d","\u8853","\u6975","\u4ea4","\u53d7","\u806f","\u4ec0","\u8a8d","\u516d","\u5171","\u6b0a","\u6536","\u8b49","\u6539","\u6e05","\u7f8e","\u518d","\u63a1","\u8f49","\u66f4","\u55ae","\u98a8","\u5207","\u6253","\u767d","\u6559","\u901f","\u82b1","\u5e36","\u5b89","\u5834","\u8eab","\u8eca","\u4f8b","\u771f","\u52d9","\u5177","\u842c","\u6bcf","\u76ee","\u81f3","\u9054","\u8d70","\u7a4d","\u793a","\u8b70","\u8072","\u5831","\u9b25","\u5b8c","\u985e","\u516b","\u96e2","\u83ef","\u540d","\u78ba","\u624d","\u79d1","\u5f35","\u4fe1","\u99ac","\u7bc0","\u8a71","\u7c73","\u6574","\u7a7a","\u5143","\u6cc1","\u4eca","\u96c6","\u6eab","\u50b3","\u571f","\u8a31","\u6b65","\u7fa4","\u5ee3","\u77f3","\u8a18","\u9700","\u6bb5","\u7814","\u754c","\u62c9","\u6797","\u5f8b","\u53eb","\u4e14","\u7a76","\u89c0","\u8d8a","\u7e54","\u88dd","\u5f71","\u7b97","\u4f4e","\u6301","\u97f3","\u773e","\u66f8","\u5e03","\u590d","\u5bb9","\u5152","\u9808","\u969b","\u5546","\u975e","\u9a57","\u9023","\u65b7","\u6df1","\u96e3","\u8fd1","\u7926","\u5343","\u9031","\u59d4","\u7d20","\u6280","\u5099","\u534a","\u8fa6","\u9752","\u7701","\u5217","\u7fd2","\u97ff","\u7d04","\u652f","\u822c","\u53f2","\u611f","\u52de","\u4fbf","\u5718","\u5f80","\u9178","\u6b77","\u5e02","\u514b","\u4f55","\u9664","\u6d88","\u69cb","\u5e9c","\u7a31","\u592a","\u6e96","\u7cbe","\u503c","\u865f","\u7387","\u65cf","\u7dad","\u5283","\u9078","\u6a19","\u5beb","\u5b58","\u5019","\u6bdb","\u89aa","\u5feb","\u6548","\u65af","\u9662","\u67e5","\u6c5f","\u578b","\u773c","\u738b","\u6309","\u683c","\u990a","\u6613","\u7f6e","\u6d3e","\u5c64","\u7247","\u59cb","\u537b","\u5c08","\u72c0","\u80b2","\u5ee0","\u4eac","\u8b58","\u9069","\u5c6c","\u5713","\u5305","\u706b","\u4f4f","\u8abf","\u6eff","\u7e23","\u5c40","\u7167","\u53c3","\u7d05","\u7d30","\u5f15","\u807d","\u8a72","\u9435","\u50f9","\u56b4","\u9996","\u5e95","\u6db2","\u5b98","\u5fb7","\u96a8","\u75c5","\u8607","\u5931","\u723e","\u6b7b","\u8b1b","\u914d","\u5973","\u9ec3","\u63a8","\u986f","\u8ac7","\u7f6a","\u795e","\u85dd","\u5462","\u5e2d","\u542b","\u4f01","\u671b","\u5bc6","\u6279","\u71df","\u9805","\u9632","\u8209","\u7403","\u82f1","\u6c27","\u52e2","\u544a","\u674e","\u53f0","\u843d","\u6728","\u5e6b","\u8f2a","\u7834","\u4e9e","\u5e2b","\u570d","\u6ce8","\u9060","\u5b57","\u6750","\u6392","\u4f9b","\u6cb3","\u614b","\u5c01","\u53e6","\u65bd","\u6e1b","\u6a39","\u6eb6","\u600e","\u6b62","\u6848","\u8a00","\u58eb","\u5747","\u6b66","\u56fa","\u8449","\u9b5a","\u6ce2","\u8996","\u50c5","\u8cbb","\u7dca","\u611b","\u5de6","\u7ae0","\u65e9","\u671d","\u5bb3","\u7e8c","\u8f15","\u670d","\u8a66","\u98df","\u5145","\u5175","\u6e90","\u5224","\u8b77","\u53f8","\u8db3","\u67d0","\u7df4","\u5dee","\u81f4","\u677f","\u7530","\u964d","\u9ed1","\u72af","\u8ca0","\u64ca","\u8303","\u7e7c","\u8208","\u4f3c","\u9918","\u5805","\u66f2","\u8f38","\u4fee","\u6545","\u57ce","\u592b","\u5920","\u9001","\u7b46","\u8239","\u4f54","\u53f3","\u8ca1","\u5403","\u5bcc","\u6625","\u8077","\u89ba","\u6f22","\u756b","\u529f","\u5df4","\u8ddf","\u96d6","\u96dc","\u98db","\u6aa2","\u5438","\u52a9","\u6607","\u967d","\u4e92","\u521d","\u5275","\u6297","\u8003","\u6295","\u58de","\u7b56","\u53e4","\u5f91","\u63db","\u672a","\u8dd1","\u7559","\u92fc","\u66fe","\u7aef","\u8cac","\u7ad9","\u7c21","\u8ff0","\u9322","\u526f","\u76e1","\u5e1d","\u5c04","\u8349","\u885d","\u627f","\u7368","\u4ee4","\u9650","\u963f","\u5ba3","\u74b0","\u96d9","\u8acb","\u8d85","\u5fae","\u8b93","\u63a7","\u5dde","\u826f","\u8ef8","\u627e","\u5426","\u7d00","\u76ca","\u4f9d","\u512a","\u9802","\u790e","\u8f09","\u5012","\u623f","\u7a81","\u5750","\u7c89","\u6575","\u7565","\u5ba2","\u8881","\u51b7","\u52dd","\u7d55","\u6790","\u584a","\u5291","\u6e2c","\u7d72","\u5354","\u8a34","\u5ff5","\u9673","\u4ecd","\u7f85","\u9e7d","\u53cb","\u6d0b","\u932f","\u82e6","\u591c","\u5211","\u79fb","\u983b","\u9010","\u9760","\u6df7","\u6bcd","\u77ed","\u76ae","\u7d42","\u805a","\u6c7d","\u6751","\u96f2","\u54ea","\u65e2","\u8ddd","\u885b","\u505c","\u70c8","\u592e","\u5bdf","\u71d2","\u8fc5","\u5883","\u82e5","\u5370","\u6d32","\u523b","\u62ec","\u6fc0","\u5b54","\u641e","\u751a","\u5ba4","\u5f85","\u6838","\u6821","\u6563","\u4fb5","\u5427","\u7532","\u904a","\u4e45","\u83dc","\u5473","\u820a","\u6a21","\u6e56","\u8ca8","\u640d","\u9810","\u963b","\u6beb","\u666e","\u7a69","\u4e59","\u5abd","\u690d","\u606f","\u64f4","\u9280","\u8a9e","\u63ee","\u9152","\u5b88","\u62ff","\u5e8f","\u7d19","\u91ab","\u7f3a","\u96e8","\u55ce","\u91dd","\u5289","\u554a","\u6025","\u5531","\u8aa4","\u8a13","\u9858","\u5be9","\u9644","\u7372","\u8336","\u9bae","\u7ce7","\u65a4","\u5b69","\u812b","\u786b","\u80a5","\u5584","\u9f8d","\u6f14","\u7236","\u6f38","\u8840","\u6b61","\u68b0","\u638c","\u6b4c","\u6c99","\u525b","\u653b","\u8b02","\u76fe","\u8a0e","\u665a","\u7c92","\u4e82","\u71c3","\u77db","\u4e4e","\u6bba","\u85e5","\u5be7","\u9b6f","\u8cb4","\u9418","\u7164","\u8b80","\u73ed","\u4f2f","\u9999","\u4ecb","\u8feb","\u53e5","\u8c50","\u57f9","\u63e1","\u862d","\u64d4","\u5f26","\u86cb","\u6c89","\u5047","\u7a7f","\u57f7","\u7b54","\u6a02","\u8ab0","\u9806","\u7159","\u7e2e","\u5fb5","\u81c9","\u559c","\u677e","\u8173","\u56f0","\u7570","\u514d","\u80cc","\u661f","\u798f","\u8cb7","\u67d3","\u4e95","\u6982","\u6162","\u6015","\u78c1","\u500d","\u7956","\u7687","\u4fc3","\u975c","\u88dc","\u8a55","\u7ffb","\u8089","\u8e10","\u5c3c","\u8863","\u5bec","\u63da","\u68c9","\u5e0c","\u50b7","\u64cd","\u5782","\u79cb","\u5b9c","\u6c2b","\u5957","\u7763","\u632f","\u67b6","\u4eae","\u672b","\u61b2","\u6176","\u7de8","\u725b","\u89f8","\u6620","\u96f7","\u92b7","\u8a69","\u5ea7","\u5c45","\u6293","\u88c2","\u80de","\u547c","\u5a18","\u666f","\u5a01","\u7da0","\u6676","\u539a","\u76df","\u8861","\u96de","\u5b6b","\u5ef6","\u5371","\u81a0","\u5c4b","\u9109","\u81e8","\u9678","\u9867","\u6389","\u5440","\u71c8","\u6b72","\u63aa","\u675f","\u8010","\u5287","\u7389","\u8d99","\u8df3","\u54e5","\u5b63","\u8ab2","\u51f1","\u80e1","\u984d","\u6b3e","\u7d39","\u5377","\u9f4a","\u5049","\u84b8","\u6b96","\u6c38","\u5b97","\u82d7","\u5ddd","\u7210","\u5ca9","\u5f31","\u96f6","\u694a","\u594f","\u6cbf","\u9732","\u687f","\u63a2","\u6ed1","\u93ae","\u98ef","\u6fc3","\u822a","\u61f7","\u8d95","\u5eab","\u596a","\u4f0a","\u9748","\u7a05","\u9014","\u6ec5","\u8cfd","\u6b78","\u53ec","\u9f13","\u64ad","\u76e4","\u88c1","\u96aa","\u5eb7","\u552f","\u9304","\u83cc","\u7d14","\u501f","\u7cd6","\u84cb","\u6a6b","\u7b26","\u79c1","\u52aa","\u5802","\u57df","\u69cd","\u6f64","\u5e45","\u54c8","\u7adf","\u719f","\u87f2","\u6fa4","\u8166","\u58e4","\u78b3","\u6b50","\u904d","\u5074","\u5be8","\u6562","\u5fb9","\u616e","\u659c","\u8584","\u5ead","\u7d0d","\u5f48","\u98fc","\u4f38","\u6298","\u9ea5","\u6fd5","\u6697","\u8377","\u74e6","\u585e","\u5e8a","\u7bc9","\u60e1","\u6236","\u8a2a","\u5854","\u5947","\u900f","\u6881","\u5200","\u65cb","\u8de1","\u5361","\u6c2f","\u9047","\u4efd","\u6bd2","\u6ce5","\u9000","\u6d17","\u64fa","\u7070","\u5f69","\u8ce3","\u8017","\u590f","\u64c7","\u5fd9","\u9285","\u737b","\u786c","\u4e88","\u7e41","\u5708","\u96ea","\u51fd","\u4ea6","\u62bd","\u7bc7","\u9663","\u9670","\u4e01","\u5c3a","\u8ffd","\u5806","\u96c4","\u8fce","\u6cdb","\u7238","\u6a13","\u907f","\u8b00","\u5678","\u91ce","\u8c6c","\u65d7","\u7d2f","\u504f","\u5178","\u9928","\u7d22","\u79e6","\u8102","\u6f6e","\u723a","\u8c46","\u5ffd","\u6258","\u9a5a","\u5851","\u907a","\u6108","\u6731","\u66ff","\u7e96","\u7c97","\u50be","\u5c1a","\u75db","\u695a","\u8b1d","\u596e","\u8cfc","\u78e8","\u541b","\u6c60","\u65c1","\u788e","\u9aa8","\u76e3","\u6355","\u5f1f","\u66b4","\u5272","\u8cab","\u6b8a","\u91cb","\u8a5e","\u4ea1","\u58c1","\u9813","\u5bf6","\u5348","\u5875","\u805e","\u63ed","\u70ae","\u6b98","\u51ac","\u6a4b","\u5a66","\u8b66","\u7d9c","\u62db","\u5433","\u4ed8","\u6d6e","\u906d","\u5f90","\u60a8","\u6416","\u8c37","\u8d0a","\u7bb1","\u9694","\u8a02","\u7537","\u5439","\u5712","\u7d1b","\u5510","\u6557","\u5b8b","\u73bb","\u5de8","\u8015","\u5766","\u69ae","\u9589","\u7063","\u9375","\u51e1","\u99d0","\u934b","\u6551","\u6069","\u525d","\u51dd","\u9e7c","\u9f52","\u622a","\u7149","\u9ebb","\u7d21","\u7981","\u5ee2","\u76db","\u7248","\u7de9","\u6de8","\u775b","\u660c","\u5a5a","\u6d89","\u7b52","\u5634","\u63d2","\u5cb8","\u6717","\u838a","\u8857","\u85cf","\u59d1","\u8cbf","\u8150","\u5974","\u5566","\u6163","\u4e58","\u5925","\u6062","\u52fb","\u7d17","\u624e","\u8faf","\u8033","\u5f6a","\u81e3","\u5104","\u7483","\u62b5","\u8108","\u79c0","\u85a9","\u4fc4","\u7db2","\u821e","\u5e97","\u5674","\u7e31","\u5bf8","\u6c57","\u639b","\u6d2a","\u8cc0","\u9583","\u67ec","\u7206","\u70ef","\u6d25","\u7a3b","\u7246","\u8edf","\u52c7","\u50cf","\u6efe","\u5398","\u8499","\u82b3","\u80af","\u5761","\u67f1","\u76ea","\u817f","\u5100","\u65c5","\u5c3e","\u8ecb","\u51b0","\u8ca2","\u767b","\u9ece","\u524a","\u947d","\u52d2","\u9003","\u969c","\u6c28","\u90ed","\u5cf0","\u5e63","\u6e2f","\u4f0f","\u8ecc","\u755d","\u7562","\u64e6","\u83ab","\u523a","\u6d6a","\u79d8","\u63f4","\u682a","\u5065","\u552e","\u80a1","\u5cf6","\u7518","\u6ce1","\u7761","\u7ae5","\u9444","\u6e6f","\u95a5","\u4f11","\u532f","\u820d","\u7267","\u7e5e","\u70b8","\u54f2","\u78f7","\u7e3e","\u670b","\u6de1","\u5c16","\u555f","\u9677","\u67f4","\u5448","\u5f92","\u984f","\u6dda","\u7a0d","\u5fd8","\u6cf5","\u85cd","\u62d6","\u6d1e","\u6388","\u93e1","\u8f9b","\u58ef","\u92d2","\u8ca7","\u865b","\u5f4e","\u6469","\u6cf0","\u5e7c","\u5ef7","\u5c0a","\u7a97","\u7db1","\u5f04","\u96b8","\u7591","\u6c0f","\u5bae","\u59d0","\u9707","\u745e","\u602a","\u5c24","\u7434","\u5faa","\u63cf","\u819c","\u9055","\u593e","\u8170","\u7de3","\u73e0","\u7aae","\u68ee","\u679d","\u7af9","\u6e9d","\u50ac","\u7e69","\u61b6","\u90a6","\u5269","\u5e78","\u6f3f","\u6b04","\u64c1","\u7259","\u8caf","\u79ae","\u6ffe","\u9209","\u7d0b","\u7f77","\u62cd","\u54b1","\u558a","\u8896","\u57c3","\u52e4","\u7f70","\u7126","\u6f5b","\u4f0d","\u58a8","\u6b32","\u7e2b","\u59d3","\u520a","\u98fd","\u4eff","\u734e","\u92c1","\u9b3c","\u9e97","\u8de8","\u9ed8","\u6316","\u93c8","\u6383","\u559d","\u888b","\u70ad","\u6c61","\u5e55","\u8af8","\u5f27","\u52f5","\u6885","\u5976","\u6f54","\u707d","\u821f","\u9451","\u82ef","\u8a1f","\u62b1","\u6bc0","\u61c2","\u5bd2","\u667a","\u57d4","\u5bc4","\u5c46","\u8e8d","\u6e21","\u6311","\u4e39","\u8271","\u8c9d","\u78b0","\u62d4","\u7239","\u6234","\u78bc","\u5922","\u82bd","\u7194","\u8d64","\u6f01","\u54ed","\u656c","\u9846","\u5954","\u925b","\u4ef2","\u864e","\u7a00","\u59b9","\u4e4f","\u73cd","\u7533","\u684c","\u9075","\u5141","\u9686","\u87ba","\u5009","\u9b4f","\u92b3","\u66c9","\u6c2e","\u517c","\u96b1","\u7919","\u8d6b","\u64a5","\u5fe0","\u8085","\u7f38","\u727d","\u6436","\u535a","\u5de7","\u6bbc","\u5144","\u675c","\u8a0a","\u8aa0","\u78a7","\u7965","\u67ef","\u9801","\u5de1","\u77e9","\u60b2","\u704c","\u9f61","\u502b","\u7968","\u5c0b","\u6842","\u92ea","\u8056","\u6050","\u6070","\u912d","\u8da3","\u62ac","\u8352","\u9a30","\u8cbc","\u67d4","\u6ef4","\u731b","\u95ca","\u8f1b","\u59bb","\u586b","\u64a4","\u5132","\u7c3d","\u9b27","\u64fe","\u7d2b","\u7802","\u905e","\u6232","\u540a","\u9676","\u4f10","\u9935","\u7642","\u74f6","\u5a46","\u64ab","\u81c2","\u6478","\u5fcd","\u8766","\u881f","\u9130","\u80f8","\u978f","\u64e0","\u5076","\u68c4","\u69fd","\u52c1","\u4e73","\u9127","\u5409","\u4ec1","\u721b","\u78da","\u79df","\u70cf","\u8266","\u4f34","\u74dc","\u6dfa","\u4e19","\u66ab","\u71e5","\u6a61","\u67f3","\u8ff7","\u6696","\u724c","\u79e7","\u81bd","\u8a73","\u7c27","\u8e0f","\u74f7","\u8b5c","\u5446","\u8cd3","\u7cca","\u6d1b","\u8f1d","\u61a4","\u7af6","\u9699","\u6012","\u7c98","\u4e43","\u7dd2","\u80a9","\u7c4d","\u654f","\u5857","\u7199","\u7686","\u5075","\u61f8","\u6398","\u4eab","\u7cfe","\u9192","\u72c2","\u9396","\u6dc0","\u6068","\u7272","\u9738","\u722c","\u8cde","\u9006","\u73a9","\u9675","\u795d","\u79d2","\u6d59","\u8c8c","\u5f79","\u5f7c","\u6089","\u9d28","\u8da8","\u9cf3","\u6668","\u755c","\u8f29","\u79e9","\u5375","\u7f72","\u68af","\u708e","\u7058","\u68cb","\u9a45","\u7be9","\u5cfd","\u5192","\u5565","\u58fd","\u8b6f","\u6d78","\u6cc9","\u5e3d","\u9072","\u77fd","\u7586","\u8cb8","\u6f0f","\u7a3f","\u51a0","\u5ae9","\u8105","\u82af","\u7262","\u53db","\u8755","\u5967","\u9cf4","\u5dba","\u7f8a","\u6191","\u4e32","\u5858","\u7e6a","\u9175","\u878d","\u76c6","\u932b","\u5edf","\u7c4c","\u51cd","\u8f14","\u651d","\u8972","\u7b4b","\u62d2","\u50da","\u65f1","\u9240","\u9ce5","\u6f06","\u6c88","\u7709","\u758f","\u6dfb","\u68d2","\u7a57","\u785d","\u97d3","\u903c","\u626d","\u50d1","\u6dbc","\u633a","\u7897","\u683d","\u7092","\u676f","\u60a3","\u993e","\u52f8","\u8c6a","\u907c","\u52c3","\u9d3b","\u65e6","\u540f","\u62dc","\u72d7","\u57cb","\u8f25","\u63a9","\u98f2","\u642c","\u7f75","\u8fad","\u52fe","\u6263","\u4f30","\u8523","\u7d68","\u9727","\u4e08","\u6735","\u59c6","\u64ec","\u5b87","\u8f2f","\u965d","\u96d5","\u511f","\u84c4","\u5d07","\u526a","\u5021","\u5ef3","\u54ac","\u99db","\u85af","\u5237","\u65a5","\u756a","\u8ce6","\u5949","\u4f5b","\u6f86","\u6f2b","\u66fc","\u6247","\u9223","\u6843","\u6276","\u4ed4","\u8fd4","\u4fd7","\u8667","\u8154","\u978b","\u68f1","\u8986","\u6846","\u6084","\u53d4","\u649e","\u9a19","\u52d8","\u65fa","\u6cb8","\u5b64","\u5410","\u5b5f","\u6e20","\u5c48","\u75be","\u5999","\u60dc","\u4ef0","\u72e0","\u8139","\u8ae7","\u62cb","\u9ef4","\u6851","\u5d17","\u561b","\u8870","\u76dc","\u6ef2","\u81df","\u8cf4","\u6e67","\u751c","\u66f9","\u95b1","\u808c","\u54e9","\u53b2","\u70f4","\u7def","\u6bc5","\u6628","\u507d","\u75c7","\u716e","\u5606","\u91d8","\u642d","\u8396","\u7c60","\u9177","\u5077","\u5f13","\u9310","\u6046","\u5091","\u5751","\u9f3b","\u7ffc","\u7db8","\u6558","\u7344","\u902e","\u7f50","\u7d61","\u68da","\u6291","\u81a8","\u852c","\u5bfa","\u9a5f","\u7a46","\u51b6","\u67af","\u518a","\u5c4d","\u51f8","\u7d33","\u576f","\u72a7","\u7130","\u8f5f","\u6b23","\u6649","\u7626","\u79a6","\u9320","\u9326","\u55aa","\u65ec","\u935b","\u58df","\u641c","\u64b2","\u9080","\u4ead","\u916f","\u9081","\u8212","\u8106","\u9176","\u9592","\u6182","\u915a","\u9811","\u7fbd","\u6f32","\u5378","\u4ed7","\u966a","\u95e2","\u61f2","\u676d","\u59da","\u809a","\u6349","\u98c4","\u6f02","\u6606","\u6b3a","\u543e","\u90ce","\u70f7","\u6c41","\u5475","\u98fe","\u856d","\u96c5","\u90f5","\u9077","\u71d5","\u6492","\u59fb","\u8d74","\u5bb4","\u7169","\u50b5","\u5e33","\u6591","\u9234","\u65e8","\u9187","\u8463","\u9905","\u96db","\u59ff","\u62cc","\u5085","\u8179","\u59a5","\u63c9","\u8ce2","\u62c6","\u6b6a","\u8461","\u80fa","\u4e1f","\u6d69","\u5fbd","\u6602","\u588a","\u64cb","\u89bd","\u8caa","\u6170","\u7e73","\u6c6a","\u614c","\u99ae","\u8afe","\u59dc","\u8abc","\u5147","\u52a3","\u8aa3","\u8000","\u660f","\u8eba","\u76c8","\u9a0e","\u55ac","\u6eaa","\u53e2","\u76e7","\u62b9","\u60b6","\u8aee","\u522e","\u99d5","\u7e9c","\u609f","\u6458","\u927a","\u64f2","\u9817","\u5e7b","\u67c4","\u60e0","\u6158","\u4f73","\u4ec7","\u81d8","\u7aa9","\u6ecc","\u528d","\u77a7","\u5821","\u6f51","\u8525","\u7f69","\u970d","\u6488","\u80ce","\u84bc","\u6ff1","\u5006","\u6345","\u6e58","\u780d","\u971e","\u90b5","\u8404","\u760b","\u6dee","\u9042","\u718a","\u7cde","\u70d8","\u5bbf","\u6a94","\u6208","\u99c1","\u5ac2","\u88d5","\u5f99","\u7bad","\u6350","\u8178","\u6490","\u66ec","\u8fa8","\u6bbf","\u84ee","\u6524","\u652a","\u91ac","\u5c4f","\u75ab","\u54c0","\u8521","\u5835","\u6cab","\u76ba","\u66a2","\u758a","\u95a3","\u840a","\u6572","\u8f44","\u9264","\u75d5","\u58e9","\u5df7","\u9913","\u798d","\u4e18","\u7384","\u6e9c","\u66f0","\u908f","\u5f6d","\u5617","\u537f","\u59a8","\u8247","\u541e","\u97cb","\u6028","\u77ee","\u6b47"]')},32:e=>{"use strict";e.exports=JSON.parse('["abdikace","abeceda","adresa","agrese","akce","aktovka","alej","alkohol","amputace","ananas","andulka","anekdota","anketa","antika","anulovat","archa","arogance","asfalt","asistent","aspirace","astma","astronom","atlas","atletika","atol","autobus","azyl","babka","bachor","bacil","baculka","badatel","bageta","bagr","bahno","bakterie","balada","baletka","balkon","balonek","balvan","balza","bambus","bankomat","barbar","baret","barman","baroko","barva","baterka","batoh","bavlna","bazalka","bazilika","bazuka","bedna","beran","beseda","bestie","beton","bezinka","bezmoc","beztak","bicykl","bidlo","biftek","bikiny","bilance","biograf","biolog","bitva","bizon","blahobyt","blatouch","blecha","bledule","blesk","blikat","blizna","blokovat","bloudit","blud","bobek","bobr","bodlina","bodnout","bohatost","bojkot","bojovat","bokorys","bolest","borec","borovice","bota","boubel","bouchat","bouda","boule","bourat","boxer","bradavka","brambora","branka","bratr","brepta","briketa","brko","brloh","bronz","broskev","brunetka","brusinka","brzda","brzy","bublina","bubnovat","buchta","buditel","budka","budova","bufet","bujarost","bukvice","buldok","bulva","bunda","bunkr","burza","butik","buvol","buzola","bydlet","bylina","bytovka","bzukot","capart","carevna","cedr","cedule","cejch","cejn","cela","celer","celkem","celnice","cenina","cennost","cenovka","centrum","cenzor","cestopis","cetka","chalupa","chapadlo","charita","chata","chechtat","chemie","chichot","chirurg","chlad","chleba","chlubit","chmel","chmura","chobot","chochol","chodba","cholera","chomout","chopit","choroba","chov","chrapot","chrlit","chrt","chrup","chtivost","chudina","chutnat","chvat","chvilka","chvost","chyba","chystat","chytit","cibule","cigareta","cihelna","cihla","cinkot","cirkus","cisterna","citace","citrus","cizinec","cizost","clona","cokoliv","couvat","ctitel","ctnost","cudnost","cuketa","cukr","cupot","cvaknout","cval","cvik","cvrkot","cyklista","daleko","dareba","datel","datum","dcera","debata","dechovka","decibel","deficit","deflace","dekl","dekret","demokrat","deprese","derby","deska","detektiv","dikobraz","diktovat","dioda","diplom","disk","displej","divadlo","divoch","dlaha","dlouho","dluhopis","dnes","dobro","dobytek","docent","dochutit","dodnes","dohled","dohoda","dohra","dojem","dojnice","doklad","dokola","doktor","dokument","dolar","doleva","dolina","doma","dominant","domluvit","domov","donutit","dopad","dopis","doplnit","doposud","doprovod","dopustit","dorazit","dorost","dort","dosah","doslov","dostatek","dosud","dosyta","dotaz","dotek","dotknout","doufat","doutnat","dovozce","dozadu","doznat","dozorce","drahota","drak","dramatik","dravec","draze","drdol","drobnost","drogerie","drozd","drsnost","drtit","drzost","duben","duchovno","dudek","duha","duhovka","dusit","dusno","dutost","dvojice","dvorec","dynamit","ekolog","ekonomie","elektron","elipsa","email","emise","emoce","empatie","epizoda","epocha","epopej","epos","esej","esence","eskorta","eskymo","etiketa","euforie","evoluce","exekuce","exkurze","expedice","exploze","export","extrakt","facka","fajfka","fakulta","fanatik","fantazie","farmacie","favorit","fazole","federace","fejeton","fenka","fialka","figurant","filozof","filtr","finance","finta","fixace","fjord","flanel","flirt","flotila","fond","fosfor","fotbal","fotka","foton","frakce","freska","fronta","fukar","funkce","fyzika","galeje","garant","genetika","geolog","gilotina","glazura","glejt","golem","golfista","gotika","graf","gramofon","granule","grep","gril","grog","groteska","guma","hadice","hadr","hala","halenka","hanba","hanopis","harfa","harpuna","havran","hebkost","hejkal","hejno","hejtman","hektar","helma","hematom","herec","herna","heslo","hezky","historik","hladovka","hlasivky","hlava","hledat","hlen","hlodavec","hloh","hloupost","hltat","hlubina","hluchota","hmat","hmota","hmyz","hnis","hnojivo","hnout","hoblina","hoboj","hoch","hodiny","hodlat","hodnota","hodovat","hojnost","hokej","holinka","holka","holub","homole","honitba","honorace","horal","horda","horizont","horko","horlivec","hormon","hornina","horoskop","horstvo","hospoda","hostina","hotovost","houba","houf","houpat","houska","hovor","hradba","hranice","hravost","hrazda","hrbolek","hrdina","hrdlo","hrdost","hrnek","hrobka","hromada","hrot","hrouda","hrozen","hrstka","hrubost","hryzat","hubenost","hubnout","hudba","hukot","humr","husita","hustota","hvozd","hybnost","hydrant","hygiena","hymna","hysterik","idylka","ihned","ikona","iluze","imunita","infekce","inflace","inkaso","inovace","inspekce","internet","invalida","investor","inzerce","ironie","jablko","jachta","jahoda","jakmile","jakost","jalovec","jantar","jarmark","jaro","jasan","jasno","jatka","javor","jazyk","jedinec","jedle","jednatel","jehlan","jekot","jelen","jelito","jemnost","jenom","jepice","jeseter","jevit","jezdec","jezero","jinak","jindy","jinoch","jiskra","jistota","jitrnice","jizva","jmenovat","jogurt","jurta","kabaret","kabel","kabinet","kachna","kadet","kadidlo","kahan","kajak","kajuta","kakao","kaktus","kalamita","kalhoty","kalibr","kalnost","kamera","kamkoliv","kamna","kanibal","kanoe","kantor","kapalina","kapela","kapitola","kapka","kaple","kapota","kapr","kapusta","kapybara","karamel","karotka","karton","kasa","katalog","katedra","kauce","kauza","kavalec","kazajka","kazeta","kazivost","kdekoliv","kdesi","kedluben","kemp","keramika","kino","klacek","kladivo","klam","klapot","klasika","klaun","klec","klenba","klepat","klesnout","klid","klima","klisna","klobouk","klokan","klopa","kloub","klubovna","klusat","kluzkost","kmen","kmitat","kmotr","kniha","knot","koalice","koberec","kobka","kobliha","kobyla","kocour","kohout","kojenec","kokos","koktejl","kolaps","koleda","kolize","kolo","komando","kometa","komik","komnata","komora","kompas","komunita","konat","koncept","kondice","konec","konfese","kongres","konina","konkurs","kontakt","konzerva","kopanec","kopie","kopnout","koprovka","korbel","korektor","kormidlo","koroptev","korpus","koruna","koryto","korzet","kosatec","kostka","kotel","kotleta","kotoul","koukat","koupelna","kousek","kouzlo","kovboj","koza","kozoroh","krabice","krach","krajina","kralovat","krasopis","kravata","kredit","krejcar","kresba","kreveta","kriket","kritik","krize","krkavec","krmelec","krmivo","krocan","krok","kronika","kropit","kroupa","krovka","krtek","kruhadlo","krupice","krutost","krvinka","krychle","krypta","krystal","kryt","kudlanka","kufr","kujnost","kukla","kulajda","kulich","kulka","kulomet","kultura","kuna","kupodivu","kurt","kurzor","kutil","kvalita","kvasinka","kvestor","kynolog","kyselina","kytara","kytice","kytka","kytovec","kyvadlo","labrador","lachtan","ladnost","laik","lakomec","lamela","lampa","lanovka","lasice","laso","lastura","latinka","lavina","lebka","leckdy","leden","lednice","ledovka","ledvina","legenda","legie","legrace","lehce","lehkost","lehnout","lektvar","lenochod","lentilka","lepenka","lepidlo","letadlo","letec","letmo","letokruh","levhart","levitace","levobok","libra","lichotka","lidojed","lidskost","lihovina","lijavec","lilek","limetka","linie","linka","linoleum","listopad","litina","litovat","lobista","lodivod","logika","logoped","lokalita","loket","lomcovat","lopata","lopuch","lord","losos","lotr","loudal","louh","louka","louskat","lovec","lstivost","lucerna","lucifer","lump","lusk","lustrace","lvice","lyra","lyrika","lysina","madam","madlo","magistr","mahagon","majetek","majitel","majorita","makak","makovice","makrela","malba","malina","malovat","malvice","maminka","mandle","manko","marnost","masakr","maskot","masopust","matice","matrika","maturita","mazanec","mazivo","mazlit","mazurka","mdloba","mechanik","meditace","medovina","melasa","meloun","mentolka","metla","metoda","metr","mezera","migrace","mihnout","mihule","mikina","mikrofon","milenec","milimetr","milost","mimika","mincovna","minibar","minomet","minulost","miska","mistr","mixovat","mladost","mlha","mlhovina","mlok","mlsat","mluvit","mnich","mnohem","mobil","mocnost","modelka","modlitba","mohyla","mokro","molekula","momentka","monarcha","monokl","monstrum","montovat","monzun","mosaz","moskyt","most","motivace","motorka","motyka","moucha","moudrost","mozaika","mozek","mozol","mramor","mravenec","mrkev","mrtvola","mrzet","mrzutost","mstitel","mudrc","muflon","mulat","mumie","munice","muset","mutace","muzeum","muzikant","myslivec","mzda","nabourat","nachytat","nadace","nadbytek","nadhoz","nadobro","nadpis","nahlas","nahnat","nahodile","nahradit","naivita","najednou","najisto","najmout","naklonit","nakonec","nakrmit","nalevo","namazat","namluvit","nanometr","naoko","naopak","naostro","napadat","napevno","naplnit","napnout","naposled","naprosto","narodit","naruby","narychlo","nasadit","nasekat","naslepo","nastat","natolik","navenek","navrch","navzdory","nazvat","nebe","nechat","necky","nedaleko","nedbat","neduh","negace","nehet","nehoda","nejen","nejprve","neklid","nelibost","nemilost","nemoc","neochota","neonka","nepokoj","nerost","nerv","nesmysl","nesoulad","netvor","neuron","nevina","nezvykle","nicota","nijak","nikam","nikdy","nikl","nikterak","nitro","nocleh","nohavice","nominace","nora","norek","nositel","nosnost","nouze","noviny","novota","nozdra","nuda","nudle","nuget","nutit","nutnost","nutrie","nymfa","obal","obarvit","obava","obdiv","obec","obehnat","obejmout","obezita","obhajoba","obilnice","objasnit","objekt","obklopit","oblast","oblek","obliba","obloha","obluda","obnos","obohatit","obojek","obout","obrazec","obrna","obruba","obrys","obsah","obsluha","obstarat","obuv","obvaz","obvinit","obvod","obvykle","obyvatel","obzor","ocas","ocel","ocenit","ochladit","ochota","ochrana","ocitnout","odboj","odbyt","odchod","odcizit","odebrat","odeslat","odevzdat","odezva","odhadce","odhodit","odjet","odjinud","odkaz","odkoupit","odliv","odluka","odmlka","odolnost","odpad","odpis","odplout","odpor","odpustit","odpykat","odrazka","odsoudit","odstup","odsun","odtok","odtud","odvaha","odveta","odvolat","odvracet","odznak","ofina","ofsajd","ohlas","ohnisko","ohrada","ohrozit","ohryzek","okap","okenice","oklika","okno","okouzlit","okovy","okrasa","okres","okrsek","okruh","okupant","okurka","okusit","olejnina","olizovat","omak","omeleta","omezit","omladina","omlouvat","omluva","omyl","onehdy","opakovat","opasek","operace","opice","opilost","opisovat","opora","opozice","opravdu","oproti","orbital","orchestr","orgie","orlice","orloj","ortel","osada","oschnout","osika","osivo","oslava","oslepit","oslnit","oslovit","osnova","osoba","osolit","ospalec","osten","ostraha","ostuda","ostych","osvojit","oteplit","otisk","otop","otrhat","otrlost","otrok","otruby","otvor","ovanout","ovar","oves","ovlivnit","ovoce","oxid","ozdoba","pachatel","pacient","padouch","pahorek","pakt","palanda","palec","palivo","paluba","pamflet","pamlsek","panenka","panika","panna","panovat","panstvo","pantofle","paprika","parketa","parodie","parta","paruka","paryba","paseka","pasivita","pastelka","patent","patrona","pavouk","pazneht","pazourek","pecka","pedagog","pejsek","peklo","peloton","penalta","pendrek","penze","periskop","pero","pestrost","petarda","petice","petrolej","pevnina","pexeso","pianista","piha","pijavice","pikle","piknik","pilina","pilnost","pilulka","pinzeta","pipeta","pisatel","pistole","pitevna","pivnice","pivovar","placenta","plakat","plamen","planeta","plastika","platit","plavidlo","plaz","plech","plemeno","plenta","ples","pletivo","plevel","plivat","plnit","plno","plocha","plodina","plomba","plout","pluk","plyn","pobavit","pobyt","pochod","pocit","poctivec","podat","podcenit","podepsat","podhled","podivit","podklad","podmanit","podnik","podoba","podpora","podraz","podstata","podvod","podzim","poezie","pohanka","pohnutka","pohovor","pohroma","pohyb","pointa","pojistka","pojmout","pokazit","pokles","pokoj","pokrok","pokuta","pokyn","poledne","polibek","polknout","poloha","polynom","pomalu","pominout","pomlka","pomoc","pomsta","pomyslet","ponechat","ponorka","ponurost","popadat","popel","popisek","poplach","poprosit","popsat","popud","poradce","porce","porod","porucha","poryv","posadit","posed","posila","poskok","poslanec","posoudit","pospolu","postava","posudek","posyp","potah","potkan","potlesk","potomek","potrava","potupa","potvora","poukaz","pouto","pouzdro","povaha","povidla","povlak","povoz","povrch","povstat","povyk","povzdech","pozdrav","pozemek","poznatek","pozor","pozvat","pracovat","prahory","praktika","prales","praotec","praporek","prase","pravda","princip","prkno","probudit","procento","prodej","profese","prohra","projekt","prolomit","promile","pronikat","propad","prorok","prosba","proton","proutek","provaz","prskavka","prsten","prudkost","prut","prvek","prvohory","psanec","psovod","pstruh","ptactvo","puberta","puch","pudl","pukavec","puklina","pukrle","pult","pumpa","punc","pupen","pusa","pusinka","pustina","putovat","putyka","pyramida","pysk","pytel","racek","rachot","radiace","radnice","radon","raft","ragby","raketa","rakovina","rameno","rampouch","rande","rarach","rarita","rasovna","rastr","ratolest","razance","razidlo","reagovat","reakce","recept","redaktor","referent","reflex","rejnok","reklama","rekord","rekrut","rektor","reputace","revize","revma","revolver","rezerva","riskovat","riziko","robotika","rodokmen","rohovka","rokle","rokoko","romaneto","ropovod","ropucha","rorejs","rosol","rostlina","rotmistr","rotoped","rotunda","roubenka","roucho","roup","roura","rovina","rovnice","rozbor","rozchod","rozdat","rozeznat","rozhodce","rozinka","rozjezd","rozkaz","rozloha","rozmar","rozpad","rozruch","rozsah","roztok","rozum","rozvod","rubrika","ruchadlo","rukavice","rukopis","ryba","rybolov","rychlost","rydlo","rypadlo","rytina","ryzost","sadista","sahat","sako","samec","samizdat","samota","sanitka","sardinka","sasanka","satelit","sazba","sazenice","sbor","schovat","sebranka","secese","sedadlo","sediment","sedlo","sehnat","sejmout","sekera","sekta","sekunda","sekvoje","semeno","seno","servis","sesadit","seshora","seskok","seslat","sestra","sesuv","sesypat","setba","setina","setkat","setnout","setrvat","sever","seznam","shoda","shrnout","sifon","silnice","sirka","sirotek","sirup","situace","skafandr","skalisko","skanzen","skaut","skeptik","skica","skladba","sklenice","sklo","skluz","skoba","skokan","skoro","skripta","skrz","skupina","skvost","skvrna","slabika","sladidlo","slanina","slast","slavnost","sledovat","slepec","sleva","slezina","slib","slina","sliznice","slon","sloupek","slovo","sluch","sluha","slunce","slupka","slza","smaragd","smetana","smilstvo","smlouva","smog","smrad","smrk","smrtka","smutek","smysl","snad","snaha","snob","sobota","socha","sodovka","sokol","sopka","sotva","souboj","soucit","soudce","souhlas","soulad","soumrak","souprava","soused","soutok","souviset","spalovna","spasitel","spis","splav","spodek","spojenec","spolu","sponzor","spornost","spousta","sprcha","spustit","sranda","sraz","srdce","srna","srnec","srovnat","srpen","srst","srub","stanice","starosta","statika","stavba","stehno","stezka","stodola","stolek","stopa","storno","stoupat","strach","stres","strhnout","strom","struna","studna","stupnice","stvol","styk","subjekt","subtropy","suchar","sudost","sukno","sundat","sunout","surikata","surovina","svah","svalstvo","svetr","svatba","svazek","svisle","svitek","svoboda","svodidlo","svorka","svrab","sykavka","sykot","synek","synovec","sypat","sypkost","syrovost","sysel","sytost","tabletka","tabule","tahoun","tajemno","tajfun","tajga","tajit","tajnost","taktika","tamhle","tampon","tancovat","tanec","tanker","tapeta","tavenina","tazatel","technika","tehdy","tekutina","telefon","temnota","tendence","tenista","tenor","teplota","tepna","teprve","terapie","termoska","textil","ticho","tiskopis","titulek","tkadlec","tkanina","tlapka","tleskat","tlukot","tlupa","tmel","toaleta","topinka","topol","torzo","touha","toulec","tradice","traktor","tramp","trasa","traverza","trefit","trest","trezor","trhavina","trhlina","trochu","trojice","troska","trouba","trpce","trpitel","trpkost","trubec","truchlit","truhlice","trus","trvat","tudy","tuhnout","tuhost","tundra","turista","turnaj","tuzemsko","tvaroh","tvorba","tvrdost","tvrz","tygr","tykev","ubohost","uboze","ubrat","ubrousek","ubrus","ubytovna","ucho","uctivost","udivit","uhradit","ujednat","ujistit","ujmout","ukazatel","uklidnit","uklonit","ukotvit","ukrojit","ulice","ulita","ulovit","umyvadlo","unavit","uniforma","uniknout","upadnout","uplatnit","uplynout","upoutat","upravit","uran","urazit","usednout","usilovat","usmrtit","usnadnit","usnout","usoudit","ustlat","ustrnout","utahovat","utkat","utlumit","utonout","utopenec","utrousit","uvalit","uvolnit","uvozovka","uzdravit","uzel","uzenina","uzlina","uznat","vagon","valcha","valoun","vana","vandal","vanilka","varan","varhany","varovat","vcelku","vchod","vdova","vedro","vegetace","vejce","velbloud","veletrh","velitel","velmoc","velryba","venkov","veranda","verze","veselka","veskrze","vesnice","vespodu","vesta","veterina","veverka","vibrace","vichr","videohra","vidina","vidle","vila","vinice","viset","vitalita","vize","vizitka","vjezd","vklad","vkus","vlajka","vlak","vlasec","vlevo","vlhkost","vliv","vlnovka","vloupat","vnucovat","vnuk","voda","vodivost","vodoznak","vodstvo","vojensky","vojna","vojsko","volant","volba","volit","volno","voskovka","vozidlo","vozovna","vpravo","vrabec","vracet","vrah","vrata","vrba","vrcholek","vrhat","vrstva","vrtule","vsadit","vstoupit","vstup","vtip","vybavit","vybrat","vychovat","vydat","vydra","vyfotit","vyhledat","vyhnout","vyhodit","vyhradit","vyhubit","vyjasnit","vyjet","vyjmout","vyklopit","vykonat","vylekat","vymazat","vymezit","vymizet","vymyslet","vynechat","vynikat","vynutit","vypadat","vyplatit","vypravit","vypustit","vyrazit","vyrovnat","vyrvat","vyslovit","vysoko","vystavit","vysunout","vysypat","vytasit","vytesat","vytratit","vyvinout","vyvolat","vyvrhel","vyzdobit","vyznat","vzadu","vzbudit","vzchopit","vzdor","vzduch","vzdychat","vzestup","vzhledem","vzkaz","vzlykat","vznik","vzorek","vzpoura","vztah","vztek","xylofon","zabrat","zabydlet","zachovat","zadarmo","zadusit","zafoukat","zahltit","zahodit","zahrada","zahynout","zajatec","zajet","zajistit","zaklepat","zakoupit","zalepit","zamezit","zamotat","zamyslet","zanechat","zanikat","zaplatit","zapojit","zapsat","zarazit","zastavit","zasunout","zatajit","zatemnit","zatknout","zaujmout","zavalit","zavelet","zavinit","zavolat","zavrtat","zazvonit","zbavit","zbrusu","zbudovat","zbytek","zdaleka","zdarma","zdatnost","zdivo","zdobit","zdroj","zdvih","zdymadlo","zelenina","zeman","zemina","zeptat","zezadu","zezdola","zhatit","zhltnout","zhluboka","zhotovit","zhruba","zima","zimnice","zjemnit","zklamat","zkoumat","zkratka","zkumavka","zlato","zlehka","zloba","zlom","zlost","zlozvyk","zmapovat","zmar","zmatek","zmije","zmizet","zmocnit","zmodrat","zmrzlina","zmutovat","znak","znalost","znamenat","znovu","zobrazit","zotavit","zoubek","zoufale","zplodit","zpomalit","zprava","zprostit","zprudka","zprvu","zrada","zranit","zrcadlo","zrnitost","zrno","zrovna","zrychlit","zrzavost","zticha","ztratit","zubovina","zubr","zvednout","zvenku","zvesela","zvon","zvrat","zvukovod","zvyk"]')},4573:e=>{"use strict";e.exports=JSON.parse('["abandon","ability","able","about","above","absent","absorb","abstract","absurd","abuse","access","accident","account","accuse","achieve","acid","acoustic","acquire","across","act","action","actor","actress","actual","adapt","add","addict","address","adjust","admit","adult","advance","advice","aerobic","affair","afford","afraid","again","age","agent","agree","ahead","aim","air","airport","aisle","alarm","album","alcohol","alert","alien","all","alley","allow","almost","alone","alpha","already","also","alter","always","amateur","amazing","among","amount","amused","analyst","anchor","ancient","anger","angle","angry","animal","ankle","announce","annual","another","answer","antenna","antique","anxiety","any","apart","apology","appear","apple","approve","april","arch","arctic","area","arena","argue","arm","armed","armor","army","around","arrange","arrest","arrive","arrow","art","artefact","artist","artwork","ask","aspect","assault","asset","assist","assume","asthma","athlete","atom","attack","attend","attitude","attract","auction","audit","august","aunt","author","auto","autumn","average","avocado","avoid","awake","aware","away","awesome","awful","awkward","axis","baby","bachelor","bacon","badge","bag","balance","balcony","ball","bamboo","banana","banner","bar","barely","bargain","barrel","base","basic","basket","battle","beach","bean","beauty","because","become","beef","before","begin","behave","behind","believe","below","belt","bench","benefit","best","betray","better","between","beyond","bicycle","bid","bike","bind","biology","bird","birth","bitter","black","blade","blame","blanket","blast","bleak","bless","blind","blood","blossom","blouse","blue","blur","blush","board","boat","body","boil","bomb","bone","bonus","book","boost","border","boring","borrow","boss","bottom","bounce","box","boy","bracket","brain","brand","brass","brave","bread","breeze","brick","bridge","brief","bright","bring","brisk","broccoli","broken","bronze","broom","brother","brown","brush","bubble","buddy","budget","buffalo","build","bulb","bulk","bullet","bundle","bunker","burden","burger","burst","bus","business","busy","butter","buyer","buzz","cabbage","cabin","cable","cactus","cage","cake","call","calm","camera","camp","can","canal","cancel","candy","cannon","canoe","canvas","canyon","capable","capital","captain","car","carbon","card","cargo","carpet","carry","cart","case","cash","casino","castle","casual","cat","catalog","catch","category","cattle","caught","cause","caution","cave","ceiling","celery","cement","census","century","cereal","certain","chair","chalk","champion","change","chaos","chapter","charge","chase","chat","cheap","check","cheese","chef","cherry","chest","chicken","chief","child","chimney","choice","choose","chronic","chuckle","chunk","churn","cigar","cinnamon","circle","citizen","city","civil","claim","clap","clarify","claw","clay","clean","clerk","clever","click","client","cliff","climb","clinic","clip","clock","clog","close","cloth","cloud","clown","club","clump","cluster","clutch","coach","coast","coconut","code","coffee","coil","coin","collect","color","column","combine","come","comfort","comic","common","company","concert","conduct","confirm","congress","connect","consider","control","convince","cook","cool","copper","copy","coral","core","corn","correct","cost","cotton","couch","country","couple","course","cousin","cover","coyote","crack","cradle","craft","cram","crane","crash","crater","crawl","crazy","cream","credit","creek","crew","cricket","crime","crisp","critic","crop","cross","crouch","crowd","crucial","cruel","cruise","crumble","crunch","crush","cry","crystal","cube","culture","cup","cupboard","curious","current","curtain","curve","cushion","custom","cute","cycle","dad","damage","damp","dance","danger","daring","dash","daughter","dawn","day","deal","debate","debris","decade","december","decide","decline","decorate","decrease","deer","defense","define","defy","degree","delay","deliver","demand","demise","denial","dentist","deny","depart","depend","deposit","depth","deputy","derive","describe","desert","design","desk","despair","destroy","detail","detect","develop","device","devote","diagram","dial","diamond","diary","dice","diesel","diet","differ","digital","dignity","dilemma","dinner","dinosaur","direct","dirt","disagree","discover","disease","dish","dismiss","disorder","display","distance","divert","divide","divorce","dizzy","doctor","document","dog","doll","dolphin","domain","donate","donkey","donor","door","dose","double","dove","draft","dragon","drama","drastic","draw","dream","dress","drift","drill","drink","drip","drive","drop","drum","dry","duck","dumb","dune","during","dust","dutch","duty","dwarf","dynamic","eager","eagle","early","earn","earth","easily","east","easy","echo","ecology","economy","edge","edit","educate","effort","egg","eight","either","elbow","elder","electric","elegant","element","elephant","elevator","elite","else","embark","embody","embrace","emerge","emotion","employ","empower","empty","enable","enact","end","endless","endorse","enemy","energy","enforce","engage","engine","enhance","enjoy","enlist","enough","enrich","enroll","ensure","enter","entire","entry","envelope","episode","equal","equip","era","erase","erode","erosion","error","erupt","escape","essay","essence","estate","eternal","ethics","evidence","evil","evoke","evolve","exact","example","excess","exchange","excite","exclude","excuse","execute","exercise","exhaust","exhibit","exile","exist","exit","exotic","expand","expect","expire","explain","expose","express","extend","extra","eye","eyebrow","fabric","face","faculty","fade","faint","faith","fall","false","fame","family","famous","fan","fancy","fantasy","farm","fashion","fat","fatal","father","fatigue","fault","favorite","feature","february","federal","fee","feed","feel","female","fence","festival","fetch","fever","few","fiber","fiction","field","figure","file","film","filter","final","find","fine","finger","finish","fire","firm","first","fiscal","fish","fit","fitness","fix","flag","flame","flash","flat","flavor","flee","flight","flip","float","flock","floor","flower","fluid","flush","fly","foam","focus","fog","foil","fold","follow","food","foot","force","forest","forget","fork","fortune","forum","forward","fossil","foster","found","fox","fragile","frame","frequent","fresh","friend","fringe","frog","front","frost","frown","frozen","fruit","fuel","fun","funny","furnace","fury","future","gadget","gain","galaxy","gallery","game","gap","garage","garbage","garden","garlic","garment","gas","gasp","gate","gather","gauge","gaze","general","genius","genre","gentle","genuine","gesture","ghost","giant","gift","giggle","ginger","giraffe","girl","give","glad","glance","glare","glass","glide","glimpse","globe","gloom","glory","glove","glow","glue","goat","goddess","gold","good","goose","gorilla","gospel","gossip","govern","gown","grab","grace","grain","grant","grape","grass","gravity","great","green","grid","grief","grit","grocery","group","grow","grunt","guard","guess","guide","guilt","guitar","gun","gym","habit","hair","half","hammer","hamster","hand","happy","harbor","hard","harsh","harvest","hat","have","hawk","hazard","head","health","heart","heavy","hedgehog","height","hello","helmet","help","hen","hero","hidden","high","hill","hint","hip","hire","history","hobby","hockey","hold","hole","holiday","hollow","home","honey","hood","hope","horn","horror","horse","hospital","host","hotel","hour","hover","hub","huge","human","humble","humor","hundred","hungry","hunt","hurdle","hurry","hurt","husband","hybrid","ice","icon","idea","identify","idle","ignore","ill","illegal","illness","image","imitate","immense","immune","impact","impose","improve","impulse","inch","include","income","increase","index","indicate","indoor","industry","infant","inflict","inform","inhale","inherit","initial","inject","injury","inmate","inner","innocent","input","inquiry","insane","insect","inside","inspire","install","intact","interest","into","invest","invite","involve","iron","island","isolate","issue","item","ivory","jacket","jaguar","jar","jazz","jealous","jeans","jelly","jewel","job","join","joke","journey","joy","judge","juice","jump","jungle","junior","junk","just","kangaroo","keen","keep","ketchup","key","kick","kid","kidney","kind","kingdom","kiss","kit","kitchen","kite","kitten","kiwi","knee","knife","knock","know","lab","label","labor","ladder","lady","lake","lamp","language","laptop","large","later","latin","laugh","laundry","lava","law","lawn","lawsuit","layer","lazy","leader","leaf","learn","leave","lecture","left","leg","legal","legend","leisure","lemon","lend","length","lens","leopard","lesson","letter","level","liar","liberty","library","license","life","lift","light","like","limb","limit","link","lion","liquid","list","little","live","lizard","load","loan","lobster","local","lock","logic","lonely","long","loop","lottery","loud","lounge","love","loyal","lucky","luggage","lumber","lunar","lunch","luxury","lyrics","machine","mad","magic","magnet","maid","mail","main","major","make","mammal","man","manage","mandate","mango","mansion","manual","maple","marble","march","margin","marine","market","marriage","mask","mass","master","match","material","math","matrix","matter","maximum","maze","meadow","mean","measure","meat","mechanic","medal","media","melody","melt","member","memory","mention","menu","mercy","merge","merit","merry","mesh","message","metal","method","middle","midnight","milk","million","mimic","mind","minimum","minor","minute","miracle","mirror","misery","miss","mistake","mix","mixed","mixture","mobile","model","modify","mom","moment","monitor","monkey","monster","month","moon","moral","more","morning","mosquito","mother","motion","motor","mountain","mouse","move","movie","much","muffin","mule","multiply","muscle","museum","mushroom","music","must","mutual","myself","mystery","myth","naive","name","napkin","narrow","nasty","nation","nature","near","neck","need","negative","neglect","neither","nephew","nerve","nest","net","network","neutral","never","news","next","nice","night","noble","noise","nominee","noodle","normal","north","nose","notable","note","nothing","notice","novel","now","nuclear","number","nurse","nut","oak","obey","object","oblige","obscure","observe","obtain","obvious","occur","ocean","october","odor","off","offer","office","often","oil","okay","old","olive","olympic","omit","once","one","onion","online","only","open","opera","opinion","oppose","option","orange","orbit","orchard","order","ordinary","organ","orient","original","orphan","ostrich","other","outdoor","outer","output","outside","oval","oven","over","own","owner","oxygen","oyster","ozone","pact","paddle","page","pair","palace","palm","panda","panel","panic","panther","paper","parade","parent","park","parrot","party","pass","patch","path","patient","patrol","pattern","pause","pave","payment","peace","peanut","pear","peasant","pelican","pen","penalty","pencil","people","pepper","perfect","permit","person","pet","phone","photo","phrase","physical","piano","picnic","picture","piece","pig","pigeon","pill","pilot","pink","pioneer","pipe","pistol","pitch","pizza","place","planet","plastic","plate","play","please","pledge","pluck","plug","plunge","poem","poet","point","polar","pole","police","pond","pony","pool","popular","portion","position","possible","post","potato","pottery","poverty","powder","power","practice","praise","predict","prefer","prepare","present","pretty","prevent","price","pride","primary","print","priority","prison","private","prize","problem","process","produce","profit","program","project","promote","proof","property","prosper","protect","proud","provide","public","pudding","pull","pulp","pulse","pumpkin","punch","pupil","puppy","purchase","purity","purpose","purse","push","put","puzzle","pyramid","quality","quantum","quarter","question","quick","quit","quiz","quote","rabbit","raccoon","race","rack","radar","radio","rail","rain","raise","rally","ramp","ranch","random","range","rapid","rare","rate","rather","raven","raw","razor","ready","real","reason","rebel","rebuild","recall","receive","recipe","record","recycle","reduce","reflect","reform","refuse","region","regret","regular","reject","relax","release","relief","rely","remain","remember","remind","remove","render","renew","rent","reopen","repair","repeat","replace","report","require","rescue","resemble","resist","resource","response","result","retire","retreat","return","reunion","reveal","review","reward","rhythm","rib","ribbon","rice","rich","ride","ridge","rifle","right","rigid","ring","riot","ripple","risk","ritual","rival","river","road","roast","robot","robust","rocket","romance","roof","rookie","room","rose","rotate","rough","round","route","royal","rubber","rude","rug","rule","run","runway","rural","sad","saddle","sadness","safe","sail","salad","salmon","salon","salt","salute","same","sample","sand","satisfy","satoshi","sauce","sausage","save","say","scale","scan","scare","scatter","scene","scheme","school","science","scissors","scorpion","scout","scrap","screen","script","scrub","sea","search","season","seat","second","secret","section","security","seed","seek","segment","select","sell","seminar","senior","sense","sentence","series","service","session","settle","setup","seven","shadow","shaft","shallow","share","shed","shell","sheriff","shield","shift","shine","ship","shiver","shock","shoe","shoot","shop","short","shoulder","shove","shrimp","shrug","shuffle","shy","sibling","sick","side","siege","sight","sign","silent","silk","silly","silver","similar","simple","since","sing","siren","sister","situate","six","size","skate","sketch","ski","skill","skin","skirt","skull","slab","slam","sleep","slender","slice","slide","slight","slim","slogan","slot","slow","slush","small","smart","smile","smoke","smooth","snack","snake","snap","sniff","snow","soap","soccer","social","sock","soda","soft","solar","soldier","solid","solution","solve","someone","song","soon","sorry","sort","soul","sound","soup","source","south","space","spare","spatial","spawn","speak","special","speed","spell","spend","sphere","spice","spider","spike","spin","spirit","split","spoil","sponsor","spoon","sport","spot","spray","spread","spring","spy","square","squeeze","squirrel","stable","stadium","staff","stage","stairs","stamp","stand","start","state","stay","steak","steel","stem","step","stereo","stick","still","sting","stock","stomach","stone","stool","story","stove","strategy","street","strike","strong","struggle","student","stuff","stumble","style","subject","submit","subway","success","such","sudden","suffer","sugar","suggest","suit","summer","sun","sunny","sunset","super","supply","supreme","sure","surface","surge","surprise","surround","survey","suspect","sustain","swallow","swamp","swap","swarm","swear","sweet","swift","swim","swing","switch","sword","symbol","symptom","syrup","system","table","tackle","tag","tail","talent","talk","tank","tape","target","task","taste","tattoo","taxi","teach","team","tell","ten","tenant","tennis","tent","term","test","text","thank","that","theme","then","theory","there","they","thing","this","thought","three","thrive","throw","thumb","thunder","ticket","tide","tiger","tilt","timber","time","tiny","tip","tired","tissue","title","toast","tobacco","today","toddler","toe","together","toilet","token","tomato","tomorrow","tone","tongue","tonight","tool","tooth","top","topic","topple","torch","tornado","tortoise","toss","total","tourist","toward","tower","town","toy","track","trade","traffic","tragic","train","transfer","trap","trash","travel","tray","treat","tree","trend","trial","tribe","trick","trigger","trim","trip","trophy","trouble","truck","true","truly","trumpet","trust","truth","try","tube","tuition","tumble","tuna","tunnel","turkey","turn","turtle","twelve","twenty","twice","twin","twist","two","type","typical","ugly","umbrella","unable","unaware","uncle","uncover","under","undo","unfair","unfold","unhappy","uniform","unique","unit","universe","unknown","unlock","until","unusual","unveil","update","upgrade","uphold","upon","upper","upset","urban","urge","usage","use","used","useful","useless","usual","utility","vacant","vacuum","vague","valid","valley","valve","van","vanish","vapor","various","vast","vault","vehicle","velvet","vendor","venture","venue","verb","verify","version","very","vessel","veteran","viable","vibrant","vicious","victory","video","view","village","vintage","violin","virtual","virus","visa","visit","visual","vital","vivid","vocal","voice","void","volcano","volume","vote","voyage","wage","wagon","wait","walk","wall","walnut","want","warfare","warm","warrior","wash","wasp","waste","water","wave","way","wealth","weapon","wear","weasel","weather","web","wedding","weekend","weird","welcome","west","wet","whale","what","wheat","wheel","when","where","whip","whisper","wide","width","wife","wild","will","win","window","wine","wing","wink","winner","winter","wire","wisdom","wise","wish","witness","wolf","woman","wonder","wood","wool","word","work","world","worry","worth","wrap","wreck","wrestle","wrist","write","wrong","yard","year","yellow","you","young","youth","zebra","zero","zone","zoo"]')},1848:e=>{"use strict";e.exports=JSON.parse('["abaisser","abandon","abdiquer","abeille","abolir","aborder","aboutir","aboyer","abrasif","abreuver","abriter","abroger","abrupt","absence","absolu","absurde","abusif","abyssal","acade\u0301mie","acajou","acarien","accabler","accepter","acclamer","accolade","accroche","accuser","acerbe","achat","acheter","aciduler","acier","acompte","acque\u0301rir","acronyme","acteur","actif","actuel","adepte","ade\u0301quat","adhe\u0301sif","adjectif","adjuger","admettre","admirer","adopter","adorer","adoucir","adresse","adroit","adulte","adverbe","ae\u0301rer","ae\u0301ronef","affaire","affecter","affiche","affreux","affubler","agacer","agencer","agile","agiter","agrafer","agre\u0301able","agrume","aider","aiguille","ailier","aimable","aisance","ajouter","ajuster","alarmer","alchimie","alerte","alge\u0300bre","algue","alie\u0301ner","aliment","alle\u0301ger","alliage","allouer","allumer","alourdir","alpaga","altesse","alve\u0301ole","amateur","ambigu","ambre","ame\u0301nager","amertume","amidon","amiral","amorcer","amour","amovible","amphibie","ampleur","amusant","analyse","anaphore","anarchie","anatomie","ancien","ane\u0301antir","angle","angoisse","anguleux","animal","annexer","annonce","annuel","anodin","anomalie","anonyme","anormal","antenne","antidote","anxieux","apaiser","ape\u0301ritif","aplanir","apologie","appareil","appeler","apporter","appuyer","aquarium","aqueduc","arbitre","arbuste","ardeur","ardoise","argent","arlequin","armature","armement","armoire","armure","arpenter","arracher","arriver","arroser","arsenic","arte\u0301riel","article","aspect","asphalte","aspirer","assaut","asservir","assiette","associer","assurer","asticot","astre","astuce","atelier","atome","atrium","atroce","attaque","attentif","attirer","attraper","aubaine","auberge","audace","audible","augurer","aurore","automne","autruche","avaler","avancer","avarice","avenir","averse","aveugle","aviateur","avide","avion","aviser","avoine","avouer","avril","axial","axiome","badge","bafouer","bagage","baguette","baignade","balancer","balcon","baleine","balisage","bambin","bancaire","bandage","banlieue","bannie\u0300re","banquier","barbier","baril","baron","barque","barrage","bassin","bastion","bataille","bateau","batterie","baudrier","bavarder","belette","be\u0301lier","belote","be\u0301ne\u0301fice","berceau","berger","berline","bermuda","besace","besogne","be\u0301tail","beurre","biberon","bicycle","bidule","bijou","bilan","bilingue","billard","binaire","biologie","biopsie","biotype","biscuit","bison","bistouri","bitume","bizarre","blafard","blague","blanchir","blessant","blinder","blond","bloquer","blouson","bobard","bobine","boire","boiser","bolide","bonbon","bondir","bonheur","bonifier","bonus","bordure","borne","botte","boucle","boueux","bougie","boulon","bouquin","bourse","boussole","boutique","boxeur","branche","brasier","brave","brebis","bre\u0300che","breuvage","bricoler","brigade","brillant","brioche","brique","brochure","broder","bronzer","brousse","broyeur","brume","brusque","brutal","bruyant","buffle","buisson","bulletin","bureau","burin","bustier","butiner","butoir","buvable","buvette","cabanon","cabine","cachette","cadeau","cadre","cafe\u0301ine","caillou","caisson","calculer","calepin","calibre","calmer","calomnie","calvaire","camarade","came\u0301ra","camion","campagne","canal","caneton","canon","cantine","canular","capable","caporal","caprice","capsule","capter","capuche","carabine","carbone","caresser","caribou","carnage","carotte","carreau","carton","cascade","casier","casque","cassure","causer","caution","cavalier","caverne","caviar","ce\u0301dille","ceinture","ce\u0301leste","cellule","cendrier","censurer","central","cercle","ce\u0301re\u0301bral","cerise","cerner","cerveau","cesser","chagrin","chaise","chaleur","chambre","chance","chapitre","charbon","chasseur","chaton","chausson","chavirer","chemise","chenille","che\u0301quier","chercher","cheval","chien","chiffre","chignon","chime\u0300re","chiot","chlorure","chocolat","choisir","chose","chouette","chrome","chute","cigare","cigogne","cimenter","cine\u0301ma","cintrer","circuler","cirer","cirque","citerne","citoyen","citron","civil","clairon","clameur","claquer","classe","clavier","client","cligner","climat","clivage","cloche","clonage","cloporte","cobalt","cobra","cocasse","cocotier","coder","codifier","coffre","cogner","cohe\u0301sion","coiffer","coincer","cole\u0300re","colibri","colline","colmater","colonel","combat","come\u0301die","commande","compact","concert","conduire","confier","congeler","connoter","consonne","contact","convexe","copain","copie","corail","corbeau","cordage","corniche","corpus","correct","corte\u0300ge","cosmique","costume","coton","coude","coupure","courage","couteau","couvrir","coyote","crabe","crainte","cravate","crayon","cre\u0301ature","cre\u0301diter","cre\u0301meux","creuser","crevette","cribler","crier","cristal","crite\u0300re","croire","croquer","crotale","crucial","cruel","crypter","cubique","cueillir","cuille\u0300re","cuisine","cuivre","culminer","cultiver","cumuler","cupide","curatif","curseur","cyanure","cycle","cylindre","cynique","daigner","damier","danger","danseur","dauphin","de\u0301battre","de\u0301biter","de\u0301border","de\u0301brider","de\u0301butant","de\u0301caler","de\u0301cembre","de\u0301chirer","de\u0301cider","de\u0301clarer","de\u0301corer","de\u0301crire","de\u0301cupler","de\u0301dale","de\u0301ductif","de\u0301esse","de\u0301fensif","de\u0301filer","de\u0301frayer","de\u0301gager","de\u0301givrer","de\u0301glutir","de\u0301grafer","de\u0301jeuner","de\u0301lice","de\u0301loger","demander","demeurer","de\u0301molir","de\u0301nicher","de\u0301nouer","dentelle","de\u0301nuder","de\u0301part","de\u0301penser","de\u0301phaser","de\u0301placer","de\u0301poser","de\u0301ranger","de\u0301rober","de\u0301sastre","descente","de\u0301sert","de\u0301signer","de\u0301sobe\u0301ir","dessiner","destrier","de\u0301tacher","de\u0301tester","de\u0301tourer","de\u0301tresse","devancer","devenir","deviner","devoir","diable","dialogue","diamant","dicter","diffe\u0301rer","dige\u0301rer","digital","digne","diluer","dimanche","diminuer","dioxyde","directif","diriger","discuter","disposer","dissiper","distance","divertir","diviser","docile","docteur","dogme","doigt","domaine","domicile","dompter","donateur","donjon","donner","dopamine","dortoir","dorure","dosage","doseur","dossier","dotation","douanier","double","douceur","douter","doyen","dragon","draper","dresser","dribbler","droiture","duperie","duplexe","durable","durcir","dynastie","e\u0301blouir","e\u0301carter","e\u0301charpe","e\u0301chelle","e\u0301clairer","e\u0301clipse","e\u0301clore","e\u0301cluse","e\u0301cole","e\u0301conomie","e\u0301corce","e\u0301couter","e\u0301craser","e\u0301cre\u0301mer","e\u0301crivain","e\u0301crou","e\u0301cume","e\u0301cureuil","e\u0301difier","e\u0301duquer","effacer","effectif","effigie","effort","effrayer","effusion","e\u0301galiser","e\u0301garer","e\u0301jecter","e\u0301laborer","e\u0301largir","e\u0301lectron","e\u0301le\u0301gant","e\u0301le\u0301phant","e\u0301le\u0300ve","e\u0301ligible","e\u0301litisme","e\u0301loge","e\u0301lucider","e\u0301luder","emballer","embellir","embryon","e\u0301meraude","e\u0301mission","emmener","e\u0301motion","e\u0301mouvoir","empereur","employer","emporter","emprise","e\u0301mulsion","encadrer","enche\u0300re","enclave","encoche","endiguer","endosser","endroit","enduire","e\u0301nergie","enfance","enfermer","enfouir","engager","engin","englober","e\u0301nigme","enjamber","enjeu","enlever","ennemi","ennuyeux","enrichir","enrobage","enseigne","entasser","entendre","entier","entourer","entraver","e\u0301nume\u0301rer","envahir","enviable","envoyer","enzyme","e\u0301olien","e\u0301paissir","e\u0301pargne","e\u0301patant","e\u0301paule","e\u0301picerie","e\u0301pide\u0301mie","e\u0301pier","e\u0301pilogue","e\u0301pine","e\u0301pisode","e\u0301pitaphe","e\u0301poque","e\u0301preuve","e\u0301prouver","e\u0301puisant","e\u0301querre","e\u0301quipe","e\u0301riger","e\u0301rosion","erreur","e\u0301ruption","escalier","espadon","espe\u0300ce","espie\u0300gle","espoir","esprit","esquiver","essayer","essence","essieu","essorer","estime","estomac","estrade","e\u0301tage\u0300re","e\u0301taler","e\u0301tanche","e\u0301tatique","e\u0301teindre","e\u0301tendoir","e\u0301ternel","e\u0301thanol","e\u0301thique","ethnie","e\u0301tirer","e\u0301toffer","e\u0301toile","e\u0301tonnant","e\u0301tourdir","e\u0301trange","e\u0301troit","e\u0301tude","euphorie","e\u0301valuer","e\u0301vasion","e\u0301ventail","e\u0301vidence","e\u0301viter","e\u0301volutif","e\u0301voquer","exact","exage\u0301rer","exaucer","exceller","excitant","exclusif","excuse","exe\u0301cuter","exemple","exercer","exhaler","exhorter","exigence","exiler","exister","exotique","expe\u0301dier","explorer","exposer","exprimer","exquis","extensif","extraire","exulter","fable","fabuleux","facette","facile","facture","faiblir","falaise","fameux","famille","farceur","farfelu","farine","farouche","fasciner","fatal","fatigue","faucon","fautif","faveur","favori","fe\u0301brile","fe\u0301conder","fe\u0301de\u0301rer","fe\u0301lin","femme","fe\u0301mur","fendoir","fe\u0301odal","fermer","fe\u0301roce","ferveur","festival","feuille","feutre","fe\u0301vrier","fiasco","ficeler","fictif","fide\u0300le","figure","filature","filetage","filie\u0300re","filleul","filmer","filou","filtrer","financer","finir","fiole","firme","fissure","fixer","flairer","flamme","flasque","flatteur","fle\u0301au","fle\u0300che","fleur","flexion","flocon","flore","fluctuer","fluide","fluvial","folie","fonderie","fongible","fontaine","forcer","forgeron","formuler","fortune","fossile","foudre","fouge\u0300re","fouiller","foulure","fourmi","fragile","fraise","franchir","frapper","frayeur","fre\u0301gate","freiner","frelon","fre\u0301mir","fre\u0301ne\u0301sie","fre\u0300re","friable","friction","frisson","frivole","froid","fromage","frontal","frotter","fruit","fugitif","fuite","fureur","furieux","furtif","fusion","futur","gagner","galaxie","galerie","gambader","garantir","gardien","garnir","garrigue","gazelle","gazon","ge\u0301ant","ge\u0301latine","ge\u0301lule","gendarme","ge\u0301ne\u0301ral","ge\u0301nie","genou","gentil","ge\u0301ologie","ge\u0301ome\u0300tre","ge\u0301ranium","germe","gestuel","geyser","gibier","gicler","girafe","givre","glace","glaive","glisser","globe","gloire","glorieux","golfeur","gomme","gonfler","gorge","gorille","goudron","gouffre","goulot","goupille","gourmand","goutte","graduel","graffiti","graine","grand","grappin","gratuit","gravir","grenat","griffure","griller","grimper","grogner","gronder","grotte","groupe","gruger","grutier","gruye\u0300re","gue\u0301pard","guerrier","guide","guimauve","guitare","gustatif","gymnaste","gyrostat","habitude","hachoir","halte","hameau","hangar","hanneton","haricot","harmonie","harpon","hasard","he\u0301lium","he\u0301matome","herbe","he\u0301risson","hermine","he\u0301ron","he\u0301siter","heureux","hiberner","hibou","hilarant","histoire","hiver","homard","hommage","homoge\u0300ne","honneur","honorer","honteux","horde","horizon","horloge","hormone","horrible","houleux","housse","hublot","huileux","humain","humble","humide","humour","hurler","hydromel","hygie\u0300ne","hymne","hypnose","idylle","ignorer","iguane","illicite","illusion","image","imbiber","imiter","immense","immobile","immuable","impact","impe\u0301rial","implorer","imposer","imprimer","imputer","incarner","incendie","incident","incliner","incolore","indexer","indice","inductif","ine\u0301dit","ineptie","inexact","infini","infliger","informer","infusion","inge\u0301rer","inhaler","inhiber","injecter","injure","innocent","inoculer","inonder","inscrire","insecte","insigne","insolite","inspirer","instinct","insulter","intact","intense","intime","intrigue","intuitif","inutile","invasion","inventer","inviter","invoquer","ironique","irradier","irre\u0301el","irriter","isoler","ivoire","ivresse","jaguar","jaillir","jambe","janvier","jardin","jauger","jaune","javelot","jetable","jeton","jeudi","jeunesse","joindre","joncher","jongler","joueur","jouissif","journal","jovial","joyau","joyeux","jubiler","jugement","junior","jupon","juriste","justice","juteux","juve\u0301nile","kayak","kimono","kiosque","label","labial","labourer","lace\u0301rer","lactose","lagune","laine","laisser","laitier","lambeau","lamelle","lampe","lanceur","langage","lanterne","lapin","largeur","larme","laurier","lavabo","lavoir","lecture","le\u0301gal","le\u0301ger","le\u0301gume","lessive","lettre","levier","lexique","le\u0301zard","liasse","libe\u0301rer","libre","licence","licorne","lie\u0300ge","lie\u0300vre","ligature","ligoter","ligue","limer","limite","limonade","limpide","line\u0301aire","lingot","lionceau","liquide","lisie\u0300re","lister","lithium","litige","littoral","livreur","logique","lointain","loisir","lombric","loterie","louer","lourd","loutre","louve","loyal","lubie","lucide","lucratif","lueur","lugubre","luisant","lumie\u0300re","lunaire","lundi","luron","lutter","luxueux","machine","magasin","magenta","magique","maigre","maillon","maintien","mairie","maison","majorer","malaxer","male\u0301fice","malheur","malice","mallette","mammouth","mandater","maniable","manquant","manteau","manuel","marathon","marbre","marchand","mardi","maritime","marqueur","marron","marteler","mascotte","massif","mate\u0301riel","matie\u0300re","matraque","maudire","maussade","mauve","maximal","me\u0301chant","me\u0301connu","me\u0301daille","me\u0301decin","me\u0301diter","me\u0301duse","meilleur","me\u0301lange","me\u0301lodie","membre","me\u0301moire","menacer","mener","menhir","mensonge","mentor","mercredi","me\u0301rite","merle","messager","mesure","me\u0301tal","me\u0301te\u0301ore","me\u0301thode","me\u0301tier","meuble","miauler","microbe","miette","mignon","migrer","milieu","million","mimique","mince","mine\u0301ral","minimal","minorer","minute","miracle","miroiter","missile","mixte","mobile","moderne","moelleux","mondial","moniteur","monnaie","monotone","monstre","montagne","monument","moqueur","morceau","morsure","mortier","moteur","motif","mouche","moufle","moulin","mousson","mouton","mouvant","multiple","munition","muraille","mure\u0300ne","murmure","muscle","muse\u0301um","musicien","mutation","muter","mutuel","myriade","myrtille","myste\u0300re","mythique","nageur","nappe","narquois","narrer","natation","nation","nature","naufrage","nautique","navire","ne\u0301buleux","nectar","ne\u0301faste","ne\u0301gation","ne\u0301gliger","ne\u0301gocier","neige","nerveux","nettoyer","neurone","neutron","neveu","niche","nickel","nitrate","niveau","noble","nocif","nocturne","noirceur","noisette","nomade","nombreux","nommer","normatif","notable","notifier","notoire","nourrir","nouveau","novateur","novembre","novice","nuage","nuancer","nuire","nuisible","nume\u0301ro","nuptial","nuque","nutritif","obe\u0301ir","objectif","obliger","obscur","observer","obstacle","obtenir","obturer","occasion","occuper","oce\u0301an","octobre","octroyer","octupler","oculaire","odeur","odorant","offenser","officier","offrir","ogive","oiseau","oisillon","olfactif","olivier","ombrage","omettre","onctueux","onduler","one\u0301reux","onirique","opale","opaque","ope\u0301rer","opinion","opportun","opprimer","opter","optique","orageux","orange","orbite","ordonner","oreille","organe","orgueil","orifice","ornement","orque","ortie","osciller","osmose","ossature","otarie","ouragan","ourson","outil","outrager","ouvrage","ovation","oxyde","oxyge\u0300ne","ozone","paisible","palace","palmare\u0300s","palourde","palper","panache","panda","pangolin","paniquer","panneau","panorama","pantalon","papaye","papier","papoter","papyrus","paradoxe","parcelle","paresse","parfumer","parler","parole","parrain","parsemer","partager","parure","parvenir","passion","paste\u0300que","paternel","patience","patron","pavillon","pavoiser","payer","paysage","peigne","peintre","pelage","pe\u0301lican","pelle","pelouse","peluche","pendule","pe\u0301ne\u0301trer","pe\u0301nible","pensif","pe\u0301nurie","pe\u0301pite","pe\u0301plum","perdrix","perforer","pe\u0301riode","permuter","perplexe","persil","perte","peser","pe\u0301tale","petit","pe\u0301trir","peuple","pharaon","phobie","phoque","photon","phrase","physique","piano","pictural","pie\u0300ce","pierre","pieuvre","pilote","pinceau","pipette","piquer","pirogue","piscine","piston","pivoter","pixel","pizza","placard","plafond","plaisir","planer","plaque","plastron","plateau","pleurer","plexus","pliage","plomb","plonger","pluie","plumage","pochette","poe\u0301sie","poe\u0300te","pointe","poirier","poisson","poivre","polaire","policier","pollen","polygone","pommade","pompier","ponctuel","ponde\u0301rer","poney","portique","position","posse\u0301der","posture","potager","poteau","potion","pouce","poulain","poumon","pourpre","poussin","pouvoir","prairie","pratique","pre\u0301cieux","pre\u0301dire","pre\u0301fixe","pre\u0301lude","pre\u0301nom","pre\u0301sence","pre\u0301texte","pre\u0301voir","primitif","prince","prison","priver","proble\u0300me","proce\u0301der","prodige","profond","progre\u0300s","proie","projeter","prologue","promener","propre","prospe\u0300re","prote\u0301ger","prouesse","proverbe","prudence","pruneau","psychose","public","puceron","puiser","pulpe","pulsar","punaise","punitif","pupitre","purifier","puzzle","pyramide","quasar","querelle","question","quie\u0301tude","quitter","quotient","racine","raconter","radieux","ragondin","raideur","raisin","ralentir","rallonge","ramasser","rapide","rasage","ratisser","ravager","ravin","rayonner","re\u0301actif","re\u0301agir","re\u0301aliser","re\u0301animer","recevoir","re\u0301citer","re\u0301clamer","re\u0301colter","recruter","reculer","recycler","re\u0301diger","redouter","refaire","re\u0301flexe","re\u0301former","refrain","refuge","re\u0301galien","re\u0301gion","re\u0301glage","re\u0301gulier","re\u0301ite\u0301rer","rejeter","rejouer","relatif","relever","relief","remarque","reme\u0300de","remise","remonter","remplir","remuer","renard","renfort","renifler","renoncer","rentrer","renvoi","replier","reporter","reprise","reptile","requin","re\u0301serve","re\u0301sineux","re\u0301soudre","respect","rester","re\u0301sultat","re\u0301tablir","retenir","re\u0301ticule","retomber","retracer","re\u0301union","re\u0301ussir","revanche","revivre","re\u0301volte","re\u0301vulsif","richesse","rideau","rieur","rigide","rigoler","rincer","riposter","risible","risque","rituel","rival","rivie\u0300re","rocheux","romance","rompre","ronce","rondin","roseau","rosier","rotatif","rotor","rotule","rouge","rouille","rouleau","routine","royaume","ruban","rubis","ruche","ruelle","rugueux","ruiner","ruisseau","ruser","rustique","rythme","sabler","saboter","sabre","sacoche","safari","sagesse","saisir","salade","salive","salon","saluer","samedi","sanction","sanglier","sarcasme","sardine","saturer","saugrenu","saumon","sauter","sauvage","savant","savonner","scalpel","scandale","sce\u0301le\u0301rat","sce\u0301nario","sceptre","sche\u0301ma","science","scinder","score","scrutin","sculpter","se\u0301ance","se\u0301cable","se\u0301cher","secouer","se\u0301cre\u0301ter","se\u0301datif","se\u0301duire","seigneur","se\u0301jour","se\u0301lectif","semaine","sembler","semence","se\u0301minal","se\u0301nateur","sensible","sentence","se\u0301parer","se\u0301quence","serein","sergent","se\u0301rieux","serrure","se\u0301rum","service","se\u0301same","se\u0301vir","sevrage","sextuple","side\u0301ral","sie\u0300cle","sie\u0301ger","siffler","sigle","signal","silence","silicium","simple","since\u0300re","sinistre","siphon","sirop","sismique","situer","skier","social","socle","sodium","soigneux","soldat","soleil","solitude","soluble","sombre","sommeil","somnoler","sonde","songeur","sonnette","sonore","sorcier","sortir","sosie","sottise","soucieux","soudure","souffle","soulever","soupape","source","soutirer","souvenir","spacieux","spatial","spe\u0301cial","sphe\u0300re","spiral","stable","station","sternum","stimulus","stipuler","strict","studieux","stupeur","styliste","sublime","substrat","subtil","subvenir","succe\u0300s","sucre","suffixe","sugge\u0301rer","suiveur","sulfate","superbe","supplier","surface","suricate","surmener","surprise","sursaut","survie","suspect","syllabe","symbole","syme\u0301trie","synapse","syntaxe","syste\u0300me","tabac","tablier","tactile","tailler","talent","talisman","talonner","tambour","tamiser","tangible","tapis","taquiner","tarder","tarif","tartine","tasse","tatami","tatouage","taupe","taureau","taxer","te\u0301moin","temporel","tenaille","tendre","teneur","tenir","tension","terminer","terne","terrible","te\u0301tine","texte","the\u0300me","the\u0301orie","the\u0301rapie","thorax","tibia","tie\u0300de","timide","tirelire","tiroir","tissu","titane","titre","tituber","toboggan","tole\u0301rant","tomate","tonique","tonneau","toponyme","torche","tordre","tornade","torpille","torrent","torse","tortue","totem","toucher","tournage","tousser","toxine","traction","trafic","tragique","trahir","train","trancher","travail","tre\u0300fle","tremper","tre\u0301sor","treuil","triage","tribunal","tricoter","trilogie","triomphe","tripler","triturer","trivial","trombone","tronc","tropical","troupeau","tuile","tulipe","tumulte","tunnel","turbine","tuteur","tutoyer","tuyau","tympan","typhon","typique","tyran","ubuesque","ultime","ultrason","unanime","unifier","union","unique","unitaire","univers","uranium","urbain","urticant","usage","usine","usuel","usure","utile","utopie","vacarme","vaccin","vagabond","vague","vaillant","vaincre","vaisseau","valable","valise","vallon","valve","vampire","vanille","vapeur","varier","vaseux","vassal","vaste","vecteur","vedette","ve\u0301ge\u0301tal","ve\u0301hicule","veinard","ve\u0301loce","vendredi","ve\u0301ne\u0301rer","venger","venimeux","ventouse","verdure","ve\u0301rin","vernir","verrou","verser","vertu","veston","ve\u0301te\u0301ran","ve\u0301tuste","vexant","vexer","viaduc","viande","victoire","vidange","vide\u0301o","vignette","vigueur","vilain","village","vinaigre","violon","vipe\u0300re","virement","virtuose","virus","visage","viseur","vision","visqueux","visuel","vital","vitesse","viticole","vitrine","vivace","vivipare","vocation","voguer","voile","voisin","voiture","volaille","volcan","voltiger","volume","vorace","vortex","voter","vouloir","voyage","voyelle","wagon","xe\u0301non","yacht","ze\u0300bre","ze\u0301nith","zeste","zoologie"]')},2841:e=>{"use strict";e.exports=JSON.parse('["abaco","abbaglio","abbinato","abete","abisso","abolire","abrasivo","abrogato","accadere","accenno","accusato","acetone","achille","acido","acqua","acre","acrilico","acrobata","acuto","adagio","addebito","addome","adeguato","aderire","adipe","adottare","adulare","affabile","affetto","affisso","affranto","aforisma","afoso","africano","agave","agente","agevole","aggancio","agire","agitare","agonismo","agricolo","agrumeto","aguzzo","alabarda","alato","albatro","alberato","albo","albume","alce","alcolico","alettone","alfa","algebra","aliante","alibi","alimento","allagato","allegro","allievo","allodola","allusivo","almeno","alogeno","alpaca","alpestre","altalena","alterno","alticcio","altrove","alunno","alveolo","alzare","amalgama","amanita","amarena","ambito","ambrato","ameba","america","ametista","amico","ammasso","ammenda","ammirare","ammonito","amore","ampio","ampliare","amuleto","anacardo","anagrafe","analista","anarchia","anatra","anca","ancella","ancora","andare","andrea","anello","angelo","angolare","angusto","anima","annegare","annidato","anno","annuncio","anonimo","anticipo","anzi","apatico","apertura","apode","apparire","appetito","appoggio","approdo","appunto","aprile","arabica","arachide","aragosta","araldica","arancio","aratura","arazzo","arbitro","archivio","ardito","arenile","argento","argine","arguto","aria","armonia","arnese","arredato","arringa","arrosto","arsenico","arso","artefice","arzillo","asciutto","ascolto","asepsi","asettico","asfalto","asino","asola","aspirato","aspro","assaggio","asse","assoluto","assurdo","asta","astenuto","astice","astratto","atavico","ateismo","atomico","atono","attesa","attivare","attorno","attrito","attuale","ausilio","austria","autista","autonomo","autunno","avanzato","avere","avvenire","avviso","avvolgere","azione","azoto","azzimo","azzurro","babele","baccano","bacino","baco","badessa","badilata","bagnato","baita","balcone","baldo","balena","ballata","balzano","bambino","bandire","baraonda","barbaro","barca","baritono","barlume","barocco","basilico","basso","batosta","battuto","baule","bava","bavosa","becco","beffa","belgio","belva","benda","benevole","benigno","benzina","bere","berlina","beta","bibita","bici","bidone","bifido","biga","bilancia","bimbo","binocolo","biologo","bipede","bipolare","birbante","birra","biscotto","bisesto","bisnonno","bisonte","bisturi","bizzarro","blando","blatta","bollito","bonifico","bordo","bosco","botanico","bottino","bozzolo","braccio","bradipo","brama","branca","bravura","bretella","brevetto","brezza","briglia","brillante","brindare","broccolo","brodo","bronzina","brullo","bruno","bubbone","buca","budino","buffone","buio","bulbo","buono","burlone","burrasca","bussola","busta","cadetto","caduco","calamaro","calcolo","calesse","calibro","calmo","caloria","cambusa","camerata","camicia","cammino","camola","campale","canapa","candela","cane","canino","canotto","cantina","capace","capello","capitolo","capogiro","cappero","capra","capsula","carapace","carcassa","cardo","carisma","carovana","carretto","cartolina","casaccio","cascata","caserma","caso","cassone","castello","casuale","catasta","catena","catrame","cauto","cavillo","cedibile","cedrata","cefalo","celebre","cellulare","cena","cenone","centesimo","ceramica","cercare","certo","cerume","cervello","cesoia","cespo","ceto","chela","chiaro","chicca","chiedere","chimera","china","chirurgo","chitarra","ciao","ciclismo","cifrare","cigno","cilindro","ciottolo","circa","cirrosi","citrico","cittadino","ciuffo","civetta","civile","classico","clinica","cloro","cocco","codardo","codice","coerente","cognome","collare","colmato","colore","colposo","coltivato","colza","coma","cometa","commando","comodo","computer","comune","conciso","condurre","conferma","congelare","coniuge","connesso","conoscere","consumo","continuo","convegno","coperto","copione","coppia","copricapo","corazza","cordata","coricato","cornice","corolla","corpo","corredo","corsia","cortese","cosmico","costante","cottura","covato","cratere","cravatta","creato","credere","cremoso","crescita","creta","criceto","crinale","crisi","critico","croce","cronaca","crostata","cruciale","crusca","cucire","cuculo","cugino","cullato","cupola","curatore","cursore","curvo","cuscino","custode","dado","daino","dalmata","damerino","daniela","dannoso","danzare","datato","davanti","davvero","debutto","decennio","deciso","declino","decollo","decreto","dedicato","definito","deforme","degno","delegare","delfino","delirio","delta","demenza","denotato","dentro","deposito","derapata","derivare","deroga","descritto","deserto","desiderio","desumere","detersivo","devoto","diametro","dicembre","diedro","difeso","diffuso","digerire","digitale","diluvio","dinamico","dinnanzi","dipinto","diploma","dipolo","diradare","dire","dirotto","dirupo","disagio","discreto","disfare","disgelo","disposto","distanza","disumano","dito","divano","divelto","dividere","divorato","doblone","docente","doganale","dogma","dolce","domato","domenica","dominare","dondolo","dono","dormire","dote","dottore","dovuto","dozzina","drago","druido","dubbio","dubitare","ducale","duna","duomo","duplice","duraturo","ebano","eccesso","ecco","eclissi","economia","edera","edicola","edile","editoria","educare","egemonia","egli","egoismo","egregio","elaborato","elargire","elegante","elencato","eletto","elevare","elfico","elica","elmo","elsa","eluso","emanato","emblema","emesso","emiro","emotivo","emozione","empirico","emulo","endemico","enduro","energia","enfasi","enoteca","entrare","enzima","epatite","epilogo","episodio","epocale","eppure","equatore","erario","erba","erboso","erede","eremita","erigere","ermetico","eroe","erosivo","errante","esagono","esame","esanime","esaudire","esca","esempio","esercito","esibito","esigente","esistere","esito","esofago","esortato","esoso","espanso","espresso","essenza","esso","esteso","estimare","estonia","estroso","esultare","etilico","etnico","etrusco","etto","euclideo","europa","evaso","evidenza","evitato","evoluto","evviva","fabbrica","faccenda","fachiro","falco","famiglia","fanale","fanfara","fango","fantasma","fare","farfalla","farinoso","farmaco","fascia","fastoso","fasullo","faticare","fato","favoloso","febbre","fecola","fede","fegato","felpa","feltro","femmina","fendere","fenomeno","fermento","ferro","fertile","fessura","festivo","fetta","feudo","fiaba","fiducia","fifa","figurato","filo","finanza","finestra","finire","fiore","fiscale","fisico","fiume","flacone","flamenco","flebo","flemma","florido","fluente","fluoro","fobico","focaccia","focoso","foderato","foglio","folata","folclore","folgore","fondente","fonetico","fonia","fontana","forbito","forchetta","foresta","formica","fornaio","foro","fortezza","forzare","fosfato","fosso","fracasso","frana","frassino","fratello","freccetta","frenata","fresco","frigo","frollino","fronde","frugale","frutta","fucilata","fucsia","fuggente","fulmine","fulvo","fumante","fumetto","fumoso","fune","funzione","fuoco","furbo","furgone","furore","fuso","futile","gabbiano","gaffe","galateo","gallina","galoppo","gambero","gamma","garanzia","garbo","garofano","garzone","gasdotto","gasolio","gastrico","gatto","gaudio","gazebo","gazzella","geco","gelatina","gelso","gemello","gemmato","gene","genitore","gennaio","genotipo","gergo","ghepardo","ghiaccio","ghisa","giallo","gilda","ginepro","giocare","gioiello","giorno","giove","girato","girone","gittata","giudizio","giurato","giusto","globulo","glutine","gnomo","gobba","golf","gomito","gommone","gonfio","gonna","governo","gracile","grado","grafico","grammo","grande","grattare","gravoso","grazia","greca","gregge","grifone","grigio","grinza","grotta","gruppo","guadagno","guaio","guanto","guardare","gufo","guidare","ibernato","icona","identico","idillio","idolo","idra","idrico","idrogeno","igiene","ignaro","ignorato","ilare","illeso","illogico","illudere","imballo","imbevuto","imbocco","imbuto","immane","immerso","immolato","impacco","impeto","impiego","importo","impronta","inalare","inarcare","inattivo","incanto","incendio","inchino","incisivo","incluso","incontro","incrocio","incubo","indagine","india","indole","inedito","infatti","infilare","inflitto","ingaggio","ingegno","inglese","ingordo","ingrosso","innesco","inodore","inoltrare","inondato","insano","insetto","insieme","insonnia","insulina","intasato","intero","intonaco","intuito","inumidire","invalido","invece","invito","iperbole","ipnotico","ipotesi","ippica","iride","irlanda","ironico","irrigato","irrorare","isolato","isotopo","isterico","istituto","istrice","italia","iterare","labbro","labirinto","lacca","lacerato","lacrima","lacuna","laddove","lago","lampo","lancetta","lanterna","lardoso","larga","laringe","lastra","latenza","latino","lattuga","lavagna","lavoro","legale","leggero","lembo","lentezza","lenza","leone","lepre","lesivo","lessato","lesto","letterale","leva","levigato","libero","lido","lievito","lilla","limatura","limitare","limpido","lineare","lingua","liquido","lira","lirica","lisca","lite","litigio","livrea","locanda","lode","logica","lombare","londra","longevo","loquace","lorenzo","loto","lotteria","luce","lucidato","lumaca","luminoso","lungo","lupo","luppolo","lusinga","lusso","lutto","macabro","macchina","macero","macinato","madama","magico","maglia","magnete","magro","maiolica","malafede","malgrado","malinteso","malsano","malto","malumore","mana","mancia","mandorla","mangiare","manifesto","mannaro","manovra","mansarda","mantide","manubrio","mappa","maratona","marcire","maretta","marmo","marsupio","maschera","massaia","mastino","materasso","matricola","mattone","maturo","mazurca","meandro","meccanico","mecenate","medesimo","meditare","mega","melassa","melis","melodia","meninge","meno","mensola","mercurio","merenda","merlo","meschino","mese","messere","mestolo","metallo","metodo","mettere","miagolare","mica","micelio","michele","microbo","midollo","miele","migliore","milano","milite","mimosa","minerale","mini","minore","mirino","mirtillo","miscela","missiva","misto","misurare","mitezza","mitigare","mitra","mittente","mnemonico","modello","modifica","modulo","mogano","mogio","mole","molosso","monastero","monco","mondina","monetario","monile","monotono","monsone","montato","monviso","mora","mordere","morsicato","mostro","motivato","motosega","motto","movenza","movimento","mozzo","mucca","mucosa","muffa","mughetto","mugnaio","mulatto","mulinello","multiplo","mummia","munto","muovere","murale","musa","muscolo","musica","mutevole","muto","nababbo","nafta","nanometro","narciso","narice","narrato","nascere","nastrare","naturale","nautica","naviglio","nebulosa","necrosi","negativo","negozio","nemmeno","neofita","neretto","nervo","nessuno","nettuno","neutrale","neve","nevrotico","nicchia","ninfa","nitido","nobile","nocivo","nodo","nome","nomina","nordico","normale","norvegese","nostrano","notare","notizia","notturno","novella","nucleo","nulla","numero","nuovo","nutrire","nuvola","nuziale","oasi","obbedire","obbligo","obelisco","oblio","obolo","obsoleto","occasione","occhio","occidente","occorrere","occultare","ocra","oculato","odierno","odorare","offerta","offrire","offuscato","oggetto","oggi","ognuno","olandese","olfatto","oliato","oliva","ologramma","oltre","omaggio","ombelico","ombra","omega","omissione","ondoso","onere","onice","onnivoro","onorevole","onta","operato","opinione","opposto","oracolo","orafo","ordine","orecchino","orefice","orfano","organico","origine","orizzonte","orma","ormeggio","ornativo","orologio","orrendo","orribile","ortensia","ortica","orzata","orzo","osare","oscurare","osmosi","ospedale","ospite","ossa","ossidare","ostacolo","oste","otite","otre","ottagono","ottimo","ottobre","ovale","ovest","ovino","oviparo","ovocito","ovunque","ovviare","ozio","pacchetto","pace","pacifico","padella","padrone","paese","paga","pagina","palazzina","palesare","pallido","palo","palude","pandoro","pannello","paolo","paonazzo","paprica","parabola","parcella","parere","pargolo","pari","parlato","parola","partire","parvenza","parziale","passivo","pasticca","patacca","patologia","pattume","pavone","peccato","pedalare","pedonale","peggio","peloso","penare","pendice","penisola","pennuto","penombra","pensare","pentola","pepe","pepita","perbene","percorso","perdonato","perforare","pergamena","periodo","permesso","perno","perplesso","persuaso","pertugio","pervaso","pesatore","pesista","peso","pestifero","petalo","pettine","petulante","pezzo","piacere","pianta","piattino","piccino","picozza","piega","pietra","piffero","pigiama","pigolio","pigro","pila","pilifero","pillola","pilota","pimpante","pineta","pinna","pinolo","pioggia","piombo","piramide","piretico","pirite","pirolisi","pitone","pizzico","placebo","planare","plasma","platano","plenario","pochezza","poderoso","podismo","poesia","poggiare","polenta","poligono","pollice","polmonite","polpetta","polso","poltrona","polvere","pomice","pomodoro","ponte","popoloso","porfido","poroso","porpora","porre","portata","posa","positivo","possesso","postulato","potassio","potere","pranzo","prassi","pratica","precluso","predica","prefisso","pregiato","prelievo","premere","prenotare","preparato","presenza","pretesto","prevalso","prima","principe","privato","problema","procura","produrre","profumo","progetto","prolunga","promessa","pronome","proposta","proroga","proteso","prova","prudente","prugna","prurito","psiche","pubblico","pudica","pugilato","pugno","pulce","pulito","pulsante","puntare","pupazzo","pupilla","puro","quadro","qualcosa","quasi","querela","quota","raccolto","raddoppio","radicale","radunato","raffica","ragazzo","ragione","ragno","ramarro","ramingo","ramo","randagio","rantolare","rapato","rapina","rappreso","rasatura","raschiato","rasente","rassegna","rastrello","rata","ravveduto","reale","recepire","recinto","recluta","recondito","recupero","reddito","redimere","regalato","registro","regola","regresso","relazione","remare","remoto","renna","replica","reprimere","reputare","resa","residente","responso","restauro","rete","retina","retorica","rettifica","revocato","riassunto","ribadire","ribelle","ribrezzo","ricarica","ricco","ricevere","riciclato","ricordo","ricreduto","ridicolo","ridurre","rifasare","riflesso","riforma","rifugio","rigare","rigettato","righello","rilassato","rilevato","rimanere","rimbalzo","rimedio","rimorchio","rinascita","rincaro","rinforzo","rinnovo","rinomato","rinsavito","rintocco","rinuncia","rinvenire","riparato","ripetuto","ripieno","riportare","ripresa","ripulire","risata","rischio","riserva","risibile","riso","rispetto","ristoro","risultato","risvolto","ritardo","ritegno","ritmico","ritrovo","riunione","riva","riverso","rivincita","rivolto","rizoma","roba","robotico","robusto","roccia","roco","rodaggio","rodere","roditore","rogito","rollio","romantico","rompere","ronzio","rosolare","rospo","rotante","rotondo","rotula","rovescio","rubizzo","rubrica","ruga","rullino","rumine","rumoroso","ruolo","rupe","russare","rustico","sabato","sabbiare","sabotato","sagoma","salasso","saldatura","salgemma","salivare","salmone","salone","saltare","saluto","salvo","sapere","sapido","saporito","saraceno","sarcasmo","sarto","sassoso","satellite","satira","satollo","saturno","savana","savio","saziato","sbadiglio","sbalzo","sbancato","sbarra","sbattere","sbavare","sbendare","sbirciare","sbloccato","sbocciato","sbrinare","sbruffone","sbuffare","scabroso","scadenza","scala","scambiare","scandalo","scapola","scarso","scatenare","scavato","scelto","scenico","scettro","scheda","schiena","sciarpa","scienza","scindere","scippo","sciroppo","scivolo","sclerare","scodella","scolpito","scomparto","sconforto","scoprire","scorta","scossone","scozzese","scriba","scrollare","scrutinio","scuderia","scultore","scuola","scuro","scusare","sdebitare","sdoganare","seccatura","secondo","sedano","seggiola","segnalato","segregato","seguito","selciato","selettivo","sella","selvaggio","semaforo","sembrare","seme","seminato","sempre","senso","sentire","sepolto","sequenza","serata","serbato","sereno","serio","serpente","serraglio","servire","sestina","setola","settimana","sfacelo","sfaldare","sfamato","sfarzoso","sfaticato","sfera","sfida","sfilato","sfinge","sfocato","sfoderare","sfogo","sfoltire","sforzato","sfratto","sfruttato","sfuggito","sfumare","sfuso","sgabello","sgarbato","sgonfiare","sgorbio","sgrassato","sguardo","sibilo","siccome","sierra","sigla","signore","silenzio","sillaba","simbolo","simpatico","simulato","sinfonia","singolo","sinistro","sino","sintesi","sinusoide","sipario","sisma","sistole","situato","slitta","slogatura","sloveno","smarrito","smemorato","smentito","smeraldo","smilzo","smontare","smottato","smussato","snellire","snervato","snodo","sobbalzo","sobrio","soccorso","sociale","sodale","soffitto","sogno","soldato","solenne","solido","sollazzo","solo","solubile","solvente","somatico","somma","sonda","sonetto","sonnifero","sopire","soppeso","sopra","sorgere","sorpasso","sorriso","sorso","sorteggio","sorvolato","sospiro","sosta","sottile","spada","spalla","spargere","spatola","spavento","spazzola","specie","spedire","spegnere","spelatura","speranza","spessore","spettrale","spezzato","spia","spigoloso","spillato","spinoso","spirale","splendido","sportivo","sposo","spranga","sprecare","spronato","spruzzo","spuntino","squillo","sradicare","srotolato","stabile","stacco","staffa","stagnare","stampato","stantio","starnuto","stasera","statuto","stelo","steppa","sterzo","stiletto","stima","stirpe","stivale","stizzoso","stonato","storico","strappo","stregato","stridulo","strozzare","strutto","stuccare","stufo","stupendo","subentro","succoso","sudore","suggerito","sugo","sultano","suonare","superbo","supporto","surgelato","surrogato","sussurro","sutura","svagare","svedese","sveglio","svelare","svenuto","svezia","sviluppo","svista","svizzera","svolta","svuotare","tabacco","tabulato","tacciare","taciturno","tale","talismano","tampone","tannino","tara","tardivo","targato","tariffa","tarpare","tartaruga","tasto","tattico","taverna","tavolata","tazza","teca","tecnico","telefono","temerario","tempo","temuto","tendone","tenero","tensione","tentacolo","teorema","terme","terrazzo","terzetto","tesi","tesserato","testato","tetro","tettoia","tifare","tigella","timbro","tinto","tipico","tipografo","tiraggio","tiro","titanio","titolo","titubante","tizio","tizzone","toccare","tollerare","tolto","tombola","tomo","tonfo","tonsilla","topazio","topologia","toppa","torba","tornare","torrone","tortora","toscano","tossire","tostatura","totano","trabocco","trachea","trafila","tragedia","tralcio","tramonto","transito","trapano","trarre","trasloco","trattato","trave","treccia","tremolio","trespolo","tributo","tricheco","trifoglio","trillo","trincea","trio","tristezza","triturato","trivella","tromba","trono","troppo","trottola","trovare","truccato","tubatura","tuffato","tulipano","tumulto","tunisia","turbare","turchino","tuta","tutela","ubicato","uccello","uccisore","udire","uditivo","uffa","ufficio","uguale","ulisse","ultimato","umano","umile","umorismo","uncinetto","ungere","ungherese","unicorno","unificato","unisono","unitario","unte","uovo","upupa","uragano","urgenza","urlo","usanza","usato","uscito","usignolo","usuraio","utensile","utilizzo","utopia","vacante","vaccinato","vagabondo","vagliato","valanga","valgo","valico","valletta","valoroso","valutare","valvola","vampata","vangare","vanitoso","vano","vantaggio","vanvera","vapore","varano","varcato","variante","vasca","vedetta","vedova","veduto","vegetale","veicolo","velcro","velina","velluto","veloce","venato","vendemmia","vento","verace","verbale","vergogna","verifica","vero","verruca","verticale","vescica","vessillo","vestale","veterano","vetrina","vetusto","viandante","vibrante","vicenda","vichingo","vicinanza","vidimare","vigilia","vigneto","vigore","vile","villano","vimini","vincitore","viola","vipera","virgola","virologo","virulento","viscoso","visione","vispo","vissuto","visura","vita","vitello","vittima","vivanda","vivido","viziare","voce","voga","volatile","volere","volpe","voragine","vulcano","zampogna","zanna","zappato","zattera","zavorra","zefiro","zelante","zelo","zenzero","zerbino","zibetto","zinco","zircone","zitto","zolla","zotico","zucchero","zufolo","zulu","zuppa"]')},4472:e=>{"use strict";e.exports=JSON.parse('["\u3042\u3044\u3053\u304f\u3057\u3093","\u3042\u3044\u3055\u3064","\u3042\u3044\u305f\u3099","\u3042\u304a\u305d\u3099\u3089","\u3042\u304b\u3061\u3083\u3093","\u3042\u304d\u308b","\u3042\u3051\u304b\u3099\u305f","\u3042\u3051\u308b","\u3042\u3053\u304b\u3099\u308c\u308b","\u3042\u3055\u3044","\u3042\u3055\u3072","\u3042\u3057\u3042\u3068","\u3042\u3057\u3099\u308f\u3046","\u3042\u3059\u3099\u304b\u308b","\u3042\u3059\u3099\u304d","\u3042\u305d\u3075\u3099","\u3042\u305f\u3048\u308b","\u3042\u305f\u305f\u3081\u308b","\u3042\u305f\u308a\u307e\u3048","\u3042\u305f\u308b","\u3042\u3064\u3044","\u3042\u3064\u304b\u3046","\u3042\u3063\u3057\u3085\u304f","\u3042\u3064\u307e\u308a","\u3042\u3064\u3081\u308b","\u3042\u3066\u306a","\u3042\u3066\u306f\u307e\u308b","\u3042\u3072\u308b","\u3042\u3075\u3099\u3089","\u3042\u3075\u3099\u308b","\u3042\u3075\u308c\u308b","\u3042\u307e\u3044","\u3042\u307e\u3068\u3099","\u3042\u307e\u3084\u304b\u3059","\u3042\u307e\u308a","\u3042\u307f\u3082\u306e","\u3042\u3081\u308a\u304b","\u3042\u3084\u307e\u308b","\u3042\u3086\u3080","\u3042\u3089\u3044\u304f\u3099\u307e","\u3042\u3089\u3057","\u3042\u3089\u3059\u3057\u3099","\u3042\u3089\u305f\u3081\u308b","\u3042\u3089\u3086\u308b","\u3042\u3089\u308f\u3059","\u3042\u308a\u304b\u3099\u3068\u3046","\u3042\u308f\u305b\u308b","\u3042\u308f\u3066\u308b","\u3042\u3093\u3044","\u3042\u3093\u304b\u3099\u3044","\u3042\u3093\u3053","\u3042\u3093\u305b\u3099\u3093","\u3042\u3093\u3066\u3044","\u3042\u3093\u306a\u3044","\u3042\u3093\u307e\u308a","\u3044\u3044\u305f\u3099\u3059","\u3044\u304a\u3093","\u3044\u304b\u3099\u3044","\u3044\u304b\u3099\u304f","\u3044\u304d\u304a\u3044","\u3044\u304d\u306a\u308a","\u3044\u304d\u3082\u306e","\u3044\u304d\u308b","\u3044\u304f\u3057\u3099","\u3044\u304f\u3075\u3099\u3093","\u3044\u3051\u306f\u3099\u306a","\u3044\u3051\u3093","\u3044\u3053\u3046","\u3044\u3053\u304f","\u3044\u3053\u3064","\u3044\u3055\u307e\u3057\u3044","\u3044\u3055\u3093","\u3044\u3057\u304d","\u3044\u3057\u3099\u3085\u3046","\u3044\u3057\u3099\u3087\u3046","\u3044\u3057\u3099\u308f\u308b","\u3044\u3059\u3099\u307f","\u3044\u3059\u3099\u308c","\u3044\u305b\u3044","\u3044\u305b\u3048\u3072\u3099","\u3044\u305b\u304b\u3044","\u3044\u305b\u304d","\u3044\u305b\u3099\u3093","\u3044\u305d\u3046\u308d\u3046","\u3044\u305d\u304b\u3099\u3057\u3044","\u3044\u305f\u3099\u3044","\u3044\u305f\u3099\u304f","\u3044\u305f\u3059\u3099\u3089","\u3044\u305f\u307f","\u3044\u305f\u308a\u3042","\u3044\u3061\u304a\u3046","\u3044\u3061\u3057\u3099","\u3044\u3061\u3068\u3099","\u3044\u3061\u306f\u3099","\u3044\u3061\u3075\u3099","\u3044\u3061\u308a\u3085\u3046","\u3044\u3064\u304b","\u3044\u3063\u3057\u3085\u3093","\u3044\u3063\u305b\u3044","\u3044\u3063\u305d\u3046","\u3044\u3063\u305f\u3093","\u3044\u3063\u3061","\u3044\u3063\u3066\u3044","\u3044\u3063\u307b\u309a\u3046","\u3044\u3066\u3055\u3099","\u3044\u3066\u3093","\u3044\u3068\u3099\u3046","\u3044\u3068\u3053","\u3044\u306a\u3044","\u3044\u306a\u304b","\u3044\u306d\u3080\u308a","\u3044\u306e\u3061","\u3044\u306e\u308b","\u3044\u306f\u3064","\u3044\u306f\u3099\u308b","\u3044\u306f\u3093","\u3044\u3072\u3099\u304d","\u3044\u3072\u3093","\u3044\u3075\u304f","\u3044\u3078\u3093","\u3044\u307b\u3046","\u3044\u307f\u3093","\u3044\u3082\u3046\u3068","\u3044\u3082\u305f\u308c","\u3044\u3082\u308a","\u3044\u3084\u304b\u3099\u308b","\u3044\u3084\u3059","\u3044\u3088\u304b\u3093","\u3044\u3088\u304f","\u3044\u3089\u3044","\u3044\u3089\u3059\u3068","\u3044\u308a\u304f\u3099\u3061","\u3044\u308a\u3087\u3046","\u3044\u308c\u3044","\u3044\u308c\u3082\u306e","\u3044\u308c\u308b","\u3044\u308d\u3048\u3093\u3072\u309a\u3064","\u3044\u308f\u3044","\u3044\u308f\u3046","\u3044\u308f\u304b\u3093","\u3044\u308f\u306f\u3099","\u3044\u308f\u3086\u308b","\u3044\u3093\u3051\u3099\u3093\u307e\u3081","\u3044\u3093\u3055\u3064","\u3044\u3093\u3057\u3087\u3046","\u3044\u3093\u3088\u3046","\u3046\u3048\u304d","\u3046\u3048\u308b","\u3046\u304a\u3055\u3099","\u3046\u304b\u3099\u3044","\u3046\u304b\u3075\u3099","\u3046\u304b\u3078\u3099\u308b","\u3046\u304d\u308f","\u3046\u304f\u3089\u3044\u306a","\u3046\u304f\u308c\u308c","\u3046\u3051\u305f\u307e\u308f\u308b","\u3046\u3051\u3064\u3051","\u3046\u3051\u3068\u308b","\u3046\u3051\u3082\u3064","\u3046\u3051\u308b","\u3046\u3053\u3099\u304b\u3059","\u3046\u3053\u3099\u304f","\u3046\u3053\u3093","\u3046\u3055\u304d\u3099","\u3046\u3057\u306a\u3046","\u3046\u3057\u308d\u304b\u3099\u307f","\u3046\u3059\u3044","\u3046\u3059\u304d\u3099","\u3046\u3059\u304f\u3099\u3089\u3044","\u3046\u3059\u3081\u308b","\u3046\u305b\u3064","\u3046\u3061\u3042\u308f\u305b","\u3046\u3061\u304b\u3099\u308f","\u3046\u3061\u304d","\u3046\u3061\u3085\u3046","\u3046\u3063\u304b\u308a","\u3046\u3064\u304f\u3057\u3044","\u3046\u3063\u305f\u3048\u308b","\u3046\u3064\u308b","\u3046\u3068\u3099\u3093","\u3046\u306a\u304d\u3099","\u3046\u306a\u3057\u3099","\u3046\u306a\u3059\u3099\u304f","\u3046\u306a\u308b","\u3046\u306d\u308b","\u3046\u306e\u3046","\u3046\u3075\u3099\u3051\u3099","\u3046\u3075\u3099\u3053\u3099\u3048","\u3046\u307e\u308c\u308b","\u3046\u3081\u308b","\u3046\u3082\u3046","\u3046\u3084\u307e\u3046","\u3046\u3088\u304f","\u3046\u3089\u304b\u3099\u3048\u3059","\u3046\u3089\u304f\u3099\u3061","\u3046\u3089\u306a\u3044","\u3046\u308a\u3042\u3051\u3099","\u3046\u308a\u304d\u308c","\u3046\u308b\u3055\u3044","\u3046\u308c\u3057\u3044","\u3046\u308c\u3086\u304d","\u3046\u308c\u308b","\u3046\u308d\u3053","\u3046\u308f\u304d","\u3046\u308f\u3055","\u3046\u3093\u3053\u3046","\u3046\u3093\u3061\u3093","\u3046\u3093\u3066\u3093","\u3046\u3093\u3068\u3099\u3046","\u3048\u3044\u3048\u3093","\u3048\u3044\u304b\u3099","\u3048\u3044\u304d\u3087\u3046","\u3048\u3044\u3053\u3099","\u3048\u3044\u305b\u3044","\u3048\u3044\u3075\u3099\u3093","\u3048\u3044\u3088\u3046","\u3048\u3044\u308f","\u3048\u304a\u308a","\u3048\u304b\u3099\u304a","\u3048\u304b\u3099\u304f","\u3048\u304d\u305f\u3044","\u3048\u304f\u305b\u308b","\u3048\u3057\u3083\u304f","\u3048\u3059\u3066","\u3048\u3064\u3089\u3093","\u3048\u306e\u304f\u3099","\u3048\u307b\u3046\u307e\u304d","\u3048\u307b\u3093","\u3048\u307e\u304d","\u3048\u3082\u3057\u3099","\u3048\u3082\u306e","\u3048\u3089\u3044","\u3048\u3089\u3075\u3099","\u3048\u308a\u3042","\u3048\u3093\u3048\u3093","\u3048\u3093\u304b\u3044","\u3048\u3093\u304d\u3099","\u3048\u3093\u3051\u3099\u304d","\u3048\u3093\u3057\u3085\u3046","\u3048\u3093\u305b\u3099\u3064","\u3048\u3093\u305d\u304f","\u3048\u3093\u3061\u3087\u3046","\u3048\u3093\u3068\u3064","\u304a\u3044\u304b\u3051\u308b","\u304a\u3044\u3053\u3059","\u304a\u3044\u3057\u3044","\u304a\u3044\u3064\u304f","\u304a\u3046\u3048\u3093","\u304a\u3046\u3055\u307e","\u304a\u3046\u3057\u3099","\u304a\u3046\u305b\u3064","\u304a\u3046\u305f\u3044","\u304a\u3046\u3075\u304f","\u304a\u3046\u3078\u3099\u3044","\u304a\u3046\u3088\u3046","\u304a\u3048\u308b","\u304a\u304a\u3044","\u304a\u304a\u3046","\u304a\u304a\u3068\u3099\u304a\u308a","\u304a\u304a\u3084","\u304a\u304a\u3088\u305d","\u304a\u304b\u3048\u308a","\u304a\u304b\u3059\u3099","\u304a\u304b\u3099\u3080","\u304a\u304b\u308f\u308a","\u304a\u304d\u3099\u306a\u3046","\u304a\u304d\u308b","\u304a\u304f\u3055\u307e","\u304a\u304f\u3057\u3099\u3087\u3046","\u304a\u304f\u308a\u304b\u3099\u306a","\u304a\u304f\u308b","\u304a\u304f\u308c\u308b","\u304a\u3053\u3059","\u304a\u3053\u306a\u3046","\u304a\u3053\u308b","\u304a\u3055\u3048\u308b","\u304a\u3055\u306a\u3044","\u304a\u3055\u3081\u308b","\u304a\u3057\u3044\u308c","\u304a\u3057\u3048\u308b","\u304a\u3057\u3099\u304d\u3099","\u304a\u3057\u3099\u3055\u3093","\u304a\u3057\u3083\u308c","\u304a\u305d\u3089\u304f","\u304a\u305d\u308f\u308b","\u304a\u305f\u304b\u3099\u3044","\u304a\u305f\u304f","\u304a\u305f\u3099\u3084\u304b","\u304a\u3061\u3064\u304f","\u304a\u3063\u3068","\u304a\u3064\u308a","\u304a\u3066\u3099\u304b\u3051","\u304a\u3068\u3057\u3082\u306e","\u304a\u3068\u306a\u3057\u3044","\u304a\u3068\u3099\u308a","\u304a\u3068\u3099\u308d\u304b\u3059","\u304a\u306f\u3099\u3055\u3093","\u304a\u307e\u3044\u308a","\u304a\u3081\u3066\u3099\u3068\u3046","\u304a\u3082\u3044\u3066\u3099","\u304a\u3082\u3046","\u304a\u3082\u305f\u3044","\u304a\u3082\u3061\u3083","\u304a\u3084\u3064","\u304a\u3084\u3086\u3072\u3099","\u304a\u3088\u307b\u3099\u3059","\u304a\u3089\u3093\u305f\u3099","\u304a\u308d\u3059","\u304a\u3093\u304b\u3099\u304f","\u304a\u3093\u3051\u3044","\u304a\u3093\u3057\u3083","\u304a\u3093\u305b\u3093","\u304a\u3093\u305f\u3099\u3093","\u304a\u3093\u3061\u3085\u3046","\u304a\u3093\u3068\u3099\u3051\u3044","\u304b\u3042\u3064","\u304b\u3044\u304b\u3099","\u304b\u3099\u3044\u304d","\u304b\u3099\u3044\u3051\u3093","\u304b\u3099\u3044\u3053\u3046","\u304b\u3044\u3055\u3064","\u304b\u3044\u3057\u3083","\u304b\u3044\u3059\u3044\u3088\u304f","\u304b\u3044\u305b\u3099\u3093","\u304b\u3044\u305d\u3099\u3046\u3068\u3099","\u304b\u3044\u3064\u3046","\u304b\u3044\u3066\u3093","\u304b\u3044\u3068\u3046","\u304b\u3044\u3075\u304f","\u304b\u3099\u3044\u3078\u304d","\u304b\u3044\u307b\u3046","\u304b\u3044\u3088\u3046","\u304b\u3099\u3044\u3089\u3044","\u304b\u3044\u308f","\u304b\u3048\u308b","\u304b\u304a\u308a","\u304b\u304b\u3048\u308b","\u304b\u304b\u3099\u304f","\u304b\u304b\u3099\u3057","\u304b\u304b\u3099\u307f","\u304b\u304f\u3053\u3099","\u304b\u304f\u3068\u304f","\u304b\u3055\u3099\u308b","\u304b\u3099\u305d\u3099\u3046","\u304b\u305f\u3044","\u304b\u305f\u3061","\u304b\u3099\u3061\u3087\u3046","\u304b\u3099\u3063\u304d\u3085\u3046","\u304b\u3099\u3063\u3053\u3046","\u304b\u3099\u3063\u3055\u3093","\u304b\u3099\u3063\u3057\u3087\u3046","\u304b\u306a\u3055\u3099\u308f\u3057","\u304b\u306e\u3046","\u304b\u3099\u306f\u304f","\u304b\u3075\u3099\u304b","\u304b\u307b\u3046","\u304b\u307b\u3053\u3099","\u304b\u307e\u3046","\u304b\u307e\u307b\u3099\u3053","\u304b\u3081\u308c\u304a\u3093","\u304b\u3086\u3044","\u304b\u3088\u3046\u3072\u3099","\u304b\u3089\u3044","\u304b\u308b\u3044","\u304b\u308d\u3046","\u304b\u308f\u304f","\u304b\u308f\u3089","\u304b\u3099\u3093\u304b","\u304b\u3093\u3051\u3044","\u304b\u3093\u3053\u3046","\u304b\u3093\u3057\u3083","\u304b\u3093\u305d\u3046","\u304b\u3093\u305f\u3093","\u304b\u3093\u3061","\u304b\u3099\u3093\u306f\u3099\u308b","\u304d\u3042\u3044","\u304d\u3042\u3064","\u304d\u3044\u308d","\u304d\u3099\u3044\u3093","\u304d\u3046\u3044","\u304d\u3046\u3093","\u304d\u3048\u308b","\u304d\u304a\u3046","\u304d\u304a\u304f","\u304d\u304a\u3061","\u304d\u304a\u3093","\u304d\u304b\u3044","\u304d\u304b\u304f","\u304d\u304b\u3093\u3057\u3083","\u304d\u304d\u3066","\u304d\u304f\u306f\u3099\u308a","\u304d\u304f\u3089\u3051\u3099","\u304d\u3051\u3093\u305b\u3044","\u304d\u3053\u3046","\u304d\u3053\u3048\u308b","\u304d\u3053\u304f","\u304d\u3055\u3044","\u304d\u3055\u304f","\u304d\u3055\u307e","\u304d\u3055\u3089\u304d\u3099","\u304d\u3099\u3057\u3099\u304b\u304b\u3099\u304f","\u304d\u3099\u3057\u304d","\u304d\u3099\u3057\u3099\u305f\u3044\u3051\u3093","\u304d\u3099\u3057\u3099\u306b\u3063\u3066\u3044","\u304d\u3099\u3057\u3099\u3085\u3064\u3057\u3083","\u304d\u3059\u3046","\u304d\u305b\u3044","\u304d\u305b\u304d","\u304d\u305b\u3064","\u304d\u305d\u3046","\u304d\u305d\u3099\u304f","\u304d\u305d\u3099\u3093","\u304d\u305f\u3048\u308b","\u304d\u3061\u3087\u3046","\u304d\u3064\u3048\u3093","\u304d\u3099\u3063\u3061\u308a","\u304d\u3064\u3064\u304d","\u304d\u3064\u306d","\u304d\u3066\u3044","\u304d\u3068\u3099\u3046","\u304d\u3068\u3099\u304f","\u304d\u306a\u3044","\u304d\u306a\u304b\u3099","\u304d\u306a\u3053","\u304d\u306c\u3053\u3099\u3057","\u304d\u306d\u3093","\u304d\u306e\u3046","\u304d\u306e\u3057\u305f","\u304d\u306f\u304f","\u304d\u3072\u3099\u3057\u3044","\u304d\u3072\u3093","\u304d\u3075\u304f","\u304d\u3075\u3099\u3093","\u304d\u307b\u3099\u3046","\u304d\u307b\u3093","\u304d\u307e\u308b","\u304d\u307f\u3064","\u304d\u3080\u3059\u3099\u304b\u3057\u3044","\u304d\u3081\u308b","\u304d\u3082\u305f\u3099\u3081\u3057","\u304d\u3082\u3061","\u304d\u3082\u306e","\u304d\u3083\u304f","\u304d\u3084\u304f","\u304d\u3099\u3085\u3046\u306b\u304f","\u304d\u3088\u3046","\u304d\u3087\u3046\u308a\u3085\u3046","\u304d\u3089\u3044","\u304d\u3089\u304f","\u304d\u308a\u3093","\u304d\u308c\u3044","\u304d\u308c\u3064","\u304d\u308d\u304f","\u304d\u3099\u308d\u3093","\u304d\u308f\u3081\u308b","\u304d\u3099\u3093\u3044\u308d","\u304d\u3093\u304b\u304f\u3057\u3099","\u304d\u3093\u3057\u3099\u3087","\u304d\u3093\u3088\u3046\u3072\u3099","\u304f\u3099\u3042\u3044","\u304f\u3044\u3059\u3099","\u304f\u3046\u304b\u3093","\u304f\u3046\u304d","\u304f\u3046\u304f\u3099\u3093","\u304f\u3046\u3053\u3046","\u304f\u3099\u3046\u305b\u3044","\u304f\u3046\u305d\u3046","\u304f\u3099\u3046\u305f\u3089","\u304f\u3046\u3075\u304f","\u304f\u3046\u307b\u3099","\u304f\u304b\u3093","\u304f\u304d\u3087\u3046","\u304f\u3051\u3099\u3093","\u304f\u3099\u3053\u3046","\u304f\u3055\u3044","\u304f\u3055\u304d","\u304f\u3055\u306f\u3099\u306a","\u304f\u3055\u308b","\u304f\u3057\u3083\u307f","\u304f\u3057\u3087\u3046","\u304f\u3059\u306e\u304d","\u304f\u3059\u308a\u3086\u3072\u3099","\u304f\u305b\u3051\u3099","\u304f\u305b\u3093","\u304f\u3099\u305f\u3044\u3066\u304d","\u304f\u305f\u3099\u3055\u308b","\u304f\u305f\u3072\u3099\u308c\u308b","\u304f\u3061\u3053\u307f","\u304f\u3061\u3055\u304d","\u304f\u3064\u3057\u305f","\u304f\u3099\u3063\u3059\u308a","\u304f\u3064\u308d\u304f\u3099","\u304f\u3068\u3046\u3066\u3093","\u304f\u3068\u3099\u304f","\u304f\u306a\u3093","\u304f\u306d\u304f\u306d","\u304f\u306e\u3046","\u304f\u3075\u3046","\u304f\u307f\u3042\u308f\u305b","\u304f\u307f\u305f\u3066\u308b","\u304f\u3081\u308b","\u304f\u3084\u304f\u3057\u3087","\u304f\u3089\u3059","\u304f\u3089\u3078\u3099\u308b","\u304f\u308b\u307e","\u304f\u308c\u308b","\u304f\u308d\u3046","\u304f\u308f\u3057\u3044","\u304f\u3099\u3093\u304b\u3093","\u304f\u3099\u3093\u3057\u3087\u304f","\u304f\u3099\u3093\u305f\u3044","\u304f\u3099\u3093\u3066","\u3051\u3042\u306a","\u3051\u3044\u304b\u304f","\u3051\u3044\u3051\u3093","\u3051\u3044\u3053","\u3051\u3044\u3055\u3064","\u3051\u3099\u3044\u3057\u3099\u3085\u3064","\u3051\u3044\u305f\u3044","\u3051\u3099\u3044\u306e\u3046\u3057\u3099\u3093","\u3051\u3044\u308c\u304d","\u3051\u3044\u308d","\u3051\u304a\u3068\u3059","\u3051\u304a\u308a\u3082\u306e","\u3051\u3099\u304d\u304b","\u3051\u3099\u304d\u3051\u3099\u3093","\u3051\u3099\u304d\u305f\u3099\u3093","\u3051\u3099\u304d\u3061\u3093","\u3051\u3099\u304d\u3068\u3064","\u3051\u3099\u304d\u306f","\u3051\u3099\u304d\u3084\u304f","\u3051\u3099\u3053\u3046","\u3051\u3099\u3053\u304f\u3057\u3099\u3087\u3046","\u3051\u3099\u3055\u3099\u3044","\u3051\u3055\u304d","\u3051\u3099\u3055\u3099\u3093","\u3051\u3057\u304d","\u3051\u3057\u3053\u3099\u3080","\u3051\u3057\u3087\u3046","\u3051\u3099\u3059\u3068","\u3051\u305f\u306f\u3099","\u3051\u3061\u3083\u3063\u3075\u309a","\u3051\u3061\u3089\u3059","\u3051\u3064\u3042\u3064","\u3051\u3064\u3044","\u3051\u3064\u3048\u304d","\u3051\u3063\u3053\u3093","\u3051\u3064\u3057\u3099\u3087","\u3051\u3063\u305b\u304d","\u3051\u3063\u3066\u3044","\u3051\u3064\u307e\u3064","\u3051\u3099\u3064\u3088\u3046\u3072\u3099","\u3051\u3099\u3064\u308c\u3044","\u3051\u3064\u308d\u3093","\u3051\u3099\u3068\u3099\u304f","\u3051\u3068\u306f\u3099\u3059","\u3051\u3068\u308b","\u3051\u306a\u3051\u3099","\u3051\u306a\u3059","\u3051\u306a\u307f","\u3051\u306c\u304d","\u3051\u3099\u306d\u3064","\u3051\u306d\u3093","\u3051\u306f\u3044","\u3051\u3099\u3072\u3093","\u3051\u3075\u3099\u304b\u3044","\u3051\u3099\u307b\u3099\u304f","\u3051\u307e\u308a","\u3051\u307f\u304b\u308b","\u3051\u3080\u3057","\u3051\u3080\u308a","\u3051\u3082\u306e","\u3051\u3089\u3044","\u3051\u308d\u3051\u308d","\u3051\u308f\u3057\u3044","\u3051\u3093\u3044","\u3051\u3093\u3048\u3064","\u3051\u3093\u304a","\u3051\u3093\u304b","\u3051\u3099\u3093\u304d","\u3051\u3093\u3051\u3099\u3093","\u3051\u3093\u3053\u3046","\u3051\u3093\u3055\u304f","\u3051\u3093\u3057\u3085\u3046","\u3051\u3093\u3059\u3046","\u3051\u3099\u3093\u305d\u3046","\u3051\u3093\u3061\u304f","\u3051\u3093\u3066\u3044","\u3051\u3093\u3068\u3046","\u3051\u3093\u306a\u3044","\u3051\u3093\u306b\u3093","\u3051\u3099\u3093\u3075\u3099\u3064","\u3051\u3093\u307e","\u3051\u3093\u307f\u3093","\u3051\u3093\u3081\u3044","\u3051\u3093\u3089\u3093","\u3051\u3093\u308a","\u3053\u3042\u304f\u307e","\u3053\u3044\u306c","\u3053\u3044\u3072\u3099\u3068","\u3053\u3099\u3046\u3044","\u3053\u3046\u3048\u3093","\u3053\u3046\u304a\u3093","\u3053\u3046\u304b\u3093","\u3053\u3099\u3046\u304d\u3085\u3046","\u3053\u3099\u3046\u3051\u3044","\u3053\u3046\u3053\u3046","\u3053\u3046\u3055\u3044","\u3053\u3046\u3057\u3099","\u3053\u3046\u3059\u3044","\u3053\u3099\u3046\u305b\u3044","\u3053\u3046\u305d\u304f","\u3053\u3046\u305f\u3044","\u3053\u3046\u3061\u3083","\u3053\u3046\u3064\u3046","\u3053\u3046\u3066\u3044","\u3053\u3046\u3068\u3099\u3046","\u3053\u3046\u306a\u3044","\u3053\u3046\u306f\u3044","\u3053\u3099\u3046\u307b\u3046","\u3053\u3099\u3046\u307e\u3093","\u3053\u3046\u3082\u304f","\u3053\u3046\u308a\u3064","\u3053\u3048\u308b","\u3053\u304a\u308a","\u3053\u3099\u304b\u3044","\u3053\u3099\u304b\u3099\u3064","\u3053\u3099\u304b\u3093","\u3053\u304f\u3053\u3099","\u3053\u304f\u3055\u3044","\u3053\u304f\u3068\u3046","\u3053\u304f\u306a\u3044","\u3053\u304f\u306f\u304f","\u3053\u304f\u3099\u307e","\u3053\u3051\u3044","\u3053\u3051\u308b","\u3053\u3053\u306e\u304b","\u3053\u3053\u308d","\u3053\u3055\u3081","\u3053\u3057\u3064","\u3053\u3059\u3046","\u3053\u305b\u3044","\u3053\u305b\u304d","\u3053\u305b\u3099\u3093","\u3053\u305d\u305f\u3099\u3066","\u3053\u305f\u3044","\u3053\u305f\u3048\u308b","\u3053\u305f\u3064","\u3053\u3061\u3087\u3046","\u3053\u3063\u304b","\u3053\u3064\u3053\u3064","\u3053\u3064\u306f\u3099\u3093","\u3053\u3064\u3075\u3099","\u3053\u3066\u3044","\u3053\u3066\u3093","\u3053\u3068\u304b\u3099\u3089","\u3053\u3068\u3057","\u3053\u3068\u306f\u3099","\u3053\u3068\u308a","\u3053\u306a\u3053\u3099\u306a","\u3053\u306d\u3053\u306d","\u3053\u306e\u307e\u307e","\u3053\u306e\u307f","\u3053\u306e\u3088","\u3053\u3099\u306f\u3093","\u3053\u3072\u3064\u3057\u3099","\u3053\u3075\u3046","\u3053\u3075\u3093","\u3053\u307b\u3099\u308c\u308b","\u3053\u3099\u307e\u3042\u3075\u3099\u3089","\u3053\u307e\u304b\u3044","\u3053\u3099\u307e\u3059\u308a","\u3053\u307e\u3064\u306a","\u3053\u307e\u308b","\u3053\u3080\u304d\u3099\u3053","\u3053\u3082\u3057\u3099","\u3053\u3082\u3061","\u3053\u3082\u306e","\u3053\u3082\u3093","\u3053\u3084\u304f","\u3053\u3084\u307e","\u3053\u3086\u3046","\u3053\u3086\u3072\u3099","\u3053\u3088\u3044","\u3053\u3088\u3046","\u3053\u308a\u308b","\u3053\u308c\u304f\u3057\u3087\u3093","\u3053\u308d\u3063\u3051","\u3053\u308f\u3082\u3066","\u3053\u308f\u308c\u308b","\u3053\u3093\u3044\u3093","\u3053\u3093\u304b\u3044","\u3053\u3093\u304d","\u3053\u3093\u3057\u3085\u3046","\u3053\u3093\u3059\u3044","\u3053\u3093\u305f\u3099\u3066","\u3053\u3093\u3068\u3093","\u3053\u3093\u306a\u3093","\u3053\u3093\u3072\u3099\u306b","\u3053\u3093\u307b\u309a\u3093","\u3053\u3093\u307e\u3051","\u3053\u3093\u3084","\u3053\u3093\u308c\u3044","\u3053\u3093\u308f\u304f","\u3055\u3099\u3044\u3048\u304d","\u3055\u3044\u304b\u3044","\u3055\u3044\u304d\u3093","\u3055\u3099\u3044\u3051\u3099\u3093","\u3055\u3099\u3044\u3053","\u3055\u3044\u3057\u3087","\u3055\u3044\u305b\u3044","\u3055\u3099\u3044\u305f\u304f","\u3055\u3099\u3044\u3061\u3085\u3046","\u3055\u3044\u3066\u304d","\u3055\u3099\u3044\u308a\u3087\u3046","\u3055\u3046\u306a","\u3055\u304b\u3044\u3057","\u3055\u304b\u3099\u3059","\u3055\u304b\u306a","\u3055\u304b\u307f\u3061","\u3055\u304b\u3099\u308b","\u3055\u304d\u3099\u3087\u3046","\u3055\u304f\u3057","\u3055\u304f\u3072\u3093","\u3055\u304f\u3089","\u3055\u3053\u304f","\u3055\u3053\u3064","\u3055\u3059\u3099\u304b\u308b","\u3055\u3099\u305b\u304d","\u3055\u305f\u3093","\u3055\u3064\u3048\u3044","\u3055\u3099\u3064\u304a\u3093","\u3055\u3099\u3063\u304b","\u3055\u3099\u3064\u304b\u3099\u304f","\u3055\u3063\u304d\u3087\u304f","\u3055\u3099\u3063\u3057","\u3055\u3064\u3057\u3099\u3093","\u3055\u3099\u3063\u305d\u3046","\u3055\u3064\u305f\u306f\u3099","\u3055\u3064\u307e\u3044\u3082","\u3055\u3066\u3044","\u3055\u3068\u3044\u3082","\u3055\u3068\u3046","\u3055\u3068\u304a\u3084","\u3055\u3068\u3057","\u3055\u3068\u308b","\u3055\u306e\u3046","\u3055\u306f\u3099\u304f","\u3055\u3072\u3099\u3057\u3044","\u3055\u3078\u3099\u3064","\u3055\u307b\u3046","\u3055\u307b\u3068\u3099","\u3055\u307e\u3059","\u3055\u307f\u3057\u3044","\u3055\u307f\u305f\u3099\u308c","\u3055\u3080\u3051","\u3055\u3081\u308b","\u3055\u3084\u3048\u3093\u3068\u3099\u3046","\u3055\u3086\u3046","\u3055\u3088\u3046","\u3055\u3088\u304f","\u3055\u3089\u305f\u3099","\u3055\u3099\u308b\u305d\u306f\u3099","\u3055\u308f\u3084\u304b","\u3055\u308f\u308b","\u3055\u3093\u3044\u3093","\u3055\u3093\u304b","\u3055\u3093\u304d\u3083\u304f","\u3055\u3093\u3053\u3046","\u3055\u3093\u3055\u3044","\u3055\u3099\u3093\u3057\u3087","\u3055\u3093\u3059\u3046","\u3055\u3093\u305b\u3044","\u3055\u3093\u305d","\u3055\u3093\u3061","\u3055\u3093\u307e","\u3055\u3093\u307f","\u3055\u3093\u3089\u3093","\u3057\u3042\u3044","\u3057\u3042\u3051\u3099","\u3057\u3042\u3055\u3063\u3066","\u3057\u3042\u308f\u305b","\u3057\u3044\u304f","\u3057\u3044\u3093","\u3057\u3046\u3061","\u3057\u3048\u3044","\u3057\u304a\u3051","\u3057\u304b\u3044","\u3057\u304b\u304f","\u3057\u3099\u304b\u3093","\u3057\u3053\u3099\u3068","\u3057\u3059\u3046","\u3057\u3099\u305f\u3099\u3044","\u3057\u305f\u3046\u3051","\u3057\u305f\u304d\u3099","\u3057\u305f\u3066","\u3057\u305f\u307f","\u3057\u3061\u3087\u3046","\u3057\u3061\u308a\u3093","\u3057\u3063\u304b\u308a","\u3057\u3064\u3057\u3099","\u3057\u3064\u3082\u3093","\u3057\u3066\u3044","\u3057\u3066\u304d","\u3057\u3066\u3064","\u3057\u3099\u3066\u3093","\u3057\u3099\u3068\u3099\u3046","\u3057\u306a\u304d\u3099\u308c","\u3057\u306a\u3082\u306e","\u3057\u306a\u3093","\u3057\u306d\u307e","\u3057\u306d\u3093","\u3057\u306e\u304f\u3099","\u3057\u306e\u3075\u3099","\u3057\u306f\u3044","\u3057\u306f\u3099\u304b\u308a","\u3057\u306f\u3064","\u3057\u306f\u3089\u3044","\u3057\u306f\u3093","\u3057\u3072\u3087\u3046","\u3057\u3075\u304f","\u3057\u3099\u3075\u3099\u3093","\u3057\u3078\u3044","\u3057\u307b\u3046","\u3057\u307b\u3093","\u3057\u307e\u3046","\u3057\u307e\u308b","\u3057\u307f\u3093","\u3057\u3080\u3051\u308b","\u3057\u3099\u3080\u3057\u3087","\u3057\u3081\u3044","\u3057\u3081\u308b","\u3057\u3082\u3093","\u3057\u3083\u3044\u3093","\u3057\u3083\u3046\u3093","\u3057\u3083\u304a\u3093","\u3057\u3099\u3083\u304b\u3099\u3044\u3082","\u3057\u3084\u304f\u3057\u3087","\u3057\u3083\u304f\u307b\u3046","\u3057\u3083\u3051\u3093","\u3057\u3083\u3053","\u3057\u3083\u3055\u3099\u3044","\u3057\u3083\u3057\u3093","\u3057\u3083\u305b\u3093","\u3057\u3083\u305d\u3046","\u3057\u3083\u305f\u3044","\u3057\u3083\u3061\u3087\u3046","\u3057\u3083\u3063\u304d\u3093","\u3057\u3099\u3083\u307e","\u3057\u3083\u308a\u3093","\u3057\u3083\u308c\u3044","\u3057\u3099\u3086\u3046","\u3057\u3099\u3085\u3046\u3057\u3087","\u3057\u3085\u304f\u306f\u304f","\u3057\u3099\u3085\u3057\u3093","\u3057\u3085\u3063\u305b\u304d","\u3057\u3085\u307f","\u3057\u3085\u3089\u306f\u3099","\u3057\u3099\u3085\u3093\u306f\u3099\u3093","\u3057\u3087\u3046\u304b\u3044","\u3057\u3087\u304f\u305f\u304f","\u3057\u3087\u3063\u3051\u3093","\u3057\u3087\u3068\u3099\u3046","\u3057\u3087\u3082\u3064","\u3057\u3089\u305b\u308b","\u3057\u3089\u3078\u3099\u308b","\u3057\u3093\u304b","\u3057\u3093\u3053\u3046","\u3057\u3099\u3093\u3057\u3099\u3083","\u3057\u3093\u305b\u3044\u3057\u3099","\u3057\u3093\u3061\u304f","\u3057\u3093\u308a\u3093","\u3059\u3042\u3051\u3099","\u3059\u3042\u3057","\u3059\u3042\u306a","\u3059\u3099\u3042\u3093","\u3059\u3044\u3048\u3044","\u3059\u3044\u304b","\u3059\u3044\u3068\u3046","\u3059\u3099\u3044\u3075\u3099\u3093","\u3059\u3044\u3088\u3046\u3072\u3099","\u3059\u3046\u304b\u3099\u304f","\u3059\u3046\u3057\u3099\u3064","\u3059\u3046\u305b\u3093","\u3059\u304a\u3068\u3099\u308a","\u3059\u304d\u307e","\u3059\u304f\u3046","\u3059\u304f\u306a\u3044","\u3059\u3051\u308b","\u3059\u3053\u3099\u3044","\u3059\u3053\u3057","\u3059\u3099\u3055\u3093","\u3059\u3059\u3099\u3057\u3044","\u3059\u3059\u3080","\u3059\u3059\u3081\u308b","\u3059\u3063\u304b\u308a","\u3059\u3099\u3063\u3057\u308a","\u3059\u3099\u3063\u3068","\u3059\u3066\u304d","\u3059\u3066\u308b","\u3059\u306d\u308b","\u3059\u306e\u3053","\u3059\u306f\u305f\u3099","\u3059\u306f\u3099\u3089\u3057\u3044","\u3059\u3099\u3072\u3087\u3046","\u3059\u3099\u3075\u3099\u306c\u308c","\u3059\u3075\u3099\u308a","\u3059\u3075\u308c","\u3059\u3078\u3099\u3066","\u3059\u3078\u3099\u308b","\u3059\u3099\u307b\u3046","\u3059\u307b\u3099\u3093","\u3059\u307e\u3044","\u3059\u3081\u3057","\u3059\u3082\u3046","\u3059\u3084\u304d","\u3059\u3089\u3059\u3089","\u3059\u308b\u3081","\u3059\u308c\u3061\u304b\u3099\u3046","\u3059\u308d\u3063\u3068","\u3059\u308f\u308b","\u3059\u3093\u305b\u3099\u3093","\u3059\u3093\u307b\u309a\u3046","\u305b\u3042\u3075\u3099\u3089","\u305b\u3044\u304b\u3064","\u305b\u3044\u3051\u3099\u3093","\u305b\u3044\u3057\u3099","\u305b\u3044\u3088\u3046","\u305b\u304a\u3046","\u305b\u304b\u3044\u304b\u3093","\u305b\u304d\u306b\u3093","\u305b\u304d\u3080","\u305b\u304d\u3086","\u305b\u304d\u3089\u3093\u3046\u3093","\u305b\u3051\u3093","\u305b\u3053\u3046","\u305b\u3059\u3057\u3099","\u305b\u305f\u3044","\u305b\u305f\u3051","\u305b\u3063\u304b\u304f","\u305b\u3063\u304d\u3083\u304f","\u305b\u3099\u3063\u304f","\u305b\u3063\u3051\u3093","\u305b\u3063\u3053\u3064","\u305b\u3063\u3055\u305f\u304f\u307e","\u305b\u3064\u305d\u3099\u304f","\u305b\u3064\u305f\u3099\u3093","\u305b\u3064\u3066\u3099\u3093","\u305b\u3063\u306f\u309a\u3093","\u305b\u3064\u3072\u3099","\u305b\u3064\u3075\u3099\u3093","\u305b\u3064\u3081\u3044","\u305b\u3064\u308a\u3064","\u305b\u306a\u304b","\u305b\u306e\u3072\u3099","\u305b\u306f\u306f\u3099","\u305b\u3072\u3099\u308d","\u305b\u307b\u3099\u306d","\u305b\u307e\u3044","\u305b\u307e\u308b","\u305b\u3081\u308b","\u305b\u3082\u305f\u308c","\u305b\u308a\u3075","\u305b\u3099\u3093\u3042\u304f","\u305b\u3093\u3044","\u305b\u3093\u3048\u3044","\u305b\u3093\u304b","\u305b\u3093\u304d\u3087","\u305b\u3093\u304f","\u305b\u3093\u3051\u3099\u3093","\u305b\u3099\u3093\u3053\u3099","\u305b\u3093\u3055\u3044","\u305b\u3093\u3057\u3085","\u305b\u3093\u3059\u3044","\u305b\u3093\u305b\u3044","\u305b\u3093\u305d\u3099","\u305b\u3093\u305f\u304f","\u305b\u3093\u3061\u3087\u3046","\u305b\u3093\u3066\u3044","\u305b\u3093\u3068\u3046","\u305b\u3093\u306c\u304d","\u305b\u3093\u306d\u3093","\u305b\u3093\u306f\u309a\u3044","\u305b\u3099\u3093\u3075\u3099","\u305b\u3099\u3093\u307b\u309a\u3046","\u305b\u3093\u3080","\u305b\u3093\u3081\u3093\u3057\u3099\u3087","\u305b\u3093\u3082\u3093","\u305b\u3093\u3084\u304f","\u305b\u3093\u3086\u3046","\u305b\u3093\u3088\u3046","\u305b\u3099\u3093\u3089","\u305b\u3099\u3093\u308a\u3083\u304f","\u305b\u3093\u308c\u3044","\u305b\u3093\u308d","\u305d\u3042\u304f","\u305d\u3044\u3068\u3051\u3099\u308b","\u305d\u3044\u306d","\u305d\u3046\u304b\u3099\u3093\u304d\u3087\u3046","\u305d\u3046\u304d","\u305d\u3046\u3053\u3099","\u305d\u3046\u3057\u3093","\u305d\u3046\u305f\u3099\u3093","\u305d\u3046\u306a\u3093","\u305d\u3046\u3072\u3099","\u305d\u3046\u3081\u3093","\u305d\u3046\u308a","\u305d\u3048\u3082\u306e","\u305d\u3048\u3093","\u305d\u304b\u3099\u3044","\u305d\u3051\u3099\u304d","\u305d\u3053\u3046","\u305d\u3053\u305d\u3053","\u305d\u3055\u3099\u3044","\u305d\u3057\u306a","\u305d\u305b\u3044","\u305d\u305b\u3093","\u305d\u305d\u304f\u3099","\u305d\u305f\u3099\u3066\u308b","\u305d\u3064\u3046","\u305d\u3064\u3048\u3093","\u305d\u3063\u304b\u3093","\u305d\u3064\u304d\u3099\u3087\u3046","\u305d\u3063\u3051\u3064","\u305d\u3063\u3053\u3046","\u305d\u3063\u305b\u3093","\u305d\u3063\u3068","\u305d\u3068\u304b\u3099\u308f","\u305d\u3068\u3064\u3099\u3089","\u305d\u306a\u3048\u308b","\u305d\u306a\u305f","\u305d\u3075\u307b\u3099","\u305d\u307b\u3099\u304f","\u305d\u307b\u3099\u308d","\u305d\u307e\u3064","\u305d\u307e\u308b","\u305d\u3080\u304f","\u305d\u3080\u308a\u3048","\u305d\u3081\u308b","\u305d\u3082\u305d\u3082","\u305d\u3088\u304b\u305b\u3099","\u305d\u3089\u307e\u3081","\u305d\u308d\u3046","\u305d\u3093\u304b\u3044","\u305d\u3093\u3051\u3044","\u305d\u3093\u3055\u3099\u3044","\u305d\u3093\u3057\u3064","\u305d\u3093\u305d\u3099\u304f","\u305d\u3093\u3061\u3087\u3046","\u305d\u3099\u3093\u3072\u3099","\u305d\u3099\u3093\u3075\u3099\u3093","\u305d\u3093\u307f\u3093","\u305f\u3042\u3044","\u305f\u3044\u3044\u3093","\u305f\u3044\u3046\u3093","\u305f\u3044\u3048\u304d","\u305f\u3044\u304a\u3046","\u305f\u3099\u3044\u304b\u3099\u304f","\u305f\u3044\u304d","\u305f\u3044\u304f\u3099\u3046","\u305f\u3044\u3051\u3093","\u305f\u3044\u3053","\u305f\u3044\u3055\u3099\u3044","\u305f\u3099\u3044\u3057\u3099\u3087\u3046\u3075\u3099","\u305f\u3099\u3044\u3059\u304d","\u305f\u3044\u305b\u3064","\u305f\u3044\u305d\u3046","\u305f\u3099\u3044\u305f\u3044","\u305f\u3044\u3061\u3087\u3046","\u305f\u3044\u3066\u3044","\u305f\u3099\u3044\u3068\u3099\u3053\u308d","\u305f\u3044\u306a\u3044","\u305f\u3044\u306d\u3064","\u305f\u3044\u306e\u3046","\u305f\u3044\u306f\u3093","\u305f\u3099\u3044\u3072\u3087\u3046","\u305f\u3044\u3075\u3046","\u305f\u3044\u3078\u3093","\u305f\u3044\u307b","\u305f\u3044\u307e\u3064\u306f\u3099\u306a","\u305f\u3044\u307f\u3093\u304f\u3099","\u305f\u3044\u3080","\u305f\u3044\u3081\u3093","\u305f\u3044\u3084\u304d","\u305f\u3044\u3088\u3046","\u305f\u3044\u3089","\u305f\u3044\u308a\u3087\u304f","\u305f\u3044\u308b","\u305f\u3044\u308f\u3093","\u305f\u3046\u3048","\u305f\u3048\u308b","\u305f\u304a\u3059","\u305f\u304a\u308b","\u305f\u304a\u308c\u308b","\u305f\u304b\u3044","\u305f\u304b\u306d","\u305f\u304d\u3072\u3099","\u305f\u304f\u3055\u3093","\u305f\u3053\u304f","\u305f\u3053\u3084\u304d","\u305f\u3055\u3044","\u305f\u3057\u3055\u3099\u3093","\u305f\u3099\u3057\u3099\u3083\u308c","\u305f\u3059\u3051\u308b","\u305f\u3059\u3099\u3055\u308f\u308b","\u305f\u305d\u304b\u3099\u308c","\u305f\u305f\u304b\u3046","\u305f\u305f\u304f","\u305f\u305f\u3099\u3057\u3044","\u305f\u305f\u307f","\u305f\u3061\u306f\u3099\u306a","\u305f\u3099\u3063\u304b\u3044","\u305f\u3099\u3063\u304d\u3083\u304f","\u305f\u3099\u3063\u3053","\u305f\u3099\u3063\u3057\u3085\u3064","\u305f\u3099\u3063\u305f\u3044","\u305f\u3066\u308b","\u305f\u3068\u3048\u308b","\u305f\u306a\u306f\u3099\u305f","\u305f\u306b\u3093","\u305f\u306c\u304d","\u305f\u306e\u3057\u307f","\u305f\u306f\u3064","\u305f\u3075\u3099\u3093","\u305f\u3078\u3099\u308b","\u305f\u307b\u3099\u3046","\u305f\u307e\u3053\u3099","\u305f\u307e\u308b","\u305f\u3099\u3080\u308b","\u305f\u3081\u3044\u304d","\u305f\u3081\u3059","\u305f\u3081\u308b","\u305f\u3082\u3064","\u305f\u3084\u3059\u3044","\u305f\u3088\u308b","\u305f\u3089\u3059","\u305f\u308a\u304d\u307b\u3093\u304b\u3099\u3093","\u305f\u308a\u3087\u3046","\u305f\u308a\u308b","\u305f\u308b\u3068","\u305f\u308c\u308b","\u305f\u308c\u3093\u3068","\u305f\u308d\u3063\u3068","\u305f\u308f\u3080\u308c\u308b","\u305f\u3099\u3093\u3042\u3064","\u305f\u3093\u3044","\u305f\u3093\u304a\u3093","\u305f\u3093\u304b","\u305f\u3093\u304d","\u305f\u3093\u3051\u3093","\u305f\u3093\u3053\u3099","\u305f\u3093\u3055\u3093","\u305f\u3093\u3057\u3099\u3087\u3046\u3072\u3099","\u305f\u3099\u3093\u305b\u3044","\u305f\u3093\u305d\u304f","\u305f\u3093\u305f\u3044","\u305f\u3099\u3093\u3061","\u305f\u3093\u3066\u3044","\u305f\u3093\u3068\u3046","\u305f\u3099\u3093\u306a","\u305f\u3093\u306b\u3093","\u305f\u3099\u3093\u306d\u3064","\u305f\u3093\u306e\u3046","\u305f\u3093\u3072\u309a\u3093","\u305f\u3099\u3093\u307b\u3099\u3046","\u305f\u3093\u307e\u3064","\u305f\u3093\u3081\u3044","\u305f\u3099\u3093\u308c\u3064","\u305f\u3099\u3093\u308d","\u305f\u3099\u3093\u308f","\u3061\u3042\u3044","\u3061\u3042\u3093","\u3061\u3044\u304d","\u3061\u3044\u3055\u3044","\u3061\u3048\u3093","\u3061\u304b\u3044","\u3061\u304b\u3089","\u3061\u304d\u3085\u3046","\u3061\u304d\u3093","\u3061\u3051\u3044\u3059\u3099","\u3061\u3051\u3093","\u3061\u3053\u304f","\u3061\u3055\u3044","\u3061\u3057\u304d","\u3061\u3057\u308a\u3087\u3046","\u3061\u305b\u3044","\u3061\u305d\u3046","\u3061\u305f\u3044","\u3061\u305f\u3093","\u3061\u3061\u304a\u3084","\u3061\u3064\u3057\u3099\u3087","\u3061\u3066\u304d","\u3061\u3066\u3093","\u3061\u306c\u304d","\u3061\u306c\u308a","\u3061\u306e\u3046","\u3061\u3072\u3087\u3046","\u3061\u3078\u3044\u305b\u3093","\u3061\u307b\u3046","\u3061\u307e\u305f","\u3061\u307f\u3064","\u3061\u307f\u3068\u3099\u308d","\u3061\u3081\u3044\u3068\u3099","\u3061\u3083\u3093\u3053\u306a\u3078\u3099","\u3061\u3085\u3046\u3044","\u3061\u3086\u308a\u3087\u304f","\u3061\u3087\u3046\u3057","\u3061\u3087\u3055\u304f\u3051\u3093","\u3061\u3089\u3057","\u3061\u3089\u307f","\u3061\u308a\u304b\u3099\u307f","\u3061\u308a\u3087\u3046","\u3061\u308b\u3068\u3099","\u3061\u308f\u308f","\u3061\u3093\u305f\u3044","\u3061\u3093\u3082\u304f","\u3064\u3044\u304b","\u3064\u3044\u305f\u3061","\u3064\u3046\u304b","\u3064\u3046\u3057\u3099\u3087\u3046","\u3064\u3046\u306f\u3093","\u3064\u3046\u308f","\u3064\u304b\u3046","\u3064\u304b\u308c\u308b","\u3064\u304f\u306d","\u3064\u304f\u308b","\u3064\u3051\u306d","\u3064\u3051\u308b","\u3064\u3053\u3099\u3046","\u3064\u305f\u3048\u308b","\u3064\u3064\u3099\u304f","\u3064\u3064\u3057\u3099","\u3064\u3064\u3080","\u3064\u3068\u3081\u308b","\u3064\u306a\u304b\u3099\u308b","\u3064\u306a\u307f","\u3064\u306d\u3064\u3099\u306d","\u3064\u306e\u308b","\u3064\u3075\u3099\u3059","\u3064\u307e\u3089\u306a\u3044","\u3064\u307e\u308b","\u3064\u307f\u304d","\u3064\u3081\u305f\u3044","\u3064\u3082\u308a","\u3064\u3082\u308b","\u3064\u3088\u3044","\u3064\u308b\u307b\u3099","\u3064\u308b\u307f\u304f","\u3064\u308f\u3082\u306e","\u3064\u308f\u308a","\u3066\u3042\u3057","\u3066\u3042\u3066","\u3066\u3042\u307f","\u3066\u3044\u304a\u3093","\u3066\u3044\u304b","\u3066\u3044\u304d","\u3066\u3044\u3051\u3044","\u3066\u3044\u3053\u304f","\u3066\u3044\u3055\u3064","\u3066\u3044\u3057","\u3066\u3044\u305b\u3044","\u3066\u3044\u305f\u3044","\u3066\u3044\u3068\u3099","\u3066\u3044\u306d\u3044","\u3066\u3044\u3072\u3087\u3046","\u3066\u3044\u3078\u3093","\u3066\u3044\u307b\u3099\u3046","\u3066\u3046\u3061","\u3066\u304a\u304f\u308c","\u3066\u304d\u3068\u3046","\u3066\u304f\u3072\u3099","\u3066\u3099\u3053\u307b\u3099\u3053","\u3066\u3055\u304d\u3099\u3087\u3046","\u3066\u3055\u3051\u3099","\u3066\u3059\u308a","\u3066\u305d\u3046","\u3066\u3061\u304b\u3099\u3044","\u3066\u3061\u3087\u3046","\u3066\u3064\u304b\u3099\u304f","\u3066\u3064\u3064\u3099\u304d","\u3066\u3099\u3063\u306f\u309a","\u3066\u3064\u307b\u3099\u3046","\u3066\u3064\u3084","\u3066\u3099\u306c\u304b\u3048","\u3066\u306c\u304d","\u3066\u306c\u304f\u3099\u3044","\u3066\u306e\u3072\u3089","\u3066\u306f\u3044","\u3066\u3075\u3099\u304f\u308d","\u3066\u3075\u305f\u3099","\u3066\u307b\u3068\u3099\u304d","\u3066\u307b\u3093","\u3066\u307e\u3048","\u3066\u307e\u304d\u3059\u3099\u3057","\u3066\u307f\u3057\u3099\u304b","\u3066\u307f\u3084\u3051\u3099","\u3066\u3089\u3059","\u3066\u308c\u3072\u3099","\u3066\u308f\u3051","\u3066\u308f\u305f\u3057","\u3066\u3099\u3093\u3042\u3064","\u3066\u3093\u3044\u3093","\u3066\u3093\u304b\u3044","\u3066\u3093\u304d","\u3066\u3093\u304f\u3099","\u3066\u3093\u3051\u3093","\u3066\u3093\u3053\u3099\u304f","\u3066\u3093\u3055\u3044","\u3066\u3093\u3057","\u3066\u3093\u3059\u3046","\u3066\u3099\u3093\u3061","\u3066\u3093\u3066\u304d","\u3066\u3093\u3068\u3046","\u3066\u3093\u306a\u3044","\u3066\u3093\u3075\u309a\u3089","\u3066\u3093\u307b\u3099\u3046\u305f\u3099\u3044","\u3066\u3093\u3081\u3064","\u3066\u3093\u3089\u3093\u304b\u3044","\u3066\u3099\u3093\u308a\u3087\u304f","\u3066\u3099\u3093\u308f","\u3068\u3099\u3042\u3044","\u3068\u3044\u308c","\u3068\u3099\u3046\u304b\u3093","\u3068\u3046\u304d\u3085\u3046","\u3068\u3099\u3046\u304f\u3099","\u3068\u3046\u3057","\u3068\u3046\u3080\u304d\u3099","\u3068\u304a\u3044","\u3068\u304a\u304b","\u3068\u304a\u304f","\u3068\u304a\u3059","\u3068\u304a\u308b","\u3068\u304b\u3044","\u3068\u304b\u3059","\u3068\u304d\u304a\u308a","\u3068\u304d\u3068\u3099\u304d","\u3068\u304f\u3044","\u3068\u304f\u3057\u3085\u3046","\u3068\u304f\u3066\u3093","\u3068\u304f\u306b","\u3068\u304f\u3078\u3099\u3064","\u3068\u3051\u3044","\u3068\u3051\u308b","\u3068\u3053\u3084","\u3068\u3055\u304b","\u3068\u3057\u3087\u304b\u3093","\u3068\u305d\u3046","\u3068\u305f\u3093","\u3068\u3061\u3085\u3046","\u3068\u3063\u304d\u3085\u3046","\u3068\u3063\u304f\u3093","\u3068\u3064\u305b\u3099\u3093","\u3068\u3064\u306b\u3085\u3046","\u3068\u3068\u3099\u3051\u308b","\u3068\u3068\u306e\u3048\u308b","\u3068\u306a\u3044","\u3068\u306a\u3048\u308b","\u3068\u306a\u308a","\u3068\u306e\u3055\u307e","\u3068\u306f\u3099\u3059","\u3068\u3099\u3075\u3099\u304b\u3099\u308f","\u3068\u307b\u3046","\u3068\u307e\u308b","\u3068\u3081\u308b","\u3068\u3082\u305f\u3099\u3061","\u3068\u3082\u308b","\u3068\u3099\u3088\u3046\u3072\u3099","\u3068\u3089\u3048\u308b","\u3068\u3093\u304b\u3064","\u3068\u3099\u3093\u3075\u3099\u308a","\u306a\u3044\u304b\u304f","\u306a\u3044\u3053\u3046","\u306a\u3044\u3057\u3087","\u306a\u3044\u3059","\u306a\u3044\u305b\u3093","\u306a\u3044\u305d\u3046","\u306a\u304a\u3059","\u306a\u304b\u3099\u3044","\u306a\u304f\u3059","\u306a\u3051\u3099\u308b","\u306a\u3053\u3046\u3068\u3099","\u306a\u3055\u3051","\u306a\u305f\u3066\u3099\u3053\u3053","\u306a\u3063\u3068\u3046","\u306a\u3064\u3084\u3059\u307f","\u306a\u306a\u304a\u3057","\u306a\u306b\u3053\u3099\u3068","\u306a\u306b\u3082\u306e","\u306a\u306b\u308f","\u306a\u306e\u304b","\u306a\u3075\u305f\u3099","\u306a\u307e\u3044\u304d","\u306a\u307e\u3048","\u306a\u307e\u307f","\u306a\u307f\u305f\u3099","\u306a\u3081\u3089\u304b","\u306a\u3081\u308b","\u306a\u3084\u3080","\u306a\u3089\u3046","\u306a\u3089\u3072\u3099","\u306a\u3089\u3075\u3099","\u306a\u308c\u308b","\u306a\u308f\u3068\u3072\u3099","\u306a\u308f\u306f\u3099\u308a","\u306b\u3042\u3046","\u306b\u3044\u304b\u3099\u305f","\u306b\u3046\u3051","\u306b\u304a\u3044","\u306b\u304b\u3044","\u306b\u304b\u3099\u3066","\u306b\u304d\u3072\u3099","\u306b\u304f\u3057\u307f","\u306b\u304f\u307e\u3093","\u306b\u3051\u3099\u308b","\u306b\u3055\u3093\u304b\u305f\u3093\u305d","\u306b\u3057\u304d","\u306b\u305b\u3082\u306e","\u306b\u3061\u3057\u3099\u3087\u3046","\u306b\u3061\u3088\u3046\u3072\u3099","\u306b\u3063\u304b","\u306b\u3063\u304d","\u306b\u3063\u3051\u3044","\u306b\u3063\u3053\u3046","\u306b\u3063\u3055\u3093","\u306b\u3063\u3057\u3087\u304f","\u306b\u3063\u3059\u3046","\u306b\u3063\u305b\u304d","\u306b\u3063\u3066\u3044","\u306b\u306a\u3046","\u306b\u307b\u3093","\u306b\u307e\u3081","\u306b\u3082\u3064","\u306b\u3084\u308a","\u306b\u3085\u3046\u3044\u3093","\u306b\u308a\u3093\u3057\u3083","\u306b\u308f\u3068\u308a","\u306b\u3093\u3044","\u306b\u3093\u304b","\u306b\u3093\u304d","\u306b\u3093\u3051\u3099\u3093","\u306b\u3093\u3057\u304d","\u306b\u3093\u3059\u3099\u3046","\u306b\u3093\u305d\u3046","\u306b\u3093\u305f\u3044","\u306b\u3093\u3061","\u306b\u3093\u3066\u3044","\u306b\u3093\u306b\u304f","\u306b\u3093\u3075\u309a","\u306b\u3093\u307e\u308a","\u306b\u3093\u3080","\u306b\u3093\u3081\u3044","\u306b\u3093\u3088\u3046","\u306c\u3044\u304f\u304d\u3099","\u306c\u304b\u3059","\u306c\u304f\u3099\u3044\u3068\u308b","\u306c\u304f\u3099\u3046","\u306c\u304f\u3082\u308a","\u306c\u3059\u3080","\u306c\u307e\u3048\u3072\u3099","\u306c\u3081\u308a","\u306c\u3089\u3059","\u306c\u3093\u3061\u3083\u304f","\u306d\u3042\u3051\u3099","\u306d\u3044\u304d","\u306d\u3044\u308b","\u306d\u3044\u308d","\u306d\u304f\u3099\u305b","\u306d\u304f\u305f\u3044","\u306d\u304f\u3089","\u306d\u3053\u305b\u3099","\u306d\u3053\u3080","\u306d\u3055\u3051\u3099","\u306d\u3059\u3053\u3099\u3059","\u306d\u305d\u3078\u3099\u308b","\u306d\u305f\u3099\u3093","\u306d\u3064\u3044","\u306d\u3063\u3057\u3093","\u306d\u3064\u305d\u3099\u3046","\u306d\u3063\u305f\u3044\u304d\u3099\u3087","\u306d\u3075\u3099\u305d\u304f","\u306d\u3075\u305f\u3099","\u306d\u307b\u3099\u3046","\u306d\u307b\u308a\u306f\u307b\u308a","\u306d\u307e\u304d","\u306d\u307e\u308f\u3057","\u306d\u307f\u307f","\u306d\u3080\u3044","\u306d\u3080\u305f\u3044","\u306d\u3082\u3068","\u306d\u3089\u3046","\u306d\u308f\u3055\u3099","\u306d\u3093\u3044\u308a","\u306d\u3093\u304a\u3057","\u306d\u3093\u304b\u3093","\u306d\u3093\u304d\u3093","\u306d\u3093\u304f\u3099","\u306d\u3093\u3055\u3099","\u306d\u3093\u3057","\u306d\u3093\u3061\u3083\u304f","\u306d\u3093\u3068\u3099","\u306d\u3093\u3072\u309a","\u306d\u3093\u3075\u3099\u3064","\u306d\u3093\u307e\u3064","\u306d\u3093\u308a\u3087\u3046","\u306d\u3093\u308c\u3044","\u306e\u3044\u3059\u3099","\u306e\u304a\u3064\u3099\u307e","\u306e\u304b\u3099\u3059","\u306e\u304d\u306a\u307f","\u306e\u3053\u304d\u3099\u308a","\u306e\u3053\u3059","\u306e\u3053\u308b","\u306e\u305b\u308b","\u306e\u305d\u3099\u304f","\u306e\u305d\u3099\u3080","\u306e\u305f\u307e\u3046","\u306e\u3061\u307b\u3068\u3099","\u306e\u3063\u304f","\u306e\u306f\u3099\u3059","\u306e\u306f\u3089","\u306e\u3078\u3099\u308b","\u306e\u307b\u3099\u308b","\u306e\u307f\u3082\u306e","\u306e\u3084\u307e","\u306e\u3089\u3044\u306c","\u306e\u3089\u306d\u3053","\u306e\u308a\u3082\u306e","\u306e\u308a\u3086\u304d","\u306e\u308c\u3093","\u306e\u3093\u304d","\u306f\u3099\u3042\u3044","\u306f\u3042\u304f","\u306f\u3099\u3042\u3055\u3093","\u306f\u3099\u3044\u304b","\u306f\u3099\u3044\u304f","\u306f\u3044\u3051\u3093","\u306f\u3044\u3053\u3099","\u306f\u3044\u3057\u3093","\u306f\u3044\u3059\u3044","\u306f\u3044\u305b\u3093","\u306f\u3044\u305d\u3046","\u306f\u3044\u3061","\u306f\u3099\u3044\u306f\u3099\u3044","\u306f\u3044\u308c\u3064","\u306f\u3048\u308b","\u306f\u304a\u308b","\u306f\u304b\u3044","\u306f\u3099\u304b\u308a","\u306f\u304b\u308b","\u306f\u304f\u3057\u3085","\u306f\u3051\u3093","\u306f\u3053\u3075\u3099","\u306f\u3055\u307f","\u306f\u3055\u3093","\u306f\u3057\u3053\u3099","\u306f\u3099\u3057\u3087","\u306f\u3057\u308b","\u306f\u305b\u308b","\u306f\u309a\u305d\u3053\u3093","\u306f\u305d\u3093","\u306f\u305f\u3093","\u306f\u3061\u307f\u3064","\u306f\u3064\u304a\u3093","\u306f\u3063\u304b\u304f","\u306f\u3064\u3099\u304d","\u306f\u3063\u304d\u308a","\u306f\u3063\u304f\u3064","\u306f\u3063\u3051\u3093","\u306f\u3063\u3053\u3046","\u306f\u3063\u3055\u3093","\u306f\u3063\u3057\u3093","\u306f\u3063\u305f\u3064","\u306f\u3063\u3061\u3085\u3046","\u306f\u3063\u3066\u3093","\u306f\u3063\u3072\u309a\u3087\u3046","\u306f\u3063\u307b\u309a\u3046","\u306f\u306a\u3059","\u306f\u306a\u3072\u3099","\u306f\u306b\u304b\u3080","\u306f\u3075\u3099\u3089\u3057","\u306f\u307f\u304b\u3099\u304d","\u306f\u3080\u304b\u3046","\u306f\u3081\u3064","\u306f\u3084\u3044","\u306f\u3084\u3057","\u306f\u3089\u3046","\u306f\u308d\u3046\u3043\u3093","\u306f\u308f\u3044","\u306f\u3093\u3044","\u306f\u3093\u3048\u3044","\u306f\u3093\u304a\u3093","\u306f\u3093\u304b\u304f","\u306f\u3093\u304d\u3087\u3046","\u306f\u3099\u3093\u304f\u3099\u307f","\u306f\u3093\u3053","\u306f\u3093\u3057\u3083","\u306f\u3093\u3059\u3046","\u306f\u3093\u305f\u3099\u3093","\u306f\u309a\u3093\u3061","\u306f\u309a\u3093\u3064","\u306f\u3093\u3066\u3044","\u306f\u3093\u3068\u3057","\u306f\u3093\u306e\u3046","\u306f\u3093\u306f\u309a","\u306f\u3093\u3075\u3099\u3093","\u306f\u3093\u3078\u309a\u3093","\u306f\u3093\u307b\u3099\u3046\u304d","\u306f\u3093\u3081\u3044","\u306f\u3093\u3089\u3093","\u306f\u3093\u308d\u3093","\u3072\u3044\u304d","\u3072\u3046\u3093","\u3072\u3048\u308b","\u3072\u304b\u304f","\u3072\u304b\u308a","\u3072\u304b\u308b","\u3072\u304b\u3093","\u3072\u304f\u3044","\u3072\u3051\u3064","\u3072\u3053\u3046\u304d","\u3072\u3053\u304f","\u3072\u3055\u3044","\u3072\u3055\u3057\u3075\u3099\u308a","\u3072\u3055\u3093","\u3072\u3099\u3057\u3099\u3085\u3064\u304b\u3093","\u3072\u3057\u3087","\u3072\u305d\u304b","\u3072\u305d\u3080","\u3072\u305f\u3080\u304d","\u3072\u305f\u3099\u308a","\u3072\u305f\u308b","\u3072\u3064\u304d\u3099","\u3072\u3063\u3053\u3057","\u3072\u3063\u3057","\u3072\u3064\u3057\u3099\u3085\u3072\u3093","\u3072\u3063\u3059","\u3072\u3064\u305b\u3099\u3093","\u3072\u309a\u3063\u305f\u308a","\u3072\u309a\u3063\u3061\u308a","\u3072\u3064\u3088\u3046","\u3072\u3066\u3044","\u3072\u3068\u3053\u3099\u307f","\u3072\u306a\u307e\u3064\u308a","\u3072\u306a\u3093","\u3072\u306d\u308b","\u3072\u306f\u3093","\u3072\u3072\u3099\u304f","\u3072\u3072\u3087\u3046","\u3072\u307b\u3046","\u3072\u307e\u308f\u308a","\u3072\u307e\u3093","\u3072\u307f\u3064","\u3072\u3081\u3044","\u3072\u3081\u3057\u3099\u3057","\u3072\u3084\u3051","\u3072\u3084\u3059","\u3072\u3088\u3046","\u3072\u3099\u3087\u3046\u304d","\u3072\u3089\u304b\u3099\u306a","\u3072\u3089\u304f","\u3072\u308a\u3064","\u3072\u308a\u3087\u3046","\u3072\u308b\u307e","\u3072\u308b\u3084\u3059\u307f","\u3072\u308c\u3044","\u3072\u308d\u3044","\u3072\u308d\u3046","\u3072\u308d\u304d","\u3072\u308d\u3086\u304d","\u3072\u3093\u304b\u304f","\u3072\u3093\u3051\u3064","\u3072\u3093\u3053\u3093","\u3072\u3093\u3057\u3085","\u3072\u3093\u305d\u3046","\u3072\u309a\u3093\u3061","\u3072\u3093\u306f\u309a\u3093","\u3072\u3099\u3093\u307b\u3099\u3046","\u3075\u3042\u3093","\u3075\u3044\u3046\u3061","\u3075\u3046\u3051\u3044","\u3075\u3046\u305b\u3093","\u3075\u309a\u3046\u305f\u308d\u3046","\u3075\u3046\u3068\u3046","\u3075\u3046\u3075","\u3075\u3048\u308b","\u3075\u304a\u3093","\u3075\u304b\u3044","\u3075\u304d\u3093","\u3075\u304f\u3055\u3099\u3064","\u3075\u304f\u3075\u3099\u304f\u308d","\u3075\u3053\u3046","\u3075\u3055\u3044","\u3075\u3057\u304d\u3099","\u3075\u3057\u3099\u307f","\u3075\u3059\u307e","\u3075\u305b\u3044","\u3075\u305b\u304f\u3099","\u3075\u305d\u304f","\u3075\u3099\u305f\u306b\u304f","\u3075\u305f\u3093","\u3075\u3061\u3087\u3046","\u3075\u3064\u3046","\u3075\u3064\u304b","\u3075\u3063\u304b\u3064","\u3075\u3063\u304d","\u3075\u3063\u3053\u304f","\u3075\u3099\u3068\u3099\u3046","\u3075\u3068\u308b","\u3075\u3068\u3093","\u3075\u306e\u3046","\u3075\u306f\u3044","\u3075\u3072\u3087\u3046","\u3075\u3078\u3093","\u3075\u307e\u3093","\u3075\u307f\u3093","\u3075\u3081\u3064","\u3075\u3081\u3093","\u3075\u3088\u3046","\u3075\u308a\u3053","\u3075\u308a\u308b","\u3075\u308b\u3044","\u3075\u3093\u3044\u304d","\u3075\u3099\u3093\u304b\u3099\u304f","\u3075\u3099\u3093\u304f\u3099","\u3075\u3093\u3057\u3064","\u3075\u3099\u3093\u305b\u304d","\u3075\u3093\u305d\u3046","\u3075\u3099\u3093\u307b\u309a\u3046","\u3078\u3044\u3042\u3093","\u3078\u3044\u304a\u3093","\u3078\u3044\u304b\u3099\u3044","\u3078\u3044\u304d","\u3078\u3044\u3051\u3099\u3093","\u3078\u3044\u3053\u3046","\u3078\u3044\u3055","\u3078\u3044\u3057\u3083","\u3078\u3044\u305b\u3064","\u3078\u3044\u305d","\u3078\u3044\u305f\u304f","\u3078\u3044\u3066\u3093","\u3078\u3044\u306d\u3064","\u3078\u3044\u308f","\u3078\u304d\u304b\u3099","\u3078\u3053\u3080","\u3078\u3099\u306b\u3044\u308d","\u3078\u3099\u306b\u3057\u3087\u3046\u304b\u3099","\u3078\u3089\u3059","\u3078\u3093\u304b\u3093","\u3078\u3099\u3093\u304d\u3087\u3046","\u3078\u3099\u3093\u3053\u3099\u3057","\u3078\u3093\u3055\u3044","\u3078\u3093\u305f\u3044","\u3078\u3099\u3093\u308a","\u307b\u3042\u3093","\u307b\u3044\u304f","\u307b\u3099\u3046\u304d\u3099\u3087","\u307b\u3046\u3053\u304f","\u307b\u3046\u305d\u3046","\u307b\u3046\u307b\u3046","\u307b\u3046\u3082\u3093","\u307b\u3046\u308a\u3064","\u307b\u3048\u308b","\u307b\u304a\u3093","\u307b\u304b\u3093","\u307b\u304d\u3087\u3046","\u307b\u3099\u304d\u3093","\u307b\u304f\u308d","\u307b\u3051\u3064","\u307b\u3051\u3093","\u307b\u3053\u3046","\u307b\u3053\u308b","\u307b\u3057\u3044","\u307b\u3057\u3064","\u307b\u3057\u3085","\u307b\u3057\u3087\u3046","\u307b\u305b\u3044","\u307b\u305d\u3044","\u307b\u305d\u304f","\u307b\u305f\u3066","\u307b\u305f\u308b","\u307b\u309a\u3061\u3075\u3099\u304f\u308d","\u307b\u3063\u304d\u3087\u304f","\u307b\u3063\u3055","\u307b\u3063\u305f\u3093","\u307b\u3068\u3093\u3068\u3099","\u307b\u3081\u308b","\u307b\u3093\u3044","\u307b\u3093\u304d","\u307b\u3093\u3051","\u307b\u3093\u3057\u3064","\u307b\u3093\u3084\u304f","\u307e\u3044\u306b\u3061","\u307e\u304b\u3044","\u307e\u304b\u305b\u308b","\u307e\u304b\u3099\u308b","\u307e\u3051\u308b","\u307e\u3053\u3068","\u307e\u3055\u3064","\u307e\u3057\u3099\u3081","\u307e\u3059\u304f","\u307e\u305b\u3099\u308b","\u307e\u3064\u308a","\u307e\u3068\u3081","\u307e\u306a\u3075\u3099","\u307e\u306c\u3051","\u307e\u306d\u304f","\u307e\u307b\u3046","\u307e\u3082\u308b","\u307e\u3086\u3051\u3099","\u307e\u3088\u3046","\u307e\u308d\u3084\u304b","\u307e\u308f\u3059","\u307e\u308f\u308a","\u307e\u308f\u308b","\u307e\u3093\u304b\u3099","\u307e\u3093\u304d\u3064","\u307e\u3093\u305d\u3099\u304f","\u307e\u3093\u306a\u304b","\u307f\u3044\u3089","\u307f\u3046\u3061","\u307f\u3048\u308b","\u307f\u304b\u3099\u304f","\u307f\u304b\u305f","\u307f\u304b\u3093","\u307f\u3051\u3093","\u307f\u3053\u3093","\u307f\u3057\u3099\u304b\u3044","\u307f\u3059\u3044","\u307f\u3059\u3048\u308b","\u307f\u305b\u308b","\u307f\u3063\u304b","\u307f\u3064\u304b\u308b","\u307f\u3064\u3051\u308b","\u307f\u3066\u3044","\u307f\u3068\u3081\u308b","\u307f\u306a\u3068","\u307f\u306a\u307f\u304b\u3055\u3044","\u307f\u306d\u3089\u308b","\u307f\u306e\u3046","\u307f\u306e\u304b\u3099\u3059","\u307f\u307b\u3093","\u307f\u3082\u3068","\u307f\u3084\u3051\u3099","\u307f\u3089\u3044","\u307f\u308a\u3087\u304f","\u307f\u308f\u304f","\u307f\u3093\u304b","\u307f\u3093\u305d\u3099\u304f","\u3080\u3044\u304b","\u3080\u3048\u304d","\u3080\u3048\u3093","\u3080\u304b\u3044","\u3080\u304b\u3046","\u3080\u304b\u3048","\u3080\u304b\u3057","\u3080\u304d\u3099\u3061\u3083","\u3080\u3051\u308b","\u3080\u3051\u3099\u3093","\u3080\u3055\u307b\u3099\u308b","\u3080\u3057\u3042\u3064\u3044","\u3080\u3057\u306f\u3099","\u3080\u3057\u3099\u3085\u3093","\u3080\u3057\u308d","\u3080\u3059\u3046","\u3080\u3059\u3053","\u3080\u3059\u3075\u3099","\u3080\u3059\u3081","\u3080\u305b\u308b","\u3080\u305b\u3093","\u3080\u3061\u3085\u3046","\u3080\u306a\u3057\u3044","\u3080\u306e\u3046","\u3080\u3084\u307f","\u3080\u3088\u3046","\u3080\u3089\u3055\u304d","\u3080\u308a\u3087\u3046","\u3080\u308d\u3093","\u3081\u3044\u3042\u3093","\u3081\u3044\u3046\u3093","\u3081\u3044\u3048\u3093","\u3081\u3044\u304b\u304f","\u3081\u3044\u304d\u3087\u304f","\u3081\u3044\u3055\u3044","\u3081\u3044\u3057","\u3081\u3044\u305d\u3046","\u3081\u3044\u3075\u3099\u3064","\u3081\u3044\u308c\u3044","\u3081\u3044\u308f\u304f","\u3081\u304f\u3099\u307e\u308c\u308b","\u3081\u3055\u3099\u3059","\u3081\u3057\u305f","\u3081\u3059\u3099\u3089\u3057\u3044","\u3081\u305f\u3099\u3064","\u3081\u307e\u3044","\u3081\u3084\u3059","\u3081\u3093\u304d\u3087","\u3081\u3093\u305b\u304d","\u3081\u3093\u3068\u3099\u3046","\u3082\u3046\u3057\u3042\u3051\u3099\u308b","\u3082\u3046\u3068\u3099\u3046\u3051\u3093","\u3082\u3048\u308b","\u3082\u304f\u3057","\u3082\u304f\u3066\u304d","\u3082\u304f\u3088\u3046\u3072\u3099","\u3082\u3061\u308d\u3093","\u3082\u3068\u3099\u308b","\u3082\u3089\u3046","\u3082\u3093\u304f","\u3082\u3093\u305f\u3099\u3044","\u3084\u304a\u3084","\u3084\u3051\u308b","\u3084\u3055\u3044","\u3084\u3055\u3057\u3044","\u3084\u3059\u3044","\u3084\u3059\u305f\u308d\u3046","\u3084\u3059\u307f","\u3084\u305b\u308b","\u3084\u305d\u3046","\u3084\u305f\u3044","\u3084\u3061\u3093","\u3084\u3063\u3068","\u3084\u3063\u306f\u309a\u308a","\u3084\u3075\u3099\u308b","\u3084\u3081\u308b","\u3084\u3084\u3053\u3057\u3044","\u3084\u3088\u3044","\u3084\u308f\u3089\u304b\u3044","\u3086\u3046\u304d","\u3086\u3046\u3072\u3099\u3093\u304d\u3087\u304f","\u3086\u3046\u3078\u3099","\u3086\u3046\u3081\u3044","\u3086\u3051\u3064","\u3086\u3057\u3085\u3064","\u3086\u305b\u3093","\u3086\u305d\u3046","\u3086\u305f\u304b","\u3086\u3061\u3083\u304f","\u3086\u3066\u3099\u308b","\u3086\u306b\u3085\u3046","\u3086\u3072\u3099\u308f","\u3086\u3089\u3044","\u3086\u308c\u308b","\u3088\u3046\u3044","\u3088\u3046\u304b","\u3088\u3046\u304d\u3085\u3046","\u3088\u3046\u3057\u3099","\u3088\u3046\u3059","\u3088\u3046\u3061\u3048\u3093","\u3088\u304b\u305b\u3099","\u3088\u304b\u3093","\u3088\u304d\u3093","\u3088\u304f\u305b\u3044","\u3088\u304f\u307b\u3099\u3046","\u3088\u3051\u3044","\u3088\u3053\u3099\u308c\u308b","\u3088\u3055\u3093","\u3088\u3057\u3085\u3046","\u3088\u305d\u3046","\u3088\u305d\u304f","\u3088\u3063\u304b","\u3088\u3066\u3044","\u3088\u3068\u3099\u304b\u3099\u308f\u304f","\u3088\u306d\u3064","\u3088\u3084\u304f","\u3088\u3086\u3046","\u3088\u308d\u3053\u3075\u3099","\u3088\u308d\u3057\u3044","\u3089\u3044\u3046","\u3089\u304f\u304b\u3099\u304d","\u3089\u304f\u3053\u3099","\u3089\u304f\u3055\u3064","\u3089\u304f\u305f\u3099","\u3089\u3057\u3093\u306f\u3099\u3093","\u3089\u305b\u3093","\u3089\u305d\u3099\u304f","\u3089\u305f\u3044","\u3089\u3063\u304b","\u3089\u308c\u3064","\u308a\u3048\u304d","\u308a\u304b\u3044","\u308a\u304d\u3055\u304f","\u308a\u304d\u305b\u3064","\u308a\u304f\u304f\u3099\u3093","\u308a\u304f\u3064","\u308a\u3051\u3093","\u308a\u3053\u3046","\u308a\u305b\u3044","\u308a\u305d\u3046","\u308a\u305d\u304f","\u308a\u3066\u3093","\u308a\u306d\u3093","\u308a\u3086\u3046","\u308a\u3085\u3046\u304b\u3099\u304f","\u308a\u3088\u3046","\u308a\u3087\u3046\u308a","\u308a\u3087\u304b\u3093","\u308a\u3087\u304f\u3061\u3083","\u308a\u3087\u3053\u3046","\u308a\u308a\u304f","\u308a\u308c\u304d","\u308a\u308d\u3093","\u308a\u3093\u3053\u3099","\u308b\u3044\u3051\u3044","\u308b\u3044\u3055\u3044","\u308b\u3044\u3057\u3099","\u308b\u3044\u305b\u304d","\u308b\u3059\u306f\u3099\u3093","\u308b\u308a\u304b\u3099\u308f\u3089","\u308c\u3044\u304b\u3093","\u308c\u3044\u304d\u3099","\u308c\u3044\u305b\u3044","\u308c\u3044\u305d\u3099\u3046\u3053","\u308c\u3044\u3068\u3046","\u308c\u3044\u307b\u3099\u3046","\u308c\u304d\u3057","\u308c\u304d\u305f\u3099\u3044","\u308c\u3093\u3042\u3044","\u308c\u3093\u3051\u3044","\u308c\u3093\u3053\u3093","\u308c\u3093\u3055\u3044","\u308c\u3093\u3057\u3085\u3046","\u308c\u3093\u305d\u3099\u304f","\u308c\u3093\u3089\u304f","\u308d\u3046\u304b","\u308d\u3046\u3053\u3099","\u308d\u3046\u3057\u3099\u3093","\u308d\u3046\u305d\u304f","\u308d\u304f\u304b\u3099","\u308d\u3053\u3064","\u308d\u3057\u3099\u3046\u3089","\u308d\u3057\u3085\u3064","\u308d\u305b\u3093","\u308d\u3066\u3093","\u308d\u3081\u3093","\u308d\u308c\u3064","\u308d\u3093\u304d\u3099","\u308d\u3093\u306f\u309a","\u308d\u3093\u3075\u3099\u3093","\u308d\u3093\u308a","\u308f\u304b\u3059","\u308f\u304b\u3081","\u308f\u304b\u3084\u307e","\u308f\u304b\u308c\u308b","\u308f\u3057\u3064","\u308f\u3057\u3099\u307e\u3057","\u308f\u3059\u308c\u3082\u306e","\u308f\u3089\u3046","\u308f\u308c\u308b"]')},8013:e=>{"use strict";e.exports=JSON.parse('["\u1100\u1161\u1100\u1167\u11a8","\u1100\u1161\u1101\u1173\u11b7","\u1100\u1161\u1102\u1161\u11ab","\u1100\u1161\u1102\u1173\u11bc","\u1100\u1161\u1103\u1173\u11a8","\u1100\u1161\u1105\u1173\u110e\u1175\u11b7","\u1100\u1161\u1106\u116e\u11b7","\u1100\u1161\u1107\u1161\u11bc","\u1100\u1161\u1109\u1161\u11bc","\u1100\u1161\u1109\u1173\u11b7","\u1100\u1161\u110b\u116e\u11ab\u1103\u1166","\u1100\u1161\u110b\u1173\u11af","\u1100\u1161\u110b\u1175\u1103\u1173","\u1100\u1161\u110b\u1175\u11b8","\u1100\u1161\u110c\u1161\u11bc","\u1100\u1161\u110c\u1165\u11bc","\u1100\u1161\u110c\u1169\u11a8","\u1100\u1161\u110c\u116e\u11a8","\u1100\u1161\u11a8\u110b\u1169","\u1100\u1161\u11a8\u110c\u1161","\u1100\u1161\u11ab\u1100\u1167\u11a8","\u1100\u1161\u11ab\u1107\u116e","\u1100\u1161\u11ab\u1109\u1165\u11b8","\u1100\u1161\u11ab\u110c\u1161\u11bc","\u1100\u1161\u11ab\u110c\u1165\u11b8","\u1100\u1161\u11ab\u1111\u1161\u11ab","\u1100\u1161\u11af\u1103\u1173\u11bc","\u1100\u1161\u11af\u1107\u1175","\u1100\u1161\u11af\u1109\u1162\u11a8","\u1100\u1161\u11af\u110c\u1173\u11bc","\u1100\u1161\u11b7\u1100\u1161\u11a8","\u1100\u1161\u11b7\u1100\u1175","\u1100\u1161\u11b7\u1109\u1169","\u1100\u1161\u11b7\u1109\u116e\u1109\u1165\u11bc","\u1100\u1161\u11b7\u110c\u1161","\u1100\u1161\u11b7\u110c\u1165\u11bc","\u1100\u1161\u11b8\u110c\u1161\u1100\u1175","\u1100\u1161\u11bc\u1102\u1161\u11b7","\u1100\u1161\u11bc\u1103\u1161\u11bc","\u1100\u1161\u11bc\u1103\u1169","\u1100\u1161\u11bc\u1105\u1167\u11a8\u1112\u1175","\u1100\u1161\u11bc\u1107\u1167\u11ab","\u1100\u1161\u11bc\u1107\u116e\u11a8","\u1100\u1161\u11bc\u1109\u1161","\u1100\u1161\u11bc\u1109\u116e\u1105\u1163\u11bc","\u1100\u1161\u11bc\u110b\u1161\u110c\u1175","\u1100\u1161\u11bc\u110b\u116f\u11ab\u1103\u1169","\u1100\u1161\u11bc\u110b\u1174","\u1100\u1161\u11bc\u110c\u1166","\u1100\u1161\u11bc\u110c\u1169","\u1100\u1161\u11c0\u110b\u1175","\u1100\u1162\u1100\u116e\u1105\u1175","\u1100\u1162\u1102\u1161\u1105\u1175","\u1100\u1162\u1107\u1161\u11bc","\u1100\u1162\u1107\u1167\u11af","\u1100\u1162\u1109\u1165\u11ab","\u1100\u1162\u1109\u1165\u11bc","\u1100\u1162\u110b\u1175\u11ab","\u1100\u1162\u11a8\u1100\u116a\u11ab\u110c\u1165\u11a8","\u1100\u1165\u1109\u1175\u11af","\u1100\u1165\u110b\u1162\u11a8","\u1100\u1165\u110b\u116e\u11af","\u1100\u1165\u110c\u1175\u11ba","\u1100\u1165\u1111\u116e\u11b7","\u1100\u1165\u11a8\u110c\u1165\u11bc","\u1100\u1165\u11ab\u1100\u1161\u11bc","\u1100\u1165\u11ab\u1106\u116e\u11af","\u1100\u1165\u11ab\u1109\u1165\u11af","\u1100\u1165\u11ab\u110c\u1169","\u1100\u1165\u11ab\u110e\u116e\u11a8","\u1100\u1165\u11af\u110b\u1173\u11b7","\u1100\u1165\u11b7\u1109\u1161","\u1100\u1165\u11b7\u1110\u1169","\u1100\u1166\u1109\u1175\u1111\u1161\u11ab","\u1100\u1166\u110b\u1175\u11b7","\u1100\u1167\u110b\u116e\u11af","\u1100\u1167\u11ab\u1112\u1162","\u1100\u1167\u11af\u1100\u116a","\u1100\u1167\u11af\u1100\u116e\u11a8","\u1100\u1167\u11af\u1105\u1169\u11ab","\u1100\u1167\u11af\u1109\u1165\u11a8","\u1100\u1167\u11af\u1109\u1173\u11bc","\u1100\u1167\u11af\u1109\u1175\u11b7","\u1100\u1167\u11af\u110c\u1165\u11bc","\u1100\u1167\u11af\u1112\u1169\u11ab","\u1100\u1167\u11bc\u1100\u1168","\u1100\u1167\u11bc\u1100\u1169","\u1100\u1167\u11bc\u1100\u1175","\u1100\u1167\u11bc\u1105\u1167\u11a8","\u1100\u1167\u11bc\u1107\u1169\u11a8\u1100\u116e\u11bc","\u1100\u1167\u11bc\u1107\u1175","\u1100\u1167\u11bc\u1109\u1161\u11bc\u1103\u1169","\u1100\u1167\u11bc\u110b\u1167\u11bc","\u1100\u1167\u11bc\u110b\u116e","\u1100\u1167\u11bc\u110c\u1162\u11bc","\u1100\u1167\u11bc\u110c\u1166","\u1100\u1167\u11bc\u110c\u116e","\u1100\u1167\u11bc\u110e\u1161\u11af","\u1100\u1167\u11bc\u110e\u1175","\u1100\u1167\u11bc\u1112\u1163\u11bc","\u1100\u1167\u11bc\u1112\u1165\u11b7","\u1100\u1168\u1100\u1169\u11a8","\u1100\u1168\u1103\u1161\u11ab","\u1100\u1168\u1105\u1161\u11ab","\u1100\u1168\u1109\u1161\u11ab","\u1100\u1168\u1109\u1169\u11a8","\u1100\u1168\u110b\u1163\u11a8","\u1100\u1168\u110c\u1165\u11af","\u1100\u1168\u110e\u1173\u11bc","\u1100\u1168\u1112\u116c\u11a8","\u1100\u1169\u1100\u1162\u11a8","\u1100\u1169\u1100\u116e\u1105\u1167","\u1100\u1169\u1100\u116e\u11bc","\u1100\u1169\u1100\u1173\u11b8","\u1100\u1169\u1103\u1173\u11bc\u1112\u1161\u11a8\u1109\u1162\u11bc","\u1100\u1169\u1106\u116e\u1109\u1175\u11ab","\u1100\u1169\u1106\u1175\u11ab","\u1100\u1169\u110b\u1163\u11bc\u110b\u1175","\u1100\u1169\u110c\u1161\u11bc","\u1100\u1169\u110c\u1165\u11ab","\u1100\u1169\u110c\u1175\u11b8","\u1100\u1169\u110e\u116e\u11ba\u1100\u1161\u1105\u116e","\u1100\u1169\u1110\u1169\u11bc","\u1100\u1169\u1112\u1163\u11bc","\u1100\u1169\u11a8\u1109\u1175\u11a8","\u1100\u1169\u11af\u1106\u1169\u11a8","\u1100\u1169\u11af\u110d\u1161\u1100\u1175","\u1100\u1169\u11af\u1111\u1173","\u1100\u1169\u11bc\u1100\u1161\u11ab","\u1100\u1169\u11bc\u1100\u1162","\u1100\u1169\u11bc\u1100\u1167\u11a8","\u1100\u1169\u11bc\u1100\u116e\u11ab","\u1100\u1169\u11bc\u1100\u1173\u11b8","\u1100\u1169\u11bc\u1100\u1175","\u1100\u1169\u11bc\u1103\u1169\u11bc","\u1100\u1169\u11bc\u1106\u116e\u110b\u116f\u11ab","\u1100\u1169\u11bc\u1107\u116e","\u1100\u1169\u11bc\u1109\u1161","\u1100\u1169\u11bc\u1109\u1175\u11a8","\u1100\u1169\u11bc\u110b\u1165\u11b8","\u1100\u1169\u11bc\u110b\u1167\u11ab","\u1100\u1169\u11bc\u110b\u116f\u11ab","\u1100\u1169\u11bc\u110c\u1161\u11bc","\u1100\u1169\u11bc\u110d\u1161","\u1100\u1169\u11bc\u110e\u1162\u11a8","\u1100\u1169\u11bc\u1110\u1169\u11bc","\u1100\u1169\u11bc\u1111\u1169","\u1100\u1169\u11bc\u1112\u1161\u11bc","\u1100\u1169\u11bc\u1112\u1172\u110b\u1175\u11af","\u1100\u116a\u1106\u1169\u11a8","\u1100\u116a\u110b\u1175\u11af","\u1100\u116a\u110c\u1161\u11bc","\u1100\u116a\u110c\u1165\u11bc","\u1100\u116a\u1112\u1161\u11a8","\u1100\u116a\u11ab\u1100\u1162\u11a8","\u1100\u116a\u11ab\u1100\u1168","\u1100\u116a\u11ab\u1100\u116a\u11bc","\u1100\u116a\u11ab\u1102\u1167\u11b7","\u1100\u116a\u11ab\u1105\u1161\u11b7","\u1100\u116a\u11ab\u1105\u1167\u11ab","\u1100\u116a\u11ab\u1105\u1175","\u1100\u116a\u11ab\u1109\u1173\u11b8","\u1100\u116a\u11ab\u1109\u1175\u11b7","\u1100\u116a\u11ab\u110c\u1165\u11b7","\u1100\u116a\u11ab\u110e\u1161\u11af","\u1100\u116a\u11bc\u1100\u1167\u11bc","\u1100\u116a\u11bc\u1100\u1169","\u1100\u116a\u11bc\u110c\u1161\u11bc","\u1100\u116a\u11bc\u110c\u116e","\u1100\u116c\u1105\u1169\u110b\u116e\u11b7","\u1100\u116c\u11bc\u110c\u1161\u11bc\u1112\u1175","\u1100\u116d\u1100\u116a\u1109\u1165","\u1100\u116d\u1106\u116e\u11ab","\u1100\u116d\u1107\u1169\u11a8","\u1100\u116d\u1109\u1175\u11af","\u1100\u116d\u110b\u1163\u11bc","\u1100\u116d\u110b\u1172\u11a8","\u1100\u116d\u110c\u1161\u11bc","\u1100\u116d\u110c\u1175\u11a8","\u1100\u116d\u1110\u1169\u11bc","\u1100\u116d\u1112\u116a\u11ab","\u1100\u116d\u1112\u116e\u11ab","\u1100\u116e\u1100\u1167\u11bc","\u1100\u116e\u1105\u1173\u11b7","\u1100\u116e\u1106\u1165\u11bc","\u1100\u116e\u1107\u1167\u11af","\u1100\u116e\u1107\u116e\u11ab","\u1100\u116e\u1109\u1165\u11a8","\u1100\u116e\u1109\u1165\u11bc","\u1100\u116e\u1109\u1169\u11a8","\u1100\u116e\u110b\u1167\u11a8","\u1100\u116e\u110b\u1175\u11b8","\u1100\u116e\u110e\u1165\u11bc","\u1100\u116e\u110e\u1166\u110c\u1165\u11a8","\u1100\u116e\u11a8\u1100\u1161","\u1100\u116e\u11a8\u1100\u1175","\u1100\u116e\u11a8\u1102\u1162","\u1100\u116e\u11a8\u1105\u1175\u11b8","\u1100\u116e\u11a8\u1106\u116e\u11af","\u1100\u116e\u11a8\u1106\u1175\u11ab","\u1100\u116e\u11a8\u1109\u116e","\u1100\u116e\u11a8\u110b\u1165","\u1100\u116e\u11a8\u110b\u116a\u11bc","\u1100\u116e\u11a8\u110c\u1165\u11a8","\u1100\u116e\u11a8\u110c\u1166","\u1100\u116e\u11a8\u1112\u116c","\u1100\u116e\u11ab\u1103\u1162","\u1100\u116e\u11ab\u1109\u1161","\u1100\u116e\u11ab\u110b\u1175\u11ab","\u1100\u116e\u11bc\u1100\u1173\u11a8\u110c\u1165\u11a8","\u1100\u116f\u11ab\u1105\u1175","\u1100\u116f\u11ab\u110b\u1171","\u1100\u116f\u11ab\u1110\u116e","\u1100\u1171\u1100\u116e\u11a8","\u1100\u1171\u1109\u1175\u11ab","\u1100\u1172\u110c\u1165\u11bc","\u1100\u1172\u110e\u1175\u11a8","\u1100\u1172\u11ab\u1112\u1167\u11bc","\u1100\u1173\u1102\u1161\u11af","\u1100\u1173\u1102\u1163\u11bc","\u1100\u1173\u1102\u1173\u11af","\u1100\u1173\u1105\u1165\u1102\u1161","\u1100\u1173\u1105\u116e\u11b8","\u1100\u1173\u1105\u1173\u11ba","\u1100\u1173\u1105\u1175\u11b7","\u1100\u1173\u110c\u1166\u1109\u1165\u110b\u1163","\u1100\u1173\u1110\u1169\u1105\u1169\u11a8","\u1100\u1173\u11a8\u1107\u1169\u11a8","\u1100\u1173\u11a8\u1112\u1175","\u1100\u1173\u11ab\u1100\u1165","\u1100\u1173\u11ab\u1100\u116d","\u1100\u1173\u11ab\u1105\u1162","\u1100\u1173\u11ab\u1105\u1169","\u1100\u1173\u11ab\u1106\u116e","\u1100\u1173\u11ab\u1107\u1169\u11ab","\u1100\u1173\u11ab\u110b\u116f\u11ab","\u1100\u1173\u11ab\u110b\u1172\u11a8","\u1100\u1173\u11ab\u110e\u1165","\u1100\u1173\u11af\u110a\u1175","\u1100\u1173\u11af\u110c\u1161","\u1100\u1173\u11b7\u1100\u1161\u11bc\u1109\u1161\u11ab","\u1100\u1173\u11b7\u1100\u1169","\u1100\u1173\u11b7\u1102\u1167\u11ab","\u1100\u1173\u11b7\u1106\u1166\u1103\u1161\u11af","\u1100\u1173\u11b7\u110b\u1162\u11a8","\u1100\u1173\u11b7\u110b\u1167\u11ab","\u1100\u1173\u11b7\u110b\u116d\u110b\u1175\u11af","\u1100\u1173\u11b7\u110c\u1175","\u1100\u1173\u11bc\u110c\u1165\u11bc\u110c\u1165\u11a8","\u1100\u1175\u1100\u1161\u11ab","\u1100\u1175\u1100\u116a\u11ab","\u1100\u1175\u1102\u1167\u11b7","\u1100\u1175\u1102\u1173\u11bc","\u1100\u1175\u1103\u1169\u11a8\u1100\u116d","\u1100\u1175\u1103\u116e\u11bc","\u1100\u1175\u1105\u1169\u11a8","\u1100\u1175\u1105\u1173\u11b7","\u1100\u1175\u1107\u1165\u11b8","\u1100\u1175\u1107\u1169\u11ab","\u1100\u1175\u1107\u116e\u11ab","\u1100\u1175\u1108\u1173\u11b7","\u1100\u1175\u1109\u116e\u11a8\u1109\u1161","\u1100\u1175\u1109\u116e\u11af","\u1100\u1175\u110b\u1165\u11a8","\u1100\u1175\u110b\u1165\u11b8","\u1100\u1175\u110b\u1169\u11ab","\u1100\u1175\u110b\u116e\u11ab","\u1100\u1175\u110b\u116f\u11ab","\u1100\u1175\u110c\u1165\u11a8","\u1100\u1175\u110c\u116e\u11ab","\u1100\u1175\u110e\u1175\u11b7","\u1100\u1175\u1112\u1169\u11ab","\u1100\u1175\u1112\u116c\u11a8","\u1100\u1175\u11ab\u1100\u1173\u11b8","\u1100\u1175\u11ab\u110c\u1161\u11bc","\u1100\u1175\u11af\u110b\u1175","\u1100\u1175\u11b7\u1107\u1161\u11b8","\u1100\u1175\u11b7\u110e\u1175","\u1100\u1175\u11b7\u1111\u1169\u1100\u1169\u11bc\u1112\u1161\u11bc","\u1101\u1161\u11a8\u1103\u116e\u1100\u1175","\u1101\u1161\u11b7\u1108\u1161\u11a8","\u1101\u1162\u1103\u1161\u11af\u110b\u1173\u11b7","\u1101\u1162\u1109\u1169\u1100\u1173\u11b7","\u1101\u1165\u11b8\u110c\u1175\u11af","\u1101\u1169\u11a8\u1103\u1162\u1100\u1175","\u1101\u1169\u11be\u110b\u1175\u11c1","\u1102\u1161\u1103\u1173\u11af\u110b\u1175","\u1102\u1161\u1105\u1161\u11ab\u1112\u1175","\u1102\u1161\u1106\u1165\u110c\u1175","\u1102\u1161\u1106\u116e\u11af","\u1102\u1161\u110e\u1175\u11b7\u1107\u1161\u11ab","\u1102\u1161\u1112\u1173\u11af","\u1102\u1161\u11a8\u110b\u1167\u11b8","\u1102\u1161\u11ab\u1107\u1161\u11bc","\u1102\u1161\u11af\u1100\u1162","\u1102\u1161\u11af\u110a\u1175","\u1102\u1161\u11af\u110d\u1161","\u1102\u1161\u11b7\u1102\u1167","\u1102\u1161\u11b7\u1103\u1162\u1106\u116e\u11ab","\u1102\u1161\u11b7\u1106\u1162","\u1102\u1161\u11b7\u1109\u1161\u11ab","\u1102\u1161\u11b7\u110c\u1161","\u1102\u1161\u11b7\u1111\u1167\u11ab","\u1102\u1161\u11b7\u1112\u1161\u11a8\u1109\u1162\u11bc","\u1102\u1161\u11bc\u1107\u1175","\u1102\u1161\u11c0\u1106\u1161\u11af","\u1102\u1162\u1102\u1167\u11ab","\u1102\u1162\u110b\u116d\u11bc","\u1102\u1162\u110b\u1175\u11af","\u1102\u1162\u11b7\u1107\u1175","\u1102\u1162\u11b7\u1109\u1162","\u1102\u1162\u11ba\u1106\u116e\u11af","\u1102\u1162\u11bc\u1103\u1169\u11bc","\u1102\u1162\u11bc\u1106\u1167\u11ab","\u1102\u1162\u11bc\u1107\u1161\u11bc","\u1102\u1162\u11bc\u110c\u1161\u11bc\u1100\u1169","\u1102\u1166\u11a8\u1110\u1161\u110b\u1175","\u1102\u1166\u11ba\u110d\u1162","\u1102\u1169\u1103\u1169\u11bc","\u1102\u1169\u1105\u1161\u11ab\u1109\u1162\u11a8","\u1102\u1169\u1105\u1167\u11a8","\u1102\u1169\u110b\u1175\u11ab","\u1102\u1169\u11a8\u110b\u1173\u11b7","\u1102\u1169\u11a8\u110e\u1161","\u1102\u1169\u11a8\u1112\u116a","\u1102\u1169\u11ab\u1105\u1175","\u1102\u1169\u11ab\u1106\u116e\u11ab","\u1102\u1169\u11ab\u110c\u1162\u11bc","\u1102\u1169\u11af\u110b\u1175","\u1102\u1169\u11bc\u1100\u116e","\u1102\u1169\u11bc\u1103\u1161\u11b7","\u1102\u1169\u11bc\u1106\u1175\u11ab","\u1102\u1169\u11bc\u1107\u116e","\u1102\u1169\u11bc\u110b\u1165\u11b8","\u1102\u1169\u11bc\u110c\u1161\u11bc","\u1102\u1169\u11bc\u110e\u1169\u11ab","\u1102\u1169\u11c1\u110b\u1175","\u1102\u116e\u11ab\u1103\u1169\u11bc\u110c\u1161","\u1102\u116e\u11ab\u1106\u116e\u11af","\u1102\u116e\u11ab\u110a\u1165\u11b8","\u1102\u1172\u110b\u116d\u11a8","\u1102\u1173\u1101\u1175\u11b7","\u1102\u1173\u11a8\u1103\u1162","\u1102\u1173\u11bc\u1103\u1169\u11bc\u110c\u1165\u11a8","\u1102\u1173\u11bc\u1105\u1167\u11a8","\u1103\u1161\u1107\u1161\u11bc","\u1103\u1161\u110b\u1163\u11bc\u1109\u1165\u11bc","\u1103\u1161\u110b\u1173\u11b7","\u1103\u1161\u110b\u1175\u110b\u1165\u1110\u1173","\u1103\u1161\u1112\u1162\u11bc","\u1103\u1161\u11ab\u1100\u1168","\u1103\u1161\u11ab\u1100\u1169\u11af","\u1103\u1161\u11ab\u1103\u1169\u11a8","\u1103\u1161\u11ab\u1106\u1161\u11ba","\u1103\u1161\u11ab\u1109\u116e\u11ab","\u1103\u1161\u11ab\u110b\u1165","\u1103\u1161\u11ab\u110b\u1171","\u1103\u1161\u11ab\u110c\u1165\u11b7","\u1103\u1161\u11ab\u110e\u1166","\u1103\u1161\u11ab\u110e\u116e","\u1103\u1161\u11ab\u1111\u1167\u11ab","\u1103\u1161\u11ab\u1111\u116e\u11bc","\u1103\u1161\u11af\u1100\u1163\u11af","\u1103\u1161\u11af\u1105\u1165","\u1103\u1161\u11af\u1105\u1167\u11a8","\u1103\u1161\u11af\u1105\u1175","\u1103\u1161\u11b0\u1100\u1169\u1100\u1175","\u1103\u1161\u11b7\u1103\u1161\u11bc","\u1103\u1161\u11b7\u1107\u1162","\u1103\u1161\u11b7\u110b\u116d","\u1103\u1161\u11b7\u110b\u1175\u11b7","\u1103\u1161\u11b8\u1107\u1167\u11ab","\u1103\u1161\u11b8\u110c\u1161\u11bc","\u1103\u1161\u11bc\u1100\u1173\u11ab","\u1103\u1161\u11bc\u1107\u116e\u11ab\u1100\u1161\u11ab","\u1103\u1161\u11bc\u110b\u1167\u11ab\u1112\u1175","\u1103\u1161\u11bc\u110c\u1161\u11bc","\u1103\u1162\u1100\u1172\u1106\u1169","\u1103\u1162\u1102\u1161\u11bd","\u1103\u1162\u1103\u1161\u11ab\u1112\u1175","\u1103\u1162\u1103\u1161\u11b8","\u1103\u1162\u1103\u1169\u1109\u1175","\u1103\u1162\u1105\u1163\u11a8","\u1103\u1162\u1105\u1163\u11bc","\u1103\u1162\u1105\u1172\u11a8","\u1103\u1162\u1106\u116e\u11ab","\u1103\u1162\u1107\u116e\u1107\u116e\u11ab","\u1103\u1162\u1109\u1175\u11ab","\u1103\u1162\u110b\u1173\u11bc","\u1103\u1162\u110c\u1161\u11bc","\u1103\u1162\u110c\u1165\u11ab","\u1103\u1162\u110c\u1165\u11b8","\u1103\u1162\u110c\u116e\u11bc","\u1103\u1162\u110e\u1162\u11a8","\u1103\u1162\u110e\u116e\u11af","\u1103\u1162\u110e\u116e\u11bc","\u1103\u1162\u1110\u1169\u11bc\u1105\u1167\u11bc","\u1103\u1162\u1112\u1161\u11a8","\u1103\u1162\u1112\u1161\u11ab\u1106\u1175\u11ab\u1100\u116e\u11a8","\u1103\u1162\u1112\u1161\u11b8\u1109\u1175\u11af","\u1103\u1162\u1112\u1167\u11bc","\u1103\u1165\u11bc\u110b\u1165\u1105\u1175","\u1103\u1166\u110b\u1175\u1110\u1173","\u1103\u1169\u1103\u1162\u110e\u1166","\u1103\u1169\u1103\u1165\u11a8","\u1103\u1169\u1103\u116e\u11a8","\u1103\u1169\u1106\u1161\u11bc","\u1103\u1169\u1109\u1165\u1100\u116a\u11ab","\u1103\u1169\u1109\u1175\u11b7","\u1103\u1169\u110b\u116e\u11b7","\u1103\u1169\u110b\u1175\u11b8","\u1103\u1169\u110c\u1161\u1100\u1175","\u1103\u1169\u110c\u1165\u1112\u1175","\u1103\u1169\u110c\u1165\u11ab","\u1103\u1169\u110c\u116e\u11bc","\u1103\u1169\u110e\u1161\u11a8","\u1103\u1169\u11a8\u1100\u1161\u11b7","\u1103\u1169\u11a8\u1105\u1175\u11b8","\u1103\u1169\u11a8\u1109\u1165","\u1103\u1169\u11a8\u110b\u1175\u11af","\u1103\u1169\u11a8\u110e\u1161\u11bc\u110c\u1165\u11a8","\u1103\u1169\u11bc\u1112\u116a\u110e\u1162\u11a8","\u1103\u1171\u11ba\u1106\u1169\u1109\u1173\u11b8","\u1103\u1171\u11ba\u1109\u1161\u11ab","\u1104\u1161\u11af\u110b\u1161\u110b\u1175","\u1106\u1161\u1102\u116e\u1105\u1161","\u1106\u1161\u1102\u1173\u11af","\u1106\u1161\u1103\u1161\u11bc","\u1106\u1161\u1105\u1161\u1110\u1169\u11ab","\u1106\u1161\u1105\u1167\u11ab","\u1106\u1161\u1106\u116e\u1105\u1175","\u1106\u1161\u1109\u1161\u110c\u1175","\u1106\u1161\u110b\u1163\u11a8","\u1106\u1161\u110b\u116d\u1102\u1166\u110c\u1173","\u1106\u1161\u110b\u1173\u11af","\u1106\u1161\u110b\u1173\u11b7","\u1106\u1161\u110b\u1175\u110f\u1173","\u1106\u1161\u110c\u116e\u11bc","\u1106\u1161\u110c\u1175\u1106\u1161\u11a8","\u1106\u1161\u110e\u1161\u11ab\u1100\u1161\u110c\u1175","\u1106\u1161\u110e\u1161\u11af","\u1106\u1161\u1112\u1173\u11ab","\u1106\u1161\u11a8\u1100\u1165\u11af\u1105\u1175","\u1106\u1161\u11a8\u1102\u1162","\u1106\u1161\u11a8\u1109\u1161\u11bc","\u1106\u1161\u11ab\u1102\u1161\u11b7","\u1106\u1161\u11ab\u1103\u116e","\u1106\u1161\u11ab\u1109\u1166","\u1106\u1161\u11ab\u110b\u1163\u11a8","\u1106\u1161\u11ab\u110b\u1175\u11af","\u1106\u1161\u11ab\u110c\u1165\u11b7","\u1106\u1161\u11ab\u110c\u1169\u11a8","\u1106\u1161\u11ab\u1112\u116a","\u1106\u1161\u11ad\u110b\u1175","\u1106\u1161\u11af\u1100\u1175","\u1106\u1161\u11af\u110a\u1173\u11b7","\u1106\u1161\u11af\u1110\u116e","\u1106\u1161\u11b7\u1103\u1162\u1105\u1169","\u1106\u1161\u11bc\u110b\u116f\u11ab\u1100\u1167\u11bc","\u1106\u1162\u1102\u1167\u11ab","\u1106\u1162\u1103\u1161\u11af","\u1106\u1162\u1105\u1167\u11a8","\u1106\u1162\u1107\u1165\u11ab","\u1106\u1162\u1109\u1173\u110f\u1165\u11b7","\u1106\u1162\u110b\u1175\u11af","\u1106\u1162\u110c\u1161\u11bc","\u1106\u1162\u11a8\u110c\u116e","\u1106\u1165\u11a8\u110b\u1175","\u1106\u1165\u11ab\u110c\u1165","\u1106\u1165\u11ab\u110c\u1175","\u1106\u1165\u11af\u1105\u1175","\u1106\u1166\u110b\u1175\u11af","\u1106\u1167\u1102\u1173\u1105\u1175","\u1106\u1167\u110e\u1175\u11af","\u1106\u1167\u11ab\u1103\u1161\u11b7","\u1106\u1167\u11af\u110e\u1175","\u1106\u1167\u11bc\u1103\u1161\u11ab","\u1106\u1167\u11bc\u1105\u1167\u11bc","\u1106\u1167\u11bc\u110b\u1168","\u1106\u1167\u11bc\u110b\u1174","\u1106\u1167\u11bc\u110c\u1165\u11af","\u1106\u1167\u11bc\u110e\u1175\u11bc","\u1106\u1167\u11bc\u1112\u1161\u11b7","\u1106\u1169\u1100\u1173\u11b7","\u1106\u1169\u1102\u1175\u1110\u1165","\u1106\u1169\u1103\u1166\u11af","\u1106\u1169\u1103\u1173\u11ab","\u1106\u1169\u1107\u1165\u11b7","\u1106\u1169\u1109\u1173\u11b8","\u1106\u1169\u110b\u1163\u11bc","\u1106\u1169\u110b\u1175\u11b7","\u1106\u1169\u110c\u1169\u1105\u1175","\u1106\u1169\u110c\u1175\u11b8","\u1106\u1169\u1110\u116e\u11bc\u110b\u1175","\u1106\u1169\u11a8\u1100\u1165\u11af\u110b\u1175","\u1106\u1169\u11a8\u1105\u1169\u11a8","\u1106\u1169\u11a8\u1109\u1161","\u1106\u1169\u11a8\u1109\u1169\u1105\u1175","\u1106\u1169\u11a8\u1109\u116e\u11b7","\u1106\u1169\u11a8\u110c\u1165\u11a8","\u1106\u1169\u11a8\u1111\u116d","\u1106\u1169\u11af\u1105\u1162","\u1106\u1169\u11b7\u1106\u1162","\u1106\u1169\u11b7\u1106\u116e\u1100\u1166","\u1106\u1169\u11b7\u1109\u1161\u11af","\u1106\u1169\u11b7\u1109\u1169\u11a8","\u1106\u1169\u11b7\u110c\u1175\u11ba","\u1106\u1169\u11b7\u1110\u1169\u11bc","\u1106\u1169\u11b8\u1109\u1175","\u1106\u116e\u1100\u116a\u11ab\u1109\u1175\u11b7","\u1106\u116e\u1100\u116e\u11bc\u1112\u116a","\u1106\u116e\u1103\u1165\u110b\u1171","\u1106\u116e\u1103\u1165\u11b7","\u1106\u116e\u1105\u1173\u11c1","\u1106\u116e\u1109\u1173\u11ab","\u1106\u116e\u110b\u1165\u11ba","\u1106\u116e\u110b\u1167\u11a8","\u1106\u116e\u110b\u116d\u11bc","\u1106\u116e\u110c\u1169\u1100\u1165\u11ab","\u1106\u116e\u110c\u1175\u1100\u1162","\u1106\u116e\u110e\u1165\u11a8","\u1106\u116e\u11ab\u1100\u116e","\u1106\u116e\u11ab\u1103\u1173\u11a8","\u1106\u116e\u11ab\u1107\u1165\u11b8","\u1106\u116e\u11ab\u1109\u1165","\u1106\u116e\u11ab\u110c\u1166","\u1106\u116e\u11ab\u1112\u1161\u11a8","\u1106\u116e\u11ab\u1112\u116a","\u1106\u116e\u11af\u1100\u1161","\u1106\u116e\u11af\u1100\u1165\u11ab","\u1106\u116e\u11af\u1100\u1167\u11af","\u1106\u116e\u11af\u1100\u1169\u1100\u1175","\u1106\u116e\u11af\u1105\u1169\u11ab","\u1106\u116e\u11af\u1105\u1175\u1112\u1161\u11a8","\u1106\u116e\u11af\u110b\u1173\u11b7","\u1106\u116e\u11af\u110c\u1175\u11af","\u1106\u116e\u11af\u110e\u1166","\u1106\u1175\u1100\u116e\u11a8","\u1106\u1175\u1103\u1175\u110b\u1165","\u1106\u1175\u1109\u1161\u110b\u1175\u11af","\u1106\u1175\u1109\u116e\u11af","\u1106\u1175\u110b\u1167\u11a8","\u1106\u1175\u110b\u116d\u11bc\u1109\u1175\u11af","\u1106\u1175\u110b\u116e\u11b7","\u1106\u1175\u110b\u1175\u11ab","\u1106\u1175\u1110\u1175\u11bc","\u1106\u1175\u1112\u1169\u11ab","\u1106\u1175\u11ab\u1100\u1161\u11ab","\u1106\u1175\u11ab\u110c\u1169\u11a8","\u1106\u1175\u11ab\u110c\u116e","\u1106\u1175\u11ae\u110b\u1173\u11b7","\u1106\u1175\u11af\u1100\u1161\u1105\u116e","\u1106\u1175\u11af\u1105\u1175\u1106\u1175\u1110\u1165","\u1106\u1175\u11c0\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u1100\u1161\u110c\u1175","\u1107\u1161\u1100\u116e\u1102\u1175","\u1107\u1161\u1102\u1161\u1102\u1161","\u1107\u1161\u1102\u1173\u11af","\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u1103\u1161\u11ba\u1100\u1161","\u1107\u1161\u1105\u1161\u11b7","\u1107\u1161\u110b\u1175\u1105\u1165\u1109\u1173","\u1107\u1161\u1110\u1161\u11bc","\u1107\u1161\u11a8\u1106\u116e\u11af\u1100\u116a\u11ab","\u1107\u1161\u11a8\u1109\u1161","\u1107\u1161\u11a8\u1109\u116e","\u1107\u1161\u11ab\u1103\u1162","\u1107\u1161\u11ab\u1103\u1173\u1109\u1175","\u1107\u1161\u11ab\u1106\u1161\u11af","\u1107\u1161\u11ab\u1107\u1161\u11af","\u1107\u1161\u11ab\u1109\u1165\u11bc","\u1107\u1161\u11ab\u110b\u1173\u11bc","\u1107\u1161\u11ab\u110c\u1161\u11bc","\u1107\u1161\u11ab\u110c\u116e\u11a8","\u1107\u1161\u11ab\u110c\u1175","\u1107\u1161\u11ab\u110e\u1161\u11ab","\u1107\u1161\u11ae\u110e\u1175\u11b7","\u1107\u1161\u11af\u1100\u1161\u1105\u1161\u11a8","\u1107\u1161\u11af\u1100\u1165\u11af\u110b\u1173\u11b7","\u1107\u1161\u11af\u1100\u1167\u11ab","\u1107\u1161\u11af\u1103\u1161\u11af","\u1107\u1161\u11af\u1105\u1166","\u1107\u1161\u11af\u1106\u1169\u11a8","\u1107\u1161\u11af\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u11af\u1109\u1162\u11bc","\u1107\u1161\u11af\u110b\u1173\u11b7","\u1107\u1161\u11af\u110c\u1161\u1100\u116e\u11a8","\u1107\u1161\u11af\u110c\u1165\u11ab","\u1107\u1161\u11af\u1110\u1169\u11b8","\u1107\u1161\u11af\u1111\u116d","\u1107\u1161\u11b7\u1112\u1161\u1102\u1173\u11af","\u1107\u1161\u11b8\u1100\u1173\u1105\u1173\u11ba","\u1107\u1161\u11b8\u1106\u1161\u11ba","\u1107\u1161\u11b8\u1109\u1161\u11bc","\u1107\u1161\u11b8\u1109\u1169\u11c0","\u1107\u1161\u11bc\u1100\u1173\u11b7","\u1107\u1161\u11bc\u1106\u1167\u11ab","\u1107\u1161\u11bc\u1106\u116e\u11ab","\u1107\u1161\u11bc\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u11bc\u1107\u1165\u11b8","\u1107\u1161\u11bc\u1109\u1169\u11bc","\u1107\u1161\u11bc\u1109\u1175\u11a8","\u1107\u1161\u11bc\u110b\u1161\u11ab","\u1107\u1161\u11bc\u110b\u116e\u11af","\u1107\u1161\u11bc\u110c\u1175","\u1107\u1161\u11bc\u1112\u1161\u11a8","\u1107\u1161\u11bc\u1112\u1162","\u1107\u1161\u11bc\u1112\u1163\u11bc","\u1107\u1162\u1100\u1167\u11bc","\u1107\u1162\u1101\u1169\u11b8","\u1107\u1162\u1103\u1161\u11af","\u1107\u1162\u1103\u1173\u1106\u1175\u11ab\u1110\u1165\u11ab","\u1107\u1162\u11a8\u1103\u116e\u1109\u1161\u11ab","\u1107\u1162\u11a8\u1109\u1162\u11a8","\u1107\u1162\u11a8\u1109\u1165\u11bc","\u1107\u1162\u11a8\u110b\u1175\u11ab","\u1107\u1162\u11a8\u110c\u1166","\u1107\u1162\u11a8\u1112\u116a\u110c\u1165\u11b7","\u1107\u1165\u1105\u1173\u11ba","\u1107\u1165\u1109\u1165\u11ba","\u1107\u1165\u1110\u1173\u11ab","\u1107\u1165\u11ab\u1100\u1162","\u1107\u1165\u11ab\u110b\u1167\u11a8","\u1107\u1165\u11ab\u110c\u1175","\u1107\u1165\u11ab\u1112\u1169","\u1107\u1165\u11af\u1100\u1173\u11b7","\u1107\u1165\u11af\u1105\u1166","\u1107\u1165\u11af\u110a\u1165","\u1107\u1165\u11b7\u110b\u1171","\u1107\u1165\u11b7\u110b\u1175\u11ab","\u1107\u1165\u11b7\u110c\u116c","\u1107\u1165\u11b8\u1105\u1172\u11af","\u1107\u1165\u11b8\u110b\u116f\u11ab","\u1107\u1165\u11b8\u110c\u1165\u11a8","\u1107\u1165\u11b8\u110e\u1175\u11a8","\u1107\u1166\u110b\u1175\u110c\u1175\u11bc","\u1107\u1166\u11af\u1110\u1173","\u1107\u1167\u11ab\u1100\u1167\u11bc","\u1107\u1167\u11ab\u1103\u1169\u11bc","\u1107\u1167\u11ab\u1106\u1167\u11bc","\u1107\u1167\u11ab\u1109\u1175\u11ab","\u1107\u1167\u11ab\u1112\u1169\u1109\u1161","\u1107\u1167\u11ab\u1112\u116a","\u1107\u1167\u11af\u1103\u1169","\u1107\u1167\u11af\u1106\u1167\u11bc","\u1107\u1167\u11af\u110b\u1175\u11af","\u1107\u1167\u11bc\u1109\u1175\u11af","\u1107\u1167\u11bc\u110b\u1161\u1105\u1175","\u1107\u1167\u11bc\u110b\u116f\u11ab","\u1107\u1169\u1100\u116a\u11ab","\u1107\u1169\u1102\u1165\u1109\u1173","\u1107\u1169\u1105\u1161\u1109\u1162\u11a8","\u1107\u1169\u1105\u1161\u11b7","\u1107\u1169\u1105\u1173\u11b7","\u1107\u1169\u1109\u1161\u11bc","\u1107\u1169\u110b\u1161\u11ab","\u1107\u1169\u110c\u1161\u1100\u1175","\u1107\u1169\u110c\u1161\u11bc","\u1107\u1169\u110c\u1165\u11ab","\u1107\u1169\u110c\u1169\u11ab","\u1107\u1169\u1110\u1169\u11bc","\u1107\u1169\u1111\u1167\u11ab\u110c\u1165\u11a8","\u1107\u1169\u1112\u1165\u11b7","\u1107\u1169\u11a8\u1103\u1169","\u1107\u1169\u11a8\u1109\u1161","\u1107\u1169\u11a8\u1109\u116e\u11bc\u110b\u1161","\u1107\u1169\u11a8\u1109\u1173\u11b8","\u1107\u1169\u11a9\u110b\u1173\u11b7","\u1107\u1169\u11ab\u1100\u1167\u11a8\u110c\u1165\u11a8","\u1107\u1169\u11ab\u1105\u1162","\u1107\u1169\u11ab\u1107\u116e","\u1107\u1169\u11ab\u1109\u1161","\u1107\u1169\u11ab\u1109\u1165\u11bc","\u1107\u1169\u11ab\u110b\u1175\u11ab","\u1107\u1169\u11ab\u110c\u1175\u11af","\u1107\u1169\u11af\u1111\u1166\u11ab","\u1107\u1169\u11bc\u1109\u1161","\u1107\u1169\u11bc\u110c\u1175","\u1107\u1169\u11bc\u1110\u116e","\u1107\u116e\u1100\u1173\u11ab","\u1107\u116e\u1101\u1173\u1105\u1165\u110b\u116e\u11b7","\u1107\u116e\u1103\u1161\u11b7","\u1107\u116e\u1103\u1169\u11bc\u1109\u1161\u11ab","\u1107\u116e\u1106\u116e\u11ab","\u1107\u116e\u1107\u116e\u11ab","\u1107\u116e\u1109\u1161\u11ab","\u1107\u116e\u1109\u1161\u11bc","\u1107\u116e\u110b\u1165\u11bf","\u1107\u116e\u110b\u1175\u11ab","\u1107\u116e\u110c\u1161\u11a8\u110b\u116d\u11bc","\u1107\u116e\u110c\u1161\u11bc","\u1107\u116e\u110c\u1165\u11bc","\u1107\u116e\u110c\u1169\u11a8","\u1107\u116e\u110c\u1175\u1105\u1165\u11ab\u1112\u1175","\u1107\u116e\u110e\u1175\u11ab","\u1107\u116e\u1110\u1161\u11a8","\u1107\u116e\u1111\u116e\u11b7","\u1107\u116e\u1112\u116c\u110c\u1161\u11bc","\u1107\u116e\u11a8\u1107\u116e","\u1107\u116e\u11a8\u1112\u1161\u11ab","\u1107\u116e\u11ab\u1102\u1169","\u1107\u116e\u11ab\u1105\u1163\u11bc","\u1107\u116e\u11ab\u1105\u1175","\u1107\u116e\u11ab\u1106\u1167\u11bc","\u1107\u116e\u11ab\u1109\u1165\u11a8","\u1107\u116e\u11ab\u110b\u1163","\u1107\u116e\u11ab\u110b\u1171\u1100\u1175","\u1107\u116e\u11ab\u1111\u1175\u11af","\u1107\u116e\u11ab\u1112\u1169\u11bc\u1109\u1162\u11a8","\u1107\u116e\u11af\u1100\u1169\u1100\u1175","\u1107\u116e\u11af\u1100\u116a","\u1107\u116e\u11af\u1100\u116d","\u1107\u116e\u11af\u1101\u1169\u11be","\u1107\u116e\u11af\u1106\u1161\u11ab","\u1107\u116e\u11af\u1107\u1165\u11b8","\u1107\u116e\u11af\u1107\u1175\u11be","\u1107\u116e\u11af\u110b\u1161\u11ab","\u1107\u116e\u11af\u110b\u1175\u110b\u1175\u11a8","\u1107\u116e\u11af\u1112\u1162\u11bc","\u1107\u1173\u1105\u1162\u11ab\u1103\u1173","\u1107\u1175\u1100\u1173\u11a8","\u1107\u1175\u1102\u1161\u11ab","\u1107\u1175\u1102\u1175\u11af","\u1107\u1175\u1103\u116e\u11af\u1100\u1175","\u1107\u1175\u1103\u1175\u110b\u1169","\u1107\u1175\u1105\u1169\u1109\u1169","\u1107\u1175\u1106\u1161\u11ab","\u1107\u1175\u1106\u1167\u11bc","\u1107\u1175\u1106\u1175\u11af","\u1107\u1175\u1107\u1161\u1105\u1161\u11b7","\u1107\u1175\u1107\u1175\u11b7\u1107\u1161\u11b8","\u1107\u1175\u1109\u1161\u11bc","\u1107\u1175\u110b\u116d\u11bc","\u1107\u1175\u110b\u1172\u11af","\u1107\u1175\u110c\u116e\u11bc","\u1107\u1175\u1110\u1161\u1106\u1175\u11ab","\u1107\u1175\u1111\u1161\u11ab","\u1107\u1175\u11af\u1103\u1175\u11bc","\u1107\u1175\u11ba\u1106\u116e\u11af","\u1107\u1175\u11ba\u1107\u1161\u11bc\u110b\u116e\u11af","\u1107\u1175\u11ba\u110c\u116e\u11af\u1100\u1175","\u1107\u1175\u11be\u1101\u1161\u11af","\u1108\u1161\u11af\u1100\u1161\u11ab\u1109\u1162\u11a8","\u1108\u1161\u11af\u1105\u1162","\u1108\u1161\u11af\u1105\u1175","\u1109\u1161\u1100\u1165\u11ab","\u1109\u1161\u1100\u1168\u110c\u1165\u11af","\u1109\u1161\u1102\u1161\u110b\u1175","\u1109\u1161\u1102\u1163\u11bc","\u1109\u1161\u1105\u1161\u11b7","\u1109\u1161\u1105\u1161\u11bc","\u1109\u1161\u1105\u1175\u11b8","\u1109\u1161\u1106\u1169\u1102\u1175\u11b7","\u1109\u1161\u1106\u116e\u11af","\u1109\u1161\u1107\u1161\u11bc","\u1109\u1161\u1109\u1161\u11bc","\u1109\u1161\u1109\u1162\u11bc\u1112\u116a\u11af","\u1109\u1161\u1109\u1165\u11af","\u1109\u1161\u1109\u1173\u11b7","\u1109\u1161\u1109\u1175\u11af","\u1109\u1161\u110b\u1165\u11b8","\u1109\u1161\u110b\u116d\u11bc","\u1109\u1161\u110b\u116f\u11af","\u1109\u1161\u110c\u1161\u11bc","\u1109\u1161\u110c\u1165\u11ab","\u1109\u1161\u110c\u1175\u11ab","\u1109\u1161\u110e\u1169\u11ab","\u1109\u1161\u110e\u116e\u11ab\u1100\u1175","\u1109\u1161\u1110\u1161\u11bc","\u1109\u1161\u1110\u116e\u1105\u1175","\u1109\u1161\u1112\u1173\u11af","\u1109\u1161\u11ab\u1100\u1175\u11af","\u1109\u1161\u11ab\u1107\u116e\u110b\u1175\u11ab\u1100\u116a","\u1109\u1161\u11ab\u110b\u1165\u11b8","\u1109\u1161\u11ab\u110e\u1162\u11a8","\u1109\u1161\u11af\u1105\u1175\u11b7","\u1109\u1161\u11af\u110b\u1175\u11ab","\u1109\u1161\u11af\u110d\u1161\u11a8","\u1109\u1161\u11b7\u1100\u1168\u1110\u1161\u11bc","\u1109\u1161\u11b7\u1100\u116e\u11a8","\u1109\u1161\u11b7\u1109\u1175\u11b8","\u1109\u1161\u11b7\u110b\u116f\u11af","\u1109\u1161\u11b7\u110e\u1169\u11ab","\u1109\u1161\u11bc\u1100\u116a\u11ab","\u1109\u1161\u11bc\u1100\u1173\u11b7","\u1109\u1161\u11bc\u1103\u1162","\u1109\u1161\u11bc\u1105\u1172","\u1109\u1161\u11bc\u1107\u1161\u11ab\u1100\u1175","\u1109\u1161\u11bc\u1109\u1161\u11bc","\u1109\u1161\u11bc\u1109\u1175\u11a8","\u1109\u1161\u11bc\u110b\u1165\u11b8","\u1109\u1161\u11bc\u110b\u1175\u11ab","\u1109\u1161\u11bc\u110c\u1161","\u1109\u1161\u11bc\u110c\u1165\u11b7","\u1109\u1161\u11bc\u110e\u1165","\u1109\u1161\u11bc\u110e\u116e","\u1109\u1161\u11bc\u1110\u1162","\u1109\u1161\u11bc\u1111\u116d","\u1109\u1161\u11bc\u1111\u116e\u11b7","\u1109\u1161\u11bc\u1112\u116a\u11bc","\u1109\u1162\u1107\u1167\u11a8","\u1109\u1162\u11a8\u1101\u1161\u11af","\u1109\u1162\u11a8\u110b\u1167\u11ab\u1111\u1175\u11af","\u1109\u1162\u11bc\u1100\u1161\u11a8","\u1109\u1162\u11bc\u1106\u1167\u11bc","\u1109\u1162\u11bc\u1106\u116e\u11af","\u1109\u1162\u11bc\u1107\u1161\u11bc\u1109\u1169\u11bc","\u1109\u1162\u11bc\u1109\u1161\u11ab","\u1109\u1162\u11bc\u1109\u1165\u11ab","\u1109\u1162\u11bc\u1109\u1175\u11ab","\u1109\u1162\u11bc\u110b\u1175\u11af","\u1109\u1162\u11bc\u1112\u116a\u11af","\u1109\u1165\u1105\u1161\u11b8","\u1109\u1165\u1105\u1173\u11ab","\u1109\u1165\u1106\u1167\u11bc","\u1109\u1165\u1106\u1175\u11ab","\u1109\u1165\u1107\u1175\u1109\u1173","\u1109\u1165\u110b\u1163\u11bc","\u1109\u1165\u110b\u116e\u11af","\u1109\u1165\u110c\u1165\u11a8","\u1109\u1165\u110c\u1165\u11b7","\u1109\u1165\u110d\u1169\u11a8","\u1109\u1165\u110f\u1173\u11af","\u1109\u1165\u11a8\u1109\u1161","\u1109\u1165\u11a8\u110b\u1172","\u1109\u1165\u11ab\u1100\u1165","\u1109\u1165\u11ab\u1106\u116e\u11af","\u1109\u1165\u11ab\u1107\u1162","\u1109\u1165\u11ab\u1109\u1162\u11bc","\u1109\u1165\u11ab\u1109\u116e","\u1109\u1165\u11ab\u110b\u116f\u11ab","\u1109\u1165\u11ab\u110c\u1161\u11bc","\u1109\u1165\u11ab\u110c\u1165\u11ab","\u1109\u1165\u11ab\u1110\u1162\u11a8","\u1109\u1165\u11ab\u1111\u116e\u11bc\u1100\u1175","\u1109\u1165\u11af\u1100\u1165\u110c\u1175","\u1109\u1165\u11af\u1102\u1161\u11af","\u1109\u1165\u11af\u1105\u1165\u11bc\u1110\u1161\u11bc","\u1109\u1165\u11af\u1106\u1167\u11bc","\u1109\u1165\u11af\u1106\u116e\u11ab","\u1109\u1165\u11af\u1109\u1161","\u1109\u1165\u11af\u110b\u1161\u11a8\u1109\u1161\u11ab","\u1109\u1165\u11af\u110e\u1175","\u1109\u1165\u11af\u1110\u1161\u11bc","\u1109\u1165\u11b8\u110a\u1175","\u1109\u1165\u11bc\u1100\u1169\u11bc","\u1109\u1165\u11bc\u1103\u1161\u11bc","\u1109\u1165\u11bc\u1106\u1167\u11bc","\u1109\u1165\u11bc\u1107\u1167\u11af","\u1109\u1165\u11bc\u110b\u1175\u11ab","\u1109\u1165\u11bc\u110c\u1161\u11bc","\u1109\u1165\u11bc\u110c\u1165\u11a8","\u1109\u1165\u11bc\u110c\u1175\u11af","\u1109\u1165\u11bc\u1112\u1161\u11b7","\u1109\u1166\u1100\u1173\u11b7","\u1109\u1166\u1106\u1175\u1102\u1161","\u1109\u1166\u1109\u1161\u11bc","\u1109\u1166\u110b\u116f\u11af","\u1109\u1166\u110c\u1169\u11bc\u1103\u1162\u110b\u116a\u11bc","\u1109\u1166\u1110\u1161\u11a8","\u1109\u1166\u11ab\u1110\u1165","\u1109\u1166\u11ab\u1110\u1175\u1106\u1175\u1110\u1165","\u1109\u1166\u11ba\u110d\u1162","\u1109\u1169\u1100\u1172\u1106\u1169","\u1109\u1169\u1100\u1173\u11a8\u110c\u1165\u11a8","\u1109\u1169\u1100\u1173\u11b7","\u1109\u1169\u1102\u1161\u1100\u1175","\u1109\u1169\u1102\u1167\u11ab","\u1109\u1169\u1103\u1173\u11a8","\u1109\u1169\u1106\u1161\u11bc","\u1109\u1169\u1106\u116e\u11ab","\u1109\u1169\u1109\u1165\u11af","\u1109\u1169\u1109\u1169\u11a8","\u1109\u1169\u110b\u1161\u1100\u116a","\u1109\u1169\u110b\u116d\u11bc","\u1109\u1169\u110b\u116f\u11ab","\u1109\u1169\u110b\u1173\u11b7","\u1109\u1169\u110c\u116e\u11bc\u1112\u1175","\u1109\u1169\u110c\u1175\u1111\u116e\u11b7","\u1109\u1169\u110c\u1175\u11af","\u1109\u1169\u1111\u116e\u11bc","\u1109\u1169\u1112\u1167\u11bc","\u1109\u1169\u11a8\u1103\u1161\u11b7","\u1109\u1169\u11a8\u1103\u1169","\u1109\u1169\u11a8\u110b\u1169\u11ba","\u1109\u1169\u11ab\u1100\u1161\u1105\u1161\u11a8","\u1109\u1169\u11ab\u1100\u1175\u11af","\u1109\u1169\u11ab\u1102\u1167","\u1109\u1169\u11ab\u1102\u1175\u11b7","\u1109\u1169\u11ab\u1103\u1173\u11bc","\u1109\u1169\u11ab\u1106\u1169\u11a8","\u1109\u1169\u11ab\u1108\u1167\u11a8","\u1109\u1169\u11ab\u1109\u1175\u11af","\u1109\u1169\u11ab\u110c\u1175\u11af","\u1109\u1169\u11ab\u1110\u1169\u11b8","\u1109\u1169\u11ab\u1112\u1162","\u1109\u1169\u11af\u110c\u1175\u11a8\u1112\u1175","\u1109\u1169\u11b7\u110a\u1175","\u1109\u1169\u11bc\u110b\u1161\u110c\u1175","\u1109\u1169\u11bc\u110b\u1175","\u1109\u1169\u11bc\u1111\u1167\u11ab","\u1109\u116c\u1100\u1169\u1100\u1175","\u1109\u116d\u1111\u1175\u11bc","\u1109\u116e\u1100\u1165\u11ab","\u1109\u116e\u1102\u1167\u11ab","\u1109\u116e\u1103\u1161\u11ab","\u1109\u116e\u1103\u1169\u11ba\u1106\u116e\u11af","\u1109\u116e\u1103\u1169\u11bc\u110c\u1165\u11a8","\u1109\u116e\u1106\u1167\u11ab","\u1109\u116e\u1106\u1167\u11bc","\u1109\u116e\u1107\u1161\u11a8","\u1109\u116e\u1109\u1161\u11bc","\u1109\u116e\u1109\u1165\u11a8","\u1109\u116e\u1109\u116e\u11af","\u1109\u116e\u1109\u1175\u1105\u1169","\u1109\u116e\u110b\u1165\u11b8","\u1109\u116e\u110b\u1167\u11b7","\u1109\u116e\u110b\u1167\u11bc","\u1109\u116e\u110b\u1175\u11b8","\u1109\u116e\u110c\u116e\u11ab","\u1109\u116e\u110c\u1175\u11b8","\u1109\u116e\u110e\u116e\u11af","\u1109\u116e\u110f\u1165\u11ba","\u1109\u116e\u1111\u1175\u11af","\u1109\u116e\u1112\u1161\u11a8","\u1109\u116e\u1112\u1165\u11b7\u1109\u1162\u11bc","\u1109\u116e\u1112\u116a\u1100\u1175","\u1109\u116e\u11a8\u1102\u1167","\u1109\u116e\u11a8\u1109\u1169","\u1109\u116e\u11a8\u110c\u1166","\u1109\u116e\u11ab\u1100\u1161\u11ab","\u1109\u116e\u11ab\u1109\u1165","\u1109\u116e\u11ab\u1109\u116e","\u1109\u116e\u11ab\u1109\u1175\u11a8\u1100\u1161\u11ab","\u1109\u116e\u11ab\u110b\u1171","\u1109\u116e\u11ae\u1100\u1161\u1105\u1161\u11a8","\u1109\u116e\u11af\u1107\u1167\u11bc","\u1109\u116e\u11af\u110c\u1175\u11b8","\u1109\u116e\u11ba\u110c\u1161","\u1109\u1173\u1102\u1175\u11b7","\u1109\u1173\u1106\u116e\u11af","\u1109\u1173\u1109\u1173\u1105\u1169","\u1109\u1173\u1109\u1173\u11bc","\u1109\u1173\u110b\u1170\u1110\u1165","\u1109\u1173\u110b\u1171\u110e\u1175","\u1109\u1173\u110f\u1166\u110b\u1175\u1110\u1173","\u1109\u1173\u1110\u1172\u1103\u1175\u110b\u1169","\u1109\u1173\u1110\u1173\u1105\u1166\u1109\u1173","\u1109\u1173\u1111\u1169\u110e\u1173","\u1109\u1173\u11af\u110d\u1165\u11a8","\u1109\u1173\u11af\u1111\u1173\u11b7","\u1109\u1173\u11b8\u1100\u116a\u11ab","\u1109\u1173\u11b8\u1100\u1175","\u1109\u1173\u11bc\u1100\u1162\u11a8","\u1109\u1173\u11bc\u1105\u1175","\u1109\u1173\u11bc\u1107\u116e","\u1109\u1173\u11bc\u110b\u116d\u11bc\u110e\u1161","\u1109\u1173\u11bc\u110c\u1175\u11ab","\u1109\u1175\u1100\u1161\u11a8","\u1109\u1175\u1100\u1161\u11ab","\u1109\u1175\u1100\u1169\u11af","\u1109\u1175\u1100\u1173\u11b7\u110e\u1175","\u1109\u1175\u1102\u1161\u1105\u1175\u110b\u1169","\u1109\u1175\u1103\u1162\u11a8","\u1109\u1175\u1105\u1175\u110c\u1173","\u1109\u1175\u1106\u1166\u11ab\u1110\u1173","\u1109\u1175\u1106\u1175\u11ab","\u1109\u1175\u1107\u116e\u1106\u1169","\u1109\u1175\u1109\u1165\u11ab","\u1109\u1175\u1109\u1165\u11af","\u1109\u1175\u1109\u1173\u1110\u1166\u11b7","\u1109\u1175\u110b\u1161\u1107\u1165\u110c\u1175","\u1109\u1175\u110b\u1165\u1106\u1165\u1102\u1175","\u1109\u1175\u110b\u116f\u11af","\u1109\u1175\u110b\u1175\u11ab","\u1109\u1175\u110b\u1175\u11af","\u1109\u1175\u110c\u1161\u11a8","\u1109\u1175\u110c\u1161\u11bc","\u1109\u1175\u110c\u1165\u11af","\u1109\u1175\u110c\u1165\u11b7","\u1109\u1175\u110c\u116e\u11bc","\u1109\u1175\u110c\u1173\u11ab","\u1109\u1175\u110c\u1175\u11b8","\u1109\u1175\u110e\u1165\u11bc","\u1109\u1175\u1112\u1161\u11b8","\u1109\u1175\u1112\u1165\u11b7","\u1109\u1175\u11a8\u1100\u116e","\u1109\u1175\u11a8\u1100\u1175","\u1109\u1175\u11a8\u1103\u1161\u11bc","\u1109\u1175\u11a8\u1105\u1163\u11bc","\u1109\u1175\u11a8\u1105\u116d\u1111\u116e\u11b7","\u1109\u1175\u11a8\u1106\u116e\u11af","\u1109\u1175\u11a8\u1108\u1161\u11bc","\u1109\u1175\u11a8\u1109\u1161","\u1109\u1175\u11a8\u1109\u1162\u11bc\u1112\u116a\u11af","\u1109\u1175\u11a8\u110e\u1169","\u1109\u1175\u11a8\u1110\u1161\u11a8","\u1109\u1175\u11a8\u1111\u116e\u11b7","\u1109\u1175\u11ab\u1100\u1169","\u1109\u1175\u11ab\u1100\u1172","\u1109\u1175\u11ab\u1102\u1167\u11b7","\u1109\u1175\u11ab\u1106\u116e\u11ab","\u1109\u1175\u11ab\u1107\u1161\u11af","\u1109\u1175\u11ab\u1107\u1175","\u1109\u1175\u11ab\u1109\u1161","\u1109\u1175\u11ab\u1109\u1166","\u1109\u1175\u11ab\u110b\u116d\u11bc","\u1109\u1175\u11ab\u110c\u1166\u1111\u116e\u11b7","\u1109\u1175\u11ab\u110e\u1165\u11bc","\u1109\u1175\u11ab\u110e\u1166","\u1109\u1175\u11ab\u1112\u116a","\u1109\u1175\u11af\u1100\u1161\u11b7","\u1109\u1175\u11af\u1102\u1162","\u1109\u1175\u11af\u1105\u1167\u11a8","\u1109\u1175\u11af\u1105\u1168","\u1109\u1175\u11af\u1106\u1161\u11bc","\u1109\u1175\u11af\u1109\u116e","\u1109\u1175\u11af\u1109\u1173\u11b8","\u1109\u1175\u11af\u1109\u1175","\u1109\u1175\u11af\u110c\u1161\u11bc","\u1109\u1175\u11af\u110c\u1165\u11bc","\u1109\u1175\u11af\u110c\u1175\u11af\u110c\u1165\u11a8","\u1109\u1175\u11af\u110e\u1165\u11ab","\u1109\u1175\u11af\u110e\u1166","\u1109\u1175\u11af\u110f\u1165\u11ba","\u1109\u1175\u11af\u1110\u1162","\u1109\u1175\u11af\u1111\u1162","\u1109\u1175\u11af\u1112\u1165\u11b7","\u1109\u1175\u11af\u1112\u1167\u11ab","\u1109\u1175\u11b7\u1105\u1175","\u1109\u1175\u11b7\u1107\u116e\u1105\u1173\u11b7","\u1109\u1175\u11b7\u1109\u1161","\u1109\u1175\u11b7\u110c\u1161\u11bc","\u1109\u1175\u11b7\u110c\u1165\u11bc","\u1109\u1175\u11b7\u1111\u1161\u11ab","\u110a\u1161\u11bc\u1103\u116e\u11bc\u110b\u1175","\u110a\u1175\u1105\u1173\u11b7","\u110a\u1175\u110b\u1161\u11ba","\u110b\u1161\u1100\u1161\u110a\u1175","\u110b\u1161\u1102\u1161\u110b\u116e\u11ab\u1109\u1165","\u110b\u1161\u1103\u1173\u1102\u1175\u11b7","\u110b\u1161\u1103\u1173\u11af","\u110b\u1161\u1109\u1171\u110b\u116e\u11b7","\u110b\u1161\u1109\u1173\u1111\u1161\u11af\u1110\u1173","\u110b\u1161\u1109\u1175\u110b\u1161","\u110b\u1161\u110b\u116e\u11af\u1105\u1165","\u110b\u1161\u110c\u1165\u110a\u1175","\u110b\u1161\u110c\u116e\u11b7\u1106\u1161","\u110b\u1161\u110c\u1175\u11a8","\u110b\u1161\u110e\u1175\u11b7","\u110b\u1161\u1111\u1161\u1110\u1173","\u110b\u1161\u1111\u1173\u1105\u1175\u110f\u1161","\u110b\u1161\u1111\u1173\u11b7","\u110b\u1161\u1112\u1169\u11b8","\u110b\u1161\u1112\u1173\u11ab","\u110b\u1161\u11a8\u1100\u1175","\u110b\u1161\u11a8\u1106\u1169\u11bc","\u110b\u1161\u11a8\u1109\u116e","\u110b\u1161\u11ab\u1100\u1162","\u110b\u1161\u11ab\u1100\u1167\u11bc","\u110b\u1161\u11ab\u1100\u116a","\u110b\u1161\u11ab\u1102\u1162","\u110b\u1161\u11ab\u1102\u1167\u11bc","\u110b\u1161\u11ab\u1103\u1169\u11bc","\u110b\u1161\u11ab\u1107\u1161\u11bc","\u110b\u1161\u11ab\u1107\u116e","\u110b\u1161\u11ab\u110c\u116e","\u110b\u1161\u11af\u1105\u116e\u1106\u1175\u1102\u1172\u11b7","\u110b\u1161\u11af\u110f\u1169\u110b\u1169\u11af","\u110b\u1161\u11b7\u1109\u1175","\u110b\u1161\u11b7\u110f\u1165\u11ba","\u110b\u1161\u11b8\u1105\u1167\u11a8","\u110b\u1161\u11c1\u1102\u1161\u11af","\u110b\u1161\u11c1\u1106\u116e\u11ab","\u110b\u1162\u110b\u1175\u11ab","\u110b\u1162\u110c\u1165\u11bc","\u110b\u1162\u11a8\u1109\u116e","\u110b\u1162\u11af\u1107\u1165\u11b7","\u110b\u1163\u1100\u1161\u11ab","\u110b\u1163\u1103\u1161\u11ab","\u110b\u1163\u110b\u1169\u11bc","\u110b\u1163\u11a8\u1100\u1161\u11ab","\u110b\u1163\u11a8\u1100\u116e\u11a8","\u110b\u1163\u11a8\u1109\u1169\u11a8","\u110b\u1163\u11a8\u1109\u116e","\u110b\u1163\u11a8\u110c\u1165\u11b7","\u110b\u1163\u11a8\u1111\u116e\u11b7","\u110b\u1163\u11a8\u1112\u1169\u11ab\u1102\u1167","\u110b\u1163\u11bc\u1102\u1167\u11b7","\u110b\u1163\u11bc\u1105\u1167\u11a8","\u110b\u1163\u11bc\u1106\u1161\u11af","\u110b\u1163\u11bc\u1107\u1162\u110e\u116e","\u110b\u1163\u11bc\u110c\u116e","\u110b\u1163\u11bc\u1111\u1161","\u110b\u1165\u1103\u116e\u11b7","\u110b\u1165\u1105\u1167\u110b\u116e\u11b7","\u110b\u1165\u1105\u1173\u11ab","\u110b\u1165\u110c\u1166\u11ba\u1107\u1161\u11b7","\u110b\u1165\u110d\u1162\u11bb\u1103\u1173\u11ab","\u110b\u1165\u110d\u1165\u1103\u1161\u1100\u1161","\u110b\u1165\u110d\u1165\u11ab\u110c\u1175","\u110b\u1165\u11ab\u1102\u1175","\u110b\u1165\u11ab\u1103\u1165\u11a8","\u110b\u1165\u11ab\u1105\u1169\u11ab","\u110b\u1165\u11ab\u110b\u1165","\u110b\u1165\u11af\u1100\u116e\u11af","\u110b\u1165\u11af\u1105\u1173\u11ab","\u110b\u1165\u11af\u110b\u1173\u11b7","\u110b\u1165\u11af\u1111\u1175\u11ba","\u110b\u1165\u11b7\u1106\u1161","\u110b\u1165\u11b8\u1106\u116e","\u110b\u1165\u11b8\u110c\u1169\u11bc","\u110b\u1165\u11b8\u110e\u1166","\u110b\u1165\u11bc\u1103\u1165\u11bc\u110b\u1175","\u110b\u1165\u11bc\u1106\u1161\u11bc","\u110b\u1165\u11bc\u1110\u1165\u1105\u1175","\u110b\u1165\u11bd\u1100\u1173\u110c\u1166","\u110b\u1166\u1102\u1165\u110c\u1175","\u110b\u1166\u110b\u1165\u110f\u1165\u11ab","\u110b\u1166\u11ab\u110c\u1175\u11ab","\u110b\u1167\u1100\u1165\u11ab","\u110b\u1167\u1100\u1169\u1109\u1162\u11bc","\u110b\u1167\u1100\u116a\u11ab","\u110b\u1167\u1100\u116e\u11ab","\u110b\u1167\u1100\u116f\u11ab","\u110b\u1167\u1103\u1162\u1109\u1162\u11bc","\u110b\u1167\u1103\u1165\u11b2","\u110b\u1167\u1103\u1169\u11bc\u1109\u1162\u11bc","\u110b\u1167\u1103\u1173\u11ab","\u110b\u1167\u1105\u1169\u11ab","\u110b\u1167\u1105\u1173\u11b7","\u110b\u1167\u1109\u1165\u11ba","\u110b\u1167\u1109\u1165\u11bc","\u110b\u1167\u110b\u116a\u11bc","\u110b\u1167\u110b\u1175\u11ab","\u110b\u1167\u110c\u1165\u11ab\u1112\u1175","\u110b\u1167\u110c\u1175\u11a8\u110b\u116f\u11ab","\u110b\u1167\u1112\u1161\u11a8\u1109\u1162\u11bc","\u110b\u1167\u1112\u1162\u11bc","\u110b\u1167\u11a8\u1109\u1161","\u110b\u1167\u11a8\u1109\u1175","\u110b\u1167\u11a8\u1112\u1161\u11af","\u110b\u1167\u11ab\u1100\u1167\u11af","\u110b\u1167\u11ab\u1100\u116e","\u110b\u1167\u11ab\u1100\u1173\u11a8","\u110b\u1167\u11ab\u1100\u1175","\u110b\u1167\u11ab\u1105\u1161\u11a8","\u110b\u1167\u11ab\u1109\u1165\u11af","\u110b\u1167\u11ab\u1109\u1166","\u110b\u1167\u11ab\u1109\u1169\u11a8","\u110b\u1167\u11ab\u1109\u1173\u11b8","\u110b\u1167\u11ab\u110b\u1162","\u110b\u1167\u11ab\u110b\u1168\u110b\u1175\u11ab","\u110b\u1167\u11ab\u110b\u1175\u11ab","\u110b\u1167\u11ab\u110c\u1161\u11bc","\u110b\u1167\u11ab\u110c\u116e","\u110b\u1167\u11ab\u110e\u116e\u11af","\u110b\u1167\u11ab\u1111\u1175\u11af","\u110b\u1167\u11ab\u1112\u1161\u11b8","\u110b\u1167\u11ab\u1112\u1172","\u110b\u1167\u11af\u1100\u1175","\u110b\u1167\u11af\u1106\u1162","\u110b\u1167\u11af\u1109\u116c","\u110b\u1167\u11af\u1109\u1175\u11b7\u1112\u1175","\u110b\u1167\u11af\u110c\u1165\u11bc","\u110b\u1167\u11af\u110e\u1161","\u110b\u1167\u11af\u1112\u1173\u11af","\u110b\u1167\u11b7\u1105\u1167","\u110b\u1167\u11b8\u1109\u1165","\u110b\u1167\u11bc\u1100\u116e\u11a8","\u110b\u1167\u11bc\u1102\u1161\u11b7","\u110b\u1167\u11bc\u1109\u1161\u11bc","\u110b\u1167\u11bc\u110b\u1163\u11bc","\u110b\u1167\u11bc\u110b\u1167\u11a8","\u110b\u1167\u11bc\u110b\u116e\u11bc","\u110b\u1167\u11bc\u110b\u116f\u11ab\u1112\u1175","\u110b\u1167\u11bc\u1112\u1161","\u110b\u1167\u11bc\u1112\u1163\u11bc","\u110b\u1167\u11bc\u1112\u1169\u11ab","\u110b\u1167\u11bc\u1112\u116a","\u110b\u1167\u11c1\u1100\u116e\u1105\u1175","\u110b\u1167\u11c1\u1107\u1161\u11bc","\u110b\u1167\u11c1\u110c\u1175\u11b8","\u110b\u1168\u1100\u1161\u11b7","\u110b\u1168\u1100\u1173\u11b7","\u110b\u1168\u1107\u1161\u11bc","\u110b\u1168\u1109\u1161\u11ab","\u110b\u1168\u1109\u1161\u11bc","\u110b\u1168\u1109\u1165\u11ab","\u110b\u1168\u1109\u116e\u11af","\u110b\u1168\u1109\u1173\u11b8","\u110b\u1168\u1109\u1175\u11a8\u110c\u1161\u11bc","\u110b\u1168\u110b\u1163\u11a8","\u110b\u1168\u110c\u1165\u11ab","\u110b\u1168\u110c\u1165\u11af","\u110b\u1168\u110c\u1165\u11bc","\u110b\u1168\u110f\u1165\u11ab\u1103\u1162","\u110b\u1168\u11ba\u1102\u1161\u11af","\u110b\u1169\u1102\u1173\u11af","\u110b\u1169\u1105\u1161\u11a8","\u110b\u1169\u1105\u1162\u11ba\u1103\u1169\u11bc\u110b\u1161\u11ab","\u110b\u1169\u1105\u1166\u11ab\u110c\u1175","\u110b\u1169\u1105\u1169\u110c\u1175","\u110b\u1169\u1105\u1173\u11ab\u1107\u1161\u11af","\u110b\u1169\u1107\u1173\u11ab","\u110b\u1169\u1109\u1175\u11b8","\u110b\u1169\u110b\u1167\u11b7","\u110b\u1169\u110b\u116f\u11af","\u110b\u1169\u110c\u1165\u11ab","\u110b\u1169\u110c\u1175\u11a8","\u110b\u1169\u110c\u1175\u11bc\u110b\u1165","\u110b\u1169\u1111\u1166\u1105\u1161","\u110b\u1169\u1111\u1175\u1109\u1173\u1110\u1166\u11af","\u110b\u1169\u1112\u1175\u1105\u1167","\u110b\u1169\u11a8\u1109\u1161\u11bc","\u110b\u1169\u11a8\u1109\u116e\u1109\u116e","\u110b\u1169\u11ab\u1100\u1161\u11bd","\u110b\u1169\u11ab\u1105\u1161\u110b\u1175\u11ab","\u110b\u1169\u11ab\u1106\u1169\u11b7","\u110b\u1169\u11ab\u110c\u1169\u11bc\u110b\u1175\u11af","\u110b\u1169\u11ab\u1110\u1169\u11bc","\u110b\u1169\u11af\u1100\u1161\u110b\u1173\u11af","\u110b\u1169\u11af\u1105\u1175\u11b7\u1111\u1175\u11a8","\u110b\u1169\u11af\u1112\u1162","\u110b\u1169\u11ba\u110e\u1161\u1105\u1175\u11b7","\u110b\u116a\u110b\u1175\u1109\u1167\u110e\u1173","\u110b\u116a\u110b\u1175\u11ab","\u110b\u116a\u11ab\u1109\u1165\u11bc","\u110b\u116a\u11ab\u110c\u1165\u11ab","\u110b\u116a\u11bc\u1107\u1175","\u110b\u116a\u11bc\u110c\u1161","\u110b\u116b\u1102\u1163\u1112\u1161\u1106\u1167\u11ab","\u110b\u116b\u11ab\u110c\u1175","\u110b\u116c\u1100\u1161\u11ba\u110c\u1175\u11b8","\u110b\u116c\u1100\u116e\u11a8","\u110b\u116c\u1105\u1169\u110b\u116e\u11b7","\u110b\u116c\u1109\u1161\u11b7\u110e\u1169\u11ab","\u110b\u116c\u110e\u116e\u11af","\u110b\u116c\u110e\u1175\u11b7","\u110b\u116c\u1112\u1161\u11af\u1106\u1165\u1102\u1175","\u110b\u116c\u11ab\u1107\u1161\u11af","\u110b\u116c\u11ab\u1109\u1169\u11ab","\u110b\u116c\u11ab\u110d\u1169\u11a8","\u110b\u116d\u1100\u1173\u11b7","\u110b\u116d\u110b\u1175\u11af","\u110b\u116d\u110c\u1173\u11b7","\u110b\u116d\u110e\u1165\u11bc","\u110b\u116d\u11bc\u1100\u1175","\u110b\u116d\u11bc\u1109\u1165","\u110b\u116d\u11bc\u110b\u1165","\u110b\u116e\u1109\u1161\u11ab","\u110b\u116e\u1109\u1165\u11ab","\u110b\u116e\u1109\u1173\u11bc","\u110b\u116e\u110b\u1167\u11ab\u1112\u1175","\u110b\u116e\u110c\u1165\u11bc","\u110b\u116e\u110e\u1166\u1100\u116e\u11a8","\u110b\u116e\u1111\u1167\u11ab","\u110b\u116e\u11ab\u1103\u1169\u11bc","\u110b\u116e\u11ab\u1106\u1167\u11bc","\u110b\u116e\u11ab\u1107\u1161\u11ab","\u110b\u116e\u11ab\u110c\u1165\u11ab","\u110b\u116e\u11ab\u1112\u1162\u11bc","\u110b\u116e\u11af\u1109\u1161\u11ab","\u110b\u116e\u11af\u110b\u1173\u11b7","\u110b\u116e\u11b7\u110c\u1175\u11a8\u110b\u1175\u11b7","\u110b\u116e\u11ba\u110b\u1165\u1105\u1173\u11ab","\u110b\u116e\u11ba\u110b\u1173\u11b7","\u110b\u116f\u1102\u1161\u11a8","\u110b\u116f\u11ab\u1100\u1169","\u110b\u116f\u11ab\u1105\u1162","\u110b\u116f\u11ab\u1109\u1165","\u110b\u116f\u11ab\u1109\u116e\u11bc\u110b\u1175","\u110b\u116f\u11ab\u110b\u1175\u11ab","\u110b\u116f\u11ab\u110c\u1161\u11bc","\u110b\u116f\u11ab\u1111\u1175\u1109\u1173","\u110b\u116f\u11af\u1100\u1173\u11b8","\u110b\u116f\u11af\u1103\u1173\u110f\u1165\u11b8","\u110b\u116f\u11af\u1109\u1166","\u110b\u116f\u11af\u110b\u116d\u110b\u1175\u11af","\u110b\u1170\u110b\u1175\u1110\u1165","\u110b\u1171\u1107\u1161\u11ab","\u110b\u1171\u1107\u1165\u11b8","\u110b\u1171\u1109\u1165\u11bc","\u110b\u1171\u110b\u116f\u11ab","\u110b\u1171\u1112\u1165\u11b7","\u110b\u1171\u1112\u1167\u11b8","\u110b\u1171\u11ba\u1109\u1161\u1105\u1161\u11b7","\u110b\u1172\u1102\u1161\u11ab\u1112\u1175","\u110b\u1172\u1105\u1165\u11b8","\u110b\u1172\u1106\u1167\u11bc","\u110b\u1172\u1106\u116e\u11af","\u110b\u1172\u1109\u1161\u11ab","\u110b\u1172\u110c\u1165\u11a8","\u110b\u1172\u110e\u1175\u110b\u116f\u11ab","\u110b\u1172\u1112\u1161\u11a8","\u110b\u1172\u1112\u1162\u11bc","\u110b\u1172\u1112\u1167\u11bc","\u110b\u1172\u11a8\u1100\u116e\u11ab","\u110b\u1172\u11a8\u1109\u1161\u11bc","\u110b\u1172\u11a8\u1109\u1175\u11b8","\u110b\u1172\u11a8\u110e\u1166","\u110b\u1173\u11ab\u1112\u1162\u11bc","\u110b\u1173\u11b7\u1105\u1167\u11a8","\u110b\u1173\u11b7\u1105\u116d","\u110b\u1173\u11b7\u1107\u1161\u11ab","\u110b\u1173\u11b7\u1109\u1165\u11bc","\u110b\u1173\u11b7\u1109\u1175\u11a8","\u110b\u1173\u11b7\u110b\u1161\u11a8","\u110b\u1173\u11b7\u110c\u116e","\u110b\u1174\u1100\u1167\u11ab","\u110b\u1174\u1102\u1169\u11ab","\u110b\u1174\u1106\u116e\u11ab","\u110b\u1174\u1107\u1169\u11a8","\u110b\u1174\u1109\u1175\u11a8","\u110b\u1174\u1109\u1175\u11b7","\u110b\u1174\u110b\u116c\u1105\u1169","\u110b\u1174\u110b\u116d\u11a8","\u110b\u1174\u110b\u116f\u11ab","\u110b\u1174\u1112\u1161\u11a8","\u110b\u1175\u1100\u1165\u11ba","\u110b\u1175\u1100\u1169\u11ba","\u110b\u1175\u1102\u1167\u11b7","\u110b\u1175\u1102\u1169\u11b7","\u110b\u1175\u1103\u1161\u11af","\u110b\u1175\u1103\u1162\u1105\u1169","\u110b\u1175\u1103\u1169\u11bc","\u110b\u1175\u1105\u1165\u11c2\u1100\u1166","\u110b\u1175\u1105\u1167\u11a8\u1109\u1165","\u110b\u1175\u1105\u1169\u11ab\u110c\u1165\u11a8","\u110b\u1175\u1105\u1173\u11b7","\u110b\u1175\u1106\u1175\u11ab","\u110b\u1175\u1107\u1161\u11af\u1109\u1169","\u110b\u1175\u1107\u1167\u11af","\u110b\u1175\u1107\u116e\u11af","\u110b\u1175\u1108\u1161\u11af","\u110b\u1175\u1109\u1161\u11bc","\u110b\u1175\u1109\u1165\u11bc","\u110b\u1175\u1109\u1173\u11af","\u110b\u1175\u110b\u1163\u1100\u1175","\u110b\u1175\u110b\u116d\u11bc","\u110b\u1175\u110b\u116e\u11ba","\u110b\u1175\u110b\u116f\u11af","\u110b\u1175\u110b\u1173\u11a8\u1100\u1169","\u110b\u1175\u110b\u1175\u11a8","\u110b\u1175\u110c\u1165\u11ab","\u110b\u1175\u110c\u116e\u11bc","\u110b\u1175\u1110\u1173\u11ae\u1102\u1161\u11af","\u110b\u1175\u1110\u1173\u11af","\u110b\u1175\u1112\u1169\u11ab","\u110b\u1175\u11ab\u1100\u1161\u11ab","\u110b\u1175\u11ab\u1100\u1167\u11a8","\u110b\u1175\u11ab\u1100\u1169\u11bc","\u110b\u1175\u11ab\u1100\u116e","\u110b\u1175\u11ab\u1100\u1173\u11ab","\u110b\u1175\u11ab\u1100\u1175","\u110b\u1175\u11ab\u1103\u1169","\u110b\u1175\u11ab\u1105\u1172","\u110b\u1175\u11ab\u1106\u116e\u11af","\u110b\u1175\u11ab\u1109\u1162\u11bc","\u110b\u1175\u11ab\u1109\u116b","\u110b\u1175\u11ab\u110b\u1167\u11ab","\u110b\u1175\u11ab\u110b\u116f\u11ab","\u110b\u1175\u11ab\u110c\u1162","\u110b\u1175\u11ab\u110c\u1169\u11bc","\u110b\u1175\u11ab\u110e\u1165\u11ab","\u110b\u1175\u11ab\u110e\u1166","\u110b\u1175\u11ab\u1110\u1165\u1102\u1166\u11ba","\u110b\u1175\u11ab\u1112\u1161","\u110b\u1175\u11ab\u1112\u1167\u11bc","\u110b\u1175\u11af\u1100\u1169\u11b8","\u110b\u1175\u11af\u1100\u1175","\u110b\u1175\u11af\u1103\u1161\u11ab","\u110b\u1175\u11af\u1103\u1162","\u110b\u1175\u11af\u1103\u1173\u11bc","\u110b\u1175\u11af\u1107\u1161\u11ab","\u110b\u1175\u11af\u1107\u1169\u11ab","\u110b\u1175\u11af\u1107\u116e","\u110b\u1175\u11af\u1109\u1161\u11bc","\u110b\u1175\u11af\u1109\u1162\u11bc","\u110b\u1175\u11af\u1109\u1169\u11ab","\u110b\u1175\u11af\u110b\u116d\u110b\u1175\u11af","\u110b\u1175\u11af\u110b\u116f\u11af","\u110b\u1175\u11af\u110c\u1165\u11bc","\u110b\u1175\u11af\u110c\u1169\u11bc","\u110b\u1175\u11af\u110c\u116e\u110b\u1175\u11af","\u110b\u1175\u11af\u110d\u1175\u11a8","\u110b\u1175\u11af\u110e\u1166","\u110b\u1175\u11af\u110e\u1175","\u110b\u1175\u11af\u1112\u1162\u11bc","\u110b\u1175\u11af\u1112\u116c\u110b\u116d\u11bc","\u110b\u1175\u11b7\u1100\u1173\u11b7","\u110b\u1175\u11b7\u1106\u116e","\u110b\u1175\u11b8\u1103\u1162","\u110b\u1175\u11b8\u1105\u1167\u11a8","\u110b\u1175\u11b8\u1106\u1161\u11ba","\u110b\u1175\u11b8\u1109\u1161","\u110b\u1175\u11b8\u1109\u116e\u11af","\u110b\u1175\u11b8\u1109\u1175","\u110b\u1175\u11b8\u110b\u116f\u11ab","\u110b\u1175\u11b8\u110c\u1161\u11bc","\u110b\u1175\u11b8\u1112\u1161\u11a8","\u110c\u1161\u1100\u1161\u110b\u116d\u11bc","\u110c\u1161\u1100\u1167\u11a8","\u110c\u1161\u1100\u1173\u11a8","\u110c\u1161\u1103\u1169\u11bc","\u110c\u1161\u1105\u1161\u11bc","\u110c\u1161\u1107\u116e\u1109\u1175\u11b7","\u110c\u1161\u1109\u1175\u11a8","\u110c\u1161\u1109\u1175\u11ab","\u110c\u1161\u110b\u1167\u11ab","\u110c\u1161\u110b\u116f\u11ab","\u110c\u1161\u110b\u1172\u11af","\u110c\u1161\u110c\u1165\u11ab\u1100\u1165","\u110c\u1161\u110c\u1165\u11bc","\u110c\u1161\u110c\u1169\u11ab\u1109\u1175\u11b7","\u110c\u1161\u1111\u1161\u11ab","\u110c\u1161\u11a8\u1100\u1161","\u110c\u1161\u11a8\u1102\u1167\u11ab","\u110c\u1161\u11a8\u1109\u1165\u11bc","\u110c\u1161\u11a8\u110b\u1165\u11b8","\u110c\u1161\u11a8\u110b\u116d\u11bc","\u110c\u1161\u11a8\u110b\u1173\u11ab\u1104\u1161\u11af","\u110c\u1161\u11a8\u1111\u116e\u11b7","\u110c\u1161\u11ab\u1103\u1175","\u110c\u1161\u11ab\u1104\u1173\u11a8","\u110c\u1161\u11ab\u110e\u1175","\u110c\u1161\u11af\u1106\u1169\u11ba","\u110c\u1161\u11b7\u1101\u1161\u11ab","\u110c\u1161\u11b7\u1109\u116e\u1112\u1161\u11b7","\u110c\u1161\u11b7\u1109\u1175","\u110c\u1161\u11b7\u110b\u1169\u11ba","\u110c\u1161\u11b7\u110c\u1161\u1105\u1175","\u110c\u1161\u11b8\u110c\u1175","\u110c\u1161\u11bc\u1100\u116a\u11ab","\u110c\u1161\u11bc\u1100\u116e\u11ab","\u110c\u1161\u11bc\u1100\u1175\u1100\u1161\u11ab","\u110c\u1161\u11bc\u1105\u1162","\u110c\u1161\u11bc\u1105\u1168","\u110c\u1161\u11bc\u1105\u1173","\u110c\u1161\u11bc\u1106\u1161","\u110c\u1161\u11bc\u1106\u1167\u11ab","\u110c\u1161\u11bc\u1106\u1169","\u110c\u1161\u11bc\u1106\u1175","\u110c\u1161\u11bc\u1107\u1175","\u110c\u1161\u11bc\u1109\u1161","\u110c\u1161\u11bc\u1109\u1169","\u110c\u1161\u11bc\u1109\u1175\u11a8","\u110c\u1161\u11bc\u110b\u1162\u110b\u1175\u11ab","\u110c\u1161\u11bc\u110b\u1175\u11ab","\u110c\u1161\u11bc\u110c\u1165\u11b7","\u110c\u1161\u11bc\u110e\u1161","\u110c\u1161\u11bc\u1112\u1161\u11a8\u1100\u1173\u11b7","\u110c\u1162\u1102\u1173\u11bc","\u110c\u1162\u1108\u1161\u11af\u1105\u1175","\u110c\u1162\u1109\u1161\u11ab","\u110c\u1162\u1109\u1162\u11bc","\u110c\u1162\u110c\u1161\u11a8\u1102\u1167\u11ab","\u110c\u1162\u110c\u1165\u11bc","\u110c\u1162\u110e\u1162\u1100\u1175","\u110c\u1162\u1111\u1161\u11ab","\u110c\u1162\u1112\u1161\u11a8","\u110c\u1162\u1112\u116a\u11af\u110b\u116d\u11bc","\u110c\u1165\u1100\u1165\u11ba","\u110c\u1165\u1100\u1169\u1105\u1175","\u110c\u1165\u1100\u1169\u11ba","\u110c\u1165\u1102\u1167\u11a8","\u110c\u1165\u1105\u1165\u11ab","\u110c\u1165\u1105\u1165\u11c2\u1100\u1166","\u110c\u1165\u1107\u1165\u11ab","\u110c\u1165\u110b\u116e\u11af","\u110c\u1165\u110c\u1165\u11af\u1105\u1169","\u110c\u1165\u110e\u116e\u11a8","\u110c\u1165\u11a8\u1100\u1173\u11a8","\u110c\u1165\u11a8\u1103\u1161\u11bc\u1112\u1175","\u110c\u1165\u11a8\u1109\u1165\u11bc","\u110c\u1165\u11a8\u110b\u116d\u11bc","\u110c\u1165\u11a8\u110b\u1173\u11bc","\u110c\u1165\u11ab\u1100\u1162","\u110c\u1165\u11ab\u1100\u1169\u11bc","\u110c\u1165\u11ab\u1100\u1175","\u110c\u1165\u11ab\u1103\u1161\u11af","\u110c\u1165\u11ab\u1105\u1161\u1103\u1169","\u110c\u1165\u11ab\u1106\u1161\u11bc","\u110c\u1165\u11ab\u1106\u116e\u11ab","\u110c\u1165\u11ab\u1107\u1161\u11ab","\u110c\u1165\u11ab\u1107\u116e","\u110c\u1165\u11ab\u1109\u1166","\u110c\u1165\u11ab\u1109\u1175","\u110c\u1165\u11ab\u110b\u116d\u11bc","\u110c\u1165\u11ab\u110c\u1161","\u110c\u1165\u11ab\u110c\u1162\u11bc","\u110c\u1165\u11ab\u110c\u116e","\u110c\u1165\u11ab\u110e\u1165\u11af","\u110c\u1165\u11ab\u110e\u1166","\u110c\u1165\u11ab\u1110\u1169\u11bc","\u110c\u1165\u11ab\u1112\u1167","\u110c\u1165\u11ab\u1112\u116e","\u110c\u1165\u11af\u1103\u1162","\u110c\u1165\u11af\u1106\u1161\u11bc","\u110c\u1165\u11af\u1107\u1161\u11ab","\u110c\u1165\u11af\u110b\u1163\u11a8","\u110c\u1165\u11af\u110e\u1161","\u110c\u1165\u11b7\u1100\u1165\u11b7","\u110c\u1165\u11b7\u1109\u116e","\u110c\u1165\u11b7\u1109\u1175\u11b7","\u110c\u1165\u11b7\u110b\u116f\u11ab","\u110c\u1165\u11b7\u110c\u1165\u11b7","\u110c\u1165\u11b7\u110e\u1161","\u110c\u1165\u11b8\u1100\u1173\u11ab","\u110c\u1165\u11b8\u1109\u1175","\u110c\u1165\u11b8\u110e\u1169\u11a8","\u110c\u1165\u11ba\u1100\u1161\u1105\u1161\u11a8","\u110c\u1165\u11bc\u1100\u1165\u110c\u1161\u11bc","\u110c\u1165\u11bc\u1103\u1169","\u110c\u1165\u11bc\u1105\u1172\u110c\u1161\u11bc","\u110c\u1165\u11bc\u1105\u1175","\u110c\u1165\u11bc\u1106\u1161\u11af","\u110c\u1165\u11bc\u1106\u1167\u11ab","\u110c\u1165\u11bc\u1106\u116e\u11ab","\u110c\u1165\u11bc\u1107\u1161\u11ab\u1103\u1162","\u110c\u1165\u11bc\u1107\u1169","\u110c\u1165\u11bc\u1107\u116e","\u110c\u1165\u11bc\u1107\u1175","\u110c\u1165\u11bc\u1109\u1161\u11bc","\u110c\u1165\u11bc\u1109\u1165\u11bc","\u110c\u1165\u11bc\u110b\u1169","\u110c\u1165\u11bc\u110b\u116f\u11ab","\u110c\u1165\u11bc\u110c\u1161\u11bc","\u110c\u1165\u11bc\u110c\u1175","\u110c\u1165\u11bc\u110e\u1175","\u110c\u1165\u11bc\u1112\u116a\u11a8\u1112\u1175","\u110c\u1166\u1100\u1169\u11bc","\u110c\u1166\u1100\u116a\u110c\u1165\u11b7","\u110c\u1166\u1103\u1162\u1105\u1169","\u110c\u1166\u1106\u1169\u11a8","\u110c\u1166\u1107\u1161\u11af","\u110c\u1166\u1107\u1165\u11b8","\u110c\u1166\u1109\u1161\u11ba\u1102\u1161\u11af","\u110c\u1166\u110b\u1161\u11ab","\u110c\u1166\u110b\u1175\u11af","\u110c\u1166\u110c\u1161\u11a8","\u110c\u1166\u110c\u116e\u1103\u1169","\u110c\u1166\u110e\u116e\u11af","\u110c\u1166\u1111\u116e\u11b7","\u110c\u1166\u1112\u1161\u11ab","\u110c\u1169\u1100\u1161\u11a8","\u110c\u1169\u1100\u1165\u11ab","\u110c\u1169\u1100\u1173\u11b7","\u110c\u1169\u1100\u1175\u11bc","\u110c\u1169\u1106\u1167\u11bc","\u110c\u1169\u1106\u1175\u1105\u116d","\u110c\u1169\u1109\u1161\u11bc","\u110c\u1169\u1109\u1165\u11ab","\u110c\u1169\u110b\u116d\u11bc\u1112\u1175","\u110c\u1169\u110c\u1165\u11af","\u110c\u1169\u110c\u1165\u11bc","\u110c\u1169\u110c\u1175\u11a8","\u110c\u1169\u11ab\u1103\u1162\u11ba\u1106\u1161\u11af","\u110c\u1169\u11ab\u110c\u1162","\u110c\u1169\u11af\u110b\u1165\u11b8","\u110c\u1169\u11af\u110b\u1173\u11b7","\u110c\u1169\u11bc\u1100\u116d","\u110c\u1169\u11bc\u1105\u1169","\u110c\u1169\u11bc\u1105\u1172","\u110c\u1169\u11bc\u1109\u1169\u1105\u1175","\u110c\u1169\u11bc\u110b\u1165\u11b8\u110b\u116f\u11ab","\u110c\u1169\u11bc\u110c\u1169\u11bc","\u110c\u1169\u11bc\u1112\u1161\u11b8","\u110c\u116a\u1109\u1165\u11a8","\u110c\u116c\u110b\u1175\u11ab","\u110c\u116e\u1100\u116a\u11ab\u110c\u1165\u11a8","\u110c\u116e\u1105\u1173\u11b7","\u110c\u116e\u1106\u1161\u11af","\u110c\u116e\u1106\u1165\u1102\u1175","\u110c\u116e\u1106\u1165\u11a8","\u110c\u116e\u1106\u116e\u11ab","\u110c\u116e\u1106\u1175\u11ab","\u110c\u116e\u1107\u1161\u11bc","\u110c\u116e\u1107\u1167\u11ab","\u110c\u116e\u1109\u1175\u11a8","\u110c\u116e\u110b\u1175\u11ab","\u110c\u116e\u110b\u1175\u11af","\u110c\u116e\u110c\u1161\u11bc","\u110c\u116e\u110c\u1165\u11ab\u110c\u1161","\u110c\u116e\u1110\u1162\u11a8","\u110c\u116e\u11ab\u1107\u1175","\u110c\u116e\u11af\u1100\u1165\u1105\u1175","\u110c\u116e\u11af\u1100\u1175","\u110c\u116e\u11af\u1106\u116e\u1102\u1174","\u110c\u116e\u11bc\u1100\u1161\u11ab","\u110c\u116e\u11bc\u1100\u1168\u1107\u1161\u11bc\u1109\u1169\u11bc","\u110c\u116e\u11bc\u1100\u116e\u11a8","\u110c\u116e\u11bc\u1102\u1167\u11ab","\u110c\u116e\u11bc\u1103\u1161\u11ab","\u110c\u116e\u11bc\u1103\u1169\u11a8","\u110c\u116e\u11bc\u1107\u1161\u11ab","\u110c\u116e\u11bc\u1107\u116e","\u110c\u116e\u11bc\u1109\u1166","\u110c\u116e\u11bc\u1109\u1169\u1100\u1175\u110b\u1165\u11b8","\u110c\u116e\u11bc\u1109\u116e\u11ab","\u110c\u116e\u11bc\u110b\u1161\u11bc","\u110c\u116e\u11bc\u110b\u116d","\u110c\u116e\u11bc\u1112\u1161\u11a8\u1100\u116d","\u110c\u1173\u11a8\u1109\u1165\u11a8","\u110c\u1173\u11a8\u1109\u1175","\u110c\u1173\u11af\u1100\u1165\u110b\u116e\u11b7","\u110c\u1173\u11bc\u1100\u1161","\u110c\u1173\u11bc\u1100\u1165","\u110c\u1173\u11bc\u1100\u116f\u11ab","\u110c\u1173\u11bc\u1109\u1161\u11bc","\u110c\u1173\u11bc\u1109\u1166","\u110c\u1175\u1100\u1161\u11a8","\u110c\u1175\u1100\u1161\u11b8","\u110c\u1175\u1100\u1167\u11bc","\u110c\u1175\u1100\u1173\u11a8\u1112\u1175","\u110c\u1175\u1100\u1173\u11b7","\u110c\u1175\u1100\u1173\u11b8","\u110c\u1175\u1102\u1173\u11bc","\u110c\u1175\u1105\u1173\u11b7\u1100\u1175\u11af","\u110c\u1175\u1105\u1175\u1109\u1161\u11ab","\u110c\u1175\u1107\u1161\u11bc","\u110c\u1175\u1107\u116e\u11bc","\u110c\u1175\u1109\u1175\u11a8","\u110c\u1175\u110b\u1167\u11a8","\u110c\u1175\u110b\u116e\u1100\u1162","\u110c\u1175\u110b\u116f\u11ab","\u110c\u1175\u110c\u1165\u11a8","\u110c\u1175\u110c\u1165\u11b7","\u110c\u1175\u110c\u1175\u11ab","\u110c\u1175\u110e\u116e\u11af","\u110c\u1175\u11a8\u1109\u1165\u11ab","\u110c\u1175\u11a8\u110b\u1165\u11b8","\u110c\u1175\u11a8\u110b\u116f\u11ab","\u110c\u1175\u11a8\u110c\u1161\u11bc","\u110c\u1175\u11ab\u1100\u1173\u11b8","\u110c\u1175\u11ab\u1103\u1169\u11bc","\u110c\u1175\u11ab\u1105\u1169","\u110c\u1175\u11ab\u1105\u116d","\u110c\u1175\u11ab\u1105\u1175","\u110c\u1175\u11ab\u110d\u1161","\u110c\u1175\u11ab\u110e\u1161\u11af","\u110c\u1175\u11ab\u110e\u116e\u11af","\u110c\u1175\u11ab\u1110\u1169\u11bc","\u110c\u1175\u11ab\u1112\u1162\u11bc","\u110c\u1175\u11af\u1106\u116e\u11ab","\u110c\u1175\u11af\u1107\u1167\u11bc","\u110c\u1175\u11af\u1109\u1165","\u110c\u1175\u11b7\u110c\u1161\u11a8","\u110c\u1175\u11b8\u1103\u1161\u11ab","\u110c\u1175\u11b8\u110b\u1161\u11ab","\u110c\u1175\u11b8\u110c\u116e\u11bc","\u110d\u1161\u110c\u1173\u11bc","\u110d\u1175\u1101\u1165\u1100\u1175","\u110e\u1161\u1102\u1161\u11b7","\u110e\u1161\u1105\u1161\u1105\u1175","\u110e\u1161\u1105\u1163\u11bc","\u110e\u1161\u1105\u1175\u11b7","\u110e\u1161\u1107\u1167\u11af","\u110e\u1161\u1109\u1165\u11ab","\u110e\u1161\u110e\u1173\u11b7","\u110e\u1161\u11a8\u1100\u1161\u11a8","\u110e\u1161\u11ab\u1106\u116e\u11af","\u110e\u1161\u11ab\u1109\u1165\u11bc","\u110e\u1161\u11b7\u1100\u1161","\u110e\u1161\u11b7\u1100\u1175\u1105\u1173\u11b7","\u110e\u1161\u11b7\u1109\u1162","\u110e\u1161\u11b7\u1109\u1165\u11a8","\u110e\u1161\u11b7\u110b\u1167","\u110e\u1161\u11b7\u110b\u116c","\u110e\u1161\u11b7\u110c\u1169","\u110e\u1161\u11ba\u110c\u1161\u11ab","\u110e\u1161\u11bc\u1100\u1161","\u110e\u1161\u11bc\u1100\u1169","\u110e\u1161\u11bc\u1100\u116e","\u110e\u1161\u11bc\u1106\u116e\u11ab","\u110e\u1161\u11bc\u1107\u1161\u11a9","\u110e\u1161\u11bc\u110c\u1161\u11a8","\u110e\u1161\u11bc\u110c\u1169","\u110e\u1162\u1102\u1165\u11af","\u110e\u1162\u110c\u1165\u11b7","\u110e\u1162\u11a8\u1100\u1161\u1107\u1161\u11bc","\u110e\u1162\u11a8\u1107\u1161\u11bc","\u110e\u1162\u11a8\u1109\u1161\u11bc","\u110e\u1162\u11a8\u110b\u1175\u11b7","\u110e\u1162\u11b7\u1111\u1175\u110b\u1165\u11ab","\u110e\u1165\u1107\u1165\u11af","\u110e\u1165\u110b\u1173\u11b7","\u110e\u1165\u11ab\u1100\u116e\u11a8","\u110e\u1165\u11ab\u1103\u116e\u11bc","\u110e\u1165\u11ab\u110c\u1161\u11bc","\u110e\u1165\u11ab\u110c\u1162","\u110e\u1165\u11ab\u110e\u1165\u11ab\u1112\u1175","\u110e\u1165\u11af\u1103\u1169","\u110e\u1165\u11af\u110c\u1165\u1112\u1175","\u110e\u1165\u11af\u1112\u1161\u11a8","\u110e\u1165\u11ba\u1102\u1161\u11af","\u110e\u1165\u11ba\u110d\u1162","\u110e\u1165\u11bc\u1102\u1167\u11ab","\u110e\u1165\u11bc\u1107\u1161\u110c\u1175","\u110e\u1165\u11bc\u1109\u1169","\u110e\u1165\u11bc\u110e\u116e\u11ab","\u110e\u1166\u1100\u1168","\u110e\u1166\u1105\u1167\u11a8","\u110e\u1166\u110b\u1169\u11ab","\u110e\u1166\u110b\u1172\u11a8","\u110e\u1166\u110c\u116e\u11bc","\u110e\u1166\u1112\u1165\u11b7","\u110e\u1169\u1103\u1173\u11bc\u1112\u1161\u11a8\u1109\u1162\u11bc","\u110e\u1169\u1107\u1161\u11ab","\u110e\u1169\u1107\u1161\u11b8","\u110e\u1169\u1109\u1161\u11bc\u1112\u116a","\u110e\u1169\u1109\u116e\u11ab","\u110e\u1169\u110b\u1167\u1105\u1173\u11b7","\u110e\u1169\u110b\u116f\u11ab","\u110e\u1169\u110c\u1165\u1102\u1167\u11a8","\u110e\u1169\u110c\u1165\u11b7","\u110e\u1169\u110e\u1165\u11bc","\u110e\u1169\u110f\u1169\u11af\u1105\u1175\u11ba","\u110e\u1169\u11ba\u1107\u116e\u11af","\u110e\u1169\u11bc\u1100\u1161\u11a8","\u110e\u1169\u11bc\u1105\u1175","\u110e\u1169\u11bc\u110c\u1161\u11bc","\u110e\u116a\u11af\u110b\u1167\u11bc","\u110e\u116c\u1100\u1173\u11ab","\u110e\u116c\u1109\u1161\u11bc","\u110e\u116c\u1109\u1165\u11ab","\u110e\u116c\u1109\u1175\u11ab","\u110e\u116c\u110b\u1161\u11a8","\u110e\u116c\u110c\u1169\u11bc","\u110e\u116e\u1109\u1165\u11a8","\u110e\u116e\u110b\u1165\u11a8","\u110e\u116e\u110c\u1175\u11ab","\u110e\u116e\u110e\u1165\u11ab","\u110e\u116e\u110e\u1173\u11a8","\u110e\u116e\u11a8\u1100\u116e","\u110e\u116e\u11a8\u1109\u1169","\u110e\u116e\u11a8\u110c\u1166","\u110e\u116e\u11a8\u1112\u1161","\u110e\u116e\u11af\u1100\u1173\u11ab","\u110e\u116e\u11af\u1107\u1161\u11af","\u110e\u116e\u11af\u1109\u1161\u11ab","\u110e\u116e\u11af\u1109\u1175\u11ab","\u110e\u116e\u11af\u110b\u1167\u11ab","\u110e\u116e\u11af\u110b\u1175\u11b8","\u110e\u116e\u11af\u110c\u1161\u11bc","\u110e\u116e\u11af\u1111\u1161\u11ab","\u110e\u116e\u11bc\u1100\u1167\u11a8","\u110e\u116e\u11bc\u1100\u1169","\u110e\u116e\u11bc\u1103\u1169\u11af","\u110e\u116e\u11bc\u1107\u116e\u11ab\u1112\u1175","\u110e\u116e\u11bc\u110e\u1165\u11bc\u1103\u1169","\u110e\u1171\u110b\u1165\u11b8","\u110e\u1171\u110c\u1175\u11a8","\u110e\u1171\u1112\u1163\u11bc","\u110e\u1175\u110b\u1163\u11a8","\u110e\u1175\u11ab\u1100\u116e","\u110e\u1175\u11ab\u110e\u1165\u11a8","\u110e\u1175\u11af\u1109\u1175\u11b8","\u110e\u1175\u11af\u110b\u116f\u11af","\u110e\u1175\u11af\u1111\u1161\u11ab","\u110e\u1175\u11b7\u1103\u1162","\u110e\u1175\u11b7\u1106\u116e\u11a8","\u110e\u1175\u11b7\u1109\u1175\u11af","\u110e\u1175\u11ba\u1109\u1169\u11af","\u110e\u1175\u11bc\u110e\u1161\u11ab","\u110f\u1161\u1106\u1166\u1105\u1161","\u110f\u1161\u110b\u116e\u11ab\u1110\u1165","\u110f\u1161\u11af\u1100\u116e\u11a8\u1109\u116e","\u110f\u1162\u1105\u1175\u11a8\u1110\u1165","\u110f\u1162\u11b7\u1111\u1165\u1109\u1173","\u110f\u1162\u11b7\u1111\u1166\u110b\u1175\u11ab","\u110f\u1165\u1110\u1173\u11ab","\u110f\u1165\u11ab\u1103\u1175\u1109\u1167\u11ab","\u110f\u1165\u11af\u1105\u1165","\u110f\u1165\u11b7\u1111\u1172\u1110\u1165","\u110f\u1169\u1101\u1175\u1105\u1175","\u110f\u1169\u1106\u1175\u1103\u1175","\u110f\u1169\u11ab\u1109\u1165\u1110\u1173","\u110f\u1169\u11af\u1105\u1161","\u110f\u1169\u11b7\u1111\u1173\u11af\u1105\u1166\u11a8\u1109\u1173","\u110f\u1169\u11bc\u1102\u1161\u1106\u116e\u11af","\u110f\u116b\u1100\u1161\u11b7","\u110f\u116e\u1103\u1166\u1110\u1161","\u110f\u1173\u1105\u1175\u11b7","\u110f\u1173\u11ab\u1100\u1175\u11af","\u110f\u1173\u11ab\u1104\u1161\u11af","\u110f\u1173\u11ab\u1109\u1169\u1105\u1175","\u110f\u1173\u11ab\u110b\u1161\u1103\u1173\u11af","\u110f\u1173\u11ab\u110b\u1165\u1106\u1165\u1102\u1175","\u110f\u1173\u11ab\u110b\u1175\u11af","\u110f\u1173\u11ab\u110c\u1165\u11af","\u110f\u1173\u11af\u1105\u1162\u1109\u1175\u11a8","\u110f\u1173\u11af\u1105\u1165\u11b8","\u110f\u1175\u11af\u1105\u1169","\u1110\u1161\u110b\u1175\u11b8","\u1110\u1161\u110c\u1161\u1100\u1175","\u1110\u1161\u11a8\u1100\u116e","\u1110\u1161\u11a8\u110c\u1161","\u1110\u1161\u11ab\u1109\u1162\u11bc","\u1110\u1162\u1100\u116f\u11ab\u1103\u1169","\u1110\u1162\u110b\u1163\u11bc","\u1110\u1162\u1111\u116e\u11bc","\u1110\u1162\u11a8\u1109\u1175","\u1110\u1162\u11af\u1105\u1165\u11ab\u1110\u1173","\u1110\u1165\u1102\u1165\u11af","\u1110\u1165\u1106\u1175\u1102\u1165\u11af","\u1110\u1166\u1102\u1175\u1109\u1173","\u1110\u1166\u1109\u1173\u1110\u1173","\u1110\u1166\u110b\u1175\u1107\u1173\u11af","\u1110\u1166\u11af\u1105\u1166\u1107\u1175\u110c\u1165\u11ab","\u1110\u1169\u1105\u1169\u11ab","\u1110\u1169\u1106\u1161\u1110\u1169","\u1110\u1169\u110b\u116d\u110b\u1175\u11af","\u1110\u1169\u11bc\u1100\u1168","\u1110\u1169\u11bc\u1100\u116a","\u1110\u1169\u11bc\u1105\u1169","\u1110\u1169\u11bc\u1109\u1175\u11ab","\u1110\u1169\u11bc\u110b\u1167\u11a8","\u1110\u1169\u11bc\u110b\u1175\u11af","\u1110\u1169\u11bc\u110c\u1161\u11bc","\u1110\u1169\u11bc\u110c\u1166","\u1110\u1169\u11bc\u110c\u1173\u11bc","\u1110\u1169\u11bc\u1112\u1161\u11b8","\u1110\u1169\u11bc\u1112\u116a","\u1110\u116c\u1100\u1173\u11ab","\u1110\u116c\u110b\u116f\u11ab","\u1110\u116c\u110c\u1175\u11a8\u1100\u1173\u11b7","\u1110\u1171\u1100\u1175\u11b7","\u1110\u1173\u1105\u1165\u11a8","\u1110\u1173\u11a8\u1100\u1173\u11b8","\u1110\u1173\u11a8\u1107\u1167\u11af","\u1110\u1173\u11a8\u1109\u1165\u11bc","\u1110\u1173\u11a8\u1109\u116e","\u1110\u1173\u11a8\u110c\u1175\u11bc","\u1110\u1173\u11a8\u1112\u1175","\u1110\u1173\u11ab\u1110\u1173\u11ab\u1112\u1175","\u1110\u1175\u1109\u1167\u110e\u1173","\u1111\u1161\u1105\u1161\u11ab\u1109\u1162\u11a8","\u1111\u1161\u110b\u1175\u11af","\u1111\u1161\u110e\u116e\u11af\u1109\u1169","\u1111\u1161\u11ab\u1100\u1167\u11af","\u1111\u1161\u11ab\u1103\u1161\u11ab","\u1111\u1161\u11ab\u1106\u1162","\u1111\u1161\u11ab\u1109\u1161","\u1111\u1161\u11af\u1109\u1175\u11b8","\u1111\u1161\u11af\u110b\u116f\u11af","\u1111\u1161\u11b8\u1109\u1169\u11bc","\u1111\u1162\u1109\u1167\u11ab","\u1111\u1162\u11a8\u1109\u1173","\u1111\u1162\u11a8\u1109\u1175\u1106\u1175\u11af\u1105\u1175","\u1111\u1162\u11ab\u1110\u1175","\u1111\u1165\u1109\u1166\u11ab\u1110\u1173","\u1111\u1166\u110b\u1175\u11ab\u1110\u1173","\u1111\u1167\u11ab\u1100\u1167\u11ab","\u1111\u1167\u11ab\u110b\u1174","\u1111\u1167\u11ab\u110c\u1175","\u1111\u1167\u11ab\u1112\u1175","\u1111\u1167\u11bc\u1100\u1161","\u1111\u1167\u11bc\u1100\u1172\u11ab","\u1111\u1167\u11bc\u1109\u1162\u11bc","\u1111\u1167\u11bc\u1109\u1169","\u1111\u1167\u11bc\u110b\u1163\u11bc","\u1111\u1167\u11bc\u110b\u1175\u11af","\u1111\u1167\u11bc\u1112\u116a","\u1111\u1169\u1109\u1173\u1110\u1165","\u1111\u1169\u110b\u1175\u11ab\u1110\u1173","\u1111\u1169\u110c\u1161\u11bc","\u1111\u1169\u1112\u1161\u11b7","\u1111\u116d\u1106\u1167\u11ab","\u1111\u116d\u110c\u1165\u11bc","\u1111\u116d\u110c\u116e\u11ab","\u1111\u116d\u1112\u1167\u11ab","\u1111\u116e\u11b7\u1106\u1169\u11a8","\u1111\u116e\u11b7\u110c\u1175\u11af","\u1111\u116e\u11bc\u1100\u1167\u11bc","\u1111\u116e\u11bc\u1109\u1169\u11a8","\u1111\u116e\u11bc\u1109\u1173\u11b8","\u1111\u1173\u1105\u1161\u11bc\u1109\u1173","\u1111\u1173\u1105\u1175\u11ab\u1110\u1165","\u1111\u1173\u11af\u1105\u1161\u1109\u1173\u1110\u1175\u11a8","\u1111\u1175\u1100\u1169\u11ab","\u1111\u1175\u1106\u1161\u11bc","\u1111\u1175\u110b\u1161\u1102\u1169","\u1111\u1175\u11af\u1105\u1173\u11b7","\u1111\u1175\u11af\u1109\u116e","\u1111\u1175\u11af\u110b\u116d","\u1111\u1175\u11af\u110c\u1161","\u1111\u1175\u11af\u1110\u1169\u11bc","\u1111\u1175\u11bc\u1100\u1168","\u1112\u1161\u1102\u1173\u1102\u1175\u11b7","\u1112\u1161\u1102\u1173\u11af","\u1112\u1161\u1103\u1173\u110b\u1170\u110b\u1165","\u1112\u1161\u1105\u116e\u11ba\u1107\u1161\u11b7","\u1112\u1161\u1107\u1161\u11ab\u1100\u1175","\u1112\u1161\u1109\u116e\u11a8\u110c\u1175\u11b8","\u1112\u1161\u1109\u116e\u11ab","\u1112\u1161\u110b\u1167\u1110\u1173\u11ab","\u1112\u1161\u110c\u1175\u1106\u1161\u11ab","\u1112\u1161\u110e\u1165\u11ab","\u1112\u1161\u1111\u116e\u11b7","\u1112\u1161\u1111\u1175\u11af","\u1112\u1161\u11a8\u1100\u116a","\u1112\u1161\u11a8\u1100\u116d","\u1112\u1161\u11a8\u1100\u1173\u11b8","\u1112\u1161\u11a8\u1100\u1175","\u1112\u1161\u11a8\u1102\u1167\u11ab","\u1112\u1161\u11a8\u1105\u1167\u11a8","\u1112\u1161\u11a8\u1107\u1165\u11ab","\u1112\u1161\u11a8\u1107\u116e\u1106\u1169","\u1112\u1161\u11a8\u1107\u1175","\u1112\u1161\u11a8\u1109\u1162\u11bc","\u1112\u1161\u11a8\u1109\u116e\u11af","\u1112\u1161\u11a8\u1109\u1173\u11b8","\u1112\u1161\u11a8\u110b\u116d\u11bc\u1111\u116e\u11b7","\u1112\u1161\u11a8\u110b\u116f\u11ab","\u1112\u1161\u11a8\u110b\u1171","\u1112\u1161\u11a8\u110c\u1161","\u1112\u1161\u11a8\u110c\u1165\u11b7","\u1112\u1161\u11ab\u1100\u1168","\u1112\u1161\u11ab\u1100\u1173\u11af","\u1112\u1161\u11ab\u1101\u1165\u1107\u1165\u11ab\u110b\u1166","\u1112\u1161\u11ab\u1102\u1161\u11bd","\u1112\u1161\u11ab\u1102\u116e\u11ab","\u1112\u1161\u11ab\u1103\u1169\u11bc\u110b\u1161\u11ab","\u1112\u1161\u11ab\u1104\u1162","\u1112\u1161\u11ab\u1105\u1161\u1109\u1161\u11ab","\u1112\u1161\u11ab\u1106\u1161\u1103\u1175","\u1112\u1161\u11ab\u1106\u116e\u11ab","\u1112\u1161\u11ab\u1107\u1165\u11ab","\u1112\u1161\u11ab\u1107\u1169\u11a8","\u1112\u1161\u11ab\u1109\u1175\u11a8","\u1112\u1161\u11ab\u110b\u1167\u1105\u1173\u11b7","\u1112\u1161\u11ab\u110d\u1169\u11a8","\u1112\u1161\u11af\u1106\u1165\u1102\u1175","\u1112\u1161\u11af\u110b\u1161\u1107\u1165\u110c\u1175","\u1112\u1161\u11af\u110b\u1175\u11ab","\u1112\u1161\u11b7\u1101\u1166","\u1112\u1161\u11b7\u1107\u116e\u1105\u1169","\u1112\u1161\u11b8\u1100\u1167\u11a8","\u1112\u1161\u11b8\u1105\u1175\u110c\u1165\u11a8","\u1112\u1161\u11bc\u1100\u1169\u11bc","\u1112\u1161\u11bc\u1100\u116e","\u1112\u1161\u11bc\u1109\u1161\u11bc","\u1112\u1161\u11bc\u110b\u1174","\u1112\u1162\u1100\u1167\u11af","\u1112\u1162\u1100\u116e\u11ab","\u1112\u1162\u1103\u1161\u11b8","\u1112\u1162\u1103\u1161\u11bc","\u1112\u1162\u1106\u116e\u11af","\u1112\u1162\u1109\u1165\u11a8","\u1112\u1162\u1109\u1165\u11af","\u1112\u1162\u1109\u116e\u110b\u116d\u11a8\u110c\u1161\u11bc","\u1112\u1162\u110b\u1161\u11ab","\u1112\u1162\u11a8\u1109\u1175\u11b7","\u1112\u1162\u11ab\u1103\u1173\u1107\u1162\u11a8","\u1112\u1162\u11b7\u1107\u1165\u1100\u1165","\u1112\u1162\u11ba\u1107\u1167\u11c0","\u1112\u1162\u11ba\u1109\u1161\u11af","\u1112\u1162\u11bc\u1103\u1169\u11bc","\u1112\u1162\u11bc\u1107\u1169\u11a8","\u1112\u1162\u11bc\u1109\u1161","\u1112\u1162\u11bc\u110b\u116e\u11ab","\u1112\u1162\u11bc\u110b\u1171","\u1112\u1163\u11bc\u1100\u1175","\u1112\u1163\u11bc\u1109\u1161\u11bc","\u1112\u1163\u11bc\u1109\u116e","\u1112\u1165\u1105\u1161\u11a8","\u1112\u1165\u110b\u116d\u11bc","\u1112\u1166\u11af\u1100\u1175","\u1112\u1167\u11ab\u1100\u116a\u11ab","\u1112\u1167\u11ab\u1100\u1173\u11b7","\u1112\u1167\u11ab\u1103\u1162","\u1112\u1167\u11ab\u1109\u1161\u11bc","\u1112\u1167\u11ab\u1109\u1175\u11af","\u1112\u1167\u11ab\u110c\u1161\u11bc","\u1112\u1167\u11ab\u110c\u1162","\u1112\u1167\u11ab\u110c\u1175","\u1112\u1167\u11af\u110b\u1162\u11a8","\u1112\u1167\u11b8\u1105\u1167\u11a8","\u1112\u1167\u11bc\u1107\u116e","\u1112\u1167\u11bc\u1109\u1161","\u1112\u1167\u11bc\u1109\u116e","\u1112\u1167\u11bc\u1109\u1175\u11a8","\u1112\u1167\u11bc\u110c\u1166","\u1112\u1167\u11bc\u1110\u1162","\u1112\u1167\u11bc\u1111\u1167\u11ab","\u1112\u1168\u1110\u1162\u11a8","\u1112\u1169\u1100\u1175\u1109\u1175\u11b7","\u1112\u1169\u1102\u1161\u11b7","\u1112\u1169\u1105\u1161\u11bc\u110b\u1175","\u1112\u1169\u1107\u1161\u11a8","\u1112\u1169\u1110\u1166\u11af","\u1112\u1169\u1112\u1173\u11b8","\u1112\u1169\u11a8\u1109\u1175","\u1112\u1169\u11af\u1105\u1169","\u1112\u1169\u11b7\u1111\u1166\u110b\u1175\u110c\u1175","\u1112\u1169\u11bc\u1107\u1169","\u1112\u1169\u11bc\u1109\u116e","\u1112\u1169\u11bc\u110e\u1161","\u1112\u116a\u1106\u1167\u11ab","\u1112\u116a\u1107\u116e\u11ab","\u1112\u116a\u1109\u1161\u11af","\u1112\u116a\u110b\u116d\u110b\u1175\u11af","\u1112\u116a\u110c\u1161\u11bc","\u1112\u116a\u1112\u1161\u11a8","\u1112\u116a\u11a8\u1107\u1169","\u1112\u116a\u11a8\u110b\u1175\u11ab","\u1112\u116a\u11a8\u110c\u1161\u11bc","\u1112\u116a\u11a8\u110c\u1165\u11bc","\u1112\u116a\u11ab\u1100\u1161\u11b8","\u1112\u116a\u11ab\u1100\u1167\u11bc","\u1112\u116a\u11ab\u110b\u1167\u11bc","\u1112\u116a\u11ab\u110b\u1172\u11af","\u1112\u116a\u11ab\u110c\u1161","\u1112\u116a\u11af\u1100\u1175","\u1112\u116a\u11af\u1103\u1169\u11bc","\u1112\u116a\u11af\u1107\u1161\u11af\u1112\u1175","\u1112\u116a\u11af\u110b\u116d\u11bc","\u1112\u116a\u11af\u110d\u1161\u11a8","\u1112\u116c\u1100\u1167\u11ab","\u1112\u116c\u1100\u116a\u11ab","\u1112\u116c\u1107\u1169\u11a8","\u1112\u116c\u1109\u1162\u11a8","\u1112\u116c\u110b\u116f\u11ab","\u1112\u116c\u110c\u1161\u11bc","\u1112\u116c\u110c\u1165\u11ab","\u1112\u116c\u11ba\u1109\u116e","\u1112\u116c\u11bc\u1103\u1161\u11ab\u1107\u1169\u1103\u1169","\u1112\u116d\u110b\u1172\u11af\u110c\u1165\u11a8","\u1112\u116e\u1107\u1161\u11ab","\u1112\u116e\u110e\u116e\u11ba\u1100\u1161\u1105\u116e","\u1112\u116e\u11ab\u1105\u1167\u11ab","\u1112\u116f\u11af\u110a\u1175\u11ab","\u1112\u1172\u1109\u1175\u11a8","\u1112\u1172\u110b\u1175\u11af","\u1112\u1172\u11bc\u1102\u1162","\u1112\u1173\u1105\u1173\u11b7","\u1112\u1173\u11a8\u1107\u1162\u11a8","\u1112\u1173\u11a8\u110b\u1175\u11ab","\u1112\u1173\u11ab\u110c\u1165\u11a8","\u1112\u1173\u11ab\u1112\u1175","\u1112\u1173\u11bc\u1106\u1175","\u1112\u1173\u11bc\u1107\u116e\u11ab","\u1112\u1174\u1100\u1169\u11a8","\u1112\u1174\u1106\u1161\u11bc","\u1112\u1174\u1109\u1162\u11bc","\u1112\u1174\u11ab\u1109\u1162\u11a8","\u1112\u1175\u11b7\u1101\u1165\u11ba"]')},1945:e=>{"use strict";e.exports=JSON.parse('["abacate","abaixo","abalar","abater","abduzir","abelha","aberto","abismo","abotoar","abranger","abreviar","abrigar","abrupto","absinto","absoluto","absurdo","abutre","acabado","acalmar","acampar","acanhar","acaso","aceitar","acelerar","acenar","acervo","acessar","acetona","achatar","acidez","acima","acionado","acirrar","aclamar","aclive","acolhida","acomodar","acoplar","acordar","acumular","acusador","adaptar","adega","adentro","adepto","adequar","aderente","adesivo","adeus","adiante","aditivo","adjetivo","adjunto","admirar","adorar","adquirir","adubo","adverso","advogado","aeronave","afastar","aferir","afetivo","afinador","afivelar","aflito","afluente","afrontar","agachar","agarrar","agasalho","agenciar","agilizar","agiota","agitado","agora","agradar","agreste","agrupar","aguardar","agulha","ajoelhar","ajudar","ajustar","alameda","alarme","alastrar","alavanca","albergue","albino","alcatra","aldeia","alecrim","alegria","alertar","alface","alfinete","algum","alheio","aliar","alicate","alienar","alinhar","aliviar","almofada","alocar","alpiste","alterar","altitude","alucinar","alugar","aluno","alusivo","alvo","amaciar","amador","amarelo","amassar","ambas","ambiente","ameixa","amenizar","amido","amistoso","amizade","amolador","amontoar","amoroso","amostra","amparar","ampliar","ampola","anagrama","analisar","anarquia","anatomia","andaime","anel","anexo","angular","animar","anjo","anomalia","anotado","ansioso","anterior","anuidade","anunciar","anzol","apagador","apalpar","apanhado","apego","apelido","apertada","apesar","apetite","apito","aplauso","aplicada","apoio","apontar","aposta","aprendiz","aprovar","aquecer","arame","aranha","arara","arcada","ardente","areia","arejar","arenito","aresta","argiloso","argola","arma","arquivo","arraial","arrebate","arriscar","arroba","arrumar","arsenal","arterial","artigo","arvoredo","asfaltar","asilado","aspirar","assador","assinar","assoalho","assunto","astral","atacado","atadura","atalho","atarefar","atear","atender","aterro","ateu","atingir","atirador","ativo","atoleiro","atracar","atrevido","atriz","atual","atum","auditor","aumentar","aura","aurora","autismo","autoria","autuar","avaliar","avante","avaria","avental","avesso","aviador","avisar","avulso","axila","azarar","azedo","azeite","azulejo","babar","babosa","bacalhau","bacharel","bacia","bagagem","baiano","bailar","baioneta","bairro","baixista","bajular","baleia","baliza","balsa","banal","bandeira","banho","banir","banquete","barato","barbado","baronesa","barraca","barulho","baseado","bastante","batata","batedor","batida","batom","batucar","baunilha","beber","beijo","beirada","beisebol","beldade","beleza","belga","beliscar","bendito","bengala","benzer","berimbau","berlinda","berro","besouro","bexiga","bezerro","bico","bicudo","bienal","bifocal","bifurcar","bigorna","bilhete","bimestre","bimotor","biologia","biombo","biosfera","bipolar","birrento","biscoito","bisneto","bispo","bissexto","bitola","bizarro","blindado","bloco","bloquear","boato","bobagem","bocado","bocejo","bochecha","boicotar","bolada","boletim","bolha","bolo","bombeiro","bonde","boneco","bonita","borbulha","borda","boreal","borracha","bovino","boxeador","branco","brasa","braveza","breu","briga","brilho","brincar","broa","brochura","bronzear","broto","bruxo","bucha","budismo","bufar","bule","buraco","busca","busto","buzina","cabana","cabelo","cabide","cabo","cabrito","cacau","cacetada","cachorro","cacique","cadastro","cadeado","cafezal","caiaque","caipira","caixote","cajado","caju","calafrio","calcular","caldeira","calibrar","calmante","calota","camada","cambista","camisa","camomila","campanha","camuflar","canavial","cancelar","caneta","canguru","canhoto","canivete","canoa","cansado","cantar","canudo","capacho","capela","capinar","capotar","capricho","captador","capuz","caracol","carbono","cardeal","careca","carimbar","carneiro","carpete","carreira","cartaz","carvalho","casaco","casca","casebre","castelo","casulo","catarata","cativar","caule","causador","cautelar","cavalo","caverna","cebola","cedilha","cegonha","celebrar","celular","cenoura","censo","centeio","cercar","cerrado","certeiro","cerveja","cetim","cevada","chacota","chaleira","chamado","chapada","charme","chatice","chave","chefe","chegada","cheiro","cheque","chicote","chifre","chinelo","chocalho","chover","chumbo","chutar","chuva","cicatriz","ciclone","cidade","cidreira","ciente","cigana","cimento","cinto","cinza","ciranda","circuito","cirurgia","citar","clareza","clero","clicar","clone","clube","coado","coagir","cobaia","cobertor","cobrar","cocada","coelho","coentro","coeso","cogumelo","coibir","coifa","coiote","colar","coleira","colher","colidir","colmeia","colono","coluna","comando","combinar","comentar","comitiva","comover","complexo","comum","concha","condor","conectar","confuso","congelar","conhecer","conjugar","consumir","contrato","convite","cooperar","copeiro","copiador","copo","coquetel","coragem","cordial","corneta","coronha","corporal","correio","cortejo","coruja","corvo","cosseno","costela","cotonete","couro","couve","covil","cozinha","cratera","cravo","creche","credor","creme","crer","crespo","criada","criminal","crioulo","crise","criticar","crosta","crua","cruzeiro","cubano","cueca","cuidado","cujo","culatra","culminar","culpar","cultura","cumprir","cunhado","cupido","curativo","curral","cursar","curto","cuspir","custear","cutelo","damasco","datar","debater","debitar","deboche","debulhar","decalque","decimal","declive","decote","decretar","dedal","dedicado","deduzir","defesa","defumar","degelo","degrau","degustar","deitado","deixar","delator","delegado","delinear","delonga","demanda","demitir","demolido","dentista","depenado","depilar","depois","depressa","depurar","deriva","derramar","desafio","desbotar","descanso","desenho","desfiado","desgaste","desigual","deslize","desmamar","desova","despesa","destaque","desviar","detalhar","detentor","detonar","detrito","deusa","dever","devido","devotado","dezena","diagrama","dialeto","didata","difuso","digitar","dilatado","diluente","diminuir","dinastia","dinheiro","diocese","direto","discreta","disfarce","disparo","disquete","dissipar","distante","ditador","diurno","diverso","divisor","divulgar","dizer","dobrador","dolorido","domador","dominado","donativo","donzela","dormente","dorsal","dosagem","dourado","doutor","drenagem","drible","drogaria","duelar","duende","dueto","duplo","duquesa","durante","duvidoso","eclodir","ecoar","ecologia","edificar","edital","educado","efeito","efetivar","ejetar","elaborar","eleger","eleitor","elenco","elevador","eliminar","elogiar","embargo","embolado","embrulho","embutido","emenda","emergir","emissor","empatia","empenho","empinado","empolgar","emprego","empurrar","emulador","encaixe","encenado","enchente","encontro","endeusar","endossar","enfaixar","enfeite","enfim","engajado","engenho","englobar","engomado","engraxar","enguia","enjoar","enlatar","enquanto","enraizar","enrolado","enrugar","ensaio","enseada","ensino","ensopado","entanto","enteado","entidade","entortar","entrada","entulho","envergar","enviado","envolver","enxame","enxerto","enxofre","enxuto","epiderme","equipar","ereto","erguido","errata","erva","ervilha","esbanjar","esbelto","escama","escola","escrita","escuta","esfinge","esfolar","esfregar","esfumado","esgrima","esmalte","espanto","espelho","espiga","esponja","espreita","espumar","esquerda","estaca","esteira","esticar","estofado","estrela","estudo","esvaziar","etanol","etiqueta","euforia","europeu","evacuar","evaporar","evasivo","eventual","evidente","evoluir","exagero","exalar","examinar","exato","exausto","excesso","excitar","exclamar","executar","exemplo","exibir","exigente","exonerar","expandir","expelir","expirar","explanar","exposto","expresso","expulsar","externo","extinto","extrato","fabricar","fabuloso","faceta","facial","fada","fadiga","faixa","falar","falta","familiar","fandango","fanfarra","fantoche","fardado","farelo","farinha","farofa","farpa","fartura","fatia","fator","favorita","faxina","fazenda","fechado","feijoada","feirante","felino","feminino","fenda","feno","fera","feriado","ferrugem","ferver","festejar","fetal","feudal","fiapo","fibrose","ficar","ficheiro","figurado","fileira","filho","filme","filtrar","firmeza","fisgada","fissura","fita","fivela","fixador","fixo","flacidez","flamingo","flanela","flechada","flora","flutuar","fluxo","focal","focinho","fofocar","fogo","foguete","foice","folgado","folheto","forjar","formiga","forno","forte","fosco","fossa","fragata","fralda","frango","frasco","fraterno","freira","frente","fretar","frieza","friso","fritura","fronha","frustrar","fruteira","fugir","fulano","fuligem","fundar","fungo","funil","furador","furioso","futebol","gabarito","gabinete","gado","gaiato","gaiola","gaivota","galega","galho","galinha","galocha","ganhar","garagem","garfo","gargalo","garimpo","garoupa","garrafa","gasoduto","gasto","gata","gatilho","gaveta","gazela","gelado","geleia","gelo","gemada","gemer","gemido","generoso","gengiva","genial","genoma","genro","geologia","gerador","germinar","gesso","gestor","ginasta","gincana","gingado","girafa","girino","glacial","glicose","global","glorioso","goela","goiaba","golfe","golpear","gordura","gorjeta","gorro","gostoso","goteira","governar","gracejo","gradual","grafite","gralha","grampo","granada","gratuito","graveto","graxa","grego","grelhar","greve","grilo","grisalho","gritaria","grosso","grotesco","grudado","grunhido","gruta","guache","guarani","guaxinim","guerrear","guiar","guincho","guisado","gula","guloso","guru","habitar","harmonia","haste","haver","hectare","herdar","heresia","hesitar","hiato","hibernar","hidratar","hiena","hino","hipismo","hipnose","hipoteca","hoje","holofote","homem","honesto","honrado","hormonal","hospedar","humorado","iate","ideia","idoso","ignorado","igreja","iguana","ileso","ilha","iludido","iluminar","ilustrar","imagem","imediato","imenso","imersivo","iminente","imitador","imortal","impacto","impedir","implante","impor","imprensa","impune","imunizar","inalador","inapto","inativo","incenso","inchar","incidir","incluir","incolor","indeciso","indireto","indutor","ineficaz","inerente","infantil","infestar","infinito","inflamar","informal","infrator","ingerir","inibido","inicial","inimigo","injetar","inocente","inodoro","inovador","inox","inquieto","inscrito","inseto","insistir","inspetor","instalar","insulto","intacto","integral","intimar","intocado","intriga","invasor","inverno","invicto","invocar","iogurte","iraniano","ironizar","irreal","irritado","isca","isento","isolado","isqueiro","italiano","janeiro","jangada","janta","jararaca","jardim","jarro","jasmim","jato","javali","jazida","jejum","joaninha","joelhada","jogador","joia","jornal","jorrar","jovem","juba","judeu","judoca","juiz","julgador","julho","jurado","jurista","juro","justa","labareda","laboral","lacre","lactante","ladrilho","lagarta","lagoa","laje","lamber","lamentar","laminar","lampejo","lanche","lapidar","lapso","laranja","lareira","largura","lasanha","lastro","lateral","latido","lavanda","lavoura","lavrador","laxante","lazer","lealdade","lebre","legado","legendar","legista","leigo","leiloar","leitura","lembrete","leme","lenhador","lentilha","leoa","lesma","leste","letivo","letreiro","levar","leveza","levitar","liberal","libido","liderar","ligar","ligeiro","limitar","limoeiro","limpador","linda","linear","linhagem","liquidez","listagem","lisura","litoral","livro","lixa","lixeira","locador","locutor","lojista","lombo","lona","longe","lontra","lorde","lotado","loteria","loucura","lousa","louvar","luar","lucidez","lucro","luneta","lustre","lutador","luva","macaco","macete","machado","macio","madeira","madrinha","magnata","magreza","maior","mais","malandro","malha","malote","maluco","mamilo","mamoeiro","mamute","manada","mancha","mandato","manequim","manhoso","manivela","manobrar","mansa","manter","manusear","mapeado","maquinar","marcador","maresia","marfim","margem","marinho","marmita","maroto","marquise","marreco","martelo","marujo","mascote","masmorra","massagem","mastigar","matagal","materno","matinal","matutar","maxilar","medalha","medida","medusa","megafone","meiga","melancia","melhor","membro","memorial","menino","menos","mensagem","mental","merecer","mergulho","mesada","mesclar","mesmo","mesquita","mestre","metade","meteoro","metragem","mexer","mexicano","micro","migalha","migrar","milagre","milenar","milhar","mimado","minerar","minhoca","ministro","minoria","miolo","mirante","mirtilo","misturar","mocidade","moderno","modular","moeda","moer","moinho","moita","moldura","moleza","molho","molinete","molusco","montanha","moqueca","morango","morcego","mordomo","morena","mosaico","mosquete","mostarda","motel","motim","moto","motriz","muda","muito","mulata","mulher","multar","mundial","munido","muralha","murcho","muscular","museu","musical","nacional","nadador","naja","namoro","narina","narrado","nascer","nativa","natureza","navalha","navegar","navio","neblina","nebuloso","negativa","negociar","negrito","nervoso","neta","neural","nevasca","nevoeiro","ninar","ninho","nitidez","nivelar","nobreza","noite","noiva","nomear","nominal","nordeste","nortear","notar","noticiar","noturno","novelo","novilho","novo","nublado","nudez","numeral","nupcial","nutrir","nuvem","obcecado","obedecer","objetivo","obrigado","obscuro","obstetra","obter","obturar","ocidente","ocioso","ocorrer","oculista","ocupado","ofegante","ofensiva","oferenda","oficina","ofuscado","ogiva","olaria","oleoso","olhar","oliveira","ombro","omelete","omisso","omitir","ondulado","oneroso","ontem","opcional","operador","oponente","oportuno","oposto","orar","orbitar","ordem","ordinal","orfanato","orgasmo","orgulho","oriental","origem","oriundo","orla","ortodoxo","orvalho","oscilar","ossada","osso","ostentar","otimismo","ousadia","outono","outubro","ouvido","ovelha","ovular","oxidar","oxigenar","pacato","paciente","pacote","pactuar","padaria","padrinho","pagar","pagode","painel","pairar","paisagem","palavra","palestra","palheta","palito","palmada","palpitar","pancada","panela","panfleto","panqueca","pantanal","papagaio","papelada","papiro","parafina","parcial","pardal","parede","partida","pasmo","passado","pastel","patamar","patente","patinar","patrono","paulada","pausar","peculiar","pedalar","pedestre","pediatra","pedra","pegada","peitoral","peixe","pele","pelicano","penca","pendurar","peneira","penhasco","pensador","pente","perceber","perfeito","pergunta","perito","permitir","perna","perplexo","persiana","pertence","peruca","pescado","pesquisa","pessoa","petiscar","piada","picado","piedade","pigmento","pilastra","pilhado","pilotar","pimenta","pincel","pinguim","pinha","pinote","pintar","pioneiro","pipoca","piquete","piranha","pires","pirueta","piscar","pistola","pitanga","pivete","planta","plaqueta","platina","plebeu","plumagem","pluvial","pneu","poda","poeira","poetisa","polegada","policiar","poluente","polvilho","pomar","pomba","ponderar","pontaria","populoso","porta","possuir","postal","pote","poupar","pouso","povoar","praia","prancha","prato","praxe","prece","predador","prefeito","premiar","prensar","preparar","presilha","pretexto","prevenir","prezar","primata","princesa","prisma","privado","processo","produto","profeta","proibido","projeto","prometer","propagar","prosa","protetor","provador","publicar","pudim","pular","pulmonar","pulseira","punhal","punir","pupilo","pureza","puxador","quadra","quantia","quarto","quase","quebrar","queda","queijo","quente","querido","quimono","quina","quiosque","rabanada","rabisco","rachar","racionar","radial","raiar","rainha","raio","raiva","rajada","ralado","ramal","ranger","ranhura","rapadura","rapel","rapidez","raposa","raquete","raridade","rasante","rascunho","rasgar","raspador","rasteira","rasurar","ratazana","ratoeira","realeza","reanimar","reaver","rebaixar","rebelde","rebolar","recado","recente","recheio","recibo","recordar","recrutar","recuar","rede","redimir","redonda","reduzida","reenvio","refinar","refletir","refogar","refresco","refugiar","regalia","regime","regra","reinado","reitor","rejeitar","relativo","remador","remendo","remorso","renovado","reparo","repelir","repleto","repolho","represa","repudiar","requerer","resenha","resfriar","resgatar","residir","resolver","respeito","ressaca","restante","resumir","retalho","reter","retirar","retomada","retratar","revelar","revisor","revolta","riacho","rica","rigidez","rigoroso","rimar","ringue","risada","risco","risonho","robalo","rochedo","rodada","rodeio","rodovia","roedor","roleta","romano","roncar","rosado","roseira","rosto","rota","roteiro","rotina","rotular","rouco","roupa","roxo","rubro","rugido","rugoso","ruivo","rumo","rupestre","russo","sabor","saciar","sacola","sacudir","sadio","safira","saga","sagrada","saibro","salada","saleiro","salgado","saliva","salpicar","salsicha","saltar","salvador","sambar","samurai","sanar","sanfona","sangue","sanidade","sapato","sarda","sargento","sarjeta","saturar","saudade","saxofone","sazonal","secar","secular","seda","sedento","sediado","sedoso","sedutor","segmento","segredo","segundo","seiva","seleto","selvagem","semanal","semente","senador","senhor","sensual","sentado","separado","sereia","seringa","serra","servo","setembro","setor","sigilo","silhueta","silicone","simetria","simpatia","simular","sinal","sincero","singular","sinopse","sintonia","sirene","siri","situado","soberano","sobra","socorro","sogro","soja","solda","soletrar","solteiro","sombrio","sonata","sondar","sonegar","sonhador","sono","soprano","soquete","sorrir","sorteio","sossego","sotaque","soterrar","sovado","sozinho","suavizar","subida","submerso","subsolo","subtrair","sucata","sucesso","suco","sudeste","sufixo","sugador","sugerir","sujeito","sulfato","sumir","suor","superior","suplicar","suposto","suprimir","surdina","surfista","surpresa","surreal","surtir","suspiro","sustento","tabela","tablete","tabuada","tacho","tagarela","talher","talo","talvez","tamanho","tamborim","tampa","tangente","tanto","tapar","tapioca","tardio","tarefa","tarja","tarraxa","tatuagem","taurino","taxativo","taxista","teatral","tecer","tecido","teclado","tedioso","teia","teimar","telefone","telhado","tempero","tenente","tensor","tentar","termal","terno","terreno","tese","tesoura","testado","teto","textura","texugo","tiara","tigela","tijolo","timbrar","timidez","tingido","tinteiro","tiragem","titular","toalha","tocha","tolerar","tolice","tomada","tomilho","tonel","tontura","topete","tora","torcido","torneio","torque","torrada","torto","tostar","touca","toupeira","toxina","trabalho","tracejar","tradutor","trafegar","trajeto","trama","trancar","trapo","traseiro","tratador","travar","treino","tremer","trepidar","trevo","triagem","tribo","triciclo","tridente","trilogia","trindade","triplo","triturar","triunfal","trocar","trombeta","trova","trunfo","truque","tubular","tucano","tudo","tulipa","tupi","turbo","turma","turquesa","tutelar","tutorial","uivar","umbigo","unha","unidade","uniforme","urologia","urso","urtiga","urubu","usado","usina","usufruir","vacina","vadiar","vagaroso","vaidoso","vala","valente","validade","valores","vantagem","vaqueiro","varanda","vareta","varrer","vascular","vasilha","vassoura","vazar","vazio","veado","vedar","vegetar","veicular","veleiro","velhice","veludo","vencedor","vendaval","venerar","ventre","verbal","verdade","vereador","vergonha","vermelho","verniz","versar","vertente","vespa","vestido","vetorial","viaduto","viagem","viajar","viatura","vibrador","videira","vidraria","viela","viga","vigente","vigiar","vigorar","vilarejo","vinco","vinheta","vinil","violeta","virada","virtude","visitar","visto","vitral","viveiro","vizinho","voador","voar","vogal","volante","voleibol","voltagem","volumoso","vontade","vulto","vuvuzela","xadrez","xarope","xeque","xeretar","xerife","xingar","zangado","zarpar","zebu","zelador","zombar","zoologia","zumbido"]')},659:e=>{"use strict";e.exports=JSON.parse('["a\u0301baco","abdomen","abeja","abierto","abogado","abono","aborto","abrazo","abrir","abuelo","abuso","acabar","academia","acceso","accio\u0301n","aceite","acelga","acento","aceptar","a\u0301cido","aclarar","acne\u0301","acoger","acoso","activo","acto","actriz","actuar","acudir","acuerdo","acusar","adicto","admitir","adoptar","adorno","aduana","adulto","ae\u0301reo","afectar","aficio\u0301n","afinar","afirmar","a\u0301gil","agitar","agoni\u0301a","agosto","agotar","agregar","agrio","agua","agudo","a\u0301guila","aguja","ahogo","ahorro","aire","aislar","ajedrez","ajeno","ajuste","alacra\u0301n","alambre","alarma","alba","a\u0301lbum","alcalde","aldea","alegre","alejar","alerta","aleta","alfiler","alga","algodo\u0301n","aliado","aliento","alivio","alma","almeja","almi\u0301bar","altar","alteza","altivo","alto","altura","alumno","alzar","amable","amante","amapola","amargo","amasar","a\u0301mbar","a\u0301mbito","ameno","amigo","amistad","amor","amparo","amplio","ancho","anciano","ancla","andar","ande\u0301n","anemia","a\u0301ngulo","anillo","a\u0301nimo","ani\u0301s","anotar","antena","antiguo","antojo","anual","anular","anuncio","an\u0303adir","an\u0303ejo","an\u0303o","apagar","aparato","apetito","apio","aplicar","apodo","aporte","apoyo","aprender","aprobar","apuesta","apuro","arado","aran\u0303a","arar","a\u0301rbitro","a\u0301rbol","arbusto","archivo","arco","arder","ardilla","arduo","a\u0301rea","a\u0301rido","aries","armoni\u0301a","arne\u0301s","aroma","arpa","arpo\u0301n","arreglo","arroz","arruga","arte","artista","asa","asado","asalto","ascenso","asegurar","aseo","asesor","asiento","asilo","asistir","asno","asombro","a\u0301spero","astilla","astro","astuto","asumir","asunto","atajo","ataque","atar","atento","ateo","a\u0301tico","atleta","a\u0301tomo","atraer","atroz","atu\u0301n","audaz","audio","auge","aula","aumento","ausente","autor","aval","avance","avaro","ave","avellana","avena","avestruz","avio\u0301n","aviso","ayer","ayuda","ayuno","azafra\u0301n","azar","azote","azu\u0301car","azufre","azul","baba","babor","bache","bahi\u0301a","baile","bajar","balanza","balco\u0301n","balde","bambu\u0301","banco","banda","ban\u0303o","barba","barco","barniz","barro","ba\u0301scula","basto\u0301n","basura","batalla","bateri\u0301a","batir","batuta","bau\u0301l","bazar","bebe\u0301","bebida","bello","besar","beso","bestia","bicho","bien","bingo","blanco","bloque","blusa","boa","bobina","bobo","boca","bocina","boda","bodega","boina","bola","bolero","bolsa","bomba","bondad","bonito","bono","bonsa\u0301i","borde","borrar","bosque","bote","boti\u0301n","bo\u0301veda","bozal","bravo","brazo","brecha","breve","brillo","brinco","brisa","broca","broma","bronce","brote","bruja","brusco","bruto","buceo","bucle","bueno","buey","bufanda","bufo\u0301n","bu\u0301ho","buitre","bulto","burbuja","burla","burro","buscar","butaca","buzo\u0301n","caballo","cabeza","cabina","cabra","cacao","cada\u0301ver","cadena","caer","cafe\u0301","cai\u0301da","caima\u0301n","caja","cajo\u0301n","cal","calamar","calcio","caldo","calidad","calle","calma","calor","calvo","cama","cambio","camello","camino","campo","ca\u0301ncer","candil","canela","canguro","canica","canto","can\u0303a","can\u0303o\u0301n","caoba","caos","capaz","capita\u0301n","capote","captar","capucha","cara","carbo\u0301n","ca\u0301rcel","careta","carga","carin\u0303o","carne","carpeta","carro","carta","casa","casco","casero","caspa","castor","catorce","catre","caudal","causa","cazo","cebolla","ceder","cedro","celda","ce\u0301lebre","celoso","ce\u0301lula","cemento","ceniza","centro","cerca","cerdo","cereza","cero","cerrar","certeza","ce\u0301sped","cetro","chacal","chaleco","champu\u0301","chancla","chapa","charla","chico","chiste","chivo","choque","choza","chuleta","chupar","ciclo\u0301n","ciego","cielo","cien","cierto","cifra","cigarro","cima","cinco","cine","cinta","cipre\u0301s","circo","ciruela","cisne","cita","ciudad","clamor","clan","claro","clase","clave","cliente","clima","cli\u0301nica","cobre","coccio\u0301n","cochino","cocina","coco","co\u0301digo","codo","cofre","coger","cohete","coji\u0301n","cojo","cola","colcha","colegio","colgar","colina","collar","colmo","columna","combate","comer","comida","co\u0301modo","compra","conde","conejo","conga","conocer","consejo","contar","copa","copia","corazo\u0301n","corbata","corcho","cordo\u0301n","corona","correr","coser","cosmos","costa","cra\u0301neo","cra\u0301ter","crear","crecer","crei\u0301do","crema","cri\u0301a","crimen","cripta","crisis","cromo","cro\u0301nica","croqueta","crudo","cruz","cuadro","cuarto","cuatro","cubo","cubrir","cuchara","cuello","cuento","cuerda","cuesta","cueva","cuidar","culebra","culpa","culto","cumbre","cumplir","cuna","cuneta","cuota","cupo\u0301n","cu\u0301pula","curar","curioso","curso","curva","cutis","dama","danza","dar","dardo","da\u0301til","deber","de\u0301bil","de\u0301cada","decir","dedo","defensa","definir","dejar","delfi\u0301n","delgado","delito","demora","denso","dental","deporte","derecho","derrota","desayuno","deseo","desfile","desnudo","destino","desvi\u0301o","detalle","detener","deuda","di\u0301a","diablo","diadema","diamante","diana","diario","dibujo","dictar","diente","dieta","diez","difi\u0301cil","digno","dilema","diluir","dinero","directo","dirigir","disco","disen\u0303o","disfraz","diva","divino","doble","doce","dolor","domingo","don","donar","dorado","dormir","dorso","dos","dosis","drago\u0301n","droga","ducha","duda","duelo","duen\u0303o","dulce","du\u0301o","duque","durar","dureza","duro","e\u0301bano","ebrio","echar","eco","ecuador","edad","edicio\u0301n","edificio","editor","educar","efecto","eficaz","eje","ejemplo","elefante","elegir","elemento","elevar","elipse","e\u0301lite","elixir","elogio","eludir","embudo","emitir","emocio\u0301n","empate","empen\u0303o","empleo","empresa","enano","encargo","enchufe","enci\u0301a","enemigo","enero","enfado","enfermo","engan\u0303o","enigma","enlace","enorme","enredo","ensayo","ensen\u0303ar","entero","entrar","envase","envi\u0301o","e\u0301poca","equipo","erizo","escala","escena","escolar","escribir","escudo","esencia","esfera","esfuerzo","espada","espejo","espi\u0301a","esposa","espuma","esqui\u0301","estar","este","estilo","estufa","etapa","eterno","e\u0301tica","etnia","evadir","evaluar","evento","evitar","exacto","examen","exceso","excusa","exento","exigir","exilio","existir","e\u0301xito","experto","explicar","exponer","extremo","fa\u0301brica","fa\u0301bula","fachada","fa\u0301cil","factor","faena","faja","falda","fallo","falso","faltar","fama","familia","famoso","farao\u0301n","farmacia","farol","farsa","fase","fatiga","fauna","favor","fax","febrero","fecha","feliz","feo","feria","feroz","fe\u0301rtil","fervor","festi\u0301n","fiable","fianza","fiar","fibra","ficcio\u0301n","ficha","fideo","fiebre","fiel","fiera","fiesta","figura","fijar","fijo","fila","filete","filial","filtro","fin","finca","fingir","finito","firma","flaco","flauta","flecha","flor","flota","fluir","flujo","flu\u0301or","fobia","foca","fogata","fogo\u0301n","folio","folleto","fondo","forma","forro","fortuna","forzar","fosa","foto","fracaso","fra\u0301gil","franja","frase","fraude","frei\u0301r","freno","fresa","fri\u0301o","frito","fruta","fuego","fuente","fuerza","fuga","fumar","funcio\u0301n","funda","furgo\u0301n","furia","fusil","fu\u0301tbol","futuro","gacela","gafas","gaita","gajo","gala","galeri\u0301a","gallo","gamba","ganar","gancho","ganga","ganso","garaje","garza","gasolina","gastar","gato","gavila\u0301n","gemelo","gemir","gen","ge\u0301nero","genio","gente","geranio","gerente","germen","gesto","gigante","gimnasio","girar","giro","glaciar","globo","gloria","gol","golfo","goloso","golpe","goma","gordo","gorila","gorra","gota","goteo","gozar","grada","gra\u0301fico","grano","grasa","gratis","grave","grieta","grillo","gripe","gris","grito","grosor","gru\u0301a","grueso","grumo","grupo","guante","guapo","guardia","guerra","gui\u0301a","guin\u0303o","guion","guiso","guitarra","gusano","gustar","haber","ha\u0301bil","hablar","hacer","hacha","hada","hallar","hamaca","harina","haz","hazan\u0303a","hebilla","hebra","hecho","helado","helio","hembra","herir","hermano","he\u0301roe","hervir","hielo","hierro","hi\u0301gado","higiene","hijo","himno","historia","hocico","hogar","hoguera","hoja","hombre","hongo","honor","honra","hora","hormiga","horno","hostil","hoyo","hueco","huelga","huerta","hueso","huevo","huida","huir","humano","hu\u0301medo","humilde","humo","hundir","huraca\u0301n","hurto","icono","ideal","idioma","i\u0301dolo","iglesia","iglu\u0301","igual","ilegal","ilusio\u0301n","imagen","ima\u0301n","imitar","impar","imperio","imponer","impulso","incapaz","i\u0301ndice","inerte","infiel","informe","ingenio","inicio","inmenso","inmune","innato","insecto","instante","intere\u0301s","i\u0301ntimo","intuir","inu\u0301til","invierno","ira","iris","ironi\u0301a","isla","islote","jabali\u0301","jabo\u0301n","jamo\u0301n","jarabe","jardi\u0301n","jarra","jaula","jazmi\u0301n","jefe","jeringa","jinete","jornada","joroba","joven","joya","juerga","jueves","juez","jugador","jugo","juguete","juicio","junco","jungla","junio","juntar","ju\u0301piter","jurar","justo","juvenil","juzgar","kilo","koala","labio","lacio","lacra","lado","ladro\u0301n","lagarto","la\u0301grima","laguna","laico","lamer","la\u0301mina","la\u0301mpara","lana","lancha","langosta","lanza","la\u0301piz","largo","larva","la\u0301stima","lata","la\u0301tex","latir","laurel","lavar","lazo","leal","leccio\u0301n","leche","lector","leer","legio\u0301n","legumbre","lejano","lengua","lento","len\u0303a","leo\u0301n","leopardo","lesio\u0301n","letal","letra","leve","leyenda","libertad","libro","licor","li\u0301der","lidiar","lienzo","liga","ligero","lima","li\u0301mite","limo\u0301n","limpio","lince","lindo","li\u0301nea","lingote","lino","linterna","li\u0301quido","liso","lista","litera","litio","litro","llaga","llama","llanto","llave","llegar","llenar","llevar","llorar","llover","lluvia","lobo","locio\u0301n","loco","locura","lo\u0301gica","logro","lombriz","lomo","lonja","lote","lucha","lucir","lugar","lujo","luna","lunes","lupa","lustro","luto","luz","maceta","macho","madera","madre","maduro","maestro","mafia","magia","mago","mai\u0301z","maldad","maleta","malla","malo","mama\u0301","mambo","mamut","manco","mando","manejar","manga","maniqui\u0301","manjar","mano","manso","manta","man\u0303ana","mapa","ma\u0301quina","mar","marco","marea","marfil","margen","marido","ma\u0301rmol","marro\u0301n","martes","marzo","masa","ma\u0301scara","masivo","matar","materia","matiz","matriz","ma\u0301ximo","mayor","mazorca","mecha","medalla","medio","me\u0301dula","mejilla","mejor","melena","melo\u0301n","memoria","menor","mensaje","mente","menu\u0301","mercado","merengue","me\u0301rito","mes","meso\u0301n","meta","meter","me\u0301todo","metro","mezcla","miedo","miel","miembro","miga","mil","milagro","militar","millo\u0301n","mimo","mina","minero","mi\u0301nimo","minuto","miope","mirar","misa","miseria","misil","mismo","mitad","mito","mochila","mocio\u0301n","moda","modelo","moho","mojar","molde","moler","molino","momento","momia","monarca","moneda","monja","monto","mon\u0303o","morada","morder","moreno","morir","morro","morsa","mortal","mosca","mostrar","motivo","mover","mo\u0301vil","mozo","mucho","mudar","mueble","muela","muerte","muestra","mugre","mujer","mula","muleta","multa","mundo","mun\u0303eca","mural","muro","mu\u0301sculo","museo","musgo","mu\u0301sica","muslo","na\u0301car","nacio\u0301n","nadar","naipe","naranja","nariz","narrar","nasal","natal","nativo","natural","na\u0301usea","naval","nave","navidad","necio","ne\u0301ctar","negar","negocio","negro","neo\u0301n","nervio","neto","neutro","nevar","nevera","nicho","nido","niebla","nieto","nin\u0303ez","nin\u0303o","ni\u0301tido","nivel","nobleza","noche","no\u0301mina","noria","norma","norte","nota","noticia","novato","novela","novio","nube","nuca","nu\u0301cleo","nudillo","nudo","nuera","nueve","nuez","nulo","nu\u0301mero","nutria","oasis","obeso","obispo","objeto","obra","obrero","observar","obtener","obvio","oca","ocaso","oce\u0301ano","ochenta","ocho","ocio","ocre","octavo","octubre","oculto","ocupar","ocurrir","odiar","odio","odisea","oeste","ofensa","oferta","oficio","ofrecer","ogro","oi\u0301do","oi\u0301r","ojo","ola","oleada","olfato","olivo","olla","olmo","olor","olvido","ombligo","onda","onza","opaco","opcio\u0301n","o\u0301pera","opinar","oponer","optar","o\u0301ptica","opuesto","oracio\u0301n","orador","oral","o\u0301rbita","orca","orden","oreja","o\u0301rgano","orgi\u0301a","orgullo","oriente","origen","orilla","oro","orquesta","oruga","osadi\u0301a","oscuro","osezno","oso","ostra","oton\u0303o","otro","oveja","o\u0301vulo","o\u0301xido","oxi\u0301geno","oyente","ozono","pacto","padre","paella","pa\u0301gina","pago","pai\u0301s","pa\u0301jaro","palabra","palco","paleta","pa\u0301lido","palma","paloma","palpar","pan","panal","pa\u0301nico","pantera","pan\u0303uelo","papa\u0301","papel","papilla","paquete","parar","parcela","pared","parir","paro","pa\u0301rpado","parque","pa\u0301rrafo","parte","pasar","paseo","pasio\u0301n","paso","pasta","pata","patio","patria","pausa","pauta","pavo","payaso","peato\u0301n","pecado","pecera","pecho","pedal","pedir","pegar","peine","pelar","peldan\u0303o","pelea","peligro","pellejo","pelo","peluca","pena","pensar","pen\u0303o\u0301n","peo\u0301n","peor","pepino","pequen\u0303o","pera","percha","perder","pereza","perfil","perico","perla","permiso","perro","persona","pesa","pesca","pe\u0301simo","pestan\u0303a","pe\u0301talo","petro\u0301leo","pez","pezun\u0303a","picar","picho\u0301n","pie","piedra","pierna","pieza","pijama","pilar","piloto","pimienta","pino","pintor","pinza","pin\u0303a","piojo","pipa","pirata","pisar","piscina","piso","pista","pito\u0301n","pizca","placa","plan","plata","playa","plaza","pleito","pleno","plomo","pluma","plural","pobre","poco","poder","podio","poema","poesi\u0301a","poeta","polen","polici\u0301a","pollo","polvo","pomada","pomelo","pomo","pompa","poner","porcio\u0301n","portal","posada","poseer","posible","poste","potencia","potro","pozo","prado","precoz","pregunta","premio","prensa","preso","previo","primo","pri\u0301ncipe","prisio\u0301n","privar","proa","probar","proceso","producto","proeza","profesor","programa","prole","promesa","pronto","propio","pro\u0301ximo","prueba","pu\u0301blico","puchero","pudor","pueblo","puerta","puesto","pulga","pulir","pulmo\u0301n","pulpo","pulso","puma","punto","pun\u0303al","pun\u0303o","pupa","pupila","pure\u0301","quedar","queja","quemar","querer","queso","quieto","qui\u0301mica","quince","quitar","ra\u0301bano","rabia","rabo","racio\u0301n","radical","rai\u0301z","rama","rampa","rancho","rango","rapaz","ra\u0301pido","rapto","rasgo","raspa","rato","rayo","raza","razo\u0301n","reaccio\u0301n","realidad","reban\u0303o","rebote","recaer","receta","rechazo","recoger","recreo","recto","recurso","red","redondo","reducir","reflejo","reforma","refra\u0301n","refugio","regalo","regir","regla","regreso","rehe\u0301n","reino","rei\u0301r","reja","relato","relevo","relieve","relleno","reloj","remar","remedio","remo","rencor","rendir","renta","reparto","repetir","reposo","reptil","res","rescate","resina","respeto","resto","resumen","retiro","retorno","retrato","reunir","reve\u0301s","revista","rey","rezar","rico","riego","rienda","riesgo","rifa","ri\u0301gido","rigor","rinco\u0301n","rin\u0303o\u0301n","ri\u0301o","riqueza","risa","ritmo","rito","rizo","roble","roce","rociar","rodar","rodeo","rodilla","roer","rojizo","rojo","romero","romper","ron","ronco","ronda","ropa","ropero","rosa","rosca","rostro","rotar","rubi\u0301","rubor","rudo","rueda","rugir","ruido","ruina","ruleta","rulo","rumbo","rumor","ruptura","ruta","rutina","sa\u0301bado","saber","sabio","sable","sacar","sagaz","sagrado","sala","saldo","salero","salir","salmo\u0301n","salo\u0301n","salsa","salto","salud","salvar","samba","sancio\u0301n","sandi\u0301a","sanear","sangre","sanidad","sano","santo","sapo","saque","sardina","sarte\u0301n","sastre","sata\u0301n","sauna","saxofo\u0301n","seccio\u0301n","seco","secreto","secta","sed","seguir","seis","sello","selva","semana","semilla","senda","sensor","sen\u0303al","sen\u0303or","separar","sepia","sequi\u0301a","ser","serie","sermo\u0301n","servir","sesenta","sesio\u0301n","seta","setenta","severo","sexo","sexto","sidra","siesta","siete","siglo","signo","si\u0301laba","silbar","silencio","silla","si\u0301mbolo","simio","sirena","sistema","sitio","situar","sobre","socio","sodio","sol","solapa","soldado","soledad","so\u0301lido","soltar","solucio\u0301n","sombra","sondeo","sonido","sonoro","sonrisa","sopa","soplar","soporte","sordo","sorpresa","sorteo","soste\u0301n","so\u0301tano","suave","subir","suceso","sudor","suegra","suelo","suen\u0303o","suerte","sufrir","sujeto","sulta\u0301n","sumar","superar","suplir","suponer","supremo","sur","surco","suren\u0303o","surgir","susto","sutil","tabaco","tabique","tabla","tabu\u0301","taco","tacto","tajo","talar","talco","talento","talla","talo\u0301n","taman\u0303o","tambor","tango","tanque","tapa","tapete","tapia","tapo\u0301n","taquilla","tarde","tarea","tarifa","tarjeta","tarot","tarro","tarta","tatuaje","tauro","taza","tazo\u0301n","teatro","techo","tecla","te\u0301cnica","tejado","tejer","tejido","tela","tele\u0301fono","tema","temor","templo","tenaz","tender","tener","tenis","tenso","teori\u0301a","terapia","terco","te\u0301rmino","ternura","terror","tesis","tesoro","testigo","tetera","texto","tez","tibio","tiburo\u0301n","tiempo","tienda","tierra","tieso","tigre","tijera","tilde","timbre","ti\u0301mido","timo","tinta","ti\u0301o","ti\u0301pico","tipo","tira","tiro\u0301n","tita\u0301n","ti\u0301tere","ti\u0301tulo","tiza","toalla","tobillo","tocar","tocino","todo","toga","toldo","tomar","tono","tonto","topar","tope","toque","to\u0301rax","torero","tormenta","torneo","toro","torpedo","torre","torso","tortuga","tos","tosco","toser","to\u0301xico","trabajo","tractor","traer","tra\u0301fico","trago","traje","tramo","trance","trato","trauma","trazar","tre\u0301bol","tregua","treinta","tren","trepar","tres","tribu","trigo","tripa","triste","triunfo","trofeo","trompa","tronco","tropa","trote","trozo","truco","trueno","trufa","tuberi\u0301a","tubo","tuerto","tumba","tumor","tu\u0301nel","tu\u0301nica","turbina","turismo","turno","tutor","ubicar","u\u0301lcera","umbral","unidad","unir","universo","uno","untar","un\u0303a","urbano","urbe","urgente","urna","usar","usuario","u\u0301til","utopi\u0301a","uva","vaca","vaci\u0301o","vacuna","vagar","vago","vaina","vajilla","vale","va\u0301lido","valle","valor","va\u0301lvula","vampiro","vara","variar","varo\u0301n","vaso","vecino","vector","vehi\u0301culo","veinte","vejez","vela","velero","veloz","vena","vencer","venda","veneno","vengar","venir","venta","venus","ver","verano","verbo","verde","vereda","verja","verso","verter","vi\u0301a","viaje","vibrar","vicio","vi\u0301ctima","vida","vi\u0301deo","vidrio","viejo","viernes","vigor","vil","villa","vinagre","vino","vin\u0303edo","violi\u0301n","viral","virgo","virtud","visor","vi\u0301spera","vista","vitamina","viudo","vivaz","vivero","vivir","vivo","volca\u0301n","volumen","volver","voraz","votar","voto","voz","vuelo","vulgar","yacer","yate","yegua","yema","yerno","yeso","yodo","yoga","yogur","zafiro","zanja","zapato","zarza","zona","zorro","zumo","zurdo"]')},8597:e=>{"use strict";e.exports={i8:"6.5.4"}}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var o=t[n]={id:n,loaded:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}r.m=e,r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},(()=>{var e,t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;r.t=function(n,i){if(1&i&&(n=this(n)),8&i)return n;if("object"===typeof n&&n){if(4&i&&n.__esModule)return n;if(16&i&&"function"===typeof n.then)return n}var o=Object.create(null);r.r(o);var a={};e=e||[null,t({}),t([]),t(t)];for(var s=2&i&&n;"object"==typeof s&&!~e.indexOf(s);s=t(s))Object.getOwnPropertyNames(s).forEach((e=>a[e]=()=>n[e]));return a.default=()=>n,r.d(o,a),o}})(),r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,n)=>(r.f[n](e,t),t)),[])),r.u=e=>"static/js/"+{11:"reactPlayerFilePlayer",55:"reactPlayerWistia",121:"reactPlayerFacebook",125:"reactPlayerSoundCloud",216:"reactPlayerTwitch",261:"reactPlayerKaltura",439:"reactPlayerYouTube",546:"reactPlayerStreamable",596:"reactPlayerDailyMotion",664:"reactPlayerPreview",667:"reactPlayerMixcloud",743:"reactPlayerVimeo",888:"reactPlayerVidyard"}[e]+"."+{11:"e80ecc26",55:"3e9b92cd",121:"7cf6341d",125:"711da1b8",216:"f0b1f6ae",261:"be8ee3e8",439:"7af9731a",546:"5c7da0c4",596:"aabe77d2",664:"acebb486",667:"17f7600e",743:"bb9275d4",888:"56722b87"}[e]+".chunk.js",r.miniCssF=e=>{},r.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={},t="umami:";r.l=(n,i,o,a)=>{if(e[n])e[n].push(i);else{var s,c;if(void 0!==o)for(var l=document.getElementsByTagName("script"),u=0;u{s.onerror=s.onload=null,clearTimeout(f);var i=e[n];if(delete e[n],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(r))),t)return t(r)},f=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),c&&document.head.appendChild(s)}}})(),r.r=e=>{"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.p="./",(()=>{var e={179:0};r.f.j=(t,n)=>{var i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{var o=new Promise(((r,n)=>i=e[t]=[r,n]));n.push(i[2]=o);var a=r.p+r.u(t),s=new Error;r.l(a,(n=>{if(r.o(e,t)&&(0!==(i=e[t])&&(e[t]=void 0),i)){var o=n&&("load"===n.type?"missing":n.type),a=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,i[1](s)}}),"chunk-"+t,t)}};var t=(t,n)=>{var i,o,[a,s,c]=n,l=0;if(a.some((t=>0!==e[t]))){for(i in s)r.o(s,i)&&(r.m[i]=s[i]);if(c)c(r)}for(t&&t(n);l{"use strict";var e={};r.r(e),r.d(e,{hasBrowserEnv:()=>EN,hasStandardBrowserEnv:()=>AN,hasStandardBrowserWebWorkerEnv:()=>ON});var t={};r.r(t),r.d(t,{Decoder:()=>O8,Encoder:()=>A8,PacketType:()=>E8,protocol:()=>k8});var n=r(9652),i=r.t(n,2),o=r(2171);const a=(0,n.createContext)(null),s={didCatch:!1,error:null};class c extends n.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=s}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){const{error:e}=this.state;if(null!==e){for(var t,r,n=arguments.length,i=new Array(n),o=0;o0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return e.length!==t.length||e.some(((e,r)=>!Object.is(e,t[r])))}(e.resetKeys,n)&&(null===(i=(o=this.props).onReset)||void 0===i||i.call(o,{next:n,prev:e.resetKeys,reason:"keys"}),this.setState(s))}render(){const{children:e,fallbackRender:t,FallbackComponent:r,fallback:i}=this.props,{didCatch:o,error:s}=this.state;let c=e;if(o){const e={error:s,resetErrorBoundary:this.resetErrorBoundary};if("function"===typeof t)c=t(e);else if(r)c=(0,n.createElement)(r,e);else{if(null!==i&&!(0,n.isValidElement)(i))throw s;c=i}}return(0,n.createElement)(a.Provider,{value:{didCatch:o,error:s,resetErrorBoundary:this.resetErrorBoundary}},c)}}var l="persist:",u="persist/FLUSH",d="persist/REHYDRATE",h="persist/PAUSE",f="persist/PERSIST",p="persist/PURGE",m="persist/REGISTER";function g(e){return g="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},g(e)}function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function y(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function b(e,t,r,n){n.debug;var i=function(e){for(var t=1;t=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}function T(e,t){var r=void 0!==e.version?e.version:-1,n=(e.debug,void 0===e.stateReconciler?b:e.stateReconciler),i=e.getStoredState||_,o=void 0!==e.timeout?e.timeout:5e3,a=null,s=!1,c=!0,m=function(e){return e._persist.rehydrated&&a&&!c&&a.update(e),e};return function(g,v){var y=g||{},b=y._persist,x=O(y,["_persist"]);if(v.type===f){var _=!1,S=function(t,r){_||(v.rehydrate(e.key,t,r),_=!0)};if(o&&setTimeout((function(){!_&&S(void 0,new Error('redux-persist: persist timed out for persist key "'.concat(e.key,'"')))}),o),c=!1,a||(a=w(e)),b)return A({},t(x,v),{_persist:b});if("function"!==typeof v.rehydrate||"function"!==typeof v.register)throw new Error("redux-persist: either rehydrate or register is not a function on the PERSIST action. This can happen if the action is being replayed. This is an unexplored use case, please open an issue and we will figure out a resolution.");return v.register(e.key),i(e).then((function(t){var n=e.migrate||function(e,t){return Promise.resolve(e)};n(t,r).then((function(e){S(e)}),(function(e){S(void 0,e)}))}),(function(e){S(void 0,e)})),A({},t(x,v),{_persist:{version:r,rehydrated:!1}})}if(v.type===p)return s=!0,v.result(function(e){var t=e.storage,r="".concat(void 0!==e.keyPrefix?e.keyPrefix:l).concat(e.key);return t.removeItem(r,k)}(e)),A({},t(x,v),{_persist:b});if(v.type===u)return v.result(a&&a.flush()),A({},t(x,v),{_persist:b});if(v.type===h)c=!0;else if(v.type===d){if(s)return A({},x,{_persist:A({},b,{rehydrated:!0})});if(v.key===e.key){var E=t(x,v),P=v.payload,T=A({},!1!==n&&void 0!==P?n(P,g,E,e):E,{_persist:A({},b,{rehydrated:!0})});return m(T)}}if(!b)return t(g,v);var C=t(x,v);return C===x?g:m(A({},C,{_persist:b}))}}function C(e){return C="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},C(e)}function j(e){var t=function(e,t){if("object"!==C(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==C(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===C(t)?t:String(t)}function R(e,t,r){return(t=j(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function I(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function M(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:G,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case m:return K({},e,{registry:[].concat(V(e.registry),[t.key])});case d:var r=e.registry.indexOf(t.key),n=V(e.registry);return n.splice(r,1),K({},e,{registry:n,bootstrapped:0===n.length});default:return e}};function Y(e){return Y="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Y(e)}function X(e,t){for(var r=0;re.filter(Boolean).join(" ");function oe(e){const t=typeof e;return null!=e&&("object"===t||"function"===t)&&!Array.isArray(e)}var ae=e=>{const{condition:t,message:r}=e};function se(e,...t){return ce(e)?e(...t):e}var ce=e=>"function"===typeof e,le=e=>e?"":void 0,ue=e=>!!e||void 0;function de(...e){return function(t){e.some((e=>(null==e||e(t),null==t?void 0:t.defaultPrevented)))}}function he(...e){return function(t){e.forEach((e=>{null==e||e(t)}))}}var fe=r(6283),pe=e=>"string"===typeof e?e.replace(/!(important)?$/,"").trim():e,me=(e,t)=>r=>{const n=String(t),i=(e=>/!(important)?$/.test(e))(n),o=pe(n),a=e?`${e}.${o}`:o;let s=oe(r.__cssMap)&&a in r.__cssMap?r.__cssMap[a].varRef:t;return s=pe(s),i?`${s} !important`:s};function ge(e){const{scale:t,transform:r,compose:n}=e;return(e,i)=>{var o;const a=me(t,e)(i);let s=null!=(o=null==r?void 0:r(a,i))?o:a;return n&&(s=n(s,i)),s}}var ve=(...e)=>t=>e.reduce(((e,t)=>t(e)),t);function ye(e,t){return r=>{const n={property:r,scale:e};return n.transform=ge({scale:e,transform:t}),n}}var be=({rtl:e,ltr:t})=>r=>"rtl"===r.direction?e:t;var we=["rotate(var(--chakra-rotate, 0))","scaleX(var(--chakra-scale-x, 1))","scaleY(var(--chakra-scale-y, 1))","skewX(var(--chakra-skew-x, 0))","skewY(var(--chakra-skew-y, 0))"];var xe={"--chakra-blur":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-brightness":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-contrast":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-grayscale":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-hue-rotate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-invert":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-saturate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-sepia":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-drop-shadow":"var(--chakra-empty,/*!*/ /*!*/)",filter:["var(--chakra-blur)","var(--chakra-brightness)","var(--chakra-contrast)","var(--chakra-grayscale)","var(--chakra-hue-rotate)","var(--chakra-invert)","var(--chakra-saturate)","var(--chakra-sepia)","var(--chakra-drop-shadow)"].join(" ")},_e={backdropFilter:["var(--chakra-backdrop-blur)","var(--chakra-backdrop-brightness)","var(--chakra-backdrop-contrast)","var(--chakra-backdrop-grayscale)","var(--chakra-backdrop-hue-rotate)","var(--chakra-backdrop-invert)","var(--chakra-backdrop-opacity)","var(--chakra-backdrop-saturate)","var(--chakra-backdrop-sepia)"].join(" "),"--chakra-backdrop-blur":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-brightness":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-contrast":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-grayscale":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-hue-rotate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-invert":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-opacity":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-saturate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-sepia":"var(--chakra-empty,/*!*/ /*!*/)"};var Se={"row-reverse":{space:"--chakra-space-x-reverse",divide:"--chakra-divide-x-reverse"},"column-reverse":{space:"--chakra-space-y-reverse",divide:"--chakra-divide-y-reverse"}},ke={"to-t":"to top","to-tr":"to top right","to-r":"to right","to-br":"to bottom right","to-b":"to bottom","to-bl":"to bottom left","to-l":"to left","to-tl":"to top left"},Ee=new Set(Object.values(ke)),Ae=new Set(["none","-moz-initial","inherit","initial","revert","unset"]),Pe=e=>e.trim();var Oe=e=>"string"===typeof e&&e.includes("(")&&e.includes(")");var Te=e=>t=>`${e}(${t})`,Ce={filter:e=>"auto"!==e?e:xe,backdropFilter:e=>"auto"!==e?e:_e,ring:e=>function(e){return{"--chakra-ring-offset-shadow":"var(--chakra-ring-inset) 0 0 0 var(--chakra-ring-offset-width) var(--chakra-ring-offset-color)","--chakra-ring-shadow":"var(--chakra-ring-inset) 0 0 0 calc(var(--chakra-ring-width) + var(--chakra-ring-offset-width)) var(--chakra-ring-color)","--chakra-ring-width":e,boxShadow:["var(--chakra-ring-offset-shadow)","var(--chakra-ring-shadow)","var(--chakra-shadow, 0 0 #0000)"].join(", ")}}(Ce.px(e)),bgClip:e=>"text"===e?{color:"transparent",backgroundClip:"text"}:{backgroundClip:e},transform:e=>"auto"===e?["translateX(var(--chakra-translate-x, 0))","translateY(var(--chakra-translate-y, 0))",...we].join(" "):"auto-gpu"===e?["translate3d(var(--chakra-translate-x, 0), var(--chakra-translate-y, 0), 0)",...we].join(" "):e,vh:e=>"$100vh"===e?"var(--chakra-vh)":e,px(e){if(null==e)return e;const{unitless:t}=(e=>{const t=parseFloat(e.toString()),r=e.toString().replace(String(t),"");return{unitless:!r,value:t,unit:r}})(e);return t||"number"===typeof e?`${e}px`:e},fraction:e=>"number"!==typeof e||e>1?e:100*e+"%",float:(e,t)=>"rtl"===t.direction?{left:"right",right:"left"}[e]:e,degree(e){if(function(e){return/^var\(--.+\)$/.test(e)}(e)||null==e)return e;const t="string"===typeof e&&!e.endsWith("deg");return"number"===typeof e||t?`${e}deg`:e},gradient:(e,t)=>function(e,t){if(null==e||Ae.has(e))return e;if(!Oe(e)&&!Ae.has(e))return`url('${e}')`;const r=/(^[a-z-A-Z]+)\((.*)\)/g.exec(e),n=null==r?void 0:r[1],i=null==r?void 0:r[2];if(!n||!i)return e;const o=n.includes("-gradient")?n:`${n}-gradient`,[a,...s]=i.split(",").map(Pe).filter(Boolean);if(0===(null==s?void 0:s.length))return e;const c=a in ke?ke[a]:a;return s.unshift(c),`${o}(${s.map((e=>{if(Ee.has(e))return e;const r=e.indexOf(" "),[n,i]=-1!==r?[e.substr(0,r),e.substr(r+1)]:[e],o=Oe(i)?i:i&&i.split(" "),a=`colors.${n}`,s=a in t.__cssMap?t.__cssMap[a].varRef:n;return o?[s,...Array.isArray(o)?o:[o]].join(" "):s})).join(", ")})`}(e,null!=t?t:{}),blur:Te("blur"),opacity:Te("opacity"),brightness:Te("brightness"),contrast:Te("contrast"),dropShadow:Te("drop-shadow"),grayscale:Te("grayscale"),hueRotate:e=>Te("hue-rotate")(Ce.degree(e)),invert:Te("invert"),saturate:Te("saturate"),sepia:Te("sepia"),bgImage(e){if(null==e)return e;return Oe(e)||Ae.has(e)?e:`url(${e})`},outline(e){const t="0"===String(e)||"none"===String(e);return null!==e&&t?{outline:"2px solid transparent",outlineOffset:"2px"}:{outline:e}},flexDirection(e){var t;const{space:r,divide:n}=null!=(t=Se[e])?t:{},i={flexDirection:e};return r&&(i[r]=1),n&&(i[n]=1),i}},je={borderWidths:ye("borderWidths"),borderStyles:ye("borderStyles"),colors:ye("colors"),borders:ye("borders"),gradients:ye("gradients",Ce.gradient),radii:ye("radii",Ce.px),space:ye("space",ve(Ce.vh,Ce.px)),spaceT:ye("space",ve(Ce.vh,Ce.px)),degreeT:e=>({property:e,transform:Ce.degree}),prop:(e,t,r)=>({property:e,scale:t,...t&&{transform:ge({scale:t,transform:r})}}),propT:(e,t)=>({property:e,transform:t}),sizes:ye("sizes",ve(Ce.vh,Ce.px)),sizesT:ye("sizes",ve(Ce.vh,Ce.fraction)),shadows:ye("shadows"),logical:function(e){const{property:t,scale:r,transform:n}=e;return{scale:r,property:be(t),transform:r?ge({scale:r,compose:n}):n}},blur:ye("blur",Ce.blur)},Re={background:je.colors("background"),backgroundColor:je.colors("backgroundColor"),backgroundImage:je.gradients("backgroundImage"),backgroundSize:!0,backgroundPosition:!0,backgroundRepeat:!0,backgroundAttachment:!0,backgroundClip:{transform:Ce.bgClip},bgSize:je.prop("backgroundSize"),bgPosition:je.prop("backgroundPosition"),bg:je.colors("background"),bgColor:je.colors("backgroundColor"),bgPos:je.prop("backgroundPosition"),bgRepeat:je.prop("backgroundRepeat"),bgAttachment:je.prop("backgroundAttachment"),bgGradient:je.gradients("backgroundImage"),bgClip:{transform:Ce.bgClip}};Object.assign(Re,{bgImage:Re.backgroundImage,bgImg:Re.backgroundImage});var Ie={border:je.borders("border"),borderWidth:je.borderWidths("borderWidth"),borderStyle:je.borderStyles("borderStyle"),borderColor:je.colors("borderColor"),borderRadius:je.radii("borderRadius"),borderTop:je.borders("borderTop"),borderBlockStart:je.borders("borderBlockStart"),borderTopLeftRadius:je.radii("borderTopLeftRadius"),borderStartStartRadius:je.logical({scale:"radii",property:{ltr:"borderTopLeftRadius",rtl:"borderTopRightRadius"}}),borderEndStartRadius:je.logical({scale:"radii",property:{ltr:"borderBottomLeftRadius",rtl:"borderBottomRightRadius"}}),borderTopRightRadius:je.radii("borderTopRightRadius"),borderStartEndRadius:je.logical({scale:"radii",property:{ltr:"borderTopRightRadius",rtl:"borderTopLeftRadius"}}),borderEndEndRadius:je.logical({scale:"radii",property:{ltr:"borderBottomRightRadius",rtl:"borderBottomLeftRadius"}}),borderRight:je.borders("borderRight"),borderInlineEnd:je.borders("borderInlineEnd"),borderBottom:je.borders("borderBottom"),borderBlockEnd:je.borders("borderBlockEnd"),borderBottomLeftRadius:je.radii("borderBottomLeftRadius"),borderBottomRightRadius:je.radii("borderBottomRightRadius"),borderLeft:je.borders("borderLeft"),borderInlineStart:{property:"borderInlineStart",scale:"borders"},borderInlineStartRadius:je.logical({scale:"radii",property:{ltr:["borderTopLeftRadius","borderBottomLeftRadius"],rtl:["borderTopRightRadius","borderBottomRightRadius"]}}),borderInlineEndRadius:je.logical({scale:"radii",property:{ltr:["borderTopRightRadius","borderBottomRightRadius"],rtl:["borderTopLeftRadius","borderBottomLeftRadius"]}}),borderX:je.borders(["borderLeft","borderRight"]),borderInline:je.borders("borderInline"),borderY:je.borders(["borderTop","borderBottom"]),borderBlock:je.borders("borderBlock"),borderTopWidth:je.borderWidths("borderTopWidth"),borderBlockStartWidth:je.borderWidths("borderBlockStartWidth"),borderTopColor:je.colors("borderTopColor"),borderBlockStartColor:je.colors("borderBlockStartColor"),borderTopStyle:je.borderStyles("borderTopStyle"),borderBlockStartStyle:je.borderStyles("borderBlockStartStyle"),borderBottomWidth:je.borderWidths("borderBottomWidth"),borderBlockEndWidth:je.borderWidths("borderBlockEndWidth"),borderBottomColor:je.colors("borderBottomColor"),borderBlockEndColor:je.colors("borderBlockEndColor"),borderBottomStyle:je.borderStyles("borderBottomStyle"),borderBlockEndStyle:je.borderStyles("borderBlockEndStyle"),borderLeftWidth:je.borderWidths("borderLeftWidth"),borderInlineStartWidth:je.borderWidths("borderInlineStartWidth"),borderLeftColor:je.colors("borderLeftColor"),borderInlineStartColor:je.colors("borderInlineStartColor"),borderLeftStyle:je.borderStyles("borderLeftStyle"),borderInlineStartStyle:je.borderStyles("borderInlineStartStyle"),borderRightWidth:je.borderWidths("borderRightWidth"),borderInlineEndWidth:je.borderWidths("borderInlineEndWidth"),borderRightColor:je.colors("borderRightColor"),borderInlineEndColor:je.colors("borderInlineEndColor"),borderRightStyle:je.borderStyles("borderRightStyle"),borderInlineEndStyle:je.borderStyles("borderInlineEndStyle"),borderTopRadius:je.radii(["borderTopLeftRadius","borderTopRightRadius"]),borderBottomRadius:je.radii(["borderBottomLeftRadius","borderBottomRightRadius"]),borderLeftRadius:je.radii(["borderTopLeftRadius","borderBottomLeftRadius"]),borderRightRadius:je.radii(["borderTopRightRadius","borderBottomRightRadius"])};Object.assign(Ie,{rounded:Ie.borderRadius,roundedTop:Ie.borderTopRadius,roundedTopLeft:Ie.borderTopLeftRadius,roundedTopRight:Ie.borderTopRightRadius,roundedTopStart:Ie.borderStartStartRadius,roundedTopEnd:Ie.borderStartEndRadius,roundedBottom:Ie.borderBottomRadius,roundedBottomLeft:Ie.borderBottomLeftRadius,roundedBottomRight:Ie.borderBottomRightRadius,roundedBottomStart:Ie.borderEndStartRadius,roundedBottomEnd:Ie.borderEndEndRadius,roundedLeft:Ie.borderLeftRadius,roundedRight:Ie.borderRightRadius,roundedStart:Ie.borderInlineStartRadius,roundedEnd:Ie.borderInlineEndRadius,borderStart:Ie.borderInlineStart,borderEnd:Ie.borderInlineEnd,borderTopStartRadius:Ie.borderStartStartRadius,borderTopEndRadius:Ie.borderStartEndRadius,borderBottomStartRadius:Ie.borderEndStartRadius,borderBottomEndRadius:Ie.borderEndEndRadius,borderStartRadius:Ie.borderInlineStartRadius,borderEndRadius:Ie.borderInlineEndRadius,borderStartWidth:Ie.borderInlineStartWidth,borderEndWidth:Ie.borderInlineEndWidth,borderStartColor:Ie.borderInlineStartColor,borderEndColor:Ie.borderInlineEndColor,borderStartStyle:Ie.borderInlineStartStyle,borderEndStyle:Ie.borderInlineEndStyle});var Me={color:je.colors("color"),textColor:je.colors("color"),fill:je.colors("fill"),stroke:je.colors("stroke")},Le={boxShadow:je.shadows("boxShadow"),mixBlendMode:!0,blendMode:je.prop("mixBlendMode"),backgroundBlendMode:!0,bgBlendMode:je.prop("backgroundBlendMode"),opacity:!0};Object.assign(Le,{shadow:Le.boxShadow});var Ne={filter:{transform:Ce.filter},blur:je.blur("--chakra-blur"),brightness:je.propT("--chakra-brightness",Ce.brightness),contrast:je.propT("--chakra-contrast",Ce.contrast),hueRotate:je.propT("--chakra-hue-rotate",Ce.hueRotate),invert:je.propT("--chakra-invert",Ce.invert),saturate:je.propT("--chakra-saturate",Ce.saturate),dropShadow:je.propT("--chakra-drop-shadow",Ce.dropShadow),backdropFilter:{transform:Ce.backdropFilter},backdropBlur:je.blur("--chakra-backdrop-blur"),backdropBrightness:je.propT("--chakra-backdrop-brightness",Ce.brightness),backdropContrast:je.propT("--chakra-backdrop-contrast",Ce.contrast),backdropHueRotate:je.propT("--chakra-backdrop-hue-rotate",Ce.hueRotate),backdropInvert:je.propT("--chakra-backdrop-invert",Ce.invert),backdropSaturate:je.propT("--chakra-backdrop-saturate",Ce.saturate)},De={alignItems:!0,alignContent:!0,justifyItems:!0,justifyContent:!0,flexWrap:!0,flexDirection:{transform:Ce.flexDirection},flex:!0,flexFlow:!0,flexGrow:!0,flexShrink:!0,flexBasis:je.sizes("flexBasis"),justifySelf:!0,alignSelf:!0,order:!0,placeItems:!0,placeContent:!0,placeSelf:!0,gap:je.space("gap"),rowGap:je.space("rowGap"),columnGap:je.space("columnGap")};Object.assign(De,{flexDir:De.flexDirection});var ze={gridGap:je.space("gridGap"),gridColumnGap:je.space("gridColumnGap"),gridRowGap:je.space("gridRowGap"),gridColumn:!0,gridRow:!0,gridAutoFlow:!0,gridAutoColumns:!0,gridColumnStart:!0,gridColumnEnd:!0,gridRowStart:!0,gridRowEnd:!0,gridAutoRows:!0,gridTemplate:!0,gridTemplateColumns:!0,gridTemplateRows:!0,gridTemplateAreas:!0,gridArea:!0},Be={appearance:!0,cursor:!0,resize:!0,userSelect:!0,pointerEvents:!0,outline:{transform:Ce.outline},outlineOffset:!0,outlineColor:je.colors("outlineColor")},Ue={width:je.sizesT("width"),inlineSize:je.sizesT("inlineSize"),height:je.sizes("height"),blockSize:je.sizes("blockSize"),boxSize:je.sizes(["width","height"]),minWidth:je.sizes("minWidth"),minInlineSize:je.sizes("minInlineSize"),minHeight:je.sizes("minHeight"),minBlockSize:je.sizes("minBlockSize"),maxWidth:je.sizes("maxWidth"),maxInlineSize:je.sizes("maxInlineSize"),maxHeight:je.sizes("maxHeight"),maxBlockSize:je.sizes("maxBlockSize"),overflow:!0,overflowX:!0,overflowY:!0,overscrollBehavior:!0,overscrollBehaviorX:!0,overscrollBehaviorY:!0,display:!0,aspectRatio:!0,hideFrom:{scale:"breakpoints",transform:(e,t)=>{var r,n,i;return{[`@media screen and (min-width: ${null!=(i=null==(n=null==(r=t.__breakpoints)?void 0:r.get(e))?void 0:n.minW)?i:e})`]:{display:"none"}}}},hideBelow:{scale:"breakpoints",transform:(e,t)=>{var r,n,i;return{[`@media screen and (max-width: ${null!=(i=null==(n=null==(r=t.__breakpoints)?void 0:r.get(e))?void 0:n._minW)?i:e})`]:{display:"none"}}}},verticalAlign:!0,boxSizing:!0,boxDecorationBreak:!0,float:je.propT("float",Ce.float),objectFit:!0,objectPosition:!0,visibility:!0,isolation:!0};Object.assign(Ue,{w:Ue.width,h:Ue.height,minW:Ue.minWidth,maxW:Ue.maxWidth,minH:Ue.minHeight,maxH:Ue.maxHeight,overscroll:Ue.overscrollBehavior,overscrollX:Ue.overscrollBehaviorX,overscrollY:Ue.overscrollBehaviorY});var Fe={listStyleType:!0,listStylePosition:!0,listStylePos:je.prop("listStylePosition"),listStyleImage:!0,listStyleImg:je.prop("listStyleImage")};var $e=(e=>{const t=new WeakMap;return(r,n,i,o)=>{if("undefined"===typeof r)return e(r,n,i);t.has(r)||t.set(r,new Map);const a=t.get(r);if(a.has(n))return a.get(n);const s=e(r,n,i,o);return a.set(n,s),s}})((function(e,t,r,n){const i="string"===typeof t?t.split("."):[t];for(n=0;n{const n={},i=$e(e,t,{});for(const o in i){o in r&&null!=r[o]||(n[o]=i[o])}return n},Ke={srOnly:{transform:e=>!0===e?He:"focusable"===e?Ve:{}},layerStyle:{processResult:!0,transform:(e,t,r)=>qe(t,`layerStyles.${e}`,r)},textStyle:{processResult:!0,transform:(e,t,r)=>qe(t,`textStyles.${e}`,r)},apply:{processResult:!0,transform:(e,t,r)=>qe(t,e,r)}},We={position:!0,pos:je.prop("position"),zIndex:je.prop("zIndex","zIndices"),inset:je.spaceT("inset"),insetX:je.spaceT(["left","right"]),insetInline:je.spaceT("insetInline"),insetY:je.spaceT(["top","bottom"]),insetBlock:je.spaceT("insetBlock"),top:je.spaceT("top"),insetBlockStart:je.spaceT("insetBlockStart"),bottom:je.spaceT("bottom"),insetBlockEnd:je.spaceT("insetBlockEnd"),left:je.spaceT("left"),insetInlineStart:je.logical({scale:"space",property:{ltr:"left",rtl:"right"}}),right:je.spaceT("right"),insetInlineEnd:je.logical({scale:"space",property:{ltr:"right",rtl:"left"}})};Object.assign(We,{insetStart:We.insetInlineStart,insetEnd:We.insetInlineEnd});var Ge={ring:{transform:Ce.ring},ringColor:je.colors("--chakra-ring-color"),ringOffset:je.prop("--chakra-ring-offset-width"),ringOffsetColor:je.colors("--chakra-ring-offset-color"),ringInset:je.prop("--chakra-ring-inset")},Ze={margin:je.spaceT("margin"),marginTop:je.spaceT("marginTop"),marginBlockStart:je.spaceT("marginBlockStart"),marginRight:je.spaceT("marginRight"),marginInlineEnd:je.spaceT("marginInlineEnd"),marginBottom:je.spaceT("marginBottom"),marginBlockEnd:je.spaceT("marginBlockEnd"),marginLeft:je.spaceT("marginLeft"),marginInlineStart:je.spaceT("marginInlineStart"),marginX:je.spaceT(["marginInlineStart","marginInlineEnd"]),marginInline:je.spaceT("marginInline"),marginY:je.spaceT(["marginTop","marginBottom"]),marginBlock:je.spaceT("marginBlock"),padding:je.space("padding"),paddingTop:je.space("paddingTop"),paddingBlockStart:je.space("paddingBlockStart"),paddingRight:je.space("paddingRight"),paddingBottom:je.space("paddingBottom"),paddingBlockEnd:je.space("paddingBlockEnd"),paddingLeft:je.space("paddingLeft"),paddingInlineStart:je.space("paddingInlineStart"),paddingInlineEnd:je.space("paddingInlineEnd"),paddingX:je.space(["paddingInlineStart","paddingInlineEnd"]),paddingInline:je.space("paddingInline"),paddingY:je.space(["paddingTop","paddingBottom"]),paddingBlock:je.space("paddingBlock")};Object.assign(Ze,{m:Ze.margin,mt:Ze.marginTop,mr:Ze.marginRight,me:Ze.marginInlineEnd,marginEnd:Ze.marginInlineEnd,mb:Ze.marginBottom,ml:Ze.marginLeft,ms:Ze.marginInlineStart,marginStart:Ze.marginInlineStart,mx:Ze.marginX,my:Ze.marginY,p:Ze.padding,pt:Ze.paddingTop,py:Ze.paddingY,px:Ze.paddingX,pb:Ze.paddingBottom,pl:Ze.paddingLeft,ps:Ze.paddingInlineStart,paddingStart:Ze.paddingInlineStart,pr:Ze.paddingRight,pe:Ze.paddingInlineEnd,paddingEnd:Ze.paddingInlineEnd});var Ye={textDecorationColor:je.colors("textDecorationColor"),textDecoration:!0,textDecor:{property:"textDecoration"},textDecorationLine:!0,textDecorationStyle:!0,textDecorationThickness:!0,textUnderlineOffset:!0,textShadow:je.shadows("textShadow")},Xe={clipPath:!0,transform:je.propT("transform",Ce.transform),transformOrigin:!0,translateX:je.spaceT("--chakra-translate-x"),translateY:je.spaceT("--chakra-translate-y"),skewX:je.degreeT("--chakra-skew-x"),skewY:je.degreeT("--chakra-skew-y"),scaleX:je.prop("--chakra-scale-x"),scaleY:je.prop("--chakra-scale-y"),scale:je.prop(["--chakra-scale-x","--chakra-scale-y"]),rotate:je.degreeT("--chakra-rotate")},Je={transition:!0,transitionDelay:!0,animation:!0,willChange:!0,transitionDuration:je.prop("transitionDuration","transition.duration"),transitionProperty:je.prop("transitionProperty","transition.property"),transitionTimingFunction:je.prop("transitionTimingFunction","transition.easing")},Qe={fontFamily:je.prop("fontFamily","fonts"),fontSize:je.prop("fontSize","fontSizes",Ce.px),fontWeight:je.prop("fontWeight","fontWeights"),lineHeight:je.prop("lineHeight","lineHeights"),letterSpacing:je.prop("letterSpacing","letterSpacings"),textAlign:!0,fontStyle:!0,textIndent:!0,wordBreak:!0,overflowWrap:!0,textOverflow:!0,textTransform:!0,whiteSpace:!0,isTruncated:{transform(e){if(!0===e)return{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}}},noOfLines:{static:{overflow:"hidden",textOverflow:"ellipsis",display:"-webkit-box",WebkitBoxOrient:"vertical",WebkitLineClamp:"var(--chakra-line-clamp)"},property:"--chakra-line-clamp"}},et={scrollBehavior:!0,scrollSnapAlign:!0,scrollSnapStop:!0,scrollSnapType:!0,scrollMargin:je.spaceT("scrollMargin"),scrollMarginTop:je.spaceT("scrollMarginTop"),scrollMarginBottom:je.spaceT("scrollMarginBottom"),scrollMarginLeft:je.spaceT("scrollMarginLeft"),scrollMarginRight:je.spaceT("scrollMarginRight"),scrollMarginX:je.spaceT(["scrollMarginLeft","scrollMarginRight"]),scrollMarginY:je.spaceT(["scrollMarginTop","scrollMarginBottom"]),scrollPadding:je.spaceT("scrollPadding"),scrollPaddingTop:je.spaceT("scrollPaddingTop"),scrollPaddingBottom:je.spaceT("scrollPaddingBottom"),scrollPaddingLeft:je.spaceT("scrollPaddingLeft"),scrollPaddingRight:je.spaceT("scrollPaddingRight"),scrollPaddingX:je.spaceT(["scrollPaddingLeft","scrollPaddingRight"]),scrollPaddingY:je.spaceT(["scrollPaddingTop","scrollPaddingBottom"])};function tt(e){return oe(e)&&e.reference?e.reference:String(e)}var rt=(e,...t)=>t.map(tt).join(` ${e} `).replace(/calc/g,""),nt=(...e)=>`calc(${rt("+",...e)})`,it=(...e)=>`calc(${rt("-",...e)})`,ot=(...e)=>`calc(${rt("*",...e)})`,at=(...e)=>`calc(${rt("/",...e)})`,st=e=>{const t=tt(e);return null==t||Number.isNaN(parseFloat(t))?ot(t,-1):String(t).startsWith("-")?String(t).slice(1):`-${t}`},ct=Object.assign((e=>({add:(...t)=>ct(nt(e,...t)),subtract:(...t)=>ct(it(e,...t)),multiply:(...t)=>ct(ot(e,...t)),divide:(...t)=>ct(at(e,...t)),negate:()=>ct(st(e)),toString:()=>e.toString()})),{add:nt,subtract:it,multiply:ot,divide:at,negate:st});function lt(e){return function(e){return e.replace(/[!-,/:-@[-^`{-~]/g,"\\$&")}(function(e){if(e.includes("\\."))return e;const t=!Number.isInteger(parseFloat(e.toString()));return t?e.replace(".","\\."):e}(function(e,t="-"){return e.replace(/\s+/g,t)}(e.toString())))}function ut(e,t){return`var(${e}${t?`, ${t}`:""})`}function dt(e,t=""){return lt(`--${function(e,t=""){return[t,e].filter(Boolean).join("-")}(e,t)}`)}function ht(e,t,r){const n=dt(e,r);return{variable:n,reference:ut(n,t)}}function ft(e){const t=null==e?0:e.length;return t?e[t-1]:void 0}function pt(e){if(null==e)return e;const{unitless:t}=function(e){const t=parseFloat(e.toString()),r=e.toString().replace(String(t),"");return{unitless:!r,value:t,unit:r}}(e);return t||"number"===typeof e?`${e}px`:e}var mt=(e,t)=>parseInt(e[1],10)>parseInt(t[1],10)?1:-1,gt=e=>Object.fromEntries(Object.entries(e).sort(mt));function vt(e){const t=gt(e);return Object.assign(Object.values(t),t)}function yt(e){var t;if(!e)return e;e=null!=(t=pt(e))?t:e;return"number"===typeof e?`${e+-.02}`:e.replace(/(\d+\.?\d*)/u,(e=>`${parseFloat(e)+-.02}`))}function bt(e,t){const r=["@media screen"];return e&&r.push("and",`(min-width: ${pt(e)})`),t&&r.push("and",`(max-width: ${pt(t)})`),r.join(" ")}function wt(e){var t;if(!e)return null;e.base=null!=(t=e.base)?t:"0px";const r=vt(e),n=Object.entries(e).sort(mt).map((([e,t],r,n)=>{var i;let[,o]=null!=(i=n[r+1])?i:[];return o=parseFloat(o)>0?yt(o):void 0,{_minW:yt(t),breakpoint:e,minW:t,maxW:o,maxWQuery:bt(null,o),minWQuery:bt(t),minMaxQuery:bt(t,o)}})),i=function(e){const t=Object.keys(gt(e));return new Set(t)}(e),o=Array.from(i.values());return{keys:i,normalized:r,isResponsive(e){const t=Object.keys(e);return t.length>0&&t.every((e=>i.has(e)))},asObject:gt(e),asArray:vt(e),details:n,get:e=>n.find((t=>t.breakpoint===e)),media:[null,...r.map((e=>bt(e))).slice(1)],toArrayValue(e){if(!oe(e))throw new Error("toArrayValue: value must be an object");const t=o.map((t=>{var r;return null!=(r=e[t])?r:null}));for(;null===ft(t);)t.pop();return t},toObjectValue(e){if(!Array.isArray(e))throw new Error("toObjectValue: value must be an array");return e.reduce(((e,t,r)=>{const n=o[r];return null!=n&&null!=t&&(e[n]=t),e}),{})}}}var xt=(e,t)=>`${e}:hover ${t}, ${e}[data-hover] ${t}`,_t=(e,t)=>`${e}:focus ${t}, ${e}[data-focus] ${t}`,St=(e,t)=>`${e}:focus-visible ${t}`,kt=(e,t)=>`${e}:focus-within ${t}`,Et=(e,t)=>`${e}:active ${t}, ${e}[data-active] ${t}`,At=(e,t)=>`${e}:disabled ${t}, ${e}[data-disabled] ${t}`,Pt=(e,t)=>`${e}:invalid ${t}, ${e}[data-invalid] ${t}`,Ot=(e,t)=>`${e}:checked ${t}, ${e}[data-checked] ${t}`,Tt=(e,t)=>`${e}:placeholder-shown ${t}`,Ct=e=>Rt((t=>e(t,"&")),"[role=group]","[data-group]",".group"),jt=e=>Rt((t=>e(t,"~ &")),"[data-peer]",".peer"),Rt=(e,...t)=>t.map(e).join(", "),It={_hover:"&:hover, &[data-hover]",_active:"&:active, &[data-active]",_focus:"&:focus, &[data-focus]",_highlighted:"&[data-highlighted]",_focusWithin:"&:focus-within",_focusVisible:"&:focus-visible, &[data-focus-visible]",_disabled:"&:disabled, &[disabled], &[aria-disabled=true], &[data-disabled]",_readOnly:"&[aria-readonly=true], &[readonly], &[data-readonly]",_before:"&::before",_after:"&::after",_empty:"&:empty",_expanded:"&[aria-expanded=true], &[data-expanded]",_checked:"&[aria-checked=true], &[data-checked]",_grabbed:"&[aria-grabbed=true], &[data-grabbed]",_pressed:"&[aria-pressed=true], &[data-pressed]",_invalid:"&[aria-invalid=true], &[data-invalid]",_valid:"&[data-valid], &[data-state=valid]",_loading:"&[data-loading], &[aria-busy=true]",_selected:"&[aria-selected=true], &[data-selected]",_hidden:"&[hidden], &[data-hidden]",_autofill:"&:-webkit-autofill",_even:"&:nth-of-type(even)",_odd:"&:nth-of-type(odd)",_first:"&:first-of-type",_firstLetter:"&::first-letter",_last:"&:last-of-type",_notFirst:"&:not(:first-of-type)",_notLast:"&:not(:last-of-type)",_visited:"&:visited",_activeLink:"&[aria-current=page]",_activeStep:"&[aria-current=step]",_indeterminate:"&:indeterminate, &[aria-checked=mixed], &[data-indeterminate]",_groupHover:Ct(xt),_peerHover:jt(xt),_groupFocus:Ct(_t),_peerFocus:jt(_t),_groupFocusVisible:Ct(St),_peerFocusVisible:jt(St),_groupActive:Ct(Et),_peerActive:jt(Et),_groupDisabled:Ct(At),_peerDisabled:jt(At),_groupInvalid:Ct(Pt),_peerInvalid:jt(Pt),_groupChecked:Ct(Ot),_peerChecked:jt(Ot),_groupFocusWithin:Ct(kt),_peerFocusWithin:jt(kt),_peerPlaceholderShown:jt(Tt),_placeholder:"&::placeholder",_placeholderShown:"&:placeholder-shown",_fullScreen:"&:fullscreen",_selection:"&::selection",_rtl:"[dir=rtl] &, &[dir=rtl]",_ltr:"[dir=ltr] &, &[dir=ltr]",_mediaDark:"@media (prefers-color-scheme: dark)",_mediaReduceMotion:"@media (prefers-reduced-motion: reduce)",_dark:".chakra-ui-dark &:not([data-theme]),[data-theme=dark] &:not([data-theme]),&[data-theme=dark]",_light:".chakra-ui-light &:not([data-theme]),[data-theme=light] &:not([data-theme]),&[data-theme=light]",_horizontal:"&[data-orientation=horizontal]",_vertical:"&[data-orientation=vertical]"},Mt=Object.keys(It);function Lt(e,t){return ht(String(e).replace(/\./g,"-"),void 0,t)}function Nt(e,t,r={}){const{stop:n,getKey:i}=r;return function e(r,o=[]){var a;if(function(e){return"object"===typeof e&&null!=e&&!Array.isArray(e)}(r)||Array.isArray(r)){const s={};for(const[c,l]of Object.entries(r)){const u=null!=(a=null==i?void 0:i(c))?a:c,d=[...o,u];if(null==n?void 0:n(r,d))return t(r,o);s[u]=e(l,d)}return s}return t(r,o)}(e)}var Dt=["colors","borders","borderWidths","borderStyles","fonts","fontSizes","fontWeights","gradients","letterSpacings","lineHeights","radii","space","shadows","sizes","zIndices","transition","blur","breakpoints"];var zt=e=>Mt.includes(e)||"default"===e;function Bt(e){var t;const r=function(e){const{__cssMap:t,__cssVars:r,__breakpoints:n,...i}=e;return i}(e),n=function(e){return function(e,t){const r={};for(const n of t)n in e&&(r[n]=e[n]);return r}(e,Dt)}(r),i=function(e){return e.semanticTokens}(r),o=function({tokens:e,semanticTokens:t}){const r={};return Nt(e,((e,t)=>{null!=e&&(r[t.join(".")]={isSemantic:!1,value:e})})),Nt(t,((e,t)=>{null!=e&&(r[t.join(".")]={isSemantic:!0,value:e})}),{stop:e=>Object.keys(e).every(zt)}),r}({tokens:n,semanticTokens:i}),a=null==(t=r.config)?void 0:t.cssVarPrefix,{cssMap:s,cssVars:c}=function(e,t){let r={};const n={};for(const[i,o]of Object.entries(e)){const{isSemantic:a,value:s}=o,{variable:c,reference:l}=Lt(i,null==t?void 0:t.cssVarPrefix);if(!a){if(i.startsWith("space")){const e=i.split("."),[t,...r]=e,o=`${t}.-${r.join(".")}`,a=ct.negate(s),u=ct.negate(l);n[o]={value:a,var:c,varRef:u}}r[c]=s,n[i]={value:s,var:c,varRef:l};continue}const u=r=>{const n=[String(i).split(".")[0],r].join(".");if(!e[n])return r;const{reference:o}=Lt(n,null==t?void 0:t.cssVarPrefix);return o},d=oe(s)?s:{default:s};r=fe(r,Object.entries(d).reduce(((e,[t,r])=>{var n,i;if(!r)return e;const o=u(`${r}`);return"default"===t?(e[c]=o,e):(e[null!=(i=null==(n=It)?void 0:n[t])?i:t]={[c]:o},e)}),{})),n[i]={value:l,var:c,varRef:l}}return{cssVars:r,cssMap:n}}(o,{cssVarPrefix:a});return Object.assign(r,{__cssVars:{"--chakra-ring-inset":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-ring-offset-width":"0px","--chakra-ring-offset-color":"#fff","--chakra-ring-color":"rgba(66, 153, 225, 0.6)","--chakra-ring-offset-shadow":"0 0 #0000","--chakra-ring-shadow":"0 0 #0000","--chakra-space-x-reverse":"0","--chakra-space-y-reverse":"0",...c},__cssMap:s,__breakpoints:wt(r.breakpoints)}),r}var Ut=fe({},Re,Ie,Me,De,Ue,Ne,Ge,Be,ze,Ke,We,Le,Ze,et,Qe,Ye,Xe,Fe,Je),Ft=Object.assign({},Ze,Ue,De,ze,We),$t=Object.keys(Ft),Ht=[...Object.keys(Ut),...Mt],Vt={...Ut,...It},qt=e=>e in Vt;var Kt=(e,t)=>e.startsWith("--")&&"string"===typeof t&&!function(e){return/^var\(--.+\)$/.test(e)}(t),Wt=(e,t)=>{var r,n;if(null==t)return t;const i=t=>{var r,n;return null==(n=null==(r=e.__cssMap)?void 0:r[t])?void 0:n.varRef},o=e=>{var t;return null!=(t=i(e))?t:e},[a,s]=function(e){const t=[];let r="",n=!1;for(let i=0;i{var a,s,c;const l=se(e,n),u=(e=>t=>{if(!t.__breakpoints)return e;const{isResponsive:r,toArrayValue:n,media:i}=t.__breakpoints,o={};for(const a in e){let s=se(e[a],t);if(null==s)continue;if(s=oe(s)&&r(s)?n(s):s,!Array.isArray(s)){o[a]=s;continue}const c=s.slice(0,i.length).length;for(let e=0;et=>Gt({theme:t,pseudos:It,configs:Ut})(e);function Yt(e){return{definePartsStyle:e=>e,defineMultiStyleConfig:t=>({parts:e,...t})}}function Xt(e,t){for(let r=t+1;r{fe(s,{[e]:u?p[e]:{[f]:p[e]}})})):d?s[f]=p:u?fe(s,p):s[f]=p)}return s}}function Qt(e){return function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(e,["styleConfig","size","variant","colorScheme"])}var er=new Set([...Ht,"textStyle","layerStyle","apply","noOfLines","focusBorderColor","errorBorderColor","as","__css","css","sx"]),tr=new Set(["htmlWidth","htmlHeight","htmlSize","htmlTranslate"]);function rr(e){return tr.has(e)||!er.has(e)}var nr=(0,n.createContext)({});function ir(){const e=(0,n.useContext)(nr);if(void 0===e)throw new Error("useColorMode must be used within a ColorModeProvider");return e}nr.displayName="ColorModeContext";var or=(e=>{const t=new WeakMap;return(r,n,i,o)=>{if("undefined"===typeof r)return e(r,n,i);t.has(r)||t.set(r,new Map);const a=t.get(r);if(a.has(n))return a.get(n);const s=e(r,n,i,o);return a.set(n,s),s}})((function(e,t,r,n){const i="string"===typeof t?t.split("."):[t];for(n=0;n{const i=e[n];t(i,n,e)&&(r[n]=i)})),r}var sr=e=>ar(e,(e=>null!==e&&void 0!==e));function cr(e,...t){return function(e){return"function"===typeof e}(e)?e(...t):e}function lr(...e){return function(t){e.some((e=>(null==e||e(t),null==t?void 0:t.defaultPrevented)))}}function ur(){return ur=Object.assign?Object.assign.bind():function(e){for(var t=1;t0?xr(jr,--Tr):0,Pr--,10===Cr&&(Pr=1,Ar--),Cr}function Lr(){return Cr=Tr2||Br(Cr)>3?"":" "}function Vr(e,t){for(;--t&&Lr()&&!(Cr<48||Cr>102||Cr>57&&Cr<65||Cr>70&&Cr<97););return zr(e,Dr()+(t<6&&32==Nr()&&32==Lr()))}function qr(e){for(;Lr();)switch(Cr){case e:return Tr;case 34:case 39:34!==e&&39!==e&&qr(Cr);break;case 40:41===e&&qr(e);break;case 92:Lr()}return Tr}function Kr(e,t){for(;Lr()&&e+Cr!==57&&(e+Cr!==84||47!==Nr()););return"/*"+zr(t,Tr-1)+"*"+gr(47===e?e:Lr())}function Wr(e){for(;!Br(Nr());)Lr();return zr(e,Tr)}var Gr="-ms-",Zr="-moz-",Yr="-webkit-",Xr="comm",Jr="rule",Qr="decl",en="@keyframes";function tn(e,t){for(var r="",n=kr(e),i=0;i0&&Sr(S)-d&&Er(f>32?cn(S+";",n,r,d-1):cn(br(S," ","")+";",n,r,d-2),c);break;case 59:S+=";";default:if(Er(_=an(S,t,r,l,u,i,s,b,w=[],x=[],d),o),123===y)if(0===u)on(S,t,_,_,w,o,d,s,x);else switch(99===h&&110===xr(S,3)?100:h){case 100:case 108:case 109:case 115:on(e,_,_,n&&Er(an(e,_,_,0,0,i,s,b,i,w=[],d),x),i,x,d,s,n?w:x);break;default:on(S,_,_,_,[""],x,0,s,x)}}l=u=f=0,m=v=1,b=S="",d=a;break;case 58:d=1+Sr(S),f=p;default:if(m<1)if(123==y)--m;else if(125==y&&0==m++&&125==Mr())continue;switch(S+=gr(y),y*m){case 38:v=u>0?1:(S+="\f",-1);break;case 44:s[l++]=(Sr(S)-1)*v,v=1;break;case 64:45===Nr()&&(S+=$r(Lr())),h=Nr(),u=d=Sr(b=S+=Wr(Dr())),y++;break;case 45:45===p&&2==Sr(S)&&(m=0)}}return o}function an(e,t,r,n,i,o,a,s,c,l,u){for(var d=i-1,h=0===i?o:[""],f=kr(h),p=0,m=0,g=0;p0?h[v]+" "+y:br(y,/&\f/g,h[v])))&&(c[g++]=b);return Rr(e,t,r,0===i?Jr:s,c,l,u)}function sn(e,t,r){return Rr(e,t,r,Xr,gr(Cr),_r(e,2,-2),0)}function cn(e,t,r,n){return Rr(e,t,r,Qr,_r(e,0,n),_r(e,n+1,-1),n)}var ln=function(e,t,r){for(var n=0,i=0;n=i,i=Nr(),38===n&&12===i&&(t[r]=1),!Br(i);)Lr();return zr(e,Tr)},un=function(e,t){return Fr(function(e,t){var r=-1,n=44;do{switch(Br(n)){case 0:38===n&&12===Nr()&&(t[r]=1),e[r]+=ln(Tr-1,t,r);break;case 2:e[r]+=$r(n);break;case 4:if(44===n){e[++r]=58===Nr()?"&\f":"",t[r]=e[r].length;break}default:e[r]+=gr(n)}}while(n=Lr());return e}(Ur(e),t))},dn=new WeakMap,hn=function(e){if("rule"===e.type&&e.parent&&!(e.length<1)){for(var t=e.value,r=e.parent,n=e.column===r.column&&e.line===r.line;"rule"!==r.type;)if(!(r=r.parent))return;if((1!==e.props.length||58===t.charCodeAt(0)||dn.get(r))&&!n){dn.set(e,!0);for(var i=[],o=un(t,i),a=r.props,s=0,c=0;s6)switch(xr(e,t+1)){case 109:if(45!==xr(e,t+4))break;case 102:return br(e,/(.+:)(.+)-([^]+)/,"$1"+Yr+"$2-$3$1"+Zr+(108==xr(e,t+3)?"$3":"$2-$3"))+e;case 115:return~wr(e,"stretch")?pn(br(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==xr(e,t+1))break;case 6444:switch(xr(e,Sr(e)-3-(~wr(e,"!important")&&10))){case 107:return br(e,":",":"+Yr)+e;case 101:return br(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+Yr+(45===xr(e,14)?"inline-":"")+"box$3$1"+Yr+"$2$3$1"+Gr+"$2box$3")+e}break;case 5936:switch(xr(e,t+11)){case 114:return Yr+e+Gr+br(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return Yr+e+Gr+br(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return Yr+e+Gr+br(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return Yr+e+Gr+e+e}return e}var mn=[function(e,t,r,n){if(e.length>-1&&!e.return)switch(e.type){case Qr:e.return=pn(e.value,e.length);break;case en:return tn([Ir(e,{value:br(e.value,"@","@"+Yr)})],n);case Jr:if(e.length)return function(e,t){return e.map(t).join("")}(e.props,(function(t){switch(function(e,t){return(e=t.exec(e))?e[0]:e}(t,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return tn([Ir(e,{props:[br(t,/:(read-\w+)/,":-moz-$1")]})],n);case"::placeholder":return tn([Ir(e,{props:[br(t,/:(plac\w+)/,":"+Yr+"input-$1")]}),Ir(e,{props:[br(t,/:(plac\w+)/,":-moz-$1")]}),Ir(e,{props:[br(t,/:(plac\w+)/,Gr+"input-$1")]})],n)}return""}))}}],gn=function(e){var t=e.key;if("css"===t){var r=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(r,(function(e){-1!==e.getAttribute("data-emotion").indexOf(" ")&&(document.head.appendChild(e),e.setAttribute("data-s",""))}))}var n=e.stylisPlugins||mn;var i,o,a={},s=[];i=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+t+' "]'),(function(e){for(var t=e.getAttribute("data-emotion").split(" "),r=1;r=4;++n,i-=4)t=1540483477*(65535&(t=255&e.charCodeAt(n)|(255&e.charCodeAt(++n))<<8|(255&e.charCodeAt(++n))<<16|(255&e.charCodeAt(++n))<<24))+(59797*(t>>>16)<<16),r=1540483477*(65535&(t^=t>>>24))+(59797*(t>>>16)<<16)^1540483477*(65535&r)+(59797*(r>>>16)<<16);switch(i){case 3:r^=(255&e.charCodeAt(n+2))<<16;case 2:r^=(255&e.charCodeAt(n+1))<<8;case 1:r=1540483477*(65535&(r^=255&e.charCodeAt(n)))+(59797*(r>>>16)<<16)}return(((r=1540483477*(65535&(r^=r>>>13))+(59797*(r>>>16)<<16))^r>>>15)>>>0).toString(36)}(i)+c;return{name:l,styles:i,next:An}},Tn=!!i.useInsertionEffect&&i.useInsertionEffect,Cn=Tn||function(e){return e()},jn=Tn||n.useLayoutEffect,Rn=n.createContext("undefined"!==typeof HTMLElement?gn({key:"css"}):null);Rn.Provider;var In=function(e){return(0,n.forwardRef)((function(t,r){var i=(0,n.useContext)(Rn);return e(t,i,r)}))};var Mn=n.createContext({});var Ln=vn((function(e){return vn((function(t){return function(e,t){return"function"===typeof t?t(e):ur({},e,t)}(e,t)}))})),Nn=function(e){var t=n.useContext(Mn);return e.theme!==t&&(t=Ln(t)(e.theme)),n.createElement(Mn.Provider,{value:t},e.children)};var Dn,zn=function(e,t,r){var n=e.key+"-"+t.name;!1===r&&void 0===e.registered[n]&&(e.registered[n]=t.styles)},Bn=function(e,t,r){zn(e,t,r);var n=e.key+"-"+t.name;if(void 0===e.inserted[t.name]){var i=t;do{e.insert(t===i?"."+n:"",i,e.sheet,!0),i=i.next}while(void 0!==i)}},Un=fr,Fn=function(e){return"theme"!==e},$n=function(e){return"string"===typeof e&&e.charCodeAt(0)>96?Un:Fn},Hn=function(e,t,r){var n;if(t){var i=t.shouldForwardProp;n=e.__emotion_forwardProp&&i?function(t){return e.__emotion_forwardProp(t)&&i(t)}:i}return"function"!==typeof n&&r&&(n=e.__emotion_forwardProp),n},Vn=function(e){var t=e.cache,r=e.serialized,n=e.isStringTag;return zn(t,r,n),Cn((function(){return Bn(t,r,n)})),null},qn=function e(t,r){var i,o,a=t.__emotion_real===t,s=a&&t.__emotion_base||t;void 0!==r&&(i=r.label,o=r.target);var c=Hn(t,r,a),l=c||$n(s),u=!l("as");return function(){var d=arguments,h=a&&void 0!==t.__emotion_styles?t.__emotion_styles.slice(0):[];if(void 0!==i&&h.push("label:"+i+";"),null==d[0]||void 0===d[0].raw)h.push.apply(h,d);else{0,h.push(d[0][0]);for(var f=d.length,p=1;pt=>{const{theme:r,css:n,__css:i,sx:o,...a}=t,s=ar(a,((e,t)=>qt(t))),c=function(e,...t){if(null==e)throw new TypeError("Cannot convert undefined or null to object");const r={...e};for(const n of t)if(null!=n)for(const e in n)Object.prototype.hasOwnProperty.call(n,e)&&(e in r&&delete r[e],r[e]=n[e]);return r}({},i,cr(e,t),sr(s),o),l=Zt(c)(t.theme);return n?[l,n]:l};function Gn(e,t){const{baseStyle:r,...i}=null!=t?t:{};i.shouldForwardProp||(i.shouldForwardProp=rr);const o=Wn({baseStyle:r}),a=Kn(e,i)(o);return n.forwardRef((function(e,t){const{colorMode:r,forced:i}=ir();return n.createElement(a,{ref:t,"data-theme":i?r:void 0,...e})}))}var Zn=function(){const e=new Map;return new Proxy(Gn,{apply:(e,t,r)=>Gn(...r),get:(t,r)=>(e.has(r)||e.set(r,Gn(r)),e.get(r))})}(),Yn=r(5124),Xn=ne((function(e,t){const{direction:r,align:n,justify:i,wrap:o,basis:a,grow:s,shrink:c,...l}=e,u={display:"flex",flexDirection:r,alignItems:n,justifyContent:i,flexWrap:o,flexBasis:a,flexGrow:s,flexShrink:c};return(0,Yn.jsx)(Zn.div,{ref:t,__css:u,...l})}));Xn.displayName="Flex";var Jn=Zn("div",{baseStyle:{display:"flex",alignItems:"center",justifyContent:"center"}});Jn.displayName="Center";var Qn={horizontal:{insetStart:"50%",transform:"translateX(-50%)"},vertical:{top:"50%",transform:"translateY(-50%)"},both:{insetStart:"50%",top:"50%",transform:"translate(-50%, -50%)"}},ei=(ne((function(e,t){const{axis:r="both",...n}=e;return(0,Yn.jsx)(Zn.div,{ref:t,__css:Qn[r],...n,position:"absolute"})})),Zn("div"));ei.displayName="Box";var ti=ne((function(e,t){const{size:r,centerContent:n=!0,...i}=e,o=n?{display:"flex",alignItems:"center",justifyContent:"center"}:{};return(0,Yn.jsx)(ei,{ref:t,boxSize:r,__css:{...o,flexShrink:0,flexGrow:0},...i})}));ti.displayName="Square";var ri=ne((function(e,t){const{size:r,...n}=e;return(0,Yn.jsx)(ti,{size:r,ref:t,borderRadius:"9999px",...n})}));function ni(){const e=(0,n.useContext)(Mn);if(!e)throw Error("useTheme: `theme` is undefined. Seems you forgot to wrap your app in `` or ``");return e}function ii(){return{...ir(),theme:ni()}}function oi(e,t,r){const n=Array.isArray(t)?t:[t],i=Array.isArray(r)?r:[r];return r=>{const o=i.filter(Boolean),a=n.map(((t,n)=>{var i,a;if("breakpoints"===e)return function(e,t,r){var n,i;if(null==t)return t;const o=t=>{var r,n;return null==(n=null==(r=e.__breakpoints)?void 0:r.asArray)?void 0:n[t]};return null!=(i=null!=(n=o(t))?n:o(r))?i:r}(r,t,null!=(i=o[n])?i:t);return function(e,t,r){var n,i;if(null==t)return t;const o=t=>{var r,n;return null==(n=null==(r=e.__cssMap)?void 0:r[t])?void 0:n.value};return null!=(i=null!=(n=o(t))?n:o(r))?i:r}(r,`${e}.${t}`,null!=(a=o[n])?a:t)}));return Array.isArray(t)?a:a[0]}}ri.displayName="Circle";var ai=r(8366);function si(e,t={}){var r;const{styleConfig:i,...o}=t,{theme:a,colorMode:s}=ii(),c=e?or(a,`components.${e}`):void 0,l=i||c,u=fe({theme:a,colorMode:s},null!=(r=null==l?void 0:l.defaultProps)?r:{},sr(function(e,t){const r={};return Object.keys(e).forEach((n=>{t.includes(n)||(r[n]=e[n])})),r}(o,["children"]))),d=(0,n.useRef)({});if(l){const e=function(e){return t=>{var r;const{variant:n,size:i,theme:o}=t,a=Jt(o);return fe({},se(null!=(r=e.baseStyle)?r:{},t),a(e,"sizes",i,t),a(e,"variants",n,t))}}(l),t=e(u);ai(d.current,t)||(d.current=t)}return d.current}function ci(e,t={}){return si(e,t)}function li(e,t={}){return si(e,t)}var ui=ne((function(e,t){const r=ci("Heading",e),{className:n,...i}=Qt(e);return(0,Yn.jsx)(Zn.h2,{ref:t,className:ie("chakra-heading",e.className),...i,__css:r})}));function di(e={}){const{name:t,strict:r=!0,hookName:i="useContext",providerName:o="Provider",errorMessage:a,defaultValue:s}=e,c=(0,n.createContext)(s);return c.displayName=t,[c.Provider,function e(){var t;const s=(0,n.useContext)(c);if(!s&&r){const r=new Error(null!=a?a:`${i} returned \`undefined\`. Seems you forgot to wrap component within ${o}`);throw r.name="ContextError",null==(t=Error.captureStackTrace)||t.call(Error,r,e),r}return s},c]}ui.displayName="Heading";var[hi,fi]=di({strict:!1,name:"ButtonGroupContext"});function pi(e){const{children:t,className:r,...i}=e,o=(0,n.isValidElement)(t)?(0,n.cloneElement)(t,{"aria-hidden":!0,focusable:!1}):t,a=ie("chakra-button__icon",r);return(0,Yn.jsx)(Zn.span,{display:"inline-flex",alignSelf:"center",flexShrink:0,...i,className:a,children:o})}pi.displayName="ButtonIcon";r(1194);var mi=In((function(e,t){var r=e.styles,i=On([r],void 0,n.useContext(Mn)),o=n.useRef();return jn((function(){var e=t.key+"-global",r=new t.sheet.constructor({key:e,nonce:t.sheet.nonce,container:t.sheet.container,speedy:t.sheet.isSpeedy}),n=!1,a=document.querySelector('style[data-emotion="'+e+" "+i.name+'"]');return t.sheet.tags.length&&(r.before=t.sheet.tags[0]),null!==a&&(n=!0,a.setAttribute("data-emotion",e),r.hydrate([a])),o.current=[r,n],function(){r.flush()}}),[t]),jn((function(){var e=o.current,r=e[0];if(e[1])e[1]=!1;else{if(void 0!==i.next&&Bn(t,i.next,!0),r.tags.length){var n=r.tags[r.tags.length-1].nextElementSibling;r.before=n,r.flush()}t.insert("",i,r,!1)}}),[t,i.name]),null}));function gi(){for(var e=arguments.length,t=new Array(e),r=0;r{const r=ci("Spinner",e),{label:n="Loading...",thickness:i="2px",speed:o="0.45s",emptyColor:a="transparent",className:s,...c}=Qt(e),l=ie("chakra-spinner",s),u={display:"inline-block",borderColor:"currentColor",borderStyle:"solid",borderRadius:"99999px",borderWidth:i,borderBottomColor:a,borderLeftColor:a,animation:`${yi} ${o} linear infinite`,...r};return(0,Yn.jsx)(Zn.div,{ref:t,__css:u,className:l,...c,children:n&&(0,Yn.jsx)(Zn.span,{srOnly:!0,children:n})})}));function wi(e){const{label:t,placement:r,spacing:i="0.5rem",children:o=(0,Yn.jsx)(bi,{color:"currentColor",width:"1em",height:"1em"}),className:a,__css:s,...c}=e,l=ie("chakra-button__spinner",a),u="start"===r?"marginEnd":"marginStart",d=(0,n.useMemo)((()=>({display:"flex",alignItems:"center",position:t?"relative":"absolute",[u]:t?i:0,fontSize:"1em",lineHeight:"normal",...s})),[s,t,u,i]);return(0,Yn.jsx)(Zn.div,{className:l,...c,__css:d,children:o})}function xi(...e){return t=>{e.forEach((e=>{!function(e,t){if(null!=e)if("function"!==typeof e)try{e.current=t}catch(r){throw new Error(`Cannot assign value '${t}' to ref '${e}'`)}else e(t)}(e,t)}))}}function _i(...e){return(0,n.useMemo)((()=>xi(...e)),e)}bi.displayName="Spinner",wi.displayName="ButtonSpinner";var Si=ne(((e,t)=>{const r=fi(),i=ci("Button",{...r,...e}),{isDisabled:o=(null==r?void 0:r.isDisabled),isLoading:a,isActive:s,children:c,leftIcon:l,rightIcon:u,loadingText:d,iconSpacing:h="0.5rem",type:f,spinner:p,spinnerPlacement:m="start",className:g,as:v,...y}=Qt(e),b=(0,n.useMemo)((()=>{const e={...null==i?void 0:i._focus,zIndex:1};return{display:"inline-flex",appearance:"none",alignItems:"center",justifyContent:"center",userSelect:"none",position:"relative",whiteSpace:"nowrap",verticalAlign:"middle",outline:"none",...i,...!!r&&{_focus:e}}}),[i,r]),{ref:w,type:x}=function(e){const[t,r]=(0,n.useState)(!e),i=(0,n.useCallback)((e=>{e&&r("BUTTON"===e.tagName)}),[]);return{ref:i,type:t?"button":void 0}}(v),_={rightIcon:u,leftIcon:l,iconSpacing:h,children:c};return(0,Yn.jsxs)(Zn.button,{ref:_i(t,w),as:v,type:null!=f?f:x,"data-active":le(s),"data-loading":le(a),__css:b,className:ie("chakra-button",g),...y,disabled:o||a,children:[a&&"start"===m&&(0,Yn.jsx)(wi,{className:"chakra-button__spinner--start",label:d,placement:"start",spacing:h,children:p}),a?d||(0,Yn.jsx)(Zn.span,{opacity:0,children:(0,Yn.jsx)(ki,{..._})}):(0,Yn.jsx)(ki,{..._}),a&&"end"===m&&(0,Yn.jsx)(wi,{className:"chakra-button__spinner--end",label:d,placement:"end",spacing:h,children:p})]})}));function ki(e){const{leftIcon:t,rightIcon:r,children:n,iconSpacing:i}=e;return(0,Yn.jsxs)(Yn.Fragment,{children:[t&&(0,Yn.jsx)(pi,{marginEnd:i,children:t}),n,r&&(0,Yn.jsx)(pi,{marginStart:i,children:r})]})}Si.displayName="Button";var Ei=ne((function(e,t){const r=ci("Link",e),{className:n,isExternal:i,...o}=Qt(e);return(0,Yn.jsx)(Zn.a,{target:i?"_blank":void 0,rel:i?"noopener":void 0,ref:t,className:ie("chakra-link",n),...o,__css:r})}));Ei.displayName="Link";const Ai="What is it about? (if a bug report please consider including your account address) %0A PLEASE FILL %0A%0A What is the feedback? %0A PLEASE FILL",Pi=()=>{const e=()=>{window.location.reload()};return(0,Yn.jsx)(Xn,{alignItems:"stretch",children:(0,Yn.jsx)(Jn,{width:"100%",marginTop:"200px",children:(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)(ui,{marginBottom:3,textAlign:"center",children:"Ooops, something went wrong!"}),(0,Yn.jsx)(Si,{marginRight:2,onClick:e,children:"Refresh the page"}),(0,Yn.jsx)(Si,{marginRight:2,onClick:()=>{const e=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(window.localStorage))}`,t=document.createElement("a");t.href=e,t.download="data.json",t.click()},variant:"secondary",children:"Download Backup"}),(0,Yn.jsx)(Si,{marginRight:2,onClick:()=>{window.localStorage.clear(),e()},variant:"warning",children:"Offboard"}),(0,Yn.jsx)(Si,{variant:"tertiary",children:(0,Yn.jsx)(Ei,{href:`mailto:umami-support@trili.tech?subject=Umami V2 feedback&body=${Ai}`,rel:"noopener noreferrer",target:"_blank",children:"Report Error"})})]})})})};var Oi=r(2029);const Ti=new Oi.QueryClient,Ci=e=>(0,Yn.jsx)(Oi.QueryClientProvider,{client:Ti,children:e.children});var ji=r(5447),Ri=r(2003),Ii=r(2717),Mi=r.t(Ii,2);let Li=function(e){e()};const Ni=()=>Li,Di=Symbol.for("react-redux-context"),zi="undefined"!==typeof globalThis?globalThis:{};function Bi(){var e;if(!n.createContext)return{};const t=null!=(e=zi[Di])?e:zi[Di]=new Map;let r=t.get(n.createContext);return r||(r=n.createContext(null),t.set(n.createContext,r)),r}const Ui=Bi();function Fi(e=Ui){return function(){return(0,n.useContext)(e)}}const $i=Fi();let Hi=()=>{throw new Error("uSES not initialized!")};const Vi=(e,t)=>e===t;function qi(e=Ui){const t=e===Ui?$i:Fi(e);return function(e,r={}){const{equalityFn:i=Vi,stabilityCheck:o,noopCheck:a}="function"===typeof r?{equalityFn:r}:r;const{store:s,subscription:c,getServerState:l,stabilityCheck:u,noopCheck:d}=t(),h=((0,n.useRef)(!0),(0,n.useCallback)({[e.name]:t=>e(t)}[e.name],[e,u,o])),f=Hi(c.addNestedSub,s.getState,l||s.getState,h,i);return(0,n.useDebugValue)(f),f}}const Ki=qi();r(931);const Wi={notify(){},get:()=>[]};function Gi(e,t){let r,n=Wi,i=0,o=!1;function a(){l.onStateChange&&l.onStateChange()}function s(){i++,r||(r=t?t.addNestedSub(a):e.subscribe(a),n=function(){const e=Ni();let t=null,r=null;return{clear(){t=null,r=null},notify(){e((()=>{let e=t;for(;e;)e.callback(),e=e.next}))},get(){let e=[],r=t;for(;r;)e.push(r),r=r.next;return e},subscribe(e){let n=!0,i=r={callback:e,next:null,prev:r};return i.prev?i.prev.next=i:t=i,function(){n&&null!==t&&(n=!1,i.next?i.next.prev=i.prev:r=i.prev,i.prev?i.prev.next=i.next:t=i.next)}}}}())}function c(){i--,r&&0===i&&(r(),r=void 0,n.clear(),n=Wi)}const l={addNestedSub:function(e){s();const t=n.subscribe(e);let r=!1;return()=>{r||(r=!0,t(),c())}},notifyNestedSubs:function(){n.notify()},handleChangeWrapper:a,isSubscribed:function(){return o},trySubscribe:function(){o||(o=!0,s())},tryUnsubscribe:function(){o&&(o=!1,c())},getListeners:()=>n};return l}const Zi=!("undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement)?n.useLayoutEffect:n.useEffect;let Yi=null;const Xi=function({store:e,context:t,children:r,serverState:i,stabilityCheck:o="once",noopCheck:a="once"}){const s=n.useMemo((()=>{const t=Gi(e);return{store:e,subscription:t,getServerState:i?()=>i:void 0,stabilityCheck:o,noopCheck:a}}),[e,i,o,a]),c=n.useMemo((()=>e.getState()),[e]);Zi((()=>{const{subscription:t}=s;return t.onStateChange=t.notifyNestedSubs,t.trySubscribe(),c!==e.getState()&&t.notifyNestedSubs(),()=>{t.tryUnsubscribe(),t.onStateChange=void 0}}),[s,c]);const l=t||Ui;return n.createElement(l.Provider,{value:s},r)};function Ji(e=Ui){const t=e===Ui?$i:Fi(e);return function(){const{store:e}=t();return e}}const Qi=Ji();function eo(e=Ui){const t=e===Ui?Qi:Ji(e);return function(){return t().dispatch}}const to=eo();var ro;function no(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n3?t.i-4:t.i:Array.isArray(e)?1:fo(e)?2:po(e)?3:0}function co(e,t){return 2===so(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function lo(e,t){return 2===so(e)?e.get(t):e[t]}function uo(e,t,r){var n=so(e);2===n?e.set(t,r):3===n?e.add(r):e[t]=r}function ho(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function fo(e){return Ho&&e instanceof Map}function po(e){return Vo&&e instanceof Set}function mo(e){return e.o||e.t}function go(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=Xo(e);delete t[Go];for(var r=Yo(t),n=0;n1&&(e.set=e.add=e.clear=e.delete=yo),Object.freeze(e),t&&ao(e,(function(e,t){return vo(t,!0)}),!0)),e}function yo(){no(2)}function bo(e){return null==e||"object"!=typeof e||Object.isFrozen(e)}function wo(e){var t=Jo[e];return t||no(18,e),t}function xo(e,t){Jo[e]||(Jo[e]=t)}function _o(){return Fo}function So(e,t){t&&(wo("Patches"),e.u=[],e.s=[],e.v=t)}function ko(e){Eo(e),e.p.forEach(Po),e.p=null}function Eo(e){e===Fo&&(Fo=e.l)}function Ao(e){return Fo={p:[],l:Fo,h:e,m:!0,_:0}}function Po(e){var t=e[Go];0===t.i||1===t.i?t.j():t.g=!0}function Oo(e,t){t._=t.p.length;var r=t.p[0],n=void 0!==e&&e!==r;return t.h.O||wo("ES5").S(t,e,n),n?(r[Go].P&&(ko(t),no(4)),oo(e)&&(e=To(t,e),t.l||jo(t,e)),t.u&&wo("Patches").M(r[Go].t,e,t.u,t.s)):e=To(t,r,[]),ko(t),t.u&&t.v(t.u,t.s),e!==Ko?e:void 0}function To(e,t,r){if(bo(t))return t;var n=t[Go];if(!n)return ao(t,(function(i,o){return Co(e,n,t,i,o,r)}),!0),t;if(n.A!==e)return t;if(!n.P)return jo(e,n.t,!0),n.t;if(!n.I){n.I=!0,n.A._--;var i=4===n.i||5===n.i?n.o=go(n.k):n.o,o=i,a=!1;3===n.i&&(o=new Set(i),i.clear(),a=!0),ao(o,(function(t,o){return Co(e,n,i,t,o,r,a)})),jo(e,i,!1),r&&e.u&&wo("Patches").N(n,r,e.u,e.s)}return n.o}function Co(e,t,r,n,i,o,a){if(io(i)){var s=To(e,i,o&&t&&3!==t.i&&!co(t.R,n)?o.concat(n):void 0);if(uo(r,n,s),!io(s))return;e.m=!1}else a&&r.add(i);if(oo(i)&&!bo(i)){if(!e.h.D&&e._<1)return;To(e,i),t&&t.A.l||jo(e,i)}}function jo(e,t,r){void 0===r&&(r=!1),!e.l&&e.h.D&&e.m&&vo(t,r)}function Ro(e,t){var r=e[Go];return(r?mo(r):e)[t]}function Io(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Object.getPrototypeOf(r)}}function Mo(e){e.P||(e.P=!0,e.l&&Mo(e.l))}function Lo(e){e.o||(e.o=go(e.t))}function No(e,t,r){var n=fo(t)?wo("MapSet").F(t,r):po(t)?wo("MapSet").T(t,r):e.O?function(e,t){var r=Array.isArray(e),n={i:r?1:0,A:t?t.A:_o(),P:!1,I:!1,R:{},l:t,t:e,k:null,o:null,j:null,C:!1},i=n,o=Qo;r&&(i=[n],o=ea);var a=Proxy.revocable(i,o),s=a.revoke,c=a.proxy;return n.k=c,n.j=s,c}(t,r):wo("ES5").J(t,r);return(r?r.A:_o()).p.push(n),n}function Do(e){return io(e)||no(22,e),function e(t){if(!oo(t))return t;var r,n=t[Go],i=so(t);if(n){if(!n.P&&(n.i<4||!wo("ES5").K(n)))return n.t;n.I=!0,r=zo(t,i),n.I=!1}else r=zo(t,i);return ao(r,(function(t,i){n&&lo(n.t,t)===i||uo(r,t,e(i))})),3===i?new Set(r):r}(e)}function zo(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return go(e)}function Bo(){function e(e,t){var r=i[e];return r?r.enumerable=t:i[e]=r={configurable:!0,enumerable:t,get:function(){var t=this[Go];return Qo.get(t,e)},set:function(t){var r=this[Go];Qo.set(r,e,t)}},r}function t(e){for(var t=e.length-1;t>=0;t--){var i=e[t][Go];if(!i.P)switch(i.i){case 5:n(i)&&Mo(i);break;case 4:r(i)&&Mo(i)}}}function r(e){for(var t=e.t,r=e.k,n=Yo(r),i=n.length-1;i>=0;i--){var o=n[i];if(o!==Go){var a=t[o];if(void 0===a&&!co(t,o))return!0;var s=r[o],c=s&&s[Go];if(c?c.t!==a:!ho(s,a))return!0}}var l=!!t[Go];return n.length!==Yo(t).length+(l?0:1)}function n(e){var t=e.k;if(t.length!==e.t.length)return!0;var r=Object.getOwnPropertyDescriptor(t,t.length-1);if(r&&!r.get)return!0;for(var n=0;n{Hi=e})(Ri.useSyncExternalStoreWithSelector),(e=>{Yi=e})(ji.useSyncExternalStore),ro=Ii.unstable_batchedUpdates,Li=ro;var Uo,Fo,$o="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),Ho="undefined"!=typeof Map,Vo="undefined"!=typeof Set,qo="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,Ko=$o?Symbol.for("immer-nothing"):((Uo={})["immer-nothing"]=!0,Uo),Wo=$o?Symbol.for("immer-draftable"):"__$immer_draftable",Go=$o?Symbol.for("immer-state"):"__$immer_state",Zo=("undefined"!=typeof Symbol&&Symbol.iterator,""+Object.prototype.constructor),Yo="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,Xo=Object.getOwnPropertyDescriptors||function(e){var t={};return Yo(e).forEach((function(r){t[r]=Object.getOwnPropertyDescriptor(e,r)})),t},Jo={},Qo={get:function(e,t){if(t===Go)return e;var r=mo(e);if(!co(r,t))return function(e,t,r){var n,i=Io(t,r);return i?"value"in i?i.value:null===(n=i.get)||void 0===n?void 0:n.call(e.k):void 0}(e,r,t);var n=r[t];return e.I||!oo(n)?n:n===Ro(e.t,t)?(Lo(e),e.o[t]=No(e.A.h,n,e)):n},has:function(e,t){return t in mo(e)},ownKeys:function(e){return Reflect.ownKeys(mo(e))},set:function(e,t,r){var n=Io(mo(e),t);if(null==n?void 0:n.set)return n.set.call(e.k,r),!0;if(!e.P){var i=Ro(mo(e),t),o=null==i?void 0:i[Go];if(o&&o.t===r)return e.o[t]=r,e.R[t]=!1,!0;if(ho(r,i)&&(void 0!==r||co(e.t,t)))return!0;Lo(e),Mo(e)}return e.o[t]===r&&(void 0!==r||t in e.o)||Number.isNaN(r)&&Number.isNaN(e.o[t])||(e.o[t]=r,e.R[t]=!0),!0},deleteProperty:function(e,t){return void 0!==Ro(e.t,t)||t in e.t?(e.R[t]=!1,Lo(e),Mo(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=mo(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n?{writable:!0,configurable:1!==e.i||"length"!==t,enumerable:n.enumerable,value:r[t]}:n},defineProperty:function(){no(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){no(12)}},ea={};ao(Qo,(function(e,t){ea[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}})),ea.deleteProperty=function(e,t){return ea.set.call(this,e,t,void 0)},ea.set=function(e,t,r){return Qo.set.call(this,e[0],t,r,e[0])};var ta=function(){function e(e){var t=this;this.O=qo,this.D=!0,this.produce=function(e,r,n){if("function"==typeof e&&"function"!=typeof r){var i=r;r=e;var o=t;return function(e){var t=this;void 0===e&&(e=i);for(var n=arguments.length,a=Array(n>1?n-1:0),s=1;s1?n-1:0),o=1;o=0;r--){var n=t[r];if(0===n.path.length&&"replace"===n.op){e=n.value;break}}r>-1&&(t=t.slice(r+1));var i=wo("Patches").$;return io(e)?i(e,t):this.produce(e,(function(e){return i(e,t)}))},e}(),ra=new ta,na=ra.produce;ra.produceWithPatches.bind(ra),ra.setAutoFreeze.bind(ra),ra.setUseProxies.bind(ra),ra.applyPatches.bind(ra),ra.createDraft.bind(ra),ra.finishDraft.bind(ra);const ia=na;function oa(e){return function(t){var r=t.dispatch,n=t.getState;return function(t){return function(i){return"function"===typeof i?i(r,n,e):t(i)}}}}var aa=oa();aa.withExtraArgument=oa;const sa=aa;r(5469);var ca=function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},e(t,r)};return function(t,r){if("function"!==typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}(),la=function(e,t){var r,n,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(i=2&o[0]?n.return:o[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,o[1])).done)return i;switch(n=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,n=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]Fa,setCurrent:(e,{payload:t})=>{t!==e.html&&(e.seen=!1),e.html=t},setSeen:e=>{e.seen=!0}}}),Ha={0:e=>na(e,(e=>{e.multisigs.labelsMap={}})),1:e=>na(e,(e=>{e.announcements=Fa}))};var Va=r(2354),qa=r(4872),Ka=r(4670),Wa=r(448),Ga=r(4563),Za=r.n(Ga),Ya=r(7491),Xa=r.n(Ya);class Ja extends Error{}class Qa extends Ja{}class es extends Ja{}class ts extends Ja{}class rs extends Ja{}class ns extends Ja{}class is extends Qa{constructor(e,t){super(),this.address=e,this.errorDetail=t,this.name="InvalidAddressError",this.message=`Invalid address "${e}"`,this.message+=t?` ${t}.`:"."}}class os extends Qa{constructor(e,t){super(),this.blockHash=e,this.errorDetail=t,this.name="InvalidBlockHashError",this.message=`Invalid block hash "${e}"`,this.message+=t?` ${t}.`:"."}}class as extends Qa{constructor(e){super(),this.amount=e,this.name="InvalidAmountError",this.message=`Invalid amount "${e}"`}}class ss extends Qa{constructor(e,t){super(),this.derivationPath=e,this.errorDetail=t,this.name="InvalidDerivationPathError",this.message=`Invalid derivation path "${e}"`,this.message+=t?` ${t}.`:"."}}class cs extends Qa{constructor(e,t){super(),this.hexString=e,this.errorDetail=t,this.name="InvalidHexStringError",this.message=`Invalid hex string "${e}"`,this.message+=t?` ${t}.`:"."}}class ls extends Qa{constructor(e,t){super(),this.msg=e,this.errorDetail=t,this.name="InvalidMessageError",this.message=`Invalid message "${e}"`,this.message+=t?` ${t}.`:"."}}class us extends Qa{constructor(e,t,r,n){super(),this.viewName=e,this.sigs=t,this.args=r,this.cause=n,this.name="InvalidViewParameterError",this.message=`Invalid view arguments ${JSON.stringify(r)} received for name "${e}" expecting one of the following signatures ${JSON.stringify(t)}.`}}class ds extends Qa{constructor(e){super(),this.errorDetail=e,this.name="InvalidKeyError",this.message="Invalid private key",this.message+=e?` ${e}.`:"."}}class hs extends Qa{constructor(e,t){super(),this.publicKey=e,this.errorDetail=t,this.name="InvalidPublicKeyError",this.message=`Invalid public key "${e}"`,this.message+=t?` ${t}.`:"."}}class fs extends Qa{constructor(e,t){super(),this.contractAddress=e,this.errorDetail=t,this.name="InvalidContractAddressError",this.message=`Invalid contract address "${e}"`,this.message+=t?` ${t}.`:"."}}class ps extends Qa{constructor(e,t){super(),this.chainId=e,this.errorDetail=t,this.name="InvalidChainIdError",this.message=`Invalid chain id "${e}"`,this.message+=t?` ${t}.`:"."}}class ms extends Qa{constructor(e,t){super(),this.keyHash=e,this.errorDetail=t,this.name="InvalidKeyHashError",this.message=`Invalid public key hash "${e}"`,this.message+=t?` ${t}.`:"."}}class gs extends Qa{constructor(e,t){super(),this.operationHash=e,this.errorDetail=t,this.name="InvalidOperationHashError",this.message=`Invalid operation hash "${e}"`,this.message+=t?` ${t}.`:"."}}class vs extends Qa{constructor(e,t){super(),this.operationKind=e,this.errorDetail=t,this.name="InvalidOperationKindError",this.message=`Invalid operation kind "${e}"`,this.message+=t?` ${t}.`:"."}}class ys extends rs{constructor(e){super(),this.message=e,this.name="DeprecationError"}}class bs extends rs{constructor(e){super(),this.message=e,this.name="ProhibitedActionError"}}class ws extends Ja{constructor(e,t){super(),this.pkh=e,this.cause=t,this.name="PublicKeyNotFoundError",this.message=`Public key not found of this address "${e}" in either wallet or contract API.`}}var xs=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,_s=Math.ceil,Ss=Math.floor,ks="[BigNumber Error] ",Es=ks+"Number primitive has more than 15 significant digits: ",As=1e14,Ps=14,Os=9007199254740991,Ts=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],Cs=1e7,js=1e9;function Rs(e){var t=0|e;return e>0||e===t?t:t-1}function Is(e){for(var t,r,n=1,i=e.length,o=e[0]+"";nl^r?1:-1;for(s=(c=i.length)<(l=o.length)?c:l,a=0;ao[a]^r?1:-1;return c==l?0:c>l^r?1:-1}function Ls(e,t,r,n){if(er||e!==Ss(e))throw Error(ks+(n||"Argument")+("number"==typeof e?er?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function Ns(e){var t=e.c.length-1;return Rs(e.e/Ps)==t&&e.c[t]%2!=0}function Ds(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function zs(e,t,r){var n,i;if(t<0){for(i=r+".";++t;i+=r);e=i+e}else if(++t>(n=e.length)){for(i=r,t-=n;--t;i+=r);e+=i}else th?g.c=g.e=null:e.e=10;u/=10,l++);return void(l>h?g.c=g.e=null:(g.e=l,g.c=[e]))}m=String(e)}else{if(!xs.test(m=String(e)))return i(g,m,f);g.s=45==m.charCodeAt(0)?(m=m.slice(1),-1):1}(l=m.indexOf("."))>-1&&(m=m.replace(".","")),(u=m.search(/e/i))>0?(l<0&&(l=u),l+=+m.slice(u+1),m=m.substring(0,u)):l<0&&(l=m.length)}else{if(Ls(t,2,v.length,"Base"),10==t&&y)return S(g=new b(e),s+g.e+1,c);if(m=String(e),f="number"==typeof e){if(0*e!=0)return i(g,m,f,t);if(g.s=1/e<0?(m=m.slice(1),-1):1,b.DEBUG&&m.replace(/^0\.0*|\./,"").length>15)throw Error(Es+e)}else g.s=45===m.charCodeAt(0)?(m=m.slice(1),-1):1;for(r=v.slice(0,t),l=u=0,p=m.length;ul){l=p;continue}}else if(!a&&(m==m.toUpperCase()&&(m=m.toLowerCase())||m==m.toLowerCase()&&(m=m.toUpperCase()))){a=!0,u=-1,l=0;continue}return i(g,String(e),f,t)}f=!1,(l=(m=n(m,t,10,g.s)).indexOf("."))>-1?m=m.replace(".",""):l=m.length}for(u=0;48===m.charCodeAt(u);u++);for(p=m.length;48===m.charCodeAt(--p););if(m=m.slice(u,++p)){if(p-=u,f&&b.DEBUG&&p>15&&(e>Os||e!==Ss(e)))throw Error(Es+g.s*e);if((l=l-u-1)>h)g.c=g.e=null;else if(l=u)?Ds(d,a):zs(d,a,"0");else if(o=(e=S(new b(e),t,r)).e,s=(d=Is(e.c)).length,1==n||2==n&&(t<=o||o<=l)){for(;ss){if(--t>0)for(d+=".";t--;d+="0");}else if((t+=o-s)>0)for(o+1==s&&(d+=".");t--;d+="0");return e.s<0&&i?"-"+d:d}function x(e,t){for(var r,n,i=1,o=new b(e[0]);i=10;i/=10,n++);return(r=n+r*Ps-1)>h?e.c=e.e=null:r=10;s/=10,i++);if((o=t-i)<0)o+=Ps,a=t,c=f[l=0],u=Ss(c/p[i-a-1]%10);else if((l=_s((o+1)/Ps))>=f.length){if(!n)break e;for(;f.length<=l;f.push(0));c=u=0,i=1,a=(o%=Ps)-Ps+1}else{for(c=s=f[l],i=1;s>=10;s/=10,i++);u=(a=(o%=Ps)-Ps+i)<0?0:Ss(c/p[i-a-1]%10)}if(n=n||t<0||null!=f[l+1]||(a<0?c:c%p[i-a-1]),n=r<4?(u||n)&&(0==r||r==(e.s<0?3:2)):u>5||5==u&&(4==r||n||6==r&&(o>0?a>0?c/p[i-a]:0:f[l-1])%10&1||r==(e.s<0?8:7)),t<1||!f[0])return f.length=0,n?(t-=e.e+1,f[0]=p[(Ps-t%Ps)%Ps],e.e=-t||0):f[0]=e.e=0,e;if(0==o?(f.length=l,s=1,l--):(f.length=l+1,s=p[Ps-o],f[l]=a>0?Ss(c/p[i-a]%p[a])*s:0),n)for(;;){if(0==l){for(o=1,a=f[0];a>=10;a/=10,o++);for(a=f[0]+=s,s=1;a>=10;a/=10,s++);o!=s&&(e.e++,f[0]==As&&(f[0]=1));break}if(f[l]+=s,f[l]!=As)break;f[l--]=0,s=1}for(o=f.length;0===f[--o];f.pop());}e.e>h?e.c=e.e=null:e.e=u?Ds(t,r):zs(t,r,"0"),e.s<0?"-"+t:t)}return b.clone=e,b.ROUND_UP=0,b.ROUND_DOWN=1,b.ROUND_CEIL=2,b.ROUND_FLOOR=3,b.ROUND_HALF_UP=4,b.ROUND_HALF_DOWN=5,b.ROUND_HALF_EVEN=6,b.ROUND_HALF_CEIL=7,b.ROUND_HALF_FLOOR=8,b.EUCLID=9,b.config=b.set=function(e){var t,r;if(null!=e){if("object"!=typeof e)throw Error(ks+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(Ls(r=e[t],0,js,t),s=r),e.hasOwnProperty(t="ROUNDING_MODE")&&(Ls(r=e[t],0,8,t),c=r),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((r=e[t])&&r.pop?(Ls(r[0],-js,0,t),Ls(r[1],0,js,t),l=r[0],u=r[1]):(Ls(r,-js,js,t),l=-(u=r<0?-r:r))),e.hasOwnProperty(t="RANGE"))if((r=e[t])&&r.pop)Ls(r[0],-js,-1,t),Ls(r[1],1,js,t),d=r[0],h=r[1];else{if(Ls(r,-js,js,t),!r)throw Error(ks+t+" cannot be zero: "+r);d=-(h=r<0?-r:r)}if(e.hasOwnProperty(t="CRYPTO")){if((r=e[t])!==!!r)throw Error(ks+t+" not true or false: "+r);if(r){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw f=!r,Error(ks+"crypto unavailable");f=r}else f=r}if(e.hasOwnProperty(t="MODULO_MODE")&&(Ls(r=e[t],0,9,t),p=r),e.hasOwnProperty(t="POW_PRECISION")&&(Ls(r=e[t],0,js,t),m=r),e.hasOwnProperty(t="FORMAT")){if("object"!=typeof(r=e[t]))throw Error(ks+t+" not an object: "+r);g=r}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(r=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(r))throw Error(ks+t+" invalid: "+r);y="0123456789"==r.slice(0,10),v=r}}return{DECIMAL_PLACES:s,ROUNDING_MODE:c,EXPONENTIAL_AT:[l,u],RANGE:[d,h],CRYPTO:f,MODULO_MODE:p,POW_PRECISION:m,FORMAT:g,ALPHABET:v}},b.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!b.DEBUG)return!0;var t,r,n=e.c,i=e.e,o=e.s;e:if("[object Array]"=={}.toString.call(n)){if((1===o||-1===o)&&i>=-js&&i<=js&&i===Ss(i)){if(0===n[0]){if(0===i&&1===n.length)return!0;break e}if((t=(i+1)%Ps)<1&&(t+=Ps),String(n[0]).length==t){for(t=0;t=As||r!==Ss(r))break e;if(0!==r)return!0}}}else if(null===n&&null===i&&(null===o||1===o||-1===o))return!0;throw Error(ks+"Invalid BigNumber: "+e)},b.maximum=b.max=function(){return x(arguments,-1)},b.minimum=b.min=function(){return x(arguments,1)},b.random=function(){var e=9007199254740992,t=Math.random()*e&2097151?function(){return Ss(Math.random()*e)}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)};return function(e){var r,n,i,o,c,l=0,u=[],d=new b(a);if(null==e?e=s:Ls(e,0,js),o=_s(e/Ps),f)if(crypto.getRandomValues){for(r=crypto.getRandomValues(new Uint32Array(o*=2));l>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),r[l]=n[0],r[l+1]=n[1]):(u.push(c%1e14),l+=2);l=o/2}else{if(!crypto.randomBytes)throw f=!1,Error(ks+"crypto unavailable");for(r=crypto.randomBytes(o*=7);l=9e15?crypto.randomBytes(7).copy(r,l):(u.push(c%1e14),l+=7);l=o/7}if(!f)for(;l=10;c/=10,l++);lr-1&&(null==a[i+1]&&(a[i+1]=0),a[i+1]+=a[i]/r|0,a[i]%=r)}return a.reverse()}return function(n,i,o,a,l){var u,d,h,f,p,g,y,w,x=n.indexOf("."),_=s,S=c;for(x>=0&&(f=m,m=0,n=n.replace(".",""),g=(w=new b(i)).pow(n.length-x),m=f,w.c=t(zs(Is(g.c),g.e,"0"),10,o,e),w.e=w.c.length),h=f=(y=t(n,i,o,l?(u=v,e):(u=e,v))).length;0==y[--f];y.pop());if(!y[0])return u.charAt(0);if(x<0?--h:(g.c=y,g.e=h,g.s=a,y=(g=r(g,w,_,S,o)).c,p=g.r,h=g.e),x=y[d=h+_+1],f=o/2,p=p||d<0||null!=y[d+1],p=S<4?(null!=x||p)&&(0==S||S==(g.s<0?3:2)):x>f||x==f&&(4==S||p||6==S&&1&y[d-1]||S==(g.s<0?8:7)),d<1||!y[0])n=p?zs(u.charAt(1),-_,u.charAt(0)):u.charAt(0);else{if(y.length=d,p)for(--o;++y[--d]>o;)y[d]=0,d||(++h,y=[1].concat(y));for(f=y.length;!y[--f];);for(x=0,n="";x<=f;n+=u.charAt(y[x++]));n=zs(n,h,u.charAt(0))}return n}}(),r=function(){function e(e,t,r){var n,i,o,a,s=0,c=e.length,l=t%Cs,u=t/Cs|0;for(e=e.slice();c--;)s=((i=l*(o=e[c]%Cs)+(n=u*o+(a=e[c]/Cs|0)*l)%Cs*Cs+s)/r|0)+(n/Cs|0)+u*a,e[c]=i%r;return s&&(e=[s].concat(e)),e}function t(e,t,r,n){var i,o;if(r!=n)o=r>n?1:-1;else for(i=o=0;it[i]?1:-1;break}return o}function r(e,t,r,n){for(var i=0;r--;)e[r]-=i,i=e[r]1;e.splice(0,1));}return function(n,i,o,a,s){var c,l,u,d,h,f,p,m,g,v,y,w,x,_,k,E,A,P=n.s==i.s?1:-1,O=n.c,T=i.c;if(!O||!O[0]||!T||!T[0])return new b(n.s&&i.s&&(O?!T||O[0]!=T[0]:T)?O&&0==O[0]||!T?0*P:P/0:NaN);for(g=(m=new b(P)).c=[],P=o+(l=n.e-i.e)+1,s||(s=As,l=Rs(n.e/Ps)-Rs(i.e/Ps),P=P/Ps|0),u=0;T[u]==(O[u]||0);u++);if(T[u]>(O[u]||0)&&l--,P<0)g.push(1),d=!0;else{for(_=O.length,E=T.length,u=0,P+=2,(h=Ss(s/(T[0]+1)))>1&&(T=e(T,h,s),O=e(O,h,s),E=T.length,_=O.length),x=E,y=(v=O.slice(0,E)).length;y=s/2&&k++;do{if(h=0,(c=t(T,v,E,y))<0){if(w=v[0],E!=y&&(w=w*s+(v[1]||0)),(h=Ss(w/k))>1)for(h>=s&&(h=s-1),p=(f=e(T,h,s)).length,y=v.length;1==t(f,v,p,y);)h--,r(f,E=10;P/=10,u++);S(m,o+(m.e=u+l*Ps-1)+1,a,d)}else m.e=l,m.r=+d;return m}}(),i=function(){var e=/^(-?)0([xbo])(?=\w[\w.]*$)/i,t=/^([^.]+)\.$/,r=/^\.([^.]+)$/,n=/^-?(Infinity|NaN)$/,i=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(o,a,s,c){var l,u=s?a:a.replace(i,"");if(n.test(u))o.s=isNaN(u)?null:u<0?-1:1;else{if(!s&&(u=u.replace(e,(function(e,t,r){return l="x"==(r=r.toLowerCase())?16:"b"==r?2:8,c&&c!=l?e:t})),c&&(l=c,u=u.replace(t,"$1").replace(r,"0.$1")),a!=u))return new b(u,l);if(b.DEBUG)throw Error(ks+"Not a"+(c?" base "+c:"")+" number: "+a);o.s=null}o.c=o.e=null}}(),o.absoluteValue=o.abs=function(){var e=new b(this);return e.s<0&&(e.s=1),e},o.comparedTo=function(e,t){return Ms(this,new b(e,t))},o.decimalPlaces=o.dp=function(e,t){var r,n,i,o=this;if(null!=e)return Ls(e,0,js),null==t?t=c:Ls(t,0,8),S(new b(o),e+o.e+1,t);if(!(r=o.c))return null;if(n=((i=r.length-1)-Rs(this.e/Ps))*Ps,i=r[i])for(;i%10==0;i/=10,n--);return n<0&&(n=0),n},o.dividedBy=o.div=function(e,t){return r(this,new b(e,t),s,c)},o.dividedToIntegerBy=o.idiv=function(e,t){return r(this,new b(e,t),0,1)},o.exponentiatedBy=o.pow=function(e,t){var r,n,i,o,s,l,u,d,h=this;if((e=new b(e)).c&&!e.isInteger())throw Error(ks+"Exponent not an integer: "+k(e));if(null!=t&&(t=new b(t)),s=e.e>14,!h.c||!h.c[0]||1==h.c[0]&&!h.e&&1==h.c.length||!e.c||!e.c[0])return d=new b(Math.pow(+k(h),s?e.s*(2-Ns(e)):+k(e))),t?d.mod(t):d;if(l=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new b(NaN);(n=!l&&h.isInteger()&&t.isInteger())&&(h=h.mod(t))}else{if(e.e>9&&(h.e>0||h.e<-1||(0==h.e?h.c[0]>1||s&&h.c[1]>=24e7:h.c[0]<8e13||s&&h.c[0]<=9999975e7)))return o=h.s<0&&Ns(e)?-0:0,h.e>-1&&(o=1/o),new b(l?1/o:o);m&&(o=_s(m/Ps+2))}for(s?(r=new b(.5),l&&(e.s=1),u=Ns(e)):u=(i=Math.abs(+k(e)))%2,d=new b(a);;){if(u){if(!(d=d.times(h)).c)break;o?d.c.length>o&&(d.c.length=o):n&&(d=d.mod(t))}if(i){if(0===(i=Ss(i/2)))break;u=i%2}else if(S(e=e.times(r),e.e+1,1),e.e>14)u=Ns(e);else{if(0===(i=+k(e)))break;u=i%2}h=h.times(h),o?h.c&&h.c.length>o&&(h.c.length=o):n&&(h=h.mod(t))}return n?d:(l&&(d=a.div(d)),t?d.mod(t):o?S(d,m,c,undefined):d)},o.integerValue=function(e){var t=new b(this);return null==e?e=c:Ls(e,0,8),S(t,t.e+1,e)},o.isEqualTo=o.eq=function(e,t){return 0===Ms(this,new b(e,t))},o.isFinite=function(){return!!this.c},o.isGreaterThan=o.gt=function(e,t){return Ms(this,new b(e,t))>0},o.isGreaterThanOrEqualTo=o.gte=function(e,t){return 1===(t=Ms(this,new b(e,t)))||0===t},o.isInteger=function(){return!!this.c&&Rs(this.e/Ps)>this.c.length-2},o.isLessThan=o.lt=function(e,t){return Ms(this,new b(e,t))<0},o.isLessThanOrEqualTo=o.lte=function(e,t){return-1===(t=Ms(this,new b(e,t)))||0===t},o.isNaN=function(){return!this.s},o.isNegative=function(){return this.s<0},o.isPositive=function(){return this.s>0},o.isZero=function(){return!!this.c&&0==this.c[0]},o.minus=function(e,t){var r,n,i,o,a=this,s=a.s;if(t=(e=new b(e,t)).s,!s||!t)return new b(NaN);if(s!=t)return e.s=-t,a.plus(e);var l=a.e/Ps,u=e.e/Ps,d=a.c,h=e.c;if(!l||!u){if(!d||!h)return d?(e.s=-t,e):new b(h?a:NaN);if(!d[0]||!h[0])return h[0]?(e.s=-t,e):new b(d[0]?a:3==c?-0:0)}if(l=Rs(l),u=Rs(u),d=d.slice(),s=l-u){for((o=s<0)?(s=-s,i=d):(u=l,i=h),i.reverse(),t=s;t--;i.push(0));i.reverse()}else for(n=(o=(s=d.length)<(t=h.length))?s:t,s=t=0;t0)for(;t--;d[r++]=0);for(t=As-1;n>s;){if(d[--n]=0;){for(r=0,h=w[i]%g,f=w[i]/g|0,o=i+(a=c);o>i;)r=((l=h*(l=y[--a]%g)+(s=f*l+(u=y[a]/g|0)*h)%g*g+p[o]+r)/m|0)+(s/g|0)+f*u,p[o--]=l%m;p[o]=r}return r?++n:p.splice(0,1),_(e,p,n)},o.negated=function(){var e=new b(this);return e.s=-e.s||null,e},o.plus=function(e,t){var r,n=this,i=n.s;if(t=(e=new b(e,t)).s,!i||!t)return new b(NaN);if(i!=t)return e.s=-t,n.minus(e);var o=n.e/Ps,a=e.e/Ps,s=n.c,c=e.c;if(!o||!a){if(!s||!c)return new b(i/0);if(!s[0]||!c[0])return c[0]?e:new b(s[0]?n:0*i)}if(o=Rs(o),a=Rs(a),s=s.slice(),i=o-a){for(i>0?(a=o,r=c):(i=-i,r=s),r.reverse();i--;r.push(0));r.reverse()}for((i=s.length)-(t=c.length)<0&&(r=c,c=s,s=r,t=i),i=0;t;)i=(s[--t]=s[t]+c[t]+i)/As|0,s[t]=As===s[t]?0:s[t]%As;return i&&(s=[i].concat(s),++a),_(e,s,a)},o.precision=o.sd=function(e,t){var r,n,i,o=this;if(null!=e&&e!==!!e)return Ls(e,1,js),null==t?t=c:Ls(t,0,8),S(new b(o),e,t);if(!(r=o.c))return null;if(n=(i=r.length-1)*Ps+1,i=r[i]){for(;i%10==0;i/=10,n--);for(i=r[0];i>=10;i/=10,n++);}return e&&o.e+1>n&&(n=o.e+1),n},o.shiftedBy=function(e){return Ls(e,-9007199254740991,Os),this.times("1e"+e)},o.squareRoot=o.sqrt=function(){var e,t,n,i,o,a=this,l=a.c,u=a.s,d=a.e,h=s+4,f=new b("0.5");if(1!==u||!l||!l[0])return new b(!u||u<0&&(!l||l[0])?NaN:l?a:1/0);if(0==(u=Math.sqrt(+k(a)))||u==1/0?(((t=Is(l)).length+d)%2==0&&(t+="0"),u=Math.sqrt(+t),d=Rs((d+1)/2)-(d<0||d%2),n=new b(t=u==1/0?"5e"+d:(t=u.toExponential()).slice(0,t.indexOf("e")+1)+d)):n=new b(u+""),n.c[0])for((u=(d=n.e)+h)<3&&(u=0);;)if(o=n,n=f.times(o.plus(r(a,o,h,1))),Is(o.c).slice(0,u)===(t=Is(n.c)).slice(0,u)){if(n.e0&&p>0){for(o=p%s||s,u=f.substr(0,o);o0&&(u+=l+f.slice(o)),h&&(u="-"+u)}n=d?u+(r.decimalSeparator||"")+((c=+r.fractionGroupSize)?d.replace(new RegExp("\\d{"+c+"}\\B","g"),"$&"+(r.fractionGroupSeparator||"")):d):u}return(r.prefix||"")+n+(r.suffix||"")},o.toFraction=function(e){var t,n,i,o,s,l,u,d,f,p,m,g,v=this,y=v.c;if(null!=e&&(!(u=new b(e)).isInteger()&&(u.c||1!==u.s)||u.lt(a)))throw Error(ks+"Argument "+(u.isInteger()?"out of range: ":"not an integer: ")+k(u));if(!y)return new b(v);for(t=new b(a),f=n=new b(a),i=d=new b(a),g=Is(y),s=t.e=g.length-v.e-1,t.c[0]=Ts[(l=s%Ps)<0?Ps+l:l],e=!e||u.comparedTo(t)>0?s>0?t:f:u,l=h,h=1/0,u=new b(g),d.c[0]=0;p=r(u,t,0,1),1!=(o=n.plus(p.times(i))).comparedTo(e);)n=i,i=o,f=d.plus(p.times(o=f)),d=o,t=u.minus(p.times(o=t)),u=o;return o=r(e.minus(n),i,0,1),d=d.plus(o.times(f)),n=n.plus(o.times(i)),d.s=f.s=v.s,m=r(f,i,s*=2,c).minus(v).abs().comparedTo(r(d,n,s,c).minus(v).abs())<1?[f,i]:[d,n],h=l,m},o.toNumber=function(){return+k(this)},o.toPrecision=function(e,t){return null!=e&&Ls(e,1,js),w(this,e,t,2)},o.toString=function(e){var t,r=this,i=r.s,o=r.e;return null===o?i?(t="Infinity",i<0&&(t="-"+t)):t="NaN":(null==e?t=o<=l||o>=u?Ds(Is(r.c),o):zs(Is(r.c),o,"0"):10===e&&y?t=zs(Is((r=S(new b(r),s+o+1,c)).c),r.e,"0"):(Ls(e,2,v.length,"Base"),t=n(zs(Is(r.c),o,"0"),10,e,i,!0)),i<0&&r.c[0]&&(t="-"+t)),t},o.valueOf=o.toJSON=function(){return k(this)},o._isBigNumber=!0,o[Symbol.toStringTag]="BigNumber",o[Symbol.for("nodejs.util.inspect.custom")]=o.valueOf,null!=t&&b.set(t),b}();const Us=Bs;var Fs,$s=r(7007),Hs=r.n($s),Vs=r(1808),qs=r.n(Vs);!function(e){e.TZ1="tz1",e.TZ2="tz2",e.TZ3="tz3",e.TZ4="tz4",e.KT="KT",e.KT1="KT1",e.EDSK2="edsk2",e.SPSK="spsk",e.P2SK="p2sk",e.EDPK="edpk",e.SPPK="sppk",e.P2PK="p2pk",e.BLPK="BLpk",e.EDESK="edesk",e.SPESK="spesk",e.P2ESK="p2esk",e.EDSK="edsk",e.EDSIG="edsig",e.SPSIG="spsig",e.P2SIG="p2sig",e.SIG="sig",e.NET="Net",e.NCE="nce",e.B="B",e.O="o",e.LO="Lo",e.LLO="LLo",e.P="P",e.CO="Co",e.ID="id",e.EXPR="expr",e.TZ="TZ",e.VH="vh",e.SASK="sask",e.ZET1="zet1",e.TXR1="txr1",e.TXI="txi",e.TXM="txm",e.TXC="txc",e.TXMR="txmr",e.TXRL="txM",e.TXW="txw",e.SR1="sr1",e.SRC1="src1"}(Fs||(Fs={}));const Ks={[Fs.TZ1]:new Uint8Array([6,161,159]),[Fs.TZ2]:new Uint8Array([6,161,161]),[Fs.TZ3]:new Uint8Array([6,161,164]),[Fs.TZ4]:new Uint8Array([6,161,166]),[Fs.KT]:new Uint8Array([2,90,121]),[Fs.KT1]:new Uint8Array([2,90,121]),[Fs.EDSK]:new Uint8Array([43,246,78,7]),[Fs.EDSK2]:new Uint8Array([13,15,58,7]),[Fs.SPSK]:new Uint8Array([17,162,224,201]),[Fs.P2SK]:new Uint8Array([16,81,238,189]),[Fs.EDPK]:new Uint8Array([13,15,37,217]),[Fs.SPPK]:new Uint8Array([3,254,226,86]),[Fs.P2PK]:new Uint8Array([3,178,139,127]),[Fs.BLPK]:new Uint8Array([6,149,135,204]),[Fs.EDESK]:new Uint8Array([7,90,60,179,41]),[Fs.SPESK]:new Uint8Array([9,237,241,174,150]),[Fs.P2ESK]:new Uint8Array([9,48,57,115,171]),[Fs.EDSIG]:new Uint8Array([9,245,205,134,18]),[Fs.SPSIG]:new Uint8Array([13,115,101,19,63]),[Fs.P2SIG]:new Uint8Array([54,240,44,52]),[Fs.SIG]:new Uint8Array([4,130,43]),[Fs.NET]:new Uint8Array([87,82,0]),[Fs.NCE]:new Uint8Array([69,220,169]),[Fs.B]:new Uint8Array([1,52]),[Fs.O]:new Uint8Array([5,116]),[Fs.LO]:new Uint8Array([133,233]),[Fs.LLO]:new Uint8Array([29,159,109]),[Fs.P]:new Uint8Array([2,170]),[Fs.CO]:new Uint8Array([79,179]),[Fs.ID]:new Uint8Array([153,103]),[Fs.EXPR]:new Uint8Array([13,44,64,27]),[Fs.TZ]:new Uint8Array([2,90,121]),[Fs.VH]:new Uint8Array([1,106,242]),[Fs.SASK]:new Uint8Array([11,237,20,92]),[Fs.ZET1]:new Uint8Array([18,71,40,223]),[Fs.TXR1]:new Uint8Array([1,128,120,31]),[Fs.TXI]:new Uint8Array([79,148,196]),[Fs.TXM]:new Uint8Array([79,149,30]),[Fs.TXC]:new Uint8Array([79,148,17]),[Fs.TXMR]:new Uint8Array([18,7,206,87]),[Fs.TXRL]:new Uint8Array([79,146,82]),[Fs.TXW]:new Uint8Array([79,150,72]),[Fs.SR1]:new Uint8Array([6,124,117]),[Fs.SRC1]:new Uint8Array([17,165,134,138])},Ws={[Fs.TZ1]:20,[Fs.TZ2]:20,[Fs.TZ3]:20,[Fs.TZ4]:20,[Fs.KT]:20,[Fs.KT1]:20,[Fs.EDPK]:32,[Fs.SPPK]:33,[Fs.P2PK]:33,[Fs.BLPK]:48,[Fs.EDSIG]:64,[Fs.SPSIG]:64,[Fs.P2SIG]:64,[Fs.SIG]:64,[Fs.NET]:4,[Fs.B]:32,[Fs.P]:32,[Fs.O]:32,[Fs.VH]:32,[Fs.SASK]:169,[Fs.ZET1]:43,[Fs.TXR1]:20,[Fs.TXI]:32,[Fs.TXM]:32,[Fs.TXC]:32,[Fs.TXMR]:32,[Fs.TXRL]:32,[Fs.TXW]:32,[Fs.SR1]:20,[Fs.SRC1]:32};class Gs extends rs{constructor(e,t){super(),this.value=e,this.desiredType=t,this.name="ValueConversionError",this.message=`Unable to convert ${e} to a ${t}`}}var Zs;function Ys(e){return"string"===typeof e&&e in Ks}function Xs(e,t){const r=new RegExp(`^(${t.join("|")})`).exec(e);if(!r||0===r.length)return Zs.NO_PREFIX_MATCHED;const n=r[0];if(!Ys(n))return Zs.NO_PREFIX_MATCHED;e.includes("%")&&(e=e.split("%")[0]);if(!/^(KT1\w{33})$/.test(e)&&"KT1"===n)return Zs.INVALID_CHECKSUM;let i=Xa().decodeUnsafe(e);return i?(i=i.slice(Ks[n].length),i.length!==Ws[n]?Zs.INVALID_LENGTH:Zs.VALID):Zs.INVALID_CHECKSUM}!function(e){e[e.NO_PREFIX_MATCHED=0]="NO_PREFIX_MATCHED",e[e.INVALID_CHECKSUM=1]="INVALID_CHECKSUM",e[e.INVALID_LENGTH=2]="INVALID_LENGTH",e[e.VALID=3]="VALID"}(Zs||(Zs={}));const Js=[Fs.TZ1,Fs.TZ2,Fs.TZ3,Fs.TZ4],Qs=[Fs.KT1,Fs.TXR1],ec=[Fs.EDSIG,Fs.P2SIG,Fs.SPSIG,Fs.SIG],tc=[Fs.EDPK,Fs.SPPK,Fs.P2PK,Fs.BLPK],rc=[Fs.O],nc=(Fs.P,[Fs.B]),ic=[Fs.SR1];function oc(e){return Xs(e,[...Js,...Qs,...ic])}function ac(e){return Xs(e,[Fs.NET])}function sc(e){return Xs(e,Qs)}function cc(e){return Xs(e,Js)}function lc(e){return Xs(e,ec)}function uc(e){return Xs(e,tc)}function dc(e){return Xs(e,rc)}function hc(e){switch(e){case Zs.NO_PREFIX_MATCHED:return"with unsupported prefix";case Zs.INVALID_CHECKSUM:return"failed checksum";case Zs.INVALID_LENGTH:return"with incorrect length";default:return""}}const fc=6,pc=3;function mc(e){switch(e){case"tz":return fc;case"mtz":return pc;default:return 0}}function gc(e="mutez",t="mutez",r){const n=new Us(r);return n.isNaN()?r:n.multipliedBy(Math.pow(10,mc(e))).dividedBy(Math.pow(10,mc(t)))}function vc(e,t){const r="string"===typeof e?Uint8Array.from(qa.Buffer.from(e,"hex")):e,n=new Uint8Array(t.length+r.length);return n.set(t),n.set(r,t.length),Xa().encode(qa.Buffer.from(n.buffer))}const yc=(e,t)=>Xa().decode(e).slice(t.length);function bc(e){if("00"===e.substring(0,2)){const t={"0000":Ks.tz1,"0001":Ks.tz2,"0002":Ks.tz3};return vc(e.substring(4),t[e.substring(0,4)])}return"02"===e.substring(0,2)?vc(e.substring(2,e.length-2),Ks.txr1):vc(e.substring(2,42),Ks.KT)}function wc(e){return vc(e,Ks.tz4)}function xc(e){if("0"===e[0]){const t={"00":new Uint8Array([6,161,159]),"01":new Uint8Array([6,161,161]),"02":new Uint8Array([6,161,164])};return vc(e.substring(2),t[e.substring(0,2)])}}const _c=e=>{if(e.length%2!==0)throw new cs(e,": Expecting even number of characters");const t=Ac(e);if(!t.match(/^([\da-f]{2})*$/gi))throw new cs(e,": Only characters 0-9, a-f and A-F are expected. Optionally, it can be prefixed with '0x'");const r=new Uint8Array(t.length/2);let n=0;for(let i=0;i{const r=new Uint8Array(e.length+t.length);return r.set(e),r.set(t,e.length),r},kc=e=>{const t=[];return e.forEach((e=>{const r=`00${e.toString(16)}`.slice(-2);t.push(r)})),t.join("")};function Ec(e){const t=Ac(e);if(!t.match(/^(0x)?([\da-f]{2})*$/gi))throw new cs(e,": Expecting even number of characters: 0-9, a-z, A-Z, optionally prefixed with 0x");return qa.Buffer.from(t,"hex")}function Ac(e){return e.startsWith("0x")?e.slice(2):e}var Pc=r(4872).Buffer;const Oc=async(e,t)=>Tc(Pc.from(e,"utf-8"),t,6e5),Tc=async(e,t,r)=>{const n={name:"PBKDF2",salt:t,iterations:r,hash:"SHA-256"},i=await crypto.subtle.importKey("raw",e,n.name,!1,["deriveKey"]);return await crypto.subtle.deriveKey(n,i,{name:jc,length:256},!1,["encrypt","decrypt"])};var Cc=r(4872).Buffer;const jc="AES-GCM",Rc=async(e,t)=>{const r=crypto.getRandomValues(new Uint8Array(32)),n=await Oc(t,r),i=crypto.getRandomValues(new Uint8Array(12)),o=await crypto.subtle.encrypt({name:jc,iv:i},n,Cc.from(e,"utf-8"));return{iv:kc(Cc.from(i)),salt:kc(Cc.from(r)),data:kc(Cc.from(o))}},Ic=async(e,t,r="V2")=>{const{iv:n,salt:i,data:o}=e;try{const e="V2"===r?await Oc(t,Ec(i)):await(async(e,t)=>Tc(Pc.alloc(32,e,"utf-8"),t,1e4))(t,Ec(i)),a=await crypto.subtle.decrypt({name:jc,iv:Ec(n)},e,Ec(o));return Cc.from(a).toString("utf-8")}catch(a){throw new Error("Error decrypting data: Invalid password")}},Mc=La("accounts/changeMnemonicPassword",(async({currentPassword:e,newPassword:t},{getState:r})=>{if(e===t)throw new Error("New password must be different from the current password");const{items:n,seedPhrases:i}=r().accounts;if(0===n.filter((e=>"mnemonic"===e.type)).length)throw new Error("No mnemonic accounts found");const o=await Promise.all(Object.entries(i).map((async([r,n])=>{if(!n)throw new Error("No encrypted mnemonic found");try{const i=await Ic(n,e);return[r,await Rc(i,t)]}catch(i){throw new Error(i.message)}})));return{newEncryptedMnemonics:(0,Va.fromPairs)(o)}})),Lc={items:[],seedPhrases:{},secretKeys:{}},Nc=Ta({name:"accounts",initialState:Lc,extraReducers:e=>{e.addCase(Mc.fulfilled,((e,t)=>{const{newEncryptedMnemonics:r}=t.payload;e.seedPhrases=r}))},reducers:{reset:()=>Lc,removeMnemonicAndAccounts:(e,{payload:t})=>{const{fingerPrint:r}=t,n=e.items.filter((e=>!("mnemonic"===e.type&&e.seedFingerPrint===r)));e.items=n,delete e.seedPhrases[r]},removeNonMnemonicAccounts:(e,{payload:t})=>{e.items=(0,Va.remove)(e.items,(e=>"mnemonic"===e.type||e.type!==t.accountType))},removeAccount:(e,{payload:t})=>{(0,Va.remove)(e.items,(e=>e.address.pkh===t.address.pkh))},renameAccount:(e,{payload:t})=>{const{account:r,newName:n}=t;if(0===n.length)throw new Error("Cannot rename account to an empty name.");if(e.items.find((e=>e.label===n)))throw new Error(`Cannot rename account ${r.address.pkh} to ${n} since the name already exists.`);const i=e.items.find((e=>e.address.pkh===r.address.pkh&&e.label===r.label));i&&(i.label=n)},addAccount:(e,{payload:t})=>{e.items=Dc(e.items,[t])},addMnemonicAccounts:(e,{payload:{encryptedMnemonic:t,accounts:r,seedFingerprint:n}})=>{e.items=Dc(e.items,r),e.seedPhrases[n]=t},addMockMnemonicAccounts:(e,{payload:t})=>{e.items=Dc(e.items,t)},addSecretKey:(e,{payload:{pkh:t,encryptedSecretKey:r}})=>{e.secretKeys[t]=r},removeSecretKey:(e,{payload:t})=>{delete e.secretKeys[t.address.pkh]}}}),Dc=(e,t)=>(t.forEach((t=>{if(e.some((e=>e.address.pkh===t.address.pkh)))throw new Error(`Can't add account ${t.address.pkh} in store since it already exists.`)})),[...e,...t]);Nc.actions;var zc,Bc;!function(e){e.assertEqual=e=>e,e.assertIs=function(e){},e.assertNever=function(e){throw new Error},e.arrayToEnum=e=>{const t={};for(const r of e)t[r]=r;return t},e.getValidEnumValues=t=>{const r=e.objectKeys(t).filter((e=>"number"!==typeof t[t[e]])),n={};for(const e of r)n[e]=t[e];return e.objectValues(n)},e.objectValues=t=>e.objectKeys(t).map((function(e){return t[e]})),e.objectKeys="function"===typeof Object.keys?e=>Object.keys(e):e=>{const t=[];for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.push(r);return t},e.find=(e,t)=>{for(const r of e)if(t(r))return r},e.isInteger="function"===typeof Number.isInteger?e=>Number.isInteger(e):e=>"number"===typeof e&&isFinite(e)&&Math.floor(e)===e,e.joinValues=function(e,t=" | "){return e.map((e=>"string"===typeof e?`'${e}'`:e)).join(t)},e.jsonStringifyReplacer=(e,t)=>"bigint"===typeof t?t.toString():t}(zc||(zc={})),function(e){e.mergeShapes=(e,t)=>({...e,...t})}(Bc||(Bc={}));const Uc=zc.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Fc=e=>{switch(typeof e){case"undefined":return Uc.undefined;case"string":return Uc.string;case"number":return isNaN(e)?Uc.nan:Uc.number;case"boolean":return Uc.boolean;case"function":return Uc.function;case"bigint":return Uc.bigint;case"symbol":return Uc.symbol;case"object":return Array.isArray(e)?Uc.array:null===e?Uc.null:e.then&&"function"===typeof e.then&&e.catch&&"function"===typeof e.catch?Uc.promise:"undefined"!==typeof Map&&e instanceof Map?Uc.map:"undefined"!==typeof Set&&e instanceof Set?Uc.set:"undefined"!==typeof Date&&e instanceof Date?Uc.date:Uc.object;default:return Uc.unknown}},$c=zc.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class Hc extends Error{constructor(e){super(),this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=(e=[])=>{this.issues=[...this.issues,...e]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const t=e||function(e){return e.message},r={_errors:[]},n=e=>{for(const i of e.issues)if("invalid_union"===i.code)i.unionErrors.map(n);else if("invalid_return_type"===i.code)n(i.returnTypeError);else if("invalid_arguments"===i.code)n(i.argumentsError);else if(0===i.path.length)r._errors.push(t(i));else{let e=r,n=0;for(;ne.message)){const t={},r=[];for(const n of this.issues)n.path.length>0?(t[n.path[0]]=t[n.path[0]]||[],t[n.path[0]].push(e(n))):r.push(e(n));return{formErrors:r,fieldErrors:t}}get formErrors(){return this.flatten()}}Hc.create=e=>new Hc(e);const Vc=(e,t)=>{let r;switch(e.code){case $c.invalid_type:r=e.received===Uc.undefined?"Required":`Expected ${e.expected}, received ${e.received}`;break;case $c.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,zc.jsonStringifyReplacer)}`;break;case $c.unrecognized_keys:r=`Unrecognized key(s) in object: ${zc.joinValues(e.keys,", ")}`;break;case $c.invalid_union:r="Invalid input";break;case $c.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${zc.joinValues(e.options)}`;break;case $c.invalid_enum_value:r=`Invalid enum value. Expected ${zc.joinValues(e.options)}, received '${e.received}'`;break;case $c.invalid_arguments:r="Invalid function arguments";break;case $c.invalid_return_type:r="Invalid function return type";break;case $c.invalid_date:r="Invalid date";break;case $c.invalid_string:"object"===typeof e.validation?"includes"in e.validation?(r=`Invalid input: must include "${e.validation.includes}"`,"number"===typeof e.validation.position&&(r=`${r} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?r=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?r=`Invalid input: must end with "${e.validation.endsWith}"`:zc.assertNever(e.validation):r="regex"!==e.validation?`Invalid ${e.validation}`:"Invalid";break;case $c.too_small:r="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:"number"===e.type?`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:"date"===e.type?`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:"Invalid input";break;case $c.too_big:r="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:"number"===e.type?`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"bigint"===e.type?`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"date"===e.type?`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:"Invalid input";break;case $c.custom:r="Invalid input";break;case $c.invalid_intersection_types:r="Intersection results could not be merged";break;case $c.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case $c.not_finite:r="Number must be finite";break;default:r=t.defaultError,zc.assertNever(e)}return{message:r}};let qc=Vc;function Kc(){return qc}const Wc=e=>{const{data:t,path:r,errorMaps:n,issueData:i}=e,o=[...r,...i.path||[]],a={...i,path:o};let s="";const c=n.filter((e=>!!e)).slice().reverse();for(const l of c)s=l(a,{data:t,defaultError:s}).message;return{...i,path:o,message:i.message||s}};function Gc(e,t){const r=Wc({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,Kc(),Vc].filter((e=>!!e))});e.common.issues.push(r)}class Zc{constructor(){this.value="valid"}dirty(){"valid"===this.value&&(this.value="dirty")}abort(){"aborted"!==this.value&&(this.value="aborted")}static mergeArray(e,t){const r=[];for(const n of t){if("aborted"===n.status)return Yc;"dirty"===n.status&&e.dirty(),r.push(n.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,t){const r=[];for(const n of t)r.push({key:await n.key,value:await n.value});return Zc.mergeObjectSync(e,r)}static mergeObjectSync(e,t){const r={};for(const n of t){const{key:t,value:i}=n;if("aborted"===t.status)return Yc;if("aborted"===i.status)return Yc;"dirty"===t.status&&e.dirty(),"dirty"===i.status&&e.dirty(),"__proto__"===t.value||"undefined"===typeof i.value&&!n.alwaysSet||(r[t.value]=i.value)}return{status:e.value,value:r}}}const Yc=Object.freeze({status:"aborted"}),Xc=e=>({status:"dirty",value:e}),Jc=e=>({status:"valid",value:e}),Qc=e=>"aborted"===e.status,el=e=>"dirty"===e.status,tl=e=>"valid"===e.status,rl=e=>"undefined"!==typeof Promise&&e instanceof Promise;var nl;!function(e){e.errToObj=e=>"string"===typeof e?{message:e}:e||{},e.toString=e=>"string"===typeof e?e:null===e||void 0===e?void 0:e.message}(nl||(nl={}));class il{constructor(e,t,r,n){this._cachedPath=[],this.parent=e,this.data=t,this._path=r,this._key=n}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const ol=(e,t)=>{if(tl(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new Hc(e.common.issues);return this._error=t,this._error}}};function al(e){if(!e)return{};const{errorMap:t,invalid_type_error:r,required_error:n,description:i}=e;if(t&&(r||n))throw new Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');if(t)return{errorMap:t,description:i};return{errorMap:(e,t)=>"invalid_type"!==e.code?{message:t.defaultError}:"undefined"===typeof t.data?{message:null!==n&&void 0!==n?n:t.defaultError}:{message:null!==r&&void 0!==r?r:t.defaultError},description:i}}class sl{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return Fc(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:Fc(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Zc,ctx:{common:e.parent.common,data:e.data,parsedType:Fc(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(rl(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const r=this.safeParse(e,t);if(r.success)return r.data;throw r.error}safeParse(e,t){var r;const n={common:{issues:[],async:null!==(r=null===t||void 0===t?void 0:t.async)&&void 0!==r&&r,contextualErrorMap:null===t||void 0===t?void 0:t.errorMap},path:(null===t||void 0===t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Fc(e)},i=this._parseSync({data:e,path:n.path,parent:n});return ol(n,i)}async parseAsync(e,t){const r=await this.safeParseAsync(e,t);if(r.success)return r.data;throw r.error}async safeParseAsync(e,t){const r={common:{issues:[],contextualErrorMap:null===t||void 0===t?void 0:t.errorMap,async:!0},path:(null===t||void 0===t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Fc(e)},n=this._parse({data:e,path:r.path,parent:r}),i=await(rl(n)?n:Promise.resolve(n));return ol(r,i)}refine(e,t){const r=e=>"string"===typeof t||"undefined"===typeof t?{message:t}:"function"===typeof t?t(e):t;return this._refinement(((t,n)=>{const i=e(t),o=()=>n.addIssue({code:$c.custom,...r(t)});return"undefined"!==typeof Promise&&i instanceof Promise?i.then((e=>!!e||(o(),!1))):!!i||(o(),!1)}))}refinement(e,t){return this._refinement(((r,n)=>!!e(r)||(n.addIssue("function"===typeof t?t(r,n):t),!1)))}_refinement(e){return new Gl({schema:this,typeName:au.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return Zl.create(this,this._def)}nullable(){return Yl.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Tl.create(this,this._def)}promise(){return Wl.create(this,this._def)}or(e){return Rl.create([this,e],this._def)}and(e){return Nl.create(this,e,this._def)}transform(e){return new Gl({...al(this._def),schema:this,typeName:au.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t="function"===typeof e?e:()=>e;return new Xl({...al(this._def),innerType:this,defaultValue:t,typeName:au.ZodDefault})}brand(){return new tu({typeName:au.ZodBranded,type:this,...al(this._def)})}catch(e){const t="function"===typeof e?e:()=>e;return new Jl({...al(this._def),innerType:this,catchValue:t,typeName:au.ZodCatch})}describe(e){return new(0,this.constructor)({...this._def,description:e})}pipe(e){return ru.create(this,e)}readonly(){return nu.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const cl=/^c[^\s-]{8,}$/i,ll=/^[a-z][a-z0-9]*$/,ul=/^[0-9A-HJKMNP-TV-Z]{26}$/,dl=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,hl=/^(?!\.)(?!.*\.\.)([A-Z0-9_+-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i;let fl;const pl=/^(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))$/,ml=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/;class gl extends sl{_parse(e){this._def.coerce&&(e.data=String(e.data));if(this._getType(e)!==Uc.string){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.string,received:t.parsedType}),Yc}const t=new Zc;let r;for(const a of this._def.checks)if("min"===a.kind)e.data.lengtha.value&&(r=this._getOrReturnCtx(e,r),Gc(r,{code:$c.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),t.dirty());else if("length"===a.kind){const n=e.data.length>a.value,i=e.data.lengthe.test(t)),{validation:t,code:$c.invalid_string,...nl.errToObj(r)})}_addCheck(e){return new gl({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...nl.errToObj(e)})}url(e){return this._addCheck({kind:"url",...nl.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...nl.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...nl.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...nl.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...nl.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...nl.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...nl.errToObj(e)})}datetime(e){var t;return"string"===typeof e?this._addCheck({kind:"datetime",precision:null,offset:!1,message:e}):this._addCheck({kind:"datetime",precision:"undefined"===typeof(null===e||void 0===e?void 0:e.precision)?null:null===e||void 0===e?void 0:e.precision,offset:null!==(t=null===e||void 0===e?void 0:e.offset)&&void 0!==t&&t,...nl.errToObj(null===e||void 0===e?void 0:e.message)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...nl.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:null===t||void 0===t?void 0:t.position,...nl.errToObj(null===t||void 0===t?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...nl.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...nl.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...nl.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...nl.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...nl.errToObj(t)})}nonempty(e){return this.min(1,nl.errToObj(e))}trim(){return new gl({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new gl({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new gl({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((e=>"datetime"===e.kind))}get isEmail(){return!!this._def.checks.find((e=>"email"===e.kind))}get isURL(){return!!this._def.checks.find((e=>"url"===e.kind))}get isEmoji(){return!!this._def.checks.find((e=>"emoji"===e.kind))}get isUUID(){return!!this._def.checks.find((e=>"uuid"===e.kind))}get isCUID(){return!!this._def.checks.find((e=>"cuid"===e.kind))}get isCUID2(){return!!this._def.checks.find((e=>"cuid2"===e.kind))}get isULID(){return!!this._def.checks.find((e=>"ulid"===e.kind))}get isIP(){return!!this._def.checks.find((e=>"ip"===e.kind))}get minLength(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.valuen?r:n;return parseInt(e.toFixed(i).replace(".",""))%parseInt(t.toFixed(i).replace(".",""))/Math.pow(10,i)}gl.create=e=>{var t;return new gl({checks:[],typeName:au.ZodString,coerce:null!==(t=null===e||void 0===e?void 0:e.coerce)&&void 0!==t&&t,...al(e)})};class yl extends sl{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){this._def.coerce&&(e.data=Number(e.data));if(this._getType(e)!==Uc.number){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.number,received:t.parsedType}),Yc}let t;const r=new Zc;for(const n of this._def.checks)if("int"===n.kind)zc.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),Gc(t,{code:$c.invalid_type,expected:"integer",received:"float",message:n.message}),r.dirty());else if("min"===n.kind){(n.inclusive?e.datan.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),Gc(t,{code:$c.too_big,maximum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),r.dirty())}else"multipleOf"===n.kind?0!==vl(e.data,n.value)&&(t=this._getOrReturnCtx(e,t),Gc(t,{code:$c.not_multiple_of,multipleOf:n.value,message:n.message}),r.dirty()):"finite"===n.kind?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),Gc(t,{code:$c.not_finite,message:n.message}),r.dirty()):zc.assertNever(n);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,nl.toString(t))}gt(e,t){return this.setLimit("min",e,!1,nl.toString(t))}lte(e,t){return this.setLimit("max",e,!0,nl.toString(t))}lt(e,t){return this.setLimit("max",e,!1,nl.toString(t))}setLimit(e,t,r,n){return new yl({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:nl.toString(n)}]})}_addCheck(e){return new yl({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:nl.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:nl.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:nl.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:nl.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:nl.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:nl.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:nl.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:nl.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:nl.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value"int"===e.kind||"multipleOf"===e.kind&&zc.isInteger(e.value)))}get isFinite(){let e=null,t=null;for(const r of this._def.checks){if("finite"===r.kind||"int"===r.kind||"multipleOf"===r.kind)return!0;"min"===r.kind?(null===t||r.value>t)&&(t=r.value):"max"===r.kind&&(null===e||r.valuenew yl({checks:[],typeName:au.ZodNumber,coerce:(null===e||void 0===e?void 0:e.coerce)||!1,...al(e)});class bl extends sl{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){this._def.coerce&&(e.data=BigInt(e.data));if(this._getType(e)!==Uc.bigint){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.bigint,received:t.parsedType}),Yc}let t;const r=new Zc;for(const n of this._def.checks)if("min"===n.kind){(n.inclusive?e.datan.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),Gc(t,{code:$c.too_big,type:"bigint",maximum:n.value,inclusive:n.inclusive,message:n.message}),r.dirty())}else"multipleOf"===n.kind?e.data%n.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),Gc(t,{code:$c.not_multiple_of,multipleOf:n.value,message:n.message}),r.dirty()):zc.assertNever(n);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,nl.toString(t))}gt(e,t){return this.setLimit("min",e,!1,nl.toString(t))}lte(e,t){return this.setLimit("max",e,!0,nl.toString(t))}lt(e,t){return this.setLimit("max",e,!1,nl.toString(t))}setLimit(e,t,r,n){return new bl({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:nl.toString(n)}]})}_addCheck(e){return new bl({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:nl.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:nl.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:nl.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:nl.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:nl.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value{var t;return new bl({checks:[],typeName:au.ZodBigInt,coerce:null!==(t=null===e||void 0===e?void 0:e.coerce)&&void 0!==t&&t,...al(e)})};class wl extends sl{_parse(e){this._def.coerce&&(e.data=Boolean(e.data));if(this._getType(e)!==Uc.boolean){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.boolean,received:t.parsedType}),Yc}return Jc(e.data)}}wl.create=e=>new wl({typeName:au.ZodBoolean,coerce:(null===e||void 0===e?void 0:e.coerce)||!1,...al(e)});class xl extends sl{_parse(e){this._def.coerce&&(e.data=new Date(e.data));if(this._getType(e)!==Uc.date){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.date,received:t.parsedType}),Yc}if(isNaN(e.data.getTime())){return Gc(this._getOrReturnCtx(e),{code:$c.invalid_date}),Yc}const t=new Zc;let r;for(const n of this._def.checks)"min"===n.kind?e.data.getTime()n.value&&(r=this._getOrReturnCtx(e,r),Gc(r,{code:$c.too_big,message:n.message,inclusive:!0,exact:!1,maximum:n.value,type:"date"}),t.dirty()):zc.assertNever(n);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(e){return new xl({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:nl.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:nl.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return null!=e?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.valuenew xl({checks:[],coerce:(null===e||void 0===e?void 0:e.coerce)||!1,typeName:au.ZodDate,...al(e)});class _l extends sl{_parse(e){if(this._getType(e)!==Uc.symbol){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.symbol,received:t.parsedType}),Yc}return Jc(e.data)}}_l.create=e=>new _l({typeName:au.ZodSymbol,...al(e)});class Sl extends sl{_parse(e){if(this._getType(e)!==Uc.undefined){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.undefined,received:t.parsedType}),Yc}return Jc(e.data)}}Sl.create=e=>new Sl({typeName:au.ZodUndefined,...al(e)});class kl extends sl{_parse(e){if(this._getType(e)!==Uc.null){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.null,received:t.parsedType}),Yc}return Jc(e.data)}}kl.create=e=>new kl({typeName:au.ZodNull,...al(e)});class El extends sl{constructor(){super(...arguments),this._any=!0}_parse(e){return Jc(e.data)}}El.create=e=>new El({typeName:au.ZodAny,...al(e)});class Al extends sl{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Jc(e.data)}}Al.create=e=>new Al({typeName:au.ZodUnknown,...al(e)});class Pl extends sl{_parse(e){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.never,received:t.parsedType}),Yc}}Pl.create=e=>new Pl({typeName:au.ZodNever,...al(e)});class Ol extends sl{_parse(e){if(this._getType(e)!==Uc.undefined){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.void,received:t.parsedType}),Yc}return Jc(e.data)}}Ol.create=e=>new Ol({typeName:au.ZodVoid,...al(e)});class Tl extends sl{_parse(e){const{ctx:t,status:r}=this._processInputParams(e),n=this._def;if(t.parsedType!==Uc.array)return Gc(t,{code:$c.invalid_type,expected:Uc.array,received:t.parsedType}),Yc;if(null!==n.exactLength){const e=t.data.length>n.exactLength.value,i=t.data.lengthn.maxLength.value&&(Gc(t,{code:$c.too_big,maximum:n.maxLength.value,type:"array",inclusive:!0,exact:!1,message:n.maxLength.message}),r.dirty()),t.common.async)return Promise.all([...t.data].map(((e,r)=>n.type._parseAsync(new il(t,e,t.path,r))))).then((e=>Zc.mergeArray(r,e)));const i=[...t.data].map(((e,r)=>n.type._parseSync(new il(t,e,t.path,r))));return Zc.mergeArray(r,i)}get element(){return this._def.type}min(e,t){return new Tl({...this._def,minLength:{value:e,message:nl.toString(t)}})}max(e,t){return new Tl({...this._def,maxLength:{value:e,message:nl.toString(t)}})}length(e,t){return new Tl({...this._def,exactLength:{value:e,message:nl.toString(t)}})}nonempty(e){return this.min(1,e)}}function Cl(e){if(e instanceof jl){const t={};for(const r in e.shape){const n=e.shape[r];t[r]=Zl.create(Cl(n))}return new jl({...e._def,shape:()=>t})}return e instanceof Tl?new Tl({...e._def,type:Cl(e.element)}):e instanceof Zl?Zl.create(Cl(e.unwrap())):e instanceof Yl?Yl.create(Cl(e.unwrap())):e instanceof Dl?Dl.create(e.items.map((e=>Cl(e)))):e}Tl.create=(e,t)=>new Tl({type:e,minLength:null,maxLength:null,exactLength:null,typeName:au.ZodArray,...al(t)});class jl extends sl{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(null!==this._cached)return this._cached;const e=this._def.shape(),t=zc.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==Uc.object){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.object,received:t.parsedType}),Yc}const{status:t,ctx:r}=this._processInputParams(e),{shape:n,keys:i}=this._getCached(),o=[];if(!(this._def.catchall instanceof Pl&&"strip"===this._def.unknownKeys))for(const s in r.data)i.includes(s)||o.push(s);const a=[];for(const s of i){const e=n[s],t=r.data[s];a.push({key:{status:"valid",value:s},value:e._parse(new il(r,t,r.path,s)),alwaysSet:s in r.data})}if(this._def.catchall instanceof Pl){const e=this._def.unknownKeys;if("passthrough"===e)for(const t of o)a.push({key:{status:"valid",value:t},value:{status:"valid",value:r.data[t]}});else if("strict"===e)o.length>0&&(Gc(r,{code:$c.unrecognized_keys,keys:o}),t.dirty());else if("strip"!==e)throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const e=this._def.catchall;for(const t of o){const n=r.data[t];a.push({key:{status:"valid",value:t},value:e._parse(new il(r,n,r.path,t)),alwaysSet:t in r.data})}}return r.common.async?Promise.resolve().then((async()=>{const e=[];for(const t of a){const r=await t.key;e.push({key:r,value:await t.value,alwaysSet:t.alwaysSet})}return e})).then((e=>Zc.mergeObjectSync(t,e))):Zc.mergeObjectSync(t,a)}get shape(){return this._def.shape()}strict(e){return nl.errToObj,new jl({...this._def,unknownKeys:"strict",...void 0!==e?{errorMap:(t,r)=>{var n,i,o,a;const s=null!==(o=null===(i=(n=this._def).errorMap)||void 0===i?void 0:i.call(n,t,r).message)&&void 0!==o?o:r.defaultError;return"unrecognized_keys"===t.code?{message:null!==(a=nl.errToObj(e).message)&&void 0!==a?a:s}:{message:s}}}:{}})}strip(){return new jl({...this._def,unknownKeys:"strip"})}passthrough(){return new jl({...this._def,unknownKeys:"passthrough"})}extend(e){return new jl({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new jl({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:au.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new jl({...this._def,catchall:e})}pick(e){const t={};return zc.objectKeys(e).forEach((r=>{e[r]&&this.shape[r]&&(t[r]=this.shape[r])})),new jl({...this._def,shape:()=>t})}omit(e){const t={};return zc.objectKeys(this.shape).forEach((r=>{e[r]||(t[r]=this.shape[r])})),new jl({...this._def,shape:()=>t})}deepPartial(){return Cl(this)}partial(e){const t={};return zc.objectKeys(this.shape).forEach((r=>{const n=this.shape[r];e&&!e[r]?t[r]=n:t[r]=n.optional()})),new jl({...this._def,shape:()=>t})}required(e){const t={};return zc.objectKeys(this.shape).forEach((r=>{if(e&&!e[r])t[r]=this.shape[r];else{let e=this.shape[r];for(;e instanceof Zl;)e=e._def.innerType;t[r]=e}})),new jl({...this._def,shape:()=>t})}keyof(){return Vl(zc.objectKeys(this.shape))}}jl.create=(e,t)=>new jl({shape:()=>e,unknownKeys:"strip",catchall:Pl.create(),typeName:au.ZodObject,...al(t)}),jl.strictCreate=(e,t)=>new jl({shape:()=>e,unknownKeys:"strict",catchall:Pl.create(),typeName:au.ZodObject,...al(t)}),jl.lazycreate=(e,t)=>new jl({shape:e,unknownKeys:"strip",catchall:Pl.create(),typeName:au.ZodObject,...al(t)});class Rl extends sl{_parse(e){const{ctx:t}=this._processInputParams(e),r=this._def.options;if(t.common.async)return Promise.all(r.map((async e=>{const r={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:r}),ctx:r}}))).then((function(e){for(const t of e)if("valid"===t.result.status)return t.result;for(const n of e)if("dirty"===n.result.status)return t.common.issues.push(...n.ctx.common.issues),n.result;const r=e.map((e=>new Hc(e.ctx.common.issues)));return Gc(t,{code:$c.invalid_union,unionErrors:r}),Yc}));{let e;const n=[];for(const o of r){const r={...t,common:{...t.common,issues:[]},parent:null},i=o._parseSync({data:t.data,path:t.path,parent:r});if("valid"===i.status)return i;"dirty"!==i.status||e||(e={result:i,ctx:r}),r.common.issues.length&&n.push(r.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;const i=n.map((e=>new Hc(e)));return Gc(t,{code:$c.invalid_union,unionErrors:i}),Yc}}get options(){return this._def.options}}Rl.create=(e,t)=>new Rl({options:e,typeName:au.ZodUnion,...al(t)});const Il=e=>e instanceof $l?Il(e.schema):e instanceof Gl?Il(e.innerType()):e instanceof Hl?[e.value]:e instanceof ql?e.options:e instanceof Kl?Object.keys(e.enum):e instanceof Xl?Il(e._def.innerType):e instanceof Sl?[void 0]:e instanceof kl?[null]:null;class Ml extends sl{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==Uc.object)return Gc(t,{code:$c.invalid_type,expected:Uc.object,received:t.parsedType}),Yc;const r=this.discriminator,n=t.data[r],i=this.optionsMap.get(n);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(Gc(t,{code:$c.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),Yc)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,r){const n=new Map;for(const i of t){const t=Il(i.shape[e]);if(!t)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const r of t){if(n.has(r))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(r)}`);n.set(r,i)}}return new Ml({typeName:au.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:n,...al(r)})}}function Ll(e,t){const r=Fc(e),n=Fc(t);if(e===t)return{valid:!0,data:e};if(r===Uc.object&&n===Uc.object){const r=zc.objectKeys(t),n=zc.objectKeys(e).filter((e=>-1!==r.indexOf(e))),i={...e,...t};for(const o of n){const r=Ll(e[o],t[o]);if(!r.valid)return{valid:!1};i[o]=r.data}return{valid:!0,data:i}}if(r===Uc.array&&n===Uc.array){if(e.length!==t.length)return{valid:!1};const r=[];for(let n=0;n{if(Qc(e)||Qc(n))return Yc;const i=Ll(e.value,n.value);return i.valid?((el(e)||el(n))&&t.dirty(),{status:t.value,value:i.data}):(Gc(r,{code:$c.invalid_intersection_types}),Yc)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then((([e,t])=>n(e,t))):n(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}Nl.create=(e,t,r)=>new Nl({left:e,right:t,typeName:au.ZodIntersection,...al(r)});class Dl extends sl{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Uc.array)return Gc(r,{code:$c.invalid_type,expected:Uc.array,received:r.parsedType}),Yc;if(r.data.lengththis._def.items.length&&(Gc(r,{code:$c.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const n=[...r.data].map(((e,t)=>{const n=this._def.items[t]||this._def.rest;return n?n._parse(new il(r,e,r.path,t)):null})).filter((e=>!!e));return r.common.async?Promise.all(n).then((e=>Zc.mergeArray(t,e))):Zc.mergeArray(t,n)}get items(){return this._def.items}rest(e){return new Dl({...this._def,rest:e})}}Dl.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Dl({items:e,typeName:au.ZodTuple,rest:null,...al(t)})};class zl extends sl{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Uc.object)return Gc(r,{code:$c.invalid_type,expected:Uc.object,received:r.parsedType}),Yc;const n=[],i=this._def.keyType,o=this._def.valueType;for(const a in r.data)n.push({key:i._parse(new il(r,a,r.path,a)),value:o._parse(new il(r,r.data[a],r.path,a))});return r.common.async?Zc.mergeObjectAsync(t,n):Zc.mergeObjectSync(t,n)}get element(){return this._def.valueType}static create(e,t,r){return new zl(t instanceof sl?{keyType:e,valueType:t,typeName:au.ZodRecord,...al(r)}:{keyType:gl.create(),valueType:e,typeName:au.ZodRecord,...al(t)})}}class Bl extends sl{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Uc.map)return Gc(r,{code:$c.invalid_type,expected:Uc.map,received:r.parsedType}),Yc;const n=this._def.keyType,i=this._def.valueType,o=[...r.data.entries()].map((([e,t],o)=>({key:n._parse(new il(r,e,r.path,[o,"key"])),value:i._parse(new il(r,t,r.path,[o,"value"]))})));if(r.common.async){const e=new Map;return Promise.resolve().then((async()=>{for(const r of o){const n=await r.key,i=await r.value;if("aborted"===n.status||"aborted"===i.status)return Yc;"dirty"!==n.status&&"dirty"!==i.status||t.dirty(),e.set(n.value,i.value)}return{status:t.value,value:e}}))}{const e=new Map;for(const r of o){const n=r.key,i=r.value;if("aborted"===n.status||"aborted"===i.status)return Yc;"dirty"!==n.status&&"dirty"!==i.status||t.dirty(),e.set(n.value,i.value)}return{status:t.value,value:e}}}}Bl.create=(e,t,r)=>new Bl({valueType:t,keyType:e,typeName:au.ZodMap,...al(r)});class Ul extends sl{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Uc.set)return Gc(r,{code:$c.invalid_type,expected:Uc.set,received:r.parsedType}),Yc;const n=this._def;null!==n.minSize&&r.data.sizen.maxSize.value&&(Gc(r,{code:$c.too_big,maximum:n.maxSize.value,type:"set",inclusive:!0,exact:!1,message:n.maxSize.message}),t.dirty());const i=this._def.valueType;function o(e){const r=new Set;for(const n of e){if("aborted"===n.status)return Yc;"dirty"===n.status&&t.dirty(),r.add(n.value)}return{status:t.value,value:r}}const a=[...r.data.values()].map(((e,t)=>i._parse(new il(r,e,r.path,t))));return r.common.async?Promise.all(a).then((e=>o(e))):o(a)}min(e,t){return new Ul({...this._def,minSize:{value:e,message:nl.toString(t)}})}max(e,t){return new Ul({...this._def,maxSize:{value:e,message:nl.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}Ul.create=(e,t)=>new Ul({valueType:e,minSize:null,maxSize:null,typeName:au.ZodSet,...al(t)});class Fl extends sl{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==Uc.function)return Gc(t,{code:$c.invalid_type,expected:Uc.function,received:t.parsedType}),Yc;function r(e,r){return Wc({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Kc(),Vc].filter((e=>!!e)),issueData:{code:$c.invalid_arguments,argumentsError:r}})}function n(e,r){return Wc({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Kc(),Vc].filter((e=>!!e)),issueData:{code:$c.invalid_return_type,returnTypeError:r}})}const i={errorMap:t.common.contextualErrorMap},o=t.data;if(this._def.returns instanceof Wl){const e=this;return Jc((async function(...t){const a=new Hc([]),s=await e._def.args.parseAsync(t,i).catch((e=>{throw a.addIssue(r(t,e)),a})),c=await Reflect.apply(o,this,s),l=await e._def.returns._def.type.parseAsync(c,i).catch((e=>{throw a.addIssue(n(c,e)),a}));return l}))}{const e=this;return Jc((function(...t){const a=e._def.args.safeParse(t,i);if(!a.success)throw new Hc([r(t,a.error)]);const s=Reflect.apply(o,this,a.data),c=e._def.returns.safeParse(s,i);if(!c.success)throw new Hc([n(s,c.error)]);return c.data}))}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new Fl({...this._def,args:Dl.create(e).rest(Al.create())})}returns(e){return new Fl({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,r){return new Fl({args:e||Dl.create([]).rest(Al.create()),returns:t||Al.create(),typeName:au.ZodFunction,...al(r)})}}class $l extends sl{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}$l.create=(e,t)=>new $l({getter:e,typeName:au.ZodLazy,...al(t)});class Hl extends sl{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return Gc(t,{received:t.data,code:$c.invalid_literal,expected:this._def.value}),Yc}return{status:"valid",value:e.data}}get value(){return this._def.value}}function Vl(e,t){return new ql({values:e,typeName:au.ZodEnum,...al(t)})}Hl.create=(e,t)=>new Hl({value:e,typeName:au.ZodLiteral,...al(t)});class ql extends sl{_parse(e){if("string"!==typeof e.data){const t=this._getOrReturnCtx(e),r=this._def.values;return Gc(t,{expected:zc.joinValues(r),received:t.parsedType,code:$c.invalid_type}),Yc}if(-1===this._def.values.indexOf(e.data)){const t=this._getOrReturnCtx(e),r=this._def.values;return Gc(t,{received:t.data,code:$c.invalid_enum_value,options:r}),Yc}return Jc(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e){return ql.create(e)}exclude(e){return ql.create(this.options.filter((t=>!e.includes(t))))}}ql.create=Vl;class Kl extends sl{_parse(e){const t=zc.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==Uc.string&&r.parsedType!==Uc.number){const e=zc.objectValues(t);return Gc(r,{expected:zc.joinValues(e),received:r.parsedType,code:$c.invalid_type}),Yc}if(-1===t.indexOf(e.data)){const e=zc.objectValues(t);return Gc(r,{received:r.data,code:$c.invalid_enum_value,options:e}),Yc}return Jc(e.data)}get enum(){return this._def.values}}Kl.create=(e,t)=>new Kl({values:e,typeName:au.ZodNativeEnum,...al(t)});class Wl extends sl{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==Uc.promise&&!1===t.common.async)return Gc(t,{code:$c.invalid_type,expected:Uc.promise,received:t.parsedType}),Yc;const r=t.parsedType===Uc.promise?t.data:Promise.resolve(t.data);return Jc(r.then((e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap}))))}}Wl.create=(e,t)=>new Wl({type:e,typeName:au.ZodPromise,...al(t)});class Gl extends sl{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===au.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:r}=this._processInputParams(e),n=this._def.effect||null,i={addIssue:e=>{Gc(r,e),e.fatal?t.abort():t.dirty()},get path(){return r.path}};if(i.addIssue=i.addIssue.bind(i),"preprocess"===n.type){const e=n.transform(r.data,i);return r.common.issues.length?{status:"dirty",value:r.data}:r.common.async?Promise.resolve(e).then((e=>this._def.schema._parseAsync({data:e,path:r.path,parent:r}))):this._def.schema._parseSync({data:e,path:r.path,parent:r})}if("refinement"===n.type){const e=e=>{const t=n.refinement(e,i);if(r.common.async)return Promise.resolve(t);if(t instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return e};if(!1===r.common.async){const n=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return"aborted"===n.status?Yc:("dirty"===n.status&&t.dirty(),e(n.value),{status:t.value,value:n.value})}return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then((r=>"aborted"===r.status?Yc:("dirty"===r.status&&t.dirty(),e(r.value).then((()=>({status:t.value,value:r.value}))))))}if("transform"===n.type){if(!1===r.common.async){const e=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!tl(e))return e;const o=n.transform(e.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:o}}return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then((e=>tl(e)?Promise.resolve(n.transform(e.value,i)).then((e=>({status:t.value,value:e}))):e))}zc.assertNever(n)}}Gl.create=(e,t,r)=>new Gl({schema:e,typeName:au.ZodEffects,effect:t,...al(r)}),Gl.createWithPreprocess=(e,t,r)=>new Gl({schema:t,effect:{type:"preprocess",transform:e},typeName:au.ZodEffects,...al(r)});class Zl extends sl{_parse(e){return this._getType(e)===Uc.undefined?Jc(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Zl.create=(e,t)=>new Zl({innerType:e,typeName:au.ZodOptional,...al(t)});class Yl extends sl{_parse(e){return this._getType(e)===Uc.null?Jc(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Yl.create=(e,t)=>new Yl({innerType:e,typeName:au.ZodNullable,...al(t)});class Xl extends sl{_parse(e){const{ctx:t}=this._processInputParams(e);let r=t.data;return t.parsedType===Uc.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}Xl.create=(e,t)=>new Xl({innerType:e,typeName:au.ZodDefault,defaultValue:"function"===typeof t.default?t.default:()=>t.default,...al(t)});class Jl extends sl{_parse(e){const{ctx:t}=this._processInputParams(e),r={...t,common:{...t.common,issues:[]}},n=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return rl(n)?n.then((e=>({status:"valid",value:"valid"===e.status?e.value:this._def.catchValue({get error(){return new Hc(r.common.issues)},input:r.data})}))):{status:"valid",value:"valid"===n.status?n.value:this._def.catchValue({get error(){return new Hc(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}Jl.create=(e,t)=>new Jl({innerType:e,typeName:au.ZodCatch,catchValue:"function"===typeof t.catch?t.catch:()=>t.catch,...al(t)});class Ql extends sl{_parse(e){if(this._getType(e)!==Uc.nan){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.nan,received:t.parsedType}),Yc}return{status:"valid",value:e.data}}}Ql.create=e=>new Ql({typeName:au.ZodNaN,...al(e)});const eu=Symbol("zod_brand");class tu extends sl{_parse(e){const{ctx:t}=this._processInputParams(e),r=t.data;return this._def.type._parse({data:r,path:t.path,parent:t})}unwrap(){return this._def.type}}class ru extends sl{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.common.async){return(async()=>{const e=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return"aborted"===e.status?Yc:"dirty"===e.status?(t.dirty(),Xc(e.value)):this._def.out._parseAsync({data:e.value,path:r.path,parent:r})})()}{const e=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return"aborted"===e.status?Yc:"dirty"===e.status?(t.dirty(),{status:"dirty",value:e.value}):this._def.out._parseSync({data:e.value,path:r.path,parent:r})}}static create(e,t){return new ru({in:e,out:t,typeName:au.ZodPipeline})}}class nu extends sl{_parse(e){const t=this._def.innerType._parse(e);return tl(t)&&(t.value=Object.freeze(t.value)),t}}nu.create=(e,t)=>new nu({innerType:e,typeName:au.ZodReadonly,...al(t)});const iu=(e,t={},r)=>e?El.create().superRefine(((n,i)=>{var o,a;if(!e(n)){const e="function"===typeof t?t(n):"string"===typeof t?{message:t}:t,s=null===(a=null!==(o=e.fatal)&&void 0!==o?o:r)||void 0===a||a,c="string"===typeof e?{message:e}:e;i.addIssue({code:"custom",...c,fatal:s})}})):El.create(),ou={object:jl.lazycreate};var au;!function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"}(au||(au={}));const su=gl.create,cu=yl.create,lu=Ql.create,uu=bl.create,du=wl.create,hu=xl.create,fu=_l.create,pu=Sl.create,mu=kl.create,gu=El.create,vu=Al.create,yu=Pl.create,bu=Ol.create,wu=Tl.create,xu=jl.create,_u=jl.strictCreate,Su=Rl.create,ku=Ml.create,Eu=Nl.create,Au=Dl.create,Pu=zl.create,Ou=Bl.create,Tu=Ul.create,Cu=Fl.create,ju=$l.create,Ru=Hl.create,Iu=ql.create,Mu=Kl.create,Lu=Wl.create,Nu=Gl.create,Du=Zl.create,zu=Yl.create,Bu=Gl.createWithPreprocess,Uu=ru.create,Fu={string:e=>gl.create({...e,coerce:!0}),number:e=>yl.create({...e,coerce:!0}),boolean:e=>wl.create({...e,coerce:!0}),bigint:e=>bl.create({...e,coerce:!0}),date:e=>xl.create({...e,coerce:!0})},$u=Yc;var Hu=Object.freeze({__proto__:null,defaultErrorMap:Vc,setErrorMap:function(e){qc=e},getErrorMap:Kc,makeIssue:Wc,EMPTY_PATH:[],addIssueToContext:Gc,ParseStatus:Zc,INVALID:Yc,DIRTY:Xc,OK:Jc,isAborted:Qc,isDirty:el,isValid:tl,isAsync:rl,get util(){return zc},get objectUtil(){return Bc},ZodParsedType:Uc,getParsedType:Fc,ZodType:sl,ZodString:gl,ZodNumber:yl,ZodBigInt:bl,ZodBoolean:wl,ZodDate:xl,ZodSymbol:_l,ZodUndefined:Sl,ZodNull:kl,ZodAny:El,ZodUnknown:Al,ZodNever:Pl,ZodVoid:Ol,ZodArray:Tl,ZodObject:jl,ZodUnion:Rl,ZodDiscriminatedUnion:Ml,ZodIntersection:Nl,ZodTuple:Dl,ZodRecord:zl,ZodMap:Bl,ZodSet:Ul,ZodFunction:Fl,ZodLazy:$l,ZodLiteral:Hl,ZodEnum:ql,ZodNativeEnum:Kl,ZodPromise:Wl,ZodEffects:Gl,ZodTransformer:Gl,ZodOptional:Zl,ZodNullable:Yl,ZodDefault:Xl,ZodCatch:Jl,ZodNaN:Ql,BRAND:eu,ZodBranded:tu,ZodPipeline:ru,ZodReadonly:nu,custom:iu,Schema:sl,ZodSchema:sl,late:ou,get ZodFirstPartyTypeKind(){return au},coerce:Fu,any:gu,array:wu,bigint:uu,boolean:du,date:hu,discriminatedUnion:ku,effect:Nu,enum:Iu,function:Cu,instanceof:(e,t={message:`Input not instance of ${e.name}`})=>iu((t=>t instanceof e),t),intersection:Eu,lazy:ju,literal:Ru,map:Ou,nan:lu,nativeEnum:Mu,never:yu,null:mu,nullable:zu,number:cu,object:xu,oboolean:()=>du().optional(),onumber:()=>cu().optional(),optional:Du,ostring:()=>su().optional(),pipeline:Uu,preprocess:Bu,promise:Lu,record:Pu,set:Tu,strictObject:_u,string:su,symbol:fu,transformer:Nu,tuple:Au,undefined:pu,union:Su,unknown:vu,void:bu,NEVER:$u,ZodIssueCode:$c,quotelessJson:e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),ZodError:Hc});const Vu=Hu.object({address:Hu.string()}),qu=e=>{if(Wu(e))return Zu(e);if(Gu(e))return Yu(e);throw new Error(`Cannot parse address type: ${e}`)},Ku=e=>oc(e)===Zs.VALID,Wu=e=>Ku(e)&&e.match(/^KT1\w+/),Gu=e=>Ku(e)&&e.match(/^tz[1234]\w+/),Zu=e=>{if(Wu(e))return{type:"contract",pkh:e};throw new Error(`Invalid contract address: ${e}`)},Yu=e=>{if(Gu(e))return{type:"implicit",pkh:e};throw new Error(`Invalid implicit address: ${e}`)},Xu=Hu.object({standard:Hu.string().regex(/^fa1\.2$/i),contract:Vu}),Ju=Hu.object({standard:Hu.string().regex(/^fa2$/i),tokenId:Hu.string(),contract:Vu}),Qu=Hu.object({id:Hu.number(),standard:Hu.string().regex(/^fa2$/i),tokenId:Hu.string(),contract:Vu,totalSupply:Hu.string().optional(),metadata:Hu.object({displayUri:Hu.string(),decimals:Hu.void().or(Hu.string().regex(/^0$/))})}),ed=e=>{const t=e.metadata;if("fa1.2"===e.standard){const r=Xu.safeParse(e);return r.success?{type:"fa1.2",metadata:t,contract:r.data.contract.address,tokenId:"0"}:(console.warn("Invalid FA1 token: "+JSON.stringify(e)),null)}const r=Qu.safeParse(e);if(r.success)return{metadata:t,type:"nft",id:r.data.id,contract:r.data.contract.address,tokenId:r.data.tokenId,displayUri:r.data.metadata.displayUri,totalSupply:r.data.totalSupply};const n=Ju.safeParse(e);return n.success?{type:"fa2",metadata:t,contract:n.data.contract.address,tokenId:n.data.tokenId}:(console.warn("Invalid FA2 token: "+JSON.stringify(e)),null)},td=e=>`${e.contract}:${e.tokenId}`,rd=e=>nd(e)||(e=>{switch(e.type){case"fa1.2":return md;case"fa2":return gd;case"nft":return vd}})(e),nd=e=>{var t;return null===(t=e.metadata)||void 0===t?void 0:t.name},id=e=>od(e)||(e=>{switch(e.type){case"fa1.2":return yd;case"fa2":return bd;case"nft":return wd}})(e),od=e=>{var t;return null===(t=e.metadata)||void 0===t?void 0:t.symbol},ad=e=>{var t,r;return null!==(t=null===(r=e.metadata)||void 0===r?void 0:r.decimals)&&void 0!==t?t:xd},sd=(e,t)=>{const r=new Us(t),n=ad(e);return r.multipliedBy(new Us(10).exponentiatedBy(n)).toFixed()},cd=(e,t=xd)=>{const r=Us(e).dividedBy(Us(10).pow(t));try{return new Intl.NumberFormat("en-US",{minimumFractionDigits:Number(t),maximumFractionDigits:Number(t)}).format(r.toNumber())}catch(n){return console.warn(`Can't format token amount with decimals = ${t}`),cd(e,"0")}},ld=(e,t,r)=>{var n;if("nft"===t.type)return e;const i=id(t),o=null===(n=t.metadata)||void 0===n?void 0:n.decimals,a=null!==r&&void 0!==r&&r.showSymbol?` ${i}`:"";return`${cd(e,o)}${a}`},ud=e=>e.metadata.artifactUri||e.displayUri,dd=e=>e.metadata.thumbnailUri||e.displayUri,hd=e=>{var t,r;return null===(t=e.metadata.formats)||void 0===t||null===(r=t.find((t=>t.uri===ud(e))))||void 0===r?void 0:r.mimeType},fd=(e,t)=>`${pd(e,t)}/metadata`,pd=({contract:e,tokenId:t},r)=>`${r.tzktExplorerUrl}/${e}/tokens/${t}`,md="FA1.2 token",gd="FA2 token",vd="NFT",yd="FA1.2",bd="FA2",wd="NFT",xd="0",_d=e=>{const t=ed(e.token);return t&&e.balance?{balance:e.balance,lastLevel:e.lastLevel,...t}:null},Sd={blockLevel:null,balances:{mutez:{},tokens:{}},transfers:{tez:{},tokens:{}},delegationLevels:{},bakers:[],conversionRate:null,refetchTrigger:0,isLoading:!1,lastTimeUpdated:null},kd=Ta({name:"assets",initialState:Sd,extraReducers:e=>e.addCase(Nc.actions.reset,(()=>Sd)),reducers:{reset:()=>Sd,updateBlockLevel:(e,{payload:t})=>{e.blockLevel=t},updateTokenTransfers:(e,{payload:t})=>{t.forEach((t=>{e.transfers.tokens[t.transactionId]=t}))},updateTezBalance:(e,{payload:t})=>{e.balances.mutez=t.reduce(((e,t)=>({...e,[t.address]:String(t.balance)})),{}),e.delegationLevels=t.reduce(((e,t)=>({...e,[t.address]:t.delegationLevel})),{})},updateTokenBalance:(e,{payload:t})=>{const r=(0,Va.groupBy)(t,(e=>e.account.address));e.balances.tokens=(0,Va.mapValues)(r,(e=>(0,Va.compact)(e.map(_d)).map((({balance:e,contract:t,tokenId:r,lastLevel:n})=>({balance:e,contract:t,tokenId:r,lastLevel:n})))))},updateBakers:(e,{payload:t})=>{e.bakers=t},updateConversionRate:(e,{payload:{rate:t}})=>{e.conversionRate=t},refetch:e=>{e.refetchTrigger+=1},setIsLoading:(e,{payload:t})=>{e.isLoading=t},setLastTimeUpdated:(e,{payload:t})=>{e.lastTimeUpdated=t}}}),Ed=kd.actions,Ad={name:"mainnet",rpcUrl:"https://prod.tcinfra.net/rpc/mainnet/",tzktApiUrl:"https://api.mainnet.tzkt.io",tzktExplorerUrl:"https://tzkt.io",buyTezUrl:"https://widget.wert.io"},Pd=e=>Od.map((e=>e.name)).includes(e.name),Od=[Ad,{name:"ghostnet",rpcUrl:"https://ghostnet.ecadinfra.com",tzktApiUrl:"https://api.ghostnet.tzkt.io",tzktExplorerUrl:"https://ghostnet.tzkt.io",buyTezUrl:"https://faucet.ghostnet.teztnets.xyz/"}],Td=(0,Va.fromPairs)(Od.map((e=>[e.name,[]]))),Cd=Ta({name:"batches",initialState:Td,reducers:{reset:()=>Td,add:(e,{payload:{operations:t,network:r}})=>{r.name in e||(e[r.name]=[]);const n=e[r.name],i=n.find((e=>e.sender.address.pkh===t.sender.address.pkh));i?i.operations.push(...t.operations):n.push(t)},clear:(e,{payload:{pkh:t,network:r}})=>{const n=e[r.name]||[],i=(0,Va.findIndex)(n,(e=>e.sender.address.pkh===t));-1!==i&&n.splice(i,1)},removeItem:(e,{payload:{pkh:t,index:r,network:n}})=>{const i=e[n.name]||[],o=(0,Va.findIndex)(i,(e=>e.sender.address.pkh===t));if(-1===o)return;const a=i[o];rRd,addConnection:(e,{payload:t})=>{e[t.dAppId]={accountPkh:t.accountPkh,networkType:t.networkType}},removeConnection:(e,{payload:t})=>{delete e[t.dAppId]}}}),Md=(Id.actions,(e,t)=>Object.values(e).map((e=>e.name)).includes(t)),Ld={},Nd=Ta({name:"contacts",initialState:Ld,reducers:{reset:()=>Ld,upsert:(e,{payload:t})=>{Md(e,t.name)||(e[t.pkh]=t)},remove:(e,{payload:t})=>{delete e[t]}}}),Dd=Nd.actions,zd=[],Bd=Ta({name:"errors",initialState:zd,reducers:{reset:()=>zd,add(e,{payload:t}){100===e.length&&e.shift(),e.push(t)}}}),Ud={items:[],pendingOperations:{},labelsMap:{}},Fd=Ta({name:"multisigs",initialState:Ud,reducers:{reset:()=>Ud,setMultisigs:(e,{payload:t})=>{const r=(0,Va.fromPairs)(e.items.map((e=>[e.address.pkh,e.label])));e.items=t.map(((t,n)=>({...t,label:r[t.address.pkh]||e.labelsMap[t.address.pkh]||`Multisig Account ${n}`,type:"multisig"})))},addMultisigLabel:(e,{payload:{pkh:t,label:r}})=>{e.labelsMap[t]=r},setPendingOperations:(e,{payload:t})=>{e.pendingOperations=(0,Va.groupBy)(t,(e=>e.bigmapId))},setName:(e,{payload:t})=>{const{account:{address:{pkh:r}},newName:n}=t,i=e.items.find((e=>e.address.pkh===r));i&&(i.label=n)}}}),$d=Fd.actions,Hd={available:Od,current:Ad},Vd=Ta({name:"networks",initialState:Hd,reducers:{reset:()=>Hd,setCurrent:(e,{payload:t})=>{e.current=t},upsertNetwork:(e,{payload:t})=>{if(Pd(t))return;const r=e.available.findIndex((e=>e.name===t.name));e.current.name===t.name&&(e.current=t),-1===r?e.available.push(t):e.available[r]=t},removeNetwork:(e,{payload:t})=>{Pd(t)||(0,Va.remove)(e.available,(e=>e.name===t.name))}}}),qd=Vd.actions,Kd=(0,Va.fromPairs)(Od.map((e=>[e.name,{}]))),Wd=Ta({name:"tokens",initialState:Kd,reducers:{reset:()=>Kd,addTokens:(e,{payload:{network:t,tokens:r}})=>{(0,Va.compact)(r.map(ed)).forEach((r=>{(0,Va.setWith)(e,[t.name,r.contract,r.tokenId],r,Object)}))}}}),Gd=Wd.actions,Zd={key:"root",version:1,storage:Ua.Z,blacklist:["accounts"],migrate:function(e,t){return(t||{}).debug,function(t,r){if(!t)return Promise.resolve(void 0);var n=t._persist&&void 0!==t._persist.version?t._persist.version:-1;if(n===r)return Promise.resolve(t);if(n>r)return Promise.resolve(t);var i=Object.keys(e).map((function(e){return parseInt(e)})).filter((function(e){return r>=e&&e>n})).sort((function(e,t){return e-t}));try{var o=i.reduce((function(t,r){return e[r](t)}),t);return Promise.resolve(o)}catch(a){return Promise.reject(a)}}}(Ha,{debug:!1})},Yd=F({accounts:T({key:"accounts",version:1,storage:Ua.Z},Nc.reducer),announcement:$a.reducer,assets:kd.reducer,batches:Cd.reducer,beacon:Id.reducer,contacts:Nd.reducer,errors:Bd.reducer,multisigs:Fd.reducer,networks:Vd.reducer,tokens:Wd.reducer}),Xd=function(e){var t,r=Pa(),n=e||{},i=n.reducer,o=void 0===i?void 0:i,a=n.middleware,s=void 0===a?r():a,c=n.devTools,l=void 0===c||c,u=n.preloadedState,d=void 0===u?void 0:u,h=n.enhancers,f=void 0===h?void 0:h;if("function"===typeof o)t=o;else{if(!_a(o))throw new Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');t=F(o)}var p=s;"function"===typeof p&&(p=p(r));var m=H.apply(void 0,p),g=$;l&&(g=xa(ya({trace:!1},"object"===typeof l&&l)));var v=new Ea(m),y=v;return Array.isArray(f)?y=ua([m],f):"function"===typeof f&&(y=f(v)),U(t,d,g.apply(void 0,y))}({reducer:T(Zd,Yd),middleware:e=>e({serializableCheck:{ignoredActions:[u,d,h,f,p,m]}})}),Jd=e=>(0,Yn.jsx)(Xi,{store:Xd,children:e.children});var Qd=String.raw,eh=Qd` +/*! For license information please see main.43413829.js.LICENSE.txt */ +(()=>{var e={5505:(e,t)=>{var r;function n(e,t){navigator.onLine||e("offline"),e("error",t)}function i(e,t,r){navigator.serviceWorker.register(e,r).then((function(e){t("registered",e),e.waiting?t("updated",e):e.onupdatefound=function(){t("updatefound",e);var r=e.installing;r.onstatechange=function(){"installed"===r.state&&(navigator.serviceWorker.controller?t("updated",e):t("cached",e))}}})).catch((function(e){return n(t,e)}))}"undefined"!==typeof window&&(r="undefined"===typeof document||"interactive"!==document.readyState&&"complete"!==document.readyState?"undefined"!==typeof Promise?new Promise((function(e){return window.addEventListener("load",e)})):{then:function(e){return window.addEventListener("load",e)}}:Promise.resolve()),t.z=function(e,t){void 0===t&&(t={});var o=t.registrationOptions;void 0===o&&(o={}),delete t.registrationOptions;var a=function(e){for(var r=[],n=arguments.length-1;n-- >0;)r[n]=arguments[n+1];t&&t[e]&&t[e].apply(t,r)};"serviceWorker"in navigator&&r.then((function(){Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/))?(!function(e,t,r){fetch(e).then((function(n){404===n.status?(t("error",new Error("Service worker not found at "+e)),unregister()):-1===n.headers.get("content-type").indexOf("javascript")?(t("error",new Error("Expected "+e+" to have javascript content-type, but received "+n.headers.get("content-type"))),unregister()):i(e,t,r)})).catch((function(e){return n(t,e)}))}(e,a,o),navigator.serviceWorker.ready.then((function(e){a("ready",e)}))):(i(e,a,o),navigator.serviceWorker.ready.then((function(e){a("ready",e)})))}))}},4103:(e,t)=>{"use strict";function r(e){if(!Number.isSafeInteger(e)||e<0)throw new Error(`Wrong positive integer: ${e}`)}function n(e){if("boolean"!==typeof e)throw new Error(`Expected boolean, not ${e}`)}function i(e,...t){if(!(e instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new TypeError(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function o(e){if("function"!==typeof e||"function"!==typeof e.create)throw new Error("Hash should be wrapped by utils.wrapConstructor");r(e.outputLen),r(e.blockLen)}function a(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function s(e,t){i(e);const r=t.outputLen;if(e.length{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SHA2=void 0;const n=r(4103),i=r(9041);class o extends i.Hash{constructor(e,t,r,n){super(),this.blockLen=e,this.outputLen=t,this.padOffset=r,this.isLE=n,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=(0,i.createView)(this.buffer)}update(e){n.default.exists(this);const{view:t,buffer:r,blockLen:o}=this,a=(e=(0,i.toBytes)(e)).length;for(let n=0;no-s&&(this.process(r,0),s=0);for(let n=s;n>i&o),s=Number(r&o),c=n?4:0,l=n?0:4;e.setUint32(t+c,a,n),e.setUint32(t+l,s,n)}(r,o-8,BigInt(8*this.length),a),this.process(r,0);const c=(0,i.createView)(e),l=this.outputLen;if(l%4)throw new Error("_sha2: outputLen should be aligned to 32bit");const u=l/4,d=this.get();if(u>d.length)throw new Error("_sha2: outputLen bigger than state");for(let n=0;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.add=t.toBig=t.split=t.fromBig=void 0;const r=BigInt(2**32-1),n=BigInt(32);function i(e,t=!1){return t?{h:Number(e&r),l:Number(e>>n&r)}:{h:0|Number(e>>n&r),l:0|Number(e&r)}}function o(e,t=!1){let r=new Uint32Array(e.length),n=new Uint32Array(e.length);for(let o=0;oBigInt(e>>>0)<>>0);function a(e,t,r,n){const i=(t>>>0)+(n>>>0);return{h:e+r+(i/2**32|0)|0,l:0|i}}t.add=a;const s={fromBig:i,split:o,toBig:t.toBig,shrSH:(e,t,r)=>e>>>r,shrSL:(e,t,r)=>e<<32-r|t>>>r,rotrSH:(e,t,r)=>e>>>r|t<<32-r,rotrSL:(e,t,r)=>e<<32-r|t>>>r,rotrBH:(e,t,r)=>e<<64-r|t>>>r-32,rotrBL:(e,t,r)=>e>>>r-32|t<<64-r,rotr32H:(e,t)=>t,rotr32L:(e,t)=>e,rotlSH:(e,t,r)=>e<>>32-r,rotlSL:(e,t,r)=>t<>>32-r,rotlBH:(e,t,r)=>t<>>64-r,rotlBL:(e,t,r)=>e<>>64-r,add:a,add3L:(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),add3H:(e,t,r,n)=>t+r+n+(e/2**32|0)|0,add4L:(e,t,r,n)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0),add4H:(e,t,r,n,i)=>t+r+n+i+(e/2**32|0)|0,add5H:(e,t,r,n,i,o)=>t+r+n+i+o+(e/2**32|0)|0,add5L:(e,t,r,n,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(n>>>0)+(i>>>0)};t.default=s},2639:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.crypto=void 0,t.crypto="object"===typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0},1834:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.hmac=void 0;const n=r(4103),i=r(9041);class o extends i.Hash{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,n.default.hash(e);const r=(0,i.toBytes)(t);if(this.iHash=e.create(),"function"!==typeof this.iHash.update)throw new TypeError("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const o=this.blockLen,a=new Uint8Array(o);a.set(r.length>o?e.create().update(r).digest():r);for(let n=0;nnew o(e,t).update(r).digest(),t.hmac.create=(e,t)=>new o(e,t)},2291:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.pbkdf2Async=t.pbkdf2=void 0;const n=r(4103),i=r(1834),o=r(9041);function a(e,t,r,a){n.default.hash(e);const s=(0,o.checkOpts)({dkLen:32,asyncTick:10},a),{c:c,dkLen:l,asyncTick:u}=s;if(n.default.number(c),n.default.number(l),n.default.number(u),c<1)throw new Error("PBKDF2: iterations (c) should be >= 1");const d=(0,o.toBytes)(t),h=(0,o.toBytes)(r),f=new Uint8Array(l),p=i.hmac.create(e,d),m=p._cloneInto().update(h);return{c:c,dkLen:l,asyncTick:u,DK:f,PRF:p,PRFSalt:m}}function s(e,t,r,n,i){return e.destroy(),t.destroy(),n&&n.destroy(),i.fill(0),r}t.pbkdf2=function(e,t,r,n){const{c:i,dkLen:c,DK:l,PRF:u,PRFSalt:d}=a(e,t,r,n);let h;const f=new Uint8Array(4),p=(0,o.createView)(f),m=new Uint8Array(u.outputLen);for(let o=1,a=0;a{d._cloneInto(f).update(g).digestInto(g);for(let r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sha224=t.sha256=void 0;const n=r(826),i=r(9041),o=(e,t,r)=>e&t^e&r^t&r,a=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),s=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),c=new Uint32Array(64);class l extends n.SHA2{constructor(){super(64,32,8,!1),this.A=0|s[0],this.B=0|s[1],this.C=0|s[2],this.D=0|s[3],this.E=0|s[4],this.F=0|s[5],this.G=0|s[6],this.H=0|s[7]}get(){const{A:e,B:t,C:r,D:n,E:i,F:o,G:a,H:s}=this;return[e,t,r,n,i,o,a,s]}set(e,t,r,n,i,o,a,s){this.A=0|e,this.B=0|t,this.C=0|r,this.D=0|n,this.E=0|i,this.F=0|o,this.G=0|a,this.H=0|s}process(e,t){for(let i=0;i<16;i++,t+=4)c[i]=e.getUint32(t,!1);for(let o=16;o<64;o++){const e=c[o-15],t=c[o-2],r=(0,i.rotr)(e,7)^(0,i.rotr)(e,18)^e>>>3,n=(0,i.rotr)(t,17)^(0,i.rotr)(t,19)^t>>>10;c[o]=n+c[o-7]+r+c[o-16]|0}let{A:r,B:n,C:s,D:l,E:u,F:d,G:h,H:f}=this;for(let m=0;m<64;m++){const e=f+((0,i.rotr)(u,6)^(0,i.rotr)(u,11)^(0,i.rotr)(u,25))+((p=u)&d^~p&h)+a[m]+c[m]|0,t=((0,i.rotr)(r,2)^(0,i.rotr)(r,13)^(0,i.rotr)(r,22))+o(r,n,s)|0;f=h,h=d,d=u,u=l+e|0,l=s,s=n,n=r,r=e+t|0}var p;r=r+this.A|0,n=n+this.B|0,s=s+this.C|0,l=l+this.D|0,u=u+this.E|0,d=d+this.F|0,h=h+this.G|0,f=f+this.H|0,this.set(r,n,s,l,u,d,h,f)}roundClean(){c.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}}class u extends l{constructor(){super(),this.A=-1056596264,this.B=914150663,this.C=812702999,this.D=-150054599,this.E=-4191439,this.F=1750603025,this.G=1694076839,this.H=-1090891868,this.outputLen=28}}t.sha256=(0,i.wrapConstructor)((()=>new l)),t.sha224=(0,i.wrapConstructor)((()=>new u))},3974:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.shake256=t.shake128=t.keccak_512=t.keccak_384=t.keccak_256=t.keccak_224=t.sha3_512=t.sha3_384=t.sha3_256=t.sha3_224=t.Keccak=t.keccakP=void 0;const n=r(4103),i=r(1197),o=r(9041),[a,s,c]=[[],[],[]],l=BigInt(0),u=BigInt(1),d=BigInt(2),h=BigInt(7),f=BigInt(256),p=BigInt(113);for(let S=0,k=u,E=1,A=0;S<24;S++){[E,A]=[A,(2*E+3*A)%5],a.push(2*(5*A+E)),s.push((S+1)*(S+2)/2%64);let e=l;for(let t=0;t<7;t++)k=(k<>h)*p)%f,k&d&&(e^=u<<(u<r>32?i.default.rotlBH(e,t,r):i.default.rotlSH(e,t,r),y=(e,t,r)=>r>32?i.default.rotlBL(e,t,r):i.default.rotlSL(e,t,r);function b(e,t=24){const r=new Uint32Array(10);for(let n=24-t;n<24;n++){for(let n=0;n<10;n++)r[n]=e[n]^e[n+10]^e[n+20]^e[n+30]^e[n+40];for(let n=0;n<10;n+=2){const t=(n+8)%10,i=(n+2)%10,o=r[i],a=r[i+1],s=v(o,a,1)^r[t],c=y(o,a,1)^r[t+1];for(let r=0;r<50;r+=10)e[n+r]^=s,e[n+r+1]^=c}let t=e[2],i=e[3];for(let r=0;r<24;r++){const n=s[r],o=v(t,i,n),c=y(t,i,n),l=a[r];t=e[l],i=e[l+1],e[l]=o,e[l+1]=c}for(let n=0;n<50;n+=10){for(let t=0;t<10;t++)r[t]=e[n+t];for(let t=0;t<10;t++)e[n+t]^=~r[(t+2)%10]&r[(t+4)%10]}e[0]^=m[n],e[1]^=g[n]}r.fill(0)}t.keccakP=b;class w extends o.Hash{constructor(e,t,r,i=!1,a=24){if(super(),this.blockLen=e,this.suffix=t,this.outputLen=r,this.enableXOF=i,this.rounds=a,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,n.default.number(r),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=(0,o.u32)(this.state)}keccak(){b(this.state32,this.rounds),this.posOut=0,this.pos=0}update(e){n.default.exists(this);const{blockLen:t,state:r}=this,i=(e=(0,o.toBytes)(e)).length;for(let n=0;n=r&&this.keccak();const o=Math.min(r-this.posOut,i-n);e.set(t.subarray(this.posOut,this.posOut+o),n),this.posOut+=o,n+=o}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return n.default.number(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(n.default.output(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){const{blockLen:t,suffix:r,outputLen:n,rounds:i,enableXOF:o}=this;return e||(e=new w(t,r,n,o,i)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=i,e.suffix=r,e.outputLen=n,e.enableXOF=o,e.destroyed=this.destroyed,e}}t.Keccak=w;const x=(e,t,r)=>(0,o.wrapConstructor)((()=>new w(t,e,r)));t.sha3_224=x(6,144,28),t.sha3_256=x(6,136,32),t.sha3_384=x(6,104,48),t.sha3_512=x(6,72,64),t.keccak_224=x(1,144,28),t.keccak_256=x(1,136,32),t.keccak_384=x(1,104,48),t.keccak_512=x(1,72,64);const _=(e,t,r)=>(0,o.wrapConstructorWithOpts)(((n={})=>new w(t,e,void 0===n.dkLen?r:n.dkLen,!0)));t.shake128=_(31,168,16),t.shake256=_(31,136,32)},2670:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sha384=t.sha512_256=t.sha512_224=t.sha512=t.SHA512=void 0;const n=r(826),i=r(1197),o=r(9041),[a,s]=i.default.split(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map((e=>BigInt(e)))),c=new Uint32Array(80),l=new Uint32Array(80);class u extends n.SHA2{constructor(){super(128,64,16,!1),this.Ah=1779033703,this.Al=-205731576,this.Bh=-1150833019,this.Bl=-2067093701,this.Ch=1013904242,this.Cl=-23791573,this.Dh=-1521486534,this.Dl=1595750129,this.Eh=1359893119,this.El=-1377402159,this.Fh=-1694144372,this.Fl=725511199,this.Gh=528734635,this.Gl=-79577749,this.Hh=1541459225,this.Hl=327033209}get(){const{Ah:e,Al:t,Bh:r,Bl:n,Ch:i,Cl:o,Dh:a,Dl:s,Eh:c,El:l,Fh:u,Fl:d,Gh:h,Gl:f,Hh:p,Hl:m}=this;return[e,t,r,n,i,o,a,s,c,l,u,d,h,f,p,m]}set(e,t,r,n,i,o,a,s,c,l,u,d,h,f,p,m){this.Ah=0|e,this.Al=0|t,this.Bh=0|r,this.Bl=0|n,this.Ch=0|i,this.Cl=0|o,this.Dh=0|a,this.Dl=0|s,this.Eh=0|c,this.El=0|l,this.Fh=0|u,this.Fl=0|d,this.Gh=0|h,this.Gl=0|f,this.Hh=0|p,this.Hl=0|m}process(e,t){for(let i=0;i<16;i++,t+=4)c[i]=e.getUint32(t),l[i]=e.getUint32(t+=4);for(let a=16;a<80;a++){const e=0|c[a-15],t=0|l[a-15],r=i.default.rotrSH(e,t,1)^i.default.rotrSH(e,t,8)^i.default.shrSH(e,t,7),n=i.default.rotrSL(e,t,1)^i.default.rotrSL(e,t,8)^i.default.shrSL(e,t,7),o=0|c[a-2],s=0|l[a-2],u=i.default.rotrSH(o,s,19)^i.default.rotrBH(o,s,61)^i.default.shrSH(o,s,6),d=i.default.rotrSL(o,s,19)^i.default.rotrBL(o,s,61)^i.default.shrSL(o,s,6),h=i.default.add4L(n,d,l[a-7],l[a-16]),f=i.default.add4H(h,r,u,c[a-7],c[a-16]);c[a]=0|f,l[a]=0|h}let{Ah:r,Al:n,Bh:o,Bl:u,Ch:d,Cl:h,Dh:f,Dl:p,Eh:m,El:g,Fh:v,Fl:y,Gh:b,Gl:w,Hh:x,Hl:_}=this;for(let S=0;S<80;S++){const e=i.default.rotrSH(m,g,14)^i.default.rotrSH(m,g,18)^i.default.rotrBH(m,g,41),t=i.default.rotrSL(m,g,14)^i.default.rotrSL(m,g,18)^i.default.rotrBL(m,g,41),k=m&v^~m&b,E=g&y^~g&w,A=i.default.add5L(_,t,E,s[S],l[S]),P=i.default.add5H(A,x,e,k,a[S],c[S]),O=0|A,T=i.default.rotrSH(r,n,28)^i.default.rotrBH(r,n,34)^i.default.rotrBH(r,n,39),C=i.default.rotrSL(r,n,28)^i.default.rotrBL(r,n,34)^i.default.rotrBL(r,n,39),j=r&o^r&d^o&d,R=n&u^n&h^u&h;x=0|b,_=0|w,b=0|v,w=0|y,v=0|m,y=0|g,({h:m,l:g}=i.default.add(0|f,0|p,0|P,0|O)),f=0|d,p=0|h,d=0|o,h=0|u,o=0|r,u=0|n;const I=i.default.add3L(O,C,R);r=i.default.add3H(I,P,T,j),n=0|I}({h:r,l:n}=i.default.add(0|this.Ah,0|this.Al,0|r,0|n)),({h:o,l:u}=i.default.add(0|this.Bh,0|this.Bl,0|o,0|u)),({h:d,l:h}=i.default.add(0|this.Ch,0|this.Cl,0|d,0|h)),({h:f,l:p}=i.default.add(0|this.Dh,0|this.Dl,0|f,0|p)),({h:m,l:g}=i.default.add(0|this.Eh,0|this.El,0|m,0|g)),({h:v,l:y}=i.default.add(0|this.Fh,0|this.Fl,0|v,0|y)),({h:b,l:w}=i.default.add(0|this.Gh,0|this.Gl,0|b,0|w)),({h:x,l:_}=i.default.add(0|this.Hh,0|this.Hl,0|x,0|_)),this.set(r,n,o,u,d,h,f,p,m,g,v,y,b,w,x,_)}roundClean(){c.fill(0),l.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}t.SHA512=u;class d extends u{constructor(){super(),this.Ah=-1942145080,this.Al=424955298,this.Bh=1944164710,this.Bl=-1982016298,this.Ch=502970286,this.Cl=855612546,this.Dh=1738396948,this.Dl=1479516111,this.Eh=258812777,this.El=2077511080,this.Fh=2011393907,this.Fl=79989058,this.Gh=1067287976,this.Gl=1780299464,this.Hh=286451373,this.Hl=-1848208735,this.outputLen=28}}class h extends u{constructor(){super(),this.Ah=573645204,this.Al=-64227540,this.Bh=-1621794909,this.Bl=-934517566,this.Ch=596883563,this.Cl=1867755857,this.Dh=-1774684391,this.Dl=1497426621,this.Eh=-1775747358,this.El=-1467023389,this.Fh=-1101128155,this.Fl=1401305490,this.Gh=721525244,this.Gl=746961066,this.Hh=246885852,this.Hl=-2117784414,this.outputLen=32}}class f extends u{constructor(){super(),this.Ah=-876896931,this.Al=-1056596264,this.Bh=1654270250,this.Bl=914150663,this.Ch=-1856437926,this.Cl=812702999,this.Dh=355462360,this.Dl=-150054599,this.Eh=1731405415,this.El=-4191439,this.Fh=-1900787065,this.Fl=1750603025,this.Gh=-619958771,this.Gl=1694076839,this.Hh=1203062813,this.Hl=-1090891868,this.outputLen=48}}t.sha512=(0,o.wrapConstructor)((()=>new u)),t.sha512_224=(0,o.wrapConstructor)((()=>new d)),t.sha512_256=(0,o.wrapConstructor)((()=>new h)),t.sha384=(0,o.wrapConstructor)((()=>new f))},9041:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomBytes=t.wrapConstructorWithOpts=t.wrapConstructor=t.checkOpts=t.Hash=t.concatBytes=t.toBytes=t.utf8ToBytes=t.asyncLoop=t.nextTick=t.hexToBytes=t.bytesToHex=t.isLE=t.rotr=t.createView=t.u32=t.u8=void 0;const n=r(2639);t.u8=e=>new Uint8Array(e.buffer,e.byteOffset,e.byteLength);t.u32=e=>new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4));t.createView=e=>new DataView(e.buffer,e.byteOffset,e.byteLength);if(t.rotr=(e,t)=>e<<32-t|e>>>t,t.isLE=68===new Uint8Array(new Uint32Array([287454020]).buffer)[0],!t.isLE)throw new Error("Non little-endian hardware is not supported");const i=Array.from({length:256},((e,t)=>t.toString(16).padStart(2,"0")));t.bytesToHex=function(e){if(!(e instanceof Uint8Array))throw new Error("Uint8Array expected");let t="";for(let r=0;r{},t.asyncLoop=async function(e,r,n){let i=Date.now();for(let o=0;o=0&&ee instanceof Uint8Array)))throw new Error("Uint8Array list expected");if(1===e.length)return e[0];const t=e.reduce(((e,t)=>e+t.length),0),r=new Uint8Array(t);for(let n=0,i=0;ne().update(a(t)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t},t.wrapConstructorWithOpts=function(e){const t=(t,r)=>e(r).update(a(t)).digest(),r=e({});return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=t=>e(t),t},t.randomBytes=function(e=32){if(n.crypto&&"function"===typeof n.crypto.getRandomValues)return n.crypto.getRandomValues(new Uint8Array(e));throw new Error("crypto.getRandomValues must be defined")}},7318:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(6880);function i(e,t,r){return void 0===t&&(t=new Uint8Array(2)),void 0===r&&(r=0),t[r+0]=e>>>8,t[r+1]=e>>>0,t}function o(e,t,r){return void 0===t&&(t=new Uint8Array(2)),void 0===r&&(r=0),t[r+0]=e>>>0,t[r+1]=e>>>8,t}function a(e,t){return void 0===t&&(t=0),e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]}function s(e,t){return void 0===t&&(t=0),(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}function c(e,t){return void 0===t&&(t=0),e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t]}function l(e,t){return void 0===t&&(t=0),(e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t])>>>0}function u(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),t[r+0]=e>>>24,t[r+1]=e>>>16,t[r+2]=e>>>8,t[r+3]=e>>>0,t}function d(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),t[r+0]=e>>>0,t[r+1]=e>>>8,t[r+2]=e>>>16,t[r+3]=e>>>24,t}function h(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),u(e/4294967296>>>0,t,r),u(e>>>0,t,r+4),t}function f(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),d(e>>>0,t,r),d(e/4294967296>>>0,t,r+4),t}t.readInt16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])<<16>>16},t.readUint16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])>>>0},t.readInt16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])<<16>>16},t.readUint16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])>>>0},t.writeUint16BE=i,t.writeInt16BE=i,t.writeUint16LE=o,t.writeInt16LE=o,t.readInt32BE=a,t.readUint32BE=s,t.readInt32LE=c,t.readUint32LE=l,t.writeUint32BE=u,t.writeInt32BE=u,t.writeUint32LE=d,t.writeInt32LE=d,t.readInt64BE=function(e,t){void 0===t&&(t=0);var r=a(e,t),n=a(e,t+4);return 4294967296*r+n-4294967296*(n>>31)},t.readUint64BE=function(e,t){return void 0===t&&(t=0),4294967296*s(e,t)+s(e,t+4)},t.readInt64LE=function(e,t){void 0===t&&(t=0);var r=c(e,t);return 4294967296*c(e,t+4)+r-4294967296*(r>>31)},t.readUint64LE=function(e,t){void 0===t&&(t=0);var r=l(e,t);return 4294967296*l(e,t+4)+r},t.writeUint64BE=h,t.writeInt64BE=h,t.writeUint64LE=f,t.writeInt64LE=f,t.readUintBE=function(e,t,r){if(void 0===r&&(r=0),e%8!==0)throw new Error("readUintBE supports only bitLengths divisible by 8");if(e/8>t.length-r)throw new Error("readUintBE: array is too short for the given bitLength");for(var n=0,i=1,o=e/8+r-1;o>=r;o--)n+=t[o]*i,i*=256;return n},t.readUintLE=function(e,t,r){if(void 0===r&&(r=0),e%8!==0)throw new Error("readUintLE supports only bitLengths divisible by 8");if(e/8>t.length-r)throw new Error("readUintLE: array is too short for the given bitLength");for(var n=0,i=1,o=r;o=i;a--)r[a]=t/o&255,o*=256;return r},t.writeUintLE=function(e,t,r,i){if(void 0===r&&(r=new Uint8Array(e/8)),void 0===i&&(i=0),e%8!==0)throw new Error("writeUintLE supports only bitLengths divisible by 8");if(!n.isSafeInteger(t))throw new Error("writeUintLE value must be an integer");for(var o=1,a=i;a{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(7318),i=r(3133);t.BLOCK_SIZE=128,t.DIGEST_LENGTH=64,t.KEY_LENGTH=64,t.PERSONALIZATION_LENGTH=16,t.SALT_LENGTH=16,t.MAX_LEAF_SIZE=Math.pow(2,32)-1,t.MAX_FANOUT=255,t.MAX_MAX_DEPTH=255;var o=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),a=[[0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30],[28,20,8,16,18,30,26,12,2,24,0,4,22,14,10,6],[22,16,24,0,10,4,30,26,20,28,6,12,14,2,18,8],[14,18,6,2,26,24,22,28,4,12,10,20,8,0,30,16],[18,0,10,14,4,8,20,30,28,2,22,24,12,16,6,26],[4,24,12,20,0,22,16,6,8,26,14,10,30,28,2,18],[24,10,2,30,28,26,8,20,0,14,12,6,18,4,16,22],[26,22,14,28,24,2,6,18,10,0,30,8,16,12,4,20],[12,30,28,18,22,6,0,16,24,4,26,14,2,8,20,10],[20,4,16,8,14,12,2,10,30,22,18,28,6,24,26,0],[0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30],[28,20,8,16,18,30,26,12,2,24,0,4,22,14,10,6]],s=function(){function e(e,r){if(void 0===e&&(e=64),this.digestLength=e,this.blockSize=t.BLOCK_SIZE,this._state=new Int32Array(o),this._buffer=new Uint8Array(t.BLOCK_SIZE),this._bufferLength=0,this._ctr=new Uint32Array(4),this._flag=new Uint32Array(4),this._lastNode=!1,this._finished=!1,this._vtmp=new Uint32Array(32),this._mtmp=new Uint32Array(32),e<1||e>t.DIGEST_LENGTH)throw new Error("blake2b: wrong digest length");r&&this.validateConfig(r);var i=0;r&&r.key&&(i=r.key.length);var a=1,s=1;r&&r.tree&&(a=r.tree.fanout,s=r.tree.maxDepth),this._state[0]^=e|i<<8|a<<16|s<<24,r&&r.tree&&(this._state[1]^=r.tree.leafSize,this._state[2]^=r.tree.nodeOffsetLowBits,this._state[3]^=r.tree.nodeOffsetHighBits,this._state[4]^=r.tree.nodeDepth|r.tree.innerDigestLength<<8,this._lastNode=r.tree.lastNode),r&&r.salt&&(this._state[8]^=n.readUint32LE(r.salt,0),this._state[9]^=n.readUint32LE(r.salt,4),this._state[10]^=n.readUint32LE(r.salt,8),this._state[11]^=n.readUint32LE(r.salt,12)),r&&r.personalization&&(this._state[12]^=n.readUint32LE(r.personalization,0),this._state[13]^=n.readUint32LE(r.personalization,4),this._state[14]^=n.readUint32LE(r.personalization,8),this._state[15]^=n.readUint32LE(r.personalization,12)),this._initialState=new Uint32Array(this._state),r&&r.key&&i>0&&(this._paddedKey=new Uint8Array(t.BLOCK_SIZE),this._paddedKey.set(r.key),this._buffer.set(this._paddedKey),this._bufferLength=t.BLOCK_SIZE)}return e.prototype.reset=function(){return this._state.set(this._initialState),this._paddedKey?(this._buffer.set(this._paddedKey),this._bufferLength=t.BLOCK_SIZE):this._bufferLength=0,i.wipe(this._ctr),i.wipe(this._flag),this._finished=!1,this},e.prototype.validateConfig=function(e){if(e.key&&e.key.length>t.KEY_LENGTH)throw new Error("blake2b: wrong key length");if(e.salt&&e.salt.length!==t.SALT_LENGTH)throw new Error("blake2b: wrong salt length");if(e.personalization&&e.personalization.length!==t.PERSONALIZATION_LENGTH)throw new Error("blake2b: wrong personalization length");if(e.tree){if(e.tree.fanout<0||e.tree.fanout>t.MAX_FANOUT)throw new Error("blake2b: wrong tree fanout");if(e.tree.maxDepth<0||e.tree.maxDepth>t.MAX_MAX_DEPTH)throw new Error("blake2b: wrong tree depth");if(e.tree.leafSize<0||e.tree.leafSize>t.MAX_LEAF_SIZE)throw new Error("blake2b: wrong leaf size");if(e.tree.innerDigestLength<0||e.tree.innerDigestLength>t.DIGEST_LENGTH)throw new Error("blake2b: wrong tree inner digest length")}},e.prototype.update=function(e,r){if(void 0===r&&(r=e.length),this._finished)throw new Error("blake2b: can't update because hash was finished.");var n=t.BLOCK_SIZE-this._bufferLength,i=0;if(0===r)return this;if(r>n){for(var o=0;ot.BLOCK_SIZE;){for(o=0;o>>16,S=65535&p,k=p>>>16;_+=m>>>16,S+=65535&g,k+=g>>>16,S+=(_+=(x+=65535&m)>>>16)>>>16,x=65535&(f=65535&x|_<<16),_=f>>>16,S=65535&(p=65535&S|(k+=S>>>16)<<16),k=p>>>16,_+=l>>>16,S+=65535&u,k+=u>>>16,f=65535&(x+=65535&l)|(_+=x>>>16)<<16,x=w^=p=65535&(S+=_>>>16)|(k+=S>>>16)<<16,w=b^=f,b=x,x=65535&v,_=v>>>16,S=65535&y,k=y>>>16,_+=b>>>16,S+=65535&w,k+=w>>>16,x=(m^=v=65535&(x+=65535&b)|(_+=x>>>16)<<16)<<8|(g^=y=65535&(S+=_>>>16)|(k+=S>>>16)<<16)>>>24,m=g<<8|m>>>24,g=x,x=65535&f,_=f>>>16,S=65535&p,k=p>>>16,_+=m>>>16,S+=65535&g,k+=g>>>16,S+=(_+=(x+=65535&m)>>>16)>>>16,x=65535&(f=65535&x|_<<16),_=f>>>16,S=65535&(p=65535&S|(k+=S>>>16)<<16),k=p>>>16,_+=d>>>16,S+=65535&h,k+=h>>>16,x=(b^=f=65535&(x+=65535&d)|(_+=x>>>16)<<16)<<16|(w^=p=65535&(S+=_>>>16)|(k+=S>>>16)<<16)>>>16,b=w<<16|b>>>16,w=x,x=65535&v,_=v>>>16,S=65535&y,k=y>>>16,_+=b>>>16,S+=65535&w,k+=w>>>16,x=(g^=y=65535&(S+=(_+=(x+=65535&b)>>>16)>>>16)|(k+=S>>>16)<<16)<<1|(m^=v=65535&x|_<<16)>>>31,m=m<<1|g>>>31,g=x,e[t]=f,e[o]=p,e[r]=m,e[a]=g,e[n]=v,e[s]=y,e[i]=b,e[c]=w},e.prototype._incrementCounter=function(e){for(var t=0;t<3;t++){var r=this._ctr[t]+e;if(this._ctr[t]=r>>>0,this._ctr[t]===r)return;e=1}},e.prototype._processBlock=function(e){this._incrementCounter(e);var t=this._vtmp;t.set(this._state),t.set(o,16),t[24]^=this._ctr[0],t[25]^=this._ctr[1],t[26]^=this._ctr[2],t[27]^=this._ctr[3],t[28]^=this._flag[0],t[29]^=this._flag[1],t[30]^=this._flag[2],t[31]^=this._flag[3];for(var r=this._mtmp,i=0;i<32;i++)r[i]=n.readUint32LE(this._buffer,4*i);for(var s=0;s<12;s++)this._G(t,0,8,16,24,1,9,17,25,r[a[s][0]],r[a[s][0]+1],r[a[s][1]],r[a[s][1]+1]),this._G(t,2,10,18,26,3,11,19,27,r[a[s][2]],r[a[s][2]+1],r[a[s][3]],r[a[s][3]+1]),this._G(t,4,12,20,28,5,13,21,29,r[a[s][4]],r[a[s][4]+1],r[a[s][5]],r[a[s][5]+1]),this._G(t,6,14,22,30,7,15,23,31,r[a[s][6]],r[a[s][6]+1],r[a[s][7]],r[a[s][7]+1]),this._G(t,0,10,20,30,1,11,21,31,r[a[s][8]],r[a[s][8]+1],r[a[s][9]],r[a[s][9]+1]),this._G(t,2,12,22,24,3,13,23,25,r[a[s][10]],r[a[s][10]+1],r[a[s][11]],r[a[s][11]+1]),this._G(t,4,14,16,26,5,15,17,27,r[a[s][12]],r[a[s][12]+1],r[a[s][13]],r[a[s][13]+1]),this._G(t,6,8,18,28,7,9,19,29,r[a[s][14]],r[a[s][14]+1],r[a[s][15]],r[a[s][15]+1]);for(i=0;i<16;i++)this._state[i]^=t[i]^t[i+16]},e}();t.BLAKE2b=s,t.hash=function(e,r,n){void 0===r&&(r=t.DIGEST_LENGTH);var i=new s(r,n);i.update(e);var o=i.digest();return i.clean(),o}},4082:(e,t)=>{"use strict";t.z=function(){for(var e=0,t=0;t{"use strict";function r(e,t){if(e.length!==t.length)return 0;for(var r=0,n=0;n>>8}Object.defineProperty(t,"__esModule",{value:!0}),t.select=function(e,t,r){return~(e-1)&t|e-1&r},t.lessOrEqual=function(e,t){return(0|e)-(0|t)-1>>>31&1},t.compare=r,t.equal=function(e,t){return 0!==e.length&&0!==t.length&&0!==r(e,t)}},4670:(e,t,r)=>{"use strict";t.zh=t.SH=t.Xx=t._w=t.aP=t.KS=t.jQ=void 0;const n=r(5164),i=r(4516),o=r(3133);function a(e){const t=new Float64Array(16);if(e)for(let r=0;r>16&1),r[t-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);const e=r[15]>>16&1;r[14]&=65535,g(n,r,1-e)}for(let i=0;i<16;i++)e[2*i]=255&n[i],e[2*i+1]=n[i]>>8}function y(e,t){let r=0;for(let n=0;n<32;n++)r|=e[n]^t[n];return(1&r-1>>>8)-1}function b(e,t){const r=new Uint8Array(32),n=new Uint8Array(32);return v(r,e),v(n,t),y(r,n)}function w(e){const t=new Uint8Array(32);return v(t,e),1&t[0]}function x(e,t,r){for(let n=0;n<16;n++)e[n]=t[n]+r[n]}function _(e,t,r){for(let n=0;n<16;n++)e[n]=t[n]-r[n]}function S(e,t,r){let n,i,o=0,a=0,s=0,c=0,l=0,u=0,d=0,h=0,f=0,p=0,m=0,g=0,v=0,y=0,b=0,w=0,x=0,_=0,S=0,k=0,E=0,A=0,P=0,O=0,T=0,C=0,j=0,R=0,I=0,M=0,L=0,N=r[0],D=r[1],z=r[2],B=r[3],U=r[4],F=r[5],$=r[6],H=r[7],V=r[8],q=r[9],K=r[10],W=r[11],G=r[12],Z=r[13],Y=r[14],X=r[15];n=t[0],o+=n*N,a+=n*D,s+=n*z,c+=n*B,l+=n*U,u+=n*F,d+=n*$,h+=n*H,f+=n*V,p+=n*q,m+=n*K,g+=n*W,v+=n*G,y+=n*Z,b+=n*Y,w+=n*X,n=t[1],a+=n*N,s+=n*D,c+=n*z,l+=n*B,u+=n*U,d+=n*F,h+=n*$,f+=n*H,p+=n*V,m+=n*q,g+=n*K,v+=n*W,y+=n*G,b+=n*Z,w+=n*Y,x+=n*X,n=t[2],s+=n*N,c+=n*D,l+=n*z,u+=n*B,d+=n*U,h+=n*F,f+=n*$,p+=n*H,m+=n*V,g+=n*q,v+=n*K,y+=n*W,b+=n*G,w+=n*Z,x+=n*Y,_+=n*X,n=t[3],c+=n*N,l+=n*D,u+=n*z,d+=n*B,h+=n*U,f+=n*F,p+=n*$,m+=n*H,g+=n*V,v+=n*q,y+=n*K,b+=n*W,w+=n*G,x+=n*Z,_+=n*Y,S+=n*X,n=t[4],l+=n*N,u+=n*D,d+=n*z,h+=n*B,f+=n*U,p+=n*F,m+=n*$,g+=n*H,v+=n*V,y+=n*q,b+=n*K,w+=n*W,x+=n*G,_+=n*Z,S+=n*Y,k+=n*X,n=t[5],u+=n*N,d+=n*D,h+=n*z,f+=n*B,p+=n*U,m+=n*F,g+=n*$,v+=n*H,y+=n*V,b+=n*q,w+=n*K,x+=n*W,_+=n*G,S+=n*Z,k+=n*Y,E+=n*X,n=t[6],d+=n*N,h+=n*D,f+=n*z,p+=n*B,m+=n*U,g+=n*F,v+=n*$,y+=n*H,b+=n*V,w+=n*q,x+=n*K,_+=n*W,S+=n*G,k+=n*Z,E+=n*Y,A+=n*X,n=t[7],h+=n*N,f+=n*D,p+=n*z,m+=n*B,g+=n*U,v+=n*F,y+=n*$,b+=n*H,w+=n*V,x+=n*q,_+=n*K,S+=n*W,k+=n*G,E+=n*Z,A+=n*Y,P+=n*X,n=t[8],f+=n*N,p+=n*D,m+=n*z,g+=n*B,v+=n*U,y+=n*F,b+=n*$,w+=n*H,x+=n*V,_+=n*q,S+=n*K,k+=n*W,E+=n*G,A+=n*Z,P+=n*Y,O+=n*X,n=t[9],p+=n*N,m+=n*D,g+=n*z,v+=n*B,y+=n*U,b+=n*F,w+=n*$,x+=n*H,_+=n*V,S+=n*q,k+=n*K,E+=n*W,A+=n*G,P+=n*Z,O+=n*Y,T+=n*X,n=t[10],m+=n*N,g+=n*D,v+=n*z,y+=n*B,b+=n*U,w+=n*F,x+=n*$,_+=n*H,S+=n*V,k+=n*q,E+=n*K,A+=n*W,P+=n*G,O+=n*Z,T+=n*Y,C+=n*X,n=t[11],g+=n*N,v+=n*D,y+=n*z,b+=n*B,w+=n*U,x+=n*F,_+=n*$,S+=n*H,k+=n*V,E+=n*q,A+=n*K,P+=n*W,O+=n*G,T+=n*Z,C+=n*Y,j+=n*X,n=t[12],v+=n*N,y+=n*D,b+=n*z,w+=n*B,x+=n*U,_+=n*F,S+=n*$,k+=n*H,E+=n*V,A+=n*q,P+=n*K,O+=n*W,T+=n*G,C+=n*Z,j+=n*Y,R+=n*X,n=t[13],y+=n*N,b+=n*D,w+=n*z,x+=n*B,_+=n*U,S+=n*F,k+=n*$,E+=n*H,A+=n*V,P+=n*q,O+=n*K,T+=n*W,C+=n*G,j+=n*Z,R+=n*Y,I+=n*X,n=t[14],b+=n*N,w+=n*D,x+=n*z,_+=n*B,S+=n*U,k+=n*F,E+=n*$,A+=n*H,P+=n*V,O+=n*q,T+=n*K,C+=n*W,j+=n*G,R+=n*Z,I+=n*Y,M+=n*X,n=t[15],w+=n*N,x+=n*D,_+=n*z,S+=n*B,k+=n*U,E+=n*F,A+=n*$,P+=n*H,O+=n*V,T+=n*q,C+=n*K,j+=n*W,R+=n*G,I+=n*Z,M+=n*Y,L+=n*X,o+=38*x,a+=38*_,s+=38*S,c+=38*k,l+=38*E,u+=38*A,d+=38*P,h+=38*O,f+=38*T,p+=38*C,m+=38*j,g+=38*R,v+=38*I,y+=38*M,b+=38*L,i=1,n=o+i+65535,i=Math.floor(n/65536),o=n-65536*i,n=a+i+65535,i=Math.floor(n/65536),a=n-65536*i,n=s+i+65535,i=Math.floor(n/65536),s=n-65536*i,n=c+i+65535,i=Math.floor(n/65536),c=n-65536*i,n=l+i+65535,i=Math.floor(n/65536),l=n-65536*i,n=u+i+65535,i=Math.floor(n/65536),u=n-65536*i,n=d+i+65535,i=Math.floor(n/65536),d=n-65536*i,n=h+i+65535,i=Math.floor(n/65536),h=n-65536*i,n=f+i+65535,i=Math.floor(n/65536),f=n-65536*i,n=p+i+65535,i=Math.floor(n/65536),p=n-65536*i,n=m+i+65535,i=Math.floor(n/65536),m=n-65536*i,n=g+i+65535,i=Math.floor(n/65536),g=n-65536*i,n=v+i+65535,i=Math.floor(n/65536),v=n-65536*i,n=y+i+65535,i=Math.floor(n/65536),y=n-65536*i,n=b+i+65535,i=Math.floor(n/65536),b=n-65536*i,n=w+i+65535,i=Math.floor(n/65536),w=n-65536*i,o+=i-1+37*(i-1),i=1,n=o+i+65535,i=Math.floor(n/65536),o=n-65536*i,n=a+i+65535,i=Math.floor(n/65536),a=n-65536*i,n=s+i+65535,i=Math.floor(n/65536),s=n-65536*i,n=c+i+65535,i=Math.floor(n/65536),c=n-65536*i,n=l+i+65535,i=Math.floor(n/65536),l=n-65536*i,n=u+i+65535,i=Math.floor(n/65536),u=n-65536*i,n=d+i+65535,i=Math.floor(n/65536),d=n-65536*i,n=h+i+65535,i=Math.floor(n/65536),h=n-65536*i,n=f+i+65535,i=Math.floor(n/65536),f=n-65536*i,n=p+i+65535,i=Math.floor(n/65536),p=n-65536*i,n=m+i+65535,i=Math.floor(n/65536),m=n-65536*i,n=g+i+65535,i=Math.floor(n/65536),g=n-65536*i,n=v+i+65535,i=Math.floor(n/65536),v=n-65536*i,n=y+i+65535,i=Math.floor(n/65536),y=n-65536*i,n=b+i+65535,i=Math.floor(n/65536),b=n-65536*i,n=w+i+65535,i=Math.floor(n/65536),w=n-65536*i,o+=i-1+37*(i-1),e[0]=o,e[1]=a,e[2]=s,e[3]=c,e[4]=l,e[5]=u,e[6]=d,e[7]=h,e[8]=f,e[9]=p,e[10]=m,e[11]=g,e[12]=v,e[13]=y,e[14]=b,e[15]=w}function k(e,t){S(e,t,t)}function E(e,t){const r=a();let n;for(n=0;n<16;n++)r[n]=t[n];for(n=253;n>=0;n--)k(r,r),2!==n&&4!==n&&S(r,r,t);for(n=0;n<16;n++)e[n]=r[n]}function A(e,t){const r=a(),n=a(),i=a(),o=a(),s=a(),c=a(),l=a(),d=a(),h=a();_(r,e[1],e[0]),_(h,t[1],t[0]),S(r,r,h),x(n,e[0],e[1]),x(h,t[0],t[1]),S(n,n,h),S(i,e[3],t[3]),S(i,i,u),S(o,e[2],t[2]),x(o,o,o),_(s,n,r),_(c,o,i),x(l,o,i),x(d,n,r),S(e[0],s,c),S(e[1],d,l),S(e[2],l,c),S(e[3],s,d)}function P(e,t,r){for(let n=0;n<4;n++)g(e[n],t[n],r)}function O(e,t){const r=a(),n=a(),i=a();E(i,t[2]),S(r,t[0],i),S(n,t[1],i),v(e,n),e[31]^=w(r)<<7}function T(e,t,r){p(e[0],s),p(e[1],c),p(e[2],c),p(e[3],s);for(let n=255;n>=0;--n){const i=r[n/8|0]>>(7&n)&1;P(e,t,i),A(t,e),A(e,e),P(e,t,i)}}function C(e,t){const r=[a(),a(),a(),a()];p(r[0],d),p(r[1],h),p(r[2],c),S(r[3],d,h),T(e,r,t)}function j(e){if(e.length!==t.aP)throw new Error(`ed25519: seed must be ${t.aP} bytes`);const r=(0,i.hash)(e);r[0]&=248,r[31]&=127,r[31]|=64;const n=new Uint8Array(32),o=[a(),a(),a(),a()];C(o,r),O(n,o);const s=new Uint8Array(64);return s.set(e),s.set(n,32),{publicKey:n,secretKey:s}}t._w=j;const R=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function I(e,t){let r,n,i,o;for(n=63;n>=32;--n){for(r=0,i=n-32,o=n-12;i>4)*R[i],r=t[i]>>8,t[i]&=255;for(i=0;i<32;i++)t[i]-=r*R[i];for(n=0;n<32;n++)t[n+1]+=t[n]>>8,e[n]=255&t[n]}function M(e){const t=new Float64Array(64);for(let r=0;r<64;r++)t[r]=e[r];for(let r=0;r<64;r++)e[r]=0;I(e,t)}function L(e,t){const r=a(),n=a(),i=a(),o=a(),u=a(),d=a(),h=a();return p(e[2],c),function(e,t){for(let r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}(e[1],t),k(i,e[1]),S(o,i,l),_(i,i,e[2]),x(o,e[2],o),k(u,o),k(d,u),S(h,d,u),S(r,h,i),S(r,r,o),function(e,t){const r=a();let n;for(n=0;n<16;n++)r[n]=t[n];for(n=250;n>=0;n--)k(r,r),1!==n&&S(r,r,t);for(n=0;n<16;n++)e[n]=r[n]}(r,r),S(r,r,i),S(r,r,o),S(r,r,o),S(e[0],r,o),k(n,e[0]),S(n,n,o),b(n,i)&&S(e[0],e[0],f),k(n,e[0]),S(n,n,o),b(n,i)?-1:(w(e[0])===t[31]>>7&&_(e[0],s,e[0]),S(e[3],e[0],e[1]),0)}t.Xx=function(e,t){const r=new Float64Array(64),n=[a(),a(),a(),a()],o=(0,i.hash)(e.subarray(0,32));o[0]&=248,o[31]&=127,o[31]|=64;const s=new Uint8Array(64);s.set(o.subarray(32),32);const c=new i.SHA512;c.update(s.subarray(32)),c.update(t);const l=c.digest();c.clean(),M(l),C(n,l),O(s,n),c.reset(),c.update(s.subarray(0,32)),c.update(e.subarray(32)),c.update(t);const u=c.digest();M(u);for(let i=0;i<32;i++)r[i]=l[i];for(let i=0;i<32;i++)for(let e=0;e<32;e++)r[i+e]+=u[i]*o[e];return I(s.subarray(32),r),s},t.SH=function(e){let t=[a(),a(),a(),a()];if(L(t,e))throw new Error("Ed25519: invalid public key");let r=a(),n=a(),i=t[1];x(r,c,i),_(n,c,i),E(n,n),S(r,r,n);let o=new Uint8Array(32);return v(o,r),o},t.zh=function(e){const t=(0,i.hash)(e.subarray(0,32));t[0]&=248,t[31]&=127,t[31]|=64;const r=new Uint8Array(t.subarray(0,32));return(0,o.wipe)(t),r}},393:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSerializableHash=function(e){return"undefined"!==typeof e.saveState&&"undefined"!==typeof e.restoreState&&"undefined"!==typeof e.cleanSavedState}},1787:(e,t,r)=>{"use strict";var n=r(393),i=r(6433),o=r(3133),a=function(){function e(e,t){this._finished=!1,this._inner=new e,this._outer=new e,this.blockSize=this._outer.blockSize,this.digestLength=this._outer.digestLength;var r=new Uint8Array(this.blockSize);t.length>this.blockSize?this._inner.update(t).finish(r).clean():r.set(t);for(var i=0;i{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mul=Math.imul||function(e,t){var r=65535&e,n=65535&t;return r*n+((e>>>16&65535)*n+r*(t>>>16&65535)<<16>>>0)|0},t.add=function(e,t){return e+t|0},t.sub=function(e,t){return e-t|0},t.rotl=function(e,t){return e<>>32-t},t.rotr=function(e,t){return e<<32-t|e>>>t},t.isInteger=Number.isInteger||function(e){return"number"===typeof e&&isFinite(e)&&Math.floor(e)===e},t.MAX_SAFE_INTEGER=9007199254740991,t.isSafeInteger=function(e){return t.isInteger(e)&&e>=-t.MAX_SAFE_INTEGER&&e<=t.MAX_SAFE_INTEGER}},168:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.openBox=t.box=t.precomputeSharedKey=t.generateKeyPair=void 0;const n=r(4592),i=r(3911),o=r(7054),a=r(3133);var s=r(4592);Object.defineProperty(t,"generateKeyPair",{enumerable:!0,get:function(){return s.generateKeyPair}});const c=new Uint8Array(16);function l(e,t){const r=(0,n.scalarMult)(t,e);return(0,i.hsalsa)(r,c,r),r}t.precomputeSharedKey=l,t.box=function(e,t,r,n){const i=l(e,t),s=(0,o.secretBox)(i,r,n);return(0,a.wipe)(i),s},t.openBox=function(e,t,r,n){const i=l(e,t),s=(0,o.openSecretBox)(i,r,n);return(0,a.wipe)(i),s}},8945:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(168),t),i(r(7054),t)},7054:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.generateKey=t.openSecretBox=t.secretBox=void 0;const n=r(3911),i=r(3795),o=r(3133),a=r(5164);t.secretBox=function(e,t,r){if(24!==t.length)throw new Error("secretBox nonce must be 24 bytes");const a=new Uint8Array(64),s=new Uint8Array(32);s.set(t),(0,n.stream)(e,s,a,8);const c=new Uint8Array(16+r.length);for(let n=0;n<32&&n32&&(0,n.streamXOR)(e,s,r.subarray(32),c.subarray(48),8);const l=(0,i.oneTimeAuth)(a.subarray(0,32),c.subarray(16));for(let n=0;n32&&(0,n.streamXOR)(e,s,l.subarray(32),u.subarray(32),8),(0,o.wipe)(c),(0,o.wipe)(a),(0,o.wipe)(s),u},t.generateKey=function(e){return(0,a.randomBytes)(32,e)}},3795:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(6433),i=r(3133);t.DIGEST_LENGTH=16;var o=function(){function e(e){this.digestLength=t.DIGEST_LENGTH,this._buffer=new Uint8Array(16),this._r=new Uint16Array(10),this._h=new Uint16Array(10),this._pad=new Uint16Array(8),this._leftover=0,this._fin=0,this._finished=!1;var r=e[0]|e[1]<<8;this._r[0]=8191&r;var n=e[2]|e[3]<<8;this._r[1]=8191&(r>>>13|n<<3);var i=e[4]|e[5]<<8;this._r[2]=7939&(n>>>10|i<<6);var o=e[6]|e[7]<<8;this._r[3]=8191&(i>>>7|o<<9);var a=e[8]|e[9]<<8;this._r[4]=255&(o>>>4|a<<12),this._r[5]=a>>>1&8190;var s=e[10]|e[11]<<8;this._r[6]=8191&(a>>>14|s<<2);var c=e[12]|e[13]<<8;this._r[7]=8065&(s>>>11|c<<5);var l=e[14]|e[15]<<8;this._r[8]=8191&(c>>>8|l<<8),this._r[9]=l>>>5&127,this._pad[0]=e[16]|e[17]<<8,this._pad[1]=e[18]|e[19]<<8,this._pad[2]=e[20]|e[21]<<8,this._pad[3]=e[22]|e[23]<<8,this._pad[4]=e[24]|e[25]<<8,this._pad[5]=e[26]|e[27]<<8,this._pad[6]=e[28]|e[29]<<8,this._pad[7]=e[30]|e[31]<<8}return e.prototype._blocks=function(e,t,r){for(var n=this._fin?0:2048,i=this._h[0],o=this._h[1],a=this._h[2],s=this._h[3],c=this._h[4],l=this._h[5],u=this._h[6],d=this._h[7],h=this._h[8],f=this._h[9],p=this._r[0],m=this._r[1],g=this._r[2],v=this._r[3],y=this._r[4],b=this._r[5],w=this._r[6],x=this._r[7],_=this._r[8],S=this._r[9];r>=16;){var k=e[t+0]|e[t+1]<<8;i+=8191&k;var E=e[t+2]|e[t+3]<<8;o+=8191&(k>>>13|E<<3);var A=e[t+4]|e[t+5]<<8;a+=8191&(E>>>10|A<<6);var P=e[t+6]|e[t+7]<<8;s+=8191&(A>>>7|P<<9);var O=e[t+8]|e[t+9]<<8;c+=8191&(P>>>4|O<<12),l+=O>>>1&8191;var T=e[t+10]|e[t+11]<<8;u+=8191&(O>>>14|T<<2);var C=e[t+12]|e[t+13]<<8;d+=8191&(T>>>11|C<<5);var j=e[t+14]|e[t+15]<<8,R=0,I=R;I+=i*p,I+=o*(5*S),I+=a*(5*_),I+=s*(5*x),R=(I+=c*(5*w))>>>13,I&=8191,I+=l*(5*b),I+=u*(5*y),I+=d*(5*v),I+=(h+=8191&(C>>>8|j<<8))*(5*g);var M=R+=(I+=(f+=j>>>5|n)*(5*m))>>>13;M+=i*m,M+=o*p,M+=a*(5*S),M+=s*(5*_),R=(M+=c*(5*x))>>>13,M&=8191,M+=l*(5*w),M+=u*(5*b),M+=d*(5*y),M+=h*(5*v),R+=(M+=f*(5*g))>>>13,M&=8191;var L=R;L+=i*g,L+=o*m,L+=a*p,L+=s*(5*S),R=(L+=c*(5*_))>>>13,L&=8191,L+=l*(5*x),L+=u*(5*w),L+=d*(5*b),L+=h*(5*y);var N=R+=(L+=f*(5*v))>>>13;N+=i*v,N+=o*g,N+=a*m,N+=s*p,R=(N+=c*(5*S))>>>13,N&=8191,N+=l*(5*_),N+=u*(5*x),N+=d*(5*w),N+=h*(5*b);var D=R+=(N+=f*(5*y))>>>13;D+=i*y,D+=o*v,D+=a*g,D+=s*m,R=(D+=c*p)>>>13,D&=8191,D+=l*(5*S),D+=u*(5*_),D+=d*(5*x),D+=h*(5*w);var z=R+=(D+=f*(5*b))>>>13;z+=i*b,z+=o*y,z+=a*v,z+=s*g,R=(z+=c*m)>>>13,z&=8191,z+=l*p,z+=u*(5*S),z+=d*(5*_),z+=h*(5*x);var B=R+=(z+=f*(5*w))>>>13;B+=i*w,B+=o*b,B+=a*y,B+=s*v,R=(B+=c*g)>>>13,B&=8191,B+=l*m,B+=u*p,B+=d*(5*S),B+=h*(5*_);var U=R+=(B+=f*(5*x))>>>13;U+=i*x,U+=o*w,U+=a*b,U+=s*y,R=(U+=c*v)>>>13,U&=8191,U+=l*g,U+=u*m,U+=d*p,U+=h*(5*S);var F=R+=(U+=f*(5*_))>>>13;F+=i*_,F+=o*x,F+=a*w,F+=s*b,R=(F+=c*y)>>>13,F&=8191,F+=l*v,F+=u*g,F+=d*m,F+=h*p;var $=R+=(F+=f*(5*S))>>>13;$+=i*S,$+=o*_,$+=a*x,$+=s*w,R=($+=c*b)>>>13,$&=8191,$+=l*y,$+=u*v,$+=d*g,$+=h*m,i=I=8191&(R=(R=((R+=($+=f*p)>>>13)<<2)+R|0)+(I&=8191)|0),o=M+=R>>>=13,a=L&=8191,s=N&=8191,c=D&=8191,l=z&=8191,u=B&=8191,d=U&=8191,h=F&=8191,f=$&=8191,t+=16,r-=16}this._h[0]=i,this._h[1]=o,this._h[2]=a,this._h[3]=s,this._h[4]=c,this._h[5]=l,this._h[6]=u,this._h[7]=d,this._h[8]=h,this._h[9]=f},e.prototype.finish=function(e,t){void 0===t&&(t=0);var r,n,i,o,a=new Uint16Array(10);if(this._leftover){for(o=this._leftover,this._buffer[o++]=1;o<16;o++)this._buffer[o]=0;this._fin=1,this._blocks(this._buffer,0,16)}for(r=this._h[1]>>>13,this._h[1]&=8191,o=2;o<10;o++)this._h[o]+=r,r=this._h[o]>>>13,this._h[o]&=8191;for(this._h[0]+=5*r,r=this._h[0]>>>13,this._h[0]&=8191,this._h[1]+=r,r=this._h[1]>>>13,this._h[1]&=8191,this._h[2]+=r,a[0]=this._h[0]+5,r=a[0]>>>13,a[0]&=8191,o=1;o<10;o++)a[o]=this._h[o]+r,r=a[o]>>>13,a[o]&=8191;for(a[9]-=8192,n=(1^r)-1,o=0;o<10;o++)a[o]&=n;for(n=~n,o=0;o<10;o++)this._h[o]=this._h[o]&n|a[o];for(this._h[0]=65535&(this._h[0]|this._h[1]<<13),this._h[1]=65535&(this._h[1]>>>3|this._h[2]<<10),this._h[2]=65535&(this._h[2]>>>6|this._h[3]<<7),this._h[3]=65535&(this._h[3]>>>9|this._h[4]<<4),this._h[4]=65535&(this._h[4]>>>12|this._h[5]<<1|this._h[6]<<14),this._h[5]=65535&(this._h[6]>>>2|this._h[7]<<11),this._h[6]=65535&(this._h[7]>>>5|this._h[8]<<8),this._h[7]=65535&(this._h[8]>>>8|this._h[9]<<5),i=this._h[0]+this._pad[0],this._h[0]=65535&i,o=1;o<8;o++)i=(this._h[o]+this._pad[o]|0)+(i>>>16)|0,this._h[o]=65535&i;return e[t+0]=this._h[0]>>>0,e[t+1]=this._h[0]>>>8,e[t+2]=this._h[1]>>>0,e[t+3]=this._h[1]>>>8,e[t+4]=this._h[2]>>>0,e[t+5]=this._h[2]>>>8,e[t+6]=this._h[3]>>>0,e[t+7]=this._h[3]>>>8,e[t+8]=this._h[4]>>>0,e[t+9]=this._h[4]>>>8,e[t+10]=this._h[5]>>>0,e[t+11]=this._h[5]>>>8,e[t+12]=this._h[6]>>>0,e[t+13]=this._h[6]>>>8,e[t+14]=this._h[7]>>>0,e[t+15]=this._h[7]>>>8,this._finished=!0,this},e.prototype.update=function(e){var t,r=0,n=e.length;if(this._leftover){(t=16-this._leftover)>n&&(t=n);for(var i=0;i=16&&(t=n-n%16,this._blocks(e,r,t),r+=t,n-=t),n){for(i=0;i{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.randomStringForEntropy=t.randomString=t.randomUint32=t.randomBytes=t.defaultRandomSource=void 0;const n=r(9973),i=r(7318),o=r(3133);function a(e,r=t.defaultRandomSource){return r.randomBytes(e)}t.defaultRandomSource=new n.SystemRandomSource,t.randomBytes=a,t.randomUint32=function(e=t.defaultRandomSource){const r=a(4,e),n=(0,i.readUint32LE)(r);return(0,o.wipe)(r),n};const s="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function c(e,r=s,n=t.defaultRandomSource){if(r.length<2)throw new Error("randomString charset is too short");if(r.length>256)throw new Error("randomString charset is too long");let i="";const c=r.length,l=256-256%c;for(;e>0;){const t=a(Math.ceil(256*e/l),n);for(let n=0;n0;n++){const o=t[n];o{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BrowserRandomSource=void 0;t.BrowserRandomSource=class{constructor(){this.isAvailable=!1,this.isInstantiated=!1;const e="undefined"!==typeof self?self.crypto||self.msCrypto:null;e&&void 0!==e.getRandomValues&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");const t=new Uint8Array(e);for(let r=0;r{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NodeRandomSource=void 0;const n=r(3133);t.NodeRandomSource=class{constructor(){this.isAvailable=!1,this.isInstantiated=!1;{const e=r(5883);e&&e.randomBytes&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");let t=this._crypto.randomBytes(e);if(t.length!==e)throw new Error("NodeRandomSource: got fewer bytes than requested");const r=new Uint8Array(e);for(let n=0;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SystemRandomSource=void 0;const n=r(6373),i=r(4042);t.SystemRandomSource=class{constructor(){return this.isAvailable=!1,this.name="",this._source=new n.BrowserRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Browser")):(this._source=new i.NodeRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Node")):void 0)}randomBytes(e){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(e)}}},4336:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(7318),i=r(3133),o=20;function a(e,t,r){for(var i,a=1634760805,s=r[3]<<24|r[2]<<16|r[1]<<8|r[0],c=r[7]<<24|r[6]<<16|r[5]<<8|r[4],l=r[11]<<24|r[10]<<16|r[9]<<8|r[8],u=r[15]<<24|r[14]<<16|r[13]<<8|r[12],d=857760878,h=t[3]<<24|t[2]<<16|t[1]<<8|t[0],f=t[7]<<24|t[6]<<16|t[5]<<8|t[4],p=t[11]<<24|t[10]<<16|t[9]<<8|t[8],m=t[15]<<24|t[14]<<16|t[13]<<8|t[12],g=2036477234,v=r[19]<<24|r[18]<<16|r[17]<<8|r[16],y=r[23]<<24|r[22]<<16|r[21]<<8|r[20],b=r[27]<<24|r[26]<<16|r[25]<<8|r[24],w=r[31]<<24|r[30]<<16|r[29]<<8|r[28],x=1797285236,_=a,S=s,k=c,E=l,A=u,P=d,O=h,T=f,C=p,j=m,R=g,I=v,M=y,L=b,N=w,D=x,z=0;z>>25)+_|0)<<9|i>>>23)+A|0)<<13|i>>>19)+C|0)<<18|i>>>14,P^=(i=(S^=(i=(L^=(i=(j^=(i=P+S|0)<<7|i>>>25)+P|0)<<9|i>>>23)+j|0)<<13|i>>>19)+L|0)<<18|i>>>14,R^=(i=(O^=(i=(k^=(i=(N^=(i=R+O|0)<<7|i>>>25)+R|0)<<9|i>>>23)+N|0)<<13|i>>>19)+k|0)<<18|i>>>14,D^=(i=(I^=(i=(T^=(i=(E^=(i=D+I|0)<<7|i>>>25)+D|0)<<9|i>>>23)+E|0)<<13|i>>>19)+T|0)<<18|i>>>14,_^=(i=(E^=(i=(k^=(i=(S^=(i=_+E|0)<<7|i>>>25)+_|0)<<9|i>>>23)+S|0)<<13|i>>>19)+k|0)<<18|i>>>14,P^=(i=(A^=(i=(T^=(i=(O^=(i=P+A|0)<<7|i>>>25)+P|0)<<9|i>>>23)+O|0)<<13|i>>>19)+T|0)<<18|i>>>14,R^=(i=(j^=(i=(C^=(i=(I^=(i=R+j|0)<<7|i>>>25)+R|0)<<9|i>>>23)+I|0)<<13|i>>>19)+C|0)<<18|i>>>14,D^=(i=(N^=(i=(L^=(i=(M^=(i=D+N|0)<<7|i>>>25)+D|0)<<9|i>>>23)+M|0)<<13|i>>>19)+L|0)<<18|i>>>14;n.writeUint32LE(_+a|0,e,0),n.writeUint32LE(S+s|0,e,4),n.writeUint32LE(k+c|0,e,8),n.writeUint32LE(E+l|0,e,12),n.writeUint32LE(A+u|0,e,16),n.writeUint32LE(P+d|0,e,20),n.writeUint32LE(O+h|0,e,24),n.writeUint32LE(T+f|0,e,28),n.writeUint32LE(C+p|0,e,32),n.writeUint32LE(j+m|0,e,36),n.writeUint32LE(R+g|0,e,40),n.writeUint32LE(I+v|0,e,44),n.writeUint32LE(M+y|0,e,48),n.writeUint32LE(L+b|0,e,52),n.writeUint32LE(N+w|0,e,56),n.writeUint32LE(D+x|0,e,60)}function s(e,t,r,n,o){if(void 0===o&&(o=0),32!==e.length)throw new Error("Salsa20: key size must be 32 bytes");if(n.length>>=8,t++;if(n>0)throw new Error("Salsa20: counter overflow")}t.streamXOR=s,t.stream=function(e,t,r,n){return void 0===n&&(n=0),i.wipe(r),s(e,t,r,r,n)}},4516:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(7318),i=r(3133);t.DIGEST_LENGTH=64,t.BLOCK_SIZE=128;var o=function(){function e(){this.digestLength=t.DIGEST_LENGTH,this.blockSize=t.BLOCK_SIZE,this._stateHi=new Int32Array(8),this._stateLo=new Int32Array(8),this._tempHi=new Int32Array(16),this._tempLo=new Int32Array(16),this._buffer=new Uint8Array(256),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this.reset()}return e.prototype._initState=function(){this._stateHi[0]=1779033703,this._stateHi[1]=3144134277,this._stateHi[2]=1013904242,this._stateHi[3]=2773480762,this._stateHi[4]=1359893119,this._stateHi[5]=2600822924,this._stateHi[6]=528734635,this._stateHi[7]=1541459225,this._stateLo[0]=4089235720,this._stateLo[1]=2227873595,this._stateLo[2]=4271175723,this._stateLo[3]=1595750129,this._stateLo[4]=2917565137,this._stateLo[5]=725511199,this._stateLo[6]=4215389547,this._stateLo[7]=327033209},e.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},e.prototype.clean=function(){i.wipe(this._buffer),i.wipe(this._tempHi),i.wipe(this._tempLo),this.reset()},e.prototype.update=function(e,r){if(void 0===r&&(r=e.length),this._finished)throw new Error("SHA512: can't update because hash was finished.");var n=0;if(this._bytesHashed+=r,this._bufferLength>0){for(;this._bufferLength0;)this._buffer[this._bufferLength++]=e[n++],r--;this._bufferLength===this.blockSize&&(s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,this.blockSize),this._bufferLength=0)}for(r>=this.blockSize&&(n=s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,e,n,r),r%=this.blockSize);r>0;)this._buffer[this._bufferLength++]=e[n++],r--;return this},e.prototype.finish=function(e){if(!this._finished){var t=this._bytesHashed,r=this._bufferLength,i=t/536870912|0,o=t<<3,a=t%128<112?128:256;this._buffer[r]=128;for(var c=r+1;c0?new Uint8Array(this._buffer):void 0,bufferLength:this._bufferLength,bytesHashed:this._bytesHashed}},e.prototype.restoreState=function(e){return this._stateHi.set(e.stateHi),this._stateLo.set(e.stateLo),this._bufferLength=e.bufferLength,e.buffer&&this._buffer.set(e.buffer),this._bytesHashed=e.bytesHashed,this._finished=!1,this},e.prototype.cleanSavedState=function(e){i.wipe(e.stateHi),i.wipe(e.stateLo),e.buffer&&i.wipe(e.buffer),e.bufferLength=0,e.bytesHashed=0},e}();t.SHA512=o;var a=new Int32Array([1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591]);function s(e,t,r,i,o,s,c){for(var l,u,d,h,f,p,m,g,v=r[0],y=r[1],b=r[2],w=r[3],x=r[4],_=r[5],S=r[6],k=r[7],E=i[0],A=i[1],P=i[2],O=i[3],T=i[4],C=i[5],j=i[6],R=i[7];c>=128;){for(var I=0;I<16;I++){var M=8*I+s;e[I]=n.readUint32BE(o,M),t[I]=n.readUint32BE(o,M+4)}for(I=0;I<80;I++){var L,N,D=v,z=y,B=b,U=w,F=x,$=_,H=S,V=E,q=A,K=P,W=O,G=T,Z=C,Y=j;if(f=65535&(u=R),p=u>>>16,m=65535&(l=k),g=l>>>16,f+=65535&(u=(T>>>14|x<<18)^(T>>>18|x<<14)^(x>>>9|T<<23)),p+=u>>>16,m+=65535&(l=(x>>>14|T<<18)^(x>>>18|T<<14)^(T>>>9|x<<23)),g+=l>>>16,f+=65535&(u=T&C^~T&j),p+=u>>>16,m+=65535&(l=x&_^~x&S),g+=l>>>16,l=a[2*I],f+=65535&(u=a[2*I+1]),p+=u>>>16,m+=65535&l,g+=l>>>16,l=e[I%16],p+=(u=t[I%16])>>>16,m+=65535&l,g+=l>>>16,m+=(p+=(f+=65535&u)>>>16)>>>16,f=65535&(u=h=65535&f|p<<16),p=u>>>16,m=65535&(l=d=65535&m|(g+=m>>>16)<<16),g=l>>>16,f+=65535&(u=(E>>>28|v<<4)^(v>>>2|E<<30)^(v>>>7|E<<25)),p+=u>>>16,m+=65535&(l=(v>>>28|E<<4)^(E>>>2|v<<30)^(E>>>7|v<<25)),g+=l>>>16,p+=(u=E&A^E&P^A&P)>>>16,m+=65535&(l=v&y^v&b^y&b),g+=l>>>16,L=65535&(m+=(p+=(f+=65535&u)>>>16)>>>16)|(g+=m>>>16)<<16,N=65535&f|p<<16,f=65535&(u=W),p=u>>>16,m=65535&(l=U),g=l>>>16,p+=(u=h)>>>16,m+=65535&(l=d),g+=l>>>16,y=D,b=z,w=B,x=U=65535&(m+=(p+=(f+=65535&u)>>>16)>>>16)|(g+=m>>>16)<<16,_=F,S=$,k=H,v=L,A=V,P=q,O=K,T=W=65535&f|p<<16,C=G,j=Z,R=Y,E=N,I%16===15)for(M=0;M<16;M++)l=e[M],f=65535&(u=t[M]),p=u>>>16,m=65535&l,g=l>>>16,l=e[(M+9)%16],f+=65535&(u=t[(M+9)%16]),p+=u>>>16,m+=65535&l,g+=l>>>16,d=e[(M+1)%16],f+=65535&(u=((h=t[(M+1)%16])>>>1|d<<31)^(h>>>8|d<<24)^(h>>>7|d<<25)),p+=u>>>16,m+=65535&(l=(d>>>1|h<<31)^(d>>>8|h<<24)^d>>>7),g+=l>>>16,d=e[(M+14)%16],p+=(u=((h=t[(M+14)%16])>>>19|d<<13)^(d>>>29|h<<3)^(h>>>6|d<<26))>>>16,m+=65535&(l=(d>>>19|h<<13)^(h>>>29|d<<3)^d>>>6),g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,e[M]=65535&m|g<<16,t[M]=65535&f|p<<16}f=65535&(u=E),p=u>>>16,m=65535&(l=v),g=l>>>16,l=r[0],p+=(u=i[0])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[0]=v=65535&m|g<<16,i[0]=E=65535&f|p<<16,f=65535&(u=A),p=u>>>16,m=65535&(l=y),g=l>>>16,l=r[1],p+=(u=i[1])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[1]=y=65535&m|g<<16,i[1]=A=65535&f|p<<16,f=65535&(u=P),p=u>>>16,m=65535&(l=b),g=l>>>16,l=r[2],p+=(u=i[2])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[2]=b=65535&m|g<<16,i[2]=P=65535&f|p<<16,f=65535&(u=O),p=u>>>16,m=65535&(l=w),g=l>>>16,l=r[3],p+=(u=i[3])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[3]=w=65535&m|g<<16,i[3]=O=65535&f|p<<16,f=65535&(u=T),p=u>>>16,m=65535&(l=x),g=l>>>16,l=r[4],p+=(u=i[4])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[4]=x=65535&m|g<<16,i[4]=T=65535&f|p<<16,f=65535&(u=C),p=u>>>16,m=65535&(l=_),g=l>>>16,l=r[5],p+=(u=i[5])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[5]=_=65535&m|g<<16,i[5]=C=65535&f|p<<16,f=65535&(u=j),p=u>>>16,m=65535&(l=S),g=l>>>16,l=r[6],p+=(u=i[6])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[6]=S=65535&m|g<<16,i[6]=j=65535&f|p<<16,f=65535&(u=R),p=u>>>16,m=65535&(l=k),g=l>>>16,l=r[7],p+=(u=i[7])>>>16,m+=65535&l,g+=l>>>16,g+=(m+=(p+=(f+=65535&u)>>>16)>>>16)>>>16,r[7]=k=65535&m|g<<16,i[7]=R=65535&f|p<<16,s+=128,c-=128}return s}t.hash=function(e){var t=new o;t.update(e);var r=t.digest();return t.clean(),r}},9070:(e,t)=>{"use strict";var r="utf8: invalid string",n="utf8: invalid source encoding";function i(e){for(var t=0,n=0;n=e.length-1)throw new Error(r);n++,t+=4}}return t}t.cv=function(e){for(var t=new Uint8Array(i(e)),r=0,n=0;n>6,t[r++]=128|63&o):o<55296?(t[r++]=224|o>>12,t[r++]=128|o>>6&63,t[r++]=128|63&o):(n++,o=(1023&o)<<10,o|=1023&e.charCodeAt(n),o+=65536,t[r++]=240|o>>18,t[r++]=128|o>>12&63,t[r++]=128|o>>6&63,t[r++]=128|63&o)}return t}},3133:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.wipe=function(e){for(var t=0;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.X25519Session=t.SECRET_SEED_LENGTH=t.SAVED_STATE_LENGTH=t.ACCEPT_MESSAGE_LENGTH=t.OFFER_MESSAGE_LENGTH=void 0;const n=r(5164),i=r(3133),o=r(4592),a=r(347);t.OFFER_MESSAGE_LENGTH=o.PUBLIC_KEY_LENGTH,t.ACCEPT_MESSAGE_LENGTH=o.PUBLIC_KEY_LENGTH,t.SAVED_STATE_LENGTH=o.SECRET_KEY_LENGTH,t.SECRET_SEED_LENGTH=o.SECRET_KEY_LENGTH;t.X25519Session=class{constructor(e,r){this.offerMessageLength=t.OFFER_MESSAGE_LENGTH,this.acceptMessageLength=t.ACCEPT_MESSAGE_LENGTH,this.sharedKeyLength=o.SHARED_KEY_LENGTH,this.savedStateLength=t.SAVED_STATE_LENGTH,this._seed=e||(0,n.randomBytes)(o.SECRET_KEY_LENGTH,r)}saveState(){return new Uint8Array(this._seed)}restoreState(e){return this._seed=new Uint8Array(e),this}clean(){this._seed&&(0,i.wipe)(this._seed),this._keyPair&&((0,i.wipe)(this._keyPair.secretKey),(0,i.wipe)(this._keyPair.publicKey)),this._sharedKey&&(0,i.wipe)(this._sharedKey),this._sessionKeys&&((0,i.wipe)(this._sessionKeys.receive),(0,i.wipe)(this._sessionKeys.send))}offer(){return this._keyPair=(0,o.generateKeyPairFromSeed)(this._seed),new Uint8Array(this._keyPair.publicKey)}accept(e){if(this._keyPair)throw new Error("X25519Session: accept shouldn't be called by offering party");if(e.length!==this.offerMessageLength)throw new Error("X25519Session: incorrect offer message length");if(this._sharedKey)throw new Error("X25519Session: accept was already called");const t=(0,o.generateKeyPairFromSeed)(this._seed);return this._sharedKey=(0,o.sharedKey)(t.secretKey,e),this._sessionKeys=(0,a.clientSessionKeysFromSharedKey)(this._sharedKey,t.publicKey,e),(0,i.wipe)(t.secretKey),t.publicKey}finish(e){if(e.length!==this.acceptMessageLength)throw new Error("X25519Session: incorrect accept message length");if(!this._keyPair)throw new Error("X25519Session: no offer state");if(this._sharedKey)throw new Error("X25519Session: finish was already called");return this._sharedKey=(0,o.sharedKey)(this._keyPair.secretKey,e),this._sessionKeys=(0,a.serverSessionKeysFromSharedKey)(this._sharedKey,this._keyPair.publicKey,e),this}getSharedKey(){if(!this._sharedKey)throw new Error("X25519Session: no shared key established");return new Uint8Array(this._sharedKey)}getSessionKeys(){if(!this._sessionKeys)throw new Error("X25519Session: no shared key established");return{receive:new Uint8Array(this._sessionKeys.receive),send:new Uint8Array(this._sessionKeys.send)}}}},347:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.clientSessionKeys=t.serverSessionKeys=t.clientSessionKeysFromSharedKey=t.serverSessionKeysFromSharedKey=t.X25519Session=void 0;const n=r(448),i=r(4592);var o=r(6758);Object.defineProperty(t,"X25519Session",{enumerable:!0,get:function(){return o.X25519Session}});const a=32;function s(e,t,r,i=n.BLAKE2b){const o=new i;if(o.digestLength!==2*a)throw new Error("X25519: incorrect digest length");const s=o.update(e).update(r).update(t).digest();return{send:s.subarray(0,a),receive:s.subarray(a)}}function c(e,t,r,i=n.BLAKE2b){const o=new i;if(o.digestLength!==2*a)throw new Error("X25519: incorrect digest length");const s=o.update(e).update(t).update(r).digest();return{receive:s.subarray(0,a),send:s.subarray(a)}}t.serverSessionKeysFromSharedKey=s,t.clientSessionKeysFromSharedKey=c,t.serverSessionKeys=function(e,t,r=n.BLAKE2b){return s((0,i.sharedKey)(e.secretKey,t),e.publicKey,t,r)},t.clientSessionKeys=function(e,t,r=n.BLAKE2b){return c((0,i.sharedKey)(e.secretKey,t),e.publicKey,t,r)}},4592:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.sharedKey=t.generateKeyPair=t.generateKeyPairFromSeed=t.scalarMultBase=t.scalarMult=t.SHARED_KEY_LENGTH=t.SECRET_KEY_LENGTH=t.PUBLIC_KEY_LENGTH=void 0;const n=r(5164),i=r(3133);function o(e){const t=new Float64Array(16);if(e)for(let r=0;r=0;--o){const e=r[o>>>3]>>>(7&o)&1;l(i,a,e),l(p,m,e),u(g,i,p),d(i,i,p),u(p,a,m),d(a,a,m),f(m,g),f(v,i),h(i,p,i),h(p,a,g),u(g,i,p),d(i,i,p),f(a,i),d(p,m,v),h(i,p,s),u(i,i,m),h(p,p,i),h(i,m,v),h(m,a,n),f(a,g),l(i,a,e),l(p,m,e)}for(let o=0;o<16;o++)n[o+16]=i[o],n[o+32]=p[o],n[o+48]=a[o],n[o+64]=m[o];const y=n.subarray(32),b=n.subarray(16);!function(e,t){const r=o();for(let n=0;n<16;n++)r[n]=t[n];for(let n=253;n>=0;n--)f(r,r),2!==n&&4!==n&&h(r,r,t);for(let n=0;n<16;n++)e[n]=r[n]}(y,y),h(b,b,y);const w=new Uint8Array(32);return function(e,t){const r=o(),n=o();for(let i=0;i<16;i++)n[i]=t[i];c(n),c(n),c(n);for(let i=0;i<2;i++){r[0]=n[0]-65517;for(let t=1;t<15;t++)r[t]=n[t]-65535-(r[t-1]>>16&1),r[t-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);const e=r[15]>>16&1;r[14]&=65535,l(n,r,1-e)}for(let i=0;i<16;i++)e[2*i]=255&n[i],e[2*i+1]=n[i]>>8}(w,b),w}function m(e){return p(e,a)}function g(e){if(e.length!==t.SECRET_KEY_LENGTH)throw new Error(`x25519: seed must be ${t.SECRET_KEY_LENGTH} bytes`);const r=new Uint8Array(e);return{publicKey:m(r),secretKey:r}}t.scalarMult=p,t.scalarMultBase=m,t.generateKeyPairFromSeed=g,t.generateKeyPair=function(e){const t=(0,n.randomBytes)(32,e),r=g(t);return(0,i.wipe)(t),r},t.sharedKey=function(e,r,n=!1){if(e.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect secret key length");if(r.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect public key length");const i=p(e,r);if(n){let e=0;for(let t=0;t{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(7318),i=r(4336),o=r(3133);function a(e,t,r,n,a){if(void 0===a&&(a=0),0===a){if(24!==t.length)throw new Error("XSalsa20 nonce must be 24 bytes")}else if(32!==t.length)throw new Error("XSalsa20 nonce with counter must be 32 bytes");var s=c(e,t.subarray(0,16),new Uint8Array(32)),l=i.streamXOR(s,t.subarray(16),r,n,a);return o.wipe(s),l}t.streamXOR=a,t.stream=function(e,t,r,n){return void 0===n&&(n=0),o.wipe(r),a(e,t,r,r,n)};var s=20;function c(e,t,r){for(var i,o=1634760805,a=e[3]<<24|e[2]<<16|e[1]<<8|e[0],c=e[7]<<24|e[6]<<16|e[5]<<8|e[4],l=e[11]<<24|e[10]<<16|e[9]<<8|e[8],u=e[15]<<24|e[14]<<16|e[13]<<8|e[12],d=857760878,h=t[3]<<24|t[2]<<16|t[1]<<8|t[0],f=t[7]<<24|t[6]<<16|t[5]<<8|t[4],p=t[11]<<24|t[10]<<16|t[9]<<8|t[8],m=t[15]<<24|t[14]<<16|t[13]<<8|t[12],g=2036477234,v=e[19]<<24|e[18]<<16|e[17]<<8|e[16],y=e[23]<<24|e[22]<<16|e[21]<<8|e[20],b=e[27]<<24|e[26]<<16|e[25]<<8|e[24],w=e[31]<<24|e[30]<<16|e[29]<<8|e[28],x=1797285236,_=0;_>>25)+o|0)<<9|i>>>23)+u|0)<<13|i>>>19)+p|0)<<18|i>>>14,d^=(i=(a^=(i=(b^=(i=(m^=(i=d+a|0)<<7|i>>>25)+d|0)<<9|i>>>23)+m|0)<<13|i>>>19)+b|0)<<18|i>>>14,g^=(i=(h^=(i=(c^=(i=(w^=(i=g+h|0)<<7|i>>>25)+g|0)<<9|i>>>23)+w|0)<<13|i>>>19)+c|0)<<18|i>>>14,x^=(i=(v^=(i=(f^=(i=(l^=(i=x+v|0)<<7|i>>>25)+x|0)<<9|i>>>23)+l|0)<<13|i>>>19)+f|0)<<18|i>>>14,o^=(i=(l^=(i=(c^=(i=(a^=(i=o+l|0)<<7|i>>>25)+o|0)<<9|i>>>23)+a|0)<<13|i>>>19)+c|0)<<18|i>>>14,d^=(i=(u^=(i=(f^=(i=(h^=(i=d+u|0)<<7|i>>>25)+d|0)<<9|i>>>23)+h|0)<<13|i>>>19)+f|0)<<18|i>>>14,g^=(i=(m^=(i=(p^=(i=(v^=(i=g+m|0)<<7|i>>>25)+g|0)<<9|i>>>23)+v|0)<<13|i>>>19)+p|0)<<18|i>>>14,x^=(i=(w^=(i=(b^=(i=(y^=(i=x+w|0)<<7|i>>>25)+x|0)<<9|i>>>23)+y|0)<<13|i>>>19)+b|0)<<18|i>>>14;return n.writeUint32LE(o,r,0),n.writeUint32LE(d,r,4),n.writeUint32LE(g,r,8),n.writeUint32LE(x,r,12),n.writeUint32LE(h,r,16),n.writeUint32LE(f,r,20),n.writeUint32LE(p,r,24),n.writeUint32LE(m,r,28),r}t.hsalsa=c},1017:e=>{"use strict";e.exports=function(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r>>0,l=new Uint8Array(o);e[r];){var u=t[e.charCodeAt(r)];if(255===u)return;for(var d=0,h=o-1;(0!==u||d>>0,l[h]=u%256>>>0,u=u/256>>>0;if(0!==u)throw new Error("Non-zero carry");i=d,r++}for(var f=o-i;f!==o&&0===l[f];)f++;for(var p=new Uint8Array(n+(o-f)),m=n;f!==o;)p[m++]=l[f++];return p}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(0===t.length)return"";for(var r=0,n=0,i=0,o=t.length;i!==o&&0===t[i];)i++,r++;for(var c=(o-i)*l+1>>>0,u=new Uint8Array(c);i!==o;){for(var d=t[i],h=0,f=c-1;(0!==d||h>>0,u[f]=d%a>>>0,d=d/a>>>0;if(0!==d)throw new Error("Non-zero carry");n=h,i++}for(var p=c-n;p!==c&&0===u[p];)p++;for(var m=s.repeat(r);p{const n=r(1017);e.exports=n("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},4020:(e,t,r)=>{"use strict";var n=r(748);e.exports=function(e){function t(t){var r=t.slice(0,-4),n=t.slice(-4),i=e(r);if(!(n[0]^i[0]|n[1]^i[1]|n[2]^i[2]|n[3]^i[3]))return r}return{encode:function(t){var r=Uint8Array.from(t),i=e(r),o=r.length+4,a=new Uint8Array(o);return a.set(r,0),a.set(i.subarray(0,4),r.length),n.encode(a,o)},decode:function(e){var r=t(n.decode(e));if(!r)throw new Error("Invalid checksum");return r},decodeUnsafe:function(e){var r=n.decodeUnsafe(e);if(r)return t(r)}}}},7491:(e,t,r)=>{"use strict";var{sha256:n}=r(1985),i=r(4020);e.exports=i((function(e){return n(n(e))}))},4203:function(e,t,r){!function(e,t){"use strict";function n(e,t){if(!e)throw new Error(t||"Assertion failed")}function i(e,t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}function o(e,t,r){if(o.isBN(e))return e;this.negative=0,this.words=null,this.length=0,this.red=null,null!==e&&("le"!==t&&"be"!==t||(r=t,t=10),this._init(e||0,t||10,r||"be"))}var a;"object"===typeof e?e.exports=o:t.BN=o,o.BN=o,o.wordSize=26;try{a="undefined"!==typeof window&&"undefined"!==typeof window.Buffer?window.Buffer:r(3018).Buffer}catch(O){}function s(e,t){var r=e.charCodeAt(t);return r>=48&&r<=57?r-48:r>=65&&r<=70?r-55:r>=97&&r<=102?r-87:void n(!1,"Invalid character in "+e)}function c(e,t,r){var n=s(e,r);return r-1>=t&&(n|=s(e,r-1)<<4),n}function l(e,t,r,i){for(var o=0,a=0,s=Math.min(e.length,r),c=t;c=49?l-49+10:l>=17?l-17+10:l,n(l>=0&&a0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,r){if("number"===typeof e)return this._initNumber(e,t,r);if("object"===typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),n(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)a=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(i=0,o=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this._strip()},o.prototype._parseHex=function(e,t,r){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n=t;n-=2)i=c(e,t,n)<=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;else for(n=(e.length-t)%2===0?t+1:t;n=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;this._strip()},o.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var o=e.length-r,a=o%n,s=Math.min(o,o-a)+r,c=0,u=r;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},"undefined"!==typeof Symbol&&"function"===typeof Symbol.for)try{o.prototype[Symbol.for("nodejs.util.inspect.custom")]=d}catch(O){o.prototype.inspect=d}else o.prototype.inspect=d;function d(){return(this.red?""}var h=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],f=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],p=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];o.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var i=0,o=0,a=0;a>>24-i&16777215,(i+=2)>=26&&(i-=26,a--),r=0!==o||a!==this.length-1?h[6-c.length]+c+r:c+r}for(0!==o&&(r=o.toString(16)+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var l=f[e],u=p[e];r="";var d=this.clone();for(d.negative=0;!d.isZero();){var m=d.modrn(u).toString(e);r=(d=d.idivn(u)).isZero()?m+r:h[l-m.length]+m+r}for(this.isZero()&&(r="0"+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16,2)},a&&(o.prototype.toBuffer=function(e,t){return this.toArrayLike(a,e,t)}),o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)};function m(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],o=0|t.words[0],a=i*o,s=67108863&a,c=a/67108864|0;r.words[0]=s;for(var l=1;l>>26,d=67108863&c,h=Math.min(l,t.length-1),f=Math.max(0,l-e.length+1);f<=h;f++){var p=l-f|0;u+=(a=(i=0|e.words[p])*(o=0|t.words[f])+d)/67108864|0,d=67108863&a}r.words[l]=0|d,c=0|u}return 0!==c?r.words[l]=0|c:r.length--,r._strip()}o.prototype.toArrayLike=function(e,t,r){this._strip();var i=this.byteLength(),o=r||Math.max(1,i);n(i<=o,"byte array longer than desired length"),n(o>0,"Requested array length <= 0");var a=function(e,t){return e.allocUnsafe?e.allocUnsafe(t):new e(t)}(e,o);return this["_toArrayLike"+("le"===t?"LE":"BE")](a,i),a},o.prototype._toArrayLikeLE=function(e,t){for(var r=0,n=0,i=0,o=0;i>8&255),r>16&255),6===o?(r>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r=0&&(e[r--]=a>>8&255),r>=0&&(e[r--]=a>>16&255),6===o?(r>=0&&(e[r--]=a>>24&255),n=0,o=0):(n=a>>>24,o+=2)}if(r>=0)for(e[r--]=n;r>=0;)e[r--]=0},Math.clz32?o.prototype._countBits=function(e){return 32-Math.clz32(e)}:o.prototype._countBits=function(e){var t=e,r=0;return t>=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0===(8191&t)&&(r+=13,t>>>=13),0===(127&t)&&(r+=7,t>>>=7),0===(15&t)&&(r+=4,t>>>=4),0===(3&t)&&(r+=2,t>>>=2),0===(1&t)&&r++,r},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){n("number"===typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this._strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){n("number"===typeof e&&e>=0);var r=e/26|0,i=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;oe.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&t;for(;0!==o&&a>26,this.words[a]=67108863&t;if(0===o&&a>>13,f=0|a[1],p=8191&f,m=f>>>13,g=0|a[2],v=8191&g,y=g>>>13,b=0|a[3],w=8191&b,x=b>>>13,_=0|a[4],S=8191&_,k=_>>>13,E=0|a[5],A=8191&E,P=E>>>13,O=0|a[6],T=8191&O,C=O>>>13,j=0|a[7],R=8191&j,I=j>>>13,M=0|a[8],L=8191&M,N=M>>>13,D=0|a[9],z=8191&D,B=D>>>13,U=0|s[0],F=8191&U,$=U>>>13,H=0|s[1],V=8191&H,q=H>>>13,K=0|s[2],W=8191&K,G=K>>>13,Z=0|s[3],Y=8191&Z,X=Z>>>13,J=0|s[4],Q=8191&J,ee=J>>>13,te=0|s[5],re=8191&te,ne=te>>>13,ie=0|s[6],oe=8191&ie,ae=ie>>>13,se=0|s[7],ce=8191&se,le=se>>>13,ue=0|s[8],de=8191&ue,he=ue>>>13,fe=0|s[9],pe=8191&fe,me=fe>>>13;r.negative=e.negative^t.negative,r.length=19;var ge=(l+(n=Math.imul(d,F))|0)+((8191&(i=(i=Math.imul(d,$))+Math.imul(h,F)|0))<<13)|0;l=((o=Math.imul(h,$))+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(p,F),i=(i=Math.imul(p,$))+Math.imul(m,F)|0,o=Math.imul(m,$);var ve=(l+(n=n+Math.imul(d,V)|0)|0)+((8191&(i=(i=i+Math.imul(d,q)|0)+Math.imul(h,V)|0))<<13)|0;l=((o=o+Math.imul(h,q)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(v,F),i=(i=Math.imul(v,$))+Math.imul(y,F)|0,o=Math.imul(y,$),n=n+Math.imul(p,V)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(m,V)|0,o=o+Math.imul(m,q)|0;var ye=(l+(n=n+Math.imul(d,W)|0)|0)+((8191&(i=(i=i+Math.imul(d,G)|0)+Math.imul(h,W)|0))<<13)|0;l=((o=o+Math.imul(h,G)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,n=Math.imul(w,F),i=(i=Math.imul(w,$))+Math.imul(x,F)|0,o=Math.imul(x,$),n=n+Math.imul(v,V)|0,i=(i=i+Math.imul(v,q)|0)+Math.imul(y,V)|0,o=o+Math.imul(y,q)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,G)|0;var be=(l+(n=n+Math.imul(d,Y)|0)|0)+((8191&(i=(i=i+Math.imul(d,X)|0)+Math.imul(h,Y)|0))<<13)|0;l=((o=o+Math.imul(h,X)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(S,F),i=(i=Math.imul(S,$))+Math.imul(k,F)|0,o=Math.imul(k,$),n=n+Math.imul(w,V)|0,i=(i=i+Math.imul(w,q)|0)+Math.imul(x,V)|0,o=o+Math.imul(x,q)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,X)|0)+Math.imul(m,Y)|0,o=o+Math.imul(m,X)|0;var we=(l+(n=n+Math.imul(d,Q)|0)|0)+((8191&(i=(i=i+Math.imul(d,ee)|0)+Math.imul(h,Q)|0))<<13)|0;l=((o=o+Math.imul(h,ee)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(A,F),i=(i=Math.imul(A,$))+Math.imul(P,F)|0,o=Math.imul(P,$),n=n+Math.imul(S,V)|0,i=(i=i+Math.imul(S,q)|0)+Math.imul(k,V)|0,o=o+Math.imul(k,q)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(x,W)|0,o=o+Math.imul(x,G)|0,n=n+Math.imul(v,Y)|0,i=(i=i+Math.imul(v,X)|0)+Math.imul(y,Y)|0,o=o+Math.imul(y,X)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,ee)|0;var xe=(l+(n=n+Math.imul(d,re)|0)|0)+((8191&(i=(i=i+Math.imul(d,ne)|0)+Math.imul(h,re)|0))<<13)|0;l=((o=o+Math.imul(h,ne)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(T,F),i=(i=Math.imul(T,$))+Math.imul(C,F)|0,o=Math.imul(C,$),n=n+Math.imul(A,V)|0,i=(i=i+Math.imul(A,q)|0)+Math.imul(P,V)|0,o=o+Math.imul(P,q)|0,n=n+Math.imul(S,W)|0,i=(i=i+Math.imul(S,G)|0)+Math.imul(k,W)|0,o=o+Math.imul(k,G)|0,n=n+Math.imul(w,Y)|0,i=(i=i+Math.imul(w,X)|0)+Math.imul(x,Y)|0,o=o+Math.imul(x,X)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(m,re)|0,o=o+Math.imul(m,ne)|0;var _e=(l+(n=n+Math.imul(d,oe)|0)|0)+((8191&(i=(i=i+Math.imul(d,ae)|0)+Math.imul(h,oe)|0))<<13)|0;l=((o=o+Math.imul(h,ae)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(R,F),i=(i=Math.imul(R,$))+Math.imul(I,F)|0,o=Math.imul(I,$),n=n+Math.imul(T,V)|0,i=(i=i+Math.imul(T,q)|0)+Math.imul(C,V)|0,o=o+Math.imul(C,q)|0,n=n+Math.imul(A,W)|0,i=(i=i+Math.imul(A,G)|0)+Math.imul(P,W)|0,o=o+Math.imul(P,G)|0,n=n+Math.imul(S,Y)|0,i=(i=i+Math.imul(S,X)|0)+Math.imul(k,Y)|0,o=o+Math.imul(k,X)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,ee)|0)+Math.imul(x,Q)|0,o=o+Math.imul(x,ee)|0,n=n+Math.imul(v,re)|0,i=(i=i+Math.imul(v,ne)|0)+Math.imul(y,re)|0,o=o+Math.imul(y,ne)|0,n=n+Math.imul(p,oe)|0,i=(i=i+Math.imul(p,ae)|0)+Math.imul(m,oe)|0,o=o+Math.imul(m,ae)|0;var Se=(l+(n=n+Math.imul(d,ce)|0)|0)+((8191&(i=(i=i+Math.imul(d,le)|0)+Math.imul(h,ce)|0))<<13)|0;l=((o=o+Math.imul(h,le)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(L,F),i=(i=Math.imul(L,$))+Math.imul(N,F)|0,o=Math.imul(N,$),n=n+Math.imul(R,V)|0,i=(i=i+Math.imul(R,q)|0)+Math.imul(I,V)|0,o=o+Math.imul(I,q)|0,n=n+Math.imul(T,W)|0,i=(i=i+Math.imul(T,G)|0)+Math.imul(C,W)|0,o=o+Math.imul(C,G)|0,n=n+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,X)|0)+Math.imul(P,Y)|0,o=o+Math.imul(P,X)|0,n=n+Math.imul(S,Q)|0,i=(i=i+Math.imul(S,ee)|0)+Math.imul(k,Q)|0,o=o+Math.imul(k,ee)|0,n=n+Math.imul(w,re)|0,i=(i=i+Math.imul(w,ne)|0)+Math.imul(x,re)|0,o=o+Math.imul(x,ne)|0,n=n+Math.imul(v,oe)|0,i=(i=i+Math.imul(v,ae)|0)+Math.imul(y,oe)|0,o=o+Math.imul(y,ae)|0,n=n+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,le)|0)+Math.imul(m,ce)|0,o=o+Math.imul(m,le)|0;var ke=(l+(n=n+Math.imul(d,de)|0)|0)+((8191&(i=(i=i+Math.imul(d,he)|0)+Math.imul(h,de)|0))<<13)|0;l=((o=o+Math.imul(h,he)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(z,F),i=(i=Math.imul(z,$))+Math.imul(B,F)|0,o=Math.imul(B,$),n=n+Math.imul(L,V)|0,i=(i=i+Math.imul(L,q)|0)+Math.imul(N,V)|0,o=o+Math.imul(N,q)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(T,Y)|0,i=(i=i+Math.imul(T,X)|0)+Math.imul(C,Y)|0,o=o+Math.imul(C,X)|0,n=n+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,ee)|0)+Math.imul(P,Q)|0,o=o+Math.imul(P,ee)|0,n=n+Math.imul(S,re)|0,i=(i=i+Math.imul(S,ne)|0)+Math.imul(k,re)|0,o=o+Math.imul(k,ne)|0,n=n+Math.imul(w,oe)|0,i=(i=i+Math.imul(w,ae)|0)+Math.imul(x,oe)|0,o=o+Math.imul(x,ae)|0,n=n+Math.imul(v,ce)|0,i=(i=i+Math.imul(v,le)|0)+Math.imul(y,ce)|0,o=o+Math.imul(y,le)|0,n=n+Math.imul(p,de)|0,i=(i=i+Math.imul(p,he)|0)+Math.imul(m,de)|0,o=o+Math.imul(m,he)|0;var Ee=(l+(n=n+Math.imul(d,pe)|0)|0)+((8191&(i=(i=i+Math.imul(d,me)|0)+Math.imul(h,pe)|0))<<13)|0;l=((o=o+Math.imul(h,me)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(z,V),i=(i=Math.imul(z,q))+Math.imul(B,V)|0,o=Math.imul(B,q),n=n+Math.imul(L,W)|0,i=(i=i+Math.imul(L,G)|0)+Math.imul(N,W)|0,o=o+Math.imul(N,G)|0,n=n+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,X)|0)+Math.imul(I,Y)|0,o=o+Math.imul(I,X)|0,n=n+Math.imul(T,Q)|0,i=(i=i+Math.imul(T,ee)|0)+Math.imul(C,Q)|0,o=o+Math.imul(C,ee)|0,n=n+Math.imul(A,re)|0,i=(i=i+Math.imul(A,ne)|0)+Math.imul(P,re)|0,o=o+Math.imul(P,ne)|0,n=n+Math.imul(S,oe)|0,i=(i=i+Math.imul(S,ae)|0)+Math.imul(k,oe)|0,o=o+Math.imul(k,ae)|0,n=n+Math.imul(w,ce)|0,i=(i=i+Math.imul(w,le)|0)+Math.imul(x,ce)|0,o=o+Math.imul(x,le)|0,n=n+Math.imul(v,de)|0,i=(i=i+Math.imul(v,he)|0)+Math.imul(y,de)|0,o=o+Math.imul(y,he)|0;var Ae=(l+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,me)|0)+Math.imul(m,pe)|0))<<13)|0;l=((o=o+Math.imul(m,me)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(z,W),i=(i=Math.imul(z,G))+Math.imul(B,W)|0,o=Math.imul(B,G),n=n+Math.imul(L,Y)|0,i=(i=i+Math.imul(L,X)|0)+Math.imul(N,Y)|0,o=o+Math.imul(N,X)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,ee)|0,n=n+Math.imul(T,re)|0,i=(i=i+Math.imul(T,ne)|0)+Math.imul(C,re)|0,o=o+Math.imul(C,ne)|0,n=n+Math.imul(A,oe)|0,i=(i=i+Math.imul(A,ae)|0)+Math.imul(P,oe)|0,o=o+Math.imul(P,ae)|0,n=n+Math.imul(S,ce)|0,i=(i=i+Math.imul(S,le)|0)+Math.imul(k,ce)|0,o=o+Math.imul(k,le)|0,n=n+Math.imul(w,de)|0,i=(i=i+Math.imul(w,he)|0)+Math.imul(x,de)|0,o=o+Math.imul(x,he)|0;var Pe=(l+(n=n+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,me)|0)+Math.imul(y,pe)|0))<<13)|0;l=((o=o+Math.imul(y,me)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(z,Y),i=(i=Math.imul(z,X))+Math.imul(B,Y)|0,o=Math.imul(B,X),n=n+Math.imul(L,Q)|0,i=(i=i+Math.imul(L,ee)|0)+Math.imul(N,Q)|0,o=o+Math.imul(N,ee)|0,n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(I,re)|0,o=o+Math.imul(I,ne)|0,n=n+Math.imul(T,oe)|0,i=(i=i+Math.imul(T,ae)|0)+Math.imul(C,oe)|0,o=o+Math.imul(C,ae)|0,n=n+Math.imul(A,ce)|0,i=(i=i+Math.imul(A,le)|0)+Math.imul(P,ce)|0,o=o+Math.imul(P,le)|0,n=n+Math.imul(S,de)|0,i=(i=i+Math.imul(S,he)|0)+Math.imul(k,de)|0,o=o+Math.imul(k,he)|0;var Oe=(l+(n=n+Math.imul(w,pe)|0)|0)+((8191&(i=(i=i+Math.imul(w,me)|0)+Math.imul(x,pe)|0))<<13)|0;l=((o=o+Math.imul(x,me)|0)+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,n=Math.imul(z,Q),i=(i=Math.imul(z,ee))+Math.imul(B,Q)|0,o=Math.imul(B,ee),n=n+Math.imul(L,re)|0,i=(i=i+Math.imul(L,ne)|0)+Math.imul(N,re)|0,o=o+Math.imul(N,ne)|0,n=n+Math.imul(R,oe)|0,i=(i=i+Math.imul(R,ae)|0)+Math.imul(I,oe)|0,o=o+Math.imul(I,ae)|0,n=n+Math.imul(T,ce)|0,i=(i=i+Math.imul(T,le)|0)+Math.imul(C,ce)|0,o=o+Math.imul(C,le)|0,n=n+Math.imul(A,de)|0,i=(i=i+Math.imul(A,he)|0)+Math.imul(P,de)|0,o=o+Math.imul(P,he)|0;var Te=(l+(n=n+Math.imul(S,pe)|0)|0)+((8191&(i=(i=i+Math.imul(S,me)|0)+Math.imul(k,pe)|0))<<13)|0;l=((o=o+Math.imul(k,me)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(z,re),i=(i=Math.imul(z,ne))+Math.imul(B,re)|0,o=Math.imul(B,ne),n=n+Math.imul(L,oe)|0,i=(i=i+Math.imul(L,ae)|0)+Math.imul(N,oe)|0,o=o+Math.imul(N,ae)|0,n=n+Math.imul(R,ce)|0,i=(i=i+Math.imul(R,le)|0)+Math.imul(I,ce)|0,o=o+Math.imul(I,le)|0,n=n+Math.imul(T,de)|0,i=(i=i+Math.imul(T,he)|0)+Math.imul(C,de)|0,o=o+Math.imul(C,he)|0;var Ce=(l+(n=n+Math.imul(A,pe)|0)|0)+((8191&(i=(i=i+Math.imul(A,me)|0)+Math.imul(P,pe)|0))<<13)|0;l=((o=o+Math.imul(P,me)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,n=Math.imul(z,oe),i=(i=Math.imul(z,ae))+Math.imul(B,oe)|0,o=Math.imul(B,ae),n=n+Math.imul(L,ce)|0,i=(i=i+Math.imul(L,le)|0)+Math.imul(N,ce)|0,o=o+Math.imul(N,le)|0,n=n+Math.imul(R,de)|0,i=(i=i+Math.imul(R,he)|0)+Math.imul(I,de)|0,o=o+Math.imul(I,he)|0;var je=(l+(n=n+Math.imul(T,pe)|0)|0)+((8191&(i=(i=i+Math.imul(T,me)|0)+Math.imul(C,pe)|0))<<13)|0;l=((o=o+Math.imul(C,me)|0)+(i>>>13)|0)+(je>>>26)|0,je&=67108863,n=Math.imul(z,ce),i=(i=Math.imul(z,le))+Math.imul(B,ce)|0,o=Math.imul(B,le),n=n+Math.imul(L,de)|0,i=(i=i+Math.imul(L,he)|0)+Math.imul(N,de)|0,o=o+Math.imul(N,he)|0;var Re=(l+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,me)|0)+Math.imul(I,pe)|0))<<13)|0;l=((o=o+Math.imul(I,me)|0)+(i>>>13)|0)+(Re>>>26)|0,Re&=67108863,n=Math.imul(z,de),i=(i=Math.imul(z,he))+Math.imul(B,de)|0,o=Math.imul(B,he);var Ie=(l+(n=n+Math.imul(L,pe)|0)|0)+((8191&(i=(i=i+Math.imul(L,me)|0)+Math.imul(N,pe)|0))<<13)|0;l=((o=o+Math.imul(N,me)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863;var Me=(l+(n=Math.imul(z,pe))|0)+((8191&(i=(i=Math.imul(z,me))+Math.imul(B,pe)|0))<<13)|0;return l=((o=Math.imul(B,me))+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,c[0]=ge,c[1]=ve,c[2]=ye,c[3]=be,c[4]=we,c[5]=xe,c[6]=_e,c[7]=Se,c[8]=ke,c[9]=Ee,c[10]=Ae,c[11]=Pe,c[12]=Oe,c[13]=Te,c[14]=Ce,c[15]=je,c[16]=Re,c[17]=Ie,c[18]=Me,0!==l&&(c[19]=l,r.length++),r};function v(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r._strip()}function y(e,t,r){return v(e,t,r)}function b(e,t){this.x=e,this.y=t}Math.imul||(g=m),o.prototype.mulTo=function(e,t){var r=this.length+e.length;return 10===this.length&&10===e.length?g(this,e,t):r<63?m(this,e,t):r<1024?v(this,e,t):y(this,e,t)},b.prototype.makeRBT=function(e){for(var t=new Array(e),r=o.prototype._countBits(e)-1,n=0;n>=1;return n},b.prototype.permute=function(e,t,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*t;a>=26,r+=o/67108864|0,r+=a>>>26,this.words[i]=67108863&a}return 0!==r&&(this.words[i]=r,this.length++),t?this.ineg():this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i&1}return t}(e);if(0===t.length)return new o(1);for(var r=this,n=0;n=0);var t,r=e%26,i=(e-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(t=0;t>>26-r}a&&(this.words[t]=a,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var o=e%26,a=Math.min((e-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,l=0;l=0&&(0!==u||l>=i);l--){var d=0|this.words[l];this.words[l]=u<<26-o|d>>>o,u=d&s}return c&&0!==u&&(c.words[c.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this._strip()},o.prototype.ishrn=function(e,t,r){return n(0===this.negative),this.iushrn(e,t,r)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){n("number"===typeof e&&e>=0);var t=e%26,r=(e-t)/26,i=1<=0);var t=e%26,r=(e-t)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},o.prototype.isubn=function(e){if(n("number"===typeof e),n(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[i+r]=67108863&o}for(;i>26,this.words[i+r]=67108863&o;if(0===s)return this._strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this._strip()},o.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,a=0|i.words[i.length-1];0!==(r=26-this._countBits(a))&&(i=i.ushln(r),n.iushln(r),a=0|i.words[i.length-1]);var s,c=n.length-i.length;if("mod"!==t){(s=new o(null)).length=c+1,s.words=new Array(s.length);for(var l=0;l=0;d--){var h=67108864*(0|n.words[i.length+d])+(0|n.words[i.length+d-1]);for(h=Math.min(h/a|0,67108863),n._ishlnsubmul(i,h,d);0!==n.negative;)h--,n.negative=0,n._ishlnsubmul(i,1,d),n.isZero()||(n.negative^=1);s&&(s.words[d]=h)}return s&&s._strip(),n._strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},o.prototype.divmod=function(e,t,r){return n(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(i=s.div.neg()),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.iadd(e)),{div:i,mod:a}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(i=s.div.neg()),{div:i,mod:s.mod}):0!==(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.isub(e)),{div:s.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modrn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modrn(e.words[0]))}:this._wordDiv(e,t);var i,a,s},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modrn=function(e){var t=e<0;t&&(e=-e),n(e<=67108863);for(var r=(1<<26)%e,i=0,o=this.length-1;o>=0;o--)i=(r*i+(0|this.words[o]))%e;return t?-i:i},o.prototype.modn=function(e){return this.modrn(e)},o.prototype.idivn=function(e){var t=e<0;t&&(e=-e),n(e<=67108863);for(var r=0,i=this.length-1;i>=0;i--){var o=(0|this.words[i])+67108864*r;this.words[i]=o/e|0,r=o%e}return this._strip(),t?this.ineg():this},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new o(1),a=new o(0),s=new o(0),c=new o(1),l=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++l;for(var u=r.clone(),d=t.clone();!t.isZero();){for(var h=0,f=1;0===(t.words[0]&f)&&h<26;++h,f<<=1);if(h>0)for(t.iushrn(h);h-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(u),a.isub(d)),i.iushrn(1),a.iushrn(1);for(var p=0,m=1;0===(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||c.isOdd())&&(s.iadd(u),c.isub(d)),s.iushrn(1),c.iushrn(1);t.cmp(r)>=0?(t.isub(r),i.isub(s),a.isub(c)):(r.isub(t),s.isub(i),c.isub(a))}return{a:s,b:c,gcd:r.iushln(l)}},o.prototype._invmp=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,a=new o(1),s=new o(0),c=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var l=0,u=1;0===(t.words[0]&u)&&l<26;++l,u<<=1);if(l>0)for(t.iushrn(l);l-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);for(var d=0,h=1;0===(r.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(r.iushrn(d);d-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),a.isub(s)):(r.isub(t),s.isub(a))}return(i=0===t.cmpn(1)?a:s).cmpn(0)<0&&i.iadd(e),i},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var o=t;t=r,r=o}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0===(1&this.words[0])},o.prototype.isOdd=function(){return 1===(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){n("number"===typeof e);var t=e%26,r=(e-t)/26,i=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this._strip(),this.length>1)t=1;else{r&&(e=-e),n(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new A(e)},o.prototype.toRed=function(e){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return n(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return n(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var w={k256:null,p224:null,p192:null,p25519:null};function x(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function _(){x.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function S(){x.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function k(){x.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function E(){x.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function A(e){if("string"===typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else n(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function P(e){A.call(this,e),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}x.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},x.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},x.prototype.split=function(e,t){e.iushrn(this.n,0,t)},x.prototype.imulK=function(e){return e.imul(this.k)},i(_,x),_.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),i=0;i>>22,o=a}o>>>=22,e.words[i-10]=o,0===o&&e.length>10?e.length-=10:e.length-=9},_.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(w[e])return w[e];var t;if("k256"===e)t=new _;else if("p224"===e)t=new S;else if("p192"===e)t=new k;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new E}return w[e]=t,t},A.prototype._verify1=function(e){n(0===e.negative,"red works only with positives"),n(e.red,"red works only with red numbers")},A.prototype._verify2=function(e,t){n(0===(e.negative|t.negative),"red works only with positives"),n(e.red&&e.red===t.red,"red works only with red numbers")},A.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):(u(e,e.umod(this.m)._forceRed(this)),e)},A.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},A.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},A.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},A.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},A.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},A.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},A.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},A.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},A.prototype.isqr=function(e){return this.imul(e,e.clone())},A.prototype.sqr=function(e){return this.mul(e,e)},A.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(n(t%2===1),3===t){var r=this.m.add(new o(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);n(!i.isZero());var s=new o(1).toRed(this),c=s.redNeg(),l=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new o(2*u*u).toRed(this);0!==this.pow(u,l).cmp(c);)u.redIAdd(c);for(var d=this.pow(u,i),h=this.pow(e,i.addn(1).iushrn(1)),f=this.pow(e,i),p=a;0!==f.cmp(s);){for(var m=f,g=0;0!==m.cmp(s);g++)m=m.redSqr();n(g=0;n--){for(var l=t.words[n],u=c-1;u>=0;u--){var d=l>>u&1;i!==r[0]&&(i=this.sqr(i)),0!==d||0!==a?(a<<=1,a|=d,(4===++s||0===n&&0===u)&&(i=this.mul(i,r[a]),s=0,a=0)):s=0}c=26}return i},A.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},A.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new P(e)},i(P,A),P.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},P.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},P.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},P.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},P.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e=r.nmd(e),this)},161:(e,t,r)=>{"use strict";var n=r(6293).Buffer;e.exports=function(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),r=0;r>>0,u=new Uint8Array(a);e[r];){var d=t[e.charCodeAt(r)];if(255===d)return;for(var h=0,f=a-1;(0!==d||h>>0,u[f]=d%256>>>0,d=d/256>>>0;if(0!==d)throw new Error("Non-zero carry");o=h,r++}for(var p=a-o;p!==a&&0===u[p];)p++;var m=n.allocUnsafe(i+(a-p));m.fill(0,0,i);for(var g=i;p!==a;)m[g++]=u[p++];return m}return{encode:function(t){if((Array.isArray(t)||t instanceof Uint8Array)&&(t=n.from(t)),!n.isBuffer(t))throw new TypeError("Expected Buffer");if(0===t.length)return"";for(var r=0,i=0,o=0,a=t.length;o!==a&&0===t[o];)o++,r++;for(var l=(a-o)*u+1>>>0,d=new Uint8Array(l);o!==a;){for(var h=t[o],f=0,p=l-1;(0!==h||f>>0,d[p]=h%s>>>0,h=h/s>>>0;if(0!==h)throw new Error("Non-zero carry");i=f,o++}for(var m=l-i;m!==l&&0===d[m];)m++;for(var g=c.repeat(r);m{"use strict";t.byteLength=function(e){var t=s(e),r=t[0],n=t[1];return 3*(r+n)/4-n},t.toByteArray=function(e){var t,r,o=s(e),a=o[0],c=o[1],l=new i(function(e,t,r){return 3*(t+r)/4-r}(0,a,c)),u=0,d=c>0?a-4:a;for(r=0;r>16&255,l[u++]=t>>8&255,l[u++]=255&t;2===c&&(t=n[e.charCodeAt(r)]<<2|n[e.charCodeAt(r+1)]>>4,l[u++]=255&t);1===c&&(t=n[e.charCodeAt(r)]<<10|n[e.charCodeAt(r+1)]<<4|n[e.charCodeAt(r+2)]>>2,l[u++]=t>>8&255,l[u++]=255&t);return l},t.fromByteArray=function(e){for(var t,n=e.length,i=n%3,o=[],a=16383,s=0,l=n-i;sl?l:s+a));1===i?(t=e[n-1],o.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],o.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return o.join("")};for(var r=[],n=[],i="undefined"!==typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0;a<64;++a)r[a]=o[a],n[o.charCodeAt(a)]=a;function s(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");return-1===r&&(r=t),[r,r===t?0:4-r%4]}function c(e,t,n){for(var i,o,a=[],s=t;s>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return a.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},8419:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n={};let i;t.wordlists=n,t._default=i;try{t._default=i=r(32),n.czech=i}catch(o){}try{t._default=i=r(6996),n.chinese_simplified=i}catch(o){}try{t._default=i=r(4262),n.chinese_traditional=i}catch(o){}try{t._default=i=r(8013),n.korean=i}catch(o){}try{t._default=i=r(1848),n.french=i}catch(o){}try{t._default=i=r(2841),n.italian=i}catch(o){}try{t._default=i=r(659),n.spanish=i}catch(o){}try{t._default=i=r(4472),n.japanese=i,n.JA=i}catch(o){}try{t._default=i=r(1945),n.portuguese=i}catch(o){}try{t._default=i=r(4573),n.english=i,n.EN=i}catch(o){}},4200:(e,t,r)=>{"use strict";var n=r(4872).Buffer;const i=r(1985),o=r(2670),a=r(2291),s=r(9041),c=r(8419);let l=c._default;const u="Invalid mnemonic",d="Invalid entropy",h="Invalid mnemonic checksum",f="A wordlist is required but a default could not be found.\nPlease pass a 2048 word array explicitly.";function p(e){return(e||"").normalize("NFKD")}function m(e,t,r){for(;e.lengthm(e.toString(2),"0",8))).join("")}function y(e){const t=8*e.length/32,r=i.sha256(Uint8Array.from(e));return v(Array.from(r)).slice(0,t)}function b(e){return"mnemonic"+(e||"")}function w(e,t){if(!(t=t||l))throw new Error(f);const r=p(e).split(" ");if(r.length%3!==0)throw new Error(u);const i=r.map((e=>{const r=t.indexOf(e);if(-1===r)throw new Error(u);return m(r.toString(2),"0",11)})).join(""),o=32*Math.floor(i.length/33),a=i.slice(0,o),s=i.slice(o),c=a.match(/(.{1,8})/g).map(g);if(c.length<16)throw new Error(d);if(c.length>32)throw new Error(d);if(c.length%4!==0)throw new Error(d);const v=n.from(c);if(y(v)!==s)throw new Error(h);return v.toString("hex")}function x(e,t){if(n.isBuffer(e)||(e=n.from(e,"hex")),!(t=t||l))throw new Error(f);if(e.length<16)throw new TypeError(d);if(e.length>32)throw new TypeError(d);if(e.length%4!==0)throw new TypeError(d);const r=(v(Array.from(e))+y(e)).match(/(.{1,11})/g).map((e=>{const r=g(e);return t[r]}));return"\u3042\u3044\u3053\u304f\u3057\u3093"===t[0]?r.join("\u3000"):r.join(" ")}t.Z1=function(e,t){const r=Uint8Array.from(n.from(p(e),"utf8")),i=Uint8Array.from(n.from(b(p(t)),"utf8")),s=a.pbkdf2(o.sha512,r,i,{c:2048,dkLen:64});return n.from(s)},t.OF=function(e,t,r){if((e=e||128)%32!==0)throw new TypeError(d);return x((t=t||(e=>n.from(s.randomBytes(e))))(e/8),r)},t._I=function(e,t){try{w(e,t)}catch(r){return!1}return!0};var _=r(8419);t.ET=_.wordlists},5192:(e,t,r)=>{const n=r(6377);function i(e,t,r){const n=e[t]+e[r];let i=e[t+1]+e[r+1];n>=4294967296&&i++,e[t]=n,e[t+1]=i}function o(e,t,r,n){let i=e[t]+r;r<0&&(i+=4294967296);let o=e[t+1]+n;i>=4294967296&&o++,e[t]=i,e[t+1]=o}function a(e,t){return e[t]^e[t+1]<<8^e[t+2]<<16^e[t+3]<<24}function s(e,t,r,n,a,s){const c=d[a],l=d[a+1],h=d[s],f=d[s+1];i(u,e,t),o(u,e,c,l);let p=u[n]^u[e],m=u[n+1]^u[e+1];u[n]=m,u[n+1]=p,i(u,r,n),p=u[t]^u[r],m=u[t+1]^u[r+1],u[t]=p>>>24^m<<8,u[t+1]=m>>>24^p<<8,i(u,e,t),o(u,e,h,f),p=u[n]^u[e],m=u[n+1]^u[e+1],u[n]=p>>>16^m<<16,u[n+1]=m>>>16^p<<16,i(u,r,n),p=u[t]^u[r],m=u[t+1]^u[r+1],u[t]=m>>>31^p<<1,u[t+1]=p>>>31^m<<1}const c=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),l=new Uint8Array([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].map((function(e){return 2*e}))),u=new Uint32Array(32),d=new Uint32Array(32);function h(e,t){let r=0;for(r=0;r<16;r++)u[r]=e.h[r],u[r+16]=c[r];for(u[24]=u[24]^e.t,u[25]=u[25]^e.t/4294967296,t&&(u[28]=~u[28],u[29]=~u[29]),r=0;r<32;r++)d[r]=a(e.b,4*r);for(r=0;r<12;r++)s(0,8,16,24,l[16*r+0],l[16*r+1]),s(2,10,18,26,l[16*r+2],l[16*r+3]),s(4,12,20,28,l[16*r+4],l[16*r+5]),s(6,14,22,30,l[16*r+6],l[16*r+7]),s(0,10,20,30,l[16*r+8],l[16*r+9]),s(2,12,22,24,l[16*r+10],l[16*r+11]),s(4,14,16,26,l[16*r+12],l[16*r+13]),s(6,8,18,28,l[16*r+14],l[16*r+15]);for(r=0;r<16;r++)e.h[r]=e.h[r]^u[r]^u[r+16]}const f=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function p(e,t,r,n){if(0===e||e>64)throw new Error("Illegal output length, expected 0 < length <= 64");if(t&&t.length>64)throw new Error("Illegal key, expected Uint8Array with 0 < length <= 64");if(r&&16!==r.length)throw new Error("Illegal salt, expected Uint8Array with length is 16");if(n&&16!==n.length)throw new Error("Illegal personal, expected Uint8Array with length is 16");const i={b:new Uint8Array(128),h:new Uint32Array(16),t:0,c:0,outlen:e};f.fill(0),f[0]=e,t&&(f[1]=t.length),f[2]=1,f[3]=1,r&&f.set(r,32),n&&f.set(n,48);for(let o=0;o<16;o++)i.h[o]=c[o]^a(f,4*o);return t&&(m(i,t),i.c=128),i}function m(e,t){for(let r=0;r>2]>>8*(3&r);return t}function v(e,t,r,i,o){r=r||64,e=n.normalizeInput(e),i&&(i=n.normalizeInput(i)),o&&(o=n.normalizeInput(o));const a=p(r,t,i,o);return m(a,e),g(a)}e.exports={blake2b:v,blake2bHex:function(e,t,r,i,o){const a=v(e,t,r,i,o);return n.toHex(a)},blake2bInit:p,blake2bUpdate:m,blake2bFinal:g}},7114:(e,t,r)=>{const n=r(6377);function i(e,t){return e[t]^e[t+1]<<8^e[t+2]<<16^e[t+3]<<24}function o(e,t,r,n,i,o){l[e]=l[e]+l[t]+i,l[n]=a(l[n]^l[e],16),l[r]=l[r]+l[n],l[t]=a(l[t]^l[r],12),l[e]=l[e]+l[t]+o,l[n]=a(l[n]^l[e],8),l[r]=l[r]+l[n],l[t]=a(l[t]^l[r],7)}function a(e,t){return e>>>t^e<<32-t}const s=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),c=new Uint8Array([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]),l=new Uint32Array(16),u=new Uint32Array(16);function d(e,t){let r=0;for(r=0;r<8;r++)l[r]=e.h[r],l[r+8]=s[r];for(l[12]^=e.t,l[13]^=e.t/4294967296,t&&(l[14]=~l[14]),r=0;r<16;r++)u[r]=i(e.b,4*r);for(r=0;r<10;r++)o(0,4,8,12,u[c[16*r+0]],u[c[16*r+1]]),o(1,5,9,13,u[c[16*r+2]],u[c[16*r+3]]),o(2,6,10,14,u[c[16*r+4]],u[c[16*r+5]]),o(3,7,11,15,u[c[16*r+6]],u[c[16*r+7]]),o(0,5,10,15,u[c[16*r+8]],u[c[16*r+9]]),o(1,6,11,12,u[c[16*r+10]],u[c[16*r+11]]),o(2,7,8,13,u[c[16*r+12]],u[c[16*r+13]]),o(3,4,9,14,u[c[16*r+14]],u[c[16*r+15]]);for(r=0;r<8;r++)e.h[r]^=l[r]^l[r+8]}function h(e,t){if(!(e>0&&e<=32))throw new Error("Incorrect output length, should be in [1, 32]");const r=t?t.length:0;if(t&&!(r>0&&r<=32))throw new Error("Incorrect key length, should be in [1, 32]");const n={h:new Uint32Array(s),b:new Uint8Array(64),c:0,t:0,outlen:e};return n.h[0]^=16842752^r<<8^e,r>0&&(f(n,t),n.c=64),n}function f(e,t){for(let r=0;r>2]>>8*(3&r)&255;return t}function m(e,t,r){r=r||32,e=n.normalizeInput(e);const i=h(r,t);return f(i,e),p(i)}e.exports={blake2s:m,blake2sHex:function(e,t,r){const i=m(e,t,r);return n.toHex(i)},blake2sInit:h,blake2sUpdate:f,blake2sFinal:p}},4563:(e,t,r)=>{const n=r(5192),i=r(7114);e.exports={blake2b:n.blake2b,blake2bHex:n.blake2bHex,blake2bInit:n.blake2bInit,blake2bUpdate:n.blake2bUpdate,blake2bFinal:n.blake2bFinal,blake2s:i.blake2s,blake2sHex:i.blake2sHex,blake2sInit:i.blake2sInit,blake2sUpdate:i.blake2sUpdate,blake2sFinal:i.blake2sFinal}},6377:e=>{function t(e){return(4294967296+e).toString(16).substring(1)}e.exports={normalizeInput:function(e){let t;if(e instanceof Uint8Array)t=e;else{if("string"!==typeof e)throw new Error("Input must be an string, Buffer or Uint8Array");t=(new TextEncoder).encode(e)}return t},toHex:function(e){return Array.prototype.map.call(e,(function(e){return(e<16?"0":"")+e.toString(16)})).join("")},debugPrint:function(e,r,n){let i="\n"+e+" = ";for(let o=0;o=65&&r<=70?r-55:r>=97&&r<=102?r-87:r-48&15}function c(e,t,r){var n=s(e,r);return r-1>=t&&(n|=s(e,r-1)<<4),n}function l(e,t,r,n){for(var i=0,o=Math.min(e.length,r),a=t;a=49?s-49+10:s>=17?s-17+10:s}return i}o.isBN=function(e){return e instanceof o||null!==e&&"object"===typeof e&&e.constructor.wordSize===o.wordSize&&Array.isArray(e.words)},o.max=function(e,t){return e.cmp(t)>0?e:t},o.min=function(e,t){return e.cmp(t)<0?e:t},o.prototype._init=function(e,t,r){if("number"===typeof e)return this._initNumber(e,t,r);if("object"===typeof e)return this._initArray(e,t,r);"hex"===t&&(t=16),n(t===(0|t)&&t>=2&&t<=36);var i=0;"-"===(e=e.toString().replace(/\s+/g,""))[0]&&(i++,this.negative=1),i=0;i-=3)a=e[i]|e[i-1]<<8|e[i-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===r)for(i=0,o=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this.strip()},o.prototype._parseHex=function(e,t,r){this.length=Math.ceil((e.length-t)/6),this.words=new Array(this.length);for(var n=0;n=t;n-=2)i=c(e,t,n)<=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;else for(n=(e.length-t)%2===0?t+1:t;n=18?(o-=18,a+=1,this.words[a]|=i>>>26):o+=8;this.strip()},o.prototype._parseBase=function(e,t,r){this.words=[0],this.length=1;for(var n=0,i=1;i<=67108863;i*=t)n++;n--,i=i/t|0;for(var o=e.length-r,a=o%n,s=Math.min(o,o-a)+r,c=0,u=r;u1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var u=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],d=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],h=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function f(e,t,r){r.negative=t.negative^e.negative;var n=e.length+t.length|0;r.length=n,n=n-1|0;var i=0|e.words[0],o=0|t.words[0],a=i*o,s=67108863&a,c=a/67108864|0;r.words[0]=s;for(var l=1;l>>26,d=67108863&c,h=Math.min(l,t.length-1),f=Math.max(0,l-e.length+1);f<=h;f++){var p=l-f|0;u+=(a=(i=0|e.words[p])*(o=0|t.words[f])+d)/67108864|0,d=67108863&a}r.words[l]=0|d,c=0|u}return 0!==c?r.words[l]=0|c:r.length--,r.strip()}o.prototype.toString=function(e,t){var r;if(t=0|t||1,16===(e=e||10)||"hex"===e){r="";for(var i=0,o=0,a=0;a>>24-i&16777215)||a!==this.length-1?u[6-c.length]+c+r:c+r,(i+=2)>=26&&(i-=26,a--)}for(0!==o&&(r=o.toString(16)+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}if(e===(0|e)&&e>=2&&e<=36){var l=d[e],f=h[e];r="";var p=this.clone();for(p.negative=0;!p.isZero();){var m=p.modn(f).toString(e);r=(p=p.idivn(f)).isZero()?m+r:u[l-m.length]+m+r}for(this.isZero()&&(r="0"+r);r.length%t!==0;)r="0"+r;return 0!==this.negative&&(r="-"+r),r}n(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var e=this.words[0];return 2===this.length?e+=67108864*this.words[1]:3===this.length&&1===this.words[2]?e+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-e:e},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(e,t){return n("undefined"!==typeof a),this.toArrayLike(a,e,t)},o.prototype.toArray=function(e,t){return this.toArrayLike(Array,e,t)},o.prototype.toArrayLike=function(e,t,r){var i=this.byteLength(),o=r||Math.max(1,i);n(i<=o,"byte array longer than desired length"),n(o>0,"Requested array length <= 0"),this.strip();var a,s,c="le"===t,l=new e(o),u=this.clone();if(c){for(s=0;!u.isZero();s++)a=u.andln(255),u.iushrn(8),l[s]=a;for(;s=4096&&(r+=13,t>>>=13),t>=64&&(r+=7,t>>>=7),t>=8&&(r+=4,t>>>=4),t>=2&&(r+=2,t>>>=2),r+t},o.prototype._zeroBits=function(e){if(0===e)return 26;var t=e,r=0;return 0===(8191&t)&&(r+=13,t>>>=13),0===(127&t)&&(r+=7,t>>>=7),0===(15&t)&&(r+=4,t>>>=4),0===(3&t)&&(r+=2,t>>>=2),0===(1&t)&&r++,r},o.prototype.bitLength=function(){var e=this.words[this.length-1],t=this._countBits(e);return 26*(this.length-1)+t},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var e=0,t=0;te.length?this.clone().ior(e):e.clone().ior(this)},o.prototype.uor=function(e){return this.length>e.length?this.clone().iuor(e):e.clone().iuor(this)},o.prototype.iuand=function(e){var t;t=this.length>e.length?e:this;for(var r=0;re.length?this.clone().iand(e):e.clone().iand(this)},o.prototype.uand=function(e){return this.length>e.length?this.clone().iuand(e):e.clone().iuand(this)},o.prototype.iuxor=function(e){var t,r;this.length>e.length?(t=this,r=e):(t=e,r=this);for(var n=0;ne.length?this.clone().ixor(e):e.clone().ixor(this)},o.prototype.uxor=function(e){return this.length>e.length?this.clone().iuxor(e):e.clone().iuxor(this)},o.prototype.inotn=function(e){n("number"===typeof e&&e>=0);var t=0|Math.ceil(e/26),r=e%26;this._expand(t),r>0&&t--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-r),this.strip()},o.prototype.notn=function(e){return this.clone().inotn(e)},o.prototype.setn=function(e,t){n("number"===typeof e&&e>=0);var r=e/26|0,i=e%26;return this._expand(r+1),this.words[r]=t?this.words[r]|1<e.length?(r=this,n=e):(r=e,n=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=r.length,0!==i)this.words[this.length]=i,this.length++;else if(r!==this)for(;oe.length?this.clone().iadd(e):e.clone().iadd(this)},o.prototype.isub=function(e){if(0!==e.negative){e.negative=0;var t=this.iadd(e);return e.negative=1,t._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(e),this.negative=1,this._normSign();var r,n,i=this.cmp(e);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(r=this,n=e):(r=e,n=this);for(var o=0,a=0;a>26,this.words[a]=67108863&t;for(;0!==o&&a>26,this.words[a]=67108863&t;if(0===o&&a>>13,f=0|a[1],p=8191&f,m=f>>>13,g=0|a[2],v=8191&g,y=g>>>13,b=0|a[3],w=8191&b,x=b>>>13,_=0|a[4],S=8191&_,k=_>>>13,E=0|a[5],A=8191&E,P=E>>>13,O=0|a[6],T=8191&O,C=O>>>13,j=0|a[7],R=8191&j,I=j>>>13,M=0|a[8],L=8191&M,N=M>>>13,D=0|a[9],z=8191&D,B=D>>>13,U=0|s[0],F=8191&U,$=U>>>13,H=0|s[1],V=8191&H,q=H>>>13,K=0|s[2],W=8191&K,G=K>>>13,Z=0|s[3],Y=8191&Z,X=Z>>>13,J=0|s[4],Q=8191&J,ee=J>>>13,te=0|s[5],re=8191&te,ne=te>>>13,ie=0|s[6],oe=8191&ie,ae=ie>>>13,se=0|s[7],ce=8191&se,le=se>>>13,ue=0|s[8],de=8191&ue,he=ue>>>13,fe=0|s[9],pe=8191&fe,me=fe>>>13;r.negative=e.negative^t.negative,r.length=19;var ge=(l+(n=Math.imul(d,F))|0)+((8191&(i=(i=Math.imul(d,$))+Math.imul(h,F)|0))<<13)|0;l=((o=Math.imul(h,$))+(i>>>13)|0)+(ge>>>26)|0,ge&=67108863,n=Math.imul(p,F),i=(i=Math.imul(p,$))+Math.imul(m,F)|0,o=Math.imul(m,$);var ve=(l+(n=n+Math.imul(d,V)|0)|0)+((8191&(i=(i=i+Math.imul(d,q)|0)+Math.imul(h,V)|0))<<13)|0;l=((o=o+Math.imul(h,q)|0)+(i>>>13)|0)+(ve>>>26)|0,ve&=67108863,n=Math.imul(v,F),i=(i=Math.imul(v,$))+Math.imul(y,F)|0,o=Math.imul(y,$),n=n+Math.imul(p,V)|0,i=(i=i+Math.imul(p,q)|0)+Math.imul(m,V)|0,o=o+Math.imul(m,q)|0;var ye=(l+(n=n+Math.imul(d,W)|0)|0)+((8191&(i=(i=i+Math.imul(d,G)|0)+Math.imul(h,W)|0))<<13)|0;l=((o=o+Math.imul(h,G)|0)+(i>>>13)|0)+(ye>>>26)|0,ye&=67108863,n=Math.imul(w,F),i=(i=Math.imul(w,$))+Math.imul(x,F)|0,o=Math.imul(x,$),n=n+Math.imul(v,V)|0,i=(i=i+Math.imul(v,q)|0)+Math.imul(y,V)|0,o=o+Math.imul(y,q)|0,n=n+Math.imul(p,W)|0,i=(i=i+Math.imul(p,G)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,G)|0;var be=(l+(n=n+Math.imul(d,Y)|0)|0)+((8191&(i=(i=i+Math.imul(d,X)|0)+Math.imul(h,Y)|0))<<13)|0;l=((o=o+Math.imul(h,X)|0)+(i>>>13)|0)+(be>>>26)|0,be&=67108863,n=Math.imul(S,F),i=(i=Math.imul(S,$))+Math.imul(k,F)|0,o=Math.imul(k,$),n=n+Math.imul(w,V)|0,i=(i=i+Math.imul(w,q)|0)+Math.imul(x,V)|0,o=o+Math.imul(x,q)|0,n=n+Math.imul(v,W)|0,i=(i=i+Math.imul(v,G)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,G)|0,n=n+Math.imul(p,Y)|0,i=(i=i+Math.imul(p,X)|0)+Math.imul(m,Y)|0,o=o+Math.imul(m,X)|0;var we=(l+(n=n+Math.imul(d,Q)|0)|0)+((8191&(i=(i=i+Math.imul(d,ee)|0)+Math.imul(h,Q)|0))<<13)|0;l=((o=o+Math.imul(h,ee)|0)+(i>>>13)|0)+(we>>>26)|0,we&=67108863,n=Math.imul(A,F),i=(i=Math.imul(A,$))+Math.imul(P,F)|0,o=Math.imul(P,$),n=n+Math.imul(S,V)|0,i=(i=i+Math.imul(S,q)|0)+Math.imul(k,V)|0,o=o+Math.imul(k,q)|0,n=n+Math.imul(w,W)|0,i=(i=i+Math.imul(w,G)|0)+Math.imul(x,W)|0,o=o+Math.imul(x,G)|0,n=n+Math.imul(v,Y)|0,i=(i=i+Math.imul(v,X)|0)+Math.imul(y,Y)|0,o=o+Math.imul(y,X)|0,n=n+Math.imul(p,Q)|0,i=(i=i+Math.imul(p,ee)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,ee)|0;var xe=(l+(n=n+Math.imul(d,re)|0)|0)+((8191&(i=(i=i+Math.imul(d,ne)|0)+Math.imul(h,re)|0))<<13)|0;l=((o=o+Math.imul(h,ne)|0)+(i>>>13)|0)+(xe>>>26)|0,xe&=67108863,n=Math.imul(T,F),i=(i=Math.imul(T,$))+Math.imul(C,F)|0,o=Math.imul(C,$),n=n+Math.imul(A,V)|0,i=(i=i+Math.imul(A,q)|0)+Math.imul(P,V)|0,o=o+Math.imul(P,q)|0,n=n+Math.imul(S,W)|0,i=(i=i+Math.imul(S,G)|0)+Math.imul(k,W)|0,o=o+Math.imul(k,G)|0,n=n+Math.imul(w,Y)|0,i=(i=i+Math.imul(w,X)|0)+Math.imul(x,Y)|0,o=o+Math.imul(x,X)|0,n=n+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,ee)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,ee)|0,n=n+Math.imul(p,re)|0,i=(i=i+Math.imul(p,ne)|0)+Math.imul(m,re)|0,o=o+Math.imul(m,ne)|0;var _e=(l+(n=n+Math.imul(d,oe)|0)|0)+((8191&(i=(i=i+Math.imul(d,ae)|0)+Math.imul(h,oe)|0))<<13)|0;l=((o=o+Math.imul(h,ae)|0)+(i>>>13)|0)+(_e>>>26)|0,_e&=67108863,n=Math.imul(R,F),i=(i=Math.imul(R,$))+Math.imul(I,F)|0,o=Math.imul(I,$),n=n+Math.imul(T,V)|0,i=(i=i+Math.imul(T,q)|0)+Math.imul(C,V)|0,o=o+Math.imul(C,q)|0,n=n+Math.imul(A,W)|0,i=(i=i+Math.imul(A,G)|0)+Math.imul(P,W)|0,o=o+Math.imul(P,G)|0,n=n+Math.imul(S,Y)|0,i=(i=i+Math.imul(S,X)|0)+Math.imul(k,Y)|0,o=o+Math.imul(k,X)|0,n=n+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,ee)|0)+Math.imul(x,Q)|0,o=o+Math.imul(x,ee)|0,n=n+Math.imul(v,re)|0,i=(i=i+Math.imul(v,ne)|0)+Math.imul(y,re)|0,o=o+Math.imul(y,ne)|0,n=n+Math.imul(p,oe)|0,i=(i=i+Math.imul(p,ae)|0)+Math.imul(m,oe)|0,o=o+Math.imul(m,ae)|0;var Se=(l+(n=n+Math.imul(d,ce)|0)|0)+((8191&(i=(i=i+Math.imul(d,le)|0)+Math.imul(h,ce)|0))<<13)|0;l=((o=o+Math.imul(h,le)|0)+(i>>>13)|0)+(Se>>>26)|0,Se&=67108863,n=Math.imul(L,F),i=(i=Math.imul(L,$))+Math.imul(N,F)|0,o=Math.imul(N,$),n=n+Math.imul(R,V)|0,i=(i=i+Math.imul(R,q)|0)+Math.imul(I,V)|0,o=o+Math.imul(I,q)|0,n=n+Math.imul(T,W)|0,i=(i=i+Math.imul(T,G)|0)+Math.imul(C,W)|0,o=o+Math.imul(C,G)|0,n=n+Math.imul(A,Y)|0,i=(i=i+Math.imul(A,X)|0)+Math.imul(P,Y)|0,o=o+Math.imul(P,X)|0,n=n+Math.imul(S,Q)|0,i=(i=i+Math.imul(S,ee)|0)+Math.imul(k,Q)|0,o=o+Math.imul(k,ee)|0,n=n+Math.imul(w,re)|0,i=(i=i+Math.imul(w,ne)|0)+Math.imul(x,re)|0,o=o+Math.imul(x,ne)|0,n=n+Math.imul(v,oe)|0,i=(i=i+Math.imul(v,ae)|0)+Math.imul(y,oe)|0,o=o+Math.imul(y,ae)|0,n=n+Math.imul(p,ce)|0,i=(i=i+Math.imul(p,le)|0)+Math.imul(m,ce)|0,o=o+Math.imul(m,le)|0;var ke=(l+(n=n+Math.imul(d,de)|0)|0)+((8191&(i=(i=i+Math.imul(d,he)|0)+Math.imul(h,de)|0))<<13)|0;l=((o=o+Math.imul(h,he)|0)+(i>>>13)|0)+(ke>>>26)|0,ke&=67108863,n=Math.imul(z,F),i=(i=Math.imul(z,$))+Math.imul(B,F)|0,o=Math.imul(B,$),n=n+Math.imul(L,V)|0,i=(i=i+Math.imul(L,q)|0)+Math.imul(N,V)|0,o=o+Math.imul(N,q)|0,n=n+Math.imul(R,W)|0,i=(i=i+Math.imul(R,G)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,G)|0,n=n+Math.imul(T,Y)|0,i=(i=i+Math.imul(T,X)|0)+Math.imul(C,Y)|0,o=o+Math.imul(C,X)|0,n=n+Math.imul(A,Q)|0,i=(i=i+Math.imul(A,ee)|0)+Math.imul(P,Q)|0,o=o+Math.imul(P,ee)|0,n=n+Math.imul(S,re)|0,i=(i=i+Math.imul(S,ne)|0)+Math.imul(k,re)|0,o=o+Math.imul(k,ne)|0,n=n+Math.imul(w,oe)|0,i=(i=i+Math.imul(w,ae)|0)+Math.imul(x,oe)|0,o=o+Math.imul(x,ae)|0,n=n+Math.imul(v,ce)|0,i=(i=i+Math.imul(v,le)|0)+Math.imul(y,ce)|0,o=o+Math.imul(y,le)|0,n=n+Math.imul(p,de)|0,i=(i=i+Math.imul(p,he)|0)+Math.imul(m,de)|0,o=o+Math.imul(m,he)|0;var Ee=(l+(n=n+Math.imul(d,pe)|0)|0)+((8191&(i=(i=i+Math.imul(d,me)|0)+Math.imul(h,pe)|0))<<13)|0;l=((o=o+Math.imul(h,me)|0)+(i>>>13)|0)+(Ee>>>26)|0,Ee&=67108863,n=Math.imul(z,V),i=(i=Math.imul(z,q))+Math.imul(B,V)|0,o=Math.imul(B,q),n=n+Math.imul(L,W)|0,i=(i=i+Math.imul(L,G)|0)+Math.imul(N,W)|0,o=o+Math.imul(N,G)|0,n=n+Math.imul(R,Y)|0,i=(i=i+Math.imul(R,X)|0)+Math.imul(I,Y)|0,o=o+Math.imul(I,X)|0,n=n+Math.imul(T,Q)|0,i=(i=i+Math.imul(T,ee)|0)+Math.imul(C,Q)|0,o=o+Math.imul(C,ee)|0,n=n+Math.imul(A,re)|0,i=(i=i+Math.imul(A,ne)|0)+Math.imul(P,re)|0,o=o+Math.imul(P,ne)|0,n=n+Math.imul(S,oe)|0,i=(i=i+Math.imul(S,ae)|0)+Math.imul(k,oe)|0,o=o+Math.imul(k,ae)|0,n=n+Math.imul(w,ce)|0,i=(i=i+Math.imul(w,le)|0)+Math.imul(x,ce)|0,o=o+Math.imul(x,le)|0,n=n+Math.imul(v,de)|0,i=(i=i+Math.imul(v,he)|0)+Math.imul(y,de)|0,o=o+Math.imul(y,he)|0;var Ae=(l+(n=n+Math.imul(p,pe)|0)|0)+((8191&(i=(i=i+Math.imul(p,me)|0)+Math.imul(m,pe)|0))<<13)|0;l=((o=o+Math.imul(m,me)|0)+(i>>>13)|0)+(Ae>>>26)|0,Ae&=67108863,n=Math.imul(z,W),i=(i=Math.imul(z,G))+Math.imul(B,W)|0,o=Math.imul(B,G),n=n+Math.imul(L,Y)|0,i=(i=i+Math.imul(L,X)|0)+Math.imul(N,Y)|0,o=o+Math.imul(N,X)|0,n=n+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,ee)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,ee)|0,n=n+Math.imul(T,re)|0,i=(i=i+Math.imul(T,ne)|0)+Math.imul(C,re)|0,o=o+Math.imul(C,ne)|0,n=n+Math.imul(A,oe)|0,i=(i=i+Math.imul(A,ae)|0)+Math.imul(P,oe)|0,o=o+Math.imul(P,ae)|0,n=n+Math.imul(S,ce)|0,i=(i=i+Math.imul(S,le)|0)+Math.imul(k,ce)|0,o=o+Math.imul(k,le)|0,n=n+Math.imul(w,de)|0,i=(i=i+Math.imul(w,he)|0)+Math.imul(x,de)|0,o=o+Math.imul(x,he)|0;var Pe=(l+(n=n+Math.imul(v,pe)|0)|0)+((8191&(i=(i=i+Math.imul(v,me)|0)+Math.imul(y,pe)|0))<<13)|0;l=((o=o+Math.imul(y,me)|0)+(i>>>13)|0)+(Pe>>>26)|0,Pe&=67108863,n=Math.imul(z,Y),i=(i=Math.imul(z,X))+Math.imul(B,Y)|0,o=Math.imul(B,X),n=n+Math.imul(L,Q)|0,i=(i=i+Math.imul(L,ee)|0)+Math.imul(N,Q)|0,o=o+Math.imul(N,ee)|0,n=n+Math.imul(R,re)|0,i=(i=i+Math.imul(R,ne)|0)+Math.imul(I,re)|0,o=o+Math.imul(I,ne)|0,n=n+Math.imul(T,oe)|0,i=(i=i+Math.imul(T,ae)|0)+Math.imul(C,oe)|0,o=o+Math.imul(C,ae)|0,n=n+Math.imul(A,ce)|0,i=(i=i+Math.imul(A,le)|0)+Math.imul(P,ce)|0,o=o+Math.imul(P,le)|0,n=n+Math.imul(S,de)|0,i=(i=i+Math.imul(S,he)|0)+Math.imul(k,de)|0,o=o+Math.imul(k,he)|0;var Oe=(l+(n=n+Math.imul(w,pe)|0)|0)+((8191&(i=(i=i+Math.imul(w,me)|0)+Math.imul(x,pe)|0))<<13)|0;l=((o=o+Math.imul(x,me)|0)+(i>>>13)|0)+(Oe>>>26)|0,Oe&=67108863,n=Math.imul(z,Q),i=(i=Math.imul(z,ee))+Math.imul(B,Q)|0,o=Math.imul(B,ee),n=n+Math.imul(L,re)|0,i=(i=i+Math.imul(L,ne)|0)+Math.imul(N,re)|0,o=o+Math.imul(N,ne)|0,n=n+Math.imul(R,oe)|0,i=(i=i+Math.imul(R,ae)|0)+Math.imul(I,oe)|0,o=o+Math.imul(I,ae)|0,n=n+Math.imul(T,ce)|0,i=(i=i+Math.imul(T,le)|0)+Math.imul(C,ce)|0,o=o+Math.imul(C,le)|0,n=n+Math.imul(A,de)|0,i=(i=i+Math.imul(A,he)|0)+Math.imul(P,de)|0,o=o+Math.imul(P,he)|0;var Te=(l+(n=n+Math.imul(S,pe)|0)|0)+((8191&(i=(i=i+Math.imul(S,me)|0)+Math.imul(k,pe)|0))<<13)|0;l=((o=o+Math.imul(k,me)|0)+(i>>>13)|0)+(Te>>>26)|0,Te&=67108863,n=Math.imul(z,re),i=(i=Math.imul(z,ne))+Math.imul(B,re)|0,o=Math.imul(B,ne),n=n+Math.imul(L,oe)|0,i=(i=i+Math.imul(L,ae)|0)+Math.imul(N,oe)|0,o=o+Math.imul(N,ae)|0,n=n+Math.imul(R,ce)|0,i=(i=i+Math.imul(R,le)|0)+Math.imul(I,ce)|0,o=o+Math.imul(I,le)|0,n=n+Math.imul(T,de)|0,i=(i=i+Math.imul(T,he)|0)+Math.imul(C,de)|0,o=o+Math.imul(C,he)|0;var Ce=(l+(n=n+Math.imul(A,pe)|0)|0)+((8191&(i=(i=i+Math.imul(A,me)|0)+Math.imul(P,pe)|0))<<13)|0;l=((o=o+Math.imul(P,me)|0)+(i>>>13)|0)+(Ce>>>26)|0,Ce&=67108863,n=Math.imul(z,oe),i=(i=Math.imul(z,ae))+Math.imul(B,oe)|0,o=Math.imul(B,ae),n=n+Math.imul(L,ce)|0,i=(i=i+Math.imul(L,le)|0)+Math.imul(N,ce)|0,o=o+Math.imul(N,le)|0,n=n+Math.imul(R,de)|0,i=(i=i+Math.imul(R,he)|0)+Math.imul(I,de)|0,o=o+Math.imul(I,he)|0;var je=(l+(n=n+Math.imul(T,pe)|0)|0)+((8191&(i=(i=i+Math.imul(T,me)|0)+Math.imul(C,pe)|0))<<13)|0;l=((o=o+Math.imul(C,me)|0)+(i>>>13)|0)+(je>>>26)|0,je&=67108863,n=Math.imul(z,ce),i=(i=Math.imul(z,le))+Math.imul(B,ce)|0,o=Math.imul(B,le),n=n+Math.imul(L,de)|0,i=(i=i+Math.imul(L,he)|0)+Math.imul(N,de)|0,o=o+Math.imul(N,he)|0;var Re=(l+(n=n+Math.imul(R,pe)|0)|0)+((8191&(i=(i=i+Math.imul(R,me)|0)+Math.imul(I,pe)|0))<<13)|0;l=((o=o+Math.imul(I,me)|0)+(i>>>13)|0)+(Re>>>26)|0,Re&=67108863,n=Math.imul(z,de),i=(i=Math.imul(z,he))+Math.imul(B,de)|0,o=Math.imul(B,he);var Ie=(l+(n=n+Math.imul(L,pe)|0)|0)+((8191&(i=(i=i+Math.imul(L,me)|0)+Math.imul(N,pe)|0))<<13)|0;l=((o=o+Math.imul(N,me)|0)+(i>>>13)|0)+(Ie>>>26)|0,Ie&=67108863;var Me=(l+(n=Math.imul(z,pe))|0)+((8191&(i=(i=Math.imul(z,me))+Math.imul(B,pe)|0))<<13)|0;return l=((o=Math.imul(B,me))+(i>>>13)|0)+(Me>>>26)|0,Me&=67108863,c[0]=ge,c[1]=ve,c[2]=ye,c[3]=be,c[4]=we,c[5]=xe,c[6]=_e,c[7]=Se,c[8]=ke,c[9]=Ee,c[10]=Ae,c[11]=Pe,c[12]=Oe,c[13]=Te,c[14]=Ce,c[15]=je,c[16]=Re,c[17]=Ie,c[18]=Me,0!==l&&(c[19]=l,r.length++),r};function m(e,t,r){return(new g).mulp(e,t,r)}function g(e,t){this.x=e,this.y=t}Math.imul||(p=f),o.prototype.mulTo=function(e,t){var r,n=this.length+e.length;return r=10===this.length&&10===e.length?p(this,e,t):n<63?f(this,e,t):n<1024?function(e,t,r){r.negative=t.negative^e.negative,r.length=e.length+t.length;for(var n=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}r.words[o]=s,n=a,a=i}return 0!==n?r.words[o]=n:r.length--,r.strip()}(this,e,t):m(this,e,t),r},g.prototype.makeRBT=function(e){for(var t=new Array(e),r=o.prototype._countBits(e)-1,n=0;n>=1;return n},g.prototype.permute=function(e,t,r,n,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,r[2*a+1]=8191&o,o>>>=13;for(a=2*t;a>=26,t+=i/67108864|0,t+=o>>>26,this.words[r]=67108863&o}return 0!==t&&(this.words[r]=t,this.length++),this},o.prototype.muln=function(e){return this.clone().imuln(e)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(e){var t=function(e){for(var t=new Array(e.bitLength()),r=0;r>>i}return t}(e);if(0===t.length)return new o(1);for(var r=this,n=0;n=0);var t,r=e%26,i=(e-r)/26,o=67108863>>>26-r<<26-r;if(0!==r){var a=0;for(t=0;t>>26-r}a&&(this.words[t]=a,this.length++)}if(0!==i){for(t=this.length-1;t>=0;t--)this.words[t+i]=this.words[t];for(t=0;t=0),i=t?(t-t%26)/26:0;var o=e%26,a=Math.min((e-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,l=0;l=0&&(0!==u||l>=i);l--){var d=0|this.words[l];this.words[l]=u<<26-o|d>>>o,u=d&s}return c&&0!==u&&(c.words[c.length++]=u),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(e,t,r){return n(0===this.negative),this.iushrn(e,t,r)},o.prototype.shln=function(e){return this.clone().ishln(e)},o.prototype.ushln=function(e){return this.clone().iushln(e)},o.prototype.shrn=function(e){return this.clone().ishrn(e)},o.prototype.ushrn=function(e){return this.clone().iushrn(e)},o.prototype.testn=function(e){n("number"===typeof e&&e>=0);var t=e%26,r=(e-t)/26,i=1<=0);var t=e%26,r=(e-t)/26;if(n(0===this.negative,"imaskn works only with positive numbers"),this.length<=r)return this;if(0!==t&&r++,this.length=Math.min(r,this.length),0!==t){var i=67108863^67108863>>>t<=67108864;t++)this.words[t]-=67108864,t===this.length-1?this.words[t+1]=1:this.words[t+1]++;return this.length=Math.max(this.length,t+1),this},o.prototype.isubn=function(e){if(n("number"===typeof e),n(e<67108864),e<0)return this.iaddn(-e);if(0!==this.negative)return this.negative=0,this.iaddn(e),this.negative=1,this;if(this.words[0]-=e,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var t=0;t>26)-(c/67108864|0),this.words[i+r]=67108863&o}for(;i>26,this.words[i+r]=67108863&o;if(0===s)return this.strip();for(n(-1===s),s=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(e,t){var r=(this.length,e.length),n=this.clone(),i=e,a=0|i.words[i.length-1];0!==(r=26-this._countBits(a))&&(i=i.ushln(r),n.iushln(r),a=0|i.words[i.length-1]);var s,c=n.length-i.length;if("mod"!==t){(s=new o(null)).length=c+1,s.words=new Array(s.length);for(var l=0;l=0;d--){var h=67108864*(0|n.words[i.length+d])+(0|n.words[i.length+d-1]);for(h=Math.min(h/a|0,67108863),n._ishlnsubmul(i,h,d);0!==n.negative;)h--,n.negative=0,n._ishlnsubmul(i,1,d),n.isZero()||(n.negative^=1);s&&(s.words[d]=h)}return s&&s.strip(),n.strip(),"div"!==t&&0!==r&&n.iushrn(r),{div:s||null,mod:n}},o.prototype.divmod=function(e,t,r){return n(!e.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===e.negative?(s=this.neg().divmod(e,t),"mod"!==t&&(i=s.div.neg()),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.iadd(e)),{div:i,mod:a}):0===this.negative&&0!==e.negative?(s=this.divmod(e.neg(),t),"mod"!==t&&(i=s.div.neg()),{div:i,mod:s.mod}):0!==(this.negative&e.negative)?(s=this.neg().divmod(e.neg(),t),"div"!==t&&(a=s.mod.neg(),r&&0!==a.negative&&a.isub(e)),{div:s.div,mod:a}):e.length>this.length||this.cmp(e)<0?{div:new o(0),mod:this}:1===e.length?"div"===t?{div:this.divn(e.words[0]),mod:null}:"mod"===t?{div:null,mod:new o(this.modn(e.words[0]))}:{div:this.divn(e.words[0]),mod:new o(this.modn(e.words[0]))}:this._wordDiv(e,t);var i,a,s},o.prototype.div=function(e){return this.divmod(e,"div",!1).div},o.prototype.mod=function(e){return this.divmod(e,"mod",!1).mod},o.prototype.umod=function(e){return this.divmod(e,"mod",!0).mod},o.prototype.divRound=function(e){var t=this.divmod(e);if(t.mod.isZero())return t.div;var r=0!==t.div.negative?t.mod.isub(e):t.mod,n=e.ushrn(1),i=e.andln(1),o=r.cmp(n);return o<0||1===i&&0===o?t.div:0!==t.div.negative?t.div.isubn(1):t.div.iaddn(1)},o.prototype.modn=function(e){n(e<=67108863);for(var t=(1<<26)%e,r=0,i=this.length-1;i>=0;i--)r=(t*r+(0|this.words[i]))%e;return r},o.prototype.idivn=function(e){n(e<=67108863);for(var t=0,r=this.length-1;r>=0;r--){var i=(0|this.words[r])+67108864*t;this.words[r]=i/e|0,t=i%e}return this.strip()},o.prototype.divn=function(e){return this.clone().idivn(e)},o.prototype.egcd=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i=new o(1),a=new o(0),s=new o(0),c=new o(1),l=0;t.isEven()&&r.isEven();)t.iushrn(1),r.iushrn(1),++l;for(var u=r.clone(),d=t.clone();!t.isZero();){for(var h=0,f=1;0===(t.words[0]&f)&&h<26;++h,f<<=1);if(h>0)for(t.iushrn(h);h-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(u),a.isub(d)),i.iushrn(1),a.iushrn(1);for(var p=0,m=1;0===(r.words[0]&m)&&p<26;++p,m<<=1);if(p>0)for(r.iushrn(p);p-- >0;)(s.isOdd()||c.isOdd())&&(s.iadd(u),c.isub(d)),s.iushrn(1),c.iushrn(1);t.cmp(r)>=0?(t.isub(r),i.isub(s),a.isub(c)):(r.isub(t),s.isub(i),c.isub(a))}return{a:s,b:c,gcd:r.iushln(l)}},o.prototype._invmp=function(e){n(0===e.negative),n(!e.isZero());var t=this,r=e.clone();t=0!==t.negative?t.umod(e):t.clone();for(var i,a=new o(1),s=new o(0),c=r.clone();t.cmpn(1)>0&&r.cmpn(1)>0;){for(var l=0,u=1;0===(t.words[0]&u)&&l<26;++l,u<<=1);if(l>0)for(t.iushrn(l);l-- >0;)a.isOdd()&&a.iadd(c),a.iushrn(1);for(var d=0,h=1;0===(r.words[0]&h)&&d<26;++d,h<<=1);if(d>0)for(r.iushrn(d);d-- >0;)s.isOdd()&&s.iadd(c),s.iushrn(1);t.cmp(r)>=0?(t.isub(r),a.isub(s)):(r.isub(t),s.isub(a))}return(i=0===t.cmpn(1)?a:s).cmpn(0)<0&&i.iadd(e),i},o.prototype.gcd=function(e){if(this.isZero())return e.abs();if(e.isZero())return this.abs();var t=this.clone(),r=e.clone();t.negative=0,r.negative=0;for(var n=0;t.isEven()&&r.isEven();n++)t.iushrn(1),r.iushrn(1);for(;;){for(;t.isEven();)t.iushrn(1);for(;r.isEven();)r.iushrn(1);var i=t.cmp(r);if(i<0){var o=t;t=r,r=o}else if(0===i||0===r.cmpn(1))break;t.isub(r)}return r.iushln(n)},o.prototype.invm=function(e){return this.egcd(e).a.umod(e)},o.prototype.isEven=function(){return 0===(1&this.words[0])},o.prototype.isOdd=function(){return 1===(1&this.words[0])},o.prototype.andln=function(e){return this.words[0]&e},o.prototype.bincn=function(e){n("number"===typeof e);var t=e%26,r=(e-t)/26,i=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(e){var t,r=e<0;if(0!==this.negative&&!r)return-1;if(0===this.negative&&r)return 1;if(this.strip(),this.length>1)t=1;else{r&&(e=-e),n(e<=67108863,"Number is too big");var i=0|this.words[0];t=i===e?0:ie.length)return 1;if(this.length=0;r--){var n=0|this.words[r],i=0|e.words[r];if(n!==i){ni&&(t=1);break}}return t},o.prototype.gtn=function(e){return 1===this.cmpn(e)},o.prototype.gt=function(e){return 1===this.cmp(e)},o.prototype.gten=function(e){return this.cmpn(e)>=0},o.prototype.gte=function(e){return this.cmp(e)>=0},o.prototype.ltn=function(e){return-1===this.cmpn(e)},o.prototype.lt=function(e){return-1===this.cmp(e)},o.prototype.lten=function(e){return this.cmpn(e)<=0},o.prototype.lte=function(e){return this.cmp(e)<=0},o.prototype.eqn=function(e){return 0===this.cmpn(e)},o.prototype.eq=function(e){return 0===this.cmp(e)},o.red=function(e){return new S(e)},o.prototype.toRed=function(e){return n(!this.red,"Already a number in reduction context"),n(0===this.negative,"red works only with positives"),e.convertTo(this)._forceRed(e)},o.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(e){return this.red=e,this},o.prototype.forceRed=function(e){return n(!this.red,"Already a number in reduction context"),this._forceRed(e)},o.prototype.redAdd=function(e){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,e)},o.prototype.redIAdd=function(e){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,e)},o.prototype.redSub=function(e){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,e)},o.prototype.redISub=function(e){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,e)},o.prototype.redShl=function(e){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,e)},o.prototype.redMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.mul(this,e)},o.prototype.redIMul=function(e){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,e),this.red.imul(this,e)},o.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(e){return n(this.red&&!e.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,e)};var v={k256:null,p224:null,p192:null,p25519:null};function y(e,t){this.name=e,this.p=new o(t,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function b(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function w(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function x(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function _(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function S(e){if("string"===typeof e){var t=o._prime(e);this.m=t.p,this.prime=t}else n(e.gtn(1),"modulus must be greater than 1"),this.m=e,this.prime=null}function k(e){S.call(this,e),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}y.prototype._tmp=function(){var e=new o(null);return e.words=new Array(Math.ceil(this.n/13)),e},y.prototype.ireduce=function(e){var t,r=e;do{this.split(r,this.tmp),t=(r=(r=this.imulK(r)).iadd(this.tmp)).bitLength()}while(t>this.n);var n=t0?r.isub(this.p):void 0!==r.strip?r.strip():r._strip(),r},y.prototype.split=function(e,t){e.iushrn(this.n,0,t)},y.prototype.imulK=function(e){return e.imul(this.k)},i(b,y),b.prototype.split=function(e,t){for(var r=4194303,n=Math.min(e.length,9),i=0;i>>22,o=a}o>>>=22,e.words[i-10]=o,0===o&&e.length>10?e.length-=10:e.length-=9},b.prototype.imulK=function(e){e.words[e.length]=0,e.words[e.length+1]=0,e.length+=2;for(var t=0,r=0;r>>=26,e.words[r]=i,t=n}return 0!==t&&(e.words[e.length++]=t),e},o._prime=function(e){if(v[e])return v[e];var t;if("k256"===e)t=new b;else if("p224"===e)t=new w;else if("p192"===e)t=new x;else{if("p25519"!==e)throw new Error("Unknown prime "+e);t=new _}return v[e]=t,t},S.prototype._verify1=function(e){n(0===e.negative,"red works only with positives"),n(e.red,"red works only with red numbers")},S.prototype._verify2=function(e,t){n(0===(e.negative|t.negative),"red works only with positives"),n(e.red&&e.red===t.red,"red works only with red numbers")},S.prototype.imod=function(e){return this.prime?this.prime.ireduce(e)._forceRed(this):e.umod(this.m)._forceRed(this)},S.prototype.neg=function(e){return e.isZero()?e.clone():this.m.sub(e)._forceRed(this)},S.prototype.add=function(e,t){this._verify2(e,t);var r=e.add(t);return r.cmp(this.m)>=0&&r.isub(this.m),r._forceRed(this)},S.prototype.iadd=function(e,t){this._verify2(e,t);var r=e.iadd(t);return r.cmp(this.m)>=0&&r.isub(this.m),r},S.prototype.sub=function(e,t){this._verify2(e,t);var r=e.sub(t);return r.cmpn(0)<0&&r.iadd(this.m),r._forceRed(this)},S.prototype.isub=function(e,t){this._verify2(e,t);var r=e.isub(t);return r.cmpn(0)<0&&r.iadd(this.m),r},S.prototype.shl=function(e,t){return this._verify1(e),this.imod(e.ushln(t))},S.prototype.imul=function(e,t){return this._verify2(e,t),this.imod(e.imul(t))},S.prototype.mul=function(e,t){return this._verify2(e,t),this.imod(e.mul(t))},S.prototype.isqr=function(e){return this.imul(e,e.clone())},S.prototype.sqr=function(e){return this.mul(e,e)},S.prototype.sqrt=function(e){if(e.isZero())return e.clone();var t=this.m.andln(3);if(n(t%2===1),3===t){var r=this.m.add(new o(1)).iushrn(2);return this.pow(e,r)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);n(!i.isZero());var s=new o(1).toRed(this),c=s.redNeg(),l=this.m.subn(1).iushrn(1),u=this.m.bitLength();for(u=new o(2*u*u).toRed(this);0!==this.pow(u,l).cmp(c);)u.redIAdd(c);for(var d=this.pow(u,i),h=this.pow(e,i.addn(1).iushrn(1)),f=this.pow(e,i),p=a;0!==f.cmp(s);){for(var m=f,g=0;0!==m.cmp(s);g++)m=m.redSqr();n(g=0;n--){for(var l=t.words[n],u=c-1;u>=0;u--){var d=l>>u&1;i!==r[0]&&(i=this.sqr(i)),0!==d||0!==a?(a<<=1,a|=d,(4===++s||0===n&&0===u)&&(i=this.mul(i,r[a]),s=0,a=0)):s=0}c=26}return i},S.prototype.convertTo=function(e){var t=e.umod(this.m);return t===e?t.clone():t},S.prototype.convertFrom=function(e){var t=e.clone();return t.red=null,t},o.mont=function(e){return new k(e)},i(k,S),k.prototype.convertTo=function(e){return this.imod(e.ushln(this.shift))},k.prototype.convertFrom=function(e){var t=this.imod(e.mul(this.rinv));return t.red=null,t},k.prototype.imul=function(e,t){if(e.isZero()||t.isZero())return e.words[0]=0,e.length=1,e;var r=e.imul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},k.prototype.mul=function(e,t){if(e.isZero()||t.isZero())return new o(0)._forceRed(this);var r=e.mul(t),n=r.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=r.isub(n).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},k.prototype.invm=function(e){return this.imod(e._invmp(this.m).mul(this.r2))._forceRed(this)}}(e=r.nmd(e),this)},3521:function(e){e.exports=function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=90)}({17:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n=r(18),i=function(){function e(){}return e.getFirstMatch=function(e,t){var r=t.match(e);return r&&r.length>0&&r[1]||""},e.getSecondMatch=function(e,t){var r=t.match(e);return r&&r.length>1&&r[2]||""},e.matchAndReturnConst=function(e,t,r){if(e.test(t))return r},e.getWindowsVersionName=function(e){switch(e){case"NT":return"NT";case"XP":case"NT 5.1":return"XP";case"NT 5.0":return"2000";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}},e.getMacOSVersionName=function(e){var t=e.split(".").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}},e.getAndroidVersionName=function(e){var t=e.split(".").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?"Cupcake":1===t[0]&&t[1]>=6?"Donut":2===t[0]&&t[1]<2?"Eclair":2===t[0]&&2===t[1]?"Froyo":2===t[0]&&t[1]>2?"Gingerbread":3===t[0]?"Honeycomb":4===t[0]&&t[1]<1?"Ice Cream Sandwich":4===t[0]&&t[1]<4?"Jelly Bean":4===t[0]&&t[1]>=4?"KitKat":5===t[0]?"Lollipop":6===t[0]?"Marshmallow":7===t[0]?"Nougat":8===t[0]?"Oreo":9===t[0]?"Pie":void 0},e.getVersionPrecision=function(e){return e.split(".").length},e.compareVersions=function(t,r,n){void 0===n&&(n=!1);var i=e.getVersionPrecision(t),o=e.getVersionPrecision(r),a=Math.max(i,o),s=0,c=e.map([t,r],(function(t){var r=a-e.getVersionPrecision(t),n=t+new Array(r+1).join(".0");return e.map(n.split("."),(function(e){return new Array(20-e.length).join("0")+e})).reverse()}));for(n&&(s=a-Math.min(i,o)),a-=1;a>=s;){if(c[0][a]>c[1][a])return 1;if(c[0][a]===c[1][a]){if(a===s)return 0;a-=1}else if(c[0][a]1?i-1:0),a=1;a0){var a=Object.keys(r),c=s.default.find(a,(function(e){return t.isOS(e)}));if(c){var l=this.satisfies(r[c]);if(void 0!==l)return l}var u=s.default.find(a,(function(e){return t.isPlatform(e)}));if(u){var d=this.satisfies(r[u]);if(void 0!==d)return d}}if(o>0){var h=Object.keys(i),f=s.default.find(h,(function(e){return t.isBrowser(e,!0)}));if(void 0!==f)return this.compareVersion(i[f])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var r=this.getBrowserName().toLowerCase(),n=e.toLowerCase(),i=s.default.getBrowserTypeByAlias(n);return t&&i&&(n=i.toLowerCase()),n===r},t.compareVersion=function(e){var t=[0],r=e,n=!1,i=this.getBrowserVersion();if("string"==typeof i)return">"===e[0]||"<"===e[0]?(r=e.substr(1),"="===e[1]?(n=!0,r=e.substr(2)):t=[],">"===e[0]?t.push(1):t.push(-1)):"="===e[0]?r=e.substr(1):"~"===e[0]&&(n=!0,r=e.substr(1)),t.indexOf(s.default.compareVersions(i,r,n))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e}();t.default=l,e.exports=t.default},92:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=/version\/(\d+(\.?_?\d+)+)/i,a=[{test:[/googlebot/i],describe:function(e){var t={name:"Googlebot"},r=i.default.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/opera/i],describe:function(e){var t={name:"Opera"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opr\/|opios/i],describe:function(e){var t={name:"Opera"},r=i.default.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:"Samsung Internet for Android"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Whale/i],describe:function(e){var t={name:"NAVER Whale Browser"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:"MZ Browser"},r=i.default.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/focus/i],describe:function(e){var t={name:"Focus"},r=i.default.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/swing/i],describe:function(e){var t={name:"Swing"},r=i.default.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/coast/i],describe:function(e){var t={name:"Opera Coast"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe:function(e){var t={name:"Opera Touch"},r=i.default.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/yabrowser/i],describe:function(e){var t={name:"Yandex Browser"},r=i.default.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:"UC Browser"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:"Maxthon"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/epiphany/i],describe:function(e){var t={name:"Epiphany"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/puffin/i],describe:function(e){var t={name:"Puffin"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sleipnir/i],describe:function(e){var t={name:"Sleipnir"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/k-meleon/i],describe:function(e){var t={name:"K-Meleon"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/micromessenger/i],describe:function(e){var t={name:"WeChat"},r=i.default.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?"QQ Browser Lite":"QQ Browser"},r=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/msie|trident/i],describe:function(e){var t={name:"Internet Explorer"},r=i.default.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/\sedg\//i],describe:function(e){var t={name:"Microsoft Edge"},r=i.default.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:"Microsoft Edge"},r=i.default.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/vivaldi/i],describe:function(e){var t={name:"Vivaldi"},r=i.default.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/seamonkey/i],describe:function(e){var t={name:"SeaMonkey"},r=i.default.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sailfish/i],describe:function(e){var t={name:"Sailfish"},r=i.default.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,e);return r&&(t.version=r),t}},{test:[/silk/i],describe:function(e){var t={name:"Amazon Silk"},r=i.default.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/phantom/i],describe:function(e){var t={name:"PhantomJS"},r=i.default.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/slimerjs/i],describe:function(e){var t={name:"SlimerJS"},r=i.default.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t={name:"BlackBerry"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:"WebOS Browser"},r=i.default.getFirstMatch(o,e)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/bada/i],describe:function(e){var t={name:"Bada"},r=i.default.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/tizen/i],describe:function(e){var t={name:"Tizen"},r=i.default.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/qupzilla/i],describe:function(e){var t={name:"QupZilla"},r=i.default.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:"Firefox"},r=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/electron/i],describe:function(e){var t={name:"Electron"},r=i.default.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:"Miui"},r=i.default.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/chromium/i],describe:function(e){var t={name:"Chromium"},r=i.default.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,e)||i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:"Chrome"},r=i.default.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/GSA/i],describe:function(e){var t={name:"Google Search"},r=i.default.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t={name:"Android Browser"},r=i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/playstation 4/i],describe:function(e){var t={name:"PlayStation 4"},r=i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:"Safari"},r=i.default.getFirstMatch(o,e);return r&&(t.version=r),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search("\\(")?/^(.*)\/(.*)[ \t]\((.*)/:/^(.*)\/(.*) /;return{name:i.default.getFirstMatch(t,e),version:i.default.getSecondMatch(t,e)}}}];t.default=a,e.exports=t.default},93:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:[/Roku\/DVP/],describe:function(e){var t=i.default.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,e);return{name:o.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=i.default.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=i.default.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,e),r=i.default.getWindowsVersionName(t);return{name:o.OS_MAP.Windows,version:t,versionName:r}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(e){var t={name:o.OS_MAP.iOS},r=i.default.getSecondMatch(/(Version\/)(\d[\d.]+)/,e);return r&&(t.version=r),t}},{test:[/macintosh/i],describe:function(e){var t=i.default.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,e).replace(/[_\s]/g,"."),r=i.default.getMacOSVersionName(t),n={name:o.OS_MAP.MacOS,version:t};return r&&(n.versionName=r),n}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=i.default.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,e).replace(/[_\s]/g,".");return{name:o.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t=i.default.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,e),r=i.default.getAndroidVersionName(t),n={name:o.OS_MAP.Android,version:t};return r&&(n.versionName=r),n}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=i.default.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,e),r={name:o.OS_MAP.WebOS};return t&&t.length&&(r.version=t),r}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(e){var t=i.default.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,e)||i.default.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,e)||i.default.getFirstMatch(/\bbb(\d+)/i,e);return{name:o.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=i.default.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=i.default.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:o.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:o.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=i.default.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,e);return{name:o.OS_MAP.PlayStation4,version:t}}}];t.default=a,e.exports=t.default},94:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:[/googlebot/i],describe:function(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe:function(e){var t=i.default.getFirstMatch(/(can-l01)/i,e)&&"Nova",r={type:o.PLATFORMS_MAP.mobile,vendor:"Huawei"};return t&&(r.model=t),r}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),r=e.test(/like (ipod|iphone)/i);return t&&!r},describe:function(e){var t=i.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:o.PLATFORMS_MAP.mobile,vendor:"Apple",model:t}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return"blackberry"===e.getBrowserName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"BlackBerry"}}},{test:function(e){return"bada"===e.getBrowserName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return"windows phone"===e.getBrowserName()},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Microsoft"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(".")[0]);return"android"===e.getOSName(!0)&&t>=3},describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(e){return"android"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(e){return"macos"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop,vendor:"Apple"}}},{test:function(e){return"windows"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(e){return"linux"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(e){return"playstation 4"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.tv}}},{test:function(e){return"roku"===e.getOSName(!0)},describe:function(){return{type:o.PLATFORMS_MAP.tv}}}];t.default=a,e.exports=t.default},95:function(e,t,r){"use strict";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:function(e){return"microsoft edge"===e.getBrowserName(!0)},describe:function(e){if(/\sedg\//i.test(e))return{name:o.ENGINE_MAP.Blink};var t=i.default.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,e);return{name:o.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:o.ENGINE_MAP.Trident},r=i.default.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:o.ENGINE_MAP.Presto},r=i.default.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=e.test(/gecko/i),r=e.test(/like gecko/i);return t&&!r},describe:function(e){var t={name:o.ENGINE_MAP.Gecko},r=i.default.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(apple)?webkit\/537\.36/i],describe:function(){return{name:o.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:o.ENGINE_MAP.WebKit},r=i.default.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,e);return r&&(t.version=r),t}}];t.default=a,e.exports=t.default}})},5094:(e,t,r)=>{var n;function i(e){this.rand=e}if(e.exports=function(e){return n||(n=new i(null)),n.generate(e)},e.exports.Rand=i,i.prototype.generate=function(e){return this._rand(e)},i.prototype._rand=function(e){if(this.rand.getBytes)return this.rand.getBytes(e);for(var t=new Uint8Array(e),r=0;r{var n=r(161);e.exports=n("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},5919:(e,t,r)=>{"use strict";var n=r(8705),i=r(6293).Buffer;e.exports=function(e){function t(t){var r=t.slice(0,-4),n=t.slice(-4),i=e(r);if(!(n[0]^i[0]|n[1]^i[1]|n[2]^i[2]|n[3]^i[3]))return r}return{encode:function(t){var r=e(t);return n.encode(i.concat([t,r],t.length+4))},decode:function(e){var r=t(n.decode(e));if(!r)throw new Error("Invalid checksum");return r},decodeUnsafe:function(e){var r=n.decodeUnsafe(e);if(r)return t(r)}}}},427:(e,t,r)=>{"use strict";var n=r(8045),i=r(5919);e.exports=i((function(e){var t=n("sha256").update(e).digest();return n("sha256").update(t).digest()}))},4872:(e,t,r)=>{"use strict";const n=r(3539),i=r(3299),o="function"===typeof Symbol&&"function"===typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;t.Buffer=c,t.SlowBuffer=function(e){+e!=e&&(e=0);return c.alloc(+e)},t.INSPECT_MAX_BYTES=50;const a=2147483647;function s(e){if(e>a)throw new RangeError('The value "'+e+'" is invalid for option "size"');const t=new Uint8Array(e);return Object.setPrototypeOf(t,c.prototype),t}function c(e,t,r){if("number"===typeof e){if("string"===typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return d(e)}return l(e,t,r)}function l(e,t,r){if("string"===typeof e)return function(e,t){"string"===typeof t&&""!==t||(t="utf8");if(!c.isEncoding(t))throw new TypeError("Unknown encoding: "+t);const r=0|m(e,t);let n=s(r);const i=n.write(e,t);i!==r&&(n=n.slice(0,i));return n}(e,t);if(ArrayBuffer.isView(e))return function(e){if(Z(e,Uint8Array)){const t=new Uint8Array(e);return f(t.buffer,t.byteOffset,t.byteLength)}return h(e)}(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(Z(e,ArrayBuffer)||e&&Z(e.buffer,ArrayBuffer))return f(e,t,r);if("undefined"!==typeof SharedArrayBuffer&&(Z(e,SharedArrayBuffer)||e&&Z(e.buffer,SharedArrayBuffer)))return f(e,t,r);if("number"===typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');const n=e.valueOf&&e.valueOf();if(null!=n&&n!==e)return c.from(n,t,r);const i=function(e){if(c.isBuffer(e)){const t=0|p(e.length),r=s(t);return 0===r.length||e.copy(r,0,0,t),r}if(void 0!==e.length)return"number"!==typeof e.length||Y(e.length)?s(0):h(e);if("Buffer"===e.type&&Array.isArray(e.data))return h(e.data)}(e);if(i)return i;if("undefined"!==typeof Symbol&&null!=Symbol.toPrimitive&&"function"===typeof e[Symbol.toPrimitive])return c.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function u(e){if("number"!==typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function d(e){return u(e),s(e<0?0:0|p(e))}function h(e){const t=e.length<0?0:0|p(e.length),r=s(t);for(let n=0;n=a)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a.toString(16)+" bytes");return 0|e}function m(e,t){if(c.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||Z(e,ArrayBuffer))return e.byteLength;if("string"!==typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);const r=e.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return K(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return W(e).length;default:if(i)return n?-1:K(e).length;t=(""+t).toLowerCase(),i=!0}}function g(e,t,r){let n=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return C(this,t,r);case"utf8":case"utf-8":return A(this,t,r);case"ascii":return O(this,t,r);case"latin1":case"binary":return T(this,t,r);case"base64":return E(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return j(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}function v(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function y(e,t,r,n,i){if(0===e.length)return-1;if("string"===typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),Y(r=+r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0){if(!i)return-1;r=0}if("string"===typeof t&&(t=c.from(t,n)),c.isBuffer(t))return 0===t.length?-1:b(e,t,r,n,i);if("number"===typeof t)return t&=255,"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):b(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function b(e,t,r,n,i){let o,a=1,s=e.length,c=t.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(e.length<2||t.length<2)return-1;a=2,s/=2,c/=2,r/=2}function l(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(i){let n=-1;for(o=r;os&&(r=s-c),o=r;o>=0;o--){let r=!0;for(let n=0;ni&&(n=i):n=i;const o=t.length;let a;for(n>o/2&&(n=o/2),a=0;a>8,i=r%256,o.push(i),o.push(n);return o}(t,e.length-r),e,r,n)}function E(e,t,r){return 0===t&&r===e.length?n.fromByteArray(e):n.fromByteArray(e.slice(t,r))}function A(e,t,r){r=Math.min(e.length,r);const n=[];let i=t;for(;i239?4:t>223?3:t>191?2:1;if(i+a<=r){let r,n,s,c;switch(a){case 1:t<128&&(o=t);break;case 2:r=e[i+1],128===(192&r)&&(c=(31&t)<<6|63&r,c>127&&(o=c));break;case 3:r=e[i+1],n=e[i+2],128===(192&r)&&128===(192&n)&&(c=(15&t)<<12|(63&r)<<6|63&n,c>2047&&(c<55296||c>57343)&&(o=c));break;case 4:r=e[i+1],n=e[i+2],s=e[i+3],128===(192&r)&&128===(192&n)&&128===(192&s)&&(c=(15&t)<<18|(63&r)<<12|(63&n)<<6|63&s,c>65535&&c<1114112&&(o=c))}}null===o?(o=65533,a=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|1023&o),n.push(o),i+=a}return function(e){const t=e.length;if(t<=P)return String.fromCharCode.apply(String,e);let r="",n=0;for(;nn.length?(c.isBuffer(t)||(t=c.from(t)),t.copy(n,i)):Uint8Array.prototype.set.call(n,t,i);else{if(!c.isBuffer(t))throw new TypeError('"list" argument must be an Array of Buffers');t.copy(n,i)}i+=t.length}return n},c.byteLength=m,c.prototype._isBuffer=!0,c.prototype.swap16=function(){const e=this.length;if(e%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let t=0;tr&&(e+=" ... "),""},o&&(c.prototype[o]=c.prototype.inspect),c.prototype.compare=function(e,t,r,n,i){if(Z(e,Uint8Array)&&(e=c.from(e,e.offset,e.byteLength)),!c.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===r&&(r=e?e.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),t<0||r>e.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&t>=r)return 0;if(n>=i)return-1;if(t>=r)return 1;if(this===e)return 0;let o=(i>>>=0)-(n>>>=0),a=(r>>>=0)-(t>>>=0);const s=Math.min(o,a),l=this.slice(n,i),u=e.slice(t,r);for(let c=0;c>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}const i=this.length-t;if((void 0===r||r>i)&&(r=i),e.length>0&&(r<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");let o=!1;for(;;)switch(n){case"hex":return w(this,e,t,r);case"utf8":case"utf-8":return x(this,e,t,r);case"ascii":case"latin1":case"binary":return _(this,e,t,r);case"base64":return S(this,e,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,t,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};const P=4096;function O(e,t,r){let n="";r=Math.min(e.length,r);for(let i=t;in)&&(r=n);let i="";for(let o=t;or)throw new RangeError("Trying to access beyond buffer length")}function I(e,t,r,n,i,o){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function M(e,t,r,n,i){$(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o,o>>=8,e[r++]=o;let a=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,a>>=8,e[r++]=a,r}function L(e,t,r,n,i){$(t,n,i,e,r,7);let o=Number(t&BigInt(4294967295));e[r+7]=o,o>>=8,e[r+6]=o,o>>=8,e[r+5]=o,o>>=8,e[r+4]=o;let a=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=a,a>>=8,e[r+2]=a,a>>=8,e[r+1]=a,a>>=8,e[r]=a,r+8}function N(e,t,r,n,i,o){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function D(e,t,r,n,o){return t=+t,r>>>=0,o||N(e,0,r,4),i.write(e,t,r,n,23,4),r+4}function z(e,t,r,n,o){return t=+t,r>>>=0,o||N(e,0,r,8),i.write(e,t,r,n,52,8),r+8}c.prototype.slice=function(e,t){const r=this.length;(e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t>>=0,t>>>=0,r||R(e,t,this.length);let n=this[e],i=1,o=0;for(;++o>>=0,t>>>=0,r||R(e,t,this.length);let n=this[e+--t],i=1;for(;t>0&&(i*=256);)n+=this[e+--t]*i;return n},c.prototype.readUint8=c.prototype.readUInt8=function(e,t){return e>>>=0,t||R(e,1,this.length),this[e]},c.prototype.readUint16LE=c.prototype.readUInt16LE=function(e,t){return e>>>=0,t||R(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUint16BE=c.prototype.readUInt16BE=function(e,t){return e>>>=0,t||R(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUint32LE=c.prototype.readUInt32LE=function(e,t){return e>>>=0,t||R(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUint32BE=c.prototype.readUInt32BE=function(e,t){return e>>>=0,t||R(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readBigUInt64LE=J((function(e){H(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=t+256*this[++e]+65536*this[++e]+this[++e]*2**24,i=this[++e]+256*this[++e]+65536*this[++e]+r*2**24;return BigInt(n)+(BigInt(i)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=t*2**24+65536*this[++e]+256*this[++e]+this[++e],i=this[++e]*2**24+65536*this[++e]+256*this[++e]+r;return(BigInt(n)<>>=0,t>>>=0,r||R(e,t,this.length);let n=this[e],i=1,o=0;for(;++o=i&&(n-=Math.pow(2,8*t)),n},c.prototype.readIntBE=function(e,t,r){e>>>=0,t>>>=0,r||R(e,t,this.length);let n=t,i=1,o=this[e+--n];for(;n>0&&(i*=256);)o+=this[e+--n]*i;return i*=128,o>=i&&(o-=Math.pow(2,8*t)),o},c.prototype.readInt8=function(e,t){return e>>>=0,t||R(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){e>>>=0,t||R(e,2,this.length);const r=this[e]|this[e+1]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt16BE=function(e,t){e>>>=0,t||R(e,2,this.length);const r=this[e+1]|this[e]<<8;return 32768&r?4294901760|r:r},c.prototype.readInt32LE=function(e,t){return e>>>=0,t||R(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return e>>>=0,t||R(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readBigInt64LE=J((function(e){H(e>>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=this[e+4]+256*this[e+5]+65536*this[e+6]+(r<<24);return(BigInt(n)<>>=0,"offset");const t=this[e],r=this[e+7];void 0!==t&&void 0!==r||V(e,this.length-8);const n=(t<<24)+65536*this[++e]+256*this[++e]+this[++e];return(BigInt(n)<>>=0,t||R(e,4,this.length),i.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return e>>>=0,t||R(e,4,this.length),i.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return e>>>=0,t||R(e,8,this.length),i.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return e>>>=0,t||R(e,8,this.length),i.read(this,e,!1,52,8)},c.prototype.writeUintLE=c.prototype.writeUIntLE=function(e,t,r,n){if(e=+e,t>>>=0,r>>>=0,!n){I(this,e,t,r,Math.pow(2,8*r)-1,0)}let i=1,o=0;for(this[t]=255&e;++o>>=0,r>>>=0,!n){I(this,e,t,r,Math.pow(2,8*r)-1,0)}let i=r-1,o=1;for(this[t+i]=255&e;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+r},c.prototype.writeUint8=c.prototype.writeUInt8=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,1,255,0),this[t]=255&e,t+1},c.prototype.writeUint16LE=c.prototype.writeUInt16LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeUint16BE=c.prototype.writeUInt16BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeUint32LE=c.prototype.writeUInt32LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},c.prototype.writeUint32BE=c.prototype.writeUInt32BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigUInt64LE=J((function(e,t=0){return M(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeBigUInt64BE=J((function(e,t=0){return L(this,e,t,BigInt(0),BigInt("0xffffffffffffffff"))})),c.prototype.writeIntLE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);I(this,e,t,r,n-1,-n)}let i=0,o=1,a=0;for(this[t]=255&e;++i>0)-a&255;return t+r},c.prototype.writeIntBE=function(e,t,r,n){if(e=+e,t>>>=0,!n){const n=Math.pow(2,8*r-1);I(this,e,t,r,n-1,-n)}let i=r-1,o=1,a=0;for(this[t+i]=255&e;--i>=0&&(o*=256);)e<0&&0===a&&0!==this[t+i+1]&&(a=1),this[t+i]=(e/o>>0)-a&255;return t+r},c.prototype.writeInt8=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},c.prototype.writeInt16BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},c.prototype.writeInt32LE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},c.prototype.writeInt32BE=function(e,t,r){return e=+e,t>>>=0,r||I(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},c.prototype.writeBigInt64LE=J((function(e,t=0){return M(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeBigInt64BE=J((function(e,t=0){return L(this,e,t,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))})),c.prototype.writeFloatLE=function(e,t,r){return D(this,e,t,!0,r)},c.prototype.writeFloatBE=function(e,t,r){return D(this,e,t,!1,r)},c.prototype.writeDoubleLE=function(e,t,r){return z(this,e,t,!0,r)},c.prototype.writeDoubleBE=function(e,t,r){return z(this,e,t,!1,r)},c.prototype.copy=function(e,t,r,n){if(!c.isBuffer(e))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),t>=e.length&&(t=e.length),t||(t=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),e.length-t>>=0,r=void 0===r?this.length:r>>>0,e||(e=0),"number"===typeof e)for(i=t;i=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function $(e,t,r,n,i,o){if(e>r||e3?0===t||t===BigInt(0)?`>= 0${n} and < 2${n} ** ${8*(o+1)}${n}`:`>= -(2${n} ** ${8*(o+1)-1}${n}) and < 2 ** ${8*(o+1)-1}${n}`:`>= ${t}${n} and <= ${r}${n}`,new B.ERR_OUT_OF_RANGE("value",i,e)}!function(e,t,r){H(t,"offset"),void 0!==e[t]&&void 0!==e[t+r]||V(t,e.length-(r+1))}(n,i,o)}function H(e,t){if("number"!==typeof e)throw new B.ERR_INVALID_ARG_TYPE(t,"number",e)}function V(e,t,r){if(Math.floor(e)!==e)throw H(e,r),new B.ERR_OUT_OF_RANGE(r||"offset","an integer",e);if(t<0)throw new B.ERR_BUFFER_OUT_OF_BOUNDS;throw new B.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}U("ERR_BUFFER_OUT_OF_BOUNDS",(function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"}),RangeError),U("ERR_INVALID_ARG_TYPE",(function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`}),TypeError),U("ERR_OUT_OF_RANGE",(function(e,t,r){let n=`The value of "${e}" is out of range.`,i=r;return Number.isInteger(r)&&Math.abs(r)>2**32?i=F(String(r)):"bigint"===typeof r&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=F(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n}),RangeError);const q=/[^+/0-9A-Za-z-_]/g;function K(e,t){let r;t=t||1/0;const n=e.length;let i=null;const o=[];for(let a=0;a55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===n){(t-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;o.push(r)}else if(r<2048){if((t-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((t-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function W(e){return n.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(q,"")).length<2)return"";for(;e.length%4!==0;)e+="=";return e}(e))}function G(e,t,r,n){let i;for(i=0;i=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function Z(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function Y(e){return e!==e}const X=function(){const e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){const n=16*r;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function J(e){return"undefined"===typeof BigInt?Q:e}function Q(){throw new Error("BigInt not supported")}},7821:e=>{var t={utf8:{stringToBytes:function(e){return t.bin.stringToBytes(unescape(encodeURIComponent(e)))},bytesToString:function(e){return decodeURIComponent(escape(t.bin.bytesToString(e)))}},bin:{stringToBytes:function(e){for(var t=[],r=0;r{var n=r(6293).Buffer,i=r(1702).Transform,o=r(5049).s;function a(e){i.call(this),this.hashMode="string"===typeof e,this.hashMode?this[e]=this._finalOrDigest:this.final=this._finalOrDigest,this._final&&(this.__final=this._final,this._final=null),this._decoder=null,this._encoding=null}r(637)(a,i),a.prototype.update=function(e,t,r){"string"===typeof e&&(e=n.from(e,t));var i=this._update(e);return this.hashMode?this:(r&&(i=this._toString(i,r)),i)},a.prototype.setAutoPadding=function(){},a.prototype.getAuthTag=function(){throw new Error("trying to get auth tag in unsupported state")},a.prototype.setAuthTag=function(){throw new Error("trying to set auth tag in unsupported state")},a.prototype.setAAD=function(){throw new Error("trying to set aad in unsupported state")},a.prototype._transform=function(e,t,r){var n;try{this.hashMode?this._update(e):this.push(this._update(e))}catch(i){n=i}finally{r(n)}},a.prototype._flush=function(e){var t;try{this.push(this.__final())}catch(r){t=r}e(t)},a.prototype._finalOrDigest=function(e){var t=this.__final()||n.alloc(0);return e&&(t=this._toString(t,e,!0)),t},a.prototype._toString=function(e,t,r){if(this._decoder||(this._decoder=new o(t),this._encoding=t),this._encoding!==t)throw new Error("can't switch encodings");var n=this._decoder.write(e);return r&&(n+=this._decoder.end()),n},e.exports=a},5245:(e,t)=>{var r;!function(){"use strict";var n={}.hasOwnProperty;function i(){for(var e=[],t=0;t{"use strict";var n=r(637),i=r(4768),o=r(4805),a=r(6478),s=r(1036);function c(e){s.call(this,"digest"),this._hash=e}n(c,s),c.prototype._update=function(e){this._hash.update(e)},c.prototype._final=function(){return this._hash.digest()},e.exports=function(e){return"md5"===(e=e.toLowerCase())?new i:"rmd160"===e||"ripemd160"===e?new o:new c(a(e))}},8533:(e,t,r)=>{var n=r(4768);e.exports=function(e){return(new n).update(e).digest()}},9799:e=>{!function(){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r={rotl:function(e,t){return e<>>32-t},rotr:function(e,t){return e<<32-t|e>>>t},endian:function(e){if(e.constructor==Number)return 16711935&r.rotl(e,8)|4278255360&r.rotl(e,24);for(var t=0;t0;e--)t.push(Math.floor(256*Math.random()));return t},bytesToWords:function(e){for(var t=[],r=0,n=0;r>>5]|=e[r]<<24-n%32;return t},wordsToBytes:function(e){for(var t=[],r=0;r<32*e.length;r+=8)t.push(e[r>>>5]>>>24-r%32&255);return t},bytesToHex:function(e){for(var t=[],r=0;r>>4).toString(16)),t.push((15&e[r]).toString(16));return t.join("")},hexToBytes:function(e){for(var t=[],r=0;r>>6*(3-o)&63)):r.push("=");return r.join("")},base64ToBytes:function(e){e=e.replace(/[^A-Z0-9+\/]/gi,"");for(var r=[],n=0,i=0;n>>6-2*i);return r}};e.exports=r}()},5434:e=>{"use strict";var t=function(e){return function(e){return!!e&&"object"===typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return"[object RegExp]"===t||"[object Date]"===t||function(e){return e.$$typeof===r}(e)}(e)};var r="function"===typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(e,t){return!1!==t.clone&&t.isMergeableObject(e)?c((r=e,Array.isArray(r)?[]:{}),e,t):e;var r}function i(e,t,r){return e.concat(t).map((function(e){return n(e,r)}))}function o(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return Object.propertyIsEnumerable.call(e,t)})):[]}(e))}function a(e,t){try{return t in e}catch(r){return!1}}function s(e,t,r){var i={};return r.isMergeableObject(e)&&o(e).forEach((function(t){i[t]=n(e[t],r)})),o(t).forEach((function(o){(function(e,t){return a(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))})(e,o)||(a(e,o)&&r.isMergeableObject(t[o])?i[o]=function(e,t){if(!t.customMerge)return c;var r=t.customMerge(e);return"function"===typeof r?r:c}(o,r)(e[o],t[o],r):i[o]=n(t[o],r))})),i}function c(e,r,o){(o=o||{}).arrayMerge=o.arrayMerge||i,o.isMergeableObject=o.isMergeableObject||t,o.cloneUnlessOtherwiseSpecified=n;var a=Array.isArray(r);return a===Array.isArray(e)?a?o.arrayMerge(e,r,o):s(e,r,o):n(r,o)}c.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,r){return c(e,r,t)}),{})};var l=c;e.exports=l},7007:(e,t,r)=>{"use strict";var n=t;n.version=r(8597).i8,n.utils=r(5649),n.rand=r(5094),n.curve=r(9057),n.curves=r(4011),n.ec=r(8563),n.eddsa=r(5494)},1399:(e,t,r)=>{"use strict";var n=r(292),i=r(5649),o=i.getNAF,a=i.getJSF,s=i.assert;function c(e,t){this.type=e,this.p=new n(t.p,16),this.red=t.prime?n.red(t.prime):n.mont(this.p),this.zero=new n(0).toRed(this.red),this.one=new n(1).toRed(this.red),this.two=new n(2).toRed(this.red),this.n=t.n&&new n(t.n,16),this.g=t.g&&this.pointFromJSON(t.g,t.gRed),this._wnafT1=new Array(4),this._wnafT2=new Array(4),this._wnafT3=new Array(4),this._wnafT4=new Array(4),this._bitLength=this.n?this.n.bitLength():0;var r=this.n&&this.p.div(this.n);!r||r.cmpn(100)>0?this.redN=null:(this._maxwellTrick=!0,this.redN=this.n.toRed(this.red))}function l(e,t){this.curve=e,this.type=t,this.precomputed=null}e.exports=c,c.prototype.point=function(){throw new Error("Not implemented")},c.prototype.validate=function(){throw new Error("Not implemented")},c.prototype._fixedNafMul=function(e,t){s(e.precomputed);var r=e._getDoubles(),n=o(t,1,this._bitLength),i=(1<=a;u--)c=(c<<1)+n[u];l.push(c)}for(var d=this.jpoint(null,null,null),h=this.jpoint(null,null,null),f=i;f>0;f--){for(a=0;a=0;l--){for(var u=0;l>=0&&0===a[l];l--)u++;if(l>=0&&u++,c=c.dblp(u),l<0)break;var d=a[l];s(0!==d),c="affine"===e.type?d>0?c.mixedAdd(i[d-1>>1]):c.mixedAdd(i[-d-1>>1].neg()):d>0?c.add(i[d-1>>1]):c.add(i[-d-1>>1].neg())}return"affine"===e.type?c.toP():c},c.prototype._wnafMulAdd=function(e,t,r,n,i){var s,c,l,u=this._wnafT1,d=this._wnafT2,h=this._wnafT3,f=0;for(s=0;s=1;s-=2){var m=s-1,g=s;if(1===u[m]&&1===u[g]){var v=[t[m],null,null,t[g]];0===t[m].y.cmp(t[g].y)?(v[1]=t[m].add(t[g]),v[2]=t[m].toJ().mixedAdd(t[g].neg())):0===t[m].y.cmp(t[g].y.redNeg())?(v[1]=t[m].toJ().mixedAdd(t[g]),v[2]=t[m].add(t[g].neg())):(v[1]=t[m].toJ().mixedAdd(t[g]),v[2]=t[m].toJ().mixedAdd(t[g].neg()));var y=[-3,-1,-5,-7,0,7,5,1,3],b=a(r[m],r[g]);for(f=Math.max(b[0].length,f),h[m]=new Array(f),h[g]=new Array(f),c=0;c=0;s--){for(var k=0;s>=0;){var E=!0;for(c=0;c=0&&k++,_=_.dblp(k),s<0)break;for(c=0;c0?l=d[c][A-1>>1]:A<0&&(l=d[c][-A-1>>1].neg()),_="affine"===l.type?_.mixedAdd(l):_.add(l))}}for(s=0;s=Math.ceil((e.bitLength()+1)/t.step)},l.prototype._getDoubles=function(e,t){if(this.precomputed&&this.precomputed.doubles)return this.precomputed.doubles;for(var r=[this],n=this,i=0;i{"use strict";var n=r(5649),i=r(292),o=r(637),a=r(1399),s=n.assert;function c(e){this.twisted=1!==(0|e.a),this.mOneA=this.twisted&&-1===(0|e.a),this.extended=this.mOneA,a.call(this,"edwards",e),this.a=new i(e.a,16).umod(this.red.m),this.a=this.a.toRed(this.red),this.c=new i(e.c,16).toRed(this.red),this.c2=this.c.redSqr(),this.d=new i(e.d,16).toRed(this.red),this.dd=this.d.redAdd(this.d),s(!this.twisted||0===this.c.fromRed().cmpn(1)),this.oneC=1===(0|e.c)}function l(e,t,r,n,o){a.BasePoint.call(this,e,"projective"),null===t&&null===r&&null===n?(this.x=this.curve.zero,this.y=this.curve.one,this.z=this.curve.one,this.t=this.curve.zero,this.zOne=!0):(this.x=new i(t,16),this.y=new i(r,16),this.z=n?new i(n,16):this.curve.one,this.t=o&&new i(o,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.t&&!this.t.red&&(this.t=this.t.toRed(this.curve.red)),this.zOne=this.z===this.curve.one,this.curve.extended&&!this.t&&(this.t=this.x.redMul(this.y),this.zOne||(this.t=this.t.redMul(this.z.redInvm()))))}o(c,a),e.exports=c,c.prototype._mulA=function(e){return this.mOneA?e.redNeg():this.a.redMul(e)},c.prototype._mulC=function(e){return this.oneC?e:this.c.redMul(e)},c.prototype.jpoint=function(e,t,r,n){return this.point(e,t,r,n)},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=this.c2.redSub(this.a.redMul(r)),o=this.one.redSub(this.c2.redMul(this.d).redMul(r)),a=n.redMul(o.redInvm()),s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");var c=s.fromRed().isOdd();return(t&&!c||!t&&c)&&(s=s.redNeg()),this.point(e,s)},c.prototype.pointFromY=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr(),n=r.redSub(this.c2),o=r.redMul(this.d).redMul(this.c2).redSub(this.a),a=n.redMul(o.redInvm());if(0===a.cmp(this.zero)){if(t)throw new Error("invalid point");return this.point(this.zero,e)}var s=a.redSqrt();if(0!==s.redSqr().redSub(a).cmp(this.zero))throw new Error("invalid point");return s.fromRed().isOdd()!==t&&(s=s.redNeg()),this.point(s,e)},c.prototype.validate=function(e){if(e.isInfinity())return!0;e.normalize();var t=e.x.redSqr(),r=e.y.redSqr(),n=t.redMul(this.a).redAdd(r),i=this.c2.redMul(this.one.redAdd(this.d.redMul(t).redMul(r)));return 0===n.cmp(i)},o(l,a.BasePoint),c.prototype.pointFromJSON=function(e){return l.fromJSON(this,e)},c.prototype.point=function(e,t,r,n){return new l(this,e,t,r,n)},l.fromJSON=function(e,t){return new l(e,t[0],t[1],t[2])},l.prototype.inspect=function(){return this.isInfinity()?"":""},l.prototype.isInfinity=function(){return 0===this.x.cmpn(0)&&(0===this.y.cmp(this.z)||this.zOne&&0===this.y.cmp(this.curve.c))},l.prototype._extDbl=function(){var e=this.x.redSqr(),t=this.y.redSqr(),r=this.z.redSqr();r=r.redIAdd(r);var n=this.curve._mulA(e),i=this.x.redAdd(this.y).redSqr().redISub(e).redISub(t),o=n.redAdd(t),a=o.redSub(r),s=n.redSub(t),c=i.redMul(a),l=o.redMul(s),u=i.redMul(s),d=a.redMul(o);return this.curve.point(c,l,d,u)},l.prototype._projDbl=function(){var e,t,r,n,i,o,a=this.x.redAdd(this.y).redSqr(),s=this.x.redSqr(),c=this.y.redSqr();if(this.curve.twisted){var l=(n=this.curve._mulA(s)).redAdd(c);this.zOne?(e=a.redSub(s).redSub(c).redMul(l.redSub(this.curve.two)),t=l.redMul(n.redSub(c)),r=l.redSqr().redSub(l).redSub(l)):(i=this.z.redSqr(),o=l.redSub(i).redISub(i),e=a.redSub(s).redISub(c).redMul(o),t=l.redMul(n.redSub(c)),r=l.redMul(o))}else n=s.redAdd(c),i=this.curve._mulC(this.z).redSqr(),o=n.redSub(i).redSub(i),e=this.curve._mulC(a.redISub(n)).redMul(o),t=this.curve._mulC(n).redMul(s.redISub(c)),r=n.redMul(o);return this.curve.point(e,t,r)},l.prototype.dbl=function(){return this.isInfinity()?this:this.curve.extended?this._extDbl():this._projDbl()},l.prototype._extAdd=function(e){var t=this.y.redSub(this.x).redMul(e.y.redSub(e.x)),r=this.y.redAdd(this.x).redMul(e.y.redAdd(e.x)),n=this.t.redMul(this.curve.dd).redMul(e.t),i=this.z.redMul(e.z.redAdd(e.z)),o=r.redSub(t),a=i.redSub(n),s=i.redAdd(n),c=r.redAdd(t),l=o.redMul(a),u=s.redMul(c),d=o.redMul(c),h=a.redMul(s);return this.curve.point(l,u,h,d)},l.prototype._projAdd=function(e){var t,r,n=this.z.redMul(e.z),i=n.redSqr(),o=this.x.redMul(e.x),a=this.y.redMul(e.y),s=this.curve.d.redMul(o).redMul(a),c=i.redSub(s),l=i.redAdd(s),u=this.x.redAdd(this.y).redMul(e.x.redAdd(e.y)).redISub(o).redISub(a),d=n.redMul(c).redMul(u);return this.curve.twisted?(t=n.redMul(l).redMul(a.redSub(this.curve._mulA(o))),r=c.redMul(l)):(t=n.redMul(l).redMul(a.redSub(o)),r=this.curve._mulC(c).redMul(l)),this.curve.point(d,t,r)},l.prototype.add=function(e){return this.isInfinity()?e:e.isInfinity()?this:this.curve.extended?this._extAdd(e):this._projAdd(e)},l.prototype.mul=function(e){return this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve._wnafMul(this,e)},l.prototype.mulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!1)},l.prototype.jmulAdd=function(e,t,r){return this.curve._wnafMulAdd(1,[this,t],[e,r],2,!0)},l.prototype.normalize=function(){if(this.zOne)return this;var e=this.z.redInvm();return this.x=this.x.redMul(e),this.y=this.y.redMul(e),this.t&&(this.t=this.t.redMul(e)),this.z=this.curve.one,this.zOne=!0,this},l.prototype.neg=function(){return this.curve.point(this.x.redNeg(),this.y,this.z,this.t&&this.t.redNeg())},l.prototype.getX=function(){return this.normalize(),this.x.fromRed()},l.prototype.getY=function(){return this.normalize(),this.y.fromRed()},l.prototype.eq=function(e){return this===e||0===this.getX().cmp(e.getX())&&0===this.getY().cmp(e.getY())},l.prototype.eqXToP=function(e){var t=e.toRed(this.curve.red).redMul(this.z);if(0===this.x.cmp(t))return!0;for(var r=e.clone(),n=this.curve.redN.redMul(this.z);;){if(r.iadd(this.curve.n),r.cmp(this.curve.p)>=0)return!1;if(t.redIAdd(n),0===this.x.cmp(t))return!0}},l.prototype.toP=l.prototype.normalize,l.prototype.mixedAdd=l.prototype.add},9057:(e,t,r)=>{"use strict";var n=t;n.base=r(1399),n.short=r(8289),n.mont=r(8507),n.edwards=r(3961)},8507:(e,t,r)=>{"use strict";var n=r(292),i=r(637),o=r(1399),a=r(5649);function s(e){o.call(this,"mont",e),this.a=new n(e.a,16).toRed(this.red),this.b=new n(e.b,16).toRed(this.red),this.i4=new n(4).toRed(this.red).redInvm(),this.two=new n(2).toRed(this.red),this.a24=this.i4.redMul(this.a.redAdd(this.two))}function c(e,t,r){o.BasePoint.call(this,e,"projective"),null===t&&null===r?(this.x=this.curve.one,this.z=this.curve.zero):(this.x=new n(t,16),this.z=new n(r,16),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)))}i(s,o),e.exports=s,s.prototype.validate=function(e){var t=e.normalize().x,r=t.redSqr(),n=r.redMul(t).redAdd(r.redMul(this.a)).redAdd(t);return 0===n.redSqrt().redSqr().cmp(n)},i(c,o.BasePoint),s.prototype.decodePoint=function(e,t){return this.point(a.toArray(e,t),1)},s.prototype.point=function(e,t){return new c(this,e,t)},s.prototype.pointFromJSON=function(e){return c.fromJSON(this,e)},c.prototype.precompute=function(){},c.prototype._encode=function(){return this.getX().toArray("be",this.curve.p.byteLength())},c.fromJSON=function(e,t){return new c(e,t[0],t[1]||e.one)},c.prototype.inspect=function(){return this.isInfinity()?"":""},c.prototype.isInfinity=function(){return 0===this.z.cmpn(0)},c.prototype.dbl=function(){var e=this.x.redAdd(this.z).redSqr(),t=this.x.redSub(this.z).redSqr(),r=e.redSub(t),n=e.redMul(t),i=r.redMul(t.redAdd(this.curve.a24.redMul(r)));return this.curve.point(n,i)},c.prototype.add=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.diffAdd=function(e,t){var r=this.x.redAdd(this.z),n=this.x.redSub(this.z),i=e.x.redAdd(e.z),o=e.x.redSub(e.z).redMul(r),a=i.redMul(n),s=t.z.redMul(o.redAdd(a).redSqr()),c=t.x.redMul(o.redISub(a).redSqr());return this.curve.point(s,c)},c.prototype.mul=function(e){for(var t=e.clone(),r=this,n=this.curve.point(null,null),i=[];0!==t.cmpn(0);t.iushrn(1))i.push(t.andln(1));for(var o=i.length-1;o>=0;o--)0===i[o]?(r=r.diffAdd(n,this),n=n.dbl()):(n=r.diffAdd(n,this),r=r.dbl());return n},c.prototype.mulAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.jumlAdd=function(){throw new Error("Not supported on Montgomery curve")},c.prototype.eq=function(e){return 0===this.getX().cmp(e.getX())},c.prototype.normalize=function(){return this.x=this.x.redMul(this.z.redInvm()),this.z=this.curve.one,this},c.prototype.getX=function(){return this.normalize(),this.x.fromRed()}},8289:(e,t,r)=>{"use strict";var n=r(5649),i=r(292),o=r(637),a=r(1399),s=n.assert;function c(e){a.call(this,"short",e),this.a=new i(e.a,16).toRed(this.red),this.b=new i(e.b,16).toRed(this.red),this.tinv=this.two.redInvm(),this.zeroA=0===this.a.fromRed().cmpn(0),this.threeA=0===this.a.fromRed().sub(this.p).cmpn(-3),this.endo=this._getEndomorphism(e),this._endoWnafT1=new Array(4),this._endoWnafT2=new Array(4)}function l(e,t,r,n){a.BasePoint.call(this,e,"affine"),null===t&&null===r?(this.x=null,this.y=null,this.inf=!0):(this.x=new i(t,16),this.y=new i(r,16),n&&(this.x.forceRed(this.curve.red),this.y.forceRed(this.curve.red)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.inf=!1)}function u(e,t,r,n){a.BasePoint.call(this,e,"jacobian"),null===t&&null===r&&null===n?(this.x=this.curve.one,this.y=this.curve.one,this.z=new i(0)):(this.x=new i(t,16),this.y=new i(r,16),this.z=new i(n,16)),this.x.red||(this.x=this.x.toRed(this.curve.red)),this.y.red||(this.y=this.y.toRed(this.curve.red)),this.z.red||(this.z=this.z.toRed(this.curve.red)),this.zOne=this.z===this.curve.one}o(c,a),e.exports=c,c.prototype._getEndomorphism=function(e){if(this.zeroA&&this.g&&this.n&&1===this.p.modn(3)){var t,r;if(e.beta)t=new i(e.beta,16).toRed(this.red);else{var n=this._getEndoRoots(this.p);t=(t=n[0].cmp(n[1])<0?n[0]:n[1]).toRed(this.red)}if(e.lambda)r=new i(e.lambda,16);else{var o=this._getEndoRoots(this.n);0===this.g.mul(o[0]).x.cmp(this.g.x.redMul(t))?r=o[0]:(r=o[1],s(0===this.g.mul(r).x.cmp(this.g.x.redMul(t))))}return{beta:t,lambda:r,basis:e.basis?e.basis.map((function(e){return{a:new i(e.a,16),b:new i(e.b,16)}})):this._getEndoBasis(r)}}},c.prototype._getEndoRoots=function(e){var t=e===this.p?this.red:i.mont(e),r=new i(2).toRed(t).redInvm(),n=r.redNeg(),o=new i(3).toRed(t).redNeg().redSqrt().redMul(r);return[n.redAdd(o).fromRed(),n.redSub(o).fromRed()]},c.prototype._getEndoBasis=function(e){for(var t,r,n,o,a,s,c,l,u,d=this.n.ushrn(Math.floor(this.n.bitLength()/2)),h=e,f=this.n.clone(),p=new i(1),m=new i(0),g=new i(0),v=new i(1),y=0;0!==h.cmpn(0);){var b=f.div(h);l=f.sub(b.mul(h)),u=g.sub(b.mul(p));var w=v.sub(b.mul(m));if(!n&&l.cmp(d)<0)t=c.neg(),r=p,n=l.neg(),o=u;else if(n&&2===++y)break;c=l,f=h,h=l,g=p,p=u,v=m,m=w}a=l.neg(),s=u;var x=n.sqr().add(o.sqr());return a.sqr().add(s.sqr()).cmp(x)>=0&&(a=t,s=r),n.negative&&(n=n.neg(),o=o.neg()),a.negative&&(a=a.neg(),s=s.neg()),[{a:n,b:o},{a:a,b:s}]},c.prototype._endoSplit=function(e){var t=this.endo.basis,r=t[0],n=t[1],i=n.b.mul(e).divRound(this.n),o=r.b.neg().mul(e).divRound(this.n),a=i.mul(r.a),s=o.mul(n.a),c=i.mul(r.b),l=o.mul(n.b);return{k1:e.sub(a).sub(s),k2:c.add(l).neg()}},c.prototype.pointFromX=function(e,t){(e=new i(e,16)).red||(e=e.toRed(this.red));var r=e.redSqr().redMul(e).redIAdd(e.redMul(this.a)).redIAdd(this.b),n=r.redSqrt();if(0!==n.redSqr().redSub(r).cmp(this.zero))throw new Error("invalid point");var o=n.fromRed().isOdd();return(t&&!o||!t&&o)&&(n=n.redNeg()),this.point(e,n)},c.prototype.validate=function(e){if(e.inf)return!0;var t=e.x,r=e.y,n=this.a.redMul(t),i=t.redSqr().redMul(t).redIAdd(n).redIAdd(this.b);return 0===r.redSqr().redISub(i).cmpn(0)},c.prototype._endoWnafMulAdd=function(e,t,r){for(var n=this._endoWnafT1,i=this._endoWnafT2,o=0;o":""},l.prototype.isInfinity=function(){return this.inf},l.prototype.add=function(e){if(this.inf)return e;if(e.inf)return this;if(this.eq(e))return this.dbl();if(this.neg().eq(e))return this.curve.point(null,null);if(0===this.x.cmp(e.x))return this.curve.point(null,null);var t=this.y.redSub(e.y);0!==t.cmpn(0)&&(t=t.redMul(this.x.redSub(e.x).redInvm()));var r=t.redSqr().redISub(this.x).redISub(e.x),n=t.redMul(this.x.redSub(r)).redISub(this.y);return this.curve.point(r,n)},l.prototype.dbl=function(){if(this.inf)return this;var e=this.y.redAdd(this.y);if(0===e.cmpn(0))return this.curve.point(null,null);var t=this.curve.a,r=this.x.redSqr(),n=e.redInvm(),i=r.redAdd(r).redIAdd(r).redIAdd(t).redMul(n),o=i.redSqr().redISub(this.x.redAdd(this.x)),a=i.redMul(this.x.redSub(o)).redISub(this.y);return this.curve.point(o,a)},l.prototype.getX=function(){return this.x.fromRed()},l.prototype.getY=function(){return this.y.fromRed()},l.prototype.mul=function(e){return e=new i(e,16),this.isInfinity()?this:this._hasDoubles(e)?this.curve._fixedNafMul(this,e):this.curve.endo?this.curve._endoWnafMulAdd([this],[e]):this.curve._wnafMul(this,e)},l.prototype.mulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i):this.curve._wnafMulAdd(1,n,i,2)},l.prototype.jmulAdd=function(e,t,r){var n=[this,t],i=[e,r];return this.curve.endo?this.curve._endoWnafMulAdd(n,i,!0):this.curve._wnafMulAdd(1,n,i,2,!0)},l.prototype.eq=function(e){return this===e||this.inf===e.inf&&(this.inf||0===this.x.cmp(e.x)&&0===this.y.cmp(e.y))},l.prototype.neg=function(e){if(this.inf)return this;var t=this.curve.point(this.x,this.y.redNeg());if(e&&this.precomputed){var r=this.precomputed,n=function(e){return e.neg()};t.precomputed={naf:r.naf&&{wnd:r.naf.wnd,points:r.naf.points.map(n)},doubles:r.doubles&&{step:r.doubles.step,points:r.doubles.points.map(n)}}}return t},l.prototype.toJ=function(){return this.inf?this.curve.jpoint(null,null,null):this.curve.jpoint(this.x,this.y,this.curve.one)},o(u,a.BasePoint),c.prototype.jpoint=function(e,t,r){return new u(this,e,t,r)},u.prototype.toP=function(){if(this.isInfinity())return this.curve.point(null,null);var e=this.z.redInvm(),t=e.redSqr(),r=this.x.redMul(t),n=this.y.redMul(t).redMul(e);return this.curve.point(r,n)},u.prototype.neg=function(){return this.curve.jpoint(this.x,this.y.redNeg(),this.z)},u.prototype.add=function(e){if(this.isInfinity())return e;if(e.isInfinity())return this;var t=e.z.redSqr(),r=this.z.redSqr(),n=this.x.redMul(t),i=e.x.redMul(r),o=this.y.redMul(t.redMul(e.z)),a=e.y.redMul(r.redMul(this.z)),s=n.redSub(i),c=o.redSub(a);if(0===s.cmpn(0))return 0!==c.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var l=s.redSqr(),u=l.redMul(s),d=n.redMul(l),h=c.redSqr().redIAdd(u).redISub(d).redISub(d),f=c.redMul(d.redISub(h)).redISub(o.redMul(u)),p=this.z.redMul(e.z).redMul(s);return this.curve.jpoint(h,f,p)},u.prototype.mixedAdd=function(e){if(this.isInfinity())return e.toJ();if(e.isInfinity())return this;var t=this.z.redSqr(),r=this.x,n=e.x.redMul(t),i=this.y,o=e.y.redMul(t).redMul(this.z),a=r.redSub(n),s=i.redSub(o);if(0===a.cmpn(0))return 0!==s.cmpn(0)?this.curve.jpoint(null,null,null):this.dbl();var c=a.redSqr(),l=c.redMul(a),u=r.redMul(c),d=s.redSqr().redIAdd(l).redISub(u).redISub(u),h=s.redMul(u.redISub(d)).redISub(i.redMul(l)),f=this.z.redMul(a);return this.curve.jpoint(d,h,f)},u.prototype.dblp=function(e){if(0===e)return this;if(this.isInfinity())return this;if(!e)return this.dbl();var t;if(this.curve.zeroA||this.curve.threeA){var r=this;for(t=0;t=0)return!1;if(r.redIAdd(i),0===this.x.cmp(r))return!0}},u.prototype.inspect=function(){return this.isInfinity()?"":""},u.prototype.isInfinity=function(){return 0===this.z.cmpn(0)}},4011:(e,t,r)=>{"use strict";var n,i=t,o=r(7992),a=r(9057),s=r(5649).assert;function c(e){"short"===e.type?this.curve=new a.short(e):"edwards"===e.type?this.curve=new a.edwards(e):this.curve=new a.mont(e),this.g=this.curve.g,this.n=this.curve.n,this.hash=e.hash,s(this.g.validate(),"Invalid curve"),s(this.g.mul(this.n).isInfinity(),"Invalid curve, G*N != O")}function l(e,t){Object.defineProperty(i,e,{configurable:!0,enumerable:!0,get:function(){var r=new c(t);return Object.defineProperty(i,e,{configurable:!0,enumerable:!0,value:r}),r}})}i.PresetCurve=c,l("p192",{type:"short",prime:"p192",p:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff",a:"ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc",b:"64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1",n:"ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831",hash:o.sha256,gRed:!1,g:["188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012","07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811"]}),l("p224",{type:"short",prime:"p224",p:"ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001",a:"ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe",b:"b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4",n:"ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d",hash:o.sha256,gRed:!1,g:["b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21","bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34"]}),l("p256",{type:"short",prime:null,p:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff",a:"ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc",b:"5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b",n:"ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551",hash:o.sha256,gRed:!1,g:["6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296","4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5"]}),l("p384",{type:"short",prime:null,p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 ffffffff",a:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe ffffffff 00000000 00000000 fffffffc",b:"b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f 5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef",n:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 f4372ddf 581a0db2 48b0a77a ecec196a ccc52973",hash:o.sha384,gRed:!1,g:["aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 5502f25d bf55296c 3a545e38 72760ab7","3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 0a60b1ce 1d7e819d 7a431d7c 90ea0e5f"]}),l("p521",{type:"short",prime:null,p:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff",a:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffc",b:"00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b 99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd 3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00",n:"000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409",hash:o.sha512,gRed:!1,g:["000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66","00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 3fad0761 353c7086 a272c240 88be9476 9fd16650"]}),l("curve25519",{type:"mont",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"76d06",b:"1",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["9"]}),l("ed25519",{type:"edwards",prime:"p25519",p:"7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed",a:"-1",c:"1",d:"52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3",n:"1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed",hash:o.sha256,gRed:!1,g:["216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a","6666666666666666666666666666666666666666666666666666666666666658"]});try{n=r(240)}catch(u){n=void 0}l("secp256k1",{type:"short",prime:"k256",p:"ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f",a:"0",b:"7",n:"ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141",h:"1",hash:o.sha256,beta:"7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee",lambda:"5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72",basis:[{a:"3086d221a7d46bcde86c90e49284eb15",b:"-e4437ed6010e88286f547fa90abfe4c3"},{a:"114ca50f7a8e2f3f657c1108d9d44cfd8",b:"3086d221a7d46bcde86c90e49284eb15"}],gRed:!1,g:["79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798","483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8",n]})},8563:(e,t,r)=>{"use strict";var n=r(292),i=r(8375),o=r(5649),a=r(4011),s=r(5094),c=o.assert,l=r(5755),u=r(1543);function d(e){if(!(this instanceof d))return new d(e);"string"===typeof e&&(c(Object.prototype.hasOwnProperty.call(a,e),"Unknown curve "+e),e=a[e]),e instanceof a.PresetCurve&&(e={curve:e}),this.curve=e.curve.curve,this.n=this.curve.n,this.nh=this.n.ushrn(1),this.g=this.curve.g,this.g=e.curve.g,this.g.precompute(e.curve.n.bitLength()+1),this.hash=e.hash||e.curve.hash}e.exports=d,d.prototype.keyPair=function(e){return new l(this,e)},d.prototype.keyFromPrivate=function(e,t){return l.fromPrivate(this,e,t)},d.prototype.keyFromPublic=function(e,t){return l.fromPublic(this,e,t)},d.prototype.genKeyPair=function(e){e||(e={});for(var t=new i({hash:this.hash,pers:e.pers,persEnc:e.persEnc||"utf8",entropy:e.entropy||s(this.hash.hmacStrength),entropyEnc:e.entropy&&e.entropyEnc||"utf8",nonce:this.n.toArray()}),r=this.n.byteLength(),o=this.n.sub(new n(2));;){var a=new n(t.generate(r));if(!(a.cmp(o)>0))return a.iaddn(1),this.keyFromPrivate(a)}},d.prototype._truncateToN=function(e,t){var r=8*e.byteLength()-this.n.bitLength();return r>0&&(e=e.ushrn(r)),!t&&e.cmp(this.n)>=0?e.sub(this.n):e},d.prototype.sign=function(e,t,r,o){"object"===typeof r&&(o=r,r=null),o||(o={}),t=this.keyFromPrivate(t,r),e=this._truncateToN(new n(e,16));for(var a=this.n.byteLength(),s=t.getPrivate().toArray("be",a),c=e.toArray("be",a),l=new i({hash:this.hash,entropy:s,nonce:c,pers:o.pers,persEnc:o.persEnc||"utf8"}),d=this.n.sub(new n(1)),h=0;;h++){var f=o.k?o.k(h):new n(l.generate(this.n.byteLength()));if(!((f=this._truncateToN(f,!0)).cmpn(1)<=0||f.cmp(d)>=0)){var p=this.g.mul(f);if(!p.isInfinity()){var m=p.getX(),g=m.umod(this.n);if(0!==g.cmpn(0)){var v=f.invm(this.n).mul(g.mul(t.getPrivate()).iadd(e));if(0!==(v=v.umod(this.n)).cmpn(0)){var y=(p.getY().isOdd()?1:0)|(0!==m.cmp(g)?2:0);return o.canonical&&v.cmp(this.nh)>0&&(v=this.n.sub(v),y^=1),new u({r:g,s:v,recoveryParam:y})}}}}}},d.prototype.verify=function(e,t,r,i){e=this._truncateToN(new n(e,16)),r=this.keyFromPublic(r,i);var o=(t=new u(t,"hex")).r,a=t.s;if(o.cmpn(1)<0||o.cmp(this.n)>=0)return!1;if(a.cmpn(1)<0||a.cmp(this.n)>=0)return!1;var s,c=a.invm(this.n),l=c.mul(e).umod(this.n),d=c.mul(o).umod(this.n);return this.curve._maxwellTrick?!(s=this.g.jmulAdd(l,r.getPublic(),d)).isInfinity()&&s.eqXToP(o):!(s=this.g.mulAdd(l,r.getPublic(),d)).isInfinity()&&0===s.getX().umod(this.n).cmp(o)},d.prototype.recoverPubKey=function(e,t,r,i){c((3&r)===r,"The recovery param is more than two bits"),t=new u(t,i);var o=this.n,a=new n(e),s=t.r,l=t.s,d=1&r,h=r>>1;if(s.cmp(this.curve.p.umod(this.curve.n))>=0&&h)throw new Error("Unable to find sencond key candinate");s=h?this.curve.pointFromX(s.add(this.curve.n),d):this.curve.pointFromX(s,d);var f=t.r.invm(o),p=o.sub(a).mul(f).umod(o),m=l.mul(f).umod(o);return this.g.mulAdd(p,s,m)},d.prototype.getKeyRecoveryParam=function(e,t,r,n){if(null!==(t=new u(t,n)).recoveryParam)return t.recoveryParam;for(var i=0;i<4;i++){var o;try{o=this.recoverPubKey(e,t,i)}catch(e){continue}if(o.eq(r))return i}throw new Error("Unable to find valid recovery factor")}},5755:(e,t,r)=>{"use strict";var n=r(292),i=r(5649).assert;function o(e,t){this.ec=e,this.priv=null,this.pub=null,t.priv&&this._importPrivate(t.priv,t.privEnc),t.pub&&this._importPublic(t.pub,t.pubEnc)}e.exports=o,o.fromPublic=function(e,t,r){return t instanceof o?t:new o(e,{pub:t,pubEnc:r})},o.fromPrivate=function(e,t,r){return t instanceof o?t:new o(e,{priv:t,privEnc:r})},o.prototype.validate=function(){var e=this.getPublic();return e.isInfinity()?{result:!1,reason:"Invalid public key"}:e.validate()?e.mul(this.ec.curve.n).isInfinity()?{result:!0,reason:null}:{result:!1,reason:"Public key * N != O"}:{result:!1,reason:"Public key is not a point"}},o.prototype.getPublic=function(e,t){return"string"===typeof e&&(t=e,e=null),this.pub||(this.pub=this.ec.g.mul(this.priv)),t?this.pub.encode(t,e):this.pub},o.prototype.getPrivate=function(e){return"hex"===e?this.priv.toString(16,2):this.priv},o.prototype._importPrivate=function(e,t){this.priv=new n(e,t||16),this.priv=this.priv.umod(this.ec.curve.n)},o.prototype._importPublic=function(e,t){if(e.x||e.y)return"mont"===this.ec.curve.type?i(e.x,"Need x coordinate"):"short"!==this.ec.curve.type&&"edwards"!==this.ec.curve.type||i(e.x&&e.y,"Need both x and y coordinate"),void(this.pub=this.ec.curve.point(e.x,e.y));this.pub=this.ec.curve.decodePoint(e,t)},o.prototype.derive=function(e){return e.validate()||i(e.validate(),"public point not validated"),e.mul(this.priv).getX()},o.prototype.sign=function(e,t,r){return this.ec.sign(e,this,t,r)},o.prototype.verify=function(e,t){return this.ec.verify(e,t,this)},o.prototype.inspect=function(){return""}},1543:(e,t,r)=>{"use strict";var n=r(292),i=r(5649),o=i.assert;function a(e,t){if(e instanceof a)return e;this._importDER(e,t)||(o(e.r&&e.s,"Signature without r or s"),this.r=new n(e.r,16),this.s=new n(e.s,16),void 0===e.recoveryParam?this.recoveryParam=null:this.recoveryParam=e.recoveryParam)}function s(){this.place=0}function c(e,t){var r=e[t.place++];if(!(128&r))return r;var n=15&r;if(0===n||n>4)return!1;for(var i=0,o=0,a=t.place;o>>=0;return!(i<=127)&&(t.place=a,i)}function l(e){for(var t=0,r=e.length-1;!e[t]&&!(128&e[t+1])&&t>>3);for(e.push(128|r);--r;)e.push(t>>>(r<<3)&255);e.push(t)}}e.exports=a,a.prototype._importDER=function(e,t){e=i.toArray(e,t);var r=new s;if(48!==e[r.place++])return!1;var o=c(e,r);if(!1===o)return!1;if(o+r.place!==e.length)return!1;if(2!==e[r.place++])return!1;var a=c(e,r);if(!1===a)return!1;var l=e.slice(r.place,a+r.place);if(r.place+=a,2!==e[r.place++])return!1;var u=c(e,r);if(!1===u)return!1;if(e.length!==u+r.place)return!1;var d=e.slice(r.place,u+r.place);if(0===l[0]){if(!(128&l[1]))return!1;l=l.slice(1)}if(0===d[0]){if(!(128&d[1]))return!1;d=d.slice(1)}return this.r=new n(l),this.s=new n(d),this.recoveryParam=null,!0},a.prototype.toDER=function(e){var t=this.r.toArray(),r=this.s.toArray();for(128&t[0]&&(t=[0].concat(t)),128&r[0]&&(r=[0].concat(r)),t=l(t),r=l(r);!r[0]&&!(128&r[1]);)r=r.slice(1);var n=[2];u(n,t.length),(n=n.concat(t)).push(2),u(n,r.length);var o=n.concat(r),a=[48];return u(a,o.length),a=a.concat(o),i.encode(a,e)}},5494:(e,t,r)=>{"use strict";var n=r(7992),i=r(4011),o=r(5649),a=o.assert,s=o.parseBytes,c=r(2260),l=r(4311);function u(e){if(a("ed25519"===e,"only tested with ed25519 so far"),!(this instanceof u))return new u(e);e=i[e].curve,this.curve=e,this.g=e.g,this.g.precompute(e.n.bitLength()+1),this.pointClass=e.point().constructor,this.encodingLength=Math.ceil(e.n.bitLength()/8),this.hash=n.sha512}e.exports=u,u.prototype.sign=function(e,t){e=s(e);var r=this.keyFromSecret(t),n=this.hashInt(r.messagePrefix(),e),i=this.g.mul(n),o=this.encodePoint(i),a=this.hashInt(o,r.pubBytes(),e).mul(r.priv()),c=n.add(a).umod(this.curve.n);return this.makeSignature({R:i,S:c,Rencoded:o})},u.prototype.verify=function(e,t,r){e=s(e),t=this.makeSignature(t);var n=this.keyFromPublic(r),i=this.hashInt(t.Rencoded(),n.pubBytes(),e),o=this.g.mul(t.S());return t.R().add(n.pub().mul(i)).eq(o)},u.prototype.hashInt=function(){for(var e=this.hash(),t=0;t{"use strict";var n=r(5649),i=n.assert,o=n.parseBytes,a=n.cachedProperty;function s(e,t){this.eddsa=e,this._secret=o(t.secret),e.isPoint(t.pub)?this._pub=t.pub:this._pubBytes=o(t.pub)}s.fromPublic=function(e,t){return t instanceof s?t:new s(e,{pub:t})},s.fromSecret=function(e,t){return t instanceof s?t:new s(e,{secret:t})},s.prototype.secret=function(){return this._secret},a(s,"pubBytes",(function(){return this.eddsa.encodePoint(this.pub())})),a(s,"pub",(function(){return this._pubBytes?this.eddsa.decodePoint(this._pubBytes):this.eddsa.g.mul(this.priv())})),a(s,"privBytes",(function(){var e=this.eddsa,t=this.hash(),r=e.encodingLength-1,n=t.slice(0,e.encodingLength);return n[0]&=248,n[r]&=127,n[r]|=64,n})),a(s,"priv",(function(){return this.eddsa.decodeInt(this.privBytes())})),a(s,"hash",(function(){return this.eddsa.hash().update(this.secret()).digest()})),a(s,"messagePrefix",(function(){return this.hash().slice(this.eddsa.encodingLength)})),s.prototype.sign=function(e){return i(this._secret,"KeyPair can only verify"),this.eddsa.sign(e,this)},s.prototype.verify=function(e,t){return this.eddsa.verify(e,t,this)},s.prototype.getSecret=function(e){return i(this._secret,"KeyPair is public only"),n.encode(this.secret(),e)},s.prototype.getPublic=function(e){return n.encode(this.pubBytes(),e)},e.exports=s},4311:(e,t,r)=>{"use strict";var n=r(292),i=r(5649),o=i.assert,a=i.cachedProperty,s=i.parseBytes;function c(e,t){this.eddsa=e,"object"!==typeof t&&(t=s(t)),Array.isArray(t)&&(t={R:t.slice(0,e.encodingLength),S:t.slice(e.encodingLength)}),o(t.R&&t.S,"Signature without R or S"),e.isPoint(t.R)&&(this._R=t.R),t.S instanceof n&&(this._S=t.S),this._Rencoded=Array.isArray(t.R)?t.R:t.Rencoded,this._Sencoded=Array.isArray(t.S)?t.S:t.Sencoded}a(c,"S",(function(){return this.eddsa.decodeInt(this.Sencoded())})),a(c,"R",(function(){return this.eddsa.decodePoint(this.Rencoded())})),a(c,"Rencoded",(function(){return this.eddsa.encodePoint(this.R())})),a(c,"Sencoded",(function(){return this.eddsa.encodeInt(this.S())})),c.prototype.toBytes=function(){return this.Rencoded().concat(this.Sencoded())},c.prototype.toHex=function(){return i.encode(this.toBytes(),"hex").toUpperCase()},e.exports=c},240:e=>{e.exports={doubles:{step:4,points:[["e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a","f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821"],["8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508","11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf"],["175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739","d3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695"],["363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640","4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9"],["8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c","4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36"],["723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda","96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f"],["eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa","5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999"],["100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0","cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09"],["e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d","9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d"],["feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d","e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088"],["da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1","9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d"],["53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0","5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8"],["8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047","10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a"],["385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862","283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453"],["6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7","7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160"],["3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd","56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0"],["85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83","7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6"],["948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a","53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589"],["6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8","bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17"],["e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d","4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda"],["e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725","7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd"],["213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754","4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2"],["4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c","17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6"],["fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6","6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f"],["76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39","c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01"],["c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891","893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3"],["d895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b","febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f"],["b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03","2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7"],["e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d","eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78"],["a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070","7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1"],["90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4","e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150"],["8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da","662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82"],["e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11","1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc"],["8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e","efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b"],["e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41","2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51"],["b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef","67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45"],["d68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8","db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120"],["324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d","648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84"],["4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96","35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d"],["9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd","ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d"],["6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5","9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8"],["a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266","40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8"],["7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71","34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac"],["928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac","c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f"],["85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751","1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962"],["ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e","493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907"],["827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241","c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec"],["eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3","be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d"],["e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f","4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414"],["1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19","aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd"],["146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be","b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0"],["fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9","6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811"],["da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2","8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1"],["a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13","7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c"],["174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c","ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73"],["959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba","2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd"],["d2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151","e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405"],["64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073","d99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589"],["8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458","38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e"],["13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b","69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27"],["bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366","d3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1"],["8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa","40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482"],["8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0","620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945"],["dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787","7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573"],["f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e","ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82"]]},naf:{wnd:7,points:[["f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9","388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672"],["2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4","d8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6"],["5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc","6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da"],["acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe","cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37"],["774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb","d984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b"],["f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8","ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81"],["d7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e","581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58"],["defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34","4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77"],["2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c","85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a"],["352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5","321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c"],["2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f","2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67"],["9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714","73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402"],["daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729","a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55"],["c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db","2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482"],["6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4","e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82"],["1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5","b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396"],["605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479","2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49"],["62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d","80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf"],["80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f","1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a"],["7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb","d0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7"],["d528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9","eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933"],["49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963","758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a"],["77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74","958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6"],["f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530","e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37"],["463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b","5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e"],["f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247","cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6"],["caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1","cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476"],["2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120","4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40"],["7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435","91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61"],["754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18","673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683"],["e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8","59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5"],["186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb","3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b"],["df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f","55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417"],["5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143","efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868"],["290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba","e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a"],["af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45","f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6"],["766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a","744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996"],["59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e","c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e"],["f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8","e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d"],["7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c","30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2"],["948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519","e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e"],["7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab","100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437"],["3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca","ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311"],["d3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf","8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4"],["1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610","68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575"],["733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4","f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d"],["15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c","d56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d"],["a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940","edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629"],["e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980","a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06"],["311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3","66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374"],["34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf","9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee"],["f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63","4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1"],["d7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448","fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b"],["32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf","5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661"],["7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5","8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6"],["ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6","8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e"],["16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5","5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d"],["eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99","f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc"],["78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51","f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4"],["494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5","42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c"],["a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5","204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b"],["c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997","4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913"],["841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881","73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154"],["5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5","39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865"],["36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66","d2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc"],["336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726","ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224"],["8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede","6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e"],["1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94","60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6"],["85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31","3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511"],["29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51","b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b"],["a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252","ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2"],["4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5","cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c"],["d24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b","6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3"],["ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4","322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d"],["af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f","6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700"],["e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889","2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4"],["591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246","b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196"],["11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984","998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4"],["3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a","b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257"],["cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030","bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13"],["c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197","6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096"],["c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593","c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38"],["a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef","21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f"],["347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38","60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448"],["da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a","49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a"],["c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111","5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4"],["4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502","7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437"],["3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea","be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7"],["cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26","8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d"],["b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986","39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a"],["d4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e","62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54"],["48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4","25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77"],["dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda","ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517"],["6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859","cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10"],["e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f","f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125"],["eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c","6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e"],["13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942","fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1"],["ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a","1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2"],["b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80","5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423"],["ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d","438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8"],["8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1","cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758"],["52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63","c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375"],["e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352","6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d"],["7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193","ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec"],["5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00","9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0"],["32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58","ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c"],["e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7","d3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4"],["8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8","c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f"],["4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e","67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649"],["3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d","cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826"],["674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b","299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5"],["d32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f","f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87"],["30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6","462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b"],["be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297","62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc"],["93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a","7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c"],["b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c","ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f"],["d5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52","4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a"],["d3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb","bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46"],["463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065","bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f"],["7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917","603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03"],["74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9","cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08"],["30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3","553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8"],["9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57","712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373"],["176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66","ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3"],["75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8","9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8"],["809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721","9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1"],["1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180","4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9"]]}}},5649:(e,t,r)=>{"use strict";var n=t,i=r(292),o=r(490),a=r(5659);n.assert=o,n.toArray=a.toArray,n.zero2=a.zero2,n.toHex=a.toHex,n.encode=a.encode,n.getNAF=function(e,t,r){var n=new Array(Math.max(e.bitLength(),r)+1);n.fill(0);for(var i=1<(i>>1)-1?(i>>1)-c:c,o.isubn(s)):s=0,n[a]=s,o.iushrn(1)}return n},n.getJSF=function(e,t){var r=[[],[]];e=e.clone(),t=t.clone();for(var n,i=0,o=0;e.cmpn(-i)>0||t.cmpn(-o)>0;){var a,s,c=e.andln(3)+i&3,l=t.andln(3)+o&3;3===c&&(c=-1),3===l&&(l=-1),a=0===(1&c)?0:3!==(n=e.andln(7)+i&7)&&5!==n||2!==l?c:-c,r[0].push(a),s=0===(1&l)?0:3!==(n=t.andln(7)+o&7)&&5!==n||2!==c?l:-l,r[1].push(s),2*i===a+1&&(i=1-i),2*o===s+1&&(o=1-o),e.iushrn(1),t.iushrn(1)}return r},n.cachedProperty=function(e,t,r){var n="_"+t;e.prototype[t]=function(){return void 0!==this[n]?this[n]:this[n]=r.call(this)}},n.parseBytes=function(e){return"string"===typeof e?n.toArray(e,"hex"):e},n.intFromLE=function(e){return new i(e,"hex","le")}},7581:e=>{"use strict";function t(e,t){for(const r in t)Object.defineProperty(e,r,{value:t[r],enumerable:!0,configurable:!0});return e}e.exports=function(e,r,n){if(!e||"string"===typeof e)throw new TypeError("Please pass an Error to err-code");n||(n={}),"object"===typeof r&&(n=r,r=void 0),null!=r&&(n.code=r);try{return t(e,n)}catch(i){n.message=e.message,n.stack=e.stack;const r=function(){};return r.prototype=Object.create(Object.getPrototypeOf(e)),t(new r,n)}}},1042:(e,t,r)=>{"use strict";t.wn=void 0;const n=r(3974),i=r(1186);(0,i.wrapHash)(n.keccak_224),t.wn=(()=>{const e=(0,i.wrapHash)(n.keccak_256);return e.create=n.keccak_256.create,e})(),(0,i.wrapHash)(n.keccak_384),(0,i.wrapHash)(n.keccak_512)},1186:function(e,t,r){"use strict";e=r.nmd(e);var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.crypto=t.wrapHash=t.equalsBytes=t.hexToBytes=t.bytesToUtf8=t.utf8ToBytes=t.createView=t.concatBytes=t.toHex=t.bytesToHex=t.assertBytes=t.assertBool=void 0;const i=n(r(4103)),o=r(9041),a=i.default.bool;t.assertBool=a;const s=i.default.bytes;t.assertBytes=s;var c=r(9041);Object.defineProperty(t,"bytesToHex",{enumerable:!0,get:function(){return c.bytesToHex}}),Object.defineProperty(t,"toHex",{enumerable:!0,get:function(){return c.bytesToHex}}),Object.defineProperty(t,"concatBytes",{enumerable:!0,get:function(){return c.concatBytes}}),Object.defineProperty(t,"createView",{enumerable:!0,get:function(){return c.createView}}),Object.defineProperty(t,"utf8ToBytes",{enumerable:!0,get:function(){return c.utf8ToBytes}}),t.bytesToUtf8=function(e){if(!(e instanceof Uint8Array))throw new TypeError("bytesToUtf8 expected Uint8Array, got "+typeof e);return(new TextDecoder).decode(e)},t.hexToBytes=function(e){const t=e.startsWith("0x")?e.substring(2):e;return(0,o.hexToBytes)(t)},t.equalsBytes=function(e,t){if(e.length!==t.length)return!1;for(let r=0;r(i.default.bytes(t),e(t))},t.crypto=(()=>{const t="object"===typeof self&&"crypto"in self?self.crypto:void 0,r="function"===typeof e.require&&e.require.bind(e);return{node:r&&!t?r("crypto"):void 0,web:t}})()},4062:e=>{"use strict";var t,r="object"===typeof Reflect?Reflect:null,n=r&&"function"===typeof r.apply?r.apply:function(e,t,r){return Function.prototype.apply.call(e,t,r)};t=r&&"function"===typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var i=Number.isNaN||function(e){return e!==e};function o(){o.init.call(this)}e.exports=o,e.exports.once=function(e,t){return new Promise((function(r,n){function i(r){e.removeListener(t,o),n(r)}function o(){"function"===typeof e.removeListener&&e.removeListener("error",i),r([].slice.call(arguments))}m(e,t,o,{once:!0}),"error"!==t&&function(e,t,r){"function"===typeof e.on&&m(e,"error",t,r)}(e,i,{once:!0})}))},o.EventEmitter=o,o.prototype._events=void 0,o.prototype._eventsCount=0,o.prototype._maxListeners=void 0;var a=10;function s(e){if("function"!==typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function c(e){return void 0===e._maxListeners?o.defaultMaxListeners:e._maxListeners}function l(e,t,r,n){var i,o,a,l;if(s(r),void 0===(o=e._events)?(o=e._events=Object.create(null),e._eventsCount=0):(void 0!==o.newListener&&(e.emit("newListener",t,r.listener?r.listener:r),o=e._events),a=o[t]),void 0===a)a=o[t]=r,++e._eventsCount;else if("function"===typeof a?a=o[t]=n?[r,a]:[a,r]:n?a.unshift(r):a.push(r),(i=c(e))>0&&a.length>i&&!a.warned){a.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=e,u.type=t,u.count=a.length,l=u,console&&console.warn&&console.warn(l)}return e}function u(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=u.bind(n);return i.listener=r,n.wrapFn=i,i}function h(e,t,r){var n=e._events;if(void 0===n)return[];var i=n[t];return void 0===i?[]:"function"===typeof i?r?[i.listener||i]:[i]:r?function(e){for(var t=new Array(e.length),r=0;r0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var c=o[e];if(void 0===c)return!1;if("function"===typeof c)n(c,this,t);else{var l=c.length,u=p(c,l);for(r=0;r=0;o--)if(r[o]===t||r[o].listener===t){a=r[o].listener,i=o;break}if(i<0)return this;0===i?r.shift():function(e,t){for(;t+1=0;n--)this.removeListener(e,t[n]);return this},o.prototype.listeners=function(e){return h(this,e,!0)},o.prototype.rawListeners=function(e){return h(this,e,!1)},o.listenerCount=function(e,t){return"function"===typeof e.listenerCount?e.listenerCount(t):f.call(e,t)},o.prototype.listenerCount=f,o.prototype.eventNames=function(){return this._eventsCount>0?t(this._events):[]}},2259:e=>{"use strict";e.exports=function(e,t){t||(t={}),"function"===typeof t&&(t={cmp:t});var r,n="boolean"===typeof t.cycles&&t.cycles,i=t.cmp&&(r=t.cmp,function(e){return function(t,n){var i={key:t,value:e[t]},o={key:n,value:e[n]};return r(i,o)}}),o=[];return function e(t){if(t&&t.toJSON&&"function"===typeof t.toJSON&&(t=t.toJSON()),void 0!==t){if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!==typeof t)return JSON.stringify(t);var r,a;if(Array.isArray(t)){for(a="[",r=0;r{"use strict";var n=r(6293).Buffer,i=r(3859).Transform;function o(e){i.call(this),this._block=n.allocUnsafe(e),this._blockSize=e,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}r(637)(o,i),o.prototype._transform=function(e,t,r){var n=null;try{this.update(e,t)}catch(i){n=i}r(n)},o.prototype._flush=function(e){var t=null;try{this.push(this.digest())}catch(r){t=r}e(t)},o.prototype.update=function(e,t){if(function(e,t){if(!n.isBuffer(e)&&"string"!==typeof e)throw new TypeError(t+" must be a string or a buffer")}(e,"Data"),this._finalized)throw new Error("Digest already called");n.isBuffer(e)||(e=n.from(e,t));for(var r=this._block,i=0;this._blockOffset+e.length-i>=this._blockSize;){for(var o=this._blockOffset;o0;++a)this._length[a]+=s,(s=this._length[a]/4294967296|0)>0&&(this._length[a]-=4294967296*s);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(e){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var t=this._digest();void 0!==e&&(t=t.toString(e)),this._block.fill(0),this._blockOffset=0;for(var r=0;r<4;++r)this._length[r]=0;return t},o.prototype._digest=function(){throw new Error("_digest is not implemented")},e.exports=o},7992:(e,t,r)=>{var n=t;n.utils=r(7841),n.common=r(2012),n.sha=r(7885),n.ripemd=r(56),n.hmac=r(57),n.sha1=n.sha.sha1,n.sha256=n.sha.sha256,n.sha224=n.sha.sha224,n.sha384=n.sha.sha384,n.sha512=n.sha.sha512,n.ripemd160=n.ripemd.ripemd160},2012:(e,t,r)=>{"use strict";var n=r(7841),i=r(490);function o(){this.pending=null,this.pendingTotal=0,this.blockSize=this.constructor.blockSize,this.outSize=this.constructor.outSize,this.hmacStrength=this.constructor.hmacStrength,this.padLength=this.constructor.padLength/8,this.endian="big",this._delta8=this.blockSize/8,this._delta32=this.blockSize/32}t.BlockHash=o,o.prototype.update=function(e,t){if(e=n.toArray(e,t),this.pending?this.pending=this.pending.concat(e):this.pending=e,this.pendingTotal+=e.length,this.pending.length>=this._delta8){var r=(e=this.pending).length%this._delta8;this.pending=e.slice(e.length-r,e.length),0===this.pending.length&&(this.pending=null),e=n.join32(e,0,e.length-r,this.endian);for(var i=0;i>>24&255,n[i++]=e>>>16&255,n[i++]=e>>>8&255,n[i++]=255&e}else for(n[i++]=255&e,n[i++]=e>>>8&255,n[i++]=e>>>16&255,n[i++]=e>>>24&255,n[i++]=0,n[i++]=0,n[i++]=0,n[i++]=0,o=8;o{"use strict";var n=r(7841),i=r(490);function o(e,t,r){if(!(this instanceof o))return new o(e,t,r);this.Hash=e,this.blockSize=e.blockSize/8,this.outSize=e.outSize/8,this.inner=null,this.outer=null,this._init(n.toArray(t,r))}e.exports=o,o.prototype._init=function(e){e.length>this.blockSize&&(e=(new this.Hash).update(e).digest()),i(e.length<=this.blockSize);for(var t=e.length;t{"use strict";var n=r(7841),i=r(2012),o=n.rotl32,a=n.sum32,s=n.sum32_3,c=n.sum32_4,l=i.BlockHash;function u(){if(!(this instanceof u))return new u;l.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.endian="little"}function d(e,t,r,n){return e<=15?t^r^n:e<=31?t&r|~t&n:e<=47?(t|~r)^n:e<=63?t&n|r&~n:t^(r|~n)}function h(e){return e<=15?0:e<=31?1518500249:e<=47?1859775393:e<=63?2400959708:2840853838}function f(e){return e<=15?1352829926:e<=31?1548603684:e<=47?1836072691:e<=63?2053994217:0}n.inherits(u,l),t.ripemd160=u,u.blockSize=512,u.outSize=160,u.hmacStrength=192,u.padLength=64,u.prototype._update=function(e,t){for(var r=this.h[0],n=this.h[1],i=this.h[2],l=this.h[3],u=this.h[4],y=r,b=n,w=i,x=l,_=u,S=0;S<80;S++){var k=a(o(c(r,d(S,n,i,l),e[p[S]+t],h(S)),g[S]),u);r=u,u=l,l=o(i,10),i=n,n=k,k=a(o(c(y,d(79-S,b,w,x),e[m[S]+t],f(S)),v[S]),_),y=_,_=x,x=o(w,10),w=b,b=k}k=s(this.h[1],i,x),this.h[1]=s(this.h[2],l,_),this.h[2]=s(this.h[3],u,y),this.h[3]=s(this.h[4],r,b),this.h[4]=s(this.h[0],n,w),this.h[0]=k},u.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h,"little"):n.split32(this.h,"little")};var p=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],m=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],g=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],v=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]},7885:(e,t,r)=>{"use strict";t.sha1=r(9046),t.sha224=r(5962),t.sha256=r(7353),t.sha384=r(8151),t.sha512=r(6814)},9046:(e,t,r)=>{"use strict";var n=r(7841),i=r(2012),o=r(2015),a=n.rotl32,s=n.sum32,c=n.sum32_5,l=o.ft_1,u=i.BlockHash,d=[1518500249,1859775393,2400959708,3395469782];function h(){if(!(this instanceof h))return new h;u.call(this),this.h=[1732584193,4023233417,2562383102,271733878,3285377520],this.W=new Array(80)}n.inherits(h,u),e.exports=h,h.blockSize=512,h.outSize=160,h.hmacStrength=80,h.padLength=64,h.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(7841),i=r(7353);function o(){if(!(this instanceof o))return new o;i.call(this),this.h=[3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]}n.inherits(o,i),e.exports=o,o.blockSize=512,o.outSize=224,o.hmacStrength=192,o.padLength=64,o.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,7),"big"):n.split32(this.h.slice(0,7),"big")}},7353:(e,t,r)=>{"use strict";var n=r(7841),i=r(2012),o=r(2015),a=r(490),s=n.sum32,c=n.sum32_4,l=n.sum32_5,u=o.ch32,d=o.maj32,h=o.s0_256,f=o.s1_256,p=o.g0_256,m=o.g1_256,g=i.BlockHash,v=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function y(){if(!(this instanceof y))return new y;g.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=v,this.W=new Array(64)}n.inherits(y,g),e.exports=y,y.blockSize=512,y.outSize=256,y.hmacStrength=192,y.padLength=64,y.prototype._update=function(e,t){for(var r=this.W,n=0;n<16;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(7841),i=r(6814);function o(){if(!(this instanceof o))return new o;i.call(this),this.h=[3418070365,3238371032,1654270250,914150663,2438529370,812702999,355462360,4144912697,1731405415,4290775857,2394180231,1750603025,3675008525,1694076839,1203062813,3204075428]}n.inherits(o,i),e.exports=o,o.blockSize=1024,o.outSize=384,o.hmacStrength=192,o.padLength=128,o.prototype._digest=function(e){return"hex"===e?n.toHex32(this.h.slice(0,12),"big"):n.split32(this.h.slice(0,12),"big")}},6814:(e,t,r)=>{"use strict";var n=r(7841),i=r(2012),o=r(490),a=n.rotr64_hi,s=n.rotr64_lo,c=n.shr64_hi,l=n.shr64_lo,u=n.sum64,d=n.sum64_hi,h=n.sum64_lo,f=n.sum64_4_hi,p=n.sum64_4_lo,m=n.sum64_5_hi,g=n.sum64_5_lo,v=i.BlockHash,y=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591];function b(){if(!(this instanceof b))return new b;v.call(this),this.h=[1779033703,4089235720,3144134277,2227873595,1013904242,4271175723,2773480762,1595750129,1359893119,2917565137,2600822924,725511199,528734635,4215389547,1541459225,327033209],this.k=y,this.W=new Array(160)}function w(e,t,r,n,i){var o=e&r^~e&i;return o<0&&(o+=4294967296),o}function x(e,t,r,n,i,o){var a=t&n^~t&o;return a<0&&(a+=4294967296),a}function _(e,t,r,n,i){var o=e&r^e&i^r&i;return o<0&&(o+=4294967296),o}function S(e,t,r,n,i,o){var a=t&n^t&o^n&o;return a<0&&(a+=4294967296),a}function k(e,t){var r=a(e,t,28)^a(t,e,2)^a(t,e,7);return r<0&&(r+=4294967296),r}function E(e,t){var r=s(e,t,28)^s(t,e,2)^s(t,e,7);return r<0&&(r+=4294967296),r}function A(e,t){var r=a(e,t,14)^a(e,t,18)^a(t,e,9);return r<0&&(r+=4294967296),r}function P(e,t){var r=s(e,t,14)^s(e,t,18)^s(t,e,9);return r<0&&(r+=4294967296),r}function O(e,t){var r=a(e,t,1)^a(e,t,8)^c(e,t,7);return r<0&&(r+=4294967296),r}function T(e,t){var r=s(e,t,1)^s(e,t,8)^l(e,t,7);return r<0&&(r+=4294967296),r}function C(e,t){var r=a(e,t,19)^a(t,e,29)^c(e,t,6);return r<0&&(r+=4294967296),r}function j(e,t){var r=s(e,t,19)^s(t,e,29)^l(e,t,6);return r<0&&(r+=4294967296),r}n.inherits(b,v),e.exports=b,b.blockSize=1024,b.outSize=512,b.hmacStrength=192,b.padLength=128,b.prototype._prepareBlock=function(e,t){for(var r=this.W,n=0;n<32;n++)r[n]=e[t+n];for(;n{"use strict";var n=r(7841).rotr32;function i(e,t,r){return e&t^~e&r}function o(e,t,r){return e&t^e&r^t&r}function a(e,t,r){return e^t^r}t.ft_1=function(e,t,r,n){return 0===e?i(t,r,n):1===e||3===e?a(t,r,n):2===e?o(t,r,n):void 0},t.ch32=i,t.maj32=o,t.p32=a,t.s0_256=function(e){return n(e,2)^n(e,13)^n(e,22)},t.s1_256=function(e){return n(e,6)^n(e,11)^n(e,25)},t.g0_256=function(e){return n(e,7)^n(e,18)^e>>>3},t.g1_256=function(e){return n(e,17)^n(e,19)^e>>>10}},7841:(e,t,r)=>{"use strict";var n=r(490),i=r(637);function o(e,t){return 55296===(64512&e.charCodeAt(t))&&(!(t<0||t+1>=e.length)&&56320===(64512&e.charCodeAt(t+1)))}function a(e){return(e>>>24|e>>>8&65280|e<<8&16711680|(255&e)<<24)>>>0}function s(e){return 1===e.length?"0"+e:e}function c(e){return 7===e.length?"0"+e:6===e.length?"00"+e:5===e.length?"000"+e:4===e.length?"0000"+e:3===e.length?"00000"+e:2===e.length?"000000"+e:1===e.length?"0000000"+e:e}t.inherits=i,t.toArray=function(e,t){if(Array.isArray(e))return e.slice();if(!e)return[];var r=[];if("string"===typeof e)if(t){if("hex"===t)for((e=e.replace(/[^a-z0-9]+/gi,"")).length%2!==0&&(e="0"+e),i=0;i>6|192,r[n++]=63&a|128):o(e,i)?(a=65536+((1023&a)<<10)+(1023&e.charCodeAt(++i)),r[n++]=a>>18|240,r[n++]=a>>12&63|128,r[n++]=a>>6&63|128,r[n++]=63&a|128):(r[n++]=a>>12|224,r[n++]=a>>6&63|128,r[n++]=63&a|128)}else for(i=0;i>>0}return a},t.split32=function(e,t){for(var r=new Array(4*e.length),n=0,i=0;n>>24,r[i+1]=o>>>16&255,r[i+2]=o>>>8&255,r[i+3]=255&o):(r[i+3]=o>>>24,r[i+2]=o>>>16&255,r[i+1]=o>>>8&255,r[i]=255&o)}return r},t.rotr32=function(e,t){return e>>>t|e<<32-t},t.rotl32=function(e,t){return e<>>32-t},t.sum32=function(e,t){return e+t>>>0},t.sum32_3=function(e,t,r){return e+t+r>>>0},t.sum32_4=function(e,t,r,n){return e+t+r+n>>>0},t.sum32_5=function(e,t,r,n,i){return e+t+r+n+i>>>0},t.sum64=function(e,t,r,n){var i=e[t],o=n+e[t+1]>>>0,a=(o>>0,e[t+1]=o},t.sum64_hi=function(e,t,r,n){return(t+n>>>0>>0},t.sum64_lo=function(e,t,r,n){return t+n>>>0},t.sum64_4_hi=function(e,t,r,n,i,o,a,s){var c=0,l=t;return c+=(l=l+n>>>0)>>0)>>0)>>0},t.sum64_4_lo=function(e,t,r,n,i,o,a,s){return t+n+o+s>>>0},t.sum64_5_hi=function(e,t,r,n,i,o,a,s,c,l){var u=0,d=t;return u+=(d=d+n>>>0)>>0)>>0)>>0)>>0},t.sum64_5_lo=function(e,t,r,n,i,o,a,s,c,l){return t+n+o+s+l>>>0},t.rotr64_hi=function(e,t,r){return(t<<32-r|e>>>r)>>>0},t.rotr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0},t.shr64_hi=function(e,t,r){return e>>>r},t.shr64_lo=function(e,t,r){return(e<<32-r|t>>>r)>>>0}},8375:(e,t,r)=>{"use strict";var n=r(7992),i=r(5659),o=r(490);function a(e){if(!(this instanceof a))return new a(e);this.hash=e.hash,this.predResist=!!e.predResist,this.outLen=this.hash.outSize,this.minEntropy=e.minEntropy||this.hash.hmacStrength,this._reseed=null,this.reseedInterval=null,this.K=null,this.V=null;var t=i.toArray(e.entropy,e.entropyEnc||"hex"),r=i.toArray(e.nonce,e.nonceEnc||"hex"),n=i.toArray(e.pers,e.persEnc||"hex");o(t.length>=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._init(t,r,n)}e.exports=a,a.prototype._init=function(e,t,r){var n=e.concat(t).concat(r);this.K=new Array(this.outLen/8),this.V=new Array(this.outLen/8);for(var i=0;i=this.minEntropy/8,"Not enough entropy. Minimum is: "+this.minEntropy+" bits"),this._update(e.concat(r||[])),this._reseed=1},a.prototype.generate=function(e,t,r,n){if(this._reseed>this.reseedInterval)throw new Error("Reseed is required");"string"!==typeof t&&(n=r,r=t,t=null),r&&(r=i.toArray(r,n||"hex"),this._update(r));for(var o=[];o.length{"use strict";var n=r(5235),i={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},a={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function c(e){return n.isMemo(e)?a:s[e.$$typeof]||i}s[n.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[n.Memo]=a;var l=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,h=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,p=Object.prototype;e.exports=function e(t,r,n){if("string"!==typeof r){if(p){var i=f(r);i&&i!==p&&e(t,i,n)}var a=u(r);d&&(a=a.concat(d(r)));for(var s=c(t),m=c(r),g=0;g{"use strict";var r="function"===typeof Symbol&&Symbol.for,n=r?Symbol.for("react.element"):60103,i=r?Symbol.for("react.portal"):60106,o=r?Symbol.for("react.fragment"):60107,a=r?Symbol.for("react.strict_mode"):60108,s=r?Symbol.for("react.profiler"):60114,c=r?Symbol.for("react.provider"):60109,l=r?Symbol.for("react.context"):60110,u=r?Symbol.for("react.async_mode"):60111,d=r?Symbol.for("react.concurrent_mode"):60111,h=r?Symbol.for("react.forward_ref"):60112,f=r?Symbol.for("react.suspense"):60113,p=r?Symbol.for("react.suspense_list"):60120,m=r?Symbol.for("react.memo"):60115,g=r?Symbol.for("react.lazy"):60116,v=r?Symbol.for("react.block"):60121,y=r?Symbol.for("react.fundamental"):60117,b=r?Symbol.for("react.responder"):60118,w=r?Symbol.for("react.scope"):60119;function x(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type){case u:case d:case o:case s:case a:case f:return e;default:switch(e=e&&e.$$typeof){case l:case h:case g:case m:case c:return e;default:return t}}case i:return t}}}function _(e){return x(e)===d}t.AsyncMode=u,t.ConcurrentMode=d,t.ContextConsumer=l,t.ContextProvider=c,t.Element=n,t.ForwardRef=h,t.Fragment=o,t.Lazy=g,t.Memo=m,t.Portal=i,t.Profiler=s,t.StrictMode=a,t.Suspense=f,t.isAsyncMode=function(e){return _(e)||x(e)===u},t.isConcurrentMode=_,t.isContextConsumer=function(e){return x(e)===l},t.isContextProvider=function(e){return x(e)===c},t.isElement=function(e){return"object"===typeof e&&null!==e&&e.$$typeof===n},t.isForwardRef=function(e){return x(e)===h},t.isFragment=function(e){return x(e)===o},t.isLazy=function(e){return x(e)===g},t.isMemo=function(e){return x(e)===m},t.isPortal=function(e){return x(e)===i},t.isProfiler=function(e){return x(e)===s},t.isStrictMode=function(e){return x(e)===a},t.isSuspense=function(e){return x(e)===f},t.isValidElementType=function(e){return"string"===typeof e||"function"===typeof e||e===o||e===d||e===s||e===a||e===f||e===p||"object"===typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===m||e.$$typeof===c||e.$$typeof===l||e.$$typeof===h||e.$$typeof===y||e.$$typeof===b||e.$$typeof===w||e.$$typeof===v)},t.typeOf=x},5235:(e,t,r)=>{"use strict";e.exports=r(6261)},3299:(e,t)=>{t.read=function(e,t,r,n,i){var o,a,s=8*i-n-1,c=(1<>1,u=-7,d=r?i-1:0,h=r?-1:1,f=e[t+d];for(d+=h,o=f&(1<<-u)-1,f>>=-u,u+=s;u>0;o=256*o+e[t+d],d+=h,u-=8);for(a=o&(1<<-u)-1,o>>=-u,u+=n;u>0;a=256*a+e[t+d],d+=h,u-=8);if(0===o)o=1-l;else{if(o===c)return a?NaN:1/0*(f?-1:1);a+=Math.pow(2,n),o-=l}return(f?-1:1)*a*Math.pow(2,o-n)},t.write=function(e,t,r,n,i,o){var a,s,c,l=8*o-i-1,u=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,f=n?0:o-1,p=n?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=u):(a=Math.floor(Math.log(t)/Math.LN2),t*(c=Math.pow(2,-a))<1&&(a--,c*=2),(t+=a+d>=1?h/c:h*Math.pow(2,1-d))*c>=2&&(a++,c/=2),a+d>=u?(s=0,a=u):a+d>=1?(s=(t*c-1)*Math.pow(2,i),a+=d):(s=t*Math.pow(2,d-1)*Math.pow(2,i),a=0));i>=8;e[r+f]=255&s,f+=p,s/=256,i-=8);for(a=a<0;e[r+f]=255&a,f+=p,a/=256,l-=8);e[r+f-p]|=128*m}},637:e=>{"function"===typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var r=function(){};r.prototype=t.prototype,e.prototype=new r,e.prototype.constructor=e}}},2311:e=>{function t(e){return!!e.constructor&&"function"===typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}e.exports=function(e){return null!=e&&(t(e)||function(e){return"function"===typeof e.readFloatLE&&"function"===typeof e.slice&&t(e.slice(0,0))}(e)||!!e._isBuffer)}},8981:(e,t,r)=>{"use strict";var n="undefined"!==typeof JSON?JSON:r(5384),i=Array.isArray||function(e){return"[object Array]"==={}.toString.call(e)},o=Object.keys||function(e){var t=Object.prototype.hasOwnProperty||function(){return!0},r=[];for(var n in e)t.call(e,n)&&r.push(n);return r};e.exports=function(e,t){t||(t={}),"function"===typeof t&&(t={cmp:t});var r=t.space||"";"number"===typeof r&&(r=Array(r+1).join(" "));var a,s="boolean"===typeof t.cycles&&t.cycles,c=t.replacer||function(e,t){return t},l=t.cmp&&(a=t.cmp,function(e){return function(t,r){var n={key:t,value:e[t]},i={key:r,value:e[r]};return a(n,i)}}),u=[];return function e(t,a,d,h){var f=r?"\n"+new Array(h+1).join(r):"",p=r?": ":":";if(d&&d.toJSON&&"function"===typeof d.toJSON&&(d=d.toJSON()),void 0!==(d=c.call(t,a,d))){if("object"!==typeof d||null===d)return n.stringify(d);if(i(d)){for(var m=[],g=0;g{"use strict";t.parse=r(1916),t.stringify=r(8920)},1916:e=>{"use strict";var t,r,n,i={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"};function o(e){throw{name:"SyntaxError",message:e,at:t,text:n}}function a(e){return e&&e!==r&&o("Expected '"+e+"' instead of '"+r+"'"),r=n.charAt(t),t+=1,r}function s(){var e,t="";for("-"===r&&(t="-",a("-"));r>="0"&&r<="9";)t+=r,a();if("."===r)for(t+=".";a()&&r>="0"&&r<="9";)t+=r;if("e"===r||"E"===r)for(t+=r,a(),"-"!==r&&"+"!==r||(t+=r,a());r>="0"&&r<="9";)t+=r,a();return e=Number(t),isFinite(e)||o("Bad number"),e}function c(){var e,t,n,s="";if('"'===r)for(;a();){if('"'===r)return a(),s;if("\\"===r)if(a(),"u"===r){for(n=0,t=0;t<4&&(e=parseInt(a(),16),isFinite(e));t+=1)n=16*n+e;s+=String.fromCharCode(n)}else{if("string"!==typeof i[r])break;s+=i[r]}else s+=r}o("Bad string")}function l(){for(;r&&r<=" ";)a()}function u(){switch(l(),r){case"{":return function(){var e,t={};if("{"===r){if(a("{"),l(),"}"===r)return a("}"),t;for(;r;){if(e=c(),l(),a(":"),Object.prototype.hasOwnProperty.call(t,e)&&o('Duplicate key "'+e+'"'),t[e]=u(),l(),"}"===r)return a("}"),t;a(","),l()}}o("Bad object")}();case"[":return function(){var e=[];if("["===r){if(a("["),l(),"]"===r)return a("]"),e;for(;r;){if(e.push(u()),l(),"]"===r)return a("]"),e;a(","),l()}}o("Bad array")}();case'"':return c();case"-":return s();default:return r>="0"&&r<="9"?s():function(){switch(r){case"t":return a("t"),a("r"),a("u"),a("e"),!0;case"f":return a("f"),a("a"),a("l"),a("s"),a("e"),!1;case"n":return a("n"),a("u"),a("l"),a("l"),null;default:o("Unexpected '"+r+"'")}}()}}e.exports=function(e,i){var a;return n=e,t=0,r=" ",a=u(),l(),r&&o("Syntax error"),"function"===typeof i?function e(t,r){var n,o,a=t[r];if(a&&"object"===typeof a)for(n in u)Object.prototype.hasOwnProperty.call(a,n)&&("undefined"===typeof(o=e(a,n))?delete a[n]:a[n]=o);return i.call(t,r,a)}({"":a},""):a}},8920:e=>{"use strict";var t,r,n,i=/[\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,o={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function a(e){return i.lastIndex=0,i.test(e)?'"'+e.replace(i,(function(e){var t=o[e];return"string"===typeof t?t:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)}))+'"':'"'+e+'"'}function s(e,i){var o,c,l,u,d,h=t,f=i[e];switch(f&&"object"===typeof f&&"function"===typeof f.toJSON&&(f=f.toJSON(e)),"function"===typeof n&&(f=n.call(i,e,f)),typeof f){case"string":return a(f);case"number":return isFinite(f)?String(f):"null";case"boolean":case"null":return String(f);case"object":if(!f)return"null";if(t+=r,d=[],"[object Array]"===Object.prototype.toString.apply(f)){for(u=f.length,o=0;o{function t(e,t){e.onload=function(){this.onerror=this.onload=null,t(null,e)},e.onerror=function(){this.onerror=this.onload=null,t(new Error("Failed to load "+this.src),e)}}function r(e,t){e.onreadystatechange=function(){"complete"!=this.readyState&&"loaded"!=this.readyState||(this.onreadystatechange=null,t(null,e))}}e.exports=function(e,n,i){var o=document.head||document.getElementsByTagName("head")[0],a=document.createElement("script");"function"===typeof n&&(i=n,n={}),n=n||{},i=i||function(){},a.type=n.type||"text/javascript",a.charset=n.charset||"utf8",a.async=!("async"in n)||!!n.async,a.src=e,n.attrs&&function(e,t){for(var r in t)e.setAttribute(r,t[r])}(a,n.attrs),n.text&&(a.text=""+n.text),("onload"in a?t:r)(a,i),a.onload||t(a,i),o.appendChild(a)}},9724:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=1,o=2,a=9007199254740991,s="[object Arguments]",c="[object Array]",l="[object AsyncFunction]",u="[object Boolean]",d="[object Date]",h="[object Error]",f="[object Function]",p="[object GeneratorFunction]",m="[object Map]",g="[object Number]",v="[object Null]",y="[object Object]",b="[object Promise]",w="[object Proxy]",x="[object RegExp]",_="[object Set]",S="[object String]",k="[object Symbol]",E="[object Undefined]",A="[object WeakMap]",P="[object ArrayBuffer]",O="[object DataView]",T=/^\[object .+?Constructor\]$/,C=/^(?:0|[1-9]\d*)$/,j={};j["[object Float32Array]"]=j["[object Float64Array]"]=j["[object Int8Array]"]=j["[object Int16Array]"]=j["[object Int32Array]"]=j["[object Uint8Array]"]=j["[object Uint8ClampedArray]"]=j["[object Uint16Array]"]=j["[object Uint32Array]"]=!0,j[s]=j[c]=j[P]=j[u]=j[O]=j[d]=j[h]=j[f]=j[m]=j[g]=j[y]=j[x]=j[_]=j[S]=j[A]=!1;var R="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,I="object"==typeof self&&self&&self.Object===Object&&self,M=R||I||Function("return this")(),L=t&&!t.nodeType&&t,N=L&&e&&!e.nodeType&&e,D=N&&N.exports===L,z=D&&R.process,B=function(){try{return z&&z.binding&&z.binding("util")}catch(e){}}(),U=B&&B.isTypedArray;function F(e,t){for(var r=-1,n=null==e?0:e.length;++rl))return!1;var d=s.get(e);if(d&&s.get(t))return d==t;var h=-1,f=!0,p=r&o?new Ae:void 0;for(s.set(e,t),s.set(t,e);++h-1},ke.prototype.set=function(e,t){var r=this.__data__,n=Te(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Ee.prototype.clear=function(){this.size=0,this.__data__={hash:new Se,map:new(de||ke),string:new Se}},Ee.prototype.delete=function(e){var t=De(this,e).delete(e);return this.size-=t?1:0,t},Ee.prototype.get=function(e){return De(this,e).get(e)},Ee.prototype.has=function(e){return De(this,e).has(e)},Ee.prototype.set=function(e,t){var r=De(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Ae.prototype.add=Ae.prototype.push=function(e){return this.__data__.set(e,n),this},Ae.prototype.has=function(e){return this.__data__.has(e)},Pe.prototype.clear=function(){this.__data__=new ke,this.size=0},Pe.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Pe.prototype.get=function(e){return this.__data__.get(e)},Pe.prototype.has=function(e){return this.__data__.has(e)},Pe.prototype.set=function(e,t){var r=this.__data__;if(r instanceof ke){var n=r.__data__;if(!de||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Ee(n)}return r.set(e,t),this.size=r.size,this};var Be=se?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,n=null==e?0:e.length,i=0,o=[];++r-1&&e%1==0&&e-1&&e%1==0&&e<=a}function Ze(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ye(e){return null!=e&&"object"==typeof e}var Xe=U?function(e){return function(t){return e(t)}}(U):function(e){return Ye(e)&&Ge(e.length)&&!!j[Ce(e)]};function Je(e){return null!=(t=e)&&Ge(t.length)&&!We(t)?Oe(e):Me(e);var t}e.exports=function(e,t){return Re(e,t)}},4579:(e,t,r)=>{e=r.nmd(e);var n="__lodash_hash_undefined__",i=9007199254740991,o="[object Arguments]",a="[object AsyncFunction]",s="[object Function]",c="[object GeneratorFunction]",l="[object Null]",u="[object Object]",d="[object Proxy]",h="[object Undefined]",f=/^\[object .+?Constructor\]$/,p=/^(?:0|[1-9]\d*)$/,m={};m["[object Float32Array]"]=m["[object Float64Array]"]=m["[object Int8Array]"]=m["[object Int16Array]"]=m["[object Int32Array]"]=m["[object Uint8Array]"]=m["[object Uint8ClampedArray]"]=m["[object Uint16Array]"]=m["[object Uint32Array]"]=!0,m[o]=m["[object Array]"]=m["[object ArrayBuffer]"]=m["[object Boolean]"]=m["[object DataView]"]=m["[object Date]"]=m["[object Error]"]=m[s]=m["[object Map]"]=m["[object Number]"]=m[u]=m["[object RegExp]"]=m["[object Set]"]=m["[object String]"]=m["[object WeakMap]"]=!1;var g="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,v="object"==typeof self&&self&&self.Object===Object&&self,y=g||v||Function("return this")(),b=t&&!t.nodeType&&t,w=b&&e&&!e.nodeType&&e,x=w&&w.exports===b,_=x&&g.process,S=function(){try{var e=w&&w.require&&w.require("util").types;return e||_&&_.binding&&_.binding("util")}catch(t){}}(),k=S&&S.isTypedArray;var E,A,P=Array.prototype,O=Function.prototype,T=Object.prototype,C=y["__core-js_shared__"],j=O.toString,R=T.hasOwnProperty,I=function(){var e=/[^.]+$/.exec(C&&C.keys&&C.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),M=T.toString,L=j.call(Object),N=RegExp("^"+j.call(R).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),D=x?y.Buffer:void 0,z=y.Symbol,B=y.Uint8Array,U=D?D.allocUnsafe:void 0,F=(E=Object.getPrototypeOf,A=Object,function(e){return E(A(e))}),$=Object.create,H=T.propertyIsEnumerable,V=P.splice,q=z?z.toStringTag:void 0,K=function(){try{var e=ye(Object,"defineProperty");return e({},"",{}),e}catch(t){}}(),W=D?D.isBuffer:void 0,G=Math.max,Z=Date.now,Y=ye(y,"Map"),X=ye(Object,"create"),J=function(){function e(){}return function(t){if(!Ce(t))return{};if($)return $(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();function Q(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t-1},ee.prototype.set=function(e,t){var r=this.__data__,n=ae(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},te.prototype.clear=function(){this.size=0,this.__data__={hash:new Q,map:new(Y||ee),string:new Q}},te.prototype.delete=function(e){var t=ve(this,e).delete(e);return this.size-=t?1:0,t},te.prototype.get=function(e){return ve(this,e).get(e)},te.prototype.has=function(e){return ve(this,e).has(e)},te.prototype.set=function(e,t){var r=ve(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},re.prototype.clear=function(){this.__data__=new ee,this.size=0},re.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},re.prototype.get=function(e){return this.__data__.get(e)},re.prototype.has=function(e){return this.__data__.has(e)},re.prototype.set=function(e,t){var r=this.__data__;if(r instanceof ee){var n=r.__data__;if(!Y||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new te(n)}return r.set(e,t),this.size=r.size,this};var ce,le=function(e,t,r){for(var n=-1,i=Object(e),o=r(e),a=o.length;a--;){var s=o[ce?a:++n];if(!1===t(i[s],s,i))break}return e};function ue(e){return null==e?void 0===e?h:l:q&&q in Object(e)?function(e){var t=R.call(e,q),r=e[q];try{e[q]=void 0;var n=!0}catch(o){}var i=M.call(e);n&&(t?e[q]=r:delete e[q]);return i}(e):function(e){return M.call(e)}(e)}function de(e){return je(e)&&ue(e)==o}function he(e){return!(!Ce(e)||function(e){return!!I&&I in e}(e))&&(Oe(e)?N:f).test(function(e){if(null!=e){try{return j.call(e)}catch(t){}try{return e+""}catch(t){}}return""}(e))}function fe(e){if(!Ce(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t=we(e),r=[];for(var n in e)("constructor"!=n||!t&&R.call(e,n))&&r.push(n);return r}function pe(e,t,r,n,i){e!==t&&le(t,(function(o,a){if(i||(i=new re),Ce(o))!function(e,t,r,n,i,o,a){var s=xe(e,r),c=xe(t,r),l=a.get(c);if(l)return void ie(e,r,l);var d=o?o(s,c,r+"",e,t,a):void 0,h=void 0===d;if(h){var f=Ee(c),p=!f&&Pe(c),m=!f&&!p&&Re(c);d=c,f||p||m?Ee(s)?d=s:je(g=s)&&Ae(g)?d=function(e,t){var r=-1,n=e.length;t||(t=Array(n));for(;++r-1&&e%1==0&&e0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}(ge);function Se(e,t){return e===t||e!==e&&t!==t}var ke=de(function(){return arguments}())?de:function(e){return je(e)&&R.call(e,"callee")&&!H.call(e,"callee")},Ee=Array.isArray;function Ae(e){return null!=e&&Te(e.length)&&!Oe(e)}var Pe=W||function(){return!1};function Oe(e){if(!Ce(e))return!1;var t=ue(e);return t==s||t==c||t==a||t==d}function Te(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=i}function Ce(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function je(e){return null!=e&&"object"==typeof e}var Re=k?function(e){return function(t){return e(t)}}(k):function(e){return je(e)&&Te(e.length)&&!!m[ue(e)]};function Ie(e){return Ae(e)?ne(e,!0):fe(e)}var Me,Le=(Me=function(e,t,r){pe(e,t,r)},me((function(e,t){var r=-1,n=t.length,i=n>1?t[n-1]:void 0,o=n>2?t[2]:void 0;for(i=Me.length>3&&"function"==typeof i?(n--,i):void 0,o&&function(e,t,r){if(!Ce(r))return!1;var n=typeof t;return!!("number"==n?Ae(r)&&be(t,r.length):"string"==n&&t in r)&&Se(r[t],e)}(t[0],t[1],o)&&(i=n<3?void 0:i,n=1),e=Object(e);++r{e=r.nmd(e);var n="__lodash_hash_undefined__",i=9007199254740991,o="[object Arguments]",a="[object AsyncFunction]",s="[object Function]",c="[object GeneratorFunction]",l="[object Null]",u="[object Object]",d="[object Proxy]",h="[object Undefined]",f=/^\[object .+?Constructor\]$/,p=/^(?:0|[1-9]\d*)$/,m={};m["[object Float32Array]"]=m["[object Float64Array]"]=m["[object Int8Array]"]=m["[object Int16Array]"]=m["[object Int32Array]"]=m["[object Uint8Array]"]=m["[object Uint8ClampedArray]"]=m["[object Uint16Array]"]=m["[object Uint32Array]"]=!0,m[o]=m["[object Array]"]=m["[object ArrayBuffer]"]=m["[object Boolean]"]=m["[object DataView]"]=m["[object Date]"]=m["[object Error]"]=m[s]=m["[object Map]"]=m["[object Number]"]=m[u]=m["[object RegExp]"]=m["[object Set]"]=m["[object String]"]=m["[object WeakMap]"]=!1;var g="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,v="object"==typeof self&&self&&self.Object===Object&&self,y=g||v||Function("return this")(),b=t&&!t.nodeType&&t,w=b&&e&&!e.nodeType&&e,x=w&&w.exports===b,_=x&&g.process,S=function(){try{var e=w&&w.require&&w.require("util").types;return e||_&&_.binding&&_.binding("util")}catch(t){}}(),k=S&&S.isTypedArray;var E,A,P=Array.prototype,O=Function.prototype,T=Object.prototype,C=y["__core-js_shared__"],j=O.toString,R=T.hasOwnProperty,I=function(){var e=/[^.]+$/.exec(C&&C.keys&&C.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),M=T.toString,L=j.call(Object),N=RegExp("^"+j.call(R).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),D=x?y.Buffer:void 0,z=y.Symbol,B=y.Uint8Array,U=D?D.allocUnsafe:void 0,F=(E=Object.getPrototypeOf,A=Object,function(e){return E(A(e))}),$=Object.create,H=T.propertyIsEnumerable,V=P.splice,q=z?z.toStringTag:void 0,K=function(){try{var e=ye(Object,"defineProperty");return e({},"",{}),e}catch(t){}}(),W=D?D.isBuffer:void 0,G=Math.max,Z=Date.now,Y=ye(y,"Map"),X=ye(Object,"create"),J=function(){function e(){}return function(t){if(!Ce(t))return{};if($)return $(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();function Q(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t-1},ee.prototype.set=function(e,t){var r=this.__data__,n=ae(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},te.prototype.clear=function(){this.size=0,this.__data__={hash:new Q,map:new(Y||ee),string:new Q}},te.prototype.delete=function(e){var t=ve(this,e).delete(e);return this.size-=t?1:0,t},te.prototype.get=function(e){return ve(this,e).get(e)},te.prototype.has=function(e){return ve(this,e).has(e)},te.prototype.set=function(e,t){var r=ve(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},re.prototype.clear=function(){this.__data__=new ee,this.size=0},re.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},re.prototype.get=function(e){return this.__data__.get(e)},re.prototype.has=function(e){return this.__data__.has(e)},re.prototype.set=function(e,t){var r=this.__data__;if(r instanceof ee){var n=r.__data__;if(!Y||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new te(n)}return r.set(e,t),this.size=r.size,this};var ce,le=function(e,t,r){for(var n=-1,i=Object(e),o=r(e),a=o.length;a--;){var s=o[ce?a:++n];if(!1===t(i[s],s,i))break}return e};function ue(e){return null==e?void 0===e?h:l:q&&q in Object(e)?function(e){var t=R.call(e,q),r=e[q];try{e[q]=void 0;var n=!0}catch(o){}var i=M.call(e);n&&(t?e[q]=r:delete e[q]);return i}(e):function(e){return M.call(e)}(e)}function de(e){return je(e)&&ue(e)==o}function he(e){return!(!Ce(e)||function(e){return!!I&&I in e}(e))&&(Oe(e)?N:f).test(function(e){if(null!=e){try{return j.call(e)}catch(t){}try{return e+""}catch(t){}}return""}(e))}function fe(e){if(!Ce(e))return function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}(e);var t=we(e),r=[];for(var n in e)("constructor"!=n||!t&&R.call(e,n))&&r.push(n);return r}function pe(e,t,r,n,i){e!==t&&le(t,(function(o,a){if(i||(i=new re),Ce(o))!function(e,t,r,n,i,o,a){var s=xe(e,r),c=xe(t,r),l=a.get(c);if(l)return void ie(e,r,l);var d=o?o(s,c,r+"",e,t,a):void 0,h=void 0===d;if(h){var f=Ee(c),p=!f&&Pe(c),m=!f&&!p&&Re(c);d=c,f||p||m?Ee(s)?d=s:je(g=s)&&Ae(g)?d=function(e,t){var r=-1,n=e.length;t||(t=Array(n));for(;++r-1&&e%1==0&&e0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}(ge);function Se(e,t){return e===t||e!==e&&t!==t}var ke=de(function(){return arguments}())?de:function(e){return je(e)&&R.call(e,"callee")&&!H.call(e,"callee")},Ee=Array.isArray;function Ae(e){return null!=e&&Te(e.length)&&!Oe(e)}var Pe=W||function(){return!1};function Oe(e){if(!Ce(e))return!1;var t=ue(e);return t==s||t==c||t==a||t==d}function Te(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=i}function Ce(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function je(e){return null!=e&&"object"==typeof e}var Re=k?function(e){return function(t){return e(t)}}(k):function(e){return je(e)&&Te(e.length)&&!!m[ue(e)]};function Ie(e){return Ae(e)?ne(e,!0):fe(e)}var Me,Le=(Me=function(e,t,r,n){pe(e,t,r,n)},me((function(e,t){var r=-1,n=t.length,i=n>1?t[n-1]:void 0,o=n>2?t[2]:void 0;for(i=Me.length>3&&"function"==typeof i?(n--,i):void 0,o&&function(e,t,r){if(!Ce(r))return!1;var n=typeof t;return!!("number"==n?Ae(r)&&be(t,r.length):"string"==n&&t in r)&&Se(r[t],e)}(t[0],t[1],o)&&(i=n<3?void 0:i,n=1),e=Object(e);++r"']/g,Y=RegExp(G.source),X=RegExp(Z.source),J=/<%-([\s\S]+?)%>/g,Q=/<%([\s\S]+?)%>/g,ee=/<%=([\s\S]+?)%>/g,te=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,re=/^\w*$/,ne=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ie=/[\\^$.*+?()[\]{}|]/g,oe=RegExp(ie.source),ae=/^\s+/,se=/\s/,ce=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,le=/\{\n\/\* \[wrapped with (.+)\] \*/,ue=/,? & /,de=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,he=/[()=,{}\[\]\/\s]/,fe=/\\(\\)?/g,pe=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,me=/\w*$/,ge=/^[-+]0x[0-9a-f]+$/i,ve=/^0b[01]+$/i,ye=/^\[object .+?Constructor\]$/,be=/^0o[0-7]+$/i,we=/^(?:0|[1-9]\d*)$/,xe=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,_e=/($^)/,Se=/['\n\r\u2028\u2029\\]/g,ke="\\ud800-\\udfff",Ee="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ae="\\u2700-\\u27bf",Pe="a-z\\xdf-\\xf6\\xf8-\\xff",Oe="A-Z\\xc0-\\xd6\\xd8-\\xde",Te="\\ufe0e\\ufe0f",Ce="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",je="['\u2019]",Re="["+ke+"]",Ie="["+Ce+"]",Me="["+Ee+"]",Le="\\d+",Ne="["+Ae+"]",De="["+Pe+"]",ze="[^"+ke+Ce+Le+Ae+Pe+Oe+"]",Be="\\ud83c[\\udffb-\\udfff]",Ue="[^"+ke+"]",Fe="(?:\\ud83c[\\udde6-\\uddff]){2}",$e="[\\ud800-\\udbff][\\udc00-\\udfff]",He="["+Oe+"]",Ve="\\u200d",qe="(?:"+De+"|"+ze+")",Ke="(?:"+He+"|"+ze+")",We="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Ge="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",Ze="(?:"+Me+"|"+Be+")"+"?",Ye="["+Te+"]?",Xe=Ye+Ze+("(?:"+Ve+"(?:"+[Ue,Fe,$e].join("|")+")"+Ye+Ze+")*"),Je="(?:"+[Ne,Fe,$e].join("|")+")"+Xe,Qe="(?:"+[Ue+Me+"?",Me,Fe,$e,Re].join("|")+")",et=RegExp(je,"g"),tt=RegExp(Me,"g"),rt=RegExp(Be+"(?="+Be+")|"+Qe+Xe,"g"),nt=RegExp([He+"?"+De+"+"+We+"(?="+[Ie,He,"$"].join("|")+")",Ke+"+"+Ge+"(?="+[Ie,He+qe,"$"].join("|")+")",He+"?"+qe+"+"+We,He+"+"+Ge,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Le,Je].join("|"),"g"),it=RegExp("["+Ve+ke+Ee+Te+"]"),ot=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,at=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],st=-1,ct={};ct[N]=ct[D]=ct[z]=ct[B]=ct[U]=ct[F]=ct[$]=ct[H]=ct[V]=!0,ct[y]=ct[b]=ct[M]=ct[w]=ct[L]=ct[x]=ct[_]=ct[S]=ct[E]=ct[A]=ct[P]=ct[T]=ct[C]=ct[j]=ct[I]=!1;var lt={};lt[y]=lt[b]=lt[M]=lt[L]=lt[w]=lt[x]=lt[N]=lt[D]=lt[z]=lt[B]=lt[U]=lt[E]=lt[A]=lt[P]=lt[T]=lt[C]=lt[j]=lt[R]=lt[F]=lt[$]=lt[H]=lt[V]=!0,lt[_]=lt[S]=lt[I]=!1;var ut={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},dt=parseFloat,ht=parseInt,ft="object"==typeof r.g&&r.g&&r.g.Object===Object&&r.g,pt="object"==typeof self&&self&&self.Object===Object&&self,mt=ft||pt||Function("return this")(),gt=t&&!t.nodeType&&t,vt=gt&&e&&!e.nodeType&&e,yt=vt&&vt.exports===gt,bt=yt&&ft.process,wt=function(){try{var e=vt&&vt.require&&vt.require("util").types;return e||bt&&bt.binding&&bt.binding("util")}catch(t){}}(),xt=wt&&wt.isArrayBuffer,_t=wt&&wt.isDate,St=wt&&wt.isMap,kt=wt&&wt.isRegExp,Et=wt&&wt.isSet,At=wt&&wt.isTypedArray;function Pt(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function Ot(e,t,r,n){for(var i=-1,o=null==e?0:e.length;++i-1}function Mt(e,t,r){for(var n=-1,i=null==e?0:e.length;++n-1;);return r}function nr(e,t){for(var r=e.length;r--&&Ht(t,e[r],0)>-1;);return r}var ir=Gt({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),or=Gt({"&":"&","<":"<",">":">",'"':""","'":"'"});function ar(e){return"\\"+ut[e]}function sr(e){return it.test(e)}function cr(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function lr(e,t){return function(r){return e(t(r))}}function ur(e,t){for(var r=-1,n=e.length,i=0,o=[];++r",""":'"',"'":"'"});var vr=function e(t){var r=(t=null==t?mt:vr.defaults(mt.Object(),t,vr.pick(mt,at))).Array,n=t.Date,se=t.Error,ke=t.Function,Ee=t.Math,Ae=t.Object,Pe=t.RegExp,Oe=t.String,Te=t.TypeError,Ce=r.prototype,je=ke.prototype,Re=Ae.prototype,Ie=t["__core-js_shared__"],Me=je.toString,Le=Re.hasOwnProperty,Ne=0,De=function(){var e=/[^.]+$/.exec(Ie&&Ie.keys&&Ie.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),ze=Re.toString,Be=Me.call(Ae),Ue=mt._,Fe=Pe("^"+Me.call(Le).replace(ie,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),$e=yt?t.Buffer:i,He=t.Symbol,Ve=t.Uint8Array,qe=$e?$e.allocUnsafe:i,Ke=lr(Ae.getPrototypeOf,Ae),We=Ae.create,Ge=Re.propertyIsEnumerable,Ze=Ce.splice,Ye=He?He.isConcatSpreadable:i,Xe=He?He.iterator:i,Je=He?He.toStringTag:i,Qe=function(){try{var e=ho(Ae,"defineProperty");return e({},"",{}),e}catch(t){}}(),rt=t.clearTimeout!==mt.clearTimeout&&t.clearTimeout,it=n&&n.now!==mt.Date.now&&n.now,ut=t.setTimeout!==mt.setTimeout&&t.setTimeout,ft=Ee.ceil,pt=Ee.floor,gt=Ae.getOwnPropertySymbols,vt=$e?$e.isBuffer:i,bt=t.isFinite,wt=Ce.join,Ut=lr(Ae.keys,Ae),Gt=Ee.max,yr=Ee.min,br=n.now,wr=t.parseInt,xr=Ee.random,_r=Ce.reverse,Sr=ho(t,"DataView"),kr=ho(t,"Map"),Er=ho(t,"Promise"),Ar=ho(t,"Set"),Pr=ho(t,"WeakMap"),Or=ho(Ae,"create"),Tr=Pr&&new Pr,Cr={},jr=zo(Sr),Rr=zo(kr),Ir=zo(Er),Mr=zo(Ar),Lr=zo(Pr),Nr=He?He.prototype:i,Dr=Nr?Nr.valueOf:i,zr=Nr?Nr.toString:i;function Br(e){if(ts(e)&&!Va(e)&&!(e instanceof Hr)){if(e instanceof $r)return e;if(Le.call(e,"__wrapped__"))return Bo(e)}return new $r(e)}var Ur=function(){function e(){}return function(t){if(!es(t))return{};if(We)return We(t);e.prototype=t;var r=new e;return e.prototype=i,r}}();function Fr(){}function $r(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=i}function Hr(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=g,this.__views__=[]}function Vr(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t=t?e:t)),e}function cn(e,t,r,n,o,a){var s,c=1&t,l=2&t,u=4&t;if(r&&(s=o?r(e,n,o,a):r(e)),s!==i)return s;if(!es(e))return e;var d=Va(e);if(d){if(s=function(e){var t=e.length,r=new e.constructor(t);t&&"string"==typeof e[0]&&Le.call(e,"index")&&(r.index=e.index,r.input=e.input);return r}(e),!c)return Ti(e,s)}else{var h=mo(e),f=h==S||h==k;if(Ga(e))return Si(e,c);if(h==P||h==y||f&&!o){if(s=l||f?{}:vo(e),!c)return l?function(e,t){return Ci(e,po(e),t)}(e,function(e,t){return e&&Ci(t,Rs(t),e)}(s,e)):function(e,t){return Ci(e,fo(e),t)}(e,nn(s,e))}else{if(!lt[h])return o?e:{};s=function(e,t,r){var n=e.constructor;switch(t){case M:return ki(e);case w:case x:return new n(+e);case L:return function(e,t){var r=t?ki(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}(e,r);case N:case D:case z:case B:case U:case F:case $:case H:case V:return Ei(e,r);case E:return new n;case A:case j:return new n(e);case T:return function(e){var t=new e.constructor(e.source,me.exec(e));return t.lastIndex=e.lastIndex,t}(e);case C:return new n;case R:return i=e,Dr?Ae(Dr.call(i)):{}}var i}(e,h,c)}}a||(a=new Gr);var p=a.get(e);if(p)return p;a.set(e,s),as(e)?e.forEach((function(n){s.add(cn(n,t,r,n,e,a))})):rs(e)&&e.forEach((function(n,i){s.set(i,cn(n,t,r,i,e,a))}));var m=d?i:(u?l?io:no:l?Rs:js)(e);return Tt(m||e,(function(n,i){m&&(n=e[i=n]),en(s,i,cn(n,t,r,i,e,a))})),s}function ln(e,t,r){var n=r.length;if(null==e)return!n;for(e=Ae(e);n--;){var o=r[n],a=t[o],s=e[o];if(s===i&&!(o in e)||!a(s))return!1}return!0}function un(e,t,r){if("function"!=typeof e)throw new Te(o);return jo((function(){e.apply(i,r)}),t)}function dn(e,t,r,n){var i=-1,o=It,a=!0,s=e.length,c=[],l=t.length;if(!s)return c;r&&(t=Lt(t,Qt(r))),n?(o=Mt,a=!1):t.length>=200&&(o=tr,a=!1,t=new Wr(t));e:for(;++i-1},qr.prototype.set=function(e,t){var r=this.__data__,n=tn(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Kr.prototype.clear=function(){this.size=0,this.__data__={hash:new Vr,map:new(kr||qr),string:new Vr}},Kr.prototype.delete=function(e){var t=lo(this,e).delete(e);return this.size-=t?1:0,t},Kr.prototype.get=function(e){return lo(this,e).get(e)},Kr.prototype.has=function(e){return lo(this,e).has(e)},Kr.prototype.set=function(e,t){var r=lo(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Wr.prototype.add=Wr.prototype.push=function(e){return this.__data__.set(e,a),this},Wr.prototype.has=function(e){return this.__data__.has(e)},Gr.prototype.clear=function(){this.__data__=new qr,this.size=0},Gr.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Gr.prototype.get=function(e){return this.__data__.get(e)},Gr.prototype.has=function(e){return this.__data__.has(e)},Gr.prototype.set=function(e,t){var r=this.__data__;if(r instanceof qr){var n=r.__data__;if(!kr||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Kr(n)}return r.set(e,t),this.size=r.size,this};var hn=Ii(wn),fn=Ii(xn,!0);function pn(e,t){var r=!0;return hn(e,(function(e,n,i){return r=!!t(e,n,i)})),r}function mn(e,t,r){for(var n=-1,o=e.length;++n0&&r(s)?t>1?vn(s,t-1,r,n,i):Nt(i,s):n||(i[i.length]=s)}return i}var yn=Mi(),bn=Mi(!0);function wn(e,t){return e&&yn(e,t,js)}function xn(e,t){return e&&bn(e,t,js)}function _n(e,t){return Rt(t,(function(t){return Xa(e[t])}))}function Sn(e,t){for(var r=0,n=(t=bi(t,e)).length;null!=e&&rt}function Pn(e,t){return null!=e&&Le.call(e,t)}function On(e,t){return null!=e&&t in Ae(e)}function Tn(e,t,n){for(var o=n?Mt:It,a=e[0].length,s=e.length,c=s,l=r(s),u=1/0,d=[];c--;){var h=e[c];c&&t&&(h=Lt(h,Qt(t))),u=yr(h.length,u),l[c]=!n&&(t||a>=120&&h.length>=120)?new Wr(c&&h):i}h=e[0];var f=-1,p=l[0];e:for(;++f=s?c:c*("desc"==r[n]?-1:1)}return e.index-t.index}(e,t,r)}))}function qn(e,t,r){for(var n=-1,i=t.length,o={};++n-1;)s!==e&&Ze.call(s,c,1),Ze.call(e,c,1);return e}function Wn(e,t){for(var r=e?t.length:0,n=r-1;r--;){var i=t[r];if(r==n||i!==o){var o=i;bo(i)?Ze.call(e,i,1):di(e,i)}}return e}function Gn(e,t){return e+pt(xr()*(t-e+1))}function Zn(e,t){var r="";if(!e||t<1||t>p)return r;do{t%2&&(r+=e),(t=pt(t/2))&&(e+=e)}while(t);return r}function Yn(e,t){return Ro(Po(e,t,nc),e+"")}function Xn(e){return Yr(Us(e))}function Jn(e,t){var r=Us(e);return Lo(r,sn(t,0,r.length))}function Qn(e,t,r,n){if(!es(e))return e;for(var o=-1,a=(t=bi(t,e)).length,s=a-1,c=e;null!=c&&++oo?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var a=r(o);++i>>1,a=e[o];null!==a&&!cs(a)&&(r?a<=t:a=200){var l=t?null:Zi(e);if(l)return dr(l);a=!1,i=tr,c=new Wr}else c=t?[]:s;e:for(;++n=n?e:ni(e,t,r)}var _i=rt||function(e){return mt.clearTimeout(e)};function Si(e,t){if(t)return e.slice();var r=e.length,n=qe?qe(r):new e.constructor(r);return e.copy(n),n}function ki(e){var t=new e.constructor(e.byteLength);return new Ve(t).set(new Ve(e)),t}function Ei(e,t){var r=t?ki(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}function Ai(e,t){if(e!==t){var r=e!==i,n=null===e,o=e===e,a=cs(e),s=t!==i,c=null===t,l=t===t,u=cs(t);if(!c&&!u&&!a&&e>t||a&&s&&l&&!c&&!u||n&&s&&l||!r&&l||!o)return 1;if(!n&&!a&&!u&&e1?r[o-1]:i,s=o>2?r[2]:i;for(a=e.length>3&&"function"==typeof a?(o--,a):i,s&&wo(r[0],r[1],s)&&(a=o<3?i:a,o=1),t=Ae(t);++n-1?o[a?t[s]:s]:i}}function Bi(e){return ro((function(t){var r=t.length,n=r,a=$r.prototype.thru;for(e&&t.reverse();n--;){var s=t[n];if("function"!=typeof s)throw new Te(o);if(a&&!c&&"wrapper"==ao(s))var c=new $r([],!0)}for(n=c?n:r;++n1&&w.reverse(),f&&uc))return!1;var u=a.get(e),d=a.get(t);if(u&&d)return u==t&&d==e;var h=-1,f=!0,p=2&r?new Wr:i;for(a.set(e,t),a.set(t,e);++h-1&&e%1==0&&e1?"& ":"")+t[n],t=t.join(r>2?", ":" "),e.replace(ce,"{\n/* [wrapped with "+t+"] */\n")}(n,function(e,t){return Tt(v,(function(r){var n="_."+r[0];t&r[1]&&!It(e,n)&&e.push(n)})),e.sort()}(function(e){var t=e.match(le);return t?t[1].split(ue):[]}(n),r)))}function Mo(e){var t=0,r=0;return function(){var n=br(),o=16-(n-r);if(r=n,o>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(i,arguments)}}function Lo(e,t){var r=-1,n=e.length,o=n-1;for(t=t===i?n:t;++r1?e[t-1]:i;return r="function"==typeof r?(e.pop(),r):i,oa(e,r)}));function ha(e){var t=Br(e);return t.__chain__=!0,t}function fa(e,t){return t(e)}var pa=ro((function(e){var t=e.length,r=t?e[0]:0,n=this.__wrapped__,o=function(t){return an(t,e)};return!(t>1||this.__actions__.length)&&n instanceof Hr&&bo(r)?((n=n.slice(r,+r+(t?1:0))).__actions__.push({func:fa,args:[o],thisArg:i}),new $r(n,this.__chain__).thru((function(e){return t&&!e.length&&e.push(i),e}))):this.thru(o)}));var ma=ji((function(e,t,r){Le.call(e,r)?++e[r]:on(e,r,1)}));var ga=zi(Ho),va=zi(Vo);function ya(e,t){return(Va(e)?Tt:hn)(e,co(t,3))}function ba(e,t){return(Va(e)?Ct:fn)(e,co(t,3))}var wa=ji((function(e,t,r){Le.call(e,r)?e[r].push(t):on(e,r,[t])}));var xa=Yn((function(e,t,n){var i=-1,o="function"==typeof t,a=Ka(e)?r(e.length):[];return hn(e,(function(e){a[++i]=o?Pt(t,e,n):Cn(e,t,n)})),a})),_a=ji((function(e,t,r){on(e,r,t)}));function Sa(e,t){return(Va(e)?Lt:Bn)(e,co(t,3))}var ka=ji((function(e,t,r){e[r?0:1].push(t)}),(function(){return[[],[]]}));var Ea=Yn((function(e,t){if(null==e)return[];var r=t.length;return r>1&&wo(e,t[0],t[1])?t=[]:r>2&&wo(t[0],t[1],t[2])&&(t=[t[0]]),Vn(e,vn(t,1),[])})),Aa=it||function(){return mt.Date.now()};function Pa(e,t,r){return t=r?i:t,t=e&&null==t?e.length:t,Xi(e,d,i,i,i,i,t)}function Oa(e,t){var r;if("function"!=typeof t)throw new Te(o);return e=ps(e),function(){return--e>0&&(r=t.apply(this,arguments)),e<=1&&(t=i),r}}var Ta=Yn((function(e,t,r){var n=1;if(r.length){var i=ur(r,so(Ta));n|=l}return Xi(e,n,t,r,i)})),Ca=Yn((function(e,t,r){var n=3;if(r.length){var i=ur(r,so(Ca));n|=l}return Xi(t,n,e,r,i)}));function ja(e,t,r){var n,a,s,c,l,u,d=0,h=!1,f=!1,p=!0;if("function"!=typeof e)throw new Te(o);function m(t){var r=n,o=a;return n=a=i,d=t,c=e.apply(o,r)}function g(e){var r=e-u;return u===i||r>=t||r<0||f&&e-d>=s}function v(){var e=Aa();if(g(e))return y(e);l=jo(v,function(e){var r=t-(e-u);return f?yr(r,s-(e-d)):r}(e))}function y(e){return l=i,p&&n?m(e):(n=a=i,c)}function b(){var e=Aa(),r=g(e);if(n=arguments,a=this,u=e,r){if(l===i)return function(e){return d=e,l=jo(v,t),h?m(e):c}(u);if(f)return _i(l),l=jo(v,t),m(u)}return l===i&&(l=jo(v,t)),c}return t=gs(t)||0,es(r)&&(h=!!r.leading,s=(f="maxWait"in r)?Gt(gs(r.maxWait)||0,t):s,p="trailing"in r?!!r.trailing:p),b.cancel=function(){l!==i&&_i(l),d=0,n=u=a=l=i},b.flush=function(){return l===i?c:y(Aa())},b}var Ra=Yn((function(e,t){return un(e,1,t)})),Ia=Yn((function(e,t,r){return un(e,gs(t)||0,r)}));function Ma(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Te(o);var r=function(){var n=arguments,i=t?t.apply(this,n):n[0],o=r.cache;if(o.has(i))return o.get(i);var a=e.apply(this,n);return r.cache=o.set(i,a)||o,a};return r.cache=new(Ma.Cache||Kr),r}function La(e){if("function"!=typeof e)throw new Te(o);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ma.Cache=Kr;var Na=wi((function(e,t){var r=(t=1==t.length&&Va(t[0])?Lt(t[0],Qt(co())):Lt(vn(t,1),Qt(co()))).length;return Yn((function(n){for(var i=-1,o=yr(n.length,r);++i=t})),Ha=jn(function(){return arguments}())?jn:function(e){return ts(e)&&Le.call(e,"callee")&&!Ge.call(e,"callee")},Va=r.isArray,qa=xt?Qt(xt):function(e){return ts(e)&&En(e)==M};function Ka(e){return null!=e&&Qa(e.length)&&!Xa(e)}function Wa(e){return ts(e)&&Ka(e)}var Ga=vt||gc,Za=_t?Qt(_t):function(e){return ts(e)&&En(e)==x};function Ya(e){if(!ts(e))return!1;var t=En(e);return t==_||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!is(e)}function Xa(e){if(!es(e))return!1;var t=En(e);return t==S||t==k||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Ja(e){return"number"==typeof e&&e==ps(e)}function Qa(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=p}function es(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function ts(e){return null!=e&&"object"==typeof e}var rs=St?Qt(St):function(e){return ts(e)&&mo(e)==E};function ns(e){return"number"==typeof e||ts(e)&&En(e)==A}function is(e){if(!ts(e)||En(e)!=P)return!1;var t=Ke(e);if(null===t)return!0;var r=Le.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&Me.call(r)==Be}var os=kt?Qt(kt):function(e){return ts(e)&&En(e)==T};var as=Et?Qt(Et):function(e){return ts(e)&&mo(e)==C};function ss(e){return"string"==typeof e||!Va(e)&&ts(e)&&En(e)==j}function cs(e){return"symbol"==typeof e||ts(e)&&En(e)==R}var ls=At?Qt(At):function(e){return ts(e)&&Qa(e.length)&&!!ct[En(e)]};var us=Ki(zn),ds=Ki((function(e,t){return e<=t}));function hs(e){if(!e)return[];if(Ka(e))return ss(e)?pr(e):Ti(e);if(Xe&&e[Xe])return function(e){for(var t,r=[];!(t=e.next()).done;)r.push(t.value);return r}(e[Xe]());var t=mo(e);return(t==E?cr:t==C?dr:Us)(e)}function fs(e){return e?(e=gs(e))===f||e===-1/0?17976931348623157e292*(e<0?-1:1):e===e?e:0:0===e?e:0}function ps(e){var t=fs(e),r=t%1;return t===t?r?t-r:t:0}function ms(e){return e?sn(ps(e),0,g):0}function gs(e){if("number"==typeof e)return e;if(cs(e))return m;if(es(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=es(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Jt(e);var r=ve.test(e);return r||be.test(e)?ht(e.slice(2),r?2:8):ge.test(e)?m:+e}function vs(e){return Ci(e,Rs(e))}function ys(e){return null==e?"":li(e)}var bs=Ri((function(e,t){if(ko(t)||Ka(t))Ci(t,js(t),e);else for(var r in t)Le.call(t,r)&&en(e,r,t[r])})),ws=Ri((function(e,t){Ci(t,Rs(t),e)})),xs=Ri((function(e,t,r,n){Ci(t,Rs(t),e,n)})),_s=Ri((function(e,t,r,n){Ci(t,js(t),e,n)})),Ss=ro(an);var ks=Yn((function(e,t){e=Ae(e);var r=-1,n=t.length,o=n>2?t[2]:i;for(o&&wo(t[0],t[1],o)&&(n=1);++r1),t})),Ci(e,io(e),r),n&&(r=cn(r,7,eo));for(var i=t.length;i--;)di(r,t[i]);return r}));var Ns=ro((function(e,t){return null==e?{}:function(e,t){return qn(e,t,(function(t,r){return Ps(e,r)}))}(e,t)}));function Ds(e,t){if(null==e)return{};var r=Lt(io(e),(function(e){return[e]}));return t=co(t),qn(e,r,(function(e,r){return t(e,r[0])}))}var zs=Yi(js),Bs=Yi(Rs);function Us(e){return null==e?[]:er(e,js(e))}var Fs=Ni((function(e,t,r){return t=t.toLowerCase(),e+(r?$s(t):t)}));function $s(e){return Ys(ys(e).toLowerCase())}function Hs(e){return(e=ys(e))&&e.replace(xe,ir).replace(tt,"")}var Vs=Ni((function(e,t,r){return e+(r?"-":"")+t.toLowerCase()})),qs=Ni((function(e,t,r){return e+(r?" ":"")+t.toLowerCase()})),Ks=Li("toLowerCase");var Ws=Ni((function(e,t,r){return e+(r?"_":"")+t.toLowerCase()}));var Gs=Ni((function(e,t,r){return e+(r?" ":"")+Ys(t)}));var Zs=Ni((function(e,t,r){return e+(r?" ":"")+t.toUpperCase()})),Ys=Li("toUpperCase");function Xs(e,t,r){return e=ys(e),(t=r?i:t)===i?function(e){return ot.test(e)}(e)?function(e){return e.match(nt)||[]}(e):function(e){return e.match(de)||[]}(e):e.match(t)||[]}var Js=Yn((function(e,t){try{return Pt(e,i,t)}catch(r){return Ya(r)?r:new se(r)}})),Qs=ro((function(e,t){return Tt(t,(function(t){t=Do(t),on(e,t,Ta(e[t],e))})),e}));function ec(e){return function(){return e}}var tc=Bi(),rc=Bi(!0);function nc(e){return e}function ic(e){return Ln("function"==typeof e?e:cn(e,1))}var oc=Yn((function(e,t){return function(r){return Cn(r,e,t)}})),ac=Yn((function(e,t){return function(r){return Cn(e,r,t)}}));function sc(e,t,r){var n=js(t),i=_n(t,n);null!=r||es(t)&&(i.length||!n.length)||(r=t,t=e,e=this,i=_n(t,js(t)));var o=!(es(r)&&"chain"in r)||!!r.chain,a=Xa(e);return Tt(i,(function(r){var n=t[r];e[r]=n,a&&(e.prototype[r]=function(){var t=this.__chain__;if(o||t){var r=e(this.__wrapped__);return(r.__actions__=Ti(this.__actions__)).push({func:n,args:arguments,thisArg:e}),r.__chain__=t,r}return n.apply(e,Nt([this.value()],arguments))})})),e}function cc(){}var lc=Hi(Lt),uc=Hi(jt),dc=Hi(Bt);function hc(e){return xo(e)?Wt(Do(e)):function(e){return function(t){return Sn(t,e)}}(e)}var fc=qi(),pc=qi(!0);function mc(){return[]}function gc(){return!1}var vc=$i((function(e,t){return e+t}),0),yc=Gi("ceil"),bc=$i((function(e,t){return e/t}),1),wc=Gi("floor");var xc=$i((function(e,t){return e*t}),1),_c=Gi("round"),Sc=$i((function(e,t){return e-t}),0);return Br.after=function(e,t){if("function"!=typeof t)throw new Te(o);return e=ps(e),function(){if(--e<1)return t.apply(this,arguments)}},Br.ary=Pa,Br.assign=bs,Br.assignIn=ws,Br.assignInWith=xs,Br.assignWith=_s,Br.at=Ss,Br.before=Oa,Br.bind=Ta,Br.bindAll=Qs,Br.bindKey=Ca,Br.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Va(e)?e:[e]},Br.chain=ha,Br.chunk=function(e,t,n){t=(n?wo(e,t,n):t===i)?1:Gt(ps(t),0);var o=null==e?0:e.length;if(!o||t<1)return[];for(var a=0,s=0,c=r(ft(o/t));ao?0:o+r),(n=n===i||n>o?o:ps(n))<0&&(n+=o),n=r>n?0:ms(n);r>>0)?(e=ys(e))&&("string"==typeof t||null!=t&&!os(t))&&!(t=li(t))&&sr(e)?xi(pr(e),0,r):e.split(t,r):[]},Br.spread=function(e,t){if("function"!=typeof e)throw new Te(o);return t=null==t?0:Gt(ps(t),0),Yn((function(r){var n=r[t],i=xi(r,0,t);return n&&Nt(i,n),Pt(e,this,i)}))},Br.tail=function(e){var t=null==e?0:e.length;return t?ni(e,1,t):[]},Br.take=function(e,t,r){return e&&e.length?ni(e,0,(t=r||t===i?1:ps(t))<0?0:t):[]},Br.takeRight=function(e,t,r){var n=null==e?0:e.length;return n?ni(e,(t=n-(t=r||t===i?1:ps(t)))<0?0:t,n):[]},Br.takeRightWhile=function(e,t){return e&&e.length?fi(e,co(t,3),!1,!0):[]},Br.takeWhile=function(e,t){return e&&e.length?fi(e,co(t,3)):[]},Br.tap=function(e,t){return t(e),e},Br.throttle=function(e,t,r){var n=!0,i=!0;if("function"!=typeof e)throw new Te(o);return es(r)&&(n="leading"in r?!!r.leading:n,i="trailing"in r?!!r.trailing:i),ja(e,t,{leading:n,maxWait:t,trailing:i})},Br.thru=fa,Br.toArray=hs,Br.toPairs=zs,Br.toPairsIn=Bs,Br.toPath=function(e){return Va(e)?Lt(e,Do):cs(e)?[e]:Ti(No(ys(e)))},Br.toPlainObject=vs,Br.transform=function(e,t,r){var n=Va(e),i=n||Ga(e)||ls(e);if(t=co(t,4),null==r){var o=e&&e.constructor;r=i?n?new o:[]:es(e)&&Xa(o)?Ur(Ke(e)):{}}return(i?Tt:wn)(e,(function(e,n,i){return t(r,e,n,i)})),r},Br.unary=function(e){return Pa(e,1)},Br.union=ta,Br.unionBy=ra,Br.unionWith=na,Br.uniq=function(e){return e&&e.length?ui(e):[]},Br.uniqBy=function(e,t){return e&&e.length?ui(e,co(t,2)):[]},Br.uniqWith=function(e,t){return t="function"==typeof t?t:i,e&&e.length?ui(e,i,t):[]},Br.unset=function(e,t){return null==e||di(e,t)},Br.unzip=ia,Br.unzipWith=oa,Br.update=function(e,t,r){return null==e?e:hi(e,t,yi(r))},Br.updateWith=function(e,t,r,n){return n="function"==typeof n?n:i,null==e?e:hi(e,t,yi(r),n)},Br.values=Us,Br.valuesIn=function(e){return null==e?[]:er(e,Rs(e))},Br.without=aa,Br.words=Xs,Br.wrap=function(e,t){return Da(yi(t),e)},Br.xor=sa,Br.xorBy=ca,Br.xorWith=la,Br.zip=ua,Br.zipObject=function(e,t){return gi(e||[],t||[],en)},Br.zipObjectDeep=function(e,t){return gi(e||[],t||[],Qn)},Br.zipWith=da,Br.entries=zs,Br.entriesIn=Bs,Br.extend=ws,Br.extendWith=xs,sc(Br,Br),Br.add=vc,Br.attempt=Js,Br.camelCase=Fs,Br.capitalize=$s,Br.ceil=yc,Br.clamp=function(e,t,r){return r===i&&(r=t,t=i),r!==i&&(r=(r=gs(r))===r?r:0),t!==i&&(t=(t=gs(t))===t?t:0),sn(gs(e),t,r)},Br.clone=function(e){return cn(e,4)},Br.cloneDeep=function(e){return cn(e,5)},Br.cloneDeepWith=function(e,t){return cn(e,5,t="function"==typeof t?t:i)},Br.cloneWith=function(e,t){return cn(e,4,t="function"==typeof t?t:i)},Br.conformsTo=function(e,t){return null==t||ln(e,t,js(t))},Br.deburr=Hs,Br.defaultTo=function(e,t){return null==e||e!==e?t:e},Br.divide=bc,Br.endsWith=function(e,t,r){e=ys(e),t=li(t);var n=e.length,o=r=r===i?n:sn(ps(r),0,n);return(r-=t.length)>=0&&e.slice(r,o)==t},Br.eq=Ua,Br.escape=function(e){return(e=ys(e))&&X.test(e)?e.replace(Z,or):e},Br.escapeRegExp=function(e){return(e=ys(e))&&oe.test(e)?e.replace(ie,"\\$&"):e},Br.every=function(e,t,r){var n=Va(e)?jt:pn;return r&&wo(e,t,r)&&(t=i),n(e,co(t,3))},Br.find=ga,Br.findIndex=Ho,Br.findKey=function(e,t){return Ft(e,co(t,3),wn)},Br.findLast=va,Br.findLastIndex=Vo,Br.findLastKey=function(e,t){return Ft(e,co(t,3),xn)},Br.floor=wc,Br.forEach=ya,Br.forEachRight=ba,Br.forIn=function(e,t){return null==e?e:yn(e,co(t,3),Rs)},Br.forInRight=function(e,t){return null==e?e:bn(e,co(t,3),Rs)},Br.forOwn=function(e,t){return e&&wn(e,co(t,3))},Br.forOwnRight=function(e,t){return e&&xn(e,co(t,3))},Br.get=As,Br.gt=Fa,Br.gte=$a,Br.has=function(e,t){return null!=e&&go(e,t,Pn)},Br.hasIn=Ps,Br.head=Ko,Br.identity=nc,Br.includes=function(e,t,r,n){e=Ka(e)?e:Us(e),r=r&&!n?ps(r):0;var i=e.length;return r<0&&(r=Gt(i+r,0)),ss(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&Ht(e,t,r)>-1},Br.indexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var i=null==r?0:ps(r);return i<0&&(i=Gt(n+i,0)),Ht(e,t,i)},Br.inRange=function(e,t,r){return t=fs(t),r===i?(r=t,t=0):r=fs(r),function(e,t,r){return e>=yr(t,r)&&e=-9007199254740991&&e<=p},Br.isSet=as,Br.isString=ss,Br.isSymbol=cs,Br.isTypedArray=ls,Br.isUndefined=function(e){return e===i},Br.isWeakMap=function(e){return ts(e)&&mo(e)==I},Br.isWeakSet=function(e){return ts(e)&&"[object WeakSet]"==En(e)},Br.join=function(e,t){return null==e?"":wt.call(e,t)},Br.kebabCase=Vs,Br.last=Yo,Br.lastIndexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var o=n;return r!==i&&(o=(o=ps(r))<0?Gt(n+o,0):yr(o,n-1)),t===t?function(e,t,r){for(var n=r+1;n--;)if(e[n]===t)return n;return n}(e,t,o):$t(e,qt,o,!0)},Br.lowerCase=qs,Br.lowerFirst=Ks,Br.lt=us,Br.lte=ds,Br.max=function(e){return e&&e.length?mn(e,nc,An):i},Br.maxBy=function(e,t){return e&&e.length?mn(e,co(t,2),An):i},Br.mean=function(e){return Kt(e,nc)},Br.meanBy=function(e,t){return Kt(e,co(t,2))},Br.min=function(e){return e&&e.length?mn(e,nc,zn):i},Br.minBy=function(e,t){return e&&e.length?mn(e,co(t,2),zn):i},Br.stubArray=mc,Br.stubFalse=gc,Br.stubObject=function(){return{}},Br.stubString=function(){return""},Br.stubTrue=function(){return!0},Br.multiply=xc,Br.nth=function(e,t){return e&&e.length?Hn(e,ps(t)):i},Br.noConflict=function(){return mt._===this&&(mt._=Ue),this},Br.noop=cc,Br.now=Aa,Br.pad=function(e,t,r){e=ys(e);var n=(t=ps(t))?fr(e):0;if(!t||n>=t)return e;var i=(t-n)/2;return Vi(pt(i),r)+e+Vi(ft(i),r)},Br.padEnd=function(e,t,r){e=ys(e);var n=(t=ps(t))?fr(e):0;return t&&nt){var n=e;e=t,t=n}if(r||e%1||t%1){var o=xr();return yr(e+o*(t-e+dt("1e-"+((o+"").length-1))),t)}return Gn(e,t)},Br.reduce=function(e,t,r){var n=Va(e)?Dt:Zt,i=arguments.length<3;return n(e,co(t,4),r,i,hn)},Br.reduceRight=function(e,t,r){var n=Va(e)?zt:Zt,i=arguments.length<3;return n(e,co(t,4),r,i,fn)},Br.repeat=function(e,t,r){return t=(r?wo(e,t,r):t===i)?1:ps(t),Zn(ys(e),t)},Br.replace=function(){var e=arguments,t=ys(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Br.result=function(e,t,r){var n=-1,o=(t=bi(t,e)).length;for(o||(o=1,e=i);++np)return[];var r=g,n=yr(e,g);t=co(t),e-=g;for(var i=Xt(n,t);++r=a)return e;var c=r-fr(n);if(c<1)return n;var l=s?xi(s,0,c).join(""):e.slice(0,c);if(o===i)return l+n;if(s&&(c+=l.length-c),os(o)){if(e.slice(c).search(o)){var u,d=l;for(o.global||(o=Pe(o.source,ys(me.exec(o))+"g")),o.lastIndex=0;u=o.exec(d);)var h=u.index;l=l.slice(0,h===i?c:h)}}else if(e.indexOf(li(o),c)!=c){var f=l.lastIndexOf(o);f>-1&&(l=l.slice(0,f))}return l+n},Br.unescape=function(e){return(e=ys(e))&&Y.test(e)?e.replace(G,gr):e},Br.uniqueId=function(e){var t=++Ne;return ys(e)+t},Br.upperCase=Zs,Br.upperFirst=Ys,Br.each=ya,Br.eachRight=ba,Br.first=Ko,sc(Br,function(){var e={};return wn(Br,(function(t,r){Le.call(Br.prototype,r)||(e[r]=t)})),e}(),{chain:!1}),Br.VERSION="4.17.21",Tt(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Br[e].placeholder=Br})),Tt(["drop","take"],(function(e,t){Hr.prototype[e]=function(r){r=r===i?1:Gt(ps(r),0);var n=this.__filtered__&&!t?new Hr(this):this.clone();return n.__filtered__?n.__takeCount__=yr(r,n.__takeCount__):n.__views__.push({size:yr(r,g),type:e+(n.__dir__<0?"Right":"")}),n},Hr.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Tt(["filter","map","takeWhile"],(function(e,t){var r=t+1,n=1==r||3==r;Hr.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:co(e,3),type:r}),t.__filtered__=t.__filtered__||n,t}})),Tt(["head","last"],(function(e,t){var r="take"+(t?"Right":"");Hr.prototype[e]=function(){return this[r](1).value()[0]}})),Tt(["initial","tail"],(function(e,t){var r="drop"+(t?"":"Right");Hr.prototype[e]=function(){return this.__filtered__?new Hr(this):this[r](1)}})),Hr.prototype.compact=function(){return this.filter(nc)},Hr.prototype.find=function(e){return this.filter(e).head()},Hr.prototype.findLast=function(e){return this.reverse().find(e)},Hr.prototype.invokeMap=Yn((function(e,t){return"function"==typeof e?new Hr(this):this.map((function(r){return Cn(r,e,t)}))})),Hr.prototype.reject=function(e){return this.filter(La(co(e)))},Hr.prototype.slice=function(e,t){e=ps(e);var r=this;return r.__filtered__&&(e>0||t<0)?new Hr(r):(e<0?r=r.takeRight(-e):e&&(r=r.drop(e)),t!==i&&(r=(t=ps(t))<0?r.dropRight(-t):r.take(t-e)),r)},Hr.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Hr.prototype.toArray=function(){return this.take(g)},wn(Hr.prototype,(function(e,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),n=/^(?:head|last)$/.test(t),o=Br[n?"take"+("last"==t?"Right":""):t],a=n||/^find/.test(t);o&&(Br.prototype[t]=function(){var t=this.__wrapped__,s=n?[1]:arguments,c=t instanceof Hr,l=s[0],u=c||Va(t),d=function(e){var t=o.apply(Br,Nt([e],s));return n&&h?t[0]:t};u&&r&&"function"==typeof l&&1!=l.length&&(c=u=!1);var h=this.__chain__,f=!!this.__actions__.length,p=a&&!h,m=c&&!f;if(!a&&u){t=m?t:new Hr(this);var g=e.apply(t,s);return g.__actions__.push({func:fa,args:[d],thisArg:i}),new $r(g,h)}return p&&m?e.apply(this,s):(g=this.thru(d),p?n?g.value()[0]:g.value():g)})})),Tt(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Ce[e],r=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",n=/^(?:pop|shift)$/.test(e);Br.prototype[e]=function(){var e=arguments;if(n&&!this.__chain__){var i=this.value();return t.apply(Va(i)?i:[],e)}return this[r]((function(r){return t.apply(Va(r)?r:[],e)}))}})),wn(Hr.prototype,(function(e,t){var r=Br[t];if(r){var n=r.name+"";Le.call(Cr,n)||(Cr[n]=[]),Cr[n].push({name:t,func:r})}})),Cr[Ui(i,2).name]=[{name:"wrapper",func:i}],Hr.prototype.clone=function(){var e=new Hr(this.__wrapped__);return e.__actions__=Ti(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Ti(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Ti(this.__views__),e},Hr.prototype.reverse=function(){if(this.__filtered__){var e=new Hr(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Hr.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,r=Va(e),n=t<0,i=r?e.length:0,o=function(e,t,r){var n=-1,i=r.length;for(;++n=this.__values__.length;return{done:e,value:e?i:this.__values__[this.__index__++]}},Br.prototype.plant=function(e){for(var t,r=this;r instanceof Fr;){var n=Bo(r);n.__index__=0,n.__values__=i,t?o.__wrapped__=n:t=n;var o=n;r=r.__wrapped__}return o.__wrapped__=e,t},Br.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Hr){var t=e;return this.__actions__.length&&(t=new Hr(this)),(t=t.reverse()).__actions__.push({func:fa,args:[ea],thisArg:i}),new $r(t,this.__chain__)}return this.thru(ea)},Br.prototype.toJSON=Br.prototype.valueOf=Br.prototype.value=function(){return pi(this.__wrapped__,this.__actions__)},Br.prototype.first=Br.prototype.head,Xe&&(Br.prototype[Xe]=function(){return this}),Br}();mt._=vr,(n=function(){return vr}.call(t,r,t,e))===i||(e.exports=n)}.call(this)},8634:function(e,t,r){var n,i;!function(o,a){"use strict";n=function(){var e=function(){},t="undefined",r=typeof window!==t&&typeof window.navigator!==t&&/Trident\/|MSIE /.test(window.navigator.userAgent),n=["trace","debug","info","warn","error"];function i(e,t){var r=e[t];if("function"===typeof r.bind)return r.bind(e);try{return Function.prototype.bind.call(r,e)}catch(n){return function(){return Function.prototype.apply.apply(r,[e,arguments])}}}function o(){console.log&&(console.log.apply?console.log.apply(console,arguments):Function.prototype.apply.apply(console.log,[console,arguments])),console.trace&&console.trace()}function a(n){return"debug"===n&&(n="log"),typeof console!==t&&("trace"===n&&r?o:void 0!==console[n]?i(console,n):void 0!==console.log?i(console,"log"):e)}function s(t,r){for(var i=0;i=0&&r<=a.levels.SILENT))throw"log.setLevel() called with invalid level: "+r;if(o=r,!1!==n&&u(r),s.call(a,r,e),typeof console===t&&r{"use strict";const n=r(9616),i=Symbol("max"),o=Symbol("length"),a=Symbol("lengthCalculator"),s=Symbol("allowStale"),c=Symbol("maxAge"),l=Symbol("dispose"),u=Symbol("noDisposeOnSet"),d=Symbol("lruList"),h=Symbol("cache"),f=Symbol("updateAgeOnGet"),p=()=>1;const m=(e,t,r)=>{const n=e[h].get(t);if(n){const t=n.value;if(g(e,t)){if(y(e,n),!e[s])return}else r&&(e[f]&&(n.value.now=Date.now()),e[d].unshiftNode(n));return t.value}},g=(e,t)=>{if(!t||!t.maxAge&&!e[c])return!1;const r=Date.now()-t.now;return t.maxAge?r>t.maxAge:e[c]&&r>e[c]},v=e=>{if(e[o]>e[i])for(let t=e[d].tail;e[o]>e[i]&&null!==t;){const r=t.prev;y(e,t),t=r}},y=(e,t)=>{if(t){const r=t.value;e[l]&&e[l](r.key,r.value),e[o]-=r.length,e[h].delete(r.key),e[d].removeNode(t)}};class b{constructor(e,t,r,n,i){this.key=e,this.value=t,this.length=r,this.now=n,this.maxAge=i||0}}const w=(e,t,r,n)=>{let i=r.value;g(e,i)&&(y(e,r),e[s]||(i=void 0)),i&&t.call(n,i.value,i.key,e)};e.exports=class{constructor(e){if("number"===typeof e&&(e={max:e}),e||(e={}),e.max&&("number"!==typeof e.max||e.max<0))throw new TypeError("max must be a non-negative number");this[i]=e.max||1/0;const t=e.length||p;if(this[a]="function"!==typeof t?p:t,this[s]=e.stale||!1,e.maxAge&&"number"!==typeof e.maxAge)throw new TypeError("maxAge must be a number");this[c]=e.maxAge||0,this[l]=e.dispose,this[u]=e.noDisposeOnSet||!1,this[f]=e.updateAgeOnGet||!1,this.reset()}set max(e){if("number"!==typeof e||e<0)throw new TypeError("max must be a non-negative number");this[i]=e||1/0,v(this)}get max(){return this[i]}set allowStale(e){this[s]=!!e}get allowStale(){return this[s]}set maxAge(e){if("number"!==typeof e)throw new TypeError("maxAge must be a non-negative number");this[c]=e,v(this)}get maxAge(){return this[c]}set lengthCalculator(e){"function"!==typeof e&&(e=p),e!==this[a]&&(this[a]=e,this[o]=0,this[d].forEach((e=>{e.length=this[a](e.value,e.key),this[o]+=e.length}))),v(this)}get lengthCalculator(){return this[a]}get length(){return this[o]}get itemCount(){return this[d].length}rforEach(e,t){t=t||this;for(let r=this[d].tail;null!==r;){const n=r.prev;w(this,e,r,t),r=n}}forEach(e,t){t=t||this;for(let r=this[d].head;null!==r;){const n=r.next;w(this,e,r,t),r=n}}keys(){return this[d].toArray().map((e=>e.key))}values(){return this[d].toArray().map((e=>e.value))}reset(){this[l]&&this[d]&&this[d].length&&this[d].forEach((e=>this[l](e.key,e.value))),this[h]=new Map,this[d]=new n,this[o]=0}dump(){return this[d].map((e=>!g(this,e)&&{k:e.key,v:e.value,e:e.now+(e.maxAge||0)})).toArray().filter((e=>e))}dumpLru(){return this[d]}set(e,t,r){if((r=r||this[c])&&"number"!==typeof r)throw new TypeError("maxAge must be a number");const n=r?Date.now():0,s=this[a](t,e);if(this[h].has(e)){if(s>this[i])return y(this,this[h].get(e)),!1;const a=this[h].get(e).value;return this[l]&&(this[u]||this[l](e,a.value)),a.now=n,a.maxAge=r,a.value=t,this[o]+=s-a.length,a.length=s,this.get(e),v(this),!0}const f=new b(e,t,s,n,r);return f.length>this[i]?(this[l]&&this[l](e,t),!1):(this[o]+=f.length,this[d].unshift(f),this[h].set(e,this[d].head),v(this),!0)}has(e){if(!this[h].has(e))return!1;const t=this[h].get(e).value;return!g(this,t)}get(e){return m(this,e,!0)}peek(e){return m(this,e,!1)}pop(){const e=this[d].tail;return e?(y(this,e),e.value):null}del(e){y(this,this[h].get(e))}load(e){this.reset();const t=Date.now();for(let r=e.length-1;r>=0;r--){const n=e[r],i=n.e||0;if(0===i)this.set(n.k,n.v);else{const e=i-t;e>0&&this.set(n.k,n.v,e)}}}prune(){this[h].forEach(((e,t)=>m(this,t,!1)))}}},4768:(e,t,r)=>{"use strict";var n=r(637),i=r(8682),o=r(6293).Buffer,a=new Array(16);function s(){i.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878}function c(e,t){return e<>>32-t}function l(e,t,r,n,i,o,a){return c(e+(t&r|~t&n)+i+o|0,a)+t|0}function u(e,t,r,n,i,o,a){return c(e+(t&n|r&~n)+i+o|0,a)+t|0}function d(e,t,r,n,i,o,a){return c(e+(t^r^n)+i+o|0,a)+t|0}function h(e,t,r,n,i,o,a){return c(e+(r^(t|~n))+i+o|0,a)+t|0}n(s,i),s.prototype._update=function(){for(var e=a,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);var r=this._a,n=this._b,i=this._c,o=this._d;r=l(r,n,i,o,e[0],3614090360,7),o=l(o,r,n,i,e[1],3905402710,12),i=l(i,o,r,n,e[2],606105819,17),n=l(n,i,o,r,e[3],3250441966,22),r=l(r,n,i,o,e[4],4118548399,7),o=l(o,r,n,i,e[5],1200080426,12),i=l(i,o,r,n,e[6],2821735955,17),n=l(n,i,o,r,e[7],4249261313,22),r=l(r,n,i,o,e[8],1770035416,7),o=l(o,r,n,i,e[9],2336552879,12),i=l(i,o,r,n,e[10],4294925233,17),n=l(n,i,o,r,e[11],2304563134,22),r=l(r,n,i,o,e[12],1804603682,7),o=l(o,r,n,i,e[13],4254626195,12),i=l(i,o,r,n,e[14],2792965006,17),r=u(r,n=l(n,i,o,r,e[15],1236535329,22),i,o,e[1],4129170786,5),o=u(o,r,n,i,e[6],3225465664,9),i=u(i,o,r,n,e[11],643717713,14),n=u(n,i,o,r,e[0],3921069994,20),r=u(r,n,i,o,e[5],3593408605,5),o=u(o,r,n,i,e[10],38016083,9),i=u(i,o,r,n,e[15],3634488961,14),n=u(n,i,o,r,e[4],3889429448,20),r=u(r,n,i,o,e[9],568446438,5),o=u(o,r,n,i,e[14],3275163606,9),i=u(i,o,r,n,e[3],4107603335,14),n=u(n,i,o,r,e[8],1163531501,20),r=u(r,n,i,o,e[13],2850285829,5),o=u(o,r,n,i,e[2],4243563512,9),i=u(i,o,r,n,e[7],1735328473,14),r=d(r,n=u(n,i,o,r,e[12],2368359562,20),i,o,e[5],4294588738,4),o=d(o,r,n,i,e[8],2272392833,11),i=d(i,o,r,n,e[11],1839030562,16),n=d(n,i,o,r,e[14],4259657740,23),r=d(r,n,i,o,e[1],2763975236,4),o=d(o,r,n,i,e[4],1272893353,11),i=d(i,o,r,n,e[7],4139469664,16),n=d(n,i,o,r,e[10],3200236656,23),r=d(r,n,i,o,e[13],681279174,4),o=d(o,r,n,i,e[0],3936430074,11),i=d(i,o,r,n,e[3],3572445317,16),n=d(n,i,o,r,e[6],76029189,23),r=d(r,n,i,o,e[9],3654602809,4),o=d(o,r,n,i,e[12],3873151461,11),i=d(i,o,r,n,e[15],530742520,16),r=h(r,n=d(n,i,o,r,e[2],3299628645,23),i,o,e[0],4096336452,6),o=h(o,r,n,i,e[7],1126891415,10),i=h(i,o,r,n,e[14],2878612391,15),n=h(n,i,o,r,e[5],4237533241,21),r=h(r,n,i,o,e[12],1700485571,6),o=h(o,r,n,i,e[3],2399980690,10),i=h(i,o,r,n,e[10],4293915773,15),n=h(n,i,o,r,e[1],2240044497,21),r=h(r,n,i,o,e[8],1873313359,6),o=h(o,r,n,i,e[15],4264355552,10),i=h(i,o,r,n,e[6],2734768916,15),n=h(n,i,o,r,e[13],1309151649,21),r=h(r,n,i,o,e[4],4149444226,6),o=h(o,r,n,i,e[11],3174756917,10),i=h(i,o,r,n,e[2],718787259,15),n=h(n,i,o,r,e[9],3951481745,21),this._a=this._a+r|0,this._b=this._b+n|0,this._c=this._c+i|0,this._d=this._d+o|0},s.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=o.allocUnsafe(16);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e},e.exports=s},9685:(e,t,r)=>{!function(){var t=r(9799),n=r(7821).utf8,i=r(2311),o=r(7821).bin,a=function(e,r){e.constructor==String?e=r&&"binary"===r.encoding?o.stringToBytes(e):n.stringToBytes(e):i(e)?e=Array.prototype.slice.call(e,0):Array.isArray(e)||e.constructor===Uint8Array||(e=e.toString());for(var s=t.bytesToWords(e),c=8*e.length,l=1732584193,u=-271733879,d=-1732584194,h=271733878,f=0;f>>24)|4278255360&(s[f]<<24|s[f]>>>8);s[c>>>5]|=128<>>9<<4)]=c;var p=a._ff,m=a._gg,g=a._hh,v=a._ii;for(f=0;f>>0,u=u+b>>>0,d=d+w>>>0,h=h+x>>>0}return t.endian([l,u,d,h])};a._ff=function(e,t,r,n,i,o,a){var s=e+(t&r|~t&n)+(i>>>0)+a;return(s<>>32-o)+t},a._gg=function(e,t,r,n,i,o,a){var s=e+(t&n|r&~n)+(i>>>0)+a;return(s<>>32-o)+t},a._hh=function(e,t,r,n,i,o,a){var s=e+(t^r^n)+(i>>>0)+a;return(s<>>32-o)+t},a._ii=function(e,t,r,n,i,o,a){var s=e+(r^(t|~n))+(i>>>0)+a;return(s<>>32-o)+t},a._blocksize=16,a._digestsize=16,e.exports=function(e,r){if(void 0===e||null===e)throw new Error("Illegal argument "+e);var n=t.wordsToBytes(a(e,r));return r&&r.asBytes?n:r&&r.asString?o.bytesToString(n):t.bytesToHex(n)}}()},9961:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>o});var n=Number.isNaN||function(e){return"number"===typeof e&&e!==e};function i(e,t){if(e.length!==t.length)return!1;for(var r=0;r{function t(e,t){if(!e)throw new Error(t||"Assertion failed")}e.exports=t,t.equal=function(e,t,r){if(e!=t)throw new Error(r||"Assertion failed: "+e+" != "+t)}},5659:(e,t)=>{"use strict";var r=t;function n(e){return 1===e.length?"0"+e:e}function i(e){for(var t="",r=0;r>8,a=255&i;o?r.push(o,a):r.push(a)}return r},r.zero2=n,r.toHex=i,r.encode=function(e,t){return"hex"===t?i(e):e}},2329:(e,t,r)=>{"use strict";var n=function(){if("undefined"!==typeof self)return self;if("undefined"!==typeof window)return window;if("undefined"!==typeof r.g)return r.g;throw new Error("unable to locate global object")}();e.exports=t=n.fetch,n.fetch&&(t.default=n.fetch.bind(n)),t.Headers=n.Headers,t.Request=n.Request,t.Response=n.Response},5199:function(e,t){var r,n,i;n=[],r=function e(){"use strict";var t="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==t?t:{},r=!t.document&&!!t.postMessage,n=t.IS_PAPA_WORKER||!1,i={},o=0,a={parse:function(r,n){var s=(n=n||{}).dynamicTyping||!1;if(x(s)&&(n.dynamicTypingFunction=s,s={}),n.dynamicTyping=s,n.transform=!!x(n.transform)&&n.transform,n.worker&&a.WORKERS_SUPPORTED){var c=function(){if(!a.WORKERS_SUPPORTED)return!1;var r,n,s=(r=t.URL||t.webkitURL||null,n=e.toString(),a.BLOB_URL||(a.BLOB_URL=r.createObjectURL(new Blob(["var global = (function() { if (typeof self !== 'undefined') { return self; } if (typeof window !== 'undefined') { return window; } if (typeof global !== 'undefined') { return global; } return {}; })(); global.IS_PAPA_WORKER=true; ","(",n,")();"],{type:"text/javascript"})))),c=new t.Worker(s);return c.onmessage=g,c.id=o++,i[c.id]=c}();return c.userStep=n.step,c.userChunk=n.chunk,c.userComplete=n.complete,c.userError=n.error,n.step=x(n.step),n.chunk=x(n.chunk),n.complete=x(n.complete),n.error=x(n.error),delete n.worker,void c.postMessage({input:r,config:n,workerId:c.id})}var f=null;return a.NODE_STREAM_INPUT,"string"==typeof r?(r=function(e){return 65279===e.charCodeAt(0)?e.slice(1):e}(r),f=n.download?new l(n):new d(n)):!0===r.readable&&x(r.read)&&x(r.on)?f=new h(n):(t.File&&r instanceof File||r instanceof Object)&&(f=new u(n)),f.stream(r)},unparse:function(e,t){var r=!1,n=!0,i=",",o="\r\n",s='"',c=s+s,l=!1,u=null,d=!1;!function(){if("object"==typeof t){if("string"!=typeof t.delimiter||a.BAD_DELIMITERS.filter((function(e){return-1!==t.delimiter.indexOf(e)})).length||(i=t.delimiter),("boolean"==typeof t.quotes||"function"==typeof t.quotes||Array.isArray(t.quotes))&&(r=t.quotes),"boolean"!=typeof t.skipEmptyLines&&"string"!=typeof t.skipEmptyLines||(l=t.skipEmptyLines),"string"==typeof t.newline&&(o=t.newline),"string"==typeof t.quoteChar&&(s=t.quoteChar),"boolean"==typeof t.header&&(n=t.header),Array.isArray(t.columns)){if(0===t.columns.length)throw new Error("Option columns is empty");u=t.columns}void 0!==t.escapeChar&&(c=t.escapeChar+s),("boolean"==typeof t.escapeFormulae||t.escapeFormulae instanceof RegExp)&&(d=t.escapeFormulae instanceof RegExp?t.escapeFormulae:/^[=+\-@\t\r].*$/)}}();var h=new RegExp(p(s),"g");if("string"==typeof e&&(e=JSON.parse(e)),Array.isArray(e)){if(!e.length||Array.isArray(e[0]))return f(null,e,l);if("object"==typeof e[0])return f(u||Object.keys(e[0]),e,l)}else if("object"==typeof e)return"string"==typeof e.data&&(e.data=JSON.parse(e.data)),Array.isArray(e.data)&&(e.fields||(e.fields=e.meta&&e.meta.fields||u),e.fields||(e.fields=Array.isArray(e.data[0])?e.fields:"object"==typeof e.data[0]?Object.keys(e.data[0]):[]),Array.isArray(e.data[0])||"object"==typeof e.data[0]||(e.data=[e.data])),f(e.fields||[],e.data||[],l);throw new Error("Unable to serialize unrecognized input");function f(e,t,r){var a="";"string"==typeof e&&(e=JSON.parse(e)),"string"==typeof t&&(t=JSON.parse(t));var s=Array.isArray(e)&&0=this._config.preview;if(n)t.postMessage({results:s,workerId:a.WORKER_ID,finished:l});else if(x(this._config.chunk)&&!r){if(this._config.chunk(s,this._handle),this._handle.paused()||this._handle.aborted())return void(this._halted=!0);s=void 0,this._completeResults=void 0}return this._config.step||this._config.chunk||(this._completeResults.data=this._completeResults.data.concat(s.data),this._completeResults.errors=this._completeResults.errors.concat(s.errors),this._completeResults.meta=s.meta),this._completed||!l||!x(this._config.complete)||s&&s.meta.aborted||(this._config.complete(this._completeResults,this._input),this._completed=!0),l||s&&s.meta.paused||this._nextChunk(),s}this._halted=!0},this._sendError=function(e){x(this._config.error)?this._config.error(e):n&&this._config.error&&t.postMessage({workerId:a.WORKER_ID,error:e,finished:!1})}}function l(e){var t;(e=e||{}).chunkSize||(e.chunkSize=a.RemoteChunkSize),c.call(this,e),this._nextChunk=r?function(){this._readChunk(),this._chunkLoaded()}:function(){this._readChunk()},this.stream=function(e){this._input=e,this._nextChunk()},this._readChunk=function(){if(this._finished)this._chunkLoaded();else{if(t=new XMLHttpRequest,this._config.withCredentials&&(t.withCredentials=this._config.withCredentials),r||(t.onload=w(this._chunkLoaded,this),t.onerror=w(this._chunkError,this)),t.open(this._config.downloadRequestBody?"POST":"GET",this._input,!r),this._config.downloadRequestHeaders){var e=this._config.downloadRequestHeaders;for(var n in e)t.setRequestHeader(n,e[n])}if(this._config.chunkSize){var i=this._start+this._config.chunkSize-1;t.setRequestHeader("Range","bytes="+this._start+"-"+i)}try{t.send(this._config.downloadRequestBody)}catch(e){this._chunkError(e.message)}r&&0===t.status&&this._chunkError()}},this._chunkLoaded=function(){4===t.readyState&&(t.status<200||400<=t.status?this._chunkError():(this._start+=this._config.chunkSize?this._config.chunkSize:t.responseText.length,this._finished=!this._config.chunkSize||this._start>=function(e){var t=e.getResponseHeader("Content-Range");return null===t?-1:parseInt(t.substring(t.lastIndexOf("/")+1))}(t),this.parseChunk(t.responseText)))},this._chunkError=function(e){var r=t.statusText||e;this._sendError(new Error(r))}}function u(e){var t,r;(e=e||{}).chunkSize||(e.chunkSize=a.LocalChunkSize),c.call(this,e);var n="undefined"!=typeof FileReader;this.stream=function(e){this._input=e,r=e.slice||e.webkitSlice||e.mozSlice,n?((t=new FileReader).onload=w(this._chunkLoaded,this),t.onerror=w(this._chunkError,this)):t=new FileReaderSync,this._nextChunk()},this._nextChunk=function(){this._finished||this._config.preview&&!(this._rowCount=this._input.size,this.parseChunk(e.target.result)},this._chunkError=function(){this._sendError(t.error)}}function d(e){var t;c.call(this,e=e||{}),this.stream=function(e){return t=e,this._nextChunk()},this._nextChunk=function(){if(!this._finished){var e,r=this._config.chunkSize;return r?(e=t.substring(0,r),t=t.substring(r)):(e=t,t=""),this._finished=!t,this.parseChunk(e)}}}function h(e){c.call(this,e=e||{});var t=[],r=!0,n=!1;this.pause=function(){c.prototype.pause.apply(this,arguments),this._input.pause()},this.resume=function(){c.prototype.resume.apply(this,arguments),this._input.resume()},this.stream=function(e){this._input=e,this._input.on("data",this._streamData),this._input.on("end",this._streamEnd),this._input.on("error",this._streamError)},this._checkIsFinished=function(){n&&1===t.length&&(this._finished=!0)},this._nextChunk=function(){this._checkIsFinished(),t.length?this.parseChunk(t.shift()):r=!0},this._streamData=w((function(e){try{t.push("string"==typeof e?e:e.toString(this._config.encoding)),r&&(r=!1,this._checkIsFinished(),this.parseChunk(t.shift()))}catch(e){this._streamError(e)}}),this),this._streamError=w((function(e){this._streamCleanUp(),this._sendError(e)}),this),this._streamEnd=w((function(){this._streamCleanUp(),n=!0,this._streamData("")}),this),this._streamCleanUp=w((function(){this._input.removeListener("data",this._streamData),this._input.removeListener("end",this._streamEnd),this._input.removeListener("error",this._streamError)}),this)}function f(e){var t,r,n,i=Math.pow(2,53),o=-i,s=/^\s*-?(\d+\.?|\.\d+|\d+\.\d+)([eE][-+]?\d+)?\s*$/,c=/^((\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z)))$/,l=this,u=0,d=0,h=!1,f=!1,g=[],v={data:[],errors:[],meta:{}};if(x(e.step)){var y=e.step;e.step=function(t){if(v=t,S())_();else{if(_(),0===v.data.length)return;u+=t.data.length,e.preview&&u>e.preview?r.abort():(v.data=v.data[0],y(v,l))}}}function w(t){return"greedy"===e.skipEmptyLines?""===t.join("").trim():1===t.length&&0===t[0].length}function _(){return v&&n&&(E("Delimiter","UndetectableDelimiter","Unable to auto-detect delimiting character; defaulted to '"+a.DefaultDelimiter+"'"),n=!1),e.skipEmptyLines&&(v.data=v.data.filter((function(e){return!w(e)}))),S()&&function(){if(v)if(Array.isArray(v.data[0])){for(var t=0;S()&&t=g.length?"__parsed_extra":g[n]),e.transform&&(a=e.transform(a,o)),a=k(o,a),"__parsed_extra"===o?(i[o]=i[o]||[],i[o].push(a)):i[o]=a}return e.header&&(n>g.length?E("FieldMismatch","TooManyFields","Too many fields: expected "+g.length+" fields but parsed "+n,d+r):n=n.length/2?"\r\n":"\r"}(i,c)),n=!1,e.delimiter)x(e.delimiter)&&(e.delimiter=e.delimiter(i),v.meta.delimiter=e.delimiter);else{var l=function(t,r,n,i,o){var s,c,l,u;o=o||[",","\t","|",";",a.RECORD_SEP,a.UNIT_SEP];for(var d=0;d=s)return K(!0)}else for(B=u,u++;;){if(-1===(B=a.indexOf(t,B+1)))return f||_.push({type:"Quotes",code:"MissingQuotes",message:"Quoted field unterminated",row:w.length,index:u}),V();if(B===m-1)return V(a.substring(u,B).replace(z,t));if(t!==l||a[B+1]!==l){if(t===l||0===B||a[B-1]!==l){-1!==N&&N=s)return K(!0);break}_.push({type:"Quotes",code:"InvalidQuotes",message:"Trailing quote on quoted field is malformed",row:w.length,index:u}),B++}}else B++}return V();function $(e){w.push(e),k=u}function H(e){var t=0;if(-1!==e){var r=a.substring(B+1,e);r&&""===r.trim()&&(t=r.length)}return t}function V(e){return f||(void 0===e&&(e=a.substring(u)),S.push(e),u=m,$(S),b&&W()),K()}function q(e){u=e,$(S),S=[],D=a.indexOf(n,u)}function K(e){return{data:w,errors:_,meta:{delimiter:r,linebreak:n,aborted:d,truncated:!!e,cursor:k+(h||0)}}}function W(){o(K()),w=[],_=[]}},this.abort=function(){d=!0},this.getCharIndex=function(){return u}}function g(e){var t=e.data,r=i[t.workerId],n=!1;if(t.error)r.userError(t.error,t.file);else if(t.results&&t.results.data){var o={abort:function(){n=!0,v(t.workerId,{data:[],errors:[],meta:{aborted:!0}})},pause:y,resume:y};if(x(r.userStep)){for(var a=0;a{t.pbkdf2=r(8998),t.pbkdf2Sync=r(8886)},8998:(e,t,r)=>{var n,i,o=r(6293).Buffer,a=r(9612),s=r(905),c=r(8886),l=r(5825),u=r.g.crypto&&r.g.crypto.subtle,d={sha:"SHA-1","sha-1":"SHA-1",sha1:"SHA-1",sha256:"SHA-256","sha-256":"SHA-256",sha384:"SHA-384","sha-384":"SHA-384","sha-512":"SHA-512",sha512:"SHA-512"},h=[];function f(){return i||(i=r.g.process&&r.g.process.nextTick?r.g.process.nextTick:r.g.queueMicrotask?r.g.queueMicrotask:r.g.setImmediate?r.g.setImmediate:r.g.setTimeout)}function p(e,t,r,n,i){return u.importKey("raw",e,{name:"PBKDF2"},!1,["deriveBits"]).then((function(e){return u.deriveBits({name:"PBKDF2",salt:t,iterations:r,hash:{name:i}},e,n<<3)})).then((function(e){return o.from(e)}))}e.exports=function(e,t,i,m,g,v){"function"===typeof g&&(v=g,g=void 0);var y=d[(g=g||"sha1").toLowerCase()];if(y&&"function"===typeof r.g.Promise){if(a(i,m),e=l(e,s,"Password"),t=l(t,s,"Salt"),"function"!==typeof v)throw new Error("No callback provided to pbkdf2");!function(e,t){e.then((function(e){f()((function(){t(null,e)}))}),(function(e){f()((function(){t(e)}))}))}(function(e){if(r.g.process&&!r.g.process.browser)return Promise.resolve(!1);if(!u||!u.importKey||!u.deriveBits)return Promise.resolve(!1);if(void 0!==h[e])return h[e];var t=p(n=n||o.alloc(8),n,10,128,e).then((function(){return!0})).catch((function(){return!1}));return h[e]=t,t}(y).then((function(r){return r?p(e,t,i,m,y):c(e,t,i,m,g)})),v)}else f()((function(){var r;try{r=c(e,t,i,m,g)}catch(n){return v(n)}v(null,r)}))}},905:(e,t,r)=>{var n,i=r(5469);if(r.g.process&&r.g.process.browser)n="utf-8";else if(r.g.process&&r.g.process.version){n=parseInt(i.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary"}else n="utf-8";e.exports=n},9612:e=>{var t=Math.pow(2,30)-1;e.exports=function(e,r){if("number"!==typeof e)throw new TypeError("Iterations not a number");if(e<0)throw new TypeError("Bad iterations");if("number"!==typeof r)throw new TypeError("Key length not a number");if(r<0||r>t||r!==r)throw new TypeError("Bad key length")}},8886:(e,t,r)=>{var n=r(8533),i=r(4805),o=r(6478),a=r(6293).Buffer,s=r(9612),c=r(905),l=r(5825),u=a.alloc(128),d={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function h(e,t,r){var s=function(e){function t(t){return o(e).update(t).digest()}function r(e){return(new i).update(e).digest()}return"rmd160"===e||"ripemd160"===e?r:"md5"===e?n:t}(e),c="sha512"===e||"sha384"===e?128:64;t.length>c?t=s(t):t.length{var n=r(6293).Buffer;e.exports=function(e,t,r){if(n.isBuffer(e))return e;if("string"===typeof e)return n.from(e,t);if(ArrayBuffer.isView(e))return n.from(e.buffer);throw new TypeError(r+" must be a string, a Buffer, a typed array or a DataView")}},9095:function(e){e.exports=function(){var e=[],t=[],r={},n={},i={};function o(e){return"string"===typeof e?new RegExp("^"+e+"$","i"):e}function a(e,t){return e===t?t:e===e.toLowerCase()?t.toLowerCase():e===e.toUpperCase()?t.toUpperCase():e[0]===e[0].toUpperCase()?t.charAt(0).toUpperCase()+t.substr(1).toLowerCase():t.toLowerCase()}function s(e,t){return e.replace(/\$(\d{1,2})/g,(function(e,r){return t[r]||""}))}function c(e,t){return e.replace(t[0],(function(r,n){var i=s(t[1],arguments);return a(""===r?e[n-1]:r,i)}))}function l(e,t,n){if(!e.length||r.hasOwnProperty(e))return t;for(var i=n.length;i--;){var o=n[i];if(o[0].test(t))return c(t,o)}return t}function u(e,t,r){return function(n){var i=n.toLowerCase();return t.hasOwnProperty(i)?a(n,i):e.hasOwnProperty(i)?a(n,e[i]):l(i,n,r)}}function d(e,t,r,n){return function(n){var i=n.toLowerCase();return!!t.hasOwnProperty(i)||!e.hasOwnProperty(i)&&l(i,i,r)===i}}function h(e,t,r){return(r?t+" ":"")+(1===t?h.singular(e):h.plural(e))}return h.plural=u(i,n,e),h.isPlural=d(i,n,e),h.singular=u(n,i,t),h.isSingular=d(n,i,t),h.addPluralRule=function(t,r){e.push([o(t),r])},h.addSingularRule=function(e,r){t.push([o(e),r])},h.addUncountableRule=function(e){"string"!==typeof e?(h.addPluralRule(e,"$0"),h.addSingularRule(e,"$0")):r[e.toLowerCase()]=!0},h.addIrregularRule=function(e,t){t=t.toLowerCase(),e=e.toLowerCase(),i[e]=t,n[t]=e},[["I","we"],["me","us"],["he","they"],["she","they"],["them","them"],["myself","ourselves"],["yourself","yourselves"],["itself","themselves"],["herself","themselves"],["himself","themselves"],["themself","themselves"],["is","are"],["was","were"],["has","have"],["this","these"],["that","those"],["echo","echoes"],["dingo","dingoes"],["volcano","volcanoes"],["tornado","tornadoes"],["torpedo","torpedoes"],["genus","genera"],["viscus","viscera"],["stigma","stigmata"],["stoma","stomata"],["dogma","dogmata"],["lemma","lemmata"],["schema","schemata"],["anathema","anathemata"],["ox","oxen"],["axe","axes"],["die","dice"],["yes","yeses"],["foot","feet"],["eave","eaves"],["goose","geese"],["tooth","teeth"],["quiz","quizzes"],["human","humans"],["proof","proofs"],["carve","carves"],["valve","valves"],["looey","looies"],["thief","thieves"],["groove","grooves"],["pickaxe","pickaxes"],["passerby","passersby"]].forEach((function(e){return h.addIrregularRule(e[0],e[1])})),[[/s?$/i,"s"],[/[^\u0000-\u007F]$/i,"$0"],[/([^aeiou]ese)$/i,"$1"],[/(ax|test)is$/i,"$1es"],[/(alias|[^aou]us|t[lm]as|gas|ris)$/i,"$1es"],[/(e[mn]u)s?$/i,"$1s"],[/([^l]ias|[aeiou]las|[ejzr]as|[iu]am)$/i,"$1"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1i"],[/(alumn|alg|vertebr)(?:a|ae)$/i,"$1ae"],[/(seraph|cherub)(?:im)?$/i,"$1im"],[/(her|at|gr)o$/i,"$1oes"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|automat|quor)(?:a|um)$/i,"$1a"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)(?:a|on)$/i,"$1a"],[/sis$/i,"ses"],[/(?:(kni|wi|li)fe|(ar|l|ea|eo|oa|hoo)f)$/i,"$1$2ves"],[/([^aeiouy]|qu)y$/i,"$1ies"],[/([^ch][ieo][ln])ey$/i,"$1ies"],[/(x|ch|ss|sh|zz)$/i,"$1es"],[/(matr|cod|mur|sil|vert|ind|append)(?:ix|ex)$/i,"$1ices"],[/\b((?:tit)?m|l)(?:ice|ouse)$/i,"$1ice"],[/(pe)(?:rson|ople)$/i,"$1ople"],[/(child)(?:ren)?$/i,"$1ren"],[/eaux$/i,"$0"],[/m[ae]n$/i,"men"],["thou","you"]].forEach((function(e){return h.addPluralRule(e[0],e[1])})),[[/s$/i,""],[/(ss)$/i,"$1"],[/(wi|kni|(?:after|half|high|low|mid|non|night|[^\w]|^)li)ves$/i,"$1fe"],[/(ar|(?:wo|[ae])l|[eo][ao])ves$/i,"$1f"],[/ies$/i,"y"],[/\b([pl]|zomb|(?:neck|cross)?t|coll|faer|food|gen|goon|group|lass|talk|goal|cut)ies$/i,"$1ie"],[/\b(mon|smil)ies$/i,"$1ey"],[/\b((?:tit)?m|l)ice$/i,"$1ouse"],[/(seraph|cherub)im$/i,"$1"],[/(x|ch|ss|sh|zz|tto|go|cho|alias|[^aou]us|t[lm]as|gas|(?:her|at|gr)o|[aeiou]ris)(?:es)?$/i,"$1"],[/(analy|diagno|parenthe|progno|synop|the|empha|cri|ne)(?:sis|ses)$/i,"$1sis"],[/(movie|twelve|abuse|e[mn]u)s$/i,"$1"],[/(test)(?:is|es)$/i,"$1is"],[/(alumn|syllab|vir|radi|nucle|fung|cact|stimul|termin|bacill|foc|uter|loc|strat)(?:us|i)$/i,"$1us"],[/(agend|addend|millenni|dat|extrem|bacteri|desiderat|strat|candelabr|errat|ov|symposi|curricul|quor)a$/i,"$1um"],[/(apheli|hyperbat|periheli|asyndet|noumen|phenomen|criteri|organ|prolegomen|hedr|automat)a$/i,"$1on"],[/(alumn|alg|vertebr)ae$/i,"$1a"],[/(cod|mur|sil|vert|ind)ices$/i,"$1ex"],[/(matr|append)ices$/i,"$1ix"],[/(pe)(rson|ople)$/i,"$1rson"],[/(child)ren$/i,"$1"],[/(eau)x?$/i,"$1"],[/men$/i,"man"]].forEach((function(e){return h.addSingularRule(e[0],e[1])})),["adulthood","advice","agenda","aid","aircraft","alcohol","ammo","analytics","anime","athletics","audio","bison","blood","bream","buffalo","butter","carp","cash","chassis","chess","clothing","cod","commerce","cooperation","corps","debris","diabetes","digestion","elk","energy","equipment","excretion","expertise","firmware","flounder","fun","gallows","garbage","graffiti","hardware","headquarters","health","herpes","highjinks","homework","housework","information","jeans","justice","kudos","labour","literature","machinery","mackerel","mail","media","mews","moose","music","mud","manga","news","only","personnel","pike","plankton","pliers","police","pollution","premises","rain","research","rice","salmon","scissors","series","sewage","shambles","shrimp","software","species","staff","swine","tennis","traffic","transportation","trout","tuna","wealth","welfare","whiting","wildebeest","wildlife","you",/pok[e\xe9]mon$/i,/[^aeiou]ese$/i,/deer$/i,/fish$/i,/measles$/i,/o[iu]s$/i,/pox$/i,/sheep$/i].forEach(h.addUncountableRule),h}()},5469:e=>{var t,r,n=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function a(e){if(t===setTimeout)return setTimeout(e,0);if((t===i||!t)&&setTimeout)return t=setTimeout,setTimeout(e,0);try{return t(e,0)}catch(r){try{return t.call(null,e,0)}catch(r){return t.call(this,e,0)}}}!function(){try{t="function"===typeof setTimeout?setTimeout:i}catch(e){t=i}try{r="function"===typeof clearTimeout?clearTimeout:o}catch(e){r=o}}();var s,c=[],l=!1,u=-1;function d(){l&&s&&(l=!1,s.length?c=s.concat(c):u=-1,c.length&&h())}function h(){if(!l){var e=a(d);l=!0;for(var t=c.length;t;){for(s=c,c=[];++u1)for(var r=1;r{"use strict";var n=r(7581),i=r(3392),o=Object.prototype.hasOwnProperty;function a(e){return e&&"EPROMISERETRY"===e.code&&o.call(e,"retried")}e.exports=function(e,t){var r,o;return"object"===typeof e&&"function"===typeof t&&(r=t,t=e,e=r),o=i.operation(t),new Promise((function(t,r){o.attempt((function(i){Promise.resolve().then((function(){return e((function(e){throw a(e)&&(e=e.retried),n(new Error("Retrying"),"EPROMISERETRY",{retried:e})}),i)})).then(t,(function(e){a(e)&&(e=e.retried,o.retry(e||new Error))||r(e)}))}))}))}},2233:(e,t,r)=>{"use strict";var n=r(1681);function i(){}function o(){}o.resetWarningCache=i,e.exports=function(){function e(e,t,r,i,o,a){if(a!==n){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var r={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:i};return r.PropTypes=r,r}},8795:(e,t,r)=>{e.exports=r(2233)()},1681:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},3330:(e,t)=>{var r,n,i,o=function(){var e=function(e,t){var r=e,n=o[t],i=null,a=0,s=null,c=[],l={},u=function(e,t){i=function(e){for(var t=new Array(e),r=0;r=7&&m(e),null==s&&(s=A(r,n,c)),k(s,t)},d=function(e,t){for(var r=-1;r<=7;r+=1)if(!(e+r<=-1||a<=e+r))for(var n=-1;n<=7;n+=1)t+n<=-1||a<=t+n||(i[e+r][t+n]=0<=r&&r<=6&&(0==n||6==n)||0<=n&&n<=6&&(0==r||6==r)||2<=r&&r<=4&&2<=n&&n<=4)},h=function(){for(var e=8;e>n&1);i[Math.floor(n/3)][n%3+a-8-3]=o}for(n=0;n<18;n+=1){o=!e&&1==(t>>n&1);i[n%3+a-8-3][Math.floor(n/3)]=o}},S=function(e,t){for(var r=n<<3|t,o=p.getBCHTypeInfo(r),s=0;s<15;s+=1){var c=!e&&1==(o>>s&1);s<6?i[s][8]=c:s<8?i[s+1][8]=c:i[a-15+s][8]=c}for(s=0;s<15;s+=1){c=!e&&1==(o>>s&1);s<8?i[8][a-s-1]=c:s<9?i[8][15-s-1+1]=c:i[8][15-s-1]=c}i[a-8][8]=!e},k=function(e,t){for(var r=-1,n=a-1,o=7,s=0,c=p.getMaskFunction(t),l=a-1;l>0;l-=2)for(6==l&&(l-=1);;){for(var u=0;u<2;u+=1)if(null==i[n][l-u]){var d=!1;s>>o&1)),c(n,l-u)&&(d=!d),i[n][l-u]=d,-1==(o-=1)&&(s+=1,o=7)}if((n+=r)<0||a<=n){n-=r,r=-r;break}}},A=function(e,t,r){for(var n=v.getRSBlocks(e,t),i=y(),o=0;o8*s)throw"code length overflow. ("+i.getLengthInBits()+">"+8*s+")";for(i.getLengthInBits()+4<=8*s&&i.put(0,4);i.getLengthInBits()%8!=0;)i.putBit(!1);for(;!(i.getLengthInBits()>=8*s)&&(i.put(236,8),!(i.getLengthInBits()>=8*s));)i.put(17,8);return function(e,t){for(var r=0,n=0,i=0,o=new Array(t.length),a=new Array(t.length),s=0;s=0?h.getAt(f):0}}var m=0;for(u=0;un)&&(e=n,t=r)}return t}())},l.createTableTag=function(e,t){e=e||2;var r="";r+='";for(var i=0;i';r+=""}return r+="",r+="
"},l.createSvgTag=function(e,t,r,n){var i={};"object"==typeof arguments[0]&&(e=(i=arguments[0]).cellSize,t=i.margin,r=i.alt,n=i.title),e=e||2,t="undefined"==typeof t?4*e:t,(r="string"===typeof r?{text:r}:r||{}).text=r.text||null,r.id=r.text?r.id||"qrcode-description":null,(n="string"===typeof n?{text:n}:n||{}).text=n.text||null,n.id=n.text?n.id||"qrcode-title":null;var o,a,s,c,u=l.getModuleCount()*e+2*t,d="";for(c="l"+e+",0 0,"+e+" -"+e+",0 0,-"+e+"z ",d+=''+P(n.text)+"":"",d+=r.text?''+P(r.text)+"":"",d+='',d+='":t+=">";break;case"&":t+="&";break;case'"':t+=""";break;default:t+=n}}return t};return l.createASCII=function(e,t){if((e=e||1)<2)return function(e){e="undefined"==typeof e?2:e;var t,r,n,i,o,a=1*l.getModuleCount()+2*e,s=e,c=a-e,u={"\u2588\u2588":"\u2588","\u2588 ":"\u2580"," \u2588":"\u2584"," ":" "},d={"\u2588\u2588":"\u2580","\u2588 ":"\u2580"," \u2588":" "," ":" "},h="";for(t=0;t=c?d[o]:u[o];h+="\n"}return a%2&&e>0?h.substring(0,h.length-a-1)+Array(a+1).join("\u2580"):h.substring(0,h.length-1)}(t);e-=1,t="undefined"==typeof t?2*e:t;var r,n,i,o,a=l.getModuleCount()*e+2*t,s=t,c=a-t,u=Array(e+1).join("\u2588\u2588"),d=Array(e+1).join(" "),h="",f="";for(r=0;r>>8),t.push(255&a)):t.push(n)}}return t}};var t=1,r=2,n=4,i=8,o={L:1,M:0,Q:3,H:2},a=0,s=1,c=2,l=3,u=4,d=5,h=6,f=7,p=function(){var e=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],o=1335,p=7973,v={},y=function(e){for(var t=0;0!=e;)t+=1,e>>>=1;return t};return v.getBCHTypeInfo=function(e){for(var t=e<<10;y(t)-y(o)>=0;)t^=o<=0;)t^=p<5&&(r+=3+o-5)}for(n=0;n=256;)t-=255;return e[t]}};return n}();function g(e,t){if("undefined"==typeof e.length)throw e.length+"/"+t;var r=function(){for(var r=0;r>>7-t%8&1)},put:function(e,t){for(var n=0;n>>t-n-1&1))},getLengthInBits:function(){return t},putBit:function(r){var n=Math.floor(t/8);e.length<=n&&e.push(0),r&&(e[n]|=128>>>t%8),t+=1}};return r},b=function(e){var r=t,n=e,i={getMode:function(){return r},getLength:function(e){return n.length},write:function(e){for(var t=n,r=0;r+2>>8&255)+(255&n),e.put(n,13),r+=2}if(r>>8)},writeBytes:function(e,r,n){r=r||0,n=n||e.length;for(var i=0;i0&&(t+=","),t+=e[r];return t+="]"}};return t},k=function(e){var t=e,r=0,n=0,i=0,o={read:function(){for(;i<8;){if(r>=t.length){if(0==i)return-1;throw"unexpected end of file./"+i}var e=t.charAt(r);if(r+=1,"="==e)return i=0,-1;e.match(/^\s$/)||(n=n<<6|a(e.charCodeAt(0)),i+=6)}var o=n>>>i-8&255;return i-=8,o}},a=function(e){if(65<=e&&e<=90)return e-65;if(97<=e&&e<=122)return e-97+26;if(48<=e&&e<=57)return e-48+52;if(43==e)return 62;if(47==e)return 63;throw"c:"+e};return o},E=function(e,t,r){for(var n=function(e,t){var r=e,n=t,i=new Array(e*t),o={setPixel:function(e,t,n){i[t*r+e]=n},write:function(e){e.writeString("GIF87a"),e.writeShort(r),e.writeShort(n),e.writeByte(128),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(0),e.writeByte(255),e.writeByte(255),e.writeByte(255),e.writeString(","),e.writeShort(0),e.writeShort(0),e.writeShort(r),e.writeShort(n),e.writeByte(0);var t=a(2);e.writeByte(2);for(var i=0;t.length-i>255;)e.writeByte(255),e.writeBytes(t,i,255),i+=255;e.writeByte(t.length-i),e.writeBytes(t,i,t.length-i),e.writeByte(0),e.writeString(";")}},a=function(e){for(var t=1<>>i!=0)throw"length over";for(;r+i>=8;)t.writeByte(255&(e<>>=8-r,n=0,r=0;n|=e<0&&t.writeByte(n)}}}(c);l.write(t,n);var u=0,d=String.fromCharCode(i[u]);for(u+=1;u=6;)o(e>>>t-6),t-=6},i.flush=function(){if(t>0&&(o(e<<6-t),e=0,t=0),r%3!=0)for(var i=3-r%3,a=0;a>6,128|63&n):n<55296||n>=57344?t.push(224|n>>12,128|n>>6&63,128|63&n):(r++,n=65536+((1023&n)<<10|1023&e.charCodeAt(r)),t.push(240|n>>18,128|n>>12&63,128|n>>6&63,128|63&n))}return t}(e)},n=[],void 0===(i="function"===typeof(r=function(){return o})?r.apply(t,n):r)||(e.exports=i)},557:(e,t,r)=>{"use strict";var n=r(9652),i=r(8586);function o(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,r=1;r",t=le.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,r,n){MSApp.execUnsafeLocalFunction((function(){return ue(e,t)}))}:ue);function he(e,t){if(t){var r=e.firstChild;if(r&&r===e.lastChild&&3===r.nodeType)return void(r.nodeValue=t)}e.textContent=t}var fe={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},pe=["Webkit","ms","Moz","O"];function me(e,t,r){return null==t||"boolean"===typeof t||""===t?"":r||"number"!==typeof t||0===t||fe.hasOwnProperty(e)&&fe[e]?(""+t).trim():t+"px"}function ge(e,t){for(var r in e=e.style,t)if(t.hasOwnProperty(r)){var n=0===r.indexOf("--"),i=me(r,t[r],n);"float"===r&&(r="cssFloat"),n?e.setProperty(r,i):e[r]=i}}Object.keys(fe).forEach((function(e){pe.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),fe[t]=fe[e]}))}));var ve=D({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ye(e,t){if(t){if(ve[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(o(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(o(60));if("object"!==typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(o(61))}if(null!=t.style&&"object"!==typeof t.style)throw Error(o(62))}}function be(e,t){if(-1===e.indexOf("-"))return"string"===typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var we=null;function xe(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var _e=null,Se=null,ke=null;function Ee(e){if(e=bi(e)){if("function"!==typeof _e)throw Error(o(280));var t=e.stateNode;t&&(t=xi(t),_e(e.stateNode,e.type,t))}}function Ae(e){Se?ke?ke.push(e):ke=[e]:Se=e}function Pe(){if(Se){var e=Se,t=ke;if(ke=Se=null,Ee(e),t)for(e=0;e>>=0,0===e?32:31-(st(e)/ct|0)|0},st=Math.log,ct=Math.LN2;var lt=64,ut=4194304;function dt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ht(e,t){var r=e.pendingLanes;if(0===r)return 0;var n=0,i=e.suspendedLanes,o=e.pingedLanes,a=268435455&r;if(0!==a){var s=a&~i;0!==s?n=dt(s):0!==(o&=a)&&(n=dt(o))}else 0!==(a=r&~i)?n=dt(a):0!==o&&(n=dt(o));if(0===n)return 0;if(0!==t&&t!==n&&0===(t&i)&&((i=n&-n)>=(o=t&-t)||16===i&&0!==(4194240&o)))return t;if(0!==(4&n)&&(n|=16&r),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=n;0r;r++)t.push(e);return t}function vt(e,t,r){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-at(t)]=r}function yt(e,t){var r=e.entangledLanes|=t;for(e=e.entanglements;r;){var n=31-at(r),i=1<=Mr),Dr=String.fromCharCode(32),zr=!1;function Br(e,t){switch(e){case"keyup":return-1!==Rr.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Ur(e){return"object"===typeof(e=e.detail)&&"data"in e?e.data:null}var Fr=!1;var $r={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Hr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!$r[e.type]:"textarea"===t}function Vr(e,t,r,n){Ae(n),0<(t=Kn(t,"onChange")).length&&(r=new lr("onChange","change",null,r,n),e.push({event:r,listeners:t}))}var qr=null,Kr=null;function Wr(e){zn(e,0)}function Gr(e){if(W(wi(e)))return e}function Zr(e,t){if("change"===e)return t}var Yr=!1;if(u){var Xr;if(u){var Jr="oninput"in document;if(!Jr){var Qr=document.createElement("div");Qr.setAttribute("oninput","return;"),Jr="function"===typeof Qr.oninput}Xr=Jr}else Xr=!1;Yr=Xr&&(!document.documentMode||9=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=ln(n)}}function dn(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?dn(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function hn(){for(var e=window,t=G();t instanceof e.HTMLIFrameElement;){try{var r="string"===typeof t.contentWindow.location.href}catch(n){r=!1}if(!r)break;t=G((e=t.contentWindow).document)}return t}function fn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function pn(e){var t=hn(),r=e.focusedElem,n=e.selectionRange;if(t!==r&&r&&r.ownerDocument&&dn(r.ownerDocument.documentElement,r)){if(null!==n&&fn(r))if(t=n.start,void 0===(e=n.end)&&(e=t),"selectionStart"in r)r.selectionStart=t,r.selectionEnd=Math.min(e,r.value.length);else if((e=(t=r.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var i=r.textContent.length,o=Math.min(n.start,i);n=void 0===n.end?o:Math.min(n.end,i),!e.extend&&o>n&&(i=n,n=o,o=i),i=un(r,o);var a=un(r,n);i&&a&&(1!==e.rangeCount||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==a.node||e.focusOffset!==a.offset)&&((t=t.createRange()).setStart(i.node,i.offset),e.removeAllRanges(),o>n?(e.addRange(t),e.extend(a.node,a.offset)):(t.setEnd(a.node,a.offset),e.addRange(t)))}for(t=[],e=r;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"===typeof r.focus&&r.focus(),r=0;r=document.documentMode,gn=null,vn=null,yn=null,bn=!1;function wn(e,t,r){var n=r.window===r?r.document:9===r.nodeType?r:r.ownerDocument;bn||null==gn||gn!==G(n)||("selectionStart"in(n=gn)&&fn(n)?n={start:n.selectionStart,end:n.selectionEnd}:n={anchorNode:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset},yn&&cn(yn,n)||(yn=n,0<(n=Kn(vn,"onSelect")).length&&(t=new lr("onSelect","select",null,t,r),e.push({event:t,listeners:n}),t.target=gn)))}function xn(e,t){var r={};return r[e.toLowerCase()]=t.toLowerCase(),r["Webkit"+e]="webkit"+t,r["Moz"+e]="moz"+t,r}var _n={animationend:xn("Animation","AnimationEnd"),animationiteration:xn("Animation","AnimationIteration"),animationstart:xn("Animation","AnimationStart"),transitionend:xn("Transition","TransitionEnd")},Sn={},kn={};function En(e){if(Sn[e])return Sn[e];if(!_n[e])return e;var t,r=_n[e];for(t in r)if(r.hasOwnProperty(t)&&t in kn)return Sn[e]=r[t];return e}u&&(kn=document.createElement("div").style,"AnimationEvent"in window||(delete _n.animationend.animation,delete _n.animationiteration.animation,delete _n.animationstart.animation),"TransitionEvent"in window||delete _n.transitionend.transition);var An=En("animationend"),Pn=En("animationiteration"),On=En("animationstart"),Tn=En("transitionend"),Cn=new Map,jn="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Rn(e,t){Cn.set(e,t),c(t,[e])}for(var In=0;InSi||(e.current=_i[Si],_i[Si]=null,Si--)}function Ai(e,t){Si++,_i[Si]=e.current,e.current=t}var Pi={},Oi=ki(Pi),Ti=ki(!1),Ci=Pi;function ji(e,t){var r=e.type.contextTypes;if(!r)return Pi;var n=e.stateNode;if(n&&n.__reactInternalMemoizedUnmaskedChildContext===t)return n.__reactInternalMemoizedMaskedChildContext;var i,o={};for(i in r)o[i]=t[i];return n&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=o),o}function Ri(e){return null!==(e=e.childContextTypes)&&void 0!==e}function Ii(){Ei(Ti),Ei(Oi)}function Mi(e,t,r){if(Oi.current!==Pi)throw Error(o(168));Ai(Oi,t),Ai(Ti,r)}function Li(e,t,r){var n=e.stateNode;if(t=t.childContextTypes,"function"!==typeof n.getChildContext)return r;for(var i in n=n.getChildContext())if(!(i in t))throw Error(o(108,H(e)||"Unknown",i));return D({},r,n)}function Ni(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Pi,Ci=Oi.current,Ai(Oi,e),Ai(Ti,Ti.current),!0}function Di(e,t,r){var n=e.stateNode;if(!n)throw Error(o(169));r?(e=Li(e,t,Ci),n.__reactInternalMemoizedMergedChildContext=e,Ei(Ti),Ei(Oi),Ai(Oi,e)):Ei(Ti),Ai(Ti,r)}var zi=null,Bi=!1,Ui=!1;function Fi(e){null===zi?zi=[e]:zi.push(e)}function $i(){if(!Ui&&null!==zi){Ui=!0;var e=0,t=bt;try{var r=zi;for(bt=1;e>=a,i-=a,Yi=1<<32-at(t)+i|r<m?(g=d,d=null):g=d.sibling;var v=f(i,d,s[m],c);if(null===v){null===d&&(d=g);break}e&&d&&null===v.alternate&&t(i,d),o=a(v,o,m),null===u?l=v:u.sibling=v,u=v,d=g}if(m===s.length)return r(i,d),io&&Ji(i,m),l;if(null===d){for(;mg?(v=m,m=null):v=m.sibling;var b=f(i,m,y.value,l);if(null===b){null===m&&(m=v);break}e&&m&&null===b.alternate&&t(i,m),s=a(b,s,g),null===d?u=b:d.sibling=b,d=b,m=v}if(y.done)return r(i,m),io&&Ji(i,g),u;if(null===m){for(;!y.done;g++,y=c.next())null!==(y=h(i,y.value,l))&&(s=a(y,s,g),null===d?u=y:d.sibling=y,d=y);return io&&Ji(i,g),u}for(m=n(i,m);!y.done;g++,y=c.next())null!==(y=p(m,i,g,y.value,l))&&(e&&null!==y.alternate&&m.delete(null===y.key?g:y.key),s=a(y,s,g),null===d?u=y:d.sibling=y,d=y);return e&&m.forEach((function(e){return t(i,e)})),io&&Ji(i,g),u}return function e(n,o,a,c){if("object"===typeof a&&null!==a&&a.type===S&&null===a.key&&(a=a.props.children),"object"===typeof a&&null!==a){switch(a.$$typeof){case x:e:{for(var l=a.key,u=o;null!==u;){if(u.key===l){if((l=a.type)===S){if(7===u.tag){r(n,u.sibling),(o=i(u,a.props.children)).return=n,n=o;break e}}else if(u.elementType===l||"object"===typeof l&&null!==l&&l.$$typeof===R&&Zo(l)===u.type){r(n,u.sibling),(o=i(u,a.props)).ref=Wo(n,u,a),o.return=n,n=o;break e}r(n,u);break}t(n,u),u=u.sibling}a.type===S?((o=Nl(a.props.children,n.mode,c,a.key)).return=n,n=o):((c=Ll(a.type,a.key,a.props,null,n.mode,c)).ref=Wo(n,o,a),c.return=n,n=c)}return s(n);case _:e:{for(u=a.key;null!==o;){if(o.key===u){if(4===o.tag&&o.stateNode.containerInfo===a.containerInfo&&o.stateNode.implementation===a.implementation){r(n,o.sibling),(o=i(o,a.children||[])).return=n,n=o;break e}r(n,o);break}t(n,o),o=o.sibling}(o=Bl(a,n.mode,c)).return=n,n=o}return s(n);case R:return e(n,o,(u=a._init)(a._payload),c)}if(te(a))return m(n,o,a,c);if(L(a))return g(n,o,a,c);Go(n,a)}return"string"===typeof a&&""!==a||"number"===typeof a?(a=""+a,null!==o&&6===o.tag?(r(n,o.sibling),(o=i(o,a)).return=n,n=o):(r(n,o),(o=zl(a,n.mode,c)).return=n,n=o),s(n)):r(n,o)}}var Xo=Yo(!0),Jo=Yo(!1),Qo={},ea=ki(Qo),ta=ki(Qo),ra=ki(Qo);function na(e){if(e===Qo)throw Error(o(174));return e}function ia(e,t){switch(Ai(ra,t),Ai(ta,e),Ai(ea,Qo),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:ce(null,"");break;default:t=ce(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}Ei(ea),Ai(ea,t)}function oa(){Ei(ea),Ei(ta),Ei(ra)}function aa(e){na(ra.current);var t=na(ea.current),r=ce(t,e.type);t!==r&&(Ai(ta,e),Ai(ea,r))}function sa(e){ta.current===e&&(Ei(ea),Ei(ta))}var ca=ki(0);function la(e){for(var t=e;null!==t;){if(13===t.tag){var r=t.memoizedState;if(null!==r&&(null===(r=r.dehydrated)||"$?"===r.data||"$!"===r.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!==(128&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var ua=[];function da(){for(var e=0;er?r:4,e(!0);var n=fa.transition;fa.transition={};try{e(!1),t()}finally{bt=r,fa.transition=n}}function es(){return Pa().memoizedState}function ts(e,t,r){var n=rl(e);if(r={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null},ns(e))is(t,r);else if(null!==(r=To(e,t,r,n))){nl(r,e,n,tl()),os(r,t,n)}}function rs(e,t,r){var n=rl(e),i={lane:n,action:r,hasEagerState:!1,eagerState:null,next:null};if(ns(e))is(t,i);else{var o=e.alternate;if(0===e.lanes&&(null===o||0===o.lanes)&&null!==(o=t.lastRenderedReducer))try{var a=t.lastRenderedState,s=o(a,r);if(i.hasEagerState=!0,i.eagerState=s,sn(s,a)){var c=t.interleaved;return null===c?(i.next=i,Oo(t)):(i.next=c.next,c.next=i),void(t.interleaved=i)}}catch(l){}null!==(r=To(e,t,i,n))&&(nl(r,e,n,i=tl()),os(r,t,n))}}function ns(e){var t=e.alternate;return e===ma||null!==t&&t===ma}function is(e,t){ba=ya=!0;var r=e.pending;null===r?t.next=t:(t.next=r.next,r.next=t),e.pending=t}function os(e,t,r){if(0!==(4194240&r)){var n=t.lanes;r|=n&=e.pendingLanes,t.lanes=r,yt(e,r)}}var as={readContext:Ao,useCallback:_a,useContext:_a,useEffect:_a,useImperativeHandle:_a,useInsertionEffect:_a,useLayoutEffect:_a,useMemo:_a,useReducer:_a,useRef:_a,useState:_a,useDebugValue:_a,useDeferredValue:_a,useTransition:_a,useMutableSource:_a,useSyncExternalStore:_a,useId:_a,unstable_isNewReconciler:!1},ss={readContext:Ao,useCallback:function(e,t){return Aa().memoizedState=[e,void 0===t?null:t],e},useContext:Ao,useEffect:Ha,useImperativeHandle:function(e,t,r){return r=null!==r&&void 0!==r?r.concat([e]):null,Fa(4194308,4,Wa.bind(null,t,e),r)},useLayoutEffect:function(e,t){return Fa(4194308,4,e,t)},useInsertionEffect:function(e,t){return Fa(4,2,e,t)},useMemo:function(e,t){var r=Aa();return t=void 0===t?null:t,e=e(),r.memoizedState=[e,t],e},useReducer:function(e,t,r){var n=Aa();return t=void 0!==r?r(t):t,n.memoizedState=n.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},n.queue=e,e=e.dispatch=ts.bind(null,ma,e),[n.memoizedState,e]},useRef:function(e){return e={current:e},Aa().memoizedState=e},useState:za,useDebugValue:Za,useDeferredValue:function(e){return Aa().memoizedState=e},useTransition:function(){var e=za(!1),t=e[0];return e=Qa.bind(null,e[1]),Aa().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,r){var n=ma,i=Aa();if(io){if(void 0===r)throw Error(o(407));r=r()}else{if(r=t(),null===Cc)throw Error(o(349));0!==(30&pa)||Ia(n,t,r)}i.memoizedState=r;var a={value:r,getSnapshot:t};return i.queue=a,Ha(La.bind(null,n,a,e),[e]),n.flags|=2048,Ba(9,Ma.bind(null,n,a,r,t),void 0,null),r},useId:function(){var e=Aa(),t=Cc.identifierPrefix;if(io){var r=Xi;t=":"+t+"R"+(r=(Yi&~(1<<32-at(Yi)-1)).toString(32)+r),0<(r=wa++)&&(t+="H"+r.toString(32)),t+=":"}else t=":"+t+"r"+(r=xa++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},cs={readContext:Ao,useCallback:Ya,useContext:Ao,useEffect:Va,useImperativeHandle:Ga,useInsertionEffect:qa,useLayoutEffect:Ka,useMemo:Xa,useReducer:Ta,useRef:Ua,useState:function(){return Ta(Oa)},useDebugValue:Za,useDeferredValue:function(e){return Ja(Pa(),ga.memoizedState,e)},useTransition:function(){return[Ta(Oa)[0],Pa().memoizedState]},useMutableSource:ja,useSyncExternalStore:Ra,useId:es,unstable_isNewReconciler:!1},ls={readContext:Ao,useCallback:Ya,useContext:Ao,useEffect:Va,useImperativeHandle:Ga,useInsertionEffect:qa,useLayoutEffect:Ka,useMemo:Xa,useReducer:Ca,useRef:Ua,useState:function(){return Ca(Oa)},useDebugValue:Za,useDeferredValue:function(e){var t=Pa();return null===ga?t.memoizedState=e:Ja(t,ga.memoizedState,e)},useTransition:function(){return[Ca(Oa)[0],Pa().memoizedState]},useMutableSource:ja,useSyncExternalStore:Ra,useId:es,unstable_isNewReconciler:!1};function us(e,t){try{var r="",n=t;do{r+=F(n),n=n.return}while(n);var i=r}catch(o){i="\nError generating stack: "+o.message+"\n"+o.stack}return{value:e,source:t,stack:i,digest:null}}function ds(e,t,r){return{value:e,source:null,stack:null!=r?r:null,digest:null!=t?t:null}}function hs(e,t){try{console.error(t.value)}catch(r){setTimeout((function(){throw r}))}}var fs="function"===typeof WeakMap?WeakMap:Map;function ps(e,t,r){(r=Mo(-1,r)).tag=3,r.payload={element:null};var n=t.value;return r.callback=function(){qc||(qc=!0,Kc=n),hs(0,t)},r}function ms(e,t,r){(r=Mo(-1,r)).tag=3;var n=e.type.getDerivedStateFromError;if("function"===typeof n){var i=t.value;r.payload=function(){return n(i)},r.callback=function(){hs(0,t)}}var o=e.stateNode;return null!==o&&"function"===typeof o.componentDidCatch&&(r.callback=function(){hs(0,t),"function"!==typeof n&&(null===Wc?Wc=new Set([this]):Wc.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),r}function gs(e,t,r){var n=e.pingCache;if(null===n){n=e.pingCache=new fs;var i=new Set;n.set(t,i)}else void 0===(i=n.get(t))&&(i=new Set,n.set(t,i));i.has(r)||(i.add(r),e=Al.bind(null,e,t,r),t.then(e,e))}function vs(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function ys(e,t,r,n,i){return 0===(1&e.mode)?(e===t?e.flags|=65536:(e.flags|=128,r.flags|=131072,r.flags&=-52805,1===r.tag&&(null===r.alternate?r.tag=17:((t=Mo(-1,1)).tag=2,Lo(r,t,1))),r.lanes|=1),e):(e.flags|=65536,e.lanes=i,e)}var bs=w.ReactCurrentOwner,ws=!1;function xs(e,t,r,n){t.child=null===e?Jo(t,null,r,n):Xo(t,e.child,r,n)}function _s(e,t,r,n,i){r=r.render;var o=t.ref;return Eo(t,i),n=ka(e,t,r,n,o,i),r=Ea(),null===e||ws?(io&&r&&eo(t),t.flags|=1,xs(e,t,n,i),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,qs(e,t,i))}function Ss(e,t,r,n,i){if(null===e){var o=r.type;return"function"!==typeof o||Il(o)||void 0!==o.defaultProps||null!==r.compare||void 0!==r.defaultProps?((e=Ll(r.type,null,n,t,t.mode,i)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=o,ks(e,t,o,n,i))}if(o=e.child,0===(e.lanes&i)){var a=o.memoizedProps;if((r=null!==(r=r.compare)?r:cn)(a,n)&&e.ref===t.ref)return qs(e,t,i)}return t.flags|=1,(e=Ml(o,n)).ref=t.ref,e.return=t,t.child=e}function ks(e,t,r,n,i){if(null!==e){var o=e.memoizedProps;if(cn(o,n)&&e.ref===t.ref){if(ws=!1,t.pendingProps=n=o,0===(e.lanes&i))return t.lanes=e.lanes,qs(e,t,i);0!==(131072&e.flags)&&(ws=!0)}}return Ps(e,t,r,n,i)}function Es(e,t,r){var n=t.pendingProps,i=n.children,o=null!==e?e.memoizedState:null;if("hidden"===n.mode)if(0===(1&t.mode))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Ai(Mc,Ic),Ic|=r;else{if(0===(1073741824&r))return e=null!==o?o.baseLanes|r:r,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Ai(Mc,Ic),Ic|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},n=null!==o?o.baseLanes:r,Ai(Mc,Ic),Ic|=n}else null!==o?(n=o.baseLanes|r,t.memoizedState=null):n=r,Ai(Mc,Ic),Ic|=n;return xs(e,t,i,r),t.child}function As(e,t){var r=t.ref;(null===e&&null!==r||null!==e&&e.ref!==r)&&(t.flags|=512,t.flags|=2097152)}function Ps(e,t,r,n,i){var o=Ri(r)?Ci:Oi.current;return o=ji(t,o),Eo(t,i),r=ka(e,t,r,n,o,i),n=Ea(),null===e||ws?(io&&n&&eo(t),t.flags|=1,xs(e,t,r,i),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,qs(e,t,i))}function Os(e,t,r,n,i){if(Ri(r)){var o=!0;Ni(t)}else o=!1;if(Eo(t,i),null===t.stateNode)Vs(e,t),Vo(t,r,n),Ko(t,r,n,i),n=!0;else if(null===e){var a=t.stateNode,s=t.memoizedProps;a.props=s;var c=a.context,l=r.contextType;"object"===typeof l&&null!==l?l=Ao(l):l=ji(t,l=Ri(r)?Ci:Oi.current);var u=r.getDerivedStateFromProps,d="function"===typeof u||"function"===typeof a.getSnapshotBeforeUpdate;d||"function"!==typeof a.UNSAFE_componentWillReceiveProps&&"function"!==typeof a.componentWillReceiveProps||(s!==n||c!==l)&&qo(t,a,n,l),jo=!1;var h=t.memoizedState;a.state=h,zo(t,n,a,i),c=t.memoizedState,s!==n||h!==c||Ti.current||jo?("function"===typeof u&&(Fo(t,r,u,n),c=t.memoizedState),(s=jo||Ho(t,r,s,n,h,c,l))?(d||"function"!==typeof a.UNSAFE_componentWillMount&&"function"!==typeof a.componentWillMount||("function"===typeof a.componentWillMount&&a.componentWillMount(),"function"===typeof a.UNSAFE_componentWillMount&&a.UNSAFE_componentWillMount()),"function"===typeof a.componentDidMount&&(t.flags|=4194308)):("function"===typeof a.componentDidMount&&(t.flags|=4194308),t.memoizedProps=n,t.memoizedState=c),a.props=n,a.state=c,a.context=l,n=s):("function"===typeof a.componentDidMount&&(t.flags|=4194308),n=!1)}else{a=t.stateNode,Io(e,t),s=t.memoizedProps,l=t.type===t.elementType?s:vo(t.type,s),a.props=l,d=t.pendingProps,h=a.context,"object"===typeof(c=r.contextType)&&null!==c?c=Ao(c):c=ji(t,c=Ri(r)?Ci:Oi.current);var f=r.getDerivedStateFromProps;(u="function"===typeof f||"function"===typeof a.getSnapshotBeforeUpdate)||"function"!==typeof a.UNSAFE_componentWillReceiveProps&&"function"!==typeof a.componentWillReceiveProps||(s!==d||h!==c)&&qo(t,a,n,c),jo=!1,h=t.memoizedState,a.state=h,zo(t,n,a,i);var p=t.memoizedState;s!==d||h!==p||Ti.current||jo?("function"===typeof f&&(Fo(t,r,f,n),p=t.memoizedState),(l=jo||Ho(t,r,l,n,h,p,c)||!1)?(u||"function"!==typeof a.UNSAFE_componentWillUpdate&&"function"!==typeof a.componentWillUpdate||("function"===typeof a.componentWillUpdate&&a.componentWillUpdate(n,p,c),"function"===typeof a.UNSAFE_componentWillUpdate&&a.UNSAFE_componentWillUpdate(n,p,c)),"function"===typeof a.componentDidUpdate&&(t.flags|=4),"function"===typeof a.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!==typeof a.componentDidUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),"function"!==typeof a.getSnapshotBeforeUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),t.memoizedProps=n,t.memoizedState=p),a.props=n,a.state=p,a.context=c,n=l):("function"!==typeof a.componentDidUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),"function"!==typeof a.getSnapshotBeforeUpdate||s===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),n=!1)}return Ts(e,t,r,n,o,i)}function Ts(e,t,r,n,i,o){As(e,t);var a=0!==(128&t.flags);if(!n&&!a)return i&&Di(t,r,!1),qs(e,t,o);n=t.stateNode,bs.current=t;var s=a&&"function"!==typeof r.getDerivedStateFromError?null:n.render();return t.flags|=1,null!==e&&a?(t.child=Xo(t,e.child,null,o),t.child=Xo(t,null,s,o)):xs(e,t,s,o),t.memoizedState=n.state,i&&Di(t,r,!0),t.child}function Cs(e){var t=e.stateNode;t.pendingContext?Mi(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Mi(0,t.context,!1),ia(e,t.containerInfo)}function js(e,t,r,n,i){return po(),mo(i),t.flags|=256,xs(e,t,r,n),t.child}var Rs,Is,Ms,Ls,Ns={dehydrated:null,treeContext:null,retryLane:0};function Ds(e){return{baseLanes:e,cachePool:null,transitions:null}}function zs(e,t,r){var n,i=t.pendingProps,a=ca.current,s=!1,c=0!==(128&t.flags);if((n=c)||(n=(null===e||null!==e.memoizedState)&&0!==(2&a)),n?(s=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(a|=1),Ai(ca,1&a),null===e)return lo(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(0===(1&t.mode)?t.lanes=1:"$!"===e.data?t.lanes=8:t.lanes=1073741824,null):(c=i.children,e=i.fallback,s?(i=t.mode,s=t.child,c={mode:"hidden",children:c},0===(1&i)&&null!==s?(s.childLanes=0,s.pendingProps=c):s=Dl(c,i,0,null),e=Nl(e,i,r,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Ds(r),t.memoizedState=Ns,e):Bs(t,c));if(null!==(a=e.memoizedState)&&null!==(n=a.dehydrated))return function(e,t,r,n,i,a,s){if(r)return 256&t.flags?(t.flags&=-257,Us(e,t,s,n=ds(Error(o(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(a=n.fallback,i=t.mode,n=Dl({mode:"visible",children:n.children},i,0,null),(a=Nl(a,i,s,null)).flags|=2,n.return=t,a.return=t,n.sibling=a,t.child=n,0!==(1&t.mode)&&Xo(t,e.child,null,s),t.child.memoizedState=Ds(s),t.memoizedState=Ns,a);if(0===(1&t.mode))return Us(e,t,s,null);if("$!"===i.data){if(n=i.nextSibling&&i.nextSibling.dataset)var c=n.dgst;return n=c,Us(e,t,s,n=ds(a=Error(o(419)),n,void 0))}if(c=0!==(s&e.childLanes),ws||c){if(null!==(n=Cc)){switch(s&-s){case 4:i=2;break;case 16:i=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:i=32;break;case 536870912:i=268435456;break;default:i=0}0!==(i=0!==(i&(n.suspendedLanes|s))?0:i)&&i!==a.retryLane&&(a.retryLane=i,Co(e,i),nl(n,e,i,-1))}return gl(),Us(e,t,s,n=ds(Error(o(421))))}return"$?"===i.data?(t.flags|=128,t.child=e.child,t=Ol.bind(null,e),i._reactRetry=t,null):(e=a.treeContext,no=li(i.nextSibling),ro=t,io=!0,oo=null,null!==e&&(Wi[Gi++]=Yi,Wi[Gi++]=Xi,Wi[Gi++]=Zi,Yi=e.id,Xi=e.overflow,Zi=t),t=Bs(t,n.children),t.flags|=4096,t)}(e,t,c,i,n,a,r);if(s){s=i.fallback,c=t.mode,n=(a=e.child).sibling;var l={mode:"hidden",children:i.children};return 0===(1&c)&&t.child!==a?((i=t.child).childLanes=0,i.pendingProps=l,t.deletions=null):(i=Ml(a,l)).subtreeFlags=14680064&a.subtreeFlags,null!==n?s=Ml(n,s):(s=Nl(s,c,r,null)).flags|=2,s.return=t,i.return=t,i.sibling=s,t.child=i,i=s,s=t.child,c=null===(c=e.child.memoizedState)?Ds(r):{baseLanes:c.baseLanes|r,cachePool:null,transitions:c.transitions},s.memoizedState=c,s.childLanes=e.childLanes&~r,t.memoizedState=Ns,i}return e=(s=e.child).sibling,i=Ml(s,{mode:"visible",children:i.children}),0===(1&t.mode)&&(i.lanes=r),i.return=t,i.sibling=null,null!==e&&(null===(r=t.deletions)?(t.deletions=[e],t.flags|=16):r.push(e)),t.child=i,t.memoizedState=null,i}function Bs(e,t){return(t=Dl({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function Us(e,t,r,n){return null!==n&&mo(n),Xo(t,e.child,null,r),(e=Bs(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Fs(e,t,r){e.lanes|=t;var n=e.alternate;null!==n&&(n.lanes|=t),ko(e.return,t,r)}function $s(e,t,r,n,i){var o=e.memoizedState;null===o?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:n,tail:r,tailMode:i}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=n,o.tail=r,o.tailMode=i)}function Hs(e,t,r){var n=t.pendingProps,i=n.revealOrder,o=n.tail;if(xs(e,t,n.children,r),0!==(2&(n=ca.current)))n=1&n|2,t.flags|=128;else{if(null!==e&&0!==(128&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Fs(e,r,t);else if(19===e.tag)Fs(e,r,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}n&=1}if(Ai(ca,n),0===(1&t.mode))t.memoizedState=null;else switch(i){case"forwards":for(r=t.child,i=null;null!==r;)null!==(e=r.alternate)&&null===la(e)&&(i=r),r=r.sibling;null===(r=i)?(i=t.child,t.child=null):(i=r.sibling,r.sibling=null),$s(t,!1,i,r,o);break;case"backwards":for(r=null,i=t.child,t.child=null;null!==i;){if(null!==(e=i.alternate)&&null===la(e)){t.child=i;break}e=i.sibling,i.sibling=r,r=i,i=e}$s(t,!0,r,null,o);break;case"together":$s(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Vs(e,t){0===(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function qs(e,t,r){if(null!==e&&(t.dependencies=e.dependencies),Dc|=t.lanes,0===(r&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(o(153));if(null!==t.child){for(r=Ml(e=t.child,e.pendingProps),t.child=r,r.return=t;null!==e.sibling;)e=e.sibling,(r=r.sibling=Ml(e,e.pendingProps)).return=t;r.sibling=null}return t.child}function Ks(e,t){if(!io)switch(e.tailMode){case"hidden":t=e.tail;for(var r=null;null!==t;)null!==t.alternate&&(r=t),t=t.sibling;null===r?e.tail=null:r.sibling=null;break;case"collapsed":r=e.tail;for(var n=null;null!==r;)null!==r.alternate&&(n=r),r=r.sibling;null===n?t||null===e.tail?e.tail=null:e.tail.sibling=null:n.sibling=null}}function Ws(e){var t=null!==e.alternate&&e.alternate.child===e.child,r=0,n=0;if(t)for(var i=e.child;null!==i;)r|=i.lanes|i.childLanes,n|=14680064&i.subtreeFlags,n|=14680064&i.flags,i.return=e,i=i.sibling;else for(i=e.child;null!==i;)r|=i.lanes|i.childLanes,n|=i.subtreeFlags,n|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=n,e.childLanes=r,t}function Gs(e,t,r){var n=t.pendingProps;switch(to(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ws(t),null;case 1:case 17:return Ri(t.type)&&Ii(),Ws(t),null;case 3:return n=t.stateNode,oa(),Ei(Ti),Ei(Oi),da(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),null!==e&&null!==e.child||(ho(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&0===(256&t.flags)||(t.flags|=1024,null!==oo&&(sl(oo),oo=null))),Is(e,t),Ws(t),null;case 5:sa(t);var i=na(ra.current);if(r=t.type,null!==e&&null!=t.stateNode)Ms(e,t,r,n,i),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!n){if(null===t.stateNode)throw Error(o(166));return Ws(t),null}if(e=na(ea.current),ho(t)){n=t.stateNode,r=t.type;var a=t.memoizedProps;switch(n[hi]=t,n[fi]=a,e=0!==(1&t.mode),r){case"dialog":Bn("cancel",n),Bn("close",n);break;case"iframe":case"object":case"embed":Bn("load",n);break;case"video":case"audio":for(i=0;i<\/script>",e=e.removeChild(e.firstChild)):"string"===typeof n.is?e=c.createElement(r,{is:n.is}):(e=c.createElement(r),"select"===r&&(c=e,n.multiple?c.multiple=!0:n.size&&(c.size=n.size))):e=c.createElementNS(e,r),e[hi]=t,e[fi]=n,Rs(e,t,!1,!1),t.stateNode=e;e:{switch(c=be(r,n),r){case"dialog":Bn("cancel",e),Bn("close",e),i=n;break;case"iframe":case"object":case"embed":Bn("load",e),i=n;break;case"video":case"audio":for(i=0;iHc&&(t.flags|=128,n=!0,Ks(a,!1),t.lanes=4194304)}else{if(!n)if(null!==(e=la(c))){if(t.flags|=128,n=!0,null!==(r=e.updateQueue)&&(t.updateQueue=r,t.flags|=4),Ks(a,!0),null===a.tail&&"hidden"===a.tailMode&&!c.alternate&&!io)return Ws(t),null}else 2*Xe()-a.renderingStartTime>Hc&&1073741824!==r&&(t.flags|=128,n=!0,Ks(a,!1),t.lanes=4194304);a.isBackwards?(c.sibling=t.child,t.child=c):(null!==(r=a.last)?r.sibling=c:t.child=c,a.last=c)}return null!==a.tail?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=Xe(),t.sibling=null,r=ca.current,Ai(ca,n?1&r|2:1&r),t):(Ws(t),null);case 22:case 23:return hl(),n=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==n&&(t.flags|=8192),n&&0!==(1&t.mode)?0!==(1073741824&Ic)&&(Ws(t),6&t.subtreeFlags&&(t.flags|=8192)):Ws(t),null;case 24:case 25:return null}throw Error(o(156,t.tag))}function Zs(e,t){switch(to(t),t.tag){case 1:return Ri(t.type)&&Ii(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return oa(),Ei(Ti),Ei(Oi),da(),0!==(65536&(e=t.flags))&&0===(128&e)?(t.flags=-65537&e|128,t):null;case 5:return sa(t),null;case 13:if(Ei(ca),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(o(340));po()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return Ei(ca),null;case 4:return oa(),null;case 10:return So(t.type._context),null;case 22:case 23:return hl(),null;default:return null}}Rs=function(e,t){for(var r=t.child;null!==r;){if(5===r.tag||6===r.tag)e.appendChild(r.stateNode);else if(4!==r.tag&&null!==r.child){r.child.return=r,r=r.child;continue}if(r===t)break;for(;null===r.sibling;){if(null===r.return||r.return===t)return;r=r.return}r.sibling.return=r.return,r=r.sibling}},Is=function(){},Ms=function(e,t,r,n){var i=e.memoizedProps;if(i!==n){e=t.stateNode,na(ea.current);var o,a=null;switch(r){case"input":i=Z(e,i),n=Z(e,n),a=[];break;case"select":i=D({},i,{value:void 0}),n=D({},n,{value:void 0}),a=[];break;case"textarea":i=ne(e,i),n=ne(e,n),a=[];break;default:"function"!==typeof i.onClick&&"function"===typeof n.onClick&&(e.onclick=Qn)}for(u in ye(r,n),r=null,i)if(!n.hasOwnProperty(u)&&i.hasOwnProperty(u)&&null!=i[u])if("style"===u){var c=i[u];for(o in c)c.hasOwnProperty(o)&&(r||(r={}),r[o]="")}else"dangerouslySetInnerHTML"!==u&&"children"!==u&&"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(s.hasOwnProperty(u)?a||(a=[]):(a=a||[]).push(u,null));for(u in n){var l=n[u];if(c=null!=i?i[u]:void 0,n.hasOwnProperty(u)&&l!==c&&(null!=l||null!=c))if("style"===u)if(c){for(o in c)!c.hasOwnProperty(o)||l&&l.hasOwnProperty(o)||(r||(r={}),r[o]="");for(o in l)l.hasOwnProperty(o)&&c[o]!==l[o]&&(r||(r={}),r[o]=l[o])}else r||(a||(a=[]),a.push(u,r)),r=l;else"dangerouslySetInnerHTML"===u?(l=l?l.__html:void 0,c=c?c.__html:void 0,null!=l&&c!==l&&(a=a||[]).push(u,l)):"children"===u?"string"!==typeof l&&"number"!==typeof l||(a=a||[]).push(u,""+l):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&(s.hasOwnProperty(u)?(null!=l&&"onScroll"===u&&Bn("scroll",e),a||c===l||(a=[])):(a=a||[]).push(u,l))}r&&(a=a||[]).push("style",r);var u=a;(t.updateQueue=u)&&(t.flags|=4)}},Ls=function(e,t,r,n){r!==n&&(t.flags|=4)};var Ys=!1,Xs=!1,Js="function"===typeof WeakSet?WeakSet:Set,Qs=null;function ec(e,t){var r=e.ref;if(null!==r)if("function"===typeof r)try{r(null)}catch(n){El(e,t,n)}else r.current=null}function tc(e,t,r){try{r()}catch(n){El(e,t,n)}}var rc=!1;function nc(e,t,r){var n=t.updateQueue;if(null!==(n=null!==n?n.lastEffect:null)){var i=n=n.next;do{if((i.tag&e)===e){var o=i.destroy;i.destroy=void 0,void 0!==o&&tc(t,r,o)}i=i.next}while(i!==n)}}function ic(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var r=t=t.next;do{if((r.tag&e)===e){var n=r.create;r.destroy=n()}r=r.next}while(r!==t)}}function oc(e){var t=e.ref;if(null!==t){var r=e.stateNode;e.tag,e=r,"function"===typeof t?t(e):t.current=e}}function ac(e){var t=e.alternate;null!==t&&(e.alternate=null,ac(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&(null!==(t=e.stateNode)&&(delete t[hi],delete t[fi],delete t[mi],delete t[gi],delete t[vi])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function sc(e){return 5===e.tag||3===e.tag||4===e.tag}function cc(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||sc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function lc(e,t,r){var n=e.tag;if(5===n||6===n)e=e.stateNode,t?8===r.nodeType?r.parentNode.insertBefore(e,t):r.insertBefore(e,t):(8===r.nodeType?(t=r.parentNode).insertBefore(e,r):(t=r).appendChild(e),null!==(r=r._reactRootContainer)&&void 0!==r||null!==t.onclick||(t.onclick=Qn));else if(4!==n&&null!==(e=e.child))for(lc(e,t,r),e=e.sibling;null!==e;)lc(e,t,r),e=e.sibling}function uc(e,t,r){var n=e.tag;if(5===n||6===n)e=e.stateNode,t?r.insertBefore(e,t):r.appendChild(e);else if(4!==n&&null!==(e=e.child))for(uc(e,t,r),e=e.sibling;null!==e;)uc(e,t,r),e=e.sibling}var dc=null,hc=!1;function fc(e,t,r){for(r=r.child;null!==r;)pc(e,t,r),r=r.sibling}function pc(e,t,r){if(ot&&"function"===typeof ot.onCommitFiberUnmount)try{ot.onCommitFiberUnmount(it,r)}catch(s){}switch(r.tag){case 5:Xs||ec(r,t);case 6:var n=dc,i=hc;dc=null,fc(e,t,r),hc=i,null!==(dc=n)&&(hc?(e=dc,r=r.stateNode,8===e.nodeType?e.parentNode.removeChild(r):e.removeChild(r)):dc.removeChild(r.stateNode));break;case 18:null!==dc&&(hc?(e=dc,r=r.stateNode,8===e.nodeType?ci(e.parentNode,r):1===e.nodeType&&ci(e,r),$t(e)):ci(dc,r.stateNode));break;case 4:n=dc,i=hc,dc=r.stateNode.containerInfo,hc=!0,fc(e,t,r),dc=n,hc=i;break;case 0:case 11:case 14:case 15:if(!Xs&&(null!==(n=r.updateQueue)&&null!==(n=n.lastEffect))){i=n=n.next;do{var o=i,a=o.destroy;o=o.tag,void 0!==a&&(0!==(2&o)||0!==(4&o))&&tc(r,t,a),i=i.next}while(i!==n)}fc(e,t,r);break;case 1:if(!Xs&&(ec(r,t),"function"===typeof(n=r.stateNode).componentWillUnmount))try{n.props=r.memoizedProps,n.state=r.memoizedState,n.componentWillUnmount()}catch(s){El(r,t,s)}fc(e,t,r);break;case 21:fc(e,t,r);break;case 22:1&r.mode?(Xs=(n=Xs)||null!==r.memoizedState,fc(e,t,r),Xs=n):fc(e,t,r);break;default:fc(e,t,r)}}function mc(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var r=e.stateNode;null===r&&(r=e.stateNode=new Js),t.forEach((function(t){var n=Tl.bind(null,e,t);r.has(t)||(r.add(t),t.then(n,n))}))}}function gc(e,t){var r=t.deletions;if(null!==r)for(var n=0;ni&&(i=s),n&=~a}if(n=i,10<(n=(120>(n=Xe()-n)?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*Ec(n/1960))-n)){e.timeoutHandle=ni(_l.bind(null,e,Fc,Vc),n);break}_l(e,Fc,Vc);break;default:throw Error(o(329))}}}return il(e,Xe()),e.callbackNode===r?ol.bind(null,e):null}function al(e,t){var r=Uc;return e.current.memoizedState.isDehydrated&&(fl(e,t).flags|=256),2!==(e=vl(e,t))&&(t=Fc,Fc=r,null!==t&&sl(t)),e}function sl(e){null===Fc?Fc=e:Fc.push.apply(Fc,e)}function cl(e,t){for(t&=~Bc,t&=~zc,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0e?16:e,null===Zc)var n=!1;else{if(e=Zc,Zc=null,Yc=0,0!==(6&Tc))throw Error(o(331));var i=Tc;for(Tc|=4,Qs=e.current;null!==Qs;){var a=Qs,s=a.child;if(0!==(16&Qs.flags)){var c=a.deletions;if(null!==c){for(var l=0;lXe()-$c?fl(e,0):Bc|=r),il(e,t)}function Pl(e,t){0===t&&(0===(1&e.mode)?t=1:(t=ut,0===(130023424&(ut<<=1))&&(ut=4194304)));var r=tl();null!==(e=Co(e,t))&&(vt(e,t,r),il(e,r))}function Ol(e){var t=e.memoizedState,r=0;null!==t&&(r=t.retryLane),Pl(e,r)}function Tl(e,t){var r=0;switch(e.tag){case 13:var n=e.stateNode,i=e.memoizedState;null!==i&&(r=i.retryLane);break;case 19:n=e.stateNode;break;default:throw Error(o(314))}null!==n&&n.delete(t),Pl(e,r)}function Cl(e,t){return We(e,t)}function jl(e,t,r,n){this.tag=e,this.key=r,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Rl(e,t,r,n){return new jl(e,t,r,n)}function Il(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Ml(e,t){var r=e.alternate;return null===r?((r=Rl(e.tag,t,e.key,e.mode)).elementType=e.elementType,r.type=e.type,r.stateNode=e.stateNode,r.alternate=e,e.alternate=r):(r.pendingProps=t,r.type=e.type,r.flags=0,r.subtreeFlags=0,r.deletions=null),r.flags=14680064&e.flags,r.childLanes=e.childLanes,r.lanes=e.lanes,r.child=e.child,r.memoizedProps=e.memoizedProps,r.memoizedState=e.memoizedState,r.updateQueue=e.updateQueue,t=e.dependencies,r.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},r.sibling=e.sibling,r.index=e.index,r.ref=e.ref,r}function Ll(e,t,r,n,i,a){var s=2;if(n=e,"function"===typeof e)Il(e)&&(s=1);else if("string"===typeof e)s=5;else e:switch(e){case S:return Nl(r.children,i,a,t);case k:s=8,i|=8;break;case E:return(e=Rl(12,r,t,2|i)).elementType=E,e.lanes=a,e;case T:return(e=Rl(13,r,t,i)).elementType=T,e.lanes=a,e;case C:return(e=Rl(19,r,t,i)).elementType=C,e.lanes=a,e;case I:return Dl(r,i,a,t);default:if("object"===typeof e&&null!==e)switch(e.$$typeof){case A:s=10;break e;case P:s=9;break e;case O:s=11;break e;case j:s=14;break e;case R:s=16,n=null;break e}throw Error(o(130,null==e?e:typeof e,""))}return(t=Rl(s,r,t,i)).elementType=e,t.type=n,t.lanes=a,t}function Nl(e,t,r,n){return(e=Rl(7,e,n,t)).lanes=r,e}function Dl(e,t,r,n){return(e=Rl(22,e,n,t)).elementType=I,e.lanes=r,e.stateNode={isHidden:!1},e}function zl(e,t,r){return(e=Rl(6,e,null,t)).lanes=r,e}function Bl(e,t,r){return(t=Rl(4,null!==e.children?e.children:[],e.key,t)).lanes=r,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Ul(e,t,r,n,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=gt(0),this.expirationTimes=gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=gt(0),this.identifierPrefix=n,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function Fl(e,t,r,n,i,o,a,s,c){return e=new Ul(e,t,r,s,c),1===t?(t=1,!0===o&&(t|=8)):t=0,o=Rl(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:n,isDehydrated:r,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ro(o),e}function $l(e){if(!e)return Pi;e:{if($e(e=e._reactInternals)!==e||1!==e.tag)throw Error(o(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Ri(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(o(171))}if(1===e.tag){var r=e.type;if(Ri(r))return Li(e,r,t)}return t}function Hl(e,t,r,n,i,o,a,s,c){return(e=Fl(r,n,!0,e,0,o,0,s,c)).context=$l(null),r=e.current,(o=Mo(n=tl(),i=rl(r))).callback=void 0!==t&&null!==t?t:null,Lo(r,o,i),e.current.lanes=i,vt(e,i,n),il(e,n),e}function Vl(e,t,r,n){var i=t.current,o=tl(),a=rl(i);return r=$l(r),null===t.context?t.context=r:t.pendingContext=r,(t=Mo(o,a)).payload={element:e},null!==(n=void 0===n?null:n)&&(t.callback=n),null!==(e=Lo(i,t,a))&&(nl(e,i,a,o),No(e,i,a)),a}function ql(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Kl(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var r=e.retryLane;e.retryLane=0!==r&&r{"use strict";var n=r(2717);t.createRoot=n.createRoot,t.hydrateRoot=n.hydrateRoot},2717:(e,t,r)=>{"use strict";!function e(){if("undefined"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"===typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}(),e.exports=r(557)},1131:function(e,t,r){var n,i,o;i=[t,r(5450)],n=function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(t);function n(e){return e&&e.__esModule?e:{default:e}}e.default=r.default},void 0===(o="function"===typeof n?n.apply(t,i):n)||(e.exports=o)},5450:function(e,t,r){var n,i,o;i=[t,r(9652),r(8795)],n=function(e,t,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.setHasSupportToCaptureOption=f;var n=o(t),i=o(r);function o(e){return e&&e.__esModule?e:{default:e}}var a=Object.assign||function(e){for(var t=1;t=0||Object.prototype.hasOwnProperty.call(e,n)&&(r[n]=e[n]);return r}function c(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var l=function(){function e(e,t){for(var r=0;r0&&void 0!==arguments[0]?arguments[0]:{capture:!0};return h?e:e.capture}function m(e){if("touches"in e){var t=e.touches[0];return{x:t.pageX,y:t.pageY}}return{x:e.screenX,y:e.screenY}}var g=function(e){function t(){var e;c(this,t);for(var r=arguments.length,n=Array(r),i=0;it&&this.props.onSwipeRight(1,e),this.movePosition.deltaY<-t?this.props.onSwipeUp(1,e):this.movePosition.deltaY>t&&this.props.onSwipeDown(1,e)),this.moveStart=null,this.moving=!1,this.movePosition=null}},{key:"_setSwiperRef",value:function(e){this.swiper=e,this.props.innerRef(e)}},{key:"render",value:function(){var e=this.props,t=(e.tagName,e.className),r=e.style,i=e.children,o=(e.allowMouseEvents,e.onSwipeUp,e.onSwipeDown,e.onSwipeLeft,e.onSwipeRight,e.onSwipeStart,e.onSwipeMove,e.onSwipeEnd,e.innerRef,e.tolerance,s(e,["tagName","className","style","children","allowMouseEvents","onSwipeUp","onSwipeDown","onSwipeLeft","onSwipeRight","onSwipeStart","onSwipeMove","onSwipeEnd","innerRef","tolerance"]));return n.default.createElement(this.props.tagName,a({ref:this._setSwiperRef,onMouseDown:this._onMouseDown,onTouchStart:this._handleSwipeStart,onTouchEnd:this._handleSwipeEnd,className:t,style:r},o),i)}}]),t}(t.Component);g.displayName="ReactSwipe",g.propTypes={tagName:i.default.string,className:i.default.string,style:i.default.object,children:i.default.node,allowMouseEvents:i.default.bool,onSwipeUp:i.default.func,onSwipeDown:i.default.func,onSwipeLeft:i.default.func,onSwipeRight:i.default.func,onSwipeStart:i.default.func,onSwipeMove:i.default.func,onSwipeEnd:i.default.func,innerRef:i.default.func,tolerance:i.default.number.isRequired},g.defaultProps={tagName:"div",allowMouseEvents:!1,onSwipeUp:function(){},onSwipeDown:function(){},onSwipeLeft:function(){},onSwipeRight:function(){},onSwipeStart:function(){},onSwipeMove:function(){},onSwipeEnd:function(){},innerRef:function(){},tolerance:0},e.default=g},void 0===(o="function"===typeof n?n.apply(t,i):n)||(e.exports=o)},8366:e=>{var t="undefined"!==typeof Element,r="function"===typeof Map,n="function"===typeof Set,i="function"===typeof ArrayBuffer&&!!ArrayBuffer.isView;function o(e,a){if(e===a)return!0;if(e&&a&&"object"==typeof e&&"object"==typeof a){if(e.constructor!==a.constructor)return!1;var s,c,l,u;if(Array.isArray(e)){if((s=e.length)!=a.length)return!1;for(c=s;0!==c--;)if(!o(e[c],a[c]))return!1;return!0}if(r&&e instanceof Map&&a instanceof Map){if(e.size!==a.size)return!1;for(u=e.entries();!(c=u.next()).done;)if(!a.has(c.value[0]))return!1;for(u=e.entries();!(c=u.next()).done;)if(!o(c.value[1],a.get(c.value[0])))return!1;return!0}if(n&&e instanceof Set&&a instanceof Set){if(e.size!==a.size)return!1;for(u=e.entries();!(c=u.next()).done;)if(!a.has(c.value[0]))return!1;return!0}if(i&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(a)){if((s=e.length)!=a.length)return!1;for(c=s;0!==c--;)if(e[c]!==a[c])return!1;return!0}if(e.constructor===RegExp)return e.source===a.source&&e.flags===a.flags;if(e.valueOf!==Object.prototype.valueOf&&"function"===typeof e.valueOf&&"function"===typeof a.valueOf)return e.valueOf()===a.valueOf();if(e.toString!==Object.prototype.toString&&"function"===typeof e.toString&&"function"===typeof a.toString)return e.toString()===a.toString();if((s=(l=Object.keys(e)).length)!==Object.keys(a).length)return!1;for(c=s;0!==c--;)if(!Object.prototype.hasOwnProperty.call(a,l[c]))return!1;if(t&&e instanceof Element)return!1;for(c=s;0!==c--;)if(("_owner"!==l[c]&&"__v"!==l[c]&&"__o"!==l[c]||!e.$$typeof)&&!o(e[l[c]],a[l[c]]))return!1;return!0}return e!==e&&a!==a}e.exports=function(e,t){try{return o(e,t)}catch(r){if((r.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw r}}},9378:(e,t,r)=>{e.exports=function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(1),i=s(n),o=s(r(2)),a=s(r(3));function s(e){return e&&e.__esModule?e:{default:e}}var c=function(e){var t=e.fg,r=e.bg,s=e.count,c=e.palette,l=e.string,u=e.size,d=e.getColor,h=e.padding,f=e.className,p=(0,n.useRef)(null);(0,n.useEffect)((function(){m(e)}));var m=function(){var e=(0,o.default)(l),n=Math.floor(u/s),i=e.slice(0,6);if(c&&c.length){var f=Math.floor((0,a.default)(parseInt(e.slice(-3),16),0,4095,0,c.length));t=c[f]}d&&d(t||i);var m=h;p.current.width=n*s+m,p.current.height=n*s+m;var g=e.split("").map((function(e){return(e=parseInt(e,16))<8?0:1})),v=[];v[0]=v[4]=g.slice(0,5),v[1]=v[3]=g.slice(5,10),v[2]=g.slice(10,15);var y=p.current.getContext("2d");y.imageSmoothingEnabled=!1,y.clearRect(0,0,p.current.width,p.current.height),v.forEach((function(e,o){e.forEach((function(e,a){e?(y.fillStyle=t||"#"+i,y.fillRect(n*o+m,n*a+m,n-m,n-m)):(y.fillStyle=r,y.fillRect(n*o+m,n*a+m,n-m,n-m))}))}))};return i.default.createElement("canvas",{ref:p,className:f,style:{width:u,height:u}})};c.defaultProps={className:"identicon",bg:"transparent",count:5,palette:null,fg:null,padding:0,size:400,getColor:null,string:""},t.default=c},function(e,t){e.exports=r(9652)},function(e,t,r){"use strict";var n;"function"==typeof Symbol&&Symbol.iterator,function(i){function o(e,t){var r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}function a(e,t,r,n,i,a){return o(function(e,t){return e<>>32-t}(o(o(t,e),o(n,a)),i),r)}function s(e,t,r,n,i,o,s){return a(t&r|~t&n,e,t,i,o,s)}function c(e,t,r,n,i,o,s){return a(t&n|r&~n,e,t,i,o,s)}function l(e,t,r,n,i,o,s){return a(t^r^n,e,t,i,o,s)}function u(e,t,r,n,i,o,s){return a(r^(t|~n),e,t,i,o,s)}function d(e,t){e[t>>5]|=128<>>9<<4)]=t;var r,n,i,a,d,h=1732584193,f=-271733879,p=-1732584194,m=271733878;for(r=0;r>5]>>>t%32&255);return r}function f(e){var t,r=[];for(r[(e.length>>2)-1]=void 0,t=0;t>5]|=(255&e.charCodeAt(t/8))<>>4&15)+"0123456789abcdef".charAt(15&t);return n}function m(e){return unescape(encodeURIComponent(e))}function g(e){return function(e){return h(d(f(e),8*e.length))}(m(e))}function v(e,t){return function(e,t){var r,n,i=f(e),o=[],a=[];for(o[15]=a[15]=void 0,i.length>16&&(i=d(i,8*e.length)),r=0;r<16;r+=1)o[r]=909522486^i[r],a[r]=1549556828^i[r];return n=d(o.concat(f(t)),512+8*t.length),h(d(a.concat(n),640))}(m(e),m(t))}function y(e,t,r){return t?r?v(t,e):function(e,t){return p(v(e,t))}(t,e):r?g(e):function(e){return p(g(e))}(e)}void 0===(n=function(){return y}.call(t,r,t,e))||(e.exports=n)}()},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t,r,n,i){return(e-t)*(i-n)/(r-t)+n}}])},3906:(e,t)=>{"use strict";var r,n=Symbol.for("react.element"),i=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),l=Symbol.for("react.context"),u=Symbol.for("react.server_context"),d=Symbol.for("react.forward_ref"),h=Symbol.for("react.suspense"),f=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),g=Symbol.for("react.offscreen");function v(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type){case o:case s:case a:case h:case f:return e;default:switch(e=e&&e.$$typeof){case u:case l:case d:case m:case p:case c:return e;default:return t}}case i:return t}}}r=Symbol.for("react.module.reference")},931:(e,t,r)=>{"use strict";r(3906)},3937:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d=(e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)),h=(e,t,r)=>(((e,t,r)=>{t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r),f={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(f,{default:()=>y}),e.exports=(n=f,u(o({},"__esModule",{value:!0}),n));var p=d(r(9652)),m=d(r(8366)),g=r(4480),v=r(9356);class y extends p.Component{constructor(){super(...arguments),h(this,"mounted",!1),h(this,"isReady",!1),h(this,"isPlaying",!1),h(this,"isLoading",!0),h(this,"loadOnReady",null),h(this,"startOnPlay",!0),h(this,"seekOnPlay",null),h(this,"onDurationCalled",!1),h(this,"handlePlayerMount",(e=>{this.player||(this.player=e,this.player.load(this.props.url)),this.progress()})),h(this,"getInternalPlayer",(e=>this.player?this.player[e]:null)),h(this,"progress",(()=>{if(this.props.url&&this.player&&this.isReady){const e=this.getCurrentTime()||0,t=this.getSecondsLoaded(),r=this.getDuration();if(r){const n={playedSeconds:e,played:e/r};null!==t&&(n.loadedSeconds=t,n.loaded=t/r),n.playedSeconds===this.prevPlayed&&n.loadedSeconds===this.prevLoaded||this.props.onProgress(n),this.prevPlayed=n.playedSeconds,this.prevLoaded=n.loadedSeconds}}this.progressTimeout=setTimeout(this.progress,this.props.progressFrequency||this.props.progressInterval)})),h(this,"handleReady",(()=>{if(!this.mounted)return;this.isReady=!0,this.isLoading=!1;const{onReady:e,playing:t,volume:r,muted:n}=this.props;e(),n||null===r||this.player.setVolume(r),this.loadOnReady?(this.player.load(this.loadOnReady,!0),this.loadOnReady=null):t&&this.player.play(),this.handleDurationCheck()})),h(this,"handlePlay",(()=>{this.isPlaying=!0,this.isLoading=!1;const{onStart:e,onPlay:t,playbackRate:r}=this.props;this.startOnPlay&&(this.player.setPlaybackRate&&1!==r&&this.player.setPlaybackRate(r),e(),this.startOnPlay=!1),t(),this.seekOnPlay&&(this.seekTo(this.seekOnPlay),this.seekOnPlay=null),this.handleDurationCheck()})),h(this,"handlePause",(e=>{this.isPlaying=!1,this.isLoading||this.props.onPause(e)})),h(this,"handleEnded",(()=>{const{activePlayer:e,loop:t,onEnded:r}=this.props;e.loopOnEnded&&t&&this.seekTo(0),t||(this.isPlaying=!1,r())})),h(this,"handleError",((...e)=>{this.isLoading=!1,this.props.onError(...e)})),h(this,"handleDurationCheck",(()=>{clearTimeout(this.durationCheckTimeout);const e=this.getDuration();e?this.onDurationCalled||(this.props.onDuration(e),this.onDurationCalled=!0):this.durationCheckTimeout=setTimeout(this.handleDurationCheck,100)})),h(this,"handleLoaded",(()=>{this.isLoading=!1}))}componentDidMount(){this.mounted=!0}componentWillUnmount(){clearTimeout(this.progressTimeout),clearTimeout(this.durationCheckTimeout),this.isReady&&this.props.stopOnUnmount&&(this.player.stop(),this.player.disablePIP&&this.player.disablePIP()),this.mounted=!1}componentDidUpdate(e){if(!this.player)return;const{url:t,playing:r,volume:n,muted:i,playbackRate:o,pip:a,loop:s,activePlayer:c,disableDeferredLoading:l}=this.props;if(!(0,m.default)(e.url,t)){if(this.isLoading&&!c.forceLoad&&!l&&!(0,v.isMediaStream)(t))return console.warn(`ReactPlayer: the attempt to load ${t} is being deferred until the player has loaded`),void(this.loadOnReady=t);this.isLoading=!0,this.startOnPlay=!0,this.onDurationCalled=!1,this.player.load(t,this.isReady)}e.playing||!r||this.isPlaying||this.player.play(),e.playing&&!r&&this.isPlaying&&this.player.pause(),!e.pip&&a&&this.player.enablePIP&&this.player.enablePIP(),e.pip&&!a&&this.player.disablePIP&&this.player.disablePIP(),e.volume!==n&&null!==n&&this.player.setVolume(n),e.muted!==i&&(i?this.player.mute():(this.player.unmute(),null!==n&&setTimeout((()=>this.player.setVolume(n))))),e.playbackRate!==o&&this.player.setPlaybackRate&&this.player.setPlaybackRate(o),e.loop!==s&&this.player.setLoop&&this.player.setLoop(s)}getDuration(){return this.isReady?this.player.getDuration():null}getCurrentTime(){return this.isReady?this.player.getCurrentTime():null}getSecondsLoaded(){return this.isReady?this.player.getSecondsLoaded():null}seekTo(e,t,r){if(!this.isReady)return void(0!==e&&(this.seekOnPlay=e,setTimeout((()=>{this.seekOnPlay=null}),5e3)));if(t?"fraction"===t:e>0&&e<1){const t=this.player.getDuration();return t?void this.player.seekTo(t*e,r):void console.warn("ReactPlayer: could not seek using fraction \u2013\xa0duration not yet available")}this.player.seekTo(e,r)}render(){const e=this.props.activePlayer;return e?p.default.createElement(e,{...this.props,onMount:this.handlePlayerMount,onReady:this.handleReady,onPlay:this.handlePlay,onPause:this.handlePause,onEnded:this.handleEnded,onLoaded:this.handleLoaded,onError:this.handleError}):null}}h(y,"displayName","Player"),h(y,"propTypes",g.propTypes),h(y,"defaultProps",g.defaultProps)},3475:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d=(e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)),h=(e,t,r)=>(((e,t,r)=>{t in e?o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r),f={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(f,{createReactPlayer:()=>P}),e.exports=(n=f,u(o({},"__esModule",{value:!0}),n));var p=d(r(9652)),m=d(r(5434)),g=d(r(9961)),v=d(r(8366)),y=r(4480),b=r(9356),w=d(r(3937));const x=(0,b.lazy)((()=>r.e(664).then(r.t.bind(r,9296,23)))),_="undefined"!==typeof window&&window.document,S="undefined"!==typeof r.g&&r.g.window&&r.g.window.document,k=Object.keys(y.propTypes),E=_||S?p.Suspense:()=>null,A=[],P=(e,t)=>{var r;return r=class extends p.Component{constructor(){super(...arguments),h(this,"state",{showPreview:!!this.props.light}),h(this,"references",{wrapper:e=>{this.wrapper=e},player:e=>{this.player=e}}),h(this,"handleClickPreview",(e=>{this.setState({showPreview:!1}),this.props.onClickPreview(e)})),h(this,"showPreview",(()=>{this.setState({showPreview:!0})})),h(this,"getDuration",(()=>this.player?this.player.getDuration():null)),h(this,"getCurrentTime",(()=>this.player?this.player.getCurrentTime():null)),h(this,"getSecondsLoaded",(()=>this.player?this.player.getSecondsLoaded():null)),h(this,"getInternalPlayer",((e="player")=>this.player?this.player.getInternalPlayer(e):null)),h(this,"seekTo",((e,t,r)=>{if(!this.player)return null;this.player.seekTo(e,t,r)})),h(this,"handleReady",(()=>{this.props.onReady(this)})),h(this,"getActivePlayer",(0,g.default)((r=>{for(const t of[...A,...e])if(t.canPlay(r))return t;return t||null}))),h(this,"getConfig",(0,g.default)(((e,t)=>{const{config:r}=this.props;return m.default.all([y.defaultProps.config,y.defaultProps.config[t]||{},r,r[t]||{}])}))),h(this,"getAttributes",(0,g.default)((e=>(0,b.omit)(this.props,k)))),h(this,"renderActivePlayer",(e=>{if(!e)return null;const t=this.getActivePlayer(e);if(!t)return null;const r=this.getConfig(e,t.key);return p.default.createElement(w.default,{...this.props,key:t.key,ref:this.references.player,config:r,activePlayer:t.lazyPlayer||t,onReady:this.handleReady})}))}shouldComponentUpdate(e,t){return!(0,v.default)(this.props,e)||!(0,v.default)(this.state,t)}componentDidUpdate(e){const{light:t}=this.props;!e.light&&t&&this.setState({showPreview:!0}),e.light&&!t&&this.setState({showPreview:!1})}renderPreview(e){if(!e)return null;const{light:t,playIcon:r,previewTabIndex:n,oEmbedUrl:i}=this.props;return p.default.createElement(x,{url:e,light:t,playIcon:r,previewTabIndex:n,oEmbedUrl:i,onClick:this.handleClickPreview})}render(){const{url:e,style:t,width:r,height:n,fallback:i,wrapper:o}=this.props,{showPreview:a}=this.state,s=this.getAttributes(e),c="string"===typeof o?this.references.wrapper:void 0;return p.default.createElement(o,{ref:c,style:{...t,width:r,height:n},...s},p.default.createElement(E,{fallback:i},a?this.renderPreview(e):this.renderActivePlayer(e)))}},h(r,"displayName","ReactPlayer"),h(r,"propTypes",y.propTypes),h(r,"defaultProps",y.defaultProps),h(r,"addCustomPlayer",(e=>{A.push(e)})),h(r,"removeCustomPlayers",(()=>{A.length=0})),h(r,"canPlay",(t=>{for(const r of[...A,...e])if(r.canPlay(t))return!0;return!1})),h(r,"canEnablePIP",(t=>{for(const r of[...A,...e])if(r.canEnablePIP&&r.canEnablePIP(t))return!0;return!1})),r}},4606:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(d,{default:()=>m}),e.exports=(n=d,u(o({},"__esModule",{value:!0}),n));var h=((e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)))(r(9247)),f=r(3475);const p=h.default[h.default.length-1];var m=(0,f.createReactPlayer)(h.default,p)},8243:(e,t,r)=>{var n,i=Object.defineProperty,o=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,c={};((e,t)=>{for(var r in t)i(e,r,{get:t[r],enumerable:!0})})(c,{AUDIO_EXTENSIONS:()=>S,DASH_EXTENSIONS:()=>A,FLV_EXTENSIONS:()=>P,HLS_EXTENSIONS:()=>E,MATCH_URL_DAILYMOTION:()=>b,MATCH_URL_FACEBOOK:()=>f,MATCH_URL_FACEBOOK_WATCH:()=>p,MATCH_URL_KALTURA:()=>_,MATCH_URL_MIXCLOUD:()=>w,MATCH_URL_SOUNDCLOUD:()=>d,MATCH_URL_STREAMABLE:()=>m,MATCH_URL_TWITCH_CHANNEL:()=>y,MATCH_URL_TWITCH_VIDEO:()=>v,MATCH_URL_VIDYARD:()=>x,MATCH_URL_VIMEO:()=>h,MATCH_URL_WISTIA:()=>g,MATCH_URL_YOUTUBE:()=>u,VIDEO_EXTENSIONS:()=>k,canPlay:()=>T}),e.exports=(n=c,((e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let c of a(t))s.call(e,c)||c===r||i(e,c,{get:()=>t[c],enumerable:!(n=o(t,c))||n.enumerable});return e})(i({},"__esModule",{value:!0}),n));var l=r(9356);const u=/(?:youtu\.be\/|youtube(?:-nocookie|education)?\.com\/(?:embed\/|v\/|watch\/|watch\?v=|watch\?.+&v=|shorts\/|live\/))((\w|-){11})|youtube\.com\/playlist\?list=|youtube\.com\/user\//,d=/(?:soundcloud\.com|snd\.sc)\/[^.]+$/,h=/vimeo\.com\/(?!progressive_redirect).+/,f=/^https?:\/\/(www\.)?facebook\.com.*\/(video(s)?|watch|story)(\.php?|\/).+$/,p=/^https?:\/\/fb\.watch\/.+$/,m=/streamable\.com\/([a-z0-9]+)$/,g=/(?:wistia\.(?:com|net)|wi\.st)\/(?:medias|embed)\/(?:iframe\/)?([^?]+)/,v=/(?:www\.|go\.)?twitch\.tv\/videos\/(\d+)($|\?)/,y=/(?:www\.|go\.)?twitch\.tv\/([a-zA-Z0-9_]+)($|\?)/,b=/^(?:(?:https?):)?(?:\/\/)?(?:www\.)?(?:(?:dailymotion\.com(?:\/embed)?\/video)|dai\.ly)\/([a-zA-Z0-9]+)(?:_[\w_-]+)?(?:[\w.#_-]+)?/,w=/mixcloud\.com\/([^/]+\/[^/]+)/,x=/vidyard.com\/(?:watch\/)?([a-zA-Z0-9-_]+)/,_=/^https?:\/\/[a-zA-Z]+\.kaltura.(com|org)\/p\/([0-9]+)\/sp\/([0-9]+)00\/embedIframeJs\/uiconf_id\/([0-9]+)\/partner_id\/([0-9]+)(.*)entry_id.([a-zA-Z0-9-_].*)$/,S=/\.(m4a|m4b|mp4a|mpga|mp2|mp2a|mp3|m2a|m3a|wav|weba|aac|oga|spx)($|\?)/i,k=/\.(mp4|og[gv]|webm|mov|m4v)(#t=[,\d+]+)?($|\?)/i,E=/\.(m3u8)($|\?)/i,A=/\.(mpd)($|\?)/i,P=/\.(flv)($|\?)/i,O=e=>{if(e instanceof Array){for(const t of e){if("string"===typeof t&&O(t))return!0;if(O(t.src))return!0}return!1}return!(!(0,l.isMediaStream)(e)&&!(0,l.isBlobUrl)(e))||(S.test(e)||k.test(e)||E.test(e)||A.test(e)||P.test(e))},T={youtube:e=>e instanceof Array?e.every((e=>u.test(e))):u.test(e),soundcloud:e=>d.test(e)&&!S.test(e),vimeo:e=>h.test(e)&&!k.test(e)&&!E.test(e),facebook:e=>f.test(e)||p.test(e),streamable:e=>m.test(e),wistia:e=>g.test(e),twitch:e=>v.test(e)||y.test(e),dailymotion:e=>b.test(e),mixcloud:e=>w.test(e),vidyard:e=>x.test(e),kaltura:e=>_.test(e),file:O}},9247:(e,t,r)=>{Object.create;var n,i=Object.defineProperty,o=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,s=(Object.getPrototypeOf,Object.prototype.hasOwnProperty),c=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let c of a(t))s.call(e,c)||c===r||i(e,c,{get:()=>t[c],enumerable:!(n=o(t,c))||n.enumerable});return e},l={};((e,t)=>{for(var r in t)i(e,r,{get:t[r],enumerable:!0})})(l,{default:()=>h}),e.exports=(n=l,c(i({},"__esModule",{value:!0}),n));var u=r(9356),d=r(8243),h=[{key:"youtube",name:"YouTube",canPlay:d.canPlay.youtube,lazyPlayer:(0,u.lazy)((()=>r.e(439).then(r.t.bind(r,1646,23))))},{key:"soundcloud",name:"SoundCloud",canPlay:d.canPlay.soundcloud,lazyPlayer:(0,u.lazy)((()=>r.e(125).then(r.t.bind(r,8633,23))))},{key:"vimeo",name:"Vimeo",canPlay:d.canPlay.vimeo,lazyPlayer:(0,u.lazy)((()=>r.e(743).then(r.t.bind(r,4061,23))))},{key:"facebook",name:"Facebook",canPlay:d.canPlay.facebook,lazyPlayer:(0,u.lazy)((()=>r.e(121).then(r.t.bind(r,1879,23))))},{key:"streamable",name:"Streamable",canPlay:d.canPlay.streamable,lazyPlayer:(0,u.lazy)((()=>r.e(546).then(r.t.bind(r,6149,23))))},{key:"wistia",name:"Wistia",canPlay:d.canPlay.wistia,lazyPlayer:(0,u.lazy)((()=>r.e(55).then(r.t.bind(r,3791,23))))},{key:"twitch",name:"Twitch",canPlay:d.canPlay.twitch,lazyPlayer:(0,u.lazy)((()=>r.e(216).then(r.t.bind(r,2301,23))))},{key:"dailymotion",name:"DailyMotion",canPlay:d.canPlay.dailymotion,lazyPlayer:(0,u.lazy)((()=>r.e(596).then(r.t.bind(r,935,23))))},{key:"mixcloud",name:"Mixcloud",canPlay:d.canPlay.mixcloud,lazyPlayer:(0,u.lazy)((()=>r.e(667).then(r.t.bind(r,2339,23))))},{key:"vidyard",name:"Vidyard",canPlay:d.canPlay.vidyard,lazyPlayer:(0,u.lazy)((()=>r.e(888).then(r.t.bind(r,8484,23))))},{key:"kaltura",name:"Kaltura",canPlay:d.canPlay.kaltura,lazyPlayer:(0,u.lazy)((()=>r.e(261).then(r.t.bind(r,6275,23))))},{key:"file",name:"FilePlayer",canPlay:d.canPlay.file,canEnablePIP:e=>d.canPlay.file(e)&&(document.pictureInPictureEnabled||(0,u.supportsWebKitPresentationMode)())&&!d.AUDIO_EXTENSIONS.test(e),lazyPlayer:(0,u.lazy)((()=>r.e(11).then(r.t.bind(r,5257,23))))}]},4480:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(d,{defaultProps:()=>k,propTypes:()=>_}),e.exports=(n=d,u(o({},"__esModule",{value:!0}),n));var h=((e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)))(r(8795));const{string:f,bool:p,number:m,array:g,oneOfType:v,shape:y,object:b,func:w,node:x}=h.default,_={url:v([f,g,b]),playing:p,loop:p,controls:p,volume:m,muted:p,playbackRate:m,width:v([f,m]),height:v([f,m]),style:b,progressInterval:m,playsinline:p,pip:p,stopOnUnmount:p,light:v([p,f,b]),playIcon:x,previewTabIndex:m,fallback:x,oEmbedUrl:f,wrapper:v([f,w,y({render:w.isRequired})]),config:y({soundcloud:y({options:b}),youtube:y({playerVars:b,embedOptions:b,onUnstarted:w}),facebook:y({appId:f,version:f,playerId:f,attributes:b}),dailymotion:y({params:b}),vimeo:y({playerOptions:b,title:f}),file:y({attributes:b,tracks:g,forceVideo:p,forceAudio:p,forceHLS:p,forceSafariHLS:p,forceDisableHls:p,forceDASH:p,forceFLV:p,hlsOptions:b,hlsVersion:f,dashVersion:f,flvVersion:f}),wistia:y({options:b,playerId:f,customControls:g}),mixcloud:y({options:b}),twitch:y({options:b,playerId:f}),vidyard:y({options:b})}),onReady:w,onStart:w,onPlay:w,onPause:w,onBuffer:w,onBufferEnd:w,onEnded:w,onError:w,onDuration:w,onSeek:w,onPlaybackRateChange:w,onPlaybackQualityChange:w,onProgress:w,onClickPreview:w,onEnablePIP:w,onDisablePIP:w},S=()=>{},k={playing:!1,loop:!1,controls:!1,volume:null,muted:!1,playbackRate:1,width:"640px",height:"360px",style:{},progressInterval:1e3,playsinline:!1,pip:!1,stopOnUnmount:!0,light:!1,fallback:null,wrapper:"div",previewTabIndex:0,oEmbedUrl:"https://noembed.com/embed?url={url}",config:{soundcloud:{options:{visual:!0,buying:!1,liking:!1,download:!1,sharing:!1,show_comments:!1,show_playcount:!1}},youtube:{playerVars:{playsinline:1,showinfo:0,rel:0,iv_load_policy:3,modestbranding:1},embedOptions:{},onUnstarted:S},facebook:{appId:"1309697205772819",version:"v3.3",playerId:null,attributes:{}},dailymotion:{params:{api:1,"endscreen-enable":!1}},vimeo:{playerOptions:{autopause:!1,byline:!1,portrait:!1,title:!1},title:null},file:{attributes:{},tracks:[],forceVideo:!1,forceAudio:!1,forceHLS:!1,forceDASH:!1,forceFLV:!1,hlsOptions:{},hlsVersion:"1.1.4",dashVersion:"3.1.3",flvVersion:"1.5.0",forceDisableHls:!1},wistia:{options:{},playerId:null,customControls:null},mixcloud:{options:{hide_cover:1}},twitch:{options:{},playerId:null},vidyard:{options:{}}},onReady:S,onStart:S,onPlay:S,onPause:S,onBuffer:S,onBufferEnd:S,onEnded:S,onError:S,onDuration:S,onSeek:S,onPlaybackRateChange:S,onPlaybackQualityChange:S,onProgress:S,onClickPreview:S,onEnablePIP:S,onDisablePIP:S}},9356:(e,t,r)=>{var n,i=Object.create,o=Object.defineProperty,a=Object.getOwnPropertyDescriptor,s=Object.getOwnPropertyNames,c=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,u=(e,t,r,n)=>{if(t&&"object"===typeof t||"function"===typeof t)for(let i of s(t))l.call(e,i)||i===r||o(e,i,{get:()=>t[i],enumerable:!(n=a(t,i))||n.enumerable});return e},d=(e,t,r)=>(r=null!=e?i(c(e)):{},u(!t&&e&&e.__esModule?r:o(r,"default",{value:e,enumerable:!0}),e)),h={};((e,t)=>{for(var r in t)o(e,r,{get:t[r],enumerable:!0})})(h,{callPlayer:()=>j,getConfig:()=>T,getSDK:()=>O,isBlobUrl:()=>I,isMediaStream:()=>R,lazy:()=>g,omit:()=>C,parseEndTime:()=>S,parseStartTime:()=>_,queryString:()=>E,randomString:()=>k,supportsWebKitPresentationMode:()=>M}),e.exports=(n=h,u(o({},"__esModule",{value:!0}),n));var f=d(r(9652)),p=d(r(3419)),m=d(r(5434));const g=e=>f.default.lazy((async()=>{const t=await e();return"function"===typeof t.default?t:t.default})),v=/[?&#](?:start|t)=([0-9hms]+)/,y=/[?&#]end=([0-9hms]+)/,b=/(\d+)(h|m|s)/g,w=/^\d+$/;function x(e,t){if(e instanceof Array)return;const r=e.match(t);if(r){const e=r[1];if(e.match(b))return function(e){let t=0,r=b.exec(e);for(;null!==r;){const[,n,i]=r;"h"===i&&(t+=60*parseInt(n,10)*60),"m"===i&&(t+=60*parseInt(n,10)),"s"===i&&(t+=parseInt(n,10)),r=b.exec(e)}return t}(e);if(w.test(e))return parseInt(e)}}function _(e){return x(e,v)}function S(e){return x(e,y)}function k(){return Math.random().toString(36).substr(2,5)}function E(e){return Object.keys(e).map((t=>`${t}=${e[t]}`)).join("&")}function A(e){return window[e]?window[e]:window.exports&&window.exports[e]?window.exports[e]:window.module&&window.module.exports&&window.module.exports[e]?window.module.exports[e]:null}const P={},O=function(e){0;return e}((function(e,t,r=null,n=(()=>!0),i=p.default){const o=A(t);return o&&n(o)?Promise.resolve(o):new Promise(((n,o)=>{if(P[e])return void P[e].push({resolve:n,reject:o});P[e]=[{resolve:n,reject:o}];const a=t=>{P[e].forEach((e=>e.resolve(t)))};if(r){const e=window[r];window[r]=function(){e&&e(),a(A(t))}}i(e,(n=>{n?(P[e].forEach((e=>e.reject(n))),P[e]=null):r||a(A(t))}))}))}));function T(e,t){return(0,m.default)(t.config,e.config)}function C(e,...t){const r=[].concat(...t),n={},i=Object.keys(e);for(const o of i)-1===r.indexOf(o)&&(n[o]=e[o]);return n}function j(e,...t){if(!this.player||!this.player[e]){let t=`ReactPlayer: ${this.constructor.displayName} player could not call %c${e}%c \u2013 `;return this.player?this.player[e]||(t+="The method was not available"):t+="The player was not available",console.warn(t,"font-weight: bold",""),null}return this.player[e](...t)}function R(e){return"undefined"!==typeof window&&"undefined"!==typeof window.MediaStream&&e instanceof window.MediaStream}function I(e){return/^blob:/.test(e)}function M(e=document.createElement("video")){const t=!1===/iPhone|iPod/.test(navigator.userAgent);return e.webkitSupportsPresentationMode&&"function"===typeof e.webkitSetPresentationMode&&t}},2083:function(e,t,r){"use strict";var n=this&&this.__extends||function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])},e(t,r)};return function(t,r){function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}}();Object.defineProperty(t,"__esModule",{value:!0}),t.QRCode=void 0;var i=r(9724),o=r(3330),a=r(9652),s=r(2717),c=function(e){function t(t){var r=e.call(this,t)||this;return r.canvas=a.createRef(),r}return n(t,e),t.utf16to8=function(e){var t,r,n="",i=e.length;for(t=0;t=1&&r<=127?n+=e.charAt(t):r>2047?(n+=String.fromCharCode(224|r>>12&15),n+=String.fromCharCode(128|r>>6&63),n+=String.fromCharCode(128|r>>0&63)):(n+=String.fromCharCode(192|r>>6&31),n+=String.fromCharCode(128|r>>0&63));return n},t.prototype.drawRoundedSquare=function(e,t,r,n,i,o,a,s){s.lineWidth=e,s.fillStyle=i,s.strokeStyle=i,r+=e/2,t+=e/2,n-=e,Array.isArray(o)||(o=[o,o,o,o]);var c=(o=o.map((function(e){return(e=Math.min(e,n/2))<0?0:e})))[0]||0,l=o[1]||0,u=o[2]||0,d=o[3]||0;s.beginPath(),s.moveTo(t+c,r),s.lineTo(t+n-l,r),l&&s.quadraticCurveTo(t+n,r,t+n,r+l),s.lineTo(t+n,r+n-u),u&&s.quadraticCurveTo(t+n,r+n,t+n-u,r+n),s.lineTo(t+d,r+n),d&&s.quadraticCurveTo(t,r+n,t,r+n-d),s.lineTo(t,r+c),c&&s.quadraticCurveTo(t,r,t+c,r),s.closePath(),s.stroke(),a&&s.fill()},t.prototype.drawPositioningPattern=function(e,t,r,n,i,o,a){void 0===a&&(a=[0,0,0,0]);var s,c,l,u,d=Math.ceil(t);"number"===typeof a||Array.isArray(a)?c=s=a:(s=a.outer||0,c=a.inner||0),"string"!==typeof o?(l=o.outer,u=o.inner):(l=o,u=o);var h=n*t+r,f=i*t+r,p=7*t;this.drawRoundedSquare(d,f,h,p,l,s,!1,e),p=3*t,h+=2*t,f+=2*t,this.drawRoundedSquare(d,f,h,p,u,c,!0,e)},t.prototype.isInPositioninZone=function(e,t,r){return r.some((function(r){return t>=r.row&&t<=r.row+7&&e>=r.col&&e<=r.col+7}))},t.prototype.transformPixelLengthIntoNumberOfCells=function(e,t){return e/t},t.prototype.isCoordinateInImage=function(e,t,r,n,i,o,a,s){if(s){var c=this.transformPixelLengthIntoNumberOfCells(i,a),l=this.transformPixelLengthIntoNumberOfCells(o,a),u=this.transformPixelLengthIntoNumberOfCells(r,a)-1,d=this.transformPixelLengthIntoNumberOfCells(n,a)-1;return t>=c-2&&t<=c+u+2&&e>=l-2&&e<=l+d+2}return!1},t.prototype.shouldComponentUpdate=function(e){return!i(this.props,e)},t.prototype.componentDidMount=function(){this.update()},t.prototype.componentDidUpdate=function(){this.update()},t.prototype.update=function(){var e=this.props,r=e.value,n=e.ecLevel,i=e.enableCORS,a=e.bgColor,c=e.fgColor,l=e.logoImage,u=e.logoOpacity,d=e.logoOnLoad,h=e.removeQrCodeBehindLogo,f=e.qrStyle,p=e.eyeRadius,m=e.eyeColor,g=e.logoPaddingStyle,v=+this.props.size,y=+this.props.quietZone,b=this.props.logoWidth?+this.props.logoWidth:0,w=this.props.logoHeight?+this.props.logoHeight:0,x=this.props.logoPadding?+this.props.logoPadding:0,_=o(0,n);_.addData(t.utf16to8(r)),_.make();var S=s.findDOMNode(this.canvas.current),k=S.getContext("2d"),E=v+2*y,A=_.getModuleCount(),P=v/A,O=window.devicePixelRatio||1;S.height=S.width=E*O,k.scale(O,O),k.fillStyle=a,k.fillRect(0,0,E,E);var T=y,C=[{row:0,col:0},{row:0,col:A-7},{row:A-7,col:0}];if(k.strokeStyle=c,"dots"===f){k.fillStyle=c;for(var j=P/2,R=0;R{"use strict";r.d(t,{j:()=>a});var n=r(8619),i=r(37),o=r(9864),a=new(function(e){function t(){var t;return(t=e.call(this)||this).setup=function(e){var t;if(!o.sk&&(null==(t=window)?void 0:t.addEventListener)){var r=function(){return e()};return window.addEventListener("visibilitychange",r,!1),window.addEventListener("focus",r,!1),function(){window.removeEventListener("visibilitychange",r),window.removeEventListener("focus",r)}}},t}(0,n.Z)(t,e);var r=t.prototype;return r.onSubscribe=function(){this.cleanup||this.setEventListener(this.setup)},r.onUnsubscribe=function(){var e;this.hasListeners()||(null==(e=this.cleanup)||e.call(this),this.cleanup=void 0)},r.setEventListener=function(e){var t,r=this;this.setup=e,null==(t=this.cleanup)||t.call(this),this.cleanup=e((function(e){"boolean"===typeof e?r.setFocused(e):r.onFocus()}))},r.setFocused=function(e){this.focused=e,e&&this.onFocus()},r.onFocus=function(){this.listeners.forEach((function(e){e()}))},r.isFocused=function(){return"boolean"===typeof this.focused?this.focused:"undefined"===typeof document||[void 0,"visible","prerender"].includes(document.visibilityState)},t}(i.l))},9299:(e,t,r)=>{"use strict";r.d(t,{QueryClient:()=>n.S});var n=r(8699),i=r(6414);r.o(i,"QueryClientProvider")&&r.d(t,{QueryClientProvider:function(){return i.QueryClientProvider}}),r.o(i,"useQuery")&&r.d(t,{useQuery:function(){return i.useQuery}}),r.o(i,"useQueryClient")&&r.d(t,{useQueryClient:function(){return i.useQueryClient}})},6648:(e,t,r)=>{"use strict";r.d(t,{E:()=>o,j:()=>i});var n=console;function i(){return n}function o(e){n=e}},6346:(e,t,r)=>{"use strict";r.d(t,{V:()=>i});var n=r(9864),i=new(function(){function e(){this.queue=[],this.transactions=0,this.notifyFn=function(e){e()},this.batchNotifyFn=function(e){e()}}var t=e.prototype;return t.batch=function(e){var t;this.transactions++;try{t=e()}finally{this.transactions--,this.transactions||this.flush()}return t},t.schedule=function(e){var t=this;this.transactions?this.queue.push(e):(0,n.A4)((function(){t.notifyFn(e)}))},t.batchCalls=function(e){var t=this;return function(){for(var r=arguments.length,n=new Array(r),i=0;i{"use strict";r.d(t,{N:()=>a});var n=r(8619),i=r(37),o=r(9864),a=new(function(e){function t(){var t;return(t=e.call(this)||this).setup=function(e){var t;if(!o.sk&&(null==(t=window)?void 0:t.addEventListener)){var r=function(){return e()};return window.addEventListener("online",r,!1),window.addEventListener("offline",r,!1),function(){window.removeEventListener("online",r),window.removeEventListener("offline",r)}}},t}(0,n.Z)(t,e);var r=t.prototype;return r.onSubscribe=function(){this.cleanup||this.setEventListener(this.setup)},r.onUnsubscribe=function(){var e;this.hasListeners()||(null==(e=this.cleanup)||e.call(this),this.cleanup=void 0)},r.setEventListener=function(e){var t,r=this;this.setup=e,null==(t=this.cleanup)||t.call(this),this.cleanup=e((function(e){"boolean"===typeof e?r.setOnline(e):r.onOnline()}))},r.setOnline=function(e){this.online=e,e&&this.onOnline()},r.onOnline=function(){this.listeners.forEach((function(e){e()}))},r.isOnline=function(){return"boolean"===typeof this.online?this.online:"undefined"===typeof navigator||"undefined"===typeof navigator.onLine||navigator.onLine},t}(i.l))},8699:(e,t,r)=>{"use strict";r.d(t,{S:()=>y});var n=r(1730),i=r(9864),o=r(8619),a=r(6346),s=r(6648),c=r(7356),l=function(){function e(e){this.abortSignalConsumed=!1,this.hadObservers=!1,this.defaultOptions=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.cache=e.cache,this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.initialState=e.state||this.getDefaultState(this.options),this.state=this.initialState,this.meta=e.meta,this.scheduleGc()}var t=e.prototype;return t.setOptions=function(e){var t;this.options=(0,n.Z)({},this.defaultOptions,e),this.meta=null==e?void 0:e.meta,this.cacheTime=Math.max(this.cacheTime||0,null!=(t=this.options.cacheTime)?t:3e5)},t.setDefaultOptions=function(e){this.defaultOptions=e},t.scheduleGc=function(){var e=this;this.clearGcTimeout(),(0,i.PN)(this.cacheTime)&&(this.gcTimeout=setTimeout((function(){e.optionalRemove()}),this.cacheTime))},t.clearGcTimeout=function(){this.gcTimeout&&(clearTimeout(this.gcTimeout),this.gcTimeout=void 0)},t.optionalRemove=function(){this.observers.length||(this.state.isFetching?this.hadObservers&&this.scheduleGc():this.cache.remove(this))},t.setData=function(e,t){var r,n,o=this.state.data,a=(0,i.SE)(e,o);return(null==(r=(n=this.options).isDataEqual)?void 0:r.call(n,o,a))?a=o:!1!==this.options.structuralSharing&&(a=(0,i.Q$)(o,a)),this.dispatch({data:a,type:"success",dataUpdatedAt:null==t?void 0:t.updatedAt}),a},t.setState=function(e,t){this.dispatch({type:"setState",state:e,setStateOptions:t})},t.cancel=function(e){var t,r=this.promise;return null==(t=this.retryer)||t.cancel(e),r?r.then(i.ZT).catch(i.ZT):Promise.resolve()},t.destroy=function(){this.clearGcTimeout(),this.cancel({silent:!0})},t.reset=function(){this.destroy(),this.setState(this.initialState)},t.isActive=function(){return this.observers.some((function(e){return!1!==e.options.enabled}))},t.isFetching=function(){return this.state.isFetching},t.isStale=function(){return this.state.isInvalidated||!this.state.dataUpdatedAt||this.observers.some((function(e){return e.getCurrentResult().isStale}))},t.isStaleByTime=function(e){return void 0===e&&(e=0),this.state.isInvalidated||!this.state.dataUpdatedAt||!(0,i.Kp)(this.state.dataUpdatedAt,e)},t.onFocus=function(){var e,t=this.observers.find((function(e){return e.shouldFetchOnWindowFocus()}));t&&t.refetch(),null==(e=this.retryer)||e.continue()},t.onOnline=function(){var e,t=this.observers.find((function(e){return e.shouldFetchOnReconnect()}));t&&t.refetch(),null==(e=this.retryer)||e.continue()},t.addObserver=function(e){-1===this.observers.indexOf(e)&&(this.observers.push(e),this.hadObservers=!0,this.clearGcTimeout(),this.cache.notify({type:"observerAdded",query:this,observer:e}))},t.removeObserver=function(e){-1!==this.observers.indexOf(e)&&(this.observers=this.observers.filter((function(t){return t!==e})),this.observers.length||(this.retryer&&(this.retryer.isTransportCancelable||this.abortSignalConsumed?this.retryer.cancel({revert:!0}):this.retryer.cancelRetry()),this.cacheTime?this.scheduleGc():this.cache.remove(this)),this.cache.notify({type:"observerRemoved",query:this,observer:e}))},t.getObserversCount=function(){return this.observers.length},t.invalidate=function(){this.state.isInvalidated||this.dispatch({type:"invalidate"})},t.fetch=function(e,t){var r,n,o,a=this;if(this.state.isFetching)if(this.state.dataUpdatedAt&&(null==t?void 0:t.cancelRefetch))this.cancel({silent:!0});else if(this.promise){var l;return null==(l=this.retryer)||l.continueRetry(),this.promise}if(e&&this.setOptions(e),!this.options.queryFn){var u=this.observers.find((function(e){return e.options.queryFn}));u&&this.setOptions(u.options)}var d=(0,i.mc)(this.queryKey),h=(0,i.G9)(),f={queryKey:d,pageParam:void 0,meta:this.meta};Object.defineProperty(f,"signal",{enumerable:!0,get:function(){if(h)return a.abortSignalConsumed=!0,h.signal}});var p,m,g={fetchOptions:t,options:this.options,queryKey:d,state:this.state,fetchFn:function(){return a.options.queryFn?(a.abortSignalConsumed=!1,a.options.queryFn(f)):Promise.reject("Missing queryFn")},meta:this.meta};(null==(r=this.options.behavior)?void 0:r.onFetch)&&(null==(p=this.options.behavior)||p.onFetch(g));(this.revertState=this.state,this.state.isFetching&&this.state.fetchMeta===(null==(n=g.fetchOptions)?void 0:n.meta))||this.dispatch({type:"fetch",meta:null==(m=g.fetchOptions)?void 0:m.meta});return this.retryer=new c.m4({fn:g.fetchFn,abort:null==h||null==(o=h.abort)?void 0:o.bind(h),onSuccess:function(e){a.setData(e),null==a.cache.config.onSuccess||a.cache.config.onSuccess(e,a),0===a.cacheTime&&a.optionalRemove()},onError:function(e){(0,c.DV)(e)&&e.silent||a.dispatch({type:"error",error:e}),(0,c.DV)(e)||(null==a.cache.config.onError||a.cache.config.onError(e,a),(0,s.j)().error(e)),0===a.cacheTime&&a.optionalRemove()},onFail:function(){a.dispatch({type:"failed"})},onPause:function(){a.dispatch({type:"pause"})},onContinue:function(){a.dispatch({type:"continue"})},retry:g.options.retry,retryDelay:g.options.retryDelay}),this.promise=this.retryer.promise,this.promise},t.dispatch=function(e){var t=this;this.state=this.reducer(this.state,e),a.V.batch((function(){t.observers.forEach((function(t){t.onQueryUpdate(e)})),t.cache.notify({query:t,type:"queryUpdated",action:e})}))},t.getDefaultState=function(e){var t="function"===typeof e.initialData?e.initialData():e.initialData,r="undefined"!==typeof e.initialData?"function"===typeof e.initialDataUpdatedAt?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0,n="undefined"!==typeof t;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?null!=r?r:Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchMeta:null,isFetching:!1,isInvalidated:!1,isPaused:!1,status:n?"success":"idle"}},t.reducer=function(e,t){var r,i;switch(t.type){case"failed":return(0,n.Z)({},e,{fetchFailureCount:e.fetchFailureCount+1});case"pause":return(0,n.Z)({},e,{isPaused:!0});case"continue":return(0,n.Z)({},e,{isPaused:!1});case"fetch":return(0,n.Z)({},e,{fetchFailureCount:0,fetchMeta:null!=(r=t.meta)?r:null,isFetching:!0,isPaused:!1},!e.dataUpdatedAt&&{error:null,status:"loading"});case"success":return(0,n.Z)({},e,{data:t.data,dataUpdateCount:e.dataUpdateCount+1,dataUpdatedAt:null!=(i=t.dataUpdatedAt)?i:Date.now(),error:null,fetchFailureCount:0,isFetching:!1,isInvalidated:!1,isPaused:!1,status:"success"});case"error":var o=t.error;return(0,c.DV)(o)&&o.revert&&this.revertState?(0,n.Z)({},this.revertState):(0,n.Z)({},e,{error:o,errorUpdateCount:e.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:e.fetchFailureCount+1,isFetching:!1,isPaused:!1,status:"error"});case"invalidate":return(0,n.Z)({},e,{isInvalidated:!0});case"setState":return(0,n.Z)({},e,t.state);default:return e}},e}(),u=r(37),d=function(e){function t(t){var r;return(r=e.call(this)||this).config=t||{},r.queries=[],r.queriesMap={},r}(0,o.Z)(t,e);var r=t.prototype;return r.build=function(e,t,r){var n,o=t.queryKey,a=null!=(n=t.queryHash)?n:(0,i.Rm)(o,t),s=this.get(a);return s||(s=new l({cache:this,queryKey:o,queryHash:a,options:e.defaultQueryOptions(t),state:r,defaultOptions:e.getQueryDefaults(o),meta:t.meta}),this.add(s)),s},r.add=function(e){this.queriesMap[e.queryHash]||(this.queriesMap[e.queryHash]=e,this.queries.push(e),this.notify({type:"queryAdded",query:e}))},r.remove=function(e){var t=this.queriesMap[e.queryHash];t&&(e.destroy(),this.queries=this.queries.filter((function(t){return t!==e})),t===e&&delete this.queriesMap[e.queryHash],this.notify({type:"queryRemoved",query:e}))},r.clear=function(){var e=this;a.V.batch((function(){e.queries.forEach((function(t){e.remove(t)}))}))},r.get=function(e){return this.queriesMap[e]},r.getAll=function(){return this.queries},r.find=function(e,t){var r=(0,i.I6)(e,t)[0];return"undefined"===typeof r.exact&&(r.exact=!0),this.queries.find((function(e){return(0,i._x)(r,e)}))},r.findAll=function(e,t){var r=(0,i.I6)(e,t)[0];return Object.keys(r).length>0?this.queries.filter((function(e){return(0,i._x)(r,e)})):this.queries},r.notify=function(e){var t=this;a.V.batch((function(){t.listeners.forEach((function(t){t(e)}))}))},r.onFocus=function(){var e=this;a.V.batch((function(){e.queries.forEach((function(e){e.onFocus()}))}))},r.onOnline=function(){var e=this;a.V.batch((function(){e.queries.forEach((function(e){e.onOnline()}))}))},t}(u.l),h=function(){function e(e){this.options=(0,n.Z)({},e.defaultOptions,e.options),this.mutationId=e.mutationId,this.mutationCache=e.mutationCache,this.observers=[],this.state=e.state||{context:void 0,data:void 0,error:null,failureCount:0,isPaused:!1,status:"idle",variables:void 0},this.meta=e.meta}var t=e.prototype;return t.setState=function(e){this.dispatch({type:"setState",state:e})},t.addObserver=function(e){-1===this.observers.indexOf(e)&&this.observers.push(e)},t.removeObserver=function(e){this.observers=this.observers.filter((function(t){return t!==e}))},t.cancel=function(){return this.retryer?(this.retryer.cancel(),this.retryer.promise.then(i.ZT).catch(i.ZT)):Promise.resolve()},t.continue=function(){return this.retryer?(this.retryer.continue(),this.retryer.promise):this.execute()},t.execute=function(){var e,t=this,r="loading"===this.state.status,n=Promise.resolve();return r||(this.dispatch({type:"loading",variables:this.options.variables}),n=n.then((function(){null==t.mutationCache.config.onMutate||t.mutationCache.config.onMutate(t.state.variables,t)})).then((function(){return null==t.options.onMutate?void 0:t.options.onMutate(t.state.variables)})).then((function(e){e!==t.state.context&&t.dispatch({type:"loading",context:e,variables:t.state.variables})}))),n.then((function(){return t.executeMutation()})).then((function(r){e=r,null==t.mutationCache.config.onSuccess||t.mutationCache.config.onSuccess(e,t.state.variables,t.state.context,t)})).then((function(){return null==t.options.onSuccess?void 0:t.options.onSuccess(e,t.state.variables,t.state.context)})).then((function(){return null==t.options.onSettled?void 0:t.options.onSettled(e,null,t.state.variables,t.state.context)})).then((function(){return t.dispatch({type:"success",data:e}),e})).catch((function(e){return null==t.mutationCache.config.onError||t.mutationCache.config.onError(e,t.state.variables,t.state.context,t),(0,s.j)().error(e),Promise.resolve().then((function(){return null==t.options.onError?void 0:t.options.onError(e,t.state.variables,t.state.context)})).then((function(){return null==t.options.onSettled?void 0:t.options.onSettled(void 0,e,t.state.variables,t.state.context)})).then((function(){throw t.dispatch({type:"error",error:e}),e}))}))},t.executeMutation=function(){var e,t=this;return this.retryer=new c.m4({fn:function(){return t.options.mutationFn?t.options.mutationFn(t.state.variables):Promise.reject("No mutationFn found")},onFail:function(){t.dispatch({type:"failed"})},onPause:function(){t.dispatch({type:"pause"})},onContinue:function(){t.dispatch({type:"continue"})},retry:null!=(e=this.options.retry)?e:0,retryDelay:this.options.retryDelay}),this.retryer.promise},t.dispatch=function(e){var t=this;this.state=function(e,t){switch(t.type){case"failed":return(0,n.Z)({},e,{failureCount:e.failureCount+1});case"pause":return(0,n.Z)({},e,{isPaused:!0});case"continue":return(0,n.Z)({},e,{isPaused:!1});case"loading":return(0,n.Z)({},e,{context:t.context,data:void 0,error:null,isPaused:!1,status:"loading",variables:t.variables});case"success":return(0,n.Z)({},e,{data:t.data,error:null,status:"success",isPaused:!1});case"error":return(0,n.Z)({},e,{data:void 0,error:t.error,failureCount:e.failureCount+1,isPaused:!1,status:"error"});case"setState":return(0,n.Z)({},e,t.state);default:return e}}(this.state,e),a.V.batch((function(){t.observers.forEach((function(t){t.onMutationUpdate(e)})),t.mutationCache.notify(t)}))},e}();var f=function(e){function t(t){var r;return(r=e.call(this)||this).config=t||{},r.mutations=[],r.mutationId=0,r}(0,o.Z)(t,e);var r=t.prototype;return r.build=function(e,t,r){var n=new h({mutationCache:this,mutationId:++this.mutationId,options:e.defaultMutationOptions(t),state:r,defaultOptions:t.mutationKey?e.getMutationDefaults(t.mutationKey):void 0,meta:t.meta});return this.add(n),n},r.add=function(e){this.mutations.push(e),this.notify(e)},r.remove=function(e){this.mutations=this.mutations.filter((function(t){return t!==e})),e.cancel(),this.notify(e)},r.clear=function(){var e=this;a.V.batch((function(){e.mutations.forEach((function(t){e.remove(t)}))}))},r.getAll=function(){return this.mutations},r.find=function(e){return"undefined"===typeof e.exact&&(e.exact=!0),this.mutations.find((function(t){return(0,i.X7)(e,t)}))},r.findAll=function(e){return this.mutations.filter((function(t){return(0,i.X7)(e,t)}))},r.notify=function(e){var t=this;a.V.batch((function(){t.listeners.forEach((function(t){t(e)}))}))},r.onFocus=function(){this.resumePausedMutations()},r.onOnline=function(){this.resumePausedMutations()},r.resumePausedMutations=function(){var e=this.mutations.filter((function(e){return e.state.isPaused}));return a.V.batch((function(){return e.reduce((function(e,t){return e.then((function(){return t.continue().catch(i.ZT)}))}),Promise.resolve())}))},t}(u.l),p=r(5133),m=r(8101);function g(e,t){return null==e.getNextPageParam?void 0:e.getNextPageParam(t[t.length-1],t)}function v(e,t){return null==e.getPreviousPageParam?void 0:e.getPreviousPageParam(t[0],t)}var y=function(){function e(e){void 0===e&&(e={}),this.queryCache=e.queryCache||new d,this.mutationCache=e.mutationCache||new f,this.defaultOptions=e.defaultOptions||{},this.queryDefaults=[],this.mutationDefaults=[]}var t=e.prototype;return t.mount=function(){var e=this;this.unsubscribeFocus=p.j.subscribe((function(){p.j.isFocused()&&m.N.isOnline()&&(e.mutationCache.onFocus(),e.queryCache.onFocus())})),this.unsubscribeOnline=m.N.subscribe((function(){p.j.isFocused()&&m.N.isOnline()&&(e.mutationCache.onOnline(),e.queryCache.onOnline())}))},t.unmount=function(){var e,t;null==(e=this.unsubscribeFocus)||e.call(this),null==(t=this.unsubscribeOnline)||t.call(this)},t.isFetching=function(e,t){var r=(0,i.I6)(e,t)[0];return r.fetching=!0,this.queryCache.findAll(r).length},t.isMutating=function(e){return this.mutationCache.findAll((0,n.Z)({},e,{fetching:!0})).length},t.getQueryData=function(e,t){var r;return null==(r=this.queryCache.find(e,t))?void 0:r.state.data},t.getQueriesData=function(e){return this.getQueryCache().findAll(e).map((function(e){return[e.queryKey,e.state.data]}))},t.setQueryData=function(e,t,r){var n=(0,i._v)(e),o=this.defaultQueryOptions(n);return this.queryCache.build(this,o).setData(t,r)},t.setQueriesData=function(e,t,r){var n=this;return a.V.batch((function(){return n.getQueryCache().findAll(e).map((function(e){var i=e.queryKey;return[i,n.setQueryData(i,t,r)]}))}))},t.getQueryState=function(e,t){var r;return null==(r=this.queryCache.find(e,t))?void 0:r.state},t.removeQueries=function(e,t){var r=(0,i.I6)(e,t)[0],n=this.queryCache;a.V.batch((function(){n.findAll(r).forEach((function(e){n.remove(e)}))}))},t.resetQueries=function(e,t,r){var o=this,s=(0,i.I6)(e,t,r),c=s[0],l=s[1],u=this.queryCache,d=(0,n.Z)({},c,{active:!0});return a.V.batch((function(){return u.findAll(c).forEach((function(e){e.reset()})),o.refetchQueries(d,l)}))},t.cancelQueries=function(e,t,r){var n=this,o=(0,i.I6)(e,t,r),s=o[0],c=o[1],l=void 0===c?{}:c;"undefined"===typeof l.revert&&(l.revert=!0);var u=a.V.batch((function(){return n.queryCache.findAll(s).map((function(e){return e.cancel(l)}))}));return Promise.all(u).then(i.ZT).catch(i.ZT)},t.invalidateQueries=function(e,t,r){var o,s,c,l=this,u=(0,i.I6)(e,t,r),d=u[0],h=u[1],f=(0,n.Z)({},d,{active:null==(o=null!=(s=d.refetchActive)?s:d.active)||o,inactive:null!=(c=d.refetchInactive)&&c});return a.V.batch((function(){return l.queryCache.findAll(d).forEach((function(e){e.invalidate()})),l.refetchQueries(f,h)}))},t.refetchQueries=function(e,t,r){var o=this,s=(0,i.I6)(e,t,r),c=s[0],l=s[1],u=a.V.batch((function(){return o.queryCache.findAll(c).map((function(e){return e.fetch(void 0,(0,n.Z)({},l,{meta:{refetchPage:null==c?void 0:c.refetchPage}}))}))})),d=Promise.all(u).then(i.ZT);return(null==l?void 0:l.throwOnError)||(d=d.catch(i.ZT)),d},t.fetchQuery=function(e,t,r){var n=(0,i._v)(e,t,r),o=this.defaultQueryOptions(n);"undefined"===typeof o.retry&&(o.retry=!1);var a=this.queryCache.build(this,o);return a.isStaleByTime(o.staleTime)?a.fetch(o):Promise.resolve(a.state.data)},t.prefetchQuery=function(e,t,r){return this.fetchQuery(e,t,r).then(i.ZT).catch(i.ZT)},t.fetchInfiniteQuery=function(e,t,r){var n=(0,i._v)(e,t,r);return n.behavior={onFetch:function(e){e.fetchFn=function(){var t,r,n,o,a,s,l,u=null==(t=e.fetchOptions)||null==(r=t.meta)?void 0:r.refetchPage,d=null==(n=e.fetchOptions)||null==(o=n.meta)?void 0:o.fetchMore,h=null==d?void 0:d.pageParam,f="forward"===(null==d?void 0:d.direction),p="backward"===(null==d?void 0:d.direction),m=(null==(a=e.state.data)?void 0:a.pages)||[],y=(null==(s=e.state.data)?void 0:s.pageParams)||[],b=(0,i.G9)(),w=null==b?void 0:b.signal,x=y,_=!1,S=e.options.queryFn||function(){return Promise.reject("Missing queryFn")},k=function(e,t,r,n){return x=n?[t].concat(x):[].concat(x,[t]),n?[r].concat(e):[].concat(e,[r])},E=function(t,r,n,i){if(_)return Promise.reject("Cancelled");if("undefined"===typeof n&&!r&&t.length)return Promise.resolve(t);var o={queryKey:e.queryKey,signal:w,pageParam:n,meta:e.meta},a=S(o),s=Promise.resolve(a).then((function(e){return k(t,n,e,i)}));return(0,c.LE)(a)&&(s.cancel=a.cancel),s};if(m.length)if(f){var A="undefined"!==typeof h,P=A?h:g(e.options,m);l=E(m,A,P)}else if(p){var O="undefined"!==typeof h,T=O?h:v(e.options,m);l=E(m,O,T,!0)}else!function(){x=[];var t="undefined"===typeof e.options.getNextPageParam,r=!u||!m[0]||u(m[0],0,m);l=r?E([],t,y[0]):Promise.resolve(k([],y[0],m[0]));for(var n=function(r){l=l.then((function(n){if(!u||!m[r]||u(m[r],r,m)){var i=t?y[r]:g(e.options,n);return E(n,t,i)}return Promise.resolve(k(n,y[r],m[r]))}))},i=1;i{"use strict";r.d(t,{DV:()=>l,LE:()=>s,m4:()=>u});var n=r(5133),i=r(8101),o=r(9864);function a(e){return Math.min(1e3*Math.pow(2,e),3e4)}function s(e){return"function"===typeof(null==e?void 0:e.cancel)}var c=function(e){this.revert=null==e?void 0:e.revert,this.silent=null==e?void 0:e.silent};function l(e){return e instanceof c}var u=function(e){var t,r,l,u,d=this,h=!1;this.abort=e.abort,this.cancel=function(e){return null==t?void 0:t(e)},this.cancelRetry=function(){h=!0},this.continueRetry=function(){h=!1},this.continue=function(){return null==r?void 0:r()},this.failureCount=0,this.isPaused=!1,this.isResolved=!1,this.isTransportCancelable=!1,this.promise=new Promise((function(e,t){l=e,u=t}));var f=function(t){d.isResolved||(d.isResolved=!0,null==e.onSuccess||e.onSuccess(t),null==r||r(),l(t))},p=function(t){d.isResolved||(d.isResolved=!0,null==e.onError||e.onError(t),null==r||r(),u(t))};!function l(){if(!d.isResolved){var u;try{u=e.fn()}catch(m){u=Promise.reject(m)}t=function(e){if(!d.isResolved&&(p(new c(e)),null==d.abort||d.abort(),s(u)))try{u.cancel()}catch(t){}},d.isTransportCancelable=s(u),Promise.resolve(u).then(f).catch((function(t){var s,c;if(!d.isResolved){var u=null!=(s=e.retry)?s:3,f=null!=(c=e.retryDelay)?c:a,m="function"===typeof f?f(d.failureCount,t):f,g=!0===u||"number"===typeof u&&d.failureCount{"use strict";r.d(t,{l:()=>n});var n=function(){function e(){this.listeners=[]}var t=e.prototype;return t.subscribe=function(e){var t=this,r=e||function(){};return this.listeners.push(r),this.onSubscribe(),function(){t.listeners=t.listeners.filter((function(e){return e!==r})),t.onUnsubscribe()}},t.hasListeners=function(){return this.listeners.length>0},t.onSubscribe=function(){},t.onUnsubscribe=function(){},e}()},6414:()=>{},9864:(e,t,r)=>{"use strict";r.d(t,{A4:()=>k,G9:()=>E,Gh:()=>S,I6:()=>d,Kp:()=>l,PN:()=>s,Q$:()=>y,Rm:()=>p,SE:()=>a,VS:()=>b,X7:()=>f,ZT:()=>o,_v:()=>u,_x:()=>h,mc:()=>c,sk:()=>i,to:()=>g,yF:()=>m});var n=r(1730),i="undefined"===typeof window;function o(){}function a(e,t){return"function"===typeof e?e(t):e}function s(e){return"number"===typeof e&&e>=0&&e!==1/0}function c(e){return Array.isArray(e)?e:[e]}function l(e,t){return Math.max(e+(t||0)-Date.now(),0)}function u(e,t,r){return _(e)?"function"===typeof t?(0,n.Z)({},r,{queryKey:e,queryFn:t}):(0,n.Z)({},t,{queryKey:e}):e}function d(e,t,r){return _(e)?[(0,n.Z)({},t,{queryKey:e}),r]:[e||{},t]}function h(e,t){var r=e.active,n=e.exact,i=e.fetching,o=e.inactive,a=e.predicate,s=e.queryKey,c=e.stale;if(_(s))if(n){if(t.queryHash!==p(s,t.options))return!1}else if(!g(t.queryKey,s))return!1;var l=function(e,t){return!0===e&&!0===t||null==e&&null==t?"all":!1===e&&!1===t?"none":(null!=e?e:!t)?"active":"inactive"}(r,o);if("none"===l)return!1;if("all"!==l){var u=t.isActive();if("active"===l&&!u)return!1;if("inactive"===l&&u)return!1}return("boolean"!==typeof c||t.isStale()===c)&&(("boolean"!==typeof i||t.isFetching()===i)&&!(a&&!a(t)))}function f(e,t){var r=e.exact,n=e.fetching,i=e.predicate,o=e.mutationKey;if(_(o)){if(!t.options.mutationKey)return!1;if(r){if(m(t.options.mutationKey)!==m(o))return!1}else if(!g(t.options.mutationKey,o))return!1}return("boolean"!==typeof n||"loading"===t.state.status===n)&&!(i&&!i(t))}function p(e,t){return((null==t?void 0:t.queryKeyHashFn)||m)(e)}function m(e){var t,r=c(e);return t=r,JSON.stringify(t,(function(e,t){return w(t)?Object.keys(t).sort().reduce((function(e,r){return e[r]=t[r],e}),{}):t}))}function g(e,t){return v(c(e),c(t))}function v(e,t){return e===t||typeof e===typeof t&&(!(!e||!t||"object"!==typeof e||"object"!==typeof t)&&!Object.keys(t).some((function(r){return!v(e[r],t[r])})))}function y(e,t){if(e===t)return e;var r=Array.isArray(e)&&Array.isArray(t);if(r||w(e)&&w(t)){for(var n=r?e.length:Object.keys(e).length,i=r?t:Object.keys(t),o=i.length,a=r?[]:{},s=0,c=0;c{"use strict";r.d(t,{QueryClient:()=>n.QueryClient,QueryClientProvider:()=>i.QueryClientProvider,useQuery:()=>i.useQuery,useQueryClient:()=>i.useQueryClient});var n=r(9299);r.o(n,"QueryClientProvider")&&r.d(t,{QueryClientProvider:function(){return n.QueryClientProvider}}),r.o(n,"useQuery")&&r.d(t,{useQuery:function(){return n.useQuery}}),r.o(n,"useQueryClient")&&r.d(t,{useQueryClient:function(){return n.useQueryClient}});var i=r(9090)},9090:(e,t,r)=>{"use strict";r.d(t,{QueryClientProvider:()=>h,useQuery:()=>P,useQueryClient:()=>d});var n=r(6346),i=r(2717).unstable_batchedUpdates;n.V.setBatchNotifyFunction(i);var o=r(6648),a=console;(0,o.E)(a);var s=r(9652),c=s.createContext(void 0),l=s.createContext(!1);function u(e){return e&&"undefined"!==typeof window?(window.ReactQueryClientContext||(window.ReactQueryClientContext=c),window.ReactQueryClientContext):c}var d=function(){var e=s.useContext(u(s.useContext(l)));if(!e)throw new Error("No QueryClient set, use QueryClientProvider to set one");return e},h=function(e){var t=e.client,r=e.contextSharing,n=void 0!==r&&r,i=e.children;s.useEffect((function(){return t.mount(),function(){t.unmount()}}),[t]);var o=u(n);return s.createElement(l.Provider,{value:n},s.createElement(o.Provider,{value:t},i))},f=r(1730),p=r(8619),m=r(9864),g=r(5133),v=r(37),y=r(7356),b=function(e){function t(t,r){var n;return(n=e.call(this)||this).client=t,n.options=r,n.trackedProps=[],n.selectError=null,n.bindMethods(),n.setOptions(r),n}(0,p.Z)(t,e);var r=t.prototype;return r.bindMethods=function(){this.remove=this.remove.bind(this),this.refetch=this.refetch.bind(this)},r.onSubscribe=function(){1===this.listeners.length&&(this.currentQuery.addObserver(this),w(this.currentQuery,this.options)&&this.executeFetch(),this.updateTimers())},r.onUnsubscribe=function(){this.listeners.length||this.destroy()},r.shouldFetchOnReconnect=function(){return x(this.currentQuery,this.options,this.options.refetchOnReconnect)},r.shouldFetchOnWindowFocus=function(){return x(this.currentQuery,this.options,this.options.refetchOnWindowFocus)},r.destroy=function(){this.listeners=[],this.clearTimers(),this.currentQuery.removeObserver(this)},r.setOptions=function(e,t){var r=this.options,n=this.currentQuery;if(this.options=this.client.defaultQueryObserverOptions(e),"undefined"!==typeof this.options.enabled&&"boolean"!==typeof this.options.enabled)throw new Error("Expected enabled to be a boolean");this.options.queryKey||(this.options.queryKey=r.queryKey),this.updateQuery();var i=this.hasListeners();i&&_(this.currentQuery,n,this.options,r)&&this.executeFetch(),this.updateResult(t),!i||this.currentQuery===n&&this.options.enabled===r.enabled&&this.options.staleTime===r.staleTime||this.updateStaleTimeout();var o=this.computeRefetchInterval();!i||this.currentQuery===n&&this.options.enabled===r.enabled&&o===this.currentRefetchInterval||this.updateRefetchInterval(o)},r.getOptimisticResult=function(e){var t=this.client.defaultQueryObserverOptions(e),r=this.client.getQueryCache().build(this.client,t);return this.createResult(r,t)},r.getCurrentResult=function(){return this.currentResult},r.trackResult=function(e,t){var r=this,n={},i=function(e){r.trackedProps.includes(e)||r.trackedProps.push(e)};return Object.keys(e).forEach((function(t){Object.defineProperty(n,t,{configurable:!1,enumerable:!0,get:function(){return i(t),e[t]}})})),(t.useErrorBoundary||t.suspense)&&i("error"),n},r.getNextResult=function(e){var t=this;return new Promise((function(r,n){var i=t.subscribe((function(t){t.isFetching||(i(),t.isError&&(null==e?void 0:e.throwOnError)?n(t.error):r(t))}))}))},r.getCurrentQuery=function(){return this.currentQuery},r.remove=function(){this.client.getQueryCache().remove(this.currentQuery)},r.refetch=function(e){return this.fetch((0,f.Z)({},e,{meta:{refetchPage:null==e?void 0:e.refetchPage}}))},r.fetchOptimistic=function(e){var t=this,r=this.client.defaultQueryObserverOptions(e),n=this.client.getQueryCache().build(this.client,r);return n.fetch().then((function(){return t.createResult(n,r)}))},r.fetch=function(e){var t=this;return this.executeFetch(e).then((function(){return t.updateResult(),t.currentResult}))},r.executeFetch=function(e){this.updateQuery();var t=this.currentQuery.fetch(this.options,e);return(null==e?void 0:e.throwOnError)||(t=t.catch(m.ZT)),t},r.updateStaleTimeout=function(){var e=this;if(this.clearStaleTimeout(),!m.sk&&!this.currentResult.isStale&&(0,m.PN)(this.options.staleTime)){var t=(0,m.Kp)(this.currentResult.dataUpdatedAt,this.options.staleTime)+1;this.staleTimeoutId=setTimeout((function(){e.currentResult.isStale||e.updateResult()}),t)}},r.computeRefetchInterval=function(){var e;return"function"===typeof this.options.refetchInterval?this.options.refetchInterval(this.currentResult.data,this.currentQuery):null!=(e=this.options.refetchInterval)&&e},r.updateRefetchInterval=function(e){var t=this;this.clearRefetchInterval(),this.currentRefetchInterval=e,!m.sk&&!1!==this.options.enabled&&(0,m.PN)(this.currentRefetchInterval)&&0!==this.currentRefetchInterval&&(this.refetchIntervalId=setInterval((function(){(t.options.refetchIntervalInBackground||g.j.isFocused())&&t.executeFetch()}),this.currentRefetchInterval))},r.updateTimers=function(){this.updateStaleTimeout(),this.updateRefetchInterval(this.computeRefetchInterval())},r.clearTimers=function(){this.clearStaleTimeout(),this.clearRefetchInterval()},r.clearStaleTimeout=function(){this.staleTimeoutId&&(clearTimeout(this.staleTimeoutId),this.staleTimeoutId=void 0)},r.clearRefetchInterval=function(){this.refetchIntervalId&&(clearInterval(this.refetchIntervalId),this.refetchIntervalId=void 0)},r.createResult=function(e,t){var r,n=this.currentQuery,i=this.options,a=this.currentResult,s=this.currentResultState,c=this.currentResultOptions,l=e!==n,u=l?e.state:this.currentQueryInitialState,d=l?this.currentResult:this.previousQueryResult,h=e.state,f=h.dataUpdatedAt,p=h.error,g=h.errorUpdatedAt,v=h.isFetching,y=h.status,b=!1,x=!1;if(t.optimisticResults){var k=this.hasListeners(),E=!k&&w(e,t),A=k&&_(e,n,t,i);(E||A)&&(v=!0,f||(y="loading"))}if(t.keepPreviousData&&!h.dataUpdateCount&&(null==d?void 0:d.isSuccess)&&"error"!==y)r=d.data,f=d.dataUpdatedAt,y=d.status,b=!0;else if(t.select&&"undefined"!==typeof h.data)if(a&&h.data===(null==s?void 0:s.data)&&t.select===this.selectFn)r=this.selectResult;else try{this.selectFn=t.select,r=t.select(h.data),!1!==t.structuralSharing&&(r=(0,m.Q$)(null==a?void 0:a.data,r)),this.selectResult=r,this.selectError=null}catch(O){(0,o.j)().error(O),this.selectError=O}else r=h.data;if("undefined"!==typeof t.placeholderData&&"undefined"===typeof r&&("loading"===y||"idle"===y)){var P;if((null==a?void 0:a.isPlaceholderData)&&t.placeholderData===(null==c?void 0:c.placeholderData))P=a.data;else if(P="function"===typeof t.placeholderData?t.placeholderData():t.placeholderData,t.select&&"undefined"!==typeof P)try{P=t.select(P),!1!==t.structuralSharing&&(P=(0,m.Q$)(null==a?void 0:a.data,P)),this.selectError=null}catch(O){(0,o.j)().error(O),this.selectError=O}"undefined"!==typeof P&&(y="success",r=P,x=!0)}return this.selectError&&(p=this.selectError,r=this.selectResult,g=Date.now(),y="error"),{status:y,isLoading:"loading"===y,isSuccess:"success"===y,isError:"error"===y,isIdle:"idle"===y,data:r,dataUpdatedAt:f,error:p,errorUpdatedAt:g,failureCount:h.fetchFailureCount,errorUpdateCount:h.errorUpdateCount,isFetched:h.dataUpdateCount>0||h.errorUpdateCount>0,isFetchedAfterMount:h.dataUpdateCount>u.dataUpdateCount||h.errorUpdateCount>u.errorUpdateCount,isFetching:v,isRefetching:v&&"loading"!==y,isLoadingError:"error"===y&&0===h.dataUpdatedAt,isPlaceholderData:x,isPreviousData:b,isRefetchError:"error"===y&&0!==h.dataUpdatedAt,isStale:S(e,t),refetch:this.refetch,remove:this.remove}},r.shouldNotifyListeners=function(e,t){if(!t)return!0;var r=this.options,n=r.notifyOnChangeProps,i=r.notifyOnChangePropsExclusions;if(!n&&!i)return!0;if("tracked"===n&&!this.trackedProps.length)return!0;var o="tracked"===n?this.trackedProps:n;return Object.keys(e).some((function(r){var n=r,a=e[n]!==t[n],s=null==o?void 0:o.some((function(e){return e===r})),c=null==i?void 0:i.some((function(e){return e===r}));return a&&!c&&(!o||s)}))},r.updateResult=function(e){var t=this.currentResult;if(this.currentResult=this.createResult(this.currentQuery,this.options),this.currentResultState=this.currentQuery.state,this.currentResultOptions=this.options,!(0,m.VS)(this.currentResult,t)){var r={cache:!0};!1!==(null==e?void 0:e.listeners)&&this.shouldNotifyListeners(this.currentResult,t)&&(r.listeners=!0),this.notify((0,f.Z)({},r,e))}},r.updateQuery=function(){var e=this.client.getQueryCache().build(this.client,this.options);if(e!==this.currentQuery){var t=this.currentQuery;this.currentQuery=e,this.currentQueryInitialState=e.state,this.previousQueryResult=this.currentResult,this.hasListeners()&&(null==t||t.removeObserver(this),e.addObserver(this))}},r.onQueryUpdate=function(e){var t={};"success"===e.type?t.onSuccess=!0:"error"!==e.type||(0,y.DV)(e.error)||(t.onError=!0),this.updateResult(t),this.hasListeners()&&this.updateTimers()},r.notify=function(e){var t=this;n.V.batch((function(){e.onSuccess?(null==t.options.onSuccess||t.options.onSuccess(t.currentResult.data),null==t.options.onSettled||t.options.onSettled(t.currentResult.data,null)):e.onError&&(null==t.options.onError||t.options.onError(t.currentResult.error),null==t.options.onSettled||t.options.onSettled(void 0,t.currentResult.error)),e.listeners&&t.listeners.forEach((function(e){e(t.currentResult)})),e.cache&&t.client.getQueryCache().notify({query:t.currentQuery,type:"observerResultsUpdated"})}))},t}(v.l);function w(e,t){return function(e,t){return!1!==t.enabled&&!e.state.dataUpdatedAt&&!("error"===e.state.status&&!1===t.retryOnMount)}(e,t)||e.state.dataUpdatedAt>0&&x(e,t,t.refetchOnMount)}function x(e,t,r){if(!1!==t.enabled){var n="function"===typeof r?r(e):r;return"always"===n||!1!==n&&S(e,t)}return!1}function _(e,t,r,n){return!1!==r.enabled&&(e!==t||!1===n.enabled)&&(!r.suspense||"error"!==e.state.status)&&S(e,r)}function S(e,t){return e.isStaleByTime(t.staleTime)}function k(){var e=!1;return{clearReset:function(){e=!1},reset:function(){e=!0},isReset:function(){return e}}}var E=s.createContext(k()),A=function(){return s.useContext(E)};function P(e,t,r){return function(e,t){var r=s.useRef(!1),i=s.useState(0)[1],o=d(),a=A(),c=o.defaultQueryObserverOptions(e);c.optimisticResults=!0,c.onError&&(c.onError=n.V.batchCalls(c.onError)),c.onSuccess&&(c.onSuccess=n.V.batchCalls(c.onSuccess)),c.onSettled&&(c.onSettled=n.V.batchCalls(c.onSettled)),c.suspense&&("number"!==typeof c.staleTime&&(c.staleTime=1e3),0===c.cacheTime&&(c.cacheTime=1)),(c.suspense||c.useErrorBoundary)&&(a.isReset()||(c.retryOnMount=!1));var l,u,h,f=s.useState((function(){return new t(o,c)}))[0],p=f.getOptimisticResult(c);if(s.useEffect((function(){r.current=!0,a.clearReset();var e=f.subscribe(n.V.batchCalls((function(){r.current&&i((function(e){return e+1}))})));return f.updateResult(),function(){r.current=!1,e()}}),[a,f]),s.useEffect((function(){f.setOptions(c,{listeners:!1})}),[c,f]),c.suspense&&p.isLoading)throw f.fetchOptimistic(c).then((function(e){var t=e.data;null==c.onSuccess||c.onSuccess(t),null==c.onSettled||c.onSettled(t,null)})).catch((function(e){a.clearReset(),null==c.onError||c.onError(e),null==c.onSettled||c.onSettled(void 0,e)}));if(p.isError&&!a.isReset()&&!p.isFetching&&(l=c.suspense,u=c.useErrorBoundary,h=[p.error,f.getCurrentQuery()],"function"===typeof u?u.apply(void 0,h):"boolean"===typeof u?u:l))throw p.error;return"tracked"===c.notifyOnChangeProps&&(p=f.trackResult(p,c)),p}((0,m._v)(e,t,r),b)}},6234:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(e,t,r){var n=0===e?e:e+t;return"translate3d"+("("+("horizontal"===r?[n,0,0]:[0,n,0]).join(",")+")")}},4398:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fadeAnimationHandler=t.slideStopSwipingHandler=t.slideSwipeAnimationHandler=t.slideAnimationHandler=void 0;var n,i=r(9652),o=(n=r(6234))&&n.__esModule?n:{default:n},a=r(2903);function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;tl))return s<0?e.centerMode&&e.centerSlidePercentage&&"horizontal"===e.axis?r.itemListStyle=(0,a.setPosition)(-(l+2)*e.centerSlidePercentage-(100-e.centerSlidePercentage)/2,e.axis):r.itemListStyle=(0,a.setPosition)(100*-(l+2),e.axis):s>l&&(r.itemListStyle=(0,a.setPosition)(0,e.axis)),r;var u=(0,a.getPosition)(n,e),d=(0,o.default)(u,"%",e.axis),h=e.transitionTime+"ms";return r.itemListStyle={WebkitTransform:d,msTransform:d,OTransform:d,transform:d},t.swiping||(r.itemListStyle=c(c({},r.itemListStyle),{},{WebkitTransitionDuration:h,MozTransitionDuration:h,OTransitionDuration:h,transitionDuration:h,msTransitionDuration:h})),r};t.slideSwipeAnimationHandler=function(e,t,r,n){var o={},s="horizontal"===t.axis,c=i.Children.count(t.children),l=(0,a.getPosition)(r.selectedItem,t),u=t.infiniteLoop?(0,a.getPosition)(c-1,t)-100:(0,a.getPosition)(c-1,t),d=s?e.x:e.y,h=d;0===l&&d>0&&(h=0),l===u&&d<0&&(h=0);var f=l+100/(r.itemSize/h),p=Math.abs(d)>t.swipeScrollTolerance;return t.infiniteLoop&&p&&(0===r.selectedItem&&f>-100?f-=100*c:r.selectedItem===c-1&&f<100*-c&&(f+=100*c)),(!t.preventMovementUntilSwipeScrollTolerance||p||r.swipeMovementStarted)&&(r.swipeMovementStarted||n({swipeMovementStarted:!0}),o.itemListStyle=(0,a.setPosition)(f,t.axis)),p&&!r.cancelClick&&n({cancelClick:!0}),o};t.slideStopSwipingHandler=function(e,t){var r=(0,a.getPosition)(t.selectedItem,e);return{itemListStyle:(0,a.setPosition)(r,e.axis)}};t.fadeAnimationHandler=function(e,t){var r=e.transitionTime+"ms",n="ease-in-out",i={position:"absolute",display:"block",zIndex:-2,minHeight:"100%",opacity:0,top:0,right:0,left:0,bottom:0,transitionTimingFunction:n,msTransitionTimingFunction:n,MozTransitionTimingFunction:n,WebkitTransitionTimingFunction:n,OTransitionTimingFunction:n};return t.swiping||(i=c(c({},i),{},{WebkitTransitionDuration:r,MozTransitionDuration:r,OTransitionDuration:r,transitionDuration:r,msTransitionDuration:r})),{slideStyle:i,selectedStyle:c(c({},i),{},{opacity:1,position:"relative"}),prevStyle:c({},i)}}},101:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==f(e)&&"function"!==typeof e)return{default:e};var t=h();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=n?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(r,i,o):r[i]=e[i]}r.default=e,t&&t.set(e,r);return r}(r(9652)),i=d(r(1131)),o=d(r(7616)),a=d(r(3079)),s=d(r(5461)),c=d(r(3270)),l=r(2903),u=r(4398);function d(e){return e&&e.__esModule?e:{default:e}}function h(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return h=function(){return e},e}function f(e){return f="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f(e)}function p(){return p=Object.assign||function(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:1;t.moveTo(t.state.selectedItem-("number"===typeof e?e:1))})),_(w(t),"increment",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;t.moveTo(t.state.selectedItem+("number"===typeof e?e:1))})),_(w(t),"moveTo",(function(e){if("number"===typeof e){var r=n.Children.count(t.props.children)-1;e<0&&(e=t.props.infiniteLoop?r:0),e>r&&(e=t.props.infiniteLoop?0:r),t.selectItem({selectedItem:e}),t.state.autoPlay&&!1===t.state.isMouseEntered&&t.resetAutoPlay()}})),_(w(t),"onClickNext",(function(){t.increment(1)})),_(w(t),"onClickPrev",(function(){t.decrement(1)})),_(w(t),"onSwipeForward",(function(){t.increment(1),t.props.emulateTouch&&t.setState({cancelClick:!0})})),_(w(t),"onSwipeBackwards",(function(){t.decrement(1),t.props.emulateTouch&&t.setState({cancelClick:!0})})),_(w(t),"changeItem",(function(e){return function(r){(0,l.isKeyboardEvent)(r)&&"Enter"!==r.key||t.moveTo(e)}})),_(w(t),"selectItem",(function(e){t.setState(g({previousItem:t.state.selectedItem},e),(function(){t.setState(t.animationHandler(t.props,t.state))})),t.handleOnChange(e.selectedItem,n.Children.toArray(t.props.children)[e.selectedItem])})),_(w(t),"getInitialImage",(function(){var e=t.props.selectedItem,r=t.itemsRef&&t.itemsRef[e];return(r&&r.getElementsByTagName("img")||[])[0]})),_(w(t),"getVariableItemHeight",(function(e){var r=t.itemsRef&&t.itemsRef[e];if(t.state.hasMount&&r&&r.children.length){var n=r.children[0].getElementsByTagName("img")||[];if(n.length>0){var i=n[0];if(!i.complete){i.addEventListener("load",(function e(){t.forceUpdate(),i.removeEventListener("load",e)}))}}var o=(n[0]||r.children[0]).clientHeight;return o>0?o:null}return null}));var r={initialized:!1,previousItem:e.selectedItem,selectedItem:e.selectedItem,hasMount:!1,isMouseEntered:!1,autoPlay:e.autoPlay,swiping:!1,swipeMovementStarted:!1,cancelClick:!1,itemSize:1,itemListStyle:{},slideStyle:{},selectedStyle:{},prevStyle:{}};return t.animationHandler="function"===typeof e.animationHandler&&e.animationHandler||"fade"===e.animationHandler&&u.fadeAnimationHandler||u.slideAnimationHandler,t.state=g(g({},r),t.animationHandler(e,r)),t}return t=f,(r=[{key:"componentDidMount",value:function(){this.props.children&&this.setupCarousel()}},{key:"componentDidUpdate",value:function(e,t){e.children||!this.props.children||this.state.initialized||this.setupCarousel(),!e.autoFocus&&this.props.autoFocus&&this.forceFocus(),t.swiping&&!this.state.swiping&&this.setState(g({},this.props.stopSwipingHandler(this.props,this.state))),e.selectedItem===this.props.selectedItem&&e.centerMode===this.props.centerMode||(this.updateSizes(),this.moveTo(this.props.selectedItem)),e.autoPlay!==this.props.autoPlay&&(this.props.autoPlay?this.setupAutoPlay():this.destroyAutoPlay(),this.setState({autoPlay:this.props.autoPlay}))}},{key:"componentWillUnmount",value:function(){this.destroyCarousel()}},{key:"setupCarousel",value:function(){var e=this;this.bindEvents(),this.state.autoPlay&&n.Children.count(this.props.children)>1&&this.setupAutoPlay(),this.props.autoFocus&&this.forceFocus(),this.setState({initialized:!0},(function(){var t=e.getInitialImage();t&&!t.complete?t.addEventListener("load",e.setMountState):e.setMountState()}))}},{key:"destroyCarousel",value:function(){this.state.initialized&&(this.unbindEvents(),this.destroyAutoPlay())}},{key:"setupAutoPlay",value:function(){this.autoPlay();var e=this.carouselWrapperRef;this.props.stopOnHover&&e&&(e.addEventListener("mouseenter",this.stopOnHover),e.addEventListener("mouseleave",this.startOnLeave))}},{key:"destroyAutoPlay",value:function(){this.clearAutoPlay();var e=this.carouselWrapperRef;this.props.stopOnHover&&e&&(e.removeEventListener("mouseenter",this.stopOnHover),e.removeEventListener("mouseleave",this.startOnLeave))}},{key:"bindEvents",value:function(){(0,c.default)().addEventListener("resize",this.updateSizes),(0,c.default)().addEventListener("DOMContentLoaded",this.updateSizes),this.props.useKeyboardArrows&&(0,s.default)().addEventListener("keydown",this.navigateWithKeyboard)}},{key:"unbindEvents",value:function(){(0,c.default)().removeEventListener("resize",this.updateSizes),(0,c.default)().removeEventListener("DOMContentLoaded",this.updateSizes);var e=this.getInitialImage();e&&e.removeEventListener("load",this.setMountState),this.props.useKeyboardArrows&&(0,s.default)().removeEventListener("keydown",this.navigateWithKeyboard)}},{key:"forceFocus",value:function(){var e;null===(e=this.carouselWrapperRef)||void 0===e||e.focus()}},{key:"renderItems",value:function(e){var t=this;return this.props.children?n.Children.map(this.props.children,(function(r,i){var a=i===t.state.selectedItem,s=i===t.state.previousItem,c=a&&t.state.selectedStyle||s&&t.state.prevStyle||t.state.slideStyle||{};t.props.centerMode&&"horizontal"===t.props.axis&&(c=g(g({},c),{},{minWidth:t.props.centerSlidePercentage+"%"})),t.state.swiping&&t.state.swipeMovementStarted&&(c=g(g({},c),{},{pointerEvents:"none"}));var l={ref:function(e){return t.setItemsRef(e,i)},key:"itemKey"+i+(e?"clone":""),className:o.default.ITEM(!0,i===t.state.selectedItem,i===t.state.previousItem),onClick:t.handleClickItem.bind(t,i,r),style:c};return n.default.createElement("li",l,t.props.renderItem(r,{isSelected:i===t.state.selectedItem,isPrevious:i===t.state.previousItem}))})):[]}},{key:"renderControls",value:function(){var e=this,t=this.props,r=t.showIndicators,i=t.labels,o=t.renderIndicator,a=t.children;return r?n.default.createElement("ul",{className:"control-dots"},n.Children.map(a,(function(t,r){return o&&o(e.changeItem(r),r===e.state.selectedItem,r,i.item)}))):null}},{key:"renderStatus",value:function(){return this.props.showStatus?n.default.createElement("p",{className:"carousel-status"},this.props.statusFormatter(this.state.selectedItem+1,n.Children.count(this.props.children))):null}},{key:"renderThumbs",value:function(){return this.props.showThumbs&&this.props.children&&0!==n.Children.count(this.props.children)?n.default.createElement(a.default,{ref:this.setThumbsRef,onSelectItem:this.handleClickThumb,selectedItem:this.state.selectedItem,transitionTime:this.props.transitionTime,thumbWidth:this.props.thumbWidth,labels:this.props.labels,emulateTouch:this.props.emulateTouch},this.props.renderThumbs(this.props.children)):null}},{key:"render",value:function(){var e=this;if(!this.props.children||0===n.Children.count(this.props.children))return null;var t=this.props.swipeable&&n.Children.count(this.props.children)>1,r="horizontal"===this.props.axis,a=this.props.showArrows&&n.Children.count(this.props.children)>1,s=a&&(this.state.selectedItem>0||this.props.infiniteLoop)||!1,c=a&&(this.state.selectedItem{},2903:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.setPosition=t.getPosition=t.isKeyboardEvent=t.defaultStatusFormatter=t.noop=void 0;var n,i=r(9652),o=(n=r(6234))&&n.__esModule?n:{default:n};t.noop=function(){};t.defaultStatusFormatter=function(e,t){return"".concat(e," of ").concat(t)};t.isKeyboardEvent=function(e){return!!e&&e.hasOwnProperty("key")};t.getPosition=function(e,t){if(t.infiniteLoop&&++e,0===e)return 0;var r=i.Children.count(t.children);if(t.centerMode&&"horizontal"===t.axis){var n=-e*t.centerSlidePercentage,o=r-1;return e&&(e!==o||t.infiniteLoop)?n+=(100-t.centerSlidePercentage)/2:e===o&&(n+=100-t.centerSlidePercentage),n}return 100*-e};t.setPosition=function(e,t){var r={};return["WebkitTransform","MozTransform","MsTransform","OTransform","transform","msTransform"].forEach((function(n){r[n]=(0,o.default)(e,"%",t)})),r}},3079:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=function(e){if(e&&e.__esModule)return e;if(null===e||"object"!==d(e)&&"function"!==typeof e)return{default:e};var t=u();if(t&&t.has(e))return t.get(e);var r={},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var o=n?Object.getOwnPropertyDescriptor(e,i):null;o&&(o.get||o.set)?Object.defineProperty(r,i,o):r[i]=e[i]}r.default=e,t&&t.set(e,r);return r}(r(9652)),i=l(r(7616)),o=r(3448),a=l(r(6234)),s=l(r(1131)),c=l(r(3270));function l(e){return e&&e.__esModule?e:{default:e}}function u(){if("function"!==typeof WeakMap)return null;var e=new WeakMap;return u=function(){return e},e}function d(e){return d="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},d(e)}function h(){return h=Object.assign||function(e){for(var t=1;t0&&(r=0),o===100*-Math.max(i-t.state.visibleItems,0)/t.state.visibleItems&&r<0&&(r=0);var s=o+100/(t.itemsWrapperRef.clientWidth/r);return t.itemsListRef&&["WebkitTransform","MozTransform","MsTransform","OTransform","transform","msTransform"].forEach((function(e){t.itemsListRef.style[e]=(0,a.default)(s,"%",t.props.axis)})),!0})),y(g(t),"slideRight",(function(e){t.moveTo(t.state.firstItem-("number"===typeof e?e:1))})),y(g(t),"slideLeft",(function(e){t.moveTo(t.state.firstItem+("number"===typeof e?e:1))})),y(g(t),"moveTo",(function(e){e=(e=e<0?0:e)>=t.state.lastPosition?t.state.lastPosition:e,t.setState({firstItem:e})})),t.state={selectedItem:e.selectedItem,swiping:!1,showArrows:!1,firstItem:0,visibleItems:0,lastPosition:0},t}return t=d,(r=[{key:"componentDidMount",value:function(){this.setupThumbs()}},{key:"componentDidUpdate",value:function(e){this.props.selectedItem!==this.state.selectedItem&&this.setState({selectedItem:this.props.selectedItem,firstItem:this.getFirstItem(this.props.selectedItem)}),this.props.children!==e.children&&this.updateSizes()}},{key:"componentWillUnmount",value:function(){this.destroyThumbs()}},{key:"setupThumbs",value:function(){(0,c.default)().addEventListener("resize",this.updateSizes),(0,c.default)().addEventListener("DOMContentLoaded",this.updateSizes),this.updateSizes()}},{key:"destroyThumbs",value:function(){(0,c.default)().removeEventListener("resize",this.updateSizes),(0,c.default)().removeEventListener("DOMContentLoaded",this.updateSizes)}},{key:"getFirstItem",value:function(e){var t=e;return e>=this.state.lastPosition&&(t=this.state.lastPosition),e1,o=this.state.showArrows&&this.state.firstItem>0,c=this.state.showArrows&&this.state.firstItem{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,i=(n=r(5245))&&n.__esModule?n:{default:n};var o={ROOT:function(e){return(0,i.default)(function(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}({"carousel-root":!0},e||"",!!e))},CAROUSEL:function(e){return(0,i.default)({carousel:!0,"carousel-slider":e})},WRAPPER:function(e,t){return(0,i.default)({"thumbs-wrapper":!e,"slider-wrapper":e,"axis-horizontal":"horizontal"===t,"axis-vertical":"horizontal"!==t})},SLIDER:function(e,t){return(0,i.default)({thumbs:!e,slider:e,animated:!t})},ITEM:function(e,t,r){return(0,i.default)({thumb:!e,slide:e,selected:t,previous:r})},ARROW_PREV:function(e){return(0,i.default)({"control-arrow control-prev":!0,"control-disabled":e})},ARROW_NEXT:function(e){return(0,i.default)({"control-arrow control-next":!0,"control-disabled":e})},DOT:function(e){return(0,i.default)({dot:!0,selected:e})}};t.default=o},3448:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.outerWidth=void 0;t.outerWidth=function(e){var t=e.offsetWidth,r=getComputedStyle(e);return t+=parseInt(r.marginLeft)+parseInt(r.marginRight)}},2602:(e,t,r)=>{"use strict";Object.defineProperty(t,"lr",{enumerable:!0,get:function(){return n.default}});var n=a(r(101)),i=r(3447),o=a(r(3079));function a(e){return e&&e.__esModule?e:{default:e}}},5461:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(){return document}},3270:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;t.default=function(){return window}},9119:(e,t,r)=>{"use strict";var n=r(9652),i=Symbol.for("react.element"),o=Symbol.for("react.fragment"),a=Object.prototype.hasOwnProperty,s=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,c={key:!0,ref:!0,__self:!0,__source:!0};function l(e,t,r){var n,o={},l=null,u=null;for(n in void 0!==r&&(l=""+r),void 0!==t.key&&(l=""+t.key),void 0!==t.ref&&(u=t.ref),t)a.call(t,n)&&!c.hasOwnProperty(n)&&(o[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps)void 0===o[n]&&(o[n]=t[n]);return{$$typeof:i,type:e,key:l,ref:u,props:o,_owner:s.current}}t.Fragment=o,t.jsx=l,t.jsxs=l},693:(e,t)=>{"use strict";var r=Symbol.for("react.element"),n=Symbol.for("react.portal"),i=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),s=Symbol.for("react.provider"),c=Symbol.for("react.context"),l=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),d=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),f=Symbol.iterator;var p={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},m=Object.assign,g={};function v(e,t,r){this.props=e,this.context=t,this.refs=g,this.updater=r||p}function y(){}function b(e,t,r){this.props=e,this.context=t,this.refs=g,this.updater=r||p}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if("object"!==typeof e&&"function"!==typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},y.prototype=v.prototype;var w=b.prototype=new y;w.constructor=b,m(w,v.prototype),w.isPureReactComponent=!0;var x=Array.isArray,_=Object.prototype.hasOwnProperty,S={current:null},k={key:!0,ref:!0,__self:!0,__source:!0};function E(e,t,n){var i,o={},a=null,s=null;if(null!=t)for(i in void 0!==t.ref&&(s=t.ref),void 0!==t.key&&(a=""+t.key),t)_.call(t,i)&&!k.hasOwnProperty(i)&&(o[i]=t[i]);var c=arguments.length-2;if(1===c)o.children=n;else if(1{"use strict";e.exports=r(693)},5124:(e,t,r)=>{"use strict";e.exports=r(9119)},9849:e=>{"use strict";var t={};function r(e,r,n){n||(n=Error);var i=function(e){var t,n;function i(t,n,i){return e.call(this,function(e,t,n){return"string"===typeof r?r:r(e,t,n)}(t,n,i))||this}return n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,i}(n);i.prototype.name=n.name,i.prototype.code=e,t[e]=i}function n(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map((function(e){return String(e)})),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:2===r?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}r("ERR_INVALID_OPT_VALUE",(function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'}),TypeError),r("ERR_INVALID_ARG_TYPE",(function(e,t,r){var i,o,a,s;if("string"===typeof t&&(o="not ",t.substr(!a||a<0?0:+a,o.length)===o)?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,r){return(void 0===r||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}(e," argument"))s="The ".concat(e," ").concat(i," ").concat(n(t,"type"));else{var c=function(e,t,r){return"number"!==typeof r&&(r=0),!(r+t.length>e.length)&&-1!==e.indexOf(t,r)}(e,".")?"property":"argument";s='The "'.concat(e,'" ').concat(c," ").concat(i," ").concat(n(t,"type"))}return s+=". Received type ".concat(typeof r)}),TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",(function(e){return"The "+e+" method is not implemented"})),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",(function(e){return"Cannot call "+e+" after a stream was destroyed"})),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",(function(e){return"Unknown encoding: "+e}),TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.q=t},4751:(e,t,r)=>{"use strict";var n=r(5469),i=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};e.exports=u;var o=r(2833),a=r(6672);r(637)(u,o);for(var s=i(a.prototype),c=0;c{"use strict";e.exports=i;var n=r(2598);function i(e){if(!(this instanceof i))return new i(e);n.call(this,e)}r(637)(i,n),i.prototype._transform=function(e,t,r){r(null,e)}},2833:(e,t,r)=>{"use strict";var n,i=r(5469);e.exports=E,E.ReadableState=k;r(4062).EventEmitter;var o=function(e,t){return e.listeners(t).length},a=r(7378),s=r(4872).Buffer,c=("undefined"!==typeof r.g?r.g:"undefined"!==typeof window?window:"undefined"!==typeof self?self:{}).Uint8Array||function(){};var l,u=r(4616);l=u&&u.debuglog?u.debuglog("stream"):function(){};var d,h,f,p=r(8868),m=r(9346),g=r(8887).getHighWaterMark,v=r(9849).q,y=v.ERR_INVALID_ARG_TYPE,b=v.ERR_STREAM_PUSH_AFTER_EOF,w=v.ERR_METHOD_NOT_IMPLEMENTED,x=v.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;r(637)(E,a);var _=m.errorOrDestroy,S=["error","close","destroy","pause","resume"];function k(e,t,i){n=n||r(4751),e=e||{},"boolean"!==typeof i&&(i=t instanceof n),this.objectMode=!!e.objectMode,i&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=g(this,e,"readableHighWaterMark",i),this.buffer=new p,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(d||(d=r(5049).s),this.decoder=new d(e.encoding),this.encoding=e.encoding)}function E(e){if(n=n||r(4751),!(this instanceof E))return new E(e);var t=this instanceof n;this._readableState=new k(e,this,t),this.readable=!0,e&&("function"===typeof e.read&&(this._read=e.read),"function"===typeof e.destroy&&(this._destroy=e.destroy)),a.call(this)}function A(e,t,r,n,i){l("readableAddChunk",t);var o,a=e._readableState;if(null===t)a.reading=!1,function(e,t){if(l("onEofChunk"),t.ended)return;if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?C(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,j(e)))}(e,a);else if(i||(o=function(e,t){var r;n=t,s.isBuffer(n)||n instanceof c||"string"===typeof t||void 0===t||e.objectMode||(r=new y("chunk",["string","Buffer","Uint8Array"],t));var n;return r}(a,t)),o)_(e,o);else if(a.objectMode||t&&t.length>0)if("string"===typeof t||a.objectMode||Object.getPrototypeOf(t)===s.prototype||(t=function(e){return s.from(e)}(t)),n)a.endEmitted?_(e,new x):P(e,a,t,!0);else if(a.ended)_(e,new b);else{if(a.destroyed)return!1;a.reading=!1,a.decoder&&!r?(t=a.decoder.write(t),a.objectMode||0!==t.length?P(e,a,t,!1):R(e,a)):P(e,a,t,!1)}else n||(a.reading=!1,R(e,a));return!a.ended&&(a.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=O?e=O:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function C(e){var t=e._readableState;l("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(l("emitReadable",t.flowing),t.emittedReadable=!0,i.nextTick(j,e))}function j(e){var t=e._readableState;l("emitReadable_",t.destroyed,t.length,t.ended),t.destroyed||!t.length&&!t.ended||(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,D(e)}function R(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(I,e,t))}function I(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function L(e){l("readable nexttick read 0"),e.read(0)}function N(e,t){l("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),D(e),t.flowing&&!t.reading&&e.read(0)}function D(e){var t=e._readableState;for(l("flow",t.flowing);t.flowing&&null!==e.read(););}function z(e,t){return 0===t.length?null:(t.objectMode?r=t.buffer.shift():!e||e>=t.length?(r=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r);var r}function B(e){var t=e._readableState;l("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,i.nextTick(U,t,e))}function U(e,t){if(l("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}function F(e,t){for(var r=0,n=e.length;r=t.highWaterMark:t.length>0)||t.ended))return l("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?B(this):C(this),null;if(0===(e=T(e,t))&&t.ended)return 0===t.length&&B(this),null;var n,i=t.needReadable;return l("need readable",i),(0===t.length||t.length-e0?z(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&B(this)),null!==n&&this.emit("data",n),n},E.prototype._read=function(e){_(this,new w("_read()"))},E.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e)}n.pipesCount+=1,l("pipe count=%d opts=%j",n.pipesCount,t);var a=(!t||!1!==t.end)&&e!==i.stdout&&e!==i.stderr?c:g;function s(t,i){l("onunpipe"),t===r&&i&&!1===i.hasUnpiped&&(i.hasUnpiped=!0,l("cleanup"),e.removeListener("close",p),e.removeListener("finish",m),e.removeListener("drain",u),e.removeListener("error",f),e.removeListener("unpipe",s),r.removeListener("end",c),r.removeListener("end",g),r.removeListener("data",h),d=!0,!n.awaitDrain||e._writableState&&!e._writableState.needDrain||u())}function c(){l("onend"),e.end()}n.endEmitted?i.nextTick(a):r.once("end",a),e.on("unpipe",s);var u=function(e){return function(){var t=e._readableState;l("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&o(e,"data")&&(t.flowing=!0,D(e))}}(r);e.on("drain",u);var d=!1;function h(t){l("ondata");var i=e.write(t);l("dest.write",i),!1===i&&((1===n.pipesCount&&n.pipes===e||n.pipesCount>1&&-1!==F(n.pipes,e))&&!d&&(l("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function f(t){l("onerror",t),g(),e.removeListener("error",f),0===o(e,"error")&&_(e,t)}function p(){e.removeListener("finish",m),g()}function m(){l("onfinish"),e.removeListener("close",p),g()}function g(){l("unpipe"),r.unpipe(e)}return r.on("data",h),function(e,t,r){if("function"===typeof e.prependListener)return e.prependListener(t,r);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]:e.on(t,r)}(e,"error",f),e.once("close",p),e.once("finish",m),e.emit("pipe",r),n.flowing||(l("pipe resume"),r.resume()),e},E.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r)),this;if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,!1!==n.flowing&&this.resume()):"readable"===e&&(n.endEmitted||n.readableListening||(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,l("on readable",n.length,n.reading),n.length?C(this):n.reading||i.nextTick(L,this))),r},E.prototype.addListener=E.prototype.on,E.prototype.removeListener=function(e,t){var r=a.prototype.removeListener.call(this,e,t);return"readable"===e&&i.nextTick(M,this),r},E.prototype.removeAllListeners=function(e){var t=a.prototype.removeAllListeners.apply(this,arguments);return"readable"!==e&&void 0!==e||i.nextTick(M,this),t},E.prototype.resume=function(){var e=this._readableState;return e.flowing||(l("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,i.nextTick(N,e,t))}(this,e)),e.paused=!1,this},E.prototype.pause=function(){return l("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(l("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},E.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;for(var i in e.on("end",(function(){if(l("wrapped end"),r.decoder&&!r.ended){var e=r.decoder.end();e&&e.length&&t.push(e)}t.push(null)})),e.on("data",(function(i){(l("wrapped data"),r.decoder&&(i=r.decoder.write(i)),!r.objectMode||null!==i&&void 0!==i)&&((r.objectMode||i&&i.length)&&(t.push(i)||(n=!0,e.pause())))})),e)void 0===this[i]&&"function"===typeof e[i]&&(this[i]=function(t){return function(){return e[t].apply(e,arguments)}}(i));for(var o=0;o{"use strict";e.exports=u;var n=r(9849).q,i=n.ERR_METHOD_NOT_IMPLEMENTED,o=n.ERR_MULTIPLE_CALLBACK,a=n.ERR_TRANSFORM_ALREADY_TRANSFORMING,s=n.ERR_TRANSFORM_WITH_LENGTH_0,c=r(4751);function l(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(null===n)return this.emit("error",new o);r.writechunk=null,r.writecb=null,null!=t&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length{"use strict";var n,i=r(5469);function o(e){var t=this;this.next=null,this.entry=null,this.finish=function(){!function(e,t,r){var n=e.entry;e.entry=null;for(;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}(t,e)}}e.exports=E,E.WritableState=k;var a={deprecate:r(4460)},s=r(7378),c=r(4872).Buffer,l=("undefined"!==typeof r.g?r.g:"undefined"!==typeof window?window:"undefined"!==typeof self?self:{}).Uint8Array||function(){};var u,d=r(9346),h=r(8887).getHighWaterMark,f=r(9849).q,p=f.ERR_INVALID_ARG_TYPE,m=f.ERR_METHOD_NOT_IMPLEMENTED,g=f.ERR_MULTIPLE_CALLBACK,v=f.ERR_STREAM_CANNOT_PIPE,y=f.ERR_STREAM_DESTROYED,b=f.ERR_STREAM_NULL_VALUES,w=f.ERR_STREAM_WRITE_AFTER_END,x=f.ERR_UNKNOWN_ENCODING,_=d.errorOrDestroy;function S(){}function k(e,t,a){n=n||r(4751),e=e||{},"boolean"!==typeof a&&(a=t instanceof n),this.objectMode=!!e.objectMode,a&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=h(this,e,"writableHighWaterMark",a),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var s=!1===e.decodeStrings;this.decodeStrings=!s,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var r=e._writableState,n=r.sync,o=r.writecb;if("function"!==typeof o)throw new g;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(r),t)!function(e,t,r,n,o){--t.pendingcb,r?(i.nextTick(o,n),i.nextTick(j,e,t),e._writableState.errorEmitted=!0,_(e,n)):(o(n),e._writableState.errorEmitted=!0,_(e,n),j(e,t))}(e,r,n,t,o);else{var a=T(r)||e.destroyed;a||r.corked||r.bufferProcessing||!r.bufferedRequest||O(e,r),n?i.nextTick(P,e,r,a,o):P(e,r,a,o)}}(t,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=!1!==e.emitClose,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new o(this)}function E(e){var t=this instanceof(n=n||r(4751));if(!t&&!u.call(E,this))return new E(e);this._writableState=new k(e,this,t),this.writable=!0,e&&("function"===typeof e.write&&(this._write=e.write),"function"===typeof e.writev&&(this._writev=e.writev),"function"===typeof e.destroy&&(this._destroy=e.destroy),"function"===typeof e.final&&(this._final=e.final)),s.call(this)}function A(e,t,r,n,i,o,a){t.writelen=n,t.writecb=a,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new y("write")):r?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function P(e,t,r,n){r||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,n(),j(e,t)}function O(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,i=new Array(n),a=t.corkedRequestsFree;a.entry=r;for(var s=0,c=!0;r;)i[s]=r,r.isBuf||(c=!1),r=r.next,s+=1;i.allBuffers=c,A(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new o(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,d=r.callback;if(A(e,t,!1,t.objectMode?1:l.length,l,u,d),r=r.next,t.bufferedRequestCount--,t.writing)break}null===r&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}function T(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function C(e,t){e._final((function(r){t.pendingcb--,r&&_(e,r),t.prefinished=!0,e.emit("prefinish"),j(e,t)}))}function j(e,t){var r=T(t);if(r&&(function(e,t){t.prefinished||t.finalCalled||("function"!==typeof e._final||t.destroyed?(t.prefinished=!0,e.emit("prefinish")):(t.pendingcb++,t.finalCalled=!0,i.nextTick(C,e,t)))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var n=e._readableState;(!n||n.autoDestroy&&n.endEmitted)&&e.destroy()}return r}r(637)(E,s),k.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(k.prototype,"buffer",{get:a.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"===typeof Symbol&&Symbol.hasInstance&&"function"===typeof Function.prototype[Symbol.hasInstance]?(u=Function.prototype[Symbol.hasInstance],Object.defineProperty(E,Symbol.hasInstance,{value:function(e){return!!u.call(this,e)||this===E&&(e&&e._writableState instanceof k)}})):u=function(e){return e instanceof this},E.prototype.pipe=function(){_(this,new v)},E.prototype.write=function(e,t,r){var n,o=this._writableState,a=!1,s=!o.objectMode&&(n=e,c.isBuffer(n)||n instanceof l);return s&&!c.isBuffer(e)&&(e=function(e){return c.from(e)}(e)),"function"===typeof t&&(r=t,t=null),s?t="buffer":t||(t=o.defaultEncoding),"function"!==typeof r&&(r=S),o.ending?function(e,t){var r=new w;_(e,r),i.nextTick(t,r)}(this,r):(s||function(e,t,r,n){var o;return null===r?o=new b:"string"===typeof r||t.objectMode||(o=new p("chunk",["string","Buffer"],r)),!o||(_(e,o),i.nextTick(n,o),!1)}(this,o,e,r))&&(o.pendingcb++,a=function(e,t,r,n,i,o){if(!r){var a=function(e,t,r){e.objectMode||!1===e.decodeStrings||"string"!==typeof t||(t=c.from(t,r));return t}(t,n,i);n!==a&&(r=!0,i="buffer",n=a)}var s=t.objectMode?1:n.length;t.length+=s;var l=t.length-1))throw new x(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(E.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(E.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),E.prototype._write=function(e,t,r){r(new m("_write()"))},E.prototype._writev=null,E.prototype.end=function(e,t,r){var n=this._writableState;return"function"===typeof e?(r=e,e=null,t=null):"function"===typeof t&&(r=t,t=null),null!==e&&void 0!==e&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||function(e,t,r){t.ending=!0,j(e,t),r&&(t.finished?i.nextTick(r):e.once("finish",r));t.ended=!0,e.writable=!1}(this,n,r),this},Object.defineProperty(E.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(E.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),E.prototype.destroy=d.destroy,E.prototype._undestroy=d.undestroy,E.prototype._destroy=function(e,t){t(e)}},5538:(e,t,r)=>{"use strict";var n,i=r(5469);function o(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==typeof e||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var a=r(8279),s=Symbol("lastResolve"),c=Symbol("lastReject"),l=Symbol("error"),u=Symbol("ended"),d=Symbol("lastPromise"),h=Symbol("handlePromise"),f=Symbol("stream");function p(e,t){return{value:e,done:t}}function m(e){var t=e[s];if(null!==t){var r=e[f].read();null!==r&&(e[d]=null,e[s]=null,e[c]=null,t(p(r,!1)))}}function g(e){i.nextTick(m,e)}var v=Object.getPrototypeOf((function(){})),y=Object.setPrototypeOf((o(n={get stream(){return this[f]},next:function(){var e=this,t=this[l];if(null!==t)return Promise.reject(t);if(this[u])return Promise.resolve(p(void 0,!0));if(this[f].destroyed)return new Promise((function(t,r){i.nextTick((function(){e[l]?r(e[l]):t(p(void 0,!0))}))}));var r,n=this[d];if(n)r=new Promise(function(e,t){return function(r,n){e.then((function(){t[u]?r(p(void 0,!0)):t[h](r,n)}),n)}}(n,this));else{var o=this[f].read();if(null!==o)return Promise.resolve(p(o,!1));r=new Promise(this[h])}return this[d]=r,r}},Symbol.asyncIterator,(function(){return this})),o(n,"return",(function(){var e=this;return new Promise((function(t,r){e[f].destroy(null,(function(e){e?r(e):t(p(void 0,!0))}))}))})),n),v);e.exports=function(e){var t,r=Object.create(y,(o(t={},f,{value:e,writable:!0}),o(t,s,{value:null,writable:!0}),o(t,c,{value:null,writable:!0}),o(t,l,{value:null,writable:!0}),o(t,u,{value:e._readableState.endEmitted,writable:!0}),o(t,h,{value:function(e,t){var n=r[f].read();n?(r[d]=null,r[s]=null,r[c]=null,e(p(n,!1))):(r[s]=e,r[c]=t)},writable:!0}),t));return r[d]=null,a(e,(function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=r[c];return null!==t&&(r[d]=null,r[s]=null,r[c]=null,t(e)),void(r[l]=e)}var n=r[s];null!==n&&(r[d]=null,r[s]=null,r[c]=null,n(p(void 0,!0))),r[u]=!0})),e.on("readable",g.bind(null,r)),r}},8868:(e,t,r)=>{"use strict";function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,r=""+t.data;t=t.next;)r+=e+t.data;return r}},{key:"concat",value:function(e){if(0===this.length)return c.alloc(0);for(var t,r,n,i=c.allocUnsafe(e>>>0),o=this.head,a=0;o;)t=o.data,r=i,n=a,c.prototype.copy.call(t,r,n),a+=o.data.length,o=o.next;return i}},{key:"consume",value:function(e,t){var r;return ei.length?i.length:e;if(o===i.length?n+=i:n+=i.slice(0,e),0===(e-=o)){o===i.length?(++r,t.next?this.head=t.next:this.head=this.tail=null):(this.head=t,t.data=i.slice(o));break}++r}return this.length-=r,n}},{key:"_getBuffer",value:function(e){var t=c.allocUnsafe(e),r=this.head,n=1;for(r.data.copy(t),e-=r.data.length;r=r.next;){var i=r.data,o=e>i.length?i.length:e;if(i.copy(t,t.length-e,0,o),0===(e-=o)){o===i.length?(++n,r.next?this.head=r.next:this.head=this.tail=null):(this.head=r,r.data=i.slice(o));break}++n}return this.length-=n,t}},{key:u,value:function(e,t){return l(this,i(i({},t),{},{depth:0,customInspect:!1}))}}])&&a(t.prototype,r),n&&a(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}()},9346:(e,t,r)=>{"use strict";var n=r(5469);function i(e,t){a(e,t),o(e)}function o(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function a(e,t){e.emit("error",t)}e.exports={destroy:function(e,t){var r=this,s=this._readableState&&this._readableState.destroyed,c=this._writableState&&this._writableState.destroyed;return s||c?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,n.nextTick(a,this,e)):n.nextTick(a,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?r._writableState?r._writableState.errorEmitted?n.nextTick(o,r):(r._writableState.errorEmitted=!0,n.nextTick(i,r,e)):n.nextTick(i,r,e):t?(n.nextTick(o,r),t(e)):n.nextTick(o,r)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}}},8279:(e,t,r)=>{"use strict";var n=r(9849).q.ERR_STREAM_PREMATURE_CLOSE;function i(){}e.exports=function e(t,r,o){if("function"===typeof r)return e(t,null,r);r||(r={}),o=function(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i{e.exports=function(){throw new Error("Readable.from is not available in the browser")}},5942:(e,t,r)=>{"use strict";var n;var i=r(9849).q,o=i.ERR_MISSING_ARGS,a=i.ERR_STREAM_DESTROYED;function s(e){if(e)throw e}function c(e){e()}function l(e,t){return e.pipe(t)}e.exports=function(){for(var e=arguments.length,t=new Array(e),i=0;i0,(function(e){u||(u=e),e&&h.forEach(c),o||(h.forEach(c),d(u))}))}));return t.reduce(l)}},8887:(e,t,r)=>{"use strict";var n=r(9849).q.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(e,t,r,i){var o=function(e,t,r){return null!=e.highWaterMark?e.highWaterMark:t?e[r]:null}(t,i,r);if(null!=o){if(!isFinite(o)||Math.floor(o)!==o||o<0)throw new n(i?r:"highWaterMark",o);return Math.floor(o)}return e.objectMode?16:16384}}},7378:(e,t,r)=>{e.exports=r(4062).EventEmitter},3859:(e,t,r)=>{(t=e.exports=r(2833)).Stream=t,t.Readable=t,t.Writable=r(6672),t.Duplex=r(4751),t.Transform=r(2598),t.PassThrough=r(6388),t.finished=r(8279),t.pipeline=r(5942)},2980:(e,t,r)=>{"use strict";t.__esModule=!0,t.default=function(e){var t=(0,i.default)(e);return{getItem:function(e){return new Promise((function(r,n){r(t.getItem(e))}))},setItem:function(e,r){return new Promise((function(n,i){n(t.setItem(e,r))}))},removeItem:function(e){return new Promise((function(r,n){r(t.removeItem(e))}))}}};var n,i=(n=r(953))&&n.__esModule?n:{default:n}},953:(e,t)=>{"use strict";function r(e){return r="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function n(){}t.__esModule=!0,t.default=function(e){var t="".concat(e,"Storage");return function(e){if("object"!==("undefined"===typeof self?"undefined":r(self))||!(e in self))return!1;try{var t=self[e],n="redux-persist ".concat(e," test");t.setItem(n,"test"),t.getItem(n),t.removeItem(n)}catch(i){return!1}return!0}(t)?self[t]:i};var i={getItem:n,setItem:n,removeItem:n}},967:(e,t,r)=>{"use strict";var n;t.Z=void 0;var i=(0,((n=r(2980))&&n.__esModule?n:{default:n}).default)("local");t.Z=i},3392:(e,t,r)=>{e.exports=r(7712)},7712:(e,t,r)=>{var n=r(1914);t.operation=function(e){var r=t.timeouts(e);return new n(r,{forever:e&&e.forever,unref:e&&e.unref,maxRetryTime:e&&e.maxRetryTime})},t.timeouts=function(e){if(e instanceof Array)return[].concat(e);var t={retries:10,factor:2,minTimeout:1e3,maxTimeout:1/0,randomize:!1};for(var r in e)t[r]=e[r];if(t.minTimeout>t.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var n=[],i=0;i{function t(e,t){"boolean"===typeof t&&(t={forever:t}),this._originalTimeouts=JSON.parse(JSON.stringify(e)),this._timeouts=e,this._options=t||{},this._maxRetryTime=t&&t.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}e.exports=t,t.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts},t.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null},t.prototype.retry=function(e){if(this._timeout&&clearTimeout(this._timeout),!e)return!1;var t=(new Date).getTime();if(e&&t-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(e);var r=this._timeouts.shift();if(void 0===r){if(!this._cachedTimeouts)return!1;this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),r=this._timeouts.shift()}var n=this,i=setTimeout((function(){n._attempts++,n._operationTimeoutCb&&(n._timeout=setTimeout((function(){n._operationTimeoutCb(n._attempts)}),n._operationTimeout),n._options.unref&&n._timeout.unref()),n._fn(n._attempts)}),r);return this._options.unref&&i.unref(),!0},t.prototype.attempt=function(e,t){this._fn=e,t&&(t.timeout&&(this._operationTimeout=t.timeout),t.cb&&(this._operationTimeoutCb=t.cb));var r=this;this._operationTimeoutCb&&(this._timeout=setTimeout((function(){r._operationTimeoutCb()}),r._operationTimeout)),this._operationStart=(new Date).getTime(),this._fn(this._attempts)},t.prototype.try=function(e){console.log("Using RetryOperation.try() is deprecated"),this.attempt(e)},t.prototype.start=function(e){console.log("Using RetryOperation.start() is deprecated"),this.attempt(e)},t.prototype.start=t.prototype.try,t.prototype.errors=function(){return this._errors},t.prototype.attempts=function(){return this._attempts},t.prototype.mainError=function(){if(0===this._errors.length)return null;for(var e={},t=null,r=0,n=0;n=r&&(t=i,r=a)}return t}},4805:(e,t,r)=>{"use strict";var n=r(4872).Buffer,i=r(637),o=r(8682),a=new Array(16),s=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],c=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],l=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],u=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],d=[0,1518500249,1859775393,2400959708,2840853838],h=[1352829926,1548603684,1836072691,2053994217,0];function f(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function p(e,t){return e<>>32-t}function m(e,t,r,n,i,o,a,s){return p(e+(t^r^n)+o+a|0,s)+i|0}function g(e,t,r,n,i,o,a,s){return p(e+(t&r|~t&n)+o+a|0,s)+i|0}function v(e,t,r,n,i,o,a,s){return p(e+((t|~r)^n)+o+a|0,s)+i|0}function y(e,t,r,n,i,o,a,s){return p(e+(t&n|r&~n)+o+a|0,s)+i|0}function b(e,t,r,n,i,o,a,s){return p(e+(t^(r|~n))+o+a|0,s)+i|0}i(f,o),f.prototype._update=function(){for(var e=a,t=0;t<16;++t)e[t]=this._block.readInt32LE(4*t);for(var r=0|this._a,n=0|this._b,i=0|this._c,o=0|this._d,f=0|this._e,w=0|this._a,x=0|this._b,_=0|this._c,S=0|this._d,k=0|this._e,E=0;E<80;E+=1){var A,P;E<16?(A=m(r,n,i,o,f,e[s[E]],d[0],l[E]),P=b(w,x,_,S,k,e[c[E]],h[0],u[E])):E<32?(A=g(r,n,i,o,f,e[s[E]],d[1],l[E]),P=y(w,x,_,S,k,e[c[E]],h[1],u[E])):E<48?(A=v(r,n,i,o,f,e[s[E]],d[2],l[E]),P=v(w,x,_,S,k,e[c[E]],h[2],u[E])):E<64?(A=y(r,n,i,o,f,e[s[E]],d[3],l[E]),P=g(w,x,_,S,k,e[c[E]],h[3],u[E])):(A=b(r,n,i,o,f,e[s[E]],d[4],l[E]),P=m(w,x,_,S,k,e[c[E]],h[4],u[E])),r=f,f=o,o=p(i,10),i=n,n=A,w=k,k=S,S=p(_,10),_=x,x=P}var O=this._b+i+S|0;this._b=this._c+o+k|0,this._c=this._d+f+w|0,this._d=this._e+r+x|0,this._e=this._a+n+_|0,this._a=O},f.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var e=n.alloc?n.alloc(20):new n(20);return e.writeInt32LE(this._a,0),e.writeInt32LE(this._b,4),e.writeInt32LE(this._c,8),e.writeInt32LE(this._d,12),e.writeInt32LE(this._e,16),e},e.exports=f},6293:(e,t,r)=>{var n=r(4872),i=n.Buffer;function o(e,t){for(var r in e)t[r]=e[r]}function a(e,t,r){return i(e,t,r)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?e.exports=n:(o(n,t),t.Buffer=a),a.prototype=Object.create(i.prototype),o(i,a),a.from=function(e,t,r){if("number"===typeof e)throw new TypeError("Argument must not be a number");return i(e,t,r)},a.alloc=function(e,t,r){if("number"!==typeof e)throw new TypeError("Argument must be a number");var n=i(e);return void 0!==t?"string"===typeof r?n.fill(t,r):n.fill(t):n.fill(0),n},a.allocUnsafe=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return i(e)},a.allocUnsafeSlow=function(e){if("number"!==typeof e)throw new TypeError("Argument must be a number");return n.SlowBuffer(e)}},6215:(e,t)=>{"use strict";function r(e,t){var r=e.length;e.push(t);e:for(;0>>1,i=e[n];if(!(0>>1;no(c,r))lo(u,c)?(e[n]=u,e[l]=r,n=l):(e[n]=c,e[s]=r,n=s);else{if(!(lo(u,r)))break e;e[n]=u,e[l]=r,n=l}}}return t}function o(e,t){var r=e.sortIndex-t.sortIndex;return 0!==r?r:e.id-t.id}if("object"===typeof performance&&"function"===typeof performance.now){var a=performance;t.unstable_now=function(){return a.now()}}else{var s=Date,c=s.now();t.unstable_now=function(){return s.now()-c}}var l=[],u=[],d=1,h=null,f=3,p=!1,m=!1,g=!1,v="function"===typeof setTimeout?setTimeout:null,y="function"===typeof clearTimeout?clearTimeout:null,b="undefined"!==typeof setImmediate?setImmediate:null;function w(e){for(var t=n(u);null!==t;){if(null===t.callback)i(u);else{if(!(t.startTime<=e))break;i(u),t.sortIndex=t.expirationTime,r(l,t)}t=n(u)}}function x(e){if(g=!1,w(e),!m)if(null!==n(l))m=!0,I(_);else{var t=n(u);null!==t&&M(x,t.startTime-e)}}function _(e,r){m=!1,g&&(g=!1,y(A),A=-1),p=!0;var o=f;try{for(w(r),h=n(l);null!==h&&(!(h.expirationTime>r)||e&&!T());){var a=h.callback;if("function"===typeof a){h.callback=null,f=h.priorityLevel;var s=a(h.expirationTime<=r);r=t.unstable_now(),"function"===typeof s?h.callback=s:h===n(l)&&i(l),w(r)}else i(l);h=n(l)}if(null!==h)var c=!0;else{var d=n(u);null!==d&&M(x,d.startTime-r),c=!1}return c}finally{h=null,f=o,p=!1}}"undefined"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var S,k=!1,E=null,A=-1,P=5,O=-1;function T(){return!(t.unstable_now()-Oe||125a?(e.sortIndex=o,r(u,e),null===n(l)&&e===n(u)&&(g?(y(A),A=-1):g=!0,M(x,o-a))):(e.sortIndex=s,r(l,e),m||p||(m=!0,I(_))),e},t.unstable_shouldYield=T,t.unstable_wrapCallback=function(e){var t=f;return function(){var r=f;f=t;try{return e.apply(this,arguments)}finally{f=r}}}},8586:(e,t,r)=>{"use strict";e.exports=r(6215)},1703:(e,t,r)=>{const n=Symbol("SemVer ANY");class i{static get ANY(){return n}constructor(e,t){if(t=o(t),e instanceof i){if(e.loose===!!t.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),l("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===n?this.value="":this.value=this.operator+this.semver.version,l("comp",this)}parse(e){const t=this.options.loose?a[s.COMPARATORLOOSE]:a[s.COMPARATOR],r=e.match(t);if(!r)throw new TypeError(`Invalid comparator: ${e}`);this.operator=void 0!==r[1]?r[1]:"","="===this.operator&&(this.operator=""),r[2]?this.semver=new u(r[2],this.options.loose):this.semver=n}toString(){return this.value}test(e){if(l("Comparator.test",e,this.options.loose),this.semver===n||e===n)return!0;if("string"===typeof e)try{e=new u(e,this.options)}catch(t){return!1}return c(e,this.operator,this.semver,this.options)}intersects(e,t){if(!(e instanceof i))throw new TypeError("a Comparator is required");return""===this.operator?""===this.value||new d(e.value,t).test(this.value):""===e.operator?""===e.value||new d(this.value,t).test(e.semver):(!(t=o(t)).includePrerelease||"<0.0.0-0"!==this.value&&"<0.0.0-0"!==e.value)&&(!(!t.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0")))&&(!(!this.operator.startsWith(">")||!e.operator.startsWith(">"))||(!(!this.operator.startsWith("<")||!e.operator.startsWith("<"))||(!(this.semver.version!==e.semver.version||!this.operator.includes("=")||!e.operator.includes("="))||(!!(c(this.semver,"<",e.semver,t)&&this.operator.startsWith(">")&&e.operator.startsWith("<"))||!!(c(this.semver,">",e.semver,t)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))))))}}e.exports=i;const o=r(2407),{safeRe:a,t:s}=r(4195),c=r(5489),l=r(2243),u=r(3915),d=r(2908)},2908:(e,t,r)=>{class n{constructor(e,t){if(t=o(t),e instanceof n)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new n(e.raw,t);if(e instanceof a)return this.raw=e.value,this.set=[[e]],this.format(),this;if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map((e=>this.parseRange(e.trim()))).filter((e=>e.length)),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){const e=this.set[0];if(this.set=this.set.filter((e=>!g(e[0]))),0===this.set.length)this.set=[e];else if(this.set.length>1)for(const t of this.set)if(1===t.length&&v(t[0])){this.set=[t];break}}this.format()}format(){return this.range=this.set.map((e=>e.join(" ").trim())).join("||").trim(),this.range}toString(){return this.range}parseRange(e){const t=((this.options.includePrerelease&&p)|(this.options.loose&&m))+":"+e,r=i.get(t);if(r)return r;const n=this.options.loose,o=n?l[u.HYPHENRANGELOOSE]:l[u.HYPHENRANGE];e=e.replace(o,T(this.options.includePrerelease)),s("hyphen replace",e),e=e.replace(l[u.COMPARATORTRIM],d),s("comparator trim",e),e=e.replace(l[u.TILDETRIM],h),s("tilde trim",e),e=e.replace(l[u.CARETTRIM],f),s("caret trim",e);let c=e.split(" ").map((e=>b(e,this.options))).join(" ").split(/\s+/).map((e=>O(e,this.options)));n&&(c=c.filter((e=>(s("loose invalid filter",e,this.options),!!e.match(l[u.COMPARATORLOOSE]))))),s("range list",c);const v=new Map,y=c.map((e=>new a(e,this.options)));for(const i of y){if(g(i))return[i];v.set(i.value,i)}v.size>1&&v.has("")&&v.delete("");const w=[...v.values()];return i.set(t,w),w}intersects(e,t){if(!(e instanceof n))throw new TypeError("a Range is required");return this.set.some((r=>y(r,t)&&e.set.some((e=>y(e,t)&&r.every((r=>e.every((e=>r.intersects(e,t)))))))))}test(e){if(!e)return!1;if("string"===typeof e)try{e=new c(e,this.options)}catch(t){return!1}for(let r=0;r"<0.0.0-0"===e.value,v=e=>""===e.value,y=(e,t)=>{let r=!0;const n=e.slice();let i=n.pop();for(;r&&n.length;)r=n.every((e=>i.intersects(e,t))),i=n.pop();return r},b=(e,t)=>(s("comp",e,t),e=S(e,t),s("caret",e),e=x(e,t),s("tildes",e),e=E(e,t),s("xrange",e),e=P(e,t),s("stars",e),e),w=e=>!e||"x"===e.toLowerCase()||"*"===e,x=(e,t)=>e.trim().split(/\s+/).map((e=>_(e,t))).join(" "),_=(e,t)=>{const r=t.loose?l[u.TILDELOOSE]:l[u.TILDE];return e.replace(r,((t,r,n,i,o)=>{let a;return s("tilde",e,t,r,n,i,o),w(r)?a="":w(n)?a=`>=${r}.0.0 <${+r+1}.0.0-0`:w(i)?a=`>=${r}.${n}.0 <${r}.${+n+1}.0-0`:o?(s("replaceTilde pr",o),a=`>=${r}.${n}.${i}-${o} <${r}.${+n+1}.0-0`):a=`>=${r}.${n}.${i} <${r}.${+n+1}.0-0`,s("tilde return",a),a}))},S=(e,t)=>e.trim().split(/\s+/).map((e=>k(e,t))).join(" "),k=(e,t)=>{s("caret",e,t);const r=t.loose?l[u.CARETLOOSE]:l[u.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,((t,r,i,o,a)=>{let c;return s("caret",e,t,r,i,o,a),w(r)?c="":w(i)?c=`>=${r}.0.0${n} <${+r+1}.0.0-0`:w(o)?c="0"===r?`>=${r}.${i}.0${n} <${r}.${+i+1}.0-0`:`>=${r}.${i}.0${n} <${+r+1}.0.0-0`:a?(s("replaceCaret pr",a),c="0"===r?"0"===i?`>=${r}.${i}.${o}-${a} <${r}.${i}.${+o+1}-0`:`>=${r}.${i}.${o}-${a} <${r}.${+i+1}.0-0`:`>=${r}.${i}.${o}-${a} <${+r+1}.0.0-0`):(s("no pr"),c="0"===r?"0"===i?`>=${r}.${i}.${o}${n} <${r}.${i}.${+o+1}-0`:`>=${r}.${i}.${o}${n} <${r}.${+i+1}.0-0`:`>=${r}.${i}.${o} <${+r+1}.0.0-0`),s("caret return",c),c}))},E=(e,t)=>(s("replaceXRanges",e,t),e.split(/\s+/).map((e=>A(e,t))).join(" ")),A=(e,t)=>{e=e.trim();const r=t.loose?l[u.XRANGELOOSE]:l[u.XRANGE];return e.replace(r,((r,n,i,o,a,c)=>{s("xRange",e,r,n,i,o,a,c);const l=w(i),u=l||w(o),d=u||w(a),h=d;return"="===n&&h&&(n=""),c=t.includePrerelease?"-0":"",l?r=">"===n||"<"===n?"<0.0.0-0":"*":n&&h?(u&&(o=0),a=0,">"===n?(n=">=",u?(i=+i+1,o=0,a=0):(o=+o+1,a=0)):"<="===n&&(n="<",u?i=+i+1:o=+o+1),"<"===n&&(c="-0"),r=`${n+i}.${o}.${a}${c}`):u?r=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(r=`>=${i}.${o}.0${c} <${i}.${+o+1}.0-0`),s("xRange return",r),r}))},P=(e,t)=>(s("replaceStars",e,t),e.trim().replace(l[u.STAR],"")),O=(e,t)=>(s("replaceGTE0",e,t),e.trim().replace(l[t.includePrerelease?u.GTE0PRE:u.GTE0],"")),T=e=>(t,r,n,i,o,a,s,c,l,u,d,h,f)=>`${r=w(n)?"":w(i)?`>=${n}.0.0${e?"-0":""}`:w(o)?`>=${n}.${i}.0${e?"-0":""}`:a?`>=${r}`:`>=${r}${e?"-0":""}`} ${c=w(l)?"":w(u)?`<${+l+1}.0.0-0`:w(d)?`<${l}.${+u+1}.0-0`:h?`<=${l}.${u}.${d}-${h}`:e?`<${l}.${u}.${+d+1}-0`:`<=${c}`}`.trim(),C=(e,t,r)=>{for(let n=0;n0){const n=e[r].semver;if(n.major===t.major&&n.minor===t.minor&&n.patch===t.patch)return!0}return!1}return!0}},3915:(e,t,r)=>{const n=r(2243),{MAX_LENGTH:i,MAX_SAFE_INTEGER:o}=r(8474),{safeRe:a,t:s}=r(4195),c=r(2407),{compareIdentifiers:l}=r(903);class u{constructor(e,t){if(t=c(t),e instanceof u){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;e=e.version}else if("string"!==typeof e)throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>i)throw new TypeError(`version is longer than ${i} characters`);n("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;const r=e.trim().match(t.loose?a[s.LOOSE]:a[s.FULL]);if(!r)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+r[1],this.minor=+r[2],this.patch=+r[3],this.major>o||this.major<0)throw new TypeError("Invalid major version");if(this.minor>o||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>o||this.patch<0)throw new TypeError("Invalid patch version");r[4]?this.prerelease=r[4].split(".").map((e=>{if(/^[0-9]+$/.test(e)){const t=+e;if(t>=0&&t=0;)"number"===typeof this.prerelease[n]&&(this.prerelease[n]++,n=-2);if(-1===n){if(t===this.prerelease.join(".")&&!1===r)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(e)}}if(t){let n=[t,e];!1===r&&(n=[t]),0===l(this.prerelease[0],t)?isNaN(this.prerelease[1])&&(this.prerelease=n):this.prerelease=n}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}}e.exports=u},3819:(e,t,r)=>{const n=r(5666);e.exports=(e,t)=>{const r=n(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null}},5489:(e,t,r)=>{const n=r(2736),i=r(8859),o=r(3573),a=r(772),s=r(3805),c=r(315);e.exports=(e,t,r,l)=>{switch(t){case"===":return"object"===typeof e&&(e=e.version),"object"===typeof r&&(r=r.version),e===r;case"!==":return"object"===typeof e&&(e=e.version),"object"===typeof r&&(r=r.version),e!==r;case"":case"=":case"==":return n(e,r,l);case"!=":return i(e,r,l);case">":return o(e,r,l);case">=":return a(e,r,l);case"<":return s(e,r,l);case"<=":return c(e,r,l);default:throw new TypeError(`Invalid operator: ${t}`)}}},4107:(e,t,r)=>{const n=r(3915),i=r(5666),{safeRe:o,t:a}=r(4195);e.exports=(e,t)=>{if(e instanceof n)return e;if("number"===typeof e&&(e=String(e)),"string"!==typeof e)return null;let r=null;if((t=t||{}).rtl){let t;for(;(t=o[a.COERCERTL].exec(e))&&(!r||r.index+r[0].length!==e.length);)r&&t.index+t[0].length===r.index+r[0].length||(r=t),o[a.COERCERTL].lastIndex=t.index+t[1].length+t[2].length;o[a.COERCERTL].lastIndex=-1}else r=e.match(o[a.COERCE]);return null===r?null:i(`${r[2]}.${r[3]||"0"}.${r[4]||"0"}`,t)}},3739:(e,t,r)=>{const n=r(3915);e.exports=(e,t,r)=>{const i=new n(e,r),o=new n(t,r);return i.compare(o)||i.compareBuild(o)}},2453:(e,t,r)=>{const n=r(2871);e.exports=(e,t)=>n(e,t,!0)},2871:(e,t,r)=>{const n=r(3915);e.exports=(e,t,r)=>new n(e,r).compare(new n(t,r))},7342:(e,t,r)=>{const n=r(5666);e.exports=(e,t)=>{const r=n(e,null,!0),i=n(t,null,!0),o=r.compare(i);if(0===o)return null;const a=o>0,s=a?r:i,c=a?i:r,l=!!s.prerelease.length;if(!!c.prerelease.length&&!l)return c.patch||c.minor?s.patch?"patch":s.minor?"minor":"major":"major";const u=l?"pre":"";return r.major!==i.major?u+"major":r.minor!==i.minor?u+"minor":r.patch!==i.patch?u+"patch":"prerelease"}},2736:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>0===n(e,t,r)},3573:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>n(e,t,r)>0},772:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>n(e,t,r)>=0},3262:(e,t,r)=>{const n=r(3915);e.exports=(e,t,r,i,o)=>{"string"===typeof r&&(o=i,i=r,r=void 0);try{return new n(e instanceof n?e.version:e,r).inc(t,i,o).version}catch(a){return null}}},3805:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>n(e,t,r)<0},315:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>n(e,t,r)<=0},7141:(e,t,r)=>{const n=r(3915);e.exports=(e,t)=>new n(e,t).major},3426:(e,t,r)=>{const n=r(3915);e.exports=(e,t)=>new n(e,t).minor},8859:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>0!==n(e,t,r)},5666:(e,t,r)=>{const n=r(3915);e.exports=(e,t,r=!1)=>{if(e instanceof n)return e;try{return new n(e,t)}catch(i){if(!r)return null;throw i}}},5915:(e,t,r)=>{const n=r(3915);e.exports=(e,t)=>new n(e,t).patch},5993:(e,t,r)=>{const n=r(5666);e.exports=(e,t)=>{const r=n(e,t);return r&&r.prerelease.length?r.prerelease:null}},8630:(e,t,r)=>{const n=r(2871);e.exports=(e,t,r)=>n(t,e,r)},1758:(e,t,r)=>{const n=r(3739);e.exports=(e,t)=>e.sort(((e,r)=>n(r,e,t)))},9670:(e,t,r)=>{const n=r(2908);e.exports=(e,t,r)=>{try{t=new n(t,r)}catch(i){return!1}return t.test(e)}},3854:(e,t,r)=>{const n=r(3739);e.exports=(e,t)=>e.sort(((e,r)=>n(e,r,t)))},9573:(e,t,r)=>{const n=r(5666);e.exports=(e,t)=>{const r=n(e,t);return r?r.version:null}},5353:(e,t,r)=>{const n=r(4195),i=r(8474),o=r(3915),a=r(903),s=r(5666),c=r(9573),l=r(3819),u=r(3262),d=r(7342),h=r(7141),f=r(3426),p=r(5915),m=r(5993),g=r(2871),v=r(8630),y=r(2453),b=r(3739),w=r(3854),x=r(1758),_=r(3573),S=r(3805),k=r(2736),E=r(8859),A=r(772),P=r(315),O=r(5489),T=r(4107),C=r(1703),j=r(2908),R=r(9670),I=r(1820),M=r(7226),L=r(2501),N=r(5344),D=r(3673),z=r(351),B=r(2837),U=r(3930),F=r(4777),$=r(4799),H=r(8936);e.exports={parse:s,valid:c,clean:l,inc:u,diff:d,major:h,minor:f,patch:p,prerelease:m,compare:g,rcompare:v,compareLoose:y,compareBuild:b,sort:w,rsort:x,gt:_,lt:S,eq:k,neq:E,gte:A,lte:P,cmp:O,coerce:T,Comparator:C,Range:j,satisfies:R,toComparators:I,maxSatisfying:M,minSatisfying:L,minVersion:N,validRange:D,outside:z,gtr:B,ltr:U,intersects:F,simplifyRange:$,subset:H,SemVer:o,re:n.re,src:n.src,tokens:n.t,SEMVER_SPEC_VERSION:i.SEMVER_SPEC_VERSION,RELEASE_TYPES:i.RELEASE_TYPES,compareIdentifiers:a.compareIdentifiers,rcompareIdentifiers:a.rcompareIdentifiers}},8474:e=>{const t=Number.MAX_SAFE_INTEGER||9007199254740991;e.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:t,RELEASE_TYPES:["major","premajor","minor","preminor","patch","prepatch","prerelease"],SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}},2243:(e,t,r)=>{const n="object"===typeof r(5469)&&{NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0}.NODE_DEBUG&&/\bsemver\b/i.test({NODE_ENV:"production",PUBLIC_URL:".",WDS_SOCKET_HOST:void 0,WDS_SOCKET_PATH:void 0,WDS_SOCKET_PORT:void 0,FAST_REFRESH:!0}.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};e.exports=n},903:e=>{const t=/^[0-9]+$/,r=(e,r)=>{const n=t.test(e),i=t.test(r);return n&&i&&(e=+e,r=+r),e===r?0:n&&!i?-1:i&&!n?1:er(t,e)}},2407:e=>{const t=Object.freeze({loose:!0}),r=Object.freeze({});e.exports=e=>e?"object"!==typeof e?t:e:r},4195:(e,t,r)=>{const{MAX_SAFE_COMPONENT_LENGTH:n,MAX_SAFE_BUILD_LENGTH:i,MAX_LENGTH:o}=r(8474),a=r(2243),s=(t=e.exports={}).re=[],c=t.safeRe=[],l=t.src=[],u=t.t={};let d=0;const h="[a-zA-Z0-9-]",f=[["\\s",1],["\\d",o],[h,i]],p=(e,t,r)=>{const n=(e=>{for(const[t,r]of f)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e})(t),i=d++;a(e,i,t),u[e]=i,l[i]=t,s[i]=new RegExp(t,r?"g":void 0),c[i]=new RegExp(n,r?"g":void 0)};p("NUMERICIDENTIFIER","0|[1-9]\\d*"),p("NUMERICIDENTIFIERLOOSE","\\d+"),p("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${h}*`),p("MAINVERSION",`(${l[u.NUMERICIDENTIFIER]})\\.(${l[u.NUMERICIDENTIFIER]})\\.(${l[u.NUMERICIDENTIFIER]})`),p("MAINVERSIONLOOSE",`(${l[u.NUMERICIDENTIFIERLOOSE]})\\.(${l[u.NUMERICIDENTIFIERLOOSE]})\\.(${l[u.NUMERICIDENTIFIERLOOSE]})`),p("PRERELEASEIDENTIFIER",`(?:${l[u.NUMERICIDENTIFIER]}|${l[u.NONNUMERICIDENTIFIER]})`),p("PRERELEASEIDENTIFIERLOOSE",`(?:${l[u.NUMERICIDENTIFIERLOOSE]}|${l[u.NONNUMERICIDENTIFIER]})`),p("PRERELEASE",`(?:-(${l[u.PRERELEASEIDENTIFIER]}(?:\\.${l[u.PRERELEASEIDENTIFIER]})*))`),p("PRERELEASELOOSE",`(?:-?(${l[u.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${l[u.PRERELEASEIDENTIFIERLOOSE]})*))`),p("BUILDIDENTIFIER",`${h}+`),p("BUILD",`(?:\\+(${l[u.BUILDIDENTIFIER]}(?:\\.${l[u.BUILDIDENTIFIER]})*))`),p("FULLPLAIN",`v?${l[u.MAINVERSION]}${l[u.PRERELEASE]}?${l[u.BUILD]}?`),p("FULL",`^${l[u.FULLPLAIN]}$`),p("LOOSEPLAIN",`[v=\\s]*${l[u.MAINVERSIONLOOSE]}${l[u.PRERELEASELOOSE]}?${l[u.BUILD]}?`),p("LOOSE",`^${l[u.LOOSEPLAIN]}$`),p("GTLT","((?:<|>)?=?)"),p("XRANGEIDENTIFIERLOOSE",`${l[u.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`),p("XRANGEIDENTIFIER",`${l[u.NUMERICIDENTIFIER]}|x|X|\\*`),p("XRANGEPLAIN",`[v=\\s]*(${l[u.XRANGEIDENTIFIER]})(?:\\.(${l[u.XRANGEIDENTIFIER]})(?:\\.(${l[u.XRANGEIDENTIFIER]})(?:${l[u.PRERELEASE]})?${l[u.BUILD]}?)?)?`),p("XRANGEPLAINLOOSE",`[v=\\s]*(${l[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${l[u.XRANGEIDENTIFIERLOOSE]})(?:\\.(${l[u.XRANGEIDENTIFIERLOOSE]})(?:${l[u.PRERELEASELOOSE]})?${l[u.BUILD]}?)?)?`),p("XRANGE",`^${l[u.GTLT]}\\s*${l[u.XRANGEPLAIN]}$`),p("XRANGELOOSE",`^${l[u.GTLT]}\\s*${l[u.XRANGEPLAINLOOSE]}$`),p("COERCE",`(^|[^\\d])(\\d{1,${n}})(?:\\.(\\d{1,${n}}))?(?:\\.(\\d{1,${n}}))?(?:$|[^\\d])`),p("COERCERTL",l[u.COERCE],!0),p("LONETILDE","(?:~>?)"),p("TILDETRIM",`(\\s*)${l[u.LONETILDE]}\\s+`,!0),t.tildeTrimReplace="$1~",p("TILDE",`^${l[u.LONETILDE]}${l[u.XRANGEPLAIN]}$`),p("TILDELOOSE",`^${l[u.LONETILDE]}${l[u.XRANGEPLAINLOOSE]}$`),p("LONECARET","(?:\\^)"),p("CARETTRIM",`(\\s*)${l[u.LONECARET]}\\s+`,!0),t.caretTrimReplace="$1^",p("CARET",`^${l[u.LONECARET]}${l[u.XRANGEPLAIN]}$`),p("CARETLOOSE",`^${l[u.LONECARET]}${l[u.XRANGEPLAINLOOSE]}$`),p("COMPARATORLOOSE",`^${l[u.GTLT]}\\s*(${l[u.LOOSEPLAIN]})$|^$`),p("COMPARATOR",`^${l[u.GTLT]}\\s*(${l[u.FULLPLAIN]})$|^$`),p("COMPARATORTRIM",`(\\s*)${l[u.GTLT]}\\s*(${l[u.LOOSEPLAIN]}|${l[u.XRANGEPLAIN]})`,!0),t.comparatorTrimReplace="$1$2$3",p("HYPHENRANGE",`^\\s*(${l[u.XRANGEPLAIN]})\\s+-\\s+(${l[u.XRANGEPLAIN]})\\s*$`),p("HYPHENRANGELOOSE",`^\\s*(${l[u.XRANGEPLAINLOOSE]})\\s+-\\s+(${l[u.XRANGEPLAINLOOSE]})\\s*$`),p("STAR","(<|>)?=?\\s*\\*"),p("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$"),p("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")},2837:(e,t,r)=>{const n=r(351);e.exports=(e,t,r)=>n(e,t,">",r)},4777:(e,t,r)=>{const n=r(2908);e.exports=(e,t,r)=>(e=new n(e,r),t=new n(t,r),e.intersects(t,r))},3930:(e,t,r)=>{const n=r(351);e.exports=(e,t,r)=>n(e,t,"<",r)},7226:(e,t,r)=>{const n=r(3915),i=r(2908);e.exports=(e,t,r)=>{let o=null,a=null,s=null;try{s=new i(t,r)}catch(c){return null}return e.forEach((e=>{s.test(e)&&(o&&-1!==a.compare(e)||(o=e,a=new n(o,r)))})),o}},2501:(e,t,r)=>{const n=r(3915),i=r(2908);e.exports=(e,t,r)=>{let o=null,a=null,s=null;try{s=new i(t,r)}catch(c){return null}return e.forEach((e=>{s.test(e)&&(o&&1!==a.compare(e)||(o=e,a=new n(o,r)))})),o}},5344:(e,t,r)=>{const n=r(3915),i=r(2908),o=r(3573);e.exports=(e,t)=>{e=new i(e,t);let r=new n("0.0.0");if(e.test(r))return r;if(r=new n("0.0.0-0"),e.test(r))return r;r=null;for(let i=0;i{const t=new n(e.semver.version);switch(e.operator){case">":0===t.prerelease.length?t.patch++:t.prerelease.push(0),t.raw=t.format();case"":case">=":a&&!o(t,a)||(a=t);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${e.operator}`)}})),!a||r&&!o(r,a)||(r=a)}return r&&e.test(r)?r:null}},351:(e,t,r)=>{const n=r(3915),i=r(1703),{ANY:o}=i,a=r(2908),s=r(9670),c=r(3573),l=r(3805),u=r(315),d=r(772);e.exports=(e,t,r,h)=>{let f,p,m,g,v;switch(e=new n(e,h),t=new a(t,h),r){case">":f=c,p=u,m=l,g=">",v=">=";break;case"<":f=l,p=d,m=c,g="<",v="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(s(e,t,h))return!1;for(let n=0;n{e.semver===o&&(e=new i(">=0.0.0")),a=a||e,s=s||e,f(e.semver,a.semver,h)?a=e:m(e.semver,s.semver,h)&&(s=e)})),a.operator===g||a.operator===v)return!1;if((!s.operator||s.operator===g)&&p(e,s.semver))return!1;if(s.operator===v&&m(e,s.semver))return!1}return!0}},4799:(e,t,r)=>{const n=r(9670),i=r(2871);e.exports=(e,t,r)=>{const o=[];let a=null,s=null;const c=e.sort(((e,t)=>i(e,t,r)));for(const i of c){n(i,t,r)?(s=i,a||(a=i)):(s&&o.push([a,s]),s=null,a=null)}a&&o.push([a,null]);const l=[];for(const[n,i]of o)n===i?l.push(n):i||n!==c[0]?i?n===c[0]?l.push(`<=${i}`):l.push(`${n} - ${i}`):l.push(`>=${n}`):l.push("*");const u=l.join(" || "),d="string"===typeof t.raw?t.raw:String(t);return u.length{const n=r(2908),i=r(1703),{ANY:o}=i,a=r(9670),s=r(2871),c=[new i(">=0.0.0-0")],l=[new i(">=0.0.0")],u=(e,t,r)=>{if(e===t)return!0;if(1===e.length&&e[0].semver===o){if(1===t.length&&t[0].semver===o)return!0;e=r.includePrerelease?c:l}if(1===t.length&&t[0].semver===o){if(r.includePrerelease)return!0;t=l}const n=new Set;let i,u,f,p,m,g,v;for(const o of e)">"===o.operator||">="===o.operator?i=d(i,o,r):"<"===o.operator||"<="===o.operator?u=h(u,o,r):n.add(o.semver);if(n.size>1)return null;if(i&&u){if(f=s(i.semver,u.semver,r),f>0)return null;if(0===f&&(">="!==i.operator||"<="!==u.operator))return null}for(const o of n){if(i&&!a(o,String(i),r))return null;if(u&&!a(o,String(u),r))return null;for(const e of t)if(!a(o,String(e),r))return!1;return!0}let y=!(!u||r.includePrerelease||!u.semver.prerelease.length)&&u.semver,b=!(!i||r.includePrerelease||!i.semver.prerelease.length)&&i.semver;y&&1===y.prerelease.length&&"<"===u.operator&&0===y.prerelease[0]&&(y=!1);for(const o of t){if(v=v||">"===o.operator||">="===o.operator,g=g||"<"===o.operator||"<="===o.operator,i)if(b&&o.semver.prerelease&&o.semver.prerelease.length&&o.semver.major===b.major&&o.semver.minor===b.minor&&o.semver.patch===b.patch&&(b=!1),">"===o.operator||">="===o.operator){if(p=d(i,o,r),p===o&&p!==i)return!1}else if(">="===i.operator&&!a(i.semver,String(o),r))return!1;if(u)if(y&&o.semver.prerelease&&o.semver.prerelease.length&&o.semver.major===y.major&&o.semver.minor===y.minor&&o.semver.patch===y.patch&&(y=!1),"<"===o.operator||"<="===o.operator){if(m=h(u,o,r),m===o&&m!==u)return!1}else if("<="===u.operator&&!a(u.semver,String(o),r))return!1;if(!o.operator&&(u||i)&&0!==f)return!1}return!(i&&g&&!u&&0!==f)&&(!(u&&v&&!i&&0!==f)&&(!b&&!y))},d=(e,t,r)=>{if(!e)return t;const n=s(e.semver,t.semver,r);return n>0?e:n<0||">"===t.operator&&">="===e.operator?t:e},h=(e,t,r)=>{if(!e)return t;const n=s(e.semver,t.semver,r);return n<0?e:n>0||"<"===t.operator&&"<="===e.operator?t:e};e.exports=(e,t,r={})=>{if(e===t)return!0;e=new n(e,r),t=new n(t,r);let i=!1;e:for(const n of e.set){for(const e of t.set){const t=u(n,e,r);if(i=i||null!==t,t)continue e}if(i)return!1}return!0}},1820:(e,t,r)=>{const n=r(2908);e.exports=(e,t)=>new n(e,t).set.map((e=>e.map((e=>e.value)).join(" ").trim().split(" ")))},3673:(e,t,r)=>{const n=r(2908);e.exports=(e,t)=>{try{return new n(e,t).range||"*"}catch(r){return null}}},1742:(e,t,r)=>{var n=r(6293).Buffer;function i(e,t){this._block=n.alloc(e),this._finalSize=t,this._blockSize=e,this._len=0}i.prototype.update=function(e,t){"string"===typeof e&&(t=t||"utf8",e=n.from(e,t));for(var r=this._block,i=this._blockSize,o=e.length,a=this._len,s=0;s=this._finalSize&&(this._update(this._block),this._block.fill(0));var r=8*this._len;if(r<=4294967295)this._block.writeUInt32BE(r,this._blockSize-4);else{var n=(4294967295&r)>>>0,i=(r-n)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(n,this._blockSize-4)}this._update(this._block);var o=this._hash();return e?o.toString(e):o},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},e.exports=i},6478:(e,t,r)=>{var n=e.exports=function(e){e=e.toLowerCase();var t=n[e];if(!t)throw new Error(e+" is not supported (we accept pull requests)");return new t};n.sha=r(3357),n.sha1=r(4709),n.sha224=r(2023),n.sha256=r(5988),n.sha384=r(5676),n.sha512=r(4696)},3357:(e,t,r)=>{var n=r(637),i=r(1742),o=r(6293).Buffer,a=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function c(){this.init(),this._w=s,i.call(this,64,56)}function l(e){return e<<30|e>>>2}function u(e,t,r,n){return 0===e?t&r|~t&n:2===e?t&r|t&n|r&n:t^r^n}n(c,i),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,c=0|this._e,d=0;d<16;++d)r[d]=e.readInt32BE(4*d);for(;d<80;++d)r[d]=r[d-3]^r[d-8]^r[d-14]^r[d-16];for(var h=0;h<80;++h){var f=~~(h/20),p=0|((t=n)<<5|t>>>27)+u(f,i,o,s)+c+r[h]+a[f];c=s,s=o,o=l(i),i=n,n=p}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=o.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},4709:(e,t,r)=>{var n=r(637),i=r(1742),o=r(6293).Buffer,a=[1518500249,1859775393,-1894007588,-899497514],s=new Array(80);function c(){this.init(),this._w=s,i.call(this,64,56)}function l(e){return e<<5|e>>>27}function u(e){return e<<30|e>>>2}function d(e,t,r,n){return 0===e?t&r|~t&n:2===e?t&r|t&n|r&n:t^r^n}n(c,i),c.prototype.init=function(){return this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520,this},c.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,c=0|this._e,h=0;h<16;++h)r[h]=e.readInt32BE(4*h);for(;h<80;++h)r[h]=(t=r[h-3]^r[h-8]^r[h-14]^r[h-16])<<1|t>>>31;for(var f=0;f<80;++f){var p=~~(f/20),m=l(n)+d(p,i,o,s)+c+r[f]+a[p]|0;c=s,s=o,o=u(i),i=n,n=m}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0},c.prototype._hash=function(){var e=o.allocUnsafe(20);return e.writeInt32BE(0|this._a,0),e.writeInt32BE(0|this._b,4),e.writeInt32BE(0|this._c,8),e.writeInt32BE(0|this._d,12),e.writeInt32BE(0|this._e,16),e},e.exports=c},2023:(e,t,r)=>{var n=r(637),i=r(5988),o=r(1742),a=r(6293).Buffer,s=new Array(64);function c(){this.init(),this._w=s,o.call(this,64,56)}n(c,i),c.prototype.init=function(){return this._a=3238371032,this._b=914150663,this._c=812702999,this._d=4144912697,this._e=4290775857,this._f=1750603025,this._g=1694076839,this._h=3204075428,this},c.prototype._hash=function(){var e=a.allocUnsafe(28);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e},e.exports=c},5988:(e,t,r)=>{var n=r(637),i=r(1742),o=r(6293).Buffer,a=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],s=new Array(64);function c(){this.init(),this._w=s,i.call(this,64,56)}function l(e,t,r){return r^e&(t^r)}function u(e,t,r){return e&t|r&(e|t)}function d(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function h(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function f(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}n(c,i),c.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},c.prototype._update=function(e){for(var t,r=this._w,n=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,c=0|this._e,p=0|this._f,m=0|this._g,g=0|this._h,v=0;v<16;++v)r[v]=e.readInt32BE(4*v);for(;v<64;++v)r[v]=0|(((t=r[v-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+r[v-7]+f(r[v-15])+r[v-16];for(var y=0;y<64;++y){var b=g+h(c)+l(c,p,m)+a[y]+r[y]|0,w=d(n)+u(n,i,o)|0;g=m,m=p,p=c,c=s+b|0,s=o,o=i,i=n,n=b+w|0}this._a=n+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=c+this._e|0,this._f=p+this._f|0,this._g=m+this._g|0,this._h=g+this._h|0},c.prototype._hash=function(){var e=o.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e},e.exports=c},5676:(e,t,r)=>{var n=r(637),i=r(4696),o=r(1742),a=r(6293).Buffer,s=new Array(160);function c(){this.init(),this._w=s,o.call(this,128,112)}n(c,i),c.prototype.init=function(){return this._ah=3418070365,this._bh=1654270250,this._ch=2438529370,this._dh=355462360,this._eh=1731405415,this._fh=2394180231,this._gh=3675008525,this._hh=1203062813,this._al=3238371032,this._bl=914150663,this._cl=812702999,this._dl=4144912697,this._el=4290775857,this._fl=1750603025,this._gl=1694076839,this._hl=3204075428,this},c.prototype._hash=function(){var e=a.allocUnsafe(48);function t(t,r,n){e.writeInt32BE(t,n),e.writeInt32BE(r,n+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),e},e.exports=c},4696:(e,t,r)=>{var n=r(637),i=r(1742),o=r(6293).Buffer,a=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],s=new Array(160);function c(){this.init(),this._w=s,i.call(this,128,112)}function l(e,t,r){return r^e&(t^r)}function u(e,t,r){return e&t|r&(e|t)}function d(e,t){return(e>>>28|t<<4)^(t>>>2|e<<30)^(t>>>7|e<<25)}function h(e,t){return(e>>>14|t<<18)^(e>>>18|t<<14)^(t>>>9|e<<23)}function f(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^e>>>7}function p(e,t){return(e>>>1|t<<31)^(e>>>8|t<<24)^(e>>>7|t<<25)}function m(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^e>>>6}function g(e,t){return(e>>>19|t<<13)^(t>>>29|e<<3)^(e>>>6|t<<26)}function v(e,t){return e>>>0>>0?1:0}n(c,i),c.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},c.prototype._update=function(e){for(var t=this._w,r=0|this._ah,n=0|this._bh,i=0|this._ch,o=0|this._dh,s=0|this._eh,c=0|this._fh,y=0|this._gh,b=0|this._hh,w=0|this._al,x=0|this._bl,_=0|this._cl,S=0|this._dl,k=0|this._el,E=0|this._fl,A=0|this._gl,P=0|this._hl,O=0;O<32;O+=2)t[O]=e.readInt32BE(4*O),t[O+1]=e.readInt32BE(4*O+4);for(;O<160;O+=2){var T=t[O-30],C=t[O-30+1],j=f(T,C),R=p(C,T),I=m(T=t[O-4],C=t[O-4+1]),M=g(C,T),L=t[O-14],N=t[O-14+1],D=t[O-32],z=t[O-32+1],B=R+N|0,U=j+L+v(B,R)|0;U=(U=U+I+v(B=B+M|0,M)|0)+D+v(B=B+z|0,z)|0,t[O]=U,t[O+1]=B}for(var F=0;F<160;F+=2){U=t[F],B=t[F+1];var $=u(r,n,i),H=u(w,x,_),V=d(r,w),q=d(w,r),K=h(s,k),W=h(k,s),G=a[F],Z=a[F+1],Y=l(s,c,y),X=l(k,E,A),J=P+W|0,Q=b+K+v(J,P)|0;Q=(Q=(Q=Q+Y+v(J=J+X|0,X)|0)+G+v(J=J+Z|0,Z)|0)+U+v(J=J+B|0,B)|0;var ee=q+H|0,te=V+$+v(ee,q)|0;b=y,P=A,y=c,A=E,c=s,E=k,s=o+Q+v(k=S+J|0,S)|0,o=i,S=_,i=n,_=x,n=r,x=w,r=Q+te+v(w=J+ee|0,J)|0}this._al=this._al+w|0,this._bl=this._bl+x|0,this._cl=this._cl+_|0,this._dl=this._dl+S|0,this._el=this._el+k|0,this._fl=this._fl+E|0,this._gl=this._gl+A|0,this._hl=this._hl+P|0,this._ah=this._ah+r+v(this._al,w)|0,this._bh=this._bh+n+v(this._bl,x)|0,this._ch=this._ch+i+v(this._cl,_)|0,this._dh=this._dh+o+v(this._dl,S)|0,this._eh=this._eh+s+v(this._el,k)|0,this._fh=this._fh+c+v(this._fl,E)|0,this._gh=this._gh+y+v(this._gl,A)|0,this._hh=this._hh+b+v(this._hl,P)|0},c.prototype._hash=function(){var e=o.allocUnsafe(64);function t(t,r,n){e.writeInt32BE(t,n),e.writeInt32BE(r,n+4)}return t(this._ah,this._al,0),t(this._bh,this._bl,8),t(this._ch,this._cl,16),t(this._dh,this._dl,24),t(this._eh,this._el,32),t(this._fh,this._fl,40),t(this._gh,this._gl,48),t(this._hh,this._hl,56),e},e.exports=c},1702:(e,t,r)=>{e.exports=i;var n=r(4062).EventEmitter;function i(){n.call(this)}r(637)(i,n),i.Readable=r(2833),i.Writable=r(6672),i.Duplex=r(4751),i.Transform=r(2598),i.PassThrough=r(6388),i.finished=r(8279),i.pipeline=r(5942),i.Stream=i,i.prototype.pipe=function(e,t){var r=this;function i(t){e.writable&&!1===e.write(t)&&r.pause&&r.pause()}function o(){r.readable&&r.resume&&r.resume()}r.on("data",i),e.on("drain",o),e._isStdio||t&&!1===t.end||(r.on("end",s),r.on("close",c));var a=!1;function s(){a||(a=!0,e.end())}function c(){a||(a=!0,"function"===typeof e.destroy&&e.destroy())}function l(e){if(u(),0===n.listenerCount(this,"error"))throw e}function u(){r.removeListener("data",i),e.removeListener("drain",o),r.removeListener("end",s),r.removeListener("close",c),r.removeListener("error",l),e.removeListener("error",l),r.removeListener("end",u),r.removeListener("close",u),e.removeListener("close",u)}return r.on("error",l),e.on("error",l),r.on("end",u),r.on("close",u),e.on("close",u),e.emit("pipe",r),e}},5049:(e,t,r)=>{"use strict";var n=r(6293).Buffer,i=n.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!==typeof t&&(n.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=c,this.end=l,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=u,this.end=d,t=3;break;default:return this.write=h,void(this.end=f)}this.lastNeed=0,this.lastTotal=0,this.lastChar=n.allocUnsafe(t)}function a(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,r=function(e,t,r){if(128!==(192&t[0]))return e.lastNeed=0,"\ufffd";if(e.lastNeed>1&&t.length>1){if(128!==(192&t[1]))return e.lastNeed=1,"\ufffd";if(e.lastNeed>2&&t.length>2&&128!==(192&t[2]))return e.lastNeed=2,"\ufffd"}}(this,e);return void 0!==r?r:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function c(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function l(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function u(e,t){var r=(e.length-t)%3;return 0===r?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,1===r?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function d(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function h(e){return e.toString(this.encoding)}function f(e){return e&&e.length?this.write(e):""}t.s=o,o.prototype.write=function(e){if(0===e.length)return"";var t,r;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r=0)return i>0&&(e.lastNeed=i-1),i;if(--n=0)return i>0&&(e.lastNeed=i-2),i;if(--n=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)},o.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},1808:(e,t,r)=>{var n=r(4872).Buffer;e.exports=function(e){return ArrayBuffer.isView(e)?n.from(e.buffer,e.byteOffset,e.byteLength):n.from(e)}},6688:(e,t,r)=>{"use strict";var n=r(9652);var i="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t},o=n.useState,a=n.useEffect,s=n.useLayoutEffect,c=n.useDebugValue;function l(e){var t=e.getSnapshot;e=e.value;try{var r=t();return!i(e,r)}catch(n){return!0}}var u="undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement?function(e,t){return t()}:function(e,t){var r=t(),n=o({inst:{value:r,getSnapshot:t}}),i=n[0].inst,u=n[1];return s((function(){i.value=r,i.getSnapshot=t,l(i)&&u({inst:i})}),[e,r,t]),a((function(){return l(i)&&u({inst:i}),e((function(){l(i)&&u({inst:i})}))}),[e]),c(r),r};t.useSyncExternalStore=void 0!==n.useSyncExternalStore?n.useSyncExternalStore:u},9821:(e,t,r)=>{"use strict";var n=r(9652),i=r(5447);var o="function"===typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e===1/t)||e!==e&&t!==t},a=i.useSyncExternalStore,s=n.useRef,c=n.useEffect,l=n.useMemo,u=n.useDebugValue;t.useSyncExternalStoreWithSelector=function(e,t,r,n,i){var d=s(null);if(null===d.current){var h={hasValue:!1,value:null};d.current=h}else h=d.current;d=l((function(){function e(e){if(!c){if(c=!0,a=e,e=n(e),void 0!==i&&h.hasValue){var t=h.value;if(i(t,e))return s=t}return s=e}if(t=s,o(a,e))return t;var r=n(e);return void 0!==i&&i(t,r)?t:(a=e,s=r)}var a,s,c=!1,l=void 0===r?null:r;return[function(){return e(t())},null===l?void 0:function(){return e(l())}]}),[t,r,n,i]);var f=a(e,d[0],d[1]);return c((function(){h.hasValue=!0,h.value=f}),[f]),u(f),f}},5447:(e,t,r)=>{"use strict";e.exports=r(6688)},2003:(e,t,r)=>{"use strict";e.exports=r(9821)},4460:(e,t,r)=>{function n(e){try{if(!r.g.localStorage)return!1}catch(n){return!1}var t=r.g.localStorage[e];return null!=t&&"true"===String(t).toLowerCase()}e.exports=function(e,t){if(n("noDeprecation"))return e;var r=!1;return function(){if(!r){if(n("throwDeprecation"))throw new Error(t);n("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}}},5897:e=>{"use strict";e.exports=function(e){e.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}},9616:(e,t,r)=>{"use strict";function n(e){var t=this;if(t instanceof n||(t=new n),t.tail=null,t.head=null,t.length=0,e&&"function"===typeof e.forEach)e.forEach((function(e){t.push(e)}));else if(arguments.length>0)for(var r=0,i=arguments.length;r1)r=t;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");n=this.head.next,r=this.head.value}for(var i=0;null!==n;i++)r=e(r,n.value,i),n=n.next;return r},n.prototype.reduceReverse=function(e,t){var r,n=this.tail;if(arguments.length>1)r=t;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");n=this.tail.prev,r=this.tail.value}for(var i=this.length-1;null!==n;i--)r=e(r,n.value,i),n=n.prev;return r},n.prototype.toArray=function(){for(var e=new Array(this.length),t=0,r=this.head;null!==r;t++)e[t]=r.value,r=r.next;return e},n.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,r=this.tail;null!==r;t++)e[t]=r.value,r=r.prev;return e},n.prototype.slice=function(e,t){(t=t||this.length)<0&&(t+=this.length),(e=e||0)<0&&(e+=this.length);var r=new n;if(tthis.length&&(t=this.length);for(var i=0,o=this.head;null!==o&&ithis.length&&(t=this.length);for(var i=this.length,o=this.tail;null!==o&&i>t;i--)o=o.prev;for(;null!==o&&i>e;i--,o=o.prev)r.push(o.value);return r},n.prototype.splice=function(e,t,...r){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var n=0,o=this.head;null!==o&&n{},8247:()=>{},3018:()=>{},6601:()=>{},9214:()=>{},2361:()=>{},4616:()=>{},6564:(e,t,r)=>{var n=r(9766).default;function i(){"use strict";e.exports=i=function(){return t},e.exports.__esModule=!0,e.exports.default=e.exports;var t={},r=Object.prototype,o=r.hasOwnProperty,a=Object.defineProperty||function(e,t,r){e[t]=r.value},s="function"==typeof Symbol?Symbol:{},c=s.iterator||"@@iterator",l=s.asyncIterator||"@@asyncIterator",u=s.toStringTag||"@@toStringTag";function d(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{d({},"")}catch(C){d=function(e,t,r){return e[t]=r}}function h(e,t,r,n){var i=t&&t.prototype instanceof m?t:m,o=Object.create(i.prototype),s=new O(n||[]);return a(o,"_invoke",{value:k(e,r,s)}),o}function f(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(C){return{type:"throw",arg:C}}}t.wrap=h;var p={};function m(){}function g(){}function v(){}var y={};d(y,c,(function(){return this}));var b=Object.getPrototypeOf,w=b&&b(b(T([])));w&&w!==r&&o.call(w,c)&&(y=w);var x=v.prototype=m.prototype=Object.create(y);function _(e){["next","throw","return"].forEach((function(t){d(e,t,(function(e){return this._invoke(t,e)}))}))}function S(e,t){function r(i,a,s,c){var l=f(e[i],e,a);if("throw"!==l.type){var u=l.arg,d=u.value;return d&&"object"==n(d)&&o.call(d,"__await")?t.resolve(d.__await).then((function(e){r("next",e,s,c)}),(function(e){r("throw",e,s,c)})):t.resolve(d).then((function(e){u.value=e,s(u)}),(function(e){return r("throw",e,s,c)}))}c(l.arg)}var i;a(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,i){r(e,n,t,i)}))}return i=i?i.then(o,o):o()}})}function k(e,t,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return{value:void 0,done:!0}}for(r.method=i,r.arg=o;;){var a=r.delegate;if(a){var s=E(a,r);if(s){if(s===p)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=f(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===p)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function E(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,E(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),p;var i=f(n,e.iterator,t.arg);if("throw"===i.type)return t.method="throw",t.arg=i.arg,t.delegate=null,p;var o=i.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,p):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,p)}function A(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function P(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function O(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(A,this),this.reset(!0)}function T(e){if(e||""===e){var t=e[c];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,i=function t(){for(;++r=0;--n){var i=this.tryEntries[n],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var s=o.call(i,"catchLoc"),c=o.call(i,"finallyLoc");if(s&&c){if(this.prev=0;--r){var n=this.tryEntries[r];if(n.tryLoc<=this.prev&&o.call(n,"finallyLoc")&&this.prev=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),P(r),p}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var i=n.arg;P(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:T(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),p}},t}e.exports=i,e.exports.__esModule=!0,e.exports.default=e.exports},9766:e=>{function t(r){return e.exports=t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,t(r)}e.exports=t,e.exports.__esModule=!0,e.exports.default=e.exports},3050:(e,t,r)=>{var n=r(6564)();e.exports=n;try{regeneratorRuntime=n}catch(i){"object"===typeof globalThis?globalThis.regeneratorRuntime=n:Function("r","regeneratorRuntime = r")(n)}},1730:(e,t,r)=>{"use strict";function n(){return n=Object.assign?Object.assign.bind():function(e){for(var t=1;tn})},8619:(e,t,r)=>{"use strict";function n(e,t){return n=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},n(e,t)}function i(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,n(e,t)}r.d(t,{Z:()=>i})},6996:e=>{"use strict";e.exports=JSON.parse('["\u7684","\u4e00","\u662f","\u5728","\u4e0d","\u4e86","\u6709","\u548c","\u4eba","\u8fd9","\u4e2d","\u5927","\u4e3a","\u4e0a","\u4e2a","\u56fd","\u6211","\u4ee5","\u8981","\u4ed6","\u65f6","\u6765","\u7528","\u4eec","\u751f","\u5230","\u4f5c","\u5730","\u4e8e","\u51fa","\u5c31","\u5206","\u5bf9","\u6210","\u4f1a","\u53ef","\u4e3b","\u53d1","\u5e74","\u52a8","\u540c","\u5de5","\u4e5f","\u80fd","\u4e0b","\u8fc7","\u5b50","\u8bf4","\u4ea7","\u79cd","\u9762","\u800c","\u65b9","\u540e","\u591a","\u5b9a","\u884c","\u5b66","\u6cd5","\u6240","\u6c11","\u5f97","\u7ecf","\u5341","\u4e09","\u4e4b","\u8fdb","\u7740","\u7b49","\u90e8","\u5ea6","\u5bb6","\u7535","\u529b","\u91cc","\u5982","\u6c34","\u5316","\u9ad8","\u81ea","\u4e8c","\u7406","\u8d77","\u5c0f","\u7269","\u73b0","\u5b9e","\u52a0","\u91cf","\u90fd","\u4e24","\u4f53","\u5236","\u673a","\u5f53","\u4f7f","\u70b9","\u4ece","\u4e1a","\u672c","\u53bb","\u628a","\u6027","\u597d","\u5e94","\u5f00","\u5b83","\u5408","\u8fd8","\u56e0","\u7531","\u5176","\u4e9b","\u7136","\u524d","\u5916","\u5929","\u653f","\u56db","\u65e5","\u90a3","\u793e","\u4e49","\u4e8b","\u5e73","\u5f62","\u76f8","\u5168","\u8868","\u95f4","\u6837","\u4e0e","\u5173","\u5404","\u91cd","\u65b0","\u7ebf","\u5185","\u6570","\u6b63","\u5fc3","\u53cd","\u4f60","\u660e","\u770b","\u539f","\u53c8","\u4e48","\u5229","\u6bd4","\u6216","\u4f46","\u8d28","\u6c14","\u7b2c","\u5411","\u9053","\u547d","\u6b64","\u53d8","\u6761","\u53ea","\u6ca1","\u7ed3","\u89e3","\u95ee","\u610f","\u5efa","\u6708","\u516c","\u65e0","\u7cfb","\u519b","\u5f88","\u60c5","\u8005","\u6700","\u7acb","\u4ee3","\u60f3","\u5df2","\u901a","\u5e76","\u63d0","\u76f4","\u9898","\u515a","\u7a0b","\u5c55","\u4e94","\u679c","\u6599","\u8c61","\u5458","\u9769","\u4f4d","\u5165","\u5e38","\u6587","\u603b","\u6b21","\u54c1","\u5f0f","\u6d3b","\u8bbe","\u53ca","\u7ba1","\u7279","\u4ef6","\u957f","\u6c42","\u8001","\u5934","\u57fa","\u8d44","\u8fb9","\u6d41","\u8def","\u7ea7","\u5c11","\u56fe","\u5c71","\u7edf","\u63a5","\u77e5","\u8f83","\u5c06","\u7ec4","\u89c1","\u8ba1","\u522b","\u5979","\u624b","\u89d2","\u671f","\u6839","\u8bba","\u8fd0","\u519c","\u6307","\u51e0","\u4e5d","\u533a","\u5f3a","\u653e","\u51b3","\u897f","\u88ab","\u5e72","\u505a","\u5fc5","\u6218","\u5148","\u56de","\u5219","\u4efb","\u53d6","\u636e","\u5904","\u961f","\u5357","\u7ed9","\u8272","\u5149","\u95e8","\u5373","\u4fdd","\u6cbb","\u5317","\u9020","\u767e","\u89c4","\u70ed","\u9886","\u4e03","\u6d77","\u53e3","\u4e1c","\u5bfc","\u5668","\u538b","\u5fd7","\u4e16","\u91d1","\u589e","\u4e89","\u6d4e","\u9636","\u6cb9","\u601d","\u672f","\u6781","\u4ea4","\u53d7","\u8054","\u4ec0","\u8ba4","\u516d","\u5171","\u6743","\u6536","\u8bc1","\u6539","\u6e05","\u7f8e","\u518d","\u91c7","\u8f6c","\u66f4","\u5355","\u98ce","\u5207","\u6253","\u767d","\u6559","\u901f","\u82b1","\u5e26","\u5b89","\u573a","\u8eab","\u8f66","\u4f8b","\u771f","\u52a1","\u5177","\u4e07","\u6bcf","\u76ee","\u81f3","\u8fbe","\u8d70","\u79ef","\u793a","\u8bae","\u58f0","\u62a5","\u6597","\u5b8c","\u7c7b","\u516b","\u79bb","\u534e","\u540d","\u786e","\u624d","\u79d1","\u5f20","\u4fe1","\u9a6c","\u8282","\u8bdd","\u7c73","\u6574","\u7a7a","\u5143","\u51b5","\u4eca","\u96c6","\u6e29","\u4f20","\u571f","\u8bb8","\u6b65","\u7fa4","\u5e7f","\u77f3","\u8bb0","\u9700","\u6bb5","\u7814","\u754c","\u62c9","\u6797","\u5f8b","\u53eb","\u4e14","\u7a76","\u89c2","\u8d8a","\u7ec7","\u88c5","\u5f71","\u7b97","\u4f4e","\u6301","\u97f3","\u4f17","\u4e66","\u5e03","\u590d","\u5bb9","\u513f","\u987b","\u9645","\u5546","\u975e","\u9a8c","\u8fde","\u65ad","\u6df1","\u96be","\u8fd1","\u77ff","\u5343","\u5468","\u59d4","\u7d20","\u6280","\u5907","\u534a","\u529e","\u9752","\u7701","\u5217","\u4e60","\u54cd","\u7ea6","\u652f","\u822c","\u53f2","\u611f","\u52b3","\u4fbf","\u56e2","\u5f80","\u9178","\u5386","\u5e02","\u514b","\u4f55","\u9664","\u6d88","\u6784","\u5e9c","\u79f0","\u592a","\u51c6","\u7cbe","\u503c","\u53f7","\u7387","\u65cf","\u7ef4","\u5212","\u9009","\u6807","\u5199","\u5b58","\u5019","\u6bdb","\u4eb2","\u5feb","\u6548","\u65af","\u9662","\u67e5","\u6c5f","\u578b","\u773c","\u738b","\u6309","\u683c","\u517b","\u6613","\u7f6e","\u6d3e","\u5c42","\u7247","\u59cb","\u5374","\u4e13","\u72b6","\u80b2","\u5382","\u4eac","\u8bc6","\u9002","\u5c5e","\u5706","\u5305","\u706b","\u4f4f","\u8c03","\u6ee1","\u53bf","\u5c40","\u7167","\u53c2","\u7ea2","\u7ec6","\u5f15","\u542c","\u8be5","\u94c1","\u4ef7","\u4e25","\u9996","\u5e95","\u6db2","\u5b98","\u5fb7","\u968f","\u75c5","\u82cf","\u5931","\u5c14","\u6b7b","\u8bb2","\u914d","\u5973","\u9ec4","\u63a8","\u663e","\u8c08","\u7f6a","\u795e","\u827a","\u5462","\u5e2d","\u542b","\u4f01","\u671b","\u5bc6","\u6279","\u8425","\u9879","\u9632","\u4e3e","\u7403","\u82f1","\u6c27","\u52bf","\u544a","\u674e","\u53f0","\u843d","\u6728","\u5e2e","\u8f6e","\u7834","\u4e9a","\u5e08","\u56f4","\u6ce8","\u8fdc","\u5b57","\u6750","\u6392","\u4f9b","\u6cb3","\u6001","\u5c01","\u53e6","\u65bd","\u51cf","\u6811","\u6eb6","\u600e","\u6b62","\u6848","\u8a00","\u58eb","\u5747","\u6b66","\u56fa","\u53f6","\u9c7c","\u6ce2","\u89c6","\u4ec5","\u8d39","\u7d27","\u7231","\u5de6","\u7ae0","\u65e9","\u671d","\u5bb3","\u7eed","\u8f7b","\u670d","\u8bd5","\u98df","\u5145","\u5175","\u6e90","\u5224","\u62a4","\u53f8","\u8db3","\u67d0","\u7ec3","\u5dee","\u81f4","\u677f","\u7530","\u964d","\u9ed1","\u72af","\u8d1f","\u51fb","\u8303","\u7ee7","\u5174","\u4f3c","\u4f59","\u575a","\u66f2","\u8f93","\u4fee","\u6545","\u57ce","\u592b","\u591f","\u9001","\u7b14","\u8239","\u5360","\u53f3","\u8d22","\u5403","\u5bcc","\u6625","\u804c","\u89c9","\u6c49","\u753b","\u529f","\u5df4","\u8ddf","\u867d","\u6742","\u98de","\u68c0","\u5438","\u52a9","\u5347","\u9633","\u4e92","\u521d","\u521b","\u6297","\u8003","\u6295","\u574f","\u7b56","\u53e4","\u5f84","\u6362","\u672a","\u8dd1","\u7559","\u94a2","\u66fe","\u7aef","\u8d23","\u7ad9","\u7b80","\u8ff0","\u94b1","\u526f","\u5c3d","\u5e1d","\u5c04","\u8349","\u51b2","\u627f","\u72ec","\u4ee4","\u9650","\u963f","\u5ba3","\u73af","\u53cc","\u8bf7","\u8d85","\u5fae","\u8ba9","\u63a7","\u5dde","\u826f","\u8f74","\u627e","\u5426","\u7eaa","\u76ca","\u4f9d","\u4f18","\u9876","\u7840","\u8f7d","\u5012","\u623f","\u7a81","\u5750","\u7c89","\u654c","\u7565","\u5ba2","\u8881","\u51b7","\u80dc","\u7edd","\u6790","\u5757","\u5242","\u6d4b","\u4e1d","\u534f","\u8bc9","\u5ff5","\u9648","\u4ecd","\u7f57","\u76d0","\u53cb","\u6d0b","\u9519","\u82e6","\u591c","\u5211","\u79fb","\u9891","\u9010","\u9760","\u6df7","\u6bcd","\u77ed","\u76ae","\u7ec8","\u805a","\u6c7d","\u6751","\u4e91","\u54ea","\u65e2","\u8ddd","\u536b","\u505c","\u70c8","\u592e","\u5bdf","\u70e7","\u8fc5","\u5883","\u82e5","\u5370","\u6d32","\u523b","\u62ec","\u6fc0","\u5b54","\u641e","\u751a","\u5ba4","\u5f85","\u6838","\u6821","\u6563","\u4fb5","\u5427","\u7532","\u6e38","\u4e45","\u83dc","\u5473","\u65e7","\u6a21","\u6e56","\u8d27","\u635f","\u9884","\u963b","\u6beb","\u666e","\u7a33","\u4e59","\u5988","\u690d","\u606f","\u6269","\u94f6","\u8bed","\u6325","\u9152","\u5b88","\u62ff","\u5e8f","\u7eb8","\u533b","\u7f3a","\u96e8","\u5417","\u9488","\u5218","\u554a","\u6025","\u5531","\u8bef","\u8bad","\u613f","\u5ba1","\u9644","\u83b7","\u8336","\u9c9c","\u7cae","\u65a4","\u5b69","\u8131","\u786b","\u80a5","\u5584","\u9f99","\u6f14","\u7236","\u6e10","\u8840","\u6b22","\u68b0","\u638c","\u6b4c","\u6c99","\u521a","\u653b","\u8c13","\u76fe","\u8ba8","\u665a","\u7c92","\u4e71","\u71c3","\u77db","\u4e4e","\u6740","\u836f","\u5b81","\u9c81","\u8d35","\u949f","\u7164","\u8bfb","\u73ed","\u4f2f","\u9999","\u4ecb","\u8feb","\u53e5","\u4e30","\u57f9","\u63e1","\u5170","\u62c5","\u5f26","\u86cb","\u6c89","\u5047","\u7a7f","\u6267","\u7b54","\u4e50","\u8c01","\u987a","\u70df","\u7f29","\u5f81","\u8138","\u559c","\u677e","\u811a","\u56f0","\u5f02","\u514d","\u80cc","\u661f","\u798f","\u4e70","\u67d3","\u4e95","\u6982","\u6162","\u6015","\u78c1","\u500d","\u7956","\u7687","\u4fc3","\u9759","\u8865","\u8bc4","\u7ffb","\u8089","\u8df5","\u5c3c","\u8863","\u5bbd","\u626c","\u68c9","\u5e0c","\u4f24","\u64cd","\u5782","\u79cb","\u5b9c","\u6c22","\u5957","\u7763","\u632f","\u67b6","\u4eae","\u672b","\u5baa","\u5e86","\u7f16","\u725b","\u89e6","\u6620","\u96f7","\u9500","\u8bd7","\u5ea7","\u5c45","\u6293","\u88c2","\u80de","\u547c","\u5a18","\u666f","\u5a01","\u7eff","\u6676","\u539a","\u76df","\u8861","\u9e21","\u5b59","\u5ef6","\u5371","\u80f6","\u5c4b","\u4e61","\u4e34","\u9646","\u987e","\u6389","\u5440","\u706f","\u5c81","\u63aa","\u675f","\u8010","\u5267","\u7389","\u8d75","\u8df3","\u54e5","\u5b63","\u8bfe","\u51ef","\u80e1","\u989d","\u6b3e","\u7ecd","\u5377","\u9f50","\u4f1f","\u84b8","\u6b96","\u6c38","\u5b97","\u82d7","\u5ddd","\u7089","\u5ca9","\u5f31","\u96f6","\u6768","\u594f","\u6cbf","\u9732","\u6746","\u63a2","\u6ed1","\u9547","\u996d","\u6d53","\u822a","\u6000","\u8d76","\u5e93","\u593a","\u4f0a","\u7075","\u7a0e","\u9014","\u706d","\u8d5b","\u5f52","\u53ec","\u9f13","\u64ad","\u76d8","\u88c1","\u9669","\u5eb7","\u552f","\u5f55","\u83cc","\u7eaf","\u501f","\u7cd6","\u76d6","\u6a2a","\u7b26","\u79c1","\u52aa","\u5802","\u57df","\u67aa","\u6da6","\u5e45","\u54c8","\u7adf","\u719f","\u866b","\u6cfd","\u8111","\u58e4","\u78b3","\u6b27","\u904d","\u4fa7","\u5be8","\u6562","\u5f7b","\u8651","\u659c","\u8584","\u5ead","\u7eb3","\u5f39","\u9972","\u4f38","\u6298","\u9ea6","\u6e7f","\u6697","\u8377","\u74e6","\u585e","\u5e8a","\u7b51","\u6076","\u6237","\u8bbf","\u5854","\u5947","\u900f","\u6881","\u5200","\u65cb","\u8ff9","\u5361","\u6c2f","\u9047","\u4efd","\u6bd2","\u6ce5","\u9000","\u6d17","\u6446","\u7070","\u5f69","\u5356","\u8017","\u590f","\u62e9","\u5fd9","\u94dc","\u732e","\u786c","\u4e88","\u7e41","\u5708","\u96ea","\u51fd","\u4ea6","\u62bd","\u7bc7","\u9635","\u9634","\u4e01","\u5c3a","\u8ffd","\u5806","\u96c4","\u8fce","\u6cdb","\u7238","\u697c","\u907f","\u8c0b","\u5428","\u91ce","\u732a","\u65d7","\u7d2f","\u504f","\u5178","\u9986","\u7d22","\u79e6","\u8102","\u6f6e","\u7237","\u8c46","\u5ffd","\u6258","\u60ca","\u5851","\u9057","\u6108","\u6731","\u66ff","\u7ea4","\u7c97","\u503e","\u5c1a","\u75db","\u695a","\u8c22","\u594b","\u8d2d","\u78e8","\u541b","\u6c60","\u65c1","\u788e","\u9aa8","\u76d1","\u6355","\u5f1f","\u66b4","\u5272","\u8d2f","\u6b8a","\u91ca","\u8bcd","\u4ea1","\u58c1","\u987f","\u5b9d","\u5348","\u5c18","\u95fb","\u63ed","\u70ae","\u6b8b","\u51ac","\u6865","\u5987","\u8b66","\u7efc","\u62db","\u5434","\u4ed8","\u6d6e","\u906d","\u5f90","\u60a8","\u6447","\u8c37","\u8d5e","\u7bb1","\u9694","\u8ba2","\u7537","\u5439","\u56ed","\u7eb7","\u5510","\u8d25","\u5b8b","\u73bb","\u5de8","\u8015","\u5766","\u8363","\u95ed","\u6e7e","\u952e","\u51e1","\u9a7b","\u9505","\u6551","\u6069","\u5265","\u51dd","\u78b1","\u9f7f","\u622a","\u70bc","\u9ebb","\u7eba","\u7981","\u5e9f","\u76db","\u7248","\u7f13","\u51c0","\u775b","\u660c","\u5a5a","\u6d89","\u7b52","\u5634","\u63d2","\u5cb8","\u6717","\u5e84","\u8857","\u85cf","\u59d1","\u8d38","\u8150","\u5974","\u5566","\u60ef","\u4e58","\u4f19","\u6062","\u5300","\u7eb1","\u624e","\u8fa9","\u8033","\u5f6a","\u81e3","\u4ebf","\u7483","\u62b5","\u8109","\u79c0","\u8428","\u4fc4","\u7f51","\u821e","\u5e97","\u55b7","\u7eb5","\u5bf8","\u6c57","\u6302","\u6d2a","\u8d3a","\u95ea","\u67ec","\u7206","\u70ef","\u6d25","\u7a3b","\u5899","\u8f6f","\u52c7","\u50cf","\u6eda","\u5398","\u8499","\u82b3","\u80af","\u5761","\u67f1","\u8361","\u817f","\u4eea","\u65c5","\u5c3e","\u8f67","\u51b0","\u8d21","\u767b","\u9ece","\u524a","\u94bb","\u52d2","\u9003","\u969c","\u6c28","\u90ed","\u5cf0","\u5e01","\u6e2f","\u4f0f","\u8f68","\u4ea9","\u6bd5","\u64e6","\u83ab","\u523a","\u6d6a","\u79d8","\u63f4","\u682a","\u5065","\u552e","\u80a1","\u5c9b","\u7518","\u6ce1","\u7761","\u7ae5","\u94f8","\u6c64","\u9600","\u4f11","\u6c47","\u820d","\u7267","\u7ed5","\u70b8","\u54f2","\u78f7","\u7ee9","\u670b","\u6de1","\u5c16","\u542f","\u9677","\u67f4","\u5448","\u5f92","\u989c","\u6cea","\u7a0d","\u5fd8","\u6cf5","\u84dd","\u62d6","\u6d1e","\u6388","\u955c","\u8f9b","\u58ee","\u950b","\u8d2b","\u865a","\u5f2f","\u6469","\u6cf0","\u5e7c","\u5ef7","\u5c0a","\u7a97","\u7eb2","\u5f04","\u96b6","\u7591","\u6c0f","\u5bab","\u59d0","\u9707","\u745e","\u602a","\u5c24","\u7434","\u5faa","\u63cf","\u819c","\u8fdd","\u5939","\u8170","\u7f18","\u73e0","\u7a77","\u68ee","\u679d","\u7af9","\u6c9f","\u50ac","\u7ef3","\u5fc6","\u90a6","\u5269","\u5e78","\u6d46","\u680f","\u62e5","\u7259","\u8d2e","\u793c","\u6ee4","\u94a0","\u7eb9","\u7f62","\u62cd","\u54b1","\u558a","\u8896","\u57c3","\u52e4","\u7f5a","\u7126","\u6f5c","\u4f0d","\u58a8","\u6b32","\u7f1d","\u59d3","\u520a","\u9971","\u4eff","\u5956","\u94dd","\u9b3c","\u4e3d","\u8de8","\u9ed8","\u6316","\u94fe","\u626b","\u559d","\u888b","\u70ad","\u6c61","\u5e55","\u8bf8","\u5f27","\u52b1","\u6885","\u5976","\u6d01","\u707e","\u821f","\u9274","\u82ef","\u8bbc","\u62b1","\u6bc1","\u61c2","\u5bd2","\u667a","\u57d4","\u5bc4","\u5c4a","\u8dc3","\u6e21","\u6311","\u4e39","\u8270","\u8d1d","\u78b0","\u62d4","\u7239","\u6234","\u7801","\u68a6","\u82bd","\u7194","\u8d64","\u6e14","\u54ed","\u656c","\u9897","\u5954","\u94c5","\u4ef2","\u864e","\u7a00","\u59b9","\u4e4f","\u73cd","\u7533","\u684c","\u9075","\u5141","\u9686","\u87ba","\u4ed3","\u9b4f","\u9510","\u6653","\u6c2e","\u517c","\u9690","\u788d","\u8d6b","\u62e8","\u5fe0","\u8083","\u7f38","\u7275","\u62a2","\u535a","\u5de7","\u58f3","\u5144","\u675c","\u8baf","\u8bda","\u78a7","\u7965","\u67ef","\u9875","\u5de1","\u77e9","\u60b2","\u704c","\u9f84","\u4f26","\u7968","\u5bfb","\u6842","\u94fa","\u5723","\u6050","\u6070","\u90d1","\u8da3","\u62ac","\u8352","\u817e","\u8d34","\u67d4","\u6ef4","\u731b","\u9614","\u8f86","\u59bb","\u586b","\u64a4","\u50a8","\u7b7e","\u95f9","\u6270","\u7d2b","\u7802","\u9012","\u620f","\u540a","\u9676","\u4f10","\u5582","\u7597","\u74f6","\u5a46","\u629a","\u81c2","\u6478","\u5fcd","\u867e","\u8721","\u90bb","\u80f8","\u5de9","\u6324","\u5076","\u5f03","\u69fd","\u52b2","\u4e73","\u9093","\u5409","\u4ec1","\u70c2","\u7816","\u79df","\u4e4c","\u8230","\u4f34","\u74dc","\u6d45","\u4e19","\u6682","\u71e5","\u6a61","\u67f3","\u8ff7","\u6696","\u724c","\u79e7","\u80c6","\u8be6","\u7c27","\u8e0f","\u74f7","\u8c31","\u5446","\u5bbe","\u7cca","\u6d1b","\u8f89","\u6124","\u7ade","\u9699","\u6012","\u7c98","\u4e43","\u7eea","\u80a9","\u7c4d","\u654f","\u6d82","\u7199","\u7686","\u4fa6","\u60ac","\u6398","\u4eab","\u7ea0","\u9192","\u72c2","\u9501","\u6dc0","\u6068","\u7272","\u9738","\u722c","\u8d4f","\u9006","\u73a9","\u9675","\u795d","\u79d2","\u6d59","\u8c8c","\u5f79","\u5f7c","\u6089","\u9e2d","\u8d8b","\u51e4","\u6668","\u755c","\u8f88","\u79e9","\u5375","\u7f72","\u68af","\u708e","\u6ee9","\u68cb","\u9a71","\u7b5b","\u5ce1","\u5192","\u5565","\u5bff","\u8bd1","\u6d78","\u6cc9","\u5e3d","\u8fdf","\u7845","\u7586","\u8d37","\u6f0f","\u7a3f","\u51a0","\u5ae9","\u80c1","\u82af","\u7262","\u53db","\u8680","\u5965","\u9e23","\u5cad","\u7f8a","\u51ed","\u4e32","\u5858","\u7ed8","\u9175","\u878d","\u76c6","\u9521","\u5e99","\u7b79","\u51bb","\u8f85","\u6444","\u88ad","\u7b4b","\u62d2","\u50da","\u65f1","\u94be","\u9e1f","\u6f06","\u6c88","\u7709","\u758f","\u6dfb","\u68d2","\u7a57","\u785d","\u97e9","\u903c","\u626d","\u4fa8","\u51c9","\u633a","\u7897","\u683d","\u7092","\u676f","\u60a3","\u998f","\u529d","\u8c6a","\u8fbd","\u52c3","\u9e3f","\u65e6","\u540f","\u62dc","\u72d7","\u57cb","\u8f8a","\u63a9","\u996e","\u642c","\u9a82","\u8f9e","\u52fe","\u6263","\u4f30","\u848b","\u7ed2","\u96fe","\u4e08","\u6735","\u59c6","\u62df","\u5b87","\u8f91","\u9655","\u96d5","\u507f","\u84c4","\u5d07","\u526a","\u5021","\u5385","\u54ac","\u9a76","\u85af","\u5237","\u65a5","\u756a","\u8d4b","\u5949","\u4f5b","\u6d47","\u6f2b","\u66fc","\u6247","\u9499","\u6843","\u6276","\u4ed4","\u8fd4","\u4fd7","\u4e8f","\u8154","\u978b","\u68f1","\u8986","\u6846","\u6084","\u53d4","\u649e","\u9a97","\u52d8","\u65fa","\u6cb8","\u5b64","\u5410","\u5b5f","\u6e20","\u5c48","\u75be","\u5999","\u60dc","\u4ef0","\u72e0","\u80c0","\u8c10","\u629b","\u9709","\u6851","\u5c97","\u561b","\u8870","\u76d7","\u6e17","\u810f","\u8d56","\u6d8c","\u751c","\u66f9","\u9605","\u808c","\u54e9","\u5389","\u70c3","\u7eac","\u6bc5","\u6628","\u4f2a","\u75c7","\u716e","\u53f9","\u9489","\u642d","\u830e","\u7b3c","\u9177","\u5077","\u5f13","\u9525","\u6052","\u6770","\u5751","\u9f3b","\u7ffc","\u7eb6","\u53d9","\u72f1","\u902e","\u7f50","\u7edc","\u68da","\u6291","\u81a8","\u852c","\u5bfa","\u9aa4","\u7a46","\u51b6","\u67af","\u518c","\u5c38","\u51f8","\u7ec5","\u576f","\u727a","\u7130","\u8f70","\u6b23","\u664b","\u7626","\u5fa1","\u952d","\u9526","\u4e27","\u65ec","\u953b","\u5784","\u641c","\u6251","\u9080","\u4ead","\u916f","\u8fc8","\u8212","\u8106","\u9176","\u95f2","\u5fe7","\u915a","\u987d","\u7fbd","\u6da8","\u5378","\u4ed7","\u966a","\u8f9f","\u60e9","\u676d","\u59da","\u809a","\u6349","\u98d8","\u6f02","\u6606","\u6b3a","\u543e","\u90ce","\u70f7","\u6c41","\u5475","\u9970","\u8427","\u96c5","\u90ae","\u8fc1","\u71d5","\u6492","\u59fb","\u8d74","\u5bb4","\u70e6","\u503a","\u5e10","\u6591","\u94c3","\u65e8","\u9187","\u8463","\u997c","\u96cf","\u59ff","\u62cc","\u5085","\u8179","\u59a5","\u63c9","\u8d24","\u62c6","\u6b6a","\u8461","\u80fa","\u4e22","\u6d69","\u5fbd","\u6602","\u57ab","\u6321","\u89c8","\u8d2a","\u6170","\u7f34","\u6c6a","\u614c","\u51af","\u8bfa","\u59dc","\u8c0a","\u51f6","\u52a3","\u8bec","\u8000","\u660f","\u8eba","\u76c8","\u9a91","\u4e54","\u6eaa","\u4e1b","\u5362","\u62b9","\u95f7","\u54a8","\u522e","\u9a7e","\u7f06","\u609f","\u6458","\u94d2","\u63b7","\u9887","\u5e7b","\u67c4","\u60e0","\u60e8","\u4f73","\u4ec7","\u814a","\u7a9d","\u6da4","\u5251","\u77a7","\u5821","\u6cfc","\u8471","\u7f69","\u970d","\u635e","\u80ce","\u82cd","\u6ee8","\u4fe9","\u6345","\u6e58","\u780d","\u971e","\u90b5","\u8404","\u75af","\u6dee","\u9042","\u718a","\u7caa","\u70d8","\u5bbf","\u6863","\u6208","\u9a73","\u5ac2","\u88d5","\u5f99","\u7bad","\u6350","\u80a0","\u6491","\u6652","\u8fa8","\u6bbf","\u83b2","\u644a","\u6405","\u9171","\u5c4f","\u75ab","\u54c0","\u8521","\u5835","\u6cab","\u76b1","\u7545","\u53e0","\u9601","\u83b1","\u6572","\u8f96","\u94a9","\u75d5","\u575d","\u5df7","\u997f","\u7978","\u4e18","\u7384","\u6e9c","\u66f0","\u903b","\u5f6d","\u5c1d","\u537f","\u59a8","\u8247","\u541e","\u97e6","\u6028","\u77ee","\u6b47"]')},4262:e=>{"use strict";e.exports=JSON.parse('["\u7684","\u4e00","\u662f","\u5728","\u4e0d","\u4e86","\u6709","\u548c","\u4eba","\u9019","\u4e2d","\u5927","\u70ba","\u4e0a","\u500b","\u570b","\u6211","\u4ee5","\u8981","\u4ed6","\u6642","\u4f86","\u7528","\u5011","\u751f","\u5230","\u4f5c","\u5730","\u65bc","\u51fa","\u5c31","\u5206","\u5c0d","\u6210","\u6703","\u53ef","\u4e3b","\u767c","\u5e74","\u52d5","\u540c","\u5de5","\u4e5f","\u80fd","\u4e0b","\u904e","\u5b50","\u8aaa","\u7522","\u7a2e","\u9762","\u800c","\u65b9","\u5f8c","\u591a","\u5b9a","\u884c","\u5b78","\u6cd5","\u6240","\u6c11","\u5f97","\u7d93","\u5341","\u4e09","\u4e4b","\u9032","\u8457","\u7b49","\u90e8","\u5ea6","\u5bb6","\u96fb","\u529b","\u88e1","\u5982","\u6c34","\u5316","\u9ad8","\u81ea","\u4e8c","\u7406","\u8d77","\u5c0f","\u7269","\u73fe","\u5be6","\u52a0","\u91cf","\u90fd","\u5169","\u9ad4","\u5236","\u6a5f","\u7576","\u4f7f","\u9ede","\u5f9e","\u696d","\u672c","\u53bb","\u628a","\u6027","\u597d","\u61c9","\u958b","\u5b83","\u5408","\u9084","\u56e0","\u7531","\u5176","\u4e9b","\u7136","\u524d","\u5916","\u5929","\u653f","\u56db","\u65e5","\u90a3","\u793e","\u7fa9","\u4e8b","\u5e73","\u5f62","\u76f8","\u5168","\u8868","\u9593","\u6a23","\u8207","\u95dc","\u5404","\u91cd","\u65b0","\u7dda","\u5167","\u6578","\u6b63","\u5fc3","\u53cd","\u4f60","\u660e","\u770b","\u539f","\u53c8","\u9ebc","\u5229","\u6bd4","\u6216","\u4f46","\u8cea","\u6c23","\u7b2c","\u5411","\u9053","\u547d","\u6b64","\u8b8a","\u689d","\u53ea","\u6c92","\u7d50","\u89e3","\u554f","\u610f","\u5efa","\u6708","\u516c","\u7121","\u7cfb","\u8ecd","\u5f88","\u60c5","\u8005","\u6700","\u7acb","\u4ee3","\u60f3","\u5df2","\u901a","\u4e26","\u63d0","\u76f4","\u984c","\u9ee8","\u7a0b","\u5c55","\u4e94","\u679c","\u6599","\u8c61","\u54e1","\u9769","\u4f4d","\u5165","\u5e38","\u6587","\u7e3d","\u6b21","\u54c1","\u5f0f","\u6d3b","\u8a2d","\u53ca","\u7ba1","\u7279","\u4ef6","\u9577","\u6c42","\u8001","\u982d","\u57fa","\u8cc7","\u908a","\u6d41","\u8def","\u7d1a","\u5c11","\u5716","\u5c71","\u7d71","\u63a5","\u77e5","\u8f03","\u5c07","\u7d44","\u898b","\u8a08","\u5225","\u5979","\u624b","\u89d2","\u671f","\u6839","\u8ad6","\u904b","\u8fb2","\u6307","\u5e7e","\u4e5d","\u5340","\u5f37","\u653e","\u6c7a","\u897f","\u88ab","\u5e79","\u505a","\u5fc5","\u6230","\u5148","\u56de","\u5247","\u4efb","\u53d6","\u64da","\u8655","\u968a","\u5357","\u7d66","\u8272","\u5149","\u9580","\u5373","\u4fdd","\u6cbb","\u5317","\u9020","\u767e","\u898f","\u71b1","\u9818","\u4e03","\u6d77","\u53e3","\u6771","\u5c0e","\u5668","\u58d3","\u5fd7","\u4e16","\u91d1","\u589e","\u722d","\u6fdf","\u968e","\u6cb9","\u601d","\u8853","\u6975","\u4ea4","\u53d7","\u806f","\u4ec0","\u8a8d","\u516d","\u5171","\u6b0a","\u6536","\u8b49","\u6539","\u6e05","\u7f8e","\u518d","\u63a1","\u8f49","\u66f4","\u55ae","\u98a8","\u5207","\u6253","\u767d","\u6559","\u901f","\u82b1","\u5e36","\u5b89","\u5834","\u8eab","\u8eca","\u4f8b","\u771f","\u52d9","\u5177","\u842c","\u6bcf","\u76ee","\u81f3","\u9054","\u8d70","\u7a4d","\u793a","\u8b70","\u8072","\u5831","\u9b25","\u5b8c","\u985e","\u516b","\u96e2","\u83ef","\u540d","\u78ba","\u624d","\u79d1","\u5f35","\u4fe1","\u99ac","\u7bc0","\u8a71","\u7c73","\u6574","\u7a7a","\u5143","\u6cc1","\u4eca","\u96c6","\u6eab","\u50b3","\u571f","\u8a31","\u6b65","\u7fa4","\u5ee3","\u77f3","\u8a18","\u9700","\u6bb5","\u7814","\u754c","\u62c9","\u6797","\u5f8b","\u53eb","\u4e14","\u7a76","\u89c0","\u8d8a","\u7e54","\u88dd","\u5f71","\u7b97","\u4f4e","\u6301","\u97f3","\u773e","\u66f8","\u5e03","\u590d","\u5bb9","\u5152","\u9808","\u969b","\u5546","\u975e","\u9a57","\u9023","\u65b7","\u6df1","\u96e3","\u8fd1","\u7926","\u5343","\u9031","\u59d4","\u7d20","\u6280","\u5099","\u534a","\u8fa6","\u9752","\u7701","\u5217","\u7fd2","\u97ff","\u7d04","\u652f","\u822c","\u53f2","\u611f","\u52de","\u4fbf","\u5718","\u5f80","\u9178","\u6b77","\u5e02","\u514b","\u4f55","\u9664","\u6d88","\u69cb","\u5e9c","\u7a31","\u592a","\u6e96","\u7cbe","\u503c","\u865f","\u7387","\u65cf","\u7dad","\u5283","\u9078","\u6a19","\u5beb","\u5b58","\u5019","\u6bdb","\u89aa","\u5feb","\u6548","\u65af","\u9662","\u67e5","\u6c5f","\u578b","\u773c","\u738b","\u6309","\u683c","\u990a","\u6613","\u7f6e","\u6d3e","\u5c64","\u7247","\u59cb","\u537b","\u5c08","\u72c0","\u80b2","\u5ee0","\u4eac","\u8b58","\u9069","\u5c6c","\u5713","\u5305","\u706b","\u4f4f","\u8abf","\u6eff","\u7e23","\u5c40","\u7167","\u53c3","\u7d05","\u7d30","\u5f15","\u807d","\u8a72","\u9435","\u50f9","\u56b4","\u9996","\u5e95","\u6db2","\u5b98","\u5fb7","\u96a8","\u75c5","\u8607","\u5931","\u723e","\u6b7b","\u8b1b","\u914d","\u5973","\u9ec3","\u63a8","\u986f","\u8ac7","\u7f6a","\u795e","\u85dd","\u5462","\u5e2d","\u542b","\u4f01","\u671b","\u5bc6","\u6279","\u71df","\u9805","\u9632","\u8209","\u7403","\u82f1","\u6c27","\u52e2","\u544a","\u674e","\u53f0","\u843d","\u6728","\u5e6b","\u8f2a","\u7834","\u4e9e","\u5e2b","\u570d","\u6ce8","\u9060","\u5b57","\u6750","\u6392","\u4f9b","\u6cb3","\u614b","\u5c01","\u53e6","\u65bd","\u6e1b","\u6a39","\u6eb6","\u600e","\u6b62","\u6848","\u8a00","\u58eb","\u5747","\u6b66","\u56fa","\u8449","\u9b5a","\u6ce2","\u8996","\u50c5","\u8cbb","\u7dca","\u611b","\u5de6","\u7ae0","\u65e9","\u671d","\u5bb3","\u7e8c","\u8f15","\u670d","\u8a66","\u98df","\u5145","\u5175","\u6e90","\u5224","\u8b77","\u53f8","\u8db3","\u67d0","\u7df4","\u5dee","\u81f4","\u677f","\u7530","\u964d","\u9ed1","\u72af","\u8ca0","\u64ca","\u8303","\u7e7c","\u8208","\u4f3c","\u9918","\u5805","\u66f2","\u8f38","\u4fee","\u6545","\u57ce","\u592b","\u5920","\u9001","\u7b46","\u8239","\u4f54","\u53f3","\u8ca1","\u5403","\u5bcc","\u6625","\u8077","\u89ba","\u6f22","\u756b","\u529f","\u5df4","\u8ddf","\u96d6","\u96dc","\u98db","\u6aa2","\u5438","\u52a9","\u6607","\u967d","\u4e92","\u521d","\u5275","\u6297","\u8003","\u6295","\u58de","\u7b56","\u53e4","\u5f91","\u63db","\u672a","\u8dd1","\u7559","\u92fc","\u66fe","\u7aef","\u8cac","\u7ad9","\u7c21","\u8ff0","\u9322","\u526f","\u76e1","\u5e1d","\u5c04","\u8349","\u885d","\u627f","\u7368","\u4ee4","\u9650","\u963f","\u5ba3","\u74b0","\u96d9","\u8acb","\u8d85","\u5fae","\u8b93","\u63a7","\u5dde","\u826f","\u8ef8","\u627e","\u5426","\u7d00","\u76ca","\u4f9d","\u512a","\u9802","\u790e","\u8f09","\u5012","\u623f","\u7a81","\u5750","\u7c89","\u6575","\u7565","\u5ba2","\u8881","\u51b7","\u52dd","\u7d55","\u6790","\u584a","\u5291","\u6e2c","\u7d72","\u5354","\u8a34","\u5ff5","\u9673","\u4ecd","\u7f85","\u9e7d","\u53cb","\u6d0b","\u932f","\u82e6","\u591c","\u5211","\u79fb","\u983b","\u9010","\u9760","\u6df7","\u6bcd","\u77ed","\u76ae","\u7d42","\u805a","\u6c7d","\u6751","\u96f2","\u54ea","\u65e2","\u8ddd","\u885b","\u505c","\u70c8","\u592e","\u5bdf","\u71d2","\u8fc5","\u5883","\u82e5","\u5370","\u6d32","\u523b","\u62ec","\u6fc0","\u5b54","\u641e","\u751a","\u5ba4","\u5f85","\u6838","\u6821","\u6563","\u4fb5","\u5427","\u7532","\u904a","\u4e45","\u83dc","\u5473","\u820a","\u6a21","\u6e56","\u8ca8","\u640d","\u9810","\u963b","\u6beb","\u666e","\u7a69","\u4e59","\u5abd","\u690d","\u606f","\u64f4","\u9280","\u8a9e","\u63ee","\u9152","\u5b88","\u62ff","\u5e8f","\u7d19","\u91ab","\u7f3a","\u96e8","\u55ce","\u91dd","\u5289","\u554a","\u6025","\u5531","\u8aa4","\u8a13","\u9858","\u5be9","\u9644","\u7372","\u8336","\u9bae","\u7ce7","\u65a4","\u5b69","\u812b","\u786b","\u80a5","\u5584","\u9f8d","\u6f14","\u7236","\u6f38","\u8840","\u6b61","\u68b0","\u638c","\u6b4c","\u6c99","\u525b","\u653b","\u8b02","\u76fe","\u8a0e","\u665a","\u7c92","\u4e82","\u71c3","\u77db","\u4e4e","\u6bba","\u85e5","\u5be7","\u9b6f","\u8cb4","\u9418","\u7164","\u8b80","\u73ed","\u4f2f","\u9999","\u4ecb","\u8feb","\u53e5","\u8c50","\u57f9","\u63e1","\u862d","\u64d4","\u5f26","\u86cb","\u6c89","\u5047","\u7a7f","\u57f7","\u7b54","\u6a02","\u8ab0","\u9806","\u7159","\u7e2e","\u5fb5","\u81c9","\u559c","\u677e","\u8173","\u56f0","\u7570","\u514d","\u80cc","\u661f","\u798f","\u8cb7","\u67d3","\u4e95","\u6982","\u6162","\u6015","\u78c1","\u500d","\u7956","\u7687","\u4fc3","\u975c","\u88dc","\u8a55","\u7ffb","\u8089","\u8e10","\u5c3c","\u8863","\u5bec","\u63da","\u68c9","\u5e0c","\u50b7","\u64cd","\u5782","\u79cb","\u5b9c","\u6c2b","\u5957","\u7763","\u632f","\u67b6","\u4eae","\u672b","\u61b2","\u6176","\u7de8","\u725b","\u89f8","\u6620","\u96f7","\u92b7","\u8a69","\u5ea7","\u5c45","\u6293","\u88c2","\u80de","\u547c","\u5a18","\u666f","\u5a01","\u7da0","\u6676","\u539a","\u76df","\u8861","\u96de","\u5b6b","\u5ef6","\u5371","\u81a0","\u5c4b","\u9109","\u81e8","\u9678","\u9867","\u6389","\u5440","\u71c8","\u6b72","\u63aa","\u675f","\u8010","\u5287","\u7389","\u8d99","\u8df3","\u54e5","\u5b63","\u8ab2","\u51f1","\u80e1","\u984d","\u6b3e","\u7d39","\u5377","\u9f4a","\u5049","\u84b8","\u6b96","\u6c38","\u5b97","\u82d7","\u5ddd","\u7210","\u5ca9","\u5f31","\u96f6","\u694a","\u594f","\u6cbf","\u9732","\u687f","\u63a2","\u6ed1","\u93ae","\u98ef","\u6fc3","\u822a","\u61f7","\u8d95","\u5eab","\u596a","\u4f0a","\u9748","\u7a05","\u9014","\u6ec5","\u8cfd","\u6b78","\u53ec","\u9f13","\u64ad","\u76e4","\u88c1","\u96aa","\u5eb7","\u552f","\u9304","\u83cc","\u7d14","\u501f","\u7cd6","\u84cb","\u6a6b","\u7b26","\u79c1","\u52aa","\u5802","\u57df","\u69cd","\u6f64","\u5e45","\u54c8","\u7adf","\u719f","\u87f2","\u6fa4","\u8166","\u58e4","\u78b3","\u6b50","\u904d","\u5074","\u5be8","\u6562","\u5fb9","\u616e","\u659c","\u8584","\u5ead","\u7d0d","\u5f48","\u98fc","\u4f38","\u6298","\u9ea5","\u6fd5","\u6697","\u8377","\u74e6","\u585e","\u5e8a","\u7bc9","\u60e1","\u6236","\u8a2a","\u5854","\u5947","\u900f","\u6881","\u5200","\u65cb","\u8de1","\u5361","\u6c2f","\u9047","\u4efd","\u6bd2","\u6ce5","\u9000","\u6d17","\u64fa","\u7070","\u5f69","\u8ce3","\u8017","\u590f","\u64c7","\u5fd9","\u9285","\u737b","\u786c","\u4e88","\u7e41","\u5708","\u96ea","\u51fd","\u4ea6","\u62bd","\u7bc7","\u9663","\u9670","\u4e01","\u5c3a","\u8ffd","\u5806","\u96c4","\u8fce","\u6cdb","\u7238","\u6a13","\u907f","\u8b00","\u5678","\u91ce","\u8c6c","\u65d7","\u7d2f","\u504f","\u5178","\u9928","\u7d22","\u79e6","\u8102","\u6f6e","\u723a","\u8c46","\u5ffd","\u6258","\u9a5a","\u5851","\u907a","\u6108","\u6731","\u66ff","\u7e96","\u7c97","\u50be","\u5c1a","\u75db","\u695a","\u8b1d","\u596e","\u8cfc","\u78e8","\u541b","\u6c60","\u65c1","\u788e","\u9aa8","\u76e3","\u6355","\u5f1f","\u66b4","\u5272","\u8cab","\u6b8a","\u91cb","\u8a5e","\u4ea1","\u58c1","\u9813","\u5bf6","\u5348","\u5875","\u805e","\u63ed","\u70ae","\u6b98","\u51ac","\u6a4b","\u5a66","\u8b66","\u7d9c","\u62db","\u5433","\u4ed8","\u6d6e","\u906d","\u5f90","\u60a8","\u6416","\u8c37","\u8d0a","\u7bb1","\u9694","\u8a02","\u7537","\u5439","\u5712","\u7d1b","\u5510","\u6557","\u5b8b","\u73bb","\u5de8","\u8015","\u5766","\u69ae","\u9589","\u7063","\u9375","\u51e1","\u99d0","\u934b","\u6551","\u6069","\u525d","\u51dd","\u9e7c","\u9f52","\u622a","\u7149","\u9ebb","\u7d21","\u7981","\u5ee2","\u76db","\u7248","\u7de9","\u6de8","\u775b","\u660c","\u5a5a","\u6d89","\u7b52","\u5634","\u63d2","\u5cb8","\u6717","\u838a","\u8857","\u85cf","\u59d1","\u8cbf","\u8150","\u5974","\u5566","\u6163","\u4e58","\u5925","\u6062","\u52fb","\u7d17","\u624e","\u8faf","\u8033","\u5f6a","\u81e3","\u5104","\u7483","\u62b5","\u8108","\u79c0","\u85a9","\u4fc4","\u7db2","\u821e","\u5e97","\u5674","\u7e31","\u5bf8","\u6c57","\u639b","\u6d2a","\u8cc0","\u9583","\u67ec","\u7206","\u70ef","\u6d25","\u7a3b","\u7246","\u8edf","\u52c7","\u50cf","\u6efe","\u5398","\u8499","\u82b3","\u80af","\u5761","\u67f1","\u76ea","\u817f","\u5100","\u65c5","\u5c3e","\u8ecb","\u51b0","\u8ca2","\u767b","\u9ece","\u524a","\u947d","\u52d2","\u9003","\u969c","\u6c28","\u90ed","\u5cf0","\u5e63","\u6e2f","\u4f0f","\u8ecc","\u755d","\u7562","\u64e6","\u83ab","\u523a","\u6d6a","\u79d8","\u63f4","\u682a","\u5065","\u552e","\u80a1","\u5cf6","\u7518","\u6ce1","\u7761","\u7ae5","\u9444","\u6e6f","\u95a5","\u4f11","\u532f","\u820d","\u7267","\u7e5e","\u70b8","\u54f2","\u78f7","\u7e3e","\u670b","\u6de1","\u5c16","\u555f","\u9677","\u67f4","\u5448","\u5f92","\u984f","\u6dda","\u7a0d","\u5fd8","\u6cf5","\u85cd","\u62d6","\u6d1e","\u6388","\u93e1","\u8f9b","\u58ef","\u92d2","\u8ca7","\u865b","\u5f4e","\u6469","\u6cf0","\u5e7c","\u5ef7","\u5c0a","\u7a97","\u7db1","\u5f04","\u96b8","\u7591","\u6c0f","\u5bae","\u59d0","\u9707","\u745e","\u602a","\u5c24","\u7434","\u5faa","\u63cf","\u819c","\u9055","\u593e","\u8170","\u7de3","\u73e0","\u7aae","\u68ee","\u679d","\u7af9","\u6e9d","\u50ac","\u7e69","\u61b6","\u90a6","\u5269","\u5e78","\u6f3f","\u6b04","\u64c1","\u7259","\u8caf","\u79ae","\u6ffe","\u9209","\u7d0b","\u7f77","\u62cd","\u54b1","\u558a","\u8896","\u57c3","\u52e4","\u7f70","\u7126","\u6f5b","\u4f0d","\u58a8","\u6b32","\u7e2b","\u59d3","\u520a","\u98fd","\u4eff","\u734e","\u92c1","\u9b3c","\u9e97","\u8de8","\u9ed8","\u6316","\u93c8","\u6383","\u559d","\u888b","\u70ad","\u6c61","\u5e55","\u8af8","\u5f27","\u52f5","\u6885","\u5976","\u6f54","\u707d","\u821f","\u9451","\u82ef","\u8a1f","\u62b1","\u6bc0","\u61c2","\u5bd2","\u667a","\u57d4","\u5bc4","\u5c46","\u8e8d","\u6e21","\u6311","\u4e39","\u8271","\u8c9d","\u78b0","\u62d4","\u7239","\u6234","\u78bc","\u5922","\u82bd","\u7194","\u8d64","\u6f01","\u54ed","\u656c","\u9846","\u5954","\u925b","\u4ef2","\u864e","\u7a00","\u59b9","\u4e4f","\u73cd","\u7533","\u684c","\u9075","\u5141","\u9686","\u87ba","\u5009","\u9b4f","\u92b3","\u66c9","\u6c2e","\u517c","\u96b1","\u7919","\u8d6b","\u64a5","\u5fe0","\u8085","\u7f38","\u727d","\u6436","\u535a","\u5de7","\u6bbc","\u5144","\u675c","\u8a0a","\u8aa0","\u78a7","\u7965","\u67ef","\u9801","\u5de1","\u77e9","\u60b2","\u704c","\u9f61","\u502b","\u7968","\u5c0b","\u6842","\u92ea","\u8056","\u6050","\u6070","\u912d","\u8da3","\u62ac","\u8352","\u9a30","\u8cbc","\u67d4","\u6ef4","\u731b","\u95ca","\u8f1b","\u59bb","\u586b","\u64a4","\u5132","\u7c3d","\u9b27","\u64fe","\u7d2b","\u7802","\u905e","\u6232","\u540a","\u9676","\u4f10","\u9935","\u7642","\u74f6","\u5a46","\u64ab","\u81c2","\u6478","\u5fcd","\u8766","\u881f","\u9130","\u80f8","\u978f","\u64e0","\u5076","\u68c4","\u69fd","\u52c1","\u4e73","\u9127","\u5409","\u4ec1","\u721b","\u78da","\u79df","\u70cf","\u8266","\u4f34","\u74dc","\u6dfa","\u4e19","\u66ab","\u71e5","\u6a61","\u67f3","\u8ff7","\u6696","\u724c","\u79e7","\u81bd","\u8a73","\u7c27","\u8e0f","\u74f7","\u8b5c","\u5446","\u8cd3","\u7cca","\u6d1b","\u8f1d","\u61a4","\u7af6","\u9699","\u6012","\u7c98","\u4e43","\u7dd2","\u80a9","\u7c4d","\u654f","\u5857","\u7199","\u7686","\u5075","\u61f8","\u6398","\u4eab","\u7cfe","\u9192","\u72c2","\u9396","\u6dc0","\u6068","\u7272","\u9738","\u722c","\u8cde","\u9006","\u73a9","\u9675","\u795d","\u79d2","\u6d59","\u8c8c","\u5f79","\u5f7c","\u6089","\u9d28","\u8da8","\u9cf3","\u6668","\u755c","\u8f29","\u79e9","\u5375","\u7f72","\u68af","\u708e","\u7058","\u68cb","\u9a45","\u7be9","\u5cfd","\u5192","\u5565","\u58fd","\u8b6f","\u6d78","\u6cc9","\u5e3d","\u9072","\u77fd","\u7586","\u8cb8","\u6f0f","\u7a3f","\u51a0","\u5ae9","\u8105","\u82af","\u7262","\u53db","\u8755","\u5967","\u9cf4","\u5dba","\u7f8a","\u6191","\u4e32","\u5858","\u7e6a","\u9175","\u878d","\u76c6","\u932b","\u5edf","\u7c4c","\u51cd","\u8f14","\u651d","\u8972","\u7b4b","\u62d2","\u50da","\u65f1","\u9240","\u9ce5","\u6f06","\u6c88","\u7709","\u758f","\u6dfb","\u68d2","\u7a57","\u785d","\u97d3","\u903c","\u626d","\u50d1","\u6dbc","\u633a","\u7897","\u683d","\u7092","\u676f","\u60a3","\u993e","\u52f8","\u8c6a","\u907c","\u52c3","\u9d3b","\u65e6","\u540f","\u62dc","\u72d7","\u57cb","\u8f25","\u63a9","\u98f2","\u642c","\u7f75","\u8fad","\u52fe","\u6263","\u4f30","\u8523","\u7d68","\u9727","\u4e08","\u6735","\u59c6","\u64ec","\u5b87","\u8f2f","\u965d","\u96d5","\u511f","\u84c4","\u5d07","\u526a","\u5021","\u5ef3","\u54ac","\u99db","\u85af","\u5237","\u65a5","\u756a","\u8ce6","\u5949","\u4f5b","\u6f86","\u6f2b","\u66fc","\u6247","\u9223","\u6843","\u6276","\u4ed4","\u8fd4","\u4fd7","\u8667","\u8154","\u978b","\u68f1","\u8986","\u6846","\u6084","\u53d4","\u649e","\u9a19","\u52d8","\u65fa","\u6cb8","\u5b64","\u5410","\u5b5f","\u6e20","\u5c48","\u75be","\u5999","\u60dc","\u4ef0","\u72e0","\u8139","\u8ae7","\u62cb","\u9ef4","\u6851","\u5d17","\u561b","\u8870","\u76dc","\u6ef2","\u81df","\u8cf4","\u6e67","\u751c","\u66f9","\u95b1","\u808c","\u54e9","\u53b2","\u70f4","\u7def","\u6bc5","\u6628","\u507d","\u75c7","\u716e","\u5606","\u91d8","\u642d","\u8396","\u7c60","\u9177","\u5077","\u5f13","\u9310","\u6046","\u5091","\u5751","\u9f3b","\u7ffc","\u7db8","\u6558","\u7344","\u902e","\u7f50","\u7d61","\u68da","\u6291","\u81a8","\u852c","\u5bfa","\u9a5f","\u7a46","\u51b6","\u67af","\u518a","\u5c4d","\u51f8","\u7d33","\u576f","\u72a7","\u7130","\u8f5f","\u6b23","\u6649","\u7626","\u79a6","\u9320","\u9326","\u55aa","\u65ec","\u935b","\u58df","\u641c","\u64b2","\u9080","\u4ead","\u916f","\u9081","\u8212","\u8106","\u9176","\u9592","\u6182","\u915a","\u9811","\u7fbd","\u6f32","\u5378","\u4ed7","\u966a","\u95e2","\u61f2","\u676d","\u59da","\u809a","\u6349","\u98c4","\u6f02","\u6606","\u6b3a","\u543e","\u90ce","\u70f7","\u6c41","\u5475","\u98fe","\u856d","\u96c5","\u90f5","\u9077","\u71d5","\u6492","\u59fb","\u8d74","\u5bb4","\u7169","\u50b5","\u5e33","\u6591","\u9234","\u65e8","\u9187","\u8463","\u9905","\u96db","\u59ff","\u62cc","\u5085","\u8179","\u59a5","\u63c9","\u8ce2","\u62c6","\u6b6a","\u8461","\u80fa","\u4e1f","\u6d69","\u5fbd","\u6602","\u588a","\u64cb","\u89bd","\u8caa","\u6170","\u7e73","\u6c6a","\u614c","\u99ae","\u8afe","\u59dc","\u8abc","\u5147","\u52a3","\u8aa3","\u8000","\u660f","\u8eba","\u76c8","\u9a0e","\u55ac","\u6eaa","\u53e2","\u76e7","\u62b9","\u60b6","\u8aee","\u522e","\u99d5","\u7e9c","\u609f","\u6458","\u927a","\u64f2","\u9817","\u5e7b","\u67c4","\u60e0","\u6158","\u4f73","\u4ec7","\u81d8","\u7aa9","\u6ecc","\u528d","\u77a7","\u5821","\u6f51","\u8525","\u7f69","\u970d","\u6488","\u80ce","\u84bc","\u6ff1","\u5006","\u6345","\u6e58","\u780d","\u971e","\u90b5","\u8404","\u760b","\u6dee","\u9042","\u718a","\u7cde","\u70d8","\u5bbf","\u6a94","\u6208","\u99c1","\u5ac2","\u88d5","\u5f99","\u7bad","\u6350","\u8178","\u6490","\u66ec","\u8fa8","\u6bbf","\u84ee","\u6524","\u652a","\u91ac","\u5c4f","\u75ab","\u54c0","\u8521","\u5835","\u6cab","\u76ba","\u66a2","\u758a","\u95a3","\u840a","\u6572","\u8f44","\u9264","\u75d5","\u58e9","\u5df7","\u9913","\u798d","\u4e18","\u7384","\u6e9c","\u66f0","\u908f","\u5f6d","\u5617","\u537f","\u59a8","\u8247","\u541e","\u97cb","\u6028","\u77ee","\u6b47"]')},32:e=>{"use strict";e.exports=JSON.parse('["abdikace","abeceda","adresa","agrese","akce","aktovka","alej","alkohol","amputace","ananas","andulka","anekdota","anketa","antika","anulovat","archa","arogance","asfalt","asistent","aspirace","astma","astronom","atlas","atletika","atol","autobus","azyl","babka","bachor","bacil","baculka","badatel","bageta","bagr","bahno","bakterie","balada","baletka","balkon","balonek","balvan","balza","bambus","bankomat","barbar","baret","barman","baroko","barva","baterka","batoh","bavlna","bazalka","bazilika","bazuka","bedna","beran","beseda","bestie","beton","bezinka","bezmoc","beztak","bicykl","bidlo","biftek","bikiny","bilance","biograf","biolog","bitva","bizon","blahobyt","blatouch","blecha","bledule","blesk","blikat","blizna","blokovat","bloudit","blud","bobek","bobr","bodlina","bodnout","bohatost","bojkot","bojovat","bokorys","bolest","borec","borovice","bota","boubel","bouchat","bouda","boule","bourat","boxer","bradavka","brambora","branka","bratr","brepta","briketa","brko","brloh","bronz","broskev","brunetka","brusinka","brzda","brzy","bublina","bubnovat","buchta","buditel","budka","budova","bufet","bujarost","bukvice","buldok","bulva","bunda","bunkr","burza","butik","buvol","buzola","bydlet","bylina","bytovka","bzukot","capart","carevna","cedr","cedule","cejch","cejn","cela","celer","celkem","celnice","cenina","cennost","cenovka","centrum","cenzor","cestopis","cetka","chalupa","chapadlo","charita","chata","chechtat","chemie","chichot","chirurg","chlad","chleba","chlubit","chmel","chmura","chobot","chochol","chodba","cholera","chomout","chopit","choroba","chov","chrapot","chrlit","chrt","chrup","chtivost","chudina","chutnat","chvat","chvilka","chvost","chyba","chystat","chytit","cibule","cigareta","cihelna","cihla","cinkot","cirkus","cisterna","citace","citrus","cizinec","cizost","clona","cokoliv","couvat","ctitel","ctnost","cudnost","cuketa","cukr","cupot","cvaknout","cval","cvik","cvrkot","cyklista","daleko","dareba","datel","datum","dcera","debata","dechovka","decibel","deficit","deflace","dekl","dekret","demokrat","deprese","derby","deska","detektiv","dikobraz","diktovat","dioda","diplom","disk","displej","divadlo","divoch","dlaha","dlouho","dluhopis","dnes","dobro","dobytek","docent","dochutit","dodnes","dohled","dohoda","dohra","dojem","dojnice","doklad","dokola","doktor","dokument","dolar","doleva","dolina","doma","dominant","domluvit","domov","donutit","dopad","dopis","doplnit","doposud","doprovod","dopustit","dorazit","dorost","dort","dosah","doslov","dostatek","dosud","dosyta","dotaz","dotek","dotknout","doufat","doutnat","dovozce","dozadu","doznat","dozorce","drahota","drak","dramatik","dravec","draze","drdol","drobnost","drogerie","drozd","drsnost","drtit","drzost","duben","duchovno","dudek","duha","duhovka","dusit","dusno","dutost","dvojice","dvorec","dynamit","ekolog","ekonomie","elektron","elipsa","email","emise","emoce","empatie","epizoda","epocha","epopej","epos","esej","esence","eskorta","eskymo","etiketa","euforie","evoluce","exekuce","exkurze","expedice","exploze","export","extrakt","facka","fajfka","fakulta","fanatik","fantazie","farmacie","favorit","fazole","federace","fejeton","fenka","fialka","figurant","filozof","filtr","finance","finta","fixace","fjord","flanel","flirt","flotila","fond","fosfor","fotbal","fotka","foton","frakce","freska","fronta","fukar","funkce","fyzika","galeje","garant","genetika","geolog","gilotina","glazura","glejt","golem","golfista","gotika","graf","gramofon","granule","grep","gril","grog","groteska","guma","hadice","hadr","hala","halenka","hanba","hanopis","harfa","harpuna","havran","hebkost","hejkal","hejno","hejtman","hektar","helma","hematom","herec","herna","heslo","hezky","historik","hladovka","hlasivky","hlava","hledat","hlen","hlodavec","hloh","hloupost","hltat","hlubina","hluchota","hmat","hmota","hmyz","hnis","hnojivo","hnout","hoblina","hoboj","hoch","hodiny","hodlat","hodnota","hodovat","hojnost","hokej","holinka","holka","holub","homole","honitba","honorace","horal","horda","horizont","horko","horlivec","hormon","hornina","horoskop","horstvo","hospoda","hostina","hotovost","houba","houf","houpat","houska","hovor","hradba","hranice","hravost","hrazda","hrbolek","hrdina","hrdlo","hrdost","hrnek","hrobka","hromada","hrot","hrouda","hrozen","hrstka","hrubost","hryzat","hubenost","hubnout","hudba","hukot","humr","husita","hustota","hvozd","hybnost","hydrant","hygiena","hymna","hysterik","idylka","ihned","ikona","iluze","imunita","infekce","inflace","inkaso","inovace","inspekce","internet","invalida","investor","inzerce","ironie","jablko","jachta","jahoda","jakmile","jakost","jalovec","jantar","jarmark","jaro","jasan","jasno","jatka","javor","jazyk","jedinec","jedle","jednatel","jehlan","jekot","jelen","jelito","jemnost","jenom","jepice","jeseter","jevit","jezdec","jezero","jinak","jindy","jinoch","jiskra","jistota","jitrnice","jizva","jmenovat","jogurt","jurta","kabaret","kabel","kabinet","kachna","kadet","kadidlo","kahan","kajak","kajuta","kakao","kaktus","kalamita","kalhoty","kalibr","kalnost","kamera","kamkoliv","kamna","kanibal","kanoe","kantor","kapalina","kapela","kapitola","kapka","kaple","kapota","kapr","kapusta","kapybara","karamel","karotka","karton","kasa","katalog","katedra","kauce","kauza","kavalec","kazajka","kazeta","kazivost","kdekoliv","kdesi","kedluben","kemp","keramika","kino","klacek","kladivo","klam","klapot","klasika","klaun","klec","klenba","klepat","klesnout","klid","klima","klisna","klobouk","klokan","klopa","kloub","klubovna","klusat","kluzkost","kmen","kmitat","kmotr","kniha","knot","koalice","koberec","kobka","kobliha","kobyla","kocour","kohout","kojenec","kokos","koktejl","kolaps","koleda","kolize","kolo","komando","kometa","komik","komnata","komora","kompas","komunita","konat","koncept","kondice","konec","konfese","kongres","konina","konkurs","kontakt","konzerva","kopanec","kopie","kopnout","koprovka","korbel","korektor","kormidlo","koroptev","korpus","koruna","koryto","korzet","kosatec","kostka","kotel","kotleta","kotoul","koukat","koupelna","kousek","kouzlo","kovboj","koza","kozoroh","krabice","krach","krajina","kralovat","krasopis","kravata","kredit","krejcar","kresba","kreveta","kriket","kritik","krize","krkavec","krmelec","krmivo","krocan","krok","kronika","kropit","kroupa","krovka","krtek","kruhadlo","krupice","krutost","krvinka","krychle","krypta","krystal","kryt","kudlanka","kufr","kujnost","kukla","kulajda","kulich","kulka","kulomet","kultura","kuna","kupodivu","kurt","kurzor","kutil","kvalita","kvasinka","kvestor","kynolog","kyselina","kytara","kytice","kytka","kytovec","kyvadlo","labrador","lachtan","ladnost","laik","lakomec","lamela","lampa","lanovka","lasice","laso","lastura","latinka","lavina","lebka","leckdy","leden","lednice","ledovka","ledvina","legenda","legie","legrace","lehce","lehkost","lehnout","lektvar","lenochod","lentilka","lepenka","lepidlo","letadlo","letec","letmo","letokruh","levhart","levitace","levobok","libra","lichotka","lidojed","lidskost","lihovina","lijavec","lilek","limetka","linie","linka","linoleum","listopad","litina","litovat","lobista","lodivod","logika","logoped","lokalita","loket","lomcovat","lopata","lopuch","lord","losos","lotr","loudal","louh","louka","louskat","lovec","lstivost","lucerna","lucifer","lump","lusk","lustrace","lvice","lyra","lyrika","lysina","madam","madlo","magistr","mahagon","majetek","majitel","majorita","makak","makovice","makrela","malba","malina","malovat","malvice","maminka","mandle","manko","marnost","masakr","maskot","masopust","matice","matrika","maturita","mazanec","mazivo","mazlit","mazurka","mdloba","mechanik","meditace","medovina","melasa","meloun","mentolka","metla","metoda","metr","mezera","migrace","mihnout","mihule","mikina","mikrofon","milenec","milimetr","milost","mimika","mincovna","minibar","minomet","minulost","miska","mistr","mixovat","mladost","mlha","mlhovina","mlok","mlsat","mluvit","mnich","mnohem","mobil","mocnost","modelka","modlitba","mohyla","mokro","molekula","momentka","monarcha","monokl","monstrum","montovat","monzun","mosaz","moskyt","most","motivace","motorka","motyka","moucha","moudrost","mozaika","mozek","mozol","mramor","mravenec","mrkev","mrtvola","mrzet","mrzutost","mstitel","mudrc","muflon","mulat","mumie","munice","muset","mutace","muzeum","muzikant","myslivec","mzda","nabourat","nachytat","nadace","nadbytek","nadhoz","nadobro","nadpis","nahlas","nahnat","nahodile","nahradit","naivita","najednou","najisto","najmout","naklonit","nakonec","nakrmit","nalevo","namazat","namluvit","nanometr","naoko","naopak","naostro","napadat","napevno","naplnit","napnout","naposled","naprosto","narodit","naruby","narychlo","nasadit","nasekat","naslepo","nastat","natolik","navenek","navrch","navzdory","nazvat","nebe","nechat","necky","nedaleko","nedbat","neduh","negace","nehet","nehoda","nejen","nejprve","neklid","nelibost","nemilost","nemoc","neochota","neonka","nepokoj","nerost","nerv","nesmysl","nesoulad","netvor","neuron","nevina","nezvykle","nicota","nijak","nikam","nikdy","nikl","nikterak","nitro","nocleh","nohavice","nominace","nora","norek","nositel","nosnost","nouze","noviny","novota","nozdra","nuda","nudle","nuget","nutit","nutnost","nutrie","nymfa","obal","obarvit","obava","obdiv","obec","obehnat","obejmout","obezita","obhajoba","obilnice","objasnit","objekt","obklopit","oblast","oblek","obliba","obloha","obluda","obnos","obohatit","obojek","obout","obrazec","obrna","obruba","obrys","obsah","obsluha","obstarat","obuv","obvaz","obvinit","obvod","obvykle","obyvatel","obzor","ocas","ocel","ocenit","ochladit","ochota","ochrana","ocitnout","odboj","odbyt","odchod","odcizit","odebrat","odeslat","odevzdat","odezva","odhadce","odhodit","odjet","odjinud","odkaz","odkoupit","odliv","odluka","odmlka","odolnost","odpad","odpis","odplout","odpor","odpustit","odpykat","odrazka","odsoudit","odstup","odsun","odtok","odtud","odvaha","odveta","odvolat","odvracet","odznak","ofina","ofsajd","ohlas","ohnisko","ohrada","ohrozit","ohryzek","okap","okenice","oklika","okno","okouzlit","okovy","okrasa","okres","okrsek","okruh","okupant","okurka","okusit","olejnina","olizovat","omak","omeleta","omezit","omladina","omlouvat","omluva","omyl","onehdy","opakovat","opasek","operace","opice","opilost","opisovat","opora","opozice","opravdu","oproti","orbital","orchestr","orgie","orlice","orloj","ortel","osada","oschnout","osika","osivo","oslava","oslepit","oslnit","oslovit","osnova","osoba","osolit","ospalec","osten","ostraha","ostuda","ostych","osvojit","oteplit","otisk","otop","otrhat","otrlost","otrok","otruby","otvor","ovanout","ovar","oves","ovlivnit","ovoce","oxid","ozdoba","pachatel","pacient","padouch","pahorek","pakt","palanda","palec","palivo","paluba","pamflet","pamlsek","panenka","panika","panna","panovat","panstvo","pantofle","paprika","parketa","parodie","parta","paruka","paryba","paseka","pasivita","pastelka","patent","patrona","pavouk","pazneht","pazourek","pecka","pedagog","pejsek","peklo","peloton","penalta","pendrek","penze","periskop","pero","pestrost","petarda","petice","petrolej","pevnina","pexeso","pianista","piha","pijavice","pikle","piknik","pilina","pilnost","pilulka","pinzeta","pipeta","pisatel","pistole","pitevna","pivnice","pivovar","placenta","plakat","plamen","planeta","plastika","platit","plavidlo","plaz","plech","plemeno","plenta","ples","pletivo","plevel","plivat","plnit","plno","plocha","plodina","plomba","plout","pluk","plyn","pobavit","pobyt","pochod","pocit","poctivec","podat","podcenit","podepsat","podhled","podivit","podklad","podmanit","podnik","podoba","podpora","podraz","podstata","podvod","podzim","poezie","pohanka","pohnutka","pohovor","pohroma","pohyb","pointa","pojistka","pojmout","pokazit","pokles","pokoj","pokrok","pokuta","pokyn","poledne","polibek","polknout","poloha","polynom","pomalu","pominout","pomlka","pomoc","pomsta","pomyslet","ponechat","ponorka","ponurost","popadat","popel","popisek","poplach","poprosit","popsat","popud","poradce","porce","porod","porucha","poryv","posadit","posed","posila","poskok","poslanec","posoudit","pospolu","postava","posudek","posyp","potah","potkan","potlesk","potomek","potrava","potupa","potvora","poukaz","pouto","pouzdro","povaha","povidla","povlak","povoz","povrch","povstat","povyk","povzdech","pozdrav","pozemek","poznatek","pozor","pozvat","pracovat","prahory","praktika","prales","praotec","praporek","prase","pravda","princip","prkno","probudit","procento","prodej","profese","prohra","projekt","prolomit","promile","pronikat","propad","prorok","prosba","proton","proutek","provaz","prskavka","prsten","prudkost","prut","prvek","prvohory","psanec","psovod","pstruh","ptactvo","puberta","puch","pudl","pukavec","puklina","pukrle","pult","pumpa","punc","pupen","pusa","pusinka","pustina","putovat","putyka","pyramida","pysk","pytel","racek","rachot","radiace","radnice","radon","raft","ragby","raketa","rakovina","rameno","rampouch","rande","rarach","rarita","rasovna","rastr","ratolest","razance","razidlo","reagovat","reakce","recept","redaktor","referent","reflex","rejnok","reklama","rekord","rekrut","rektor","reputace","revize","revma","revolver","rezerva","riskovat","riziko","robotika","rodokmen","rohovka","rokle","rokoko","romaneto","ropovod","ropucha","rorejs","rosol","rostlina","rotmistr","rotoped","rotunda","roubenka","roucho","roup","roura","rovina","rovnice","rozbor","rozchod","rozdat","rozeznat","rozhodce","rozinka","rozjezd","rozkaz","rozloha","rozmar","rozpad","rozruch","rozsah","roztok","rozum","rozvod","rubrika","ruchadlo","rukavice","rukopis","ryba","rybolov","rychlost","rydlo","rypadlo","rytina","ryzost","sadista","sahat","sako","samec","samizdat","samota","sanitka","sardinka","sasanka","satelit","sazba","sazenice","sbor","schovat","sebranka","secese","sedadlo","sediment","sedlo","sehnat","sejmout","sekera","sekta","sekunda","sekvoje","semeno","seno","servis","sesadit","seshora","seskok","seslat","sestra","sesuv","sesypat","setba","setina","setkat","setnout","setrvat","sever","seznam","shoda","shrnout","sifon","silnice","sirka","sirotek","sirup","situace","skafandr","skalisko","skanzen","skaut","skeptik","skica","skladba","sklenice","sklo","skluz","skoba","skokan","skoro","skripta","skrz","skupina","skvost","skvrna","slabika","sladidlo","slanina","slast","slavnost","sledovat","slepec","sleva","slezina","slib","slina","sliznice","slon","sloupek","slovo","sluch","sluha","slunce","slupka","slza","smaragd","smetana","smilstvo","smlouva","smog","smrad","smrk","smrtka","smutek","smysl","snad","snaha","snob","sobota","socha","sodovka","sokol","sopka","sotva","souboj","soucit","soudce","souhlas","soulad","soumrak","souprava","soused","soutok","souviset","spalovna","spasitel","spis","splav","spodek","spojenec","spolu","sponzor","spornost","spousta","sprcha","spustit","sranda","sraz","srdce","srna","srnec","srovnat","srpen","srst","srub","stanice","starosta","statika","stavba","stehno","stezka","stodola","stolek","stopa","storno","stoupat","strach","stres","strhnout","strom","struna","studna","stupnice","stvol","styk","subjekt","subtropy","suchar","sudost","sukno","sundat","sunout","surikata","surovina","svah","svalstvo","svetr","svatba","svazek","svisle","svitek","svoboda","svodidlo","svorka","svrab","sykavka","sykot","synek","synovec","sypat","sypkost","syrovost","sysel","sytost","tabletka","tabule","tahoun","tajemno","tajfun","tajga","tajit","tajnost","taktika","tamhle","tampon","tancovat","tanec","tanker","tapeta","tavenina","tazatel","technika","tehdy","tekutina","telefon","temnota","tendence","tenista","tenor","teplota","tepna","teprve","terapie","termoska","textil","ticho","tiskopis","titulek","tkadlec","tkanina","tlapka","tleskat","tlukot","tlupa","tmel","toaleta","topinka","topol","torzo","touha","toulec","tradice","traktor","tramp","trasa","traverza","trefit","trest","trezor","trhavina","trhlina","trochu","trojice","troska","trouba","trpce","trpitel","trpkost","trubec","truchlit","truhlice","trus","trvat","tudy","tuhnout","tuhost","tundra","turista","turnaj","tuzemsko","tvaroh","tvorba","tvrdost","tvrz","tygr","tykev","ubohost","uboze","ubrat","ubrousek","ubrus","ubytovna","ucho","uctivost","udivit","uhradit","ujednat","ujistit","ujmout","ukazatel","uklidnit","uklonit","ukotvit","ukrojit","ulice","ulita","ulovit","umyvadlo","unavit","uniforma","uniknout","upadnout","uplatnit","uplynout","upoutat","upravit","uran","urazit","usednout","usilovat","usmrtit","usnadnit","usnout","usoudit","ustlat","ustrnout","utahovat","utkat","utlumit","utonout","utopenec","utrousit","uvalit","uvolnit","uvozovka","uzdravit","uzel","uzenina","uzlina","uznat","vagon","valcha","valoun","vana","vandal","vanilka","varan","varhany","varovat","vcelku","vchod","vdova","vedro","vegetace","vejce","velbloud","veletrh","velitel","velmoc","velryba","venkov","veranda","verze","veselka","veskrze","vesnice","vespodu","vesta","veterina","veverka","vibrace","vichr","videohra","vidina","vidle","vila","vinice","viset","vitalita","vize","vizitka","vjezd","vklad","vkus","vlajka","vlak","vlasec","vlevo","vlhkost","vliv","vlnovka","vloupat","vnucovat","vnuk","voda","vodivost","vodoznak","vodstvo","vojensky","vojna","vojsko","volant","volba","volit","volno","voskovka","vozidlo","vozovna","vpravo","vrabec","vracet","vrah","vrata","vrba","vrcholek","vrhat","vrstva","vrtule","vsadit","vstoupit","vstup","vtip","vybavit","vybrat","vychovat","vydat","vydra","vyfotit","vyhledat","vyhnout","vyhodit","vyhradit","vyhubit","vyjasnit","vyjet","vyjmout","vyklopit","vykonat","vylekat","vymazat","vymezit","vymizet","vymyslet","vynechat","vynikat","vynutit","vypadat","vyplatit","vypravit","vypustit","vyrazit","vyrovnat","vyrvat","vyslovit","vysoko","vystavit","vysunout","vysypat","vytasit","vytesat","vytratit","vyvinout","vyvolat","vyvrhel","vyzdobit","vyznat","vzadu","vzbudit","vzchopit","vzdor","vzduch","vzdychat","vzestup","vzhledem","vzkaz","vzlykat","vznik","vzorek","vzpoura","vztah","vztek","xylofon","zabrat","zabydlet","zachovat","zadarmo","zadusit","zafoukat","zahltit","zahodit","zahrada","zahynout","zajatec","zajet","zajistit","zaklepat","zakoupit","zalepit","zamezit","zamotat","zamyslet","zanechat","zanikat","zaplatit","zapojit","zapsat","zarazit","zastavit","zasunout","zatajit","zatemnit","zatknout","zaujmout","zavalit","zavelet","zavinit","zavolat","zavrtat","zazvonit","zbavit","zbrusu","zbudovat","zbytek","zdaleka","zdarma","zdatnost","zdivo","zdobit","zdroj","zdvih","zdymadlo","zelenina","zeman","zemina","zeptat","zezadu","zezdola","zhatit","zhltnout","zhluboka","zhotovit","zhruba","zima","zimnice","zjemnit","zklamat","zkoumat","zkratka","zkumavka","zlato","zlehka","zloba","zlom","zlost","zlozvyk","zmapovat","zmar","zmatek","zmije","zmizet","zmocnit","zmodrat","zmrzlina","zmutovat","znak","znalost","znamenat","znovu","zobrazit","zotavit","zoubek","zoufale","zplodit","zpomalit","zprava","zprostit","zprudka","zprvu","zrada","zranit","zrcadlo","zrnitost","zrno","zrovna","zrychlit","zrzavost","zticha","ztratit","zubovina","zubr","zvednout","zvenku","zvesela","zvon","zvrat","zvukovod","zvyk"]')},4573:e=>{"use strict";e.exports=JSON.parse('["abandon","ability","able","about","above","absent","absorb","abstract","absurd","abuse","access","accident","account","accuse","achieve","acid","acoustic","acquire","across","act","action","actor","actress","actual","adapt","add","addict","address","adjust","admit","adult","advance","advice","aerobic","affair","afford","afraid","again","age","agent","agree","ahead","aim","air","airport","aisle","alarm","album","alcohol","alert","alien","all","alley","allow","almost","alone","alpha","already","also","alter","always","amateur","amazing","among","amount","amused","analyst","anchor","ancient","anger","angle","angry","animal","ankle","announce","annual","another","answer","antenna","antique","anxiety","any","apart","apology","appear","apple","approve","april","arch","arctic","area","arena","argue","arm","armed","armor","army","around","arrange","arrest","arrive","arrow","art","artefact","artist","artwork","ask","aspect","assault","asset","assist","assume","asthma","athlete","atom","attack","attend","attitude","attract","auction","audit","august","aunt","author","auto","autumn","average","avocado","avoid","awake","aware","away","awesome","awful","awkward","axis","baby","bachelor","bacon","badge","bag","balance","balcony","ball","bamboo","banana","banner","bar","barely","bargain","barrel","base","basic","basket","battle","beach","bean","beauty","because","become","beef","before","begin","behave","behind","believe","below","belt","bench","benefit","best","betray","better","between","beyond","bicycle","bid","bike","bind","biology","bird","birth","bitter","black","blade","blame","blanket","blast","bleak","bless","blind","blood","blossom","blouse","blue","blur","blush","board","boat","body","boil","bomb","bone","bonus","book","boost","border","boring","borrow","boss","bottom","bounce","box","boy","bracket","brain","brand","brass","brave","bread","breeze","brick","bridge","brief","bright","bring","brisk","broccoli","broken","bronze","broom","brother","brown","brush","bubble","buddy","budget","buffalo","build","bulb","bulk","bullet","bundle","bunker","burden","burger","burst","bus","business","busy","butter","buyer","buzz","cabbage","cabin","cable","cactus","cage","cake","call","calm","camera","camp","can","canal","cancel","candy","cannon","canoe","canvas","canyon","capable","capital","captain","car","carbon","card","cargo","carpet","carry","cart","case","cash","casino","castle","casual","cat","catalog","catch","category","cattle","caught","cause","caution","cave","ceiling","celery","cement","census","century","cereal","certain","chair","chalk","champion","change","chaos","chapter","charge","chase","chat","cheap","check","cheese","chef","cherry","chest","chicken","chief","child","chimney","choice","choose","chronic","chuckle","chunk","churn","cigar","cinnamon","circle","citizen","city","civil","claim","clap","clarify","claw","clay","clean","clerk","clever","click","client","cliff","climb","clinic","clip","clock","clog","close","cloth","cloud","clown","club","clump","cluster","clutch","coach","coast","coconut","code","coffee","coil","coin","collect","color","column","combine","come","comfort","comic","common","company","concert","conduct","confirm","congress","connect","consider","control","convince","cook","cool","copper","copy","coral","core","corn","correct","cost","cotton","couch","country","couple","course","cousin","cover","coyote","crack","cradle","craft","cram","crane","crash","crater","crawl","crazy","cream","credit","creek","crew","cricket","crime","crisp","critic","crop","cross","crouch","crowd","crucial","cruel","cruise","crumble","crunch","crush","cry","crystal","cube","culture","cup","cupboard","curious","current","curtain","curve","cushion","custom","cute","cycle","dad","damage","damp","dance","danger","daring","dash","daughter","dawn","day","deal","debate","debris","decade","december","decide","decline","decorate","decrease","deer","defense","define","defy","degree","delay","deliver","demand","demise","denial","dentist","deny","depart","depend","deposit","depth","deputy","derive","describe","desert","design","desk","despair","destroy","detail","detect","develop","device","devote","diagram","dial","diamond","diary","dice","diesel","diet","differ","digital","dignity","dilemma","dinner","dinosaur","direct","dirt","disagree","discover","disease","dish","dismiss","disorder","display","distance","divert","divide","divorce","dizzy","doctor","document","dog","doll","dolphin","domain","donate","donkey","donor","door","dose","double","dove","draft","dragon","drama","drastic","draw","dream","dress","drift","drill","drink","drip","drive","drop","drum","dry","duck","dumb","dune","during","dust","dutch","duty","dwarf","dynamic","eager","eagle","early","earn","earth","easily","east","easy","echo","ecology","economy","edge","edit","educate","effort","egg","eight","either","elbow","elder","electric","elegant","element","elephant","elevator","elite","else","embark","embody","embrace","emerge","emotion","employ","empower","empty","enable","enact","end","endless","endorse","enemy","energy","enforce","engage","engine","enhance","enjoy","enlist","enough","enrich","enroll","ensure","enter","entire","entry","envelope","episode","equal","equip","era","erase","erode","erosion","error","erupt","escape","essay","essence","estate","eternal","ethics","evidence","evil","evoke","evolve","exact","example","excess","exchange","excite","exclude","excuse","execute","exercise","exhaust","exhibit","exile","exist","exit","exotic","expand","expect","expire","explain","expose","express","extend","extra","eye","eyebrow","fabric","face","faculty","fade","faint","faith","fall","false","fame","family","famous","fan","fancy","fantasy","farm","fashion","fat","fatal","father","fatigue","fault","favorite","feature","february","federal","fee","feed","feel","female","fence","festival","fetch","fever","few","fiber","fiction","field","figure","file","film","filter","final","find","fine","finger","finish","fire","firm","first","fiscal","fish","fit","fitness","fix","flag","flame","flash","flat","flavor","flee","flight","flip","float","flock","floor","flower","fluid","flush","fly","foam","focus","fog","foil","fold","follow","food","foot","force","forest","forget","fork","fortune","forum","forward","fossil","foster","found","fox","fragile","frame","frequent","fresh","friend","fringe","frog","front","frost","frown","frozen","fruit","fuel","fun","funny","furnace","fury","future","gadget","gain","galaxy","gallery","game","gap","garage","garbage","garden","garlic","garment","gas","gasp","gate","gather","gauge","gaze","general","genius","genre","gentle","genuine","gesture","ghost","giant","gift","giggle","ginger","giraffe","girl","give","glad","glance","glare","glass","glide","glimpse","globe","gloom","glory","glove","glow","glue","goat","goddess","gold","good","goose","gorilla","gospel","gossip","govern","gown","grab","grace","grain","grant","grape","grass","gravity","great","green","grid","grief","grit","grocery","group","grow","grunt","guard","guess","guide","guilt","guitar","gun","gym","habit","hair","half","hammer","hamster","hand","happy","harbor","hard","harsh","harvest","hat","have","hawk","hazard","head","health","heart","heavy","hedgehog","height","hello","helmet","help","hen","hero","hidden","high","hill","hint","hip","hire","history","hobby","hockey","hold","hole","holiday","hollow","home","honey","hood","hope","horn","horror","horse","hospital","host","hotel","hour","hover","hub","huge","human","humble","humor","hundred","hungry","hunt","hurdle","hurry","hurt","husband","hybrid","ice","icon","idea","identify","idle","ignore","ill","illegal","illness","image","imitate","immense","immune","impact","impose","improve","impulse","inch","include","income","increase","index","indicate","indoor","industry","infant","inflict","inform","inhale","inherit","initial","inject","injury","inmate","inner","innocent","input","inquiry","insane","insect","inside","inspire","install","intact","interest","into","invest","invite","involve","iron","island","isolate","issue","item","ivory","jacket","jaguar","jar","jazz","jealous","jeans","jelly","jewel","job","join","joke","journey","joy","judge","juice","jump","jungle","junior","junk","just","kangaroo","keen","keep","ketchup","key","kick","kid","kidney","kind","kingdom","kiss","kit","kitchen","kite","kitten","kiwi","knee","knife","knock","know","lab","label","labor","ladder","lady","lake","lamp","language","laptop","large","later","latin","laugh","laundry","lava","law","lawn","lawsuit","layer","lazy","leader","leaf","learn","leave","lecture","left","leg","legal","legend","leisure","lemon","lend","length","lens","leopard","lesson","letter","level","liar","liberty","library","license","life","lift","light","like","limb","limit","link","lion","liquid","list","little","live","lizard","load","loan","lobster","local","lock","logic","lonely","long","loop","lottery","loud","lounge","love","loyal","lucky","luggage","lumber","lunar","lunch","luxury","lyrics","machine","mad","magic","magnet","maid","mail","main","major","make","mammal","man","manage","mandate","mango","mansion","manual","maple","marble","march","margin","marine","market","marriage","mask","mass","master","match","material","math","matrix","matter","maximum","maze","meadow","mean","measure","meat","mechanic","medal","media","melody","melt","member","memory","mention","menu","mercy","merge","merit","merry","mesh","message","metal","method","middle","midnight","milk","million","mimic","mind","minimum","minor","minute","miracle","mirror","misery","miss","mistake","mix","mixed","mixture","mobile","model","modify","mom","moment","monitor","monkey","monster","month","moon","moral","more","morning","mosquito","mother","motion","motor","mountain","mouse","move","movie","much","muffin","mule","multiply","muscle","museum","mushroom","music","must","mutual","myself","mystery","myth","naive","name","napkin","narrow","nasty","nation","nature","near","neck","need","negative","neglect","neither","nephew","nerve","nest","net","network","neutral","never","news","next","nice","night","noble","noise","nominee","noodle","normal","north","nose","notable","note","nothing","notice","novel","now","nuclear","number","nurse","nut","oak","obey","object","oblige","obscure","observe","obtain","obvious","occur","ocean","october","odor","off","offer","office","often","oil","okay","old","olive","olympic","omit","once","one","onion","online","only","open","opera","opinion","oppose","option","orange","orbit","orchard","order","ordinary","organ","orient","original","orphan","ostrich","other","outdoor","outer","output","outside","oval","oven","over","own","owner","oxygen","oyster","ozone","pact","paddle","page","pair","palace","palm","panda","panel","panic","panther","paper","parade","parent","park","parrot","party","pass","patch","path","patient","patrol","pattern","pause","pave","payment","peace","peanut","pear","peasant","pelican","pen","penalty","pencil","people","pepper","perfect","permit","person","pet","phone","photo","phrase","physical","piano","picnic","picture","piece","pig","pigeon","pill","pilot","pink","pioneer","pipe","pistol","pitch","pizza","place","planet","plastic","plate","play","please","pledge","pluck","plug","plunge","poem","poet","point","polar","pole","police","pond","pony","pool","popular","portion","position","possible","post","potato","pottery","poverty","powder","power","practice","praise","predict","prefer","prepare","present","pretty","prevent","price","pride","primary","print","priority","prison","private","prize","problem","process","produce","profit","program","project","promote","proof","property","prosper","protect","proud","provide","public","pudding","pull","pulp","pulse","pumpkin","punch","pupil","puppy","purchase","purity","purpose","purse","push","put","puzzle","pyramid","quality","quantum","quarter","question","quick","quit","quiz","quote","rabbit","raccoon","race","rack","radar","radio","rail","rain","raise","rally","ramp","ranch","random","range","rapid","rare","rate","rather","raven","raw","razor","ready","real","reason","rebel","rebuild","recall","receive","recipe","record","recycle","reduce","reflect","reform","refuse","region","regret","regular","reject","relax","release","relief","rely","remain","remember","remind","remove","render","renew","rent","reopen","repair","repeat","replace","report","require","rescue","resemble","resist","resource","response","result","retire","retreat","return","reunion","reveal","review","reward","rhythm","rib","ribbon","rice","rich","ride","ridge","rifle","right","rigid","ring","riot","ripple","risk","ritual","rival","river","road","roast","robot","robust","rocket","romance","roof","rookie","room","rose","rotate","rough","round","route","royal","rubber","rude","rug","rule","run","runway","rural","sad","saddle","sadness","safe","sail","salad","salmon","salon","salt","salute","same","sample","sand","satisfy","satoshi","sauce","sausage","save","say","scale","scan","scare","scatter","scene","scheme","school","science","scissors","scorpion","scout","scrap","screen","script","scrub","sea","search","season","seat","second","secret","section","security","seed","seek","segment","select","sell","seminar","senior","sense","sentence","series","service","session","settle","setup","seven","shadow","shaft","shallow","share","shed","shell","sheriff","shield","shift","shine","ship","shiver","shock","shoe","shoot","shop","short","shoulder","shove","shrimp","shrug","shuffle","shy","sibling","sick","side","siege","sight","sign","silent","silk","silly","silver","similar","simple","since","sing","siren","sister","situate","six","size","skate","sketch","ski","skill","skin","skirt","skull","slab","slam","sleep","slender","slice","slide","slight","slim","slogan","slot","slow","slush","small","smart","smile","smoke","smooth","snack","snake","snap","sniff","snow","soap","soccer","social","sock","soda","soft","solar","soldier","solid","solution","solve","someone","song","soon","sorry","sort","soul","sound","soup","source","south","space","spare","spatial","spawn","speak","special","speed","spell","spend","sphere","spice","spider","spike","spin","spirit","split","spoil","sponsor","spoon","sport","spot","spray","spread","spring","spy","square","squeeze","squirrel","stable","stadium","staff","stage","stairs","stamp","stand","start","state","stay","steak","steel","stem","step","stereo","stick","still","sting","stock","stomach","stone","stool","story","stove","strategy","street","strike","strong","struggle","student","stuff","stumble","style","subject","submit","subway","success","such","sudden","suffer","sugar","suggest","suit","summer","sun","sunny","sunset","super","supply","supreme","sure","surface","surge","surprise","surround","survey","suspect","sustain","swallow","swamp","swap","swarm","swear","sweet","swift","swim","swing","switch","sword","symbol","symptom","syrup","system","table","tackle","tag","tail","talent","talk","tank","tape","target","task","taste","tattoo","taxi","teach","team","tell","ten","tenant","tennis","tent","term","test","text","thank","that","theme","then","theory","there","they","thing","this","thought","three","thrive","throw","thumb","thunder","ticket","tide","tiger","tilt","timber","time","tiny","tip","tired","tissue","title","toast","tobacco","today","toddler","toe","together","toilet","token","tomato","tomorrow","tone","tongue","tonight","tool","tooth","top","topic","topple","torch","tornado","tortoise","toss","total","tourist","toward","tower","town","toy","track","trade","traffic","tragic","train","transfer","trap","trash","travel","tray","treat","tree","trend","trial","tribe","trick","trigger","trim","trip","trophy","trouble","truck","true","truly","trumpet","trust","truth","try","tube","tuition","tumble","tuna","tunnel","turkey","turn","turtle","twelve","twenty","twice","twin","twist","two","type","typical","ugly","umbrella","unable","unaware","uncle","uncover","under","undo","unfair","unfold","unhappy","uniform","unique","unit","universe","unknown","unlock","until","unusual","unveil","update","upgrade","uphold","upon","upper","upset","urban","urge","usage","use","used","useful","useless","usual","utility","vacant","vacuum","vague","valid","valley","valve","van","vanish","vapor","various","vast","vault","vehicle","velvet","vendor","venture","venue","verb","verify","version","very","vessel","veteran","viable","vibrant","vicious","victory","video","view","village","vintage","violin","virtual","virus","visa","visit","visual","vital","vivid","vocal","voice","void","volcano","volume","vote","voyage","wage","wagon","wait","walk","wall","walnut","want","warfare","warm","warrior","wash","wasp","waste","water","wave","way","wealth","weapon","wear","weasel","weather","web","wedding","weekend","weird","welcome","west","wet","whale","what","wheat","wheel","when","where","whip","whisper","wide","width","wife","wild","will","win","window","wine","wing","wink","winner","winter","wire","wisdom","wise","wish","witness","wolf","woman","wonder","wood","wool","word","work","world","worry","worth","wrap","wreck","wrestle","wrist","write","wrong","yard","year","yellow","you","young","youth","zebra","zero","zone","zoo"]')},1848:e=>{"use strict";e.exports=JSON.parse('["abaisser","abandon","abdiquer","abeille","abolir","aborder","aboutir","aboyer","abrasif","abreuver","abriter","abroger","abrupt","absence","absolu","absurde","abusif","abyssal","acade\u0301mie","acajou","acarien","accabler","accepter","acclamer","accolade","accroche","accuser","acerbe","achat","acheter","aciduler","acier","acompte","acque\u0301rir","acronyme","acteur","actif","actuel","adepte","ade\u0301quat","adhe\u0301sif","adjectif","adjuger","admettre","admirer","adopter","adorer","adoucir","adresse","adroit","adulte","adverbe","ae\u0301rer","ae\u0301ronef","affaire","affecter","affiche","affreux","affubler","agacer","agencer","agile","agiter","agrafer","agre\u0301able","agrume","aider","aiguille","ailier","aimable","aisance","ajouter","ajuster","alarmer","alchimie","alerte","alge\u0300bre","algue","alie\u0301ner","aliment","alle\u0301ger","alliage","allouer","allumer","alourdir","alpaga","altesse","alve\u0301ole","amateur","ambigu","ambre","ame\u0301nager","amertume","amidon","amiral","amorcer","amour","amovible","amphibie","ampleur","amusant","analyse","anaphore","anarchie","anatomie","ancien","ane\u0301antir","angle","angoisse","anguleux","animal","annexer","annonce","annuel","anodin","anomalie","anonyme","anormal","antenne","antidote","anxieux","apaiser","ape\u0301ritif","aplanir","apologie","appareil","appeler","apporter","appuyer","aquarium","aqueduc","arbitre","arbuste","ardeur","ardoise","argent","arlequin","armature","armement","armoire","armure","arpenter","arracher","arriver","arroser","arsenic","arte\u0301riel","article","aspect","asphalte","aspirer","assaut","asservir","assiette","associer","assurer","asticot","astre","astuce","atelier","atome","atrium","atroce","attaque","attentif","attirer","attraper","aubaine","auberge","audace","audible","augurer","aurore","automne","autruche","avaler","avancer","avarice","avenir","averse","aveugle","aviateur","avide","avion","aviser","avoine","avouer","avril","axial","axiome","badge","bafouer","bagage","baguette","baignade","balancer","balcon","baleine","balisage","bambin","bancaire","bandage","banlieue","bannie\u0300re","banquier","barbier","baril","baron","barque","barrage","bassin","bastion","bataille","bateau","batterie","baudrier","bavarder","belette","be\u0301lier","belote","be\u0301ne\u0301fice","berceau","berger","berline","bermuda","besace","besogne","be\u0301tail","beurre","biberon","bicycle","bidule","bijou","bilan","bilingue","billard","binaire","biologie","biopsie","biotype","biscuit","bison","bistouri","bitume","bizarre","blafard","blague","blanchir","blessant","blinder","blond","bloquer","blouson","bobard","bobine","boire","boiser","bolide","bonbon","bondir","bonheur","bonifier","bonus","bordure","borne","botte","boucle","boueux","bougie","boulon","bouquin","bourse","boussole","boutique","boxeur","branche","brasier","brave","brebis","bre\u0300che","breuvage","bricoler","brigade","brillant","brioche","brique","brochure","broder","bronzer","brousse","broyeur","brume","brusque","brutal","bruyant","buffle","buisson","bulletin","bureau","burin","bustier","butiner","butoir","buvable","buvette","cabanon","cabine","cachette","cadeau","cadre","cafe\u0301ine","caillou","caisson","calculer","calepin","calibre","calmer","calomnie","calvaire","camarade","came\u0301ra","camion","campagne","canal","caneton","canon","cantine","canular","capable","caporal","caprice","capsule","capter","capuche","carabine","carbone","caresser","caribou","carnage","carotte","carreau","carton","cascade","casier","casque","cassure","causer","caution","cavalier","caverne","caviar","ce\u0301dille","ceinture","ce\u0301leste","cellule","cendrier","censurer","central","cercle","ce\u0301re\u0301bral","cerise","cerner","cerveau","cesser","chagrin","chaise","chaleur","chambre","chance","chapitre","charbon","chasseur","chaton","chausson","chavirer","chemise","chenille","che\u0301quier","chercher","cheval","chien","chiffre","chignon","chime\u0300re","chiot","chlorure","chocolat","choisir","chose","chouette","chrome","chute","cigare","cigogne","cimenter","cine\u0301ma","cintrer","circuler","cirer","cirque","citerne","citoyen","citron","civil","clairon","clameur","claquer","classe","clavier","client","cligner","climat","clivage","cloche","clonage","cloporte","cobalt","cobra","cocasse","cocotier","coder","codifier","coffre","cogner","cohe\u0301sion","coiffer","coincer","cole\u0300re","colibri","colline","colmater","colonel","combat","come\u0301die","commande","compact","concert","conduire","confier","congeler","connoter","consonne","contact","convexe","copain","copie","corail","corbeau","cordage","corniche","corpus","correct","corte\u0300ge","cosmique","costume","coton","coude","coupure","courage","couteau","couvrir","coyote","crabe","crainte","cravate","crayon","cre\u0301ature","cre\u0301diter","cre\u0301meux","creuser","crevette","cribler","crier","cristal","crite\u0300re","croire","croquer","crotale","crucial","cruel","crypter","cubique","cueillir","cuille\u0300re","cuisine","cuivre","culminer","cultiver","cumuler","cupide","curatif","curseur","cyanure","cycle","cylindre","cynique","daigner","damier","danger","danseur","dauphin","de\u0301battre","de\u0301biter","de\u0301border","de\u0301brider","de\u0301butant","de\u0301caler","de\u0301cembre","de\u0301chirer","de\u0301cider","de\u0301clarer","de\u0301corer","de\u0301crire","de\u0301cupler","de\u0301dale","de\u0301ductif","de\u0301esse","de\u0301fensif","de\u0301filer","de\u0301frayer","de\u0301gager","de\u0301givrer","de\u0301glutir","de\u0301grafer","de\u0301jeuner","de\u0301lice","de\u0301loger","demander","demeurer","de\u0301molir","de\u0301nicher","de\u0301nouer","dentelle","de\u0301nuder","de\u0301part","de\u0301penser","de\u0301phaser","de\u0301placer","de\u0301poser","de\u0301ranger","de\u0301rober","de\u0301sastre","descente","de\u0301sert","de\u0301signer","de\u0301sobe\u0301ir","dessiner","destrier","de\u0301tacher","de\u0301tester","de\u0301tourer","de\u0301tresse","devancer","devenir","deviner","devoir","diable","dialogue","diamant","dicter","diffe\u0301rer","dige\u0301rer","digital","digne","diluer","dimanche","diminuer","dioxyde","directif","diriger","discuter","disposer","dissiper","distance","divertir","diviser","docile","docteur","dogme","doigt","domaine","domicile","dompter","donateur","donjon","donner","dopamine","dortoir","dorure","dosage","doseur","dossier","dotation","douanier","double","douceur","douter","doyen","dragon","draper","dresser","dribbler","droiture","duperie","duplexe","durable","durcir","dynastie","e\u0301blouir","e\u0301carter","e\u0301charpe","e\u0301chelle","e\u0301clairer","e\u0301clipse","e\u0301clore","e\u0301cluse","e\u0301cole","e\u0301conomie","e\u0301corce","e\u0301couter","e\u0301craser","e\u0301cre\u0301mer","e\u0301crivain","e\u0301crou","e\u0301cume","e\u0301cureuil","e\u0301difier","e\u0301duquer","effacer","effectif","effigie","effort","effrayer","effusion","e\u0301galiser","e\u0301garer","e\u0301jecter","e\u0301laborer","e\u0301largir","e\u0301lectron","e\u0301le\u0301gant","e\u0301le\u0301phant","e\u0301le\u0300ve","e\u0301ligible","e\u0301litisme","e\u0301loge","e\u0301lucider","e\u0301luder","emballer","embellir","embryon","e\u0301meraude","e\u0301mission","emmener","e\u0301motion","e\u0301mouvoir","empereur","employer","emporter","emprise","e\u0301mulsion","encadrer","enche\u0300re","enclave","encoche","endiguer","endosser","endroit","enduire","e\u0301nergie","enfance","enfermer","enfouir","engager","engin","englober","e\u0301nigme","enjamber","enjeu","enlever","ennemi","ennuyeux","enrichir","enrobage","enseigne","entasser","entendre","entier","entourer","entraver","e\u0301nume\u0301rer","envahir","enviable","envoyer","enzyme","e\u0301olien","e\u0301paissir","e\u0301pargne","e\u0301patant","e\u0301paule","e\u0301picerie","e\u0301pide\u0301mie","e\u0301pier","e\u0301pilogue","e\u0301pine","e\u0301pisode","e\u0301pitaphe","e\u0301poque","e\u0301preuve","e\u0301prouver","e\u0301puisant","e\u0301querre","e\u0301quipe","e\u0301riger","e\u0301rosion","erreur","e\u0301ruption","escalier","espadon","espe\u0300ce","espie\u0300gle","espoir","esprit","esquiver","essayer","essence","essieu","essorer","estime","estomac","estrade","e\u0301tage\u0300re","e\u0301taler","e\u0301tanche","e\u0301tatique","e\u0301teindre","e\u0301tendoir","e\u0301ternel","e\u0301thanol","e\u0301thique","ethnie","e\u0301tirer","e\u0301toffer","e\u0301toile","e\u0301tonnant","e\u0301tourdir","e\u0301trange","e\u0301troit","e\u0301tude","euphorie","e\u0301valuer","e\u0301vasion","e\u0301ventail","e\u0301vidence","e\u0301viter","e\u0301volutif","e\u0301voquer","exact","exage\u0301rer","exaucer","exceller","excitant","exclusif","excuse","exe\u0301cuter","exemple","exercer","exhaler","exhorter","exigence","exiler","exister","exotique","expe\u0301dier","explorer","exposer","exprimer","exquis","extensif","extraire","exulter","fable","fabuleux","facette","facile","facture","faiblir","falaise","fameux","famille","farceur","farfelu","farine","farouche","fasciner","fatal","fatigue","faucon","fautif","faveur","favori","fe\u0301brile","fe\u0301conder","fe\u0301de\u0301rer","fe\u0301lin","femme","fe\u0301mur","fendoir","fe\u0301odal","fermer","fe\u0301roce","ferveur","festival","feuille","feutre","fe\u0301vrier","fiasco","ficeler","fictif","fide\u0300le","figure","filature","filetage","filie\u0300re","filleul","filmer","filou","filtrer","financer","finir","fiole","firme","fissure","fixer","flairer","flamme","flasque","flatteur","fle\u0301au","fle\u0300che","fleur","flexion","flocon","flore","fluctuer","fluide","fluvial","folie","fonderie","fongible","fontaine","forcer","forgeron","formuler","fortune","fossile","foudre","fouge\u0300re","fouiller","foulure","fourmi","fragile","fraise","franchir","frapper","frayeur","fre\u0301gate","freiner","frelon","fre\u0301mir","fre\u0301ne\u0301sie","fre\u0300re","friable","friction","frisson","frivole","froid","fromage","frontal","frotter","fruit","fugitif","fuite","fureur","furieux","furtif","fusion","futur","gagner","galaxie","galerie","gambader","garantir","gardien","garnir","garrigue","gazelle","gazon","ge\u0301ant","ge\u0301latine","ge\u0301lule","gendarme","ge\u0301ne\u0301ral","ge\u0301nie","genou","gentil","ge\u0301ologie","ge\u0301ome\u0300tre","ge\u0301ranium","germe","gestuel","geyser","gibier","gicler","girafe","givre","glace","glaive","glisser","globe","gloire","glorieux","golfeur","gomme","gonfler","gorge","gorille","goudron","gouffre","goulot","goupille","gourmand","goutte","graduel","graffiti","graine","grand","grappin","gratuit","gravir","grenat","griffure","griller","grimper","grogner","gronder","grotte","groupe","gruger","grutier","gruye\u0300re","gue\u0301pard","guerrier","guide","guimauve","guitare","gustatif","gymnaste","gyrostat","habitude","hachoir","halte","hameau","hangar","hanneton","haricot","harmonie","harpon","hasard","he\u0301lium","he\u0301matome","herbe","he\u0301risson","hermine","he\u0301ron","he\u0301siter","heureux","hiberner","hibou","hilarant","histoire","hiver","homard","hommage","homoge\u0300ne","honneur","honorer","honteux","horde","horizon","horloge","hormone","horrible","houleux","housse","hublot","huileux","humain","humble","humide","humour","hurler","hydromel","hygie\u0300ne","hymne","hypnose","idylle","ignorer","iguane","illicite","illusion","image","imbiber","imiter","immense","immobile","immuable","impact","impe\u0301rial","implorer","imposer","imprimer","imputer","incarner","incendie","incident","incliner","incolore","indexer","indice","inductif","ine\u0301dit","ineptie","inexact","infini","infliger","informer","infusion","inge\u0301rer","inhaler","inhiber","injecter","injure","innocent","inoculer","inonder","inscrire","insecte","insigne","insolite","inspirer","instinct","insulter","intact","intense","intime","intrigue","intuitif","inutile","invasion","inventer","inviter","invoquer","ironique","irradier","irre\u0301el","irriter","isoler","ivoire","ivresse","jaguar","jaillir","jambe","janvier","jardin","jauger","jaune","javelot","jetable","jeton","jeudi","jeunesse","joindre","joncher","jongler","joueur","jouissif","journal","jovial","joyau","joyeux","jubiler","jugement","junior","jupon","juriste","justice","juteux","juve\u0301nile","kayak","kimono","kiosque","label","labial","labourer","lace\u0301rer","lactose","lagune","laine","laisser","laitier","lambeau","lamelle","lampe","lanceur","langage","lanterne","lapin","largeur","larme","laurier","lavabo","lavoir","lecture","le\u0301gal","le\u0301ger","le\u0301gume","lessive","lettre","levier","lexique","le\u0301zard","liasse","libe\u0301rer","libre","licence","licorne","lie\u0300ge","lie\u0300vre","ligature","ligoter","ligue","limer","limite","limonade","limpide","line\u0301aire","lingot","lionceau","liquide","lisie\u0300re","lister","lithium","litige","littoral","livreur","logique","lointain","loisir","lombric","loterie","louer","lourd","loutre","louve","loyal","lubie","lucide","lucratif","lueur","lugubre","luisant","lumie\u0300re","lunaire","lundi","luron","lutter","luxueux","machine","magasin","magenta","magique","maigre","maillon","maintien","mairie","maison","majorer","malaxer","male\u0301fice","malheur","malice","mallette","mammouth","mandater","maniable","manquant","manteau","manuel","marathon","marbre","marchand","mardi","maritime","marqueur","marron","marteler","mascotte","massif","mate\u0301riel","matie\u0300re","matraque","maudire","maussade","mauve","maximal","me\u0301chant","me\u0301connu","me\u0301daille","me\u0301decin","me\u0301diter","me\u0301duse","meilleur","me\u0301lange","me\u0301lodie","membre","me\u0301moire","menacer","mener","menhir","mensonge","mentor","mercredi","me\u0301rite","merle","messager","mesure","me\u0301tal","me\u0301te\u0301ore","me\u0301thode","me\u0301tier","meuble","miauler","microbe","miette","mignon","migrer","milieu","million","mimique","mince","mine\u0301ral","minimal","minorer","minute","miracle","miroiter","missile","mixte","mobile","moderne","moelleux","mondial","moniteur","monnaie","monotone","monstre","montagne","monument","moqueur","morceau","morsure","mortier","moteur","motif","mouche","moufle","moulin","mousson","mouton","mouvant","multiple","munition","muraille","mure\u0300ne","murmure","muscle","muse\u0301um","musicien","mutation","muter","mutuel","myriade","myrtille","myste\u0300re","mythique","nageur","nappe","narquois","narrer","natation","nation","nature","naufrage","nautique","navire","ne\u0301buleux","nectar","ne\u0301faste","ne\u0301gation","ne\u0301gliger","ne\u0301gocier","neige","nerveux","nettoyer","neurone","neutron","neveu","niche","nickel","nitrate","niveau","noble","nocif","nocturne","noirceur","noisette","nomade","nombreux","nommer","normatif","notable","notifier","notoire","nourrir","nouveau","novateur","novembre","novice","nuage","nuancer","nuire","nuisible","nume\u0301ro","nuptial","nuque","nutritif","obe\u0301ir","objectif","obliger","obscur","observer","obstacle","obtenir","obturer","occasion","occuper","oce\u0301an","octobre","octroyer","octupler","oculaire","odeur","odorant","offenser","officier","offrir","ogive","oiseau","oisillon","olfactif","olivier","ombrage","omettre","onctueux","onduler","one\u0301reux","onirique","opale","opaque","ope\u0301rer","opinion","opportun","opprimer","opter","optique","orageux","orange","orbite","ordonner","oreille","organe","orgueil","orifice","ornement","orque","ortie","osciller","osmose","ossature","otarie","ouragan","ourson","outil","outrager","ouvrage","ovation","oxyde","oxyge\u0300ne","ozone","paisible","palace","palmare\u0300s","palourde","palper","panache","panda","pangolin","paniquer","panneau","panorama","pantalon","papaye","papier","papoter","papyrus","paradoxe","parcelle","paresse","parfumer","parler","parole","parrain","parsemer","partager","parure","parvenir","passion","paste\u0300que","paternel","patience","patron","pavillon","pavoiser","payer","paysage","peigne","peintre","pelage","pe\u0301lican","pelle","pelouse","peluche","pendule","pe\u0301ne\u0301trer","pe\u0301nible","pensif","pe\u0301nurie","pe\u0301pite","pe\u0301plum","perdrix","perforer","pe\u0301riode","permuter","perplexe","persil","perte","peser","pe\u0301tale","petit","pe\u0301trir","peuple","pharaon","phobie","phoque","photon","phrase","physique","piano","pictural","pie\u0300ce","pierre","pieuvre","pilote","pinceau","pipette","piquer","pirogue","piscine","piston","pivoter","pixel","pizza","placard","plafond","plaisir","planer","plaque","plastron","plateau","pleurer","plexus","pliage","plomb","plonger","pluie","plumage","pochette","poe\u0301sie","poe\u0300te","pointe","poirier","poisson","poivre","polaire","policier","pollen","polygone","pommade","pompier","ponctuel","ponde\u0301rer","poney","portique","position","posse\u0301der","posture","potager","poteau","potion","pouce","poulain","poumon","pourpre","poussin","pouvoir","prairie","pratique","pre\u0301cieux","pre\u0301dire","pre\u0301fixe","pre\u0301lude","pre\u0301nom","pre\u0301sence","pre\u0301texte","pre\u0301voir","primitif","prince","prison","priver","proble\u0300me","proce\u0301der","prodige","profond","progre\u0300s","proie","projeter","prologue","promener","propre","prospe\u0300re","prote\u0301ger","prouesse","proverbe","prudence","pruneau","psychose","public","puceron","puiser","pulpe","pulsar","punaise","punitif","pupitre","purifier","puzzle","pyramide","quasar","querelle","question","quie\u0301tude","quitter","quotient","racine","raconter","radieux","ragondin","raideur","raisin","ralentir","rallonge","ramasser","rapide","rasage","ratisser","ravager","ravin","rayonner","re\u0301actif","re\u0301agir","re\u0301aliser","re\u0301animer","recevoir","re\u0301citer","re\u0301clamer","re\u0301colter","recruter","reculer","recycler","re\u0301diger","redouter","refaire","re\u0301flexe","re\u0301former","refrain","refuge","re\u0301galien","re\u0301gion","re\u0301glage","re\u0301gulier","re\u0301ite\u0301rer","rejeter","rejouer","relatif","relever","relief","remarque","reme\u0300de","remise","remonter","remplir","remuer","renard","renfort","renifler","renoncer","rentrer","renvoi","replier","reporter","reprise","reptile","requin","re\u0301serve","re\u0301sineux","re\u0301soudre","respect","rester","re\u0301sultat","re\u0301tablir","retenir","re\u0301ticule","retomber","retracer","re\u0301union","re\u0301ussir","revanche","revivre","re\u0301volte","re\u0301vulsif","richesse","rideau","rieur","rigide","rigoler","rincer","riposter","risible","risque","rituel","rival","rivie\u0300re","rocheux","romance","rompre","ronce","rondin","roseau","rosier","rotatif","rotor","rotule","rouge","rouille","rouleau","routine","royaume","ruban","rubis","ruche","ruelle","rugueux","ruiner","ruisseau","ruser","rustique","rythme","sabler","saboter","sabre","sacoche","safari","sagesse","saisir","salade","salive","salon","saluer","samedi","sanction","sanglier","sarcasme","sardine","saturer","saugrenu","saumon","sauter","sauvage","savant","savonner","scalpel","scandale","sce\u0301le\u0301rat","sce\u0301nario","sceptre","sche\u0301ma","science","scinder","score","scrutin","sculpter","se\u0301ance","se\u0301cable","se\u0301cher","secouer","se\u0301cre\u0301ter","se\u0301datif","se\u0301duire","seigneur","se\u0301jour","se\u0301lectif","semaine","sembler","semence","se\u0301minal","se\u0301nateur","sensible","sentence","se\u0301parer","se\u0301quence","serein","sergent","se\u0301rieux","serrure","se\u0301rum","service","se\u0301same","se\u0301vir","sevrage","sextuple","side\u0301ral","sie\u0300cle","sie\u0301ger","siffler","sigle","signal","silence","silicium","simple","since\u0300re","sinistre","siphon","sirop","sismique","situer","skier","social","socle","sodium","soigneux","soldat","soleil","solitude","soluble","sombre","sommeil","somnoler","sonde","songeur","sonnette","sonore","sorcier","sortir","sosie","sottise","soucieux","soudure","souffle","soulever","soupape","source","soutirer","souvenir","spacieux","spatial","spe\u0301cial","sphe\u0300re","spiral","stable","station","sternum","stimulus","stipuler","strict","studieux","stupeur","styliste","sublime","substrat","subtil","subvenir","succe\u0300s","sucre","suffixe","sugge\u0301rer","suiveur","sulfate","superbe","supplier","surface","suricate","surmener","surprise","sursaut","survie","suspect","syllabe","symbole","syme\u0301trie","synapse","syntaxe","syste\u0300me","tabac","tablier","tactile","tailler","talent","talisman","talonner","tambour","tamiser","tangible","tapis","taquiner","tarder","tarif","tartine","tasse","tatami","tatouage","taupe","taureau","taxer","te\u0301moin","temporel","tenaille","tendre","teneur","tenir","tension","terminer","terne","terrible","te\u0301tine","texte","the\u0300me","the\u0301orie","the\u0301rapie","thorax","tibia","tie\u0300de","timide","tirelire","tiroir","tissu","titane","titre","tituber","toboggan","tole\u0301rant","tomate","tonique","tonneau","toponyme","torche","tordre","tornade","torpille","torrent","torse","tortue","totem","toucher","tournage","tousser","toxine","traction","trafic","tragique","trahir","train","trancher","travail","tre\u0300fle","tremper","tre\u0301sor","treuil","triage","tribunal","tricoter","trilogie","triomphe","tripler","triturer","trivial","trombone","tronc","tropical","troupeau","tuile","tulipe","tumulte","tunnel","turbine","tuteur","tutoyer","tuyau","tympan","typhon","typique","tyran","ubuesque","ultime","ultrason","unanime","unifier","union","unique","unitaire","univers","uranium","urbain","urticant","usage","usine","usuel","usure","utile","utopie","vacarme","vaccin","vagabond","vague","vaillant","vaincre","vaisseau","valable","valise","vallon","valve","vampire","vanille","vapeur","varier","vaseux","vassal","vaste","vecteur","vedette","ve\u0301ge\u0301tal","ve\u0301hicule","veinard","ve\u0301loce","vendredi","ve\u0301ne\u0301rer","venger","venimeux","ventouse","verdure","ve\u0301rin","vernir","verrou","verser","vertu","veston","ve\u0301te\u0301ran","ve\u0301tuste","vexant","vexer","viaduc","viande","victoire","vidange","vide\u0301o","vignette","vigueur","vilain","village","vinaigre","violon","vipe\u0300re","virement","virtuose","virus","visage","viseur","vision","visqueux","visuel","vital","vitesse","viticole","vitrine","vivace","vivipare","vocation","voguer","voile","voisin","voiture","volaille","volcan","voltiger","volume","vorace","vortex","voter","vouloir","voyage","voyelle","wagon","xe\u0301non","yacht","ze\u0300bre","ze\u0301nith","zeste","zoologie"]')},2841:e=>{"use strict";e.exports=JSON.parse('["abaco","abbaglio","abbinato","abete","abisso","abolire","abrasivo","abrogato","accadere","accenno","accusato","acetone","achille","acido","acqua","acre","acrilico","acrobata","acuto","adagio","addebito","addome","adeguato","aderire","adipe","adottare","adulare","affabile","affetto","affisso","affranto","aforisma","afoso","africano","agave","agente","agevole","aggancio","agire","agitare","agonismo","agricolo","agrumeto","aguzzo","alabarda","alato","albatro","alberato","albo","albume","alce","alcolico","alettone","alfa","algebra","aliante","alibi","alimento","allagato","allegro","allievo","allodola","allusivo","almeno","alogeno","alpaca","alpestre","altalena","alterno","alticcio","altrove","alunno","alveolo","alzare","amalgama","amanita","amarena","ambito","ambrato","ameba","america","ametista","amico","ammasso","ammenda","ammirare","ammonito","amore","ampio","ampliare","amuleto","anacardo","anagrafe","analista","anarchia","anatra","anca","ancella","ancora","andare","andrea","anello","angelo","angolare","angusto","anima","annegare","annidato","anno","annuncio","anonimo","anticipo","anzi","apatico","apertura","apode","apparire","appetito","appoggio","approdo","appunto","aprile","arabica","arachide","aragosta","araldica","arancio","aratura","arazzo","arbitro","archivio","ardito","arenile","argento","argine","arguto","aria","armonia","arnese","arredato","arringa","arrosto","arsenico","arso","artefice","arzillo","asciutto","ascolto","asepsi","asettico","asfalto","asino","asola","aspirato","aspro","assaggio","asse","assoluto","assurdo","asta","astenuto","astice","astratto","atavico","ateismo","atomico","atono","attesa","attivare","attorno","attrito","attuale","ausilio","austria","autista","autonomo","autunno","avanzato","avere","avvenire","avviso","avvolgere","azione","azoto","azzimo","azzurro","babele","baccano","bacino","baco","badessa","badilata","bagnato","baita","balcone","baldo","balena","ballata","balzano","bambino","bandire","baraonda","barbaro","barca","baritono","barlume","barocco","basilico","basso","batosta","battuto","baule","bava","bavosa","becco","beffa","belgio","belva","benda","benevole","benigno","benzina","bere","berlina","beta","bibita","bici","bidone","bifido","biga","bilancia","bimbo","binocolo","biologo","bipede","bipolare","birbante","birra","biscotto","bisesto","bisnonno","bisonte","bisturi","bizzarro","blando","blatta","bollito","bonifico","bordo","bosco","botanico","bottino","bozzolo","braccio","bradipo","brama","branca","bravura","bretella","brevetto","brezza","briglia","brillante","brindare","broccolo","brodo","bronzina","brullo","bruno","bubbone","buca","budino","buffone","buio","bulbo","buono","burlone","burrasca","bussola","busta","cadetto","caduco","calamaro","calcolo","calesse","calibro","calmo","caloria","cambusa","camerata","camicia","cammino","camola","campale","canapa","candela","cane","canino","canotto","cantina","capace","capello","capitolo","capogiro","cappero","capra","capsula","carapace","carcassa","cardo","carisma","carovana","carretto","cartolina","casaccio","cascata","caserma","caso","cassone","castello","casuale","catasta","catena","catrame","cauto","cavillo","cedibile","cedrata","cefalo","celebre","cellulare","cena","cenone","centesimo","ceramica","cercare","certo","cerume","cervello","cesoia","cespo","ceto","chela","chiaro","chicca","chiedere","chimera","china","chirurgo","chitarra","ciao","ciclismo","cifrare","cigno","cilindro","ciottolo","circa","cirrosi","citrico","cittadino","ciuffo","civetta","civile","classico","clinica","cloro","cocco","codardo","codice","coerente","cognome","collare","colmato","colore","colposo","coltivato","colza","coma","cometa","commando","comodo","computer","comune","conciso","condurre","conferma","congelare","coniuge","connesso","conoscere","consumo","continuo","convegno","coperto","copione","coppia","copricapo","corazza","cordata","coricato","cornice","corolla","corpo","corredo","corsia","cortese","cosmico","costante","cottura","covato","cratere","cravatta","creato","credere","cremoso","crescita","creta","criceto","crinale","crisi","critico","croce","cronaca","crostata","cruciale","crusca","cucire","cuculo","cugino","cullato","cupola","curatore","cursore","curvo","cuscino","custode","dado","daino","dalmata","damerino","daniela","dannoso","danzare","datato","davanti","davvero","debutto","decennio","deciso","declino","decollo","decreto","dedicato","definito","deforme","degno","delegare","delfino","delirio","delta","demenza","denotato","dentro","deposito","derapata","derivare","deroga","descritto","deserto","desiderio","desumere","detersivo","devoto","diametro","dicembre","diedro","difeso","diffuso","digerire","digitale","diluvio","dinamico","dinnanzi","dipinto","diploma","dipolo","diradare","dire","dirotto","dirupo","disagio","discreto","disfare","disgelo","disposto","distanza","disumano","dito","divano","divelto","dividere","divorato","doblone","docente","doganale","dogma","dolce","domato","domenica","dominare","dondolo","dono","dormire","dote","dottore","dovuto","dozzina","drago","druido","dubbio","dubitare","ducale","duna","duomo","duplice","duraturo","ebano","eccesso","ecco","eclissi","economia","edera","edicola","edile","editoria","educare","egemonia","egli","egoismo","egregio","elaborato","elargire","elegante","elencato","eletto","elevare","elfico","elica","elmo","elsa","eluso","emanato","emblema","emesso","emiro","emotivo","emozione","empirico","emulo","endemico","enduro","energia","enfasi","enoteca","entrare","enzima","epatite","epilogo","episodio","epocale","eppure","equatore","erario","erba","erboso","erede","eremita","erigere","ermetico","eroe","erosivo","errante","esagono","esame","esanime","esaudire","esca","esempio","esercito","esibito","esigente","esistere","esito","esofago","esortato","esoso","espanso","espresso","essenza","esso","esteso","estimare","estonia","estroso","esultare","etilico","etnico","etrusco","etto","euclideo","europa","evaso","evidenza","evitato","evoluto","evviva","fabbrica","faccenda","fachiro","falco","famiglia","fanale","fanfara","fango","fantasma","fare","farfalla","farinoso","farmaco","fascia","fastoso","fasullo","faticare","fato","favoloso","febbre","fecola","fede","fegato","felpa","feltro","femmina","fendere","fenomeno","fermento","ferro","fertile","fessura","festivo","fetta","feudo","fiaba","fiducia","fifa","figurato","filo","finanza","finestra","finire","fiore","fiscale","fisico","fiume","flacone","flamenco","flebo","flemma","florido","fluente","fluoro","fobico","focaccia","focoso","foderato","foglio","folata","folclore","folgore","fondente","fonetico","fonia","fontana","forbito","forchetta","foresta","formica","fornaio","foro","fortezza","forzare","fosfato","fosso","fracasso","frana","frassino","fratello","freccetta","frenata","fresco","frigo","frollino","fronde","frugale","frutta","fucilata","fucsia","fuggente","fulmine","fulvo","fumante","fumetto","fumoso","fune","funzione","fuoco","furbo","furgone","furore","fuso","futile","gabbiano","gaffe","galateo","gallina","galoppo","gambero","gamma","garanzia","garbo","garofano","garzone","gasdotto","gasolio","gastrico","gatto","gaudio","gazebo","gazzella","geco","gelatina","gelso","gemello","gemmato","gene","genitore","gennaio","genotipo","gergo","ghepardo","ghiaccio","ghisa","giallo","gilda","ginepro","giocare","gioiello","giorno","giove","girato","girone","gittata","giudizio","giurato","giusto","globulo","glutine","gnomo","gobba","golf","gomito","gommone","gonfio","gonna","governo","gracile","grado","grafico","grammo","grande","grattare","gravoso","grazia","greca","gregge","grifone","grigio","grinza","grotta","gruppo","guadagno","guaio","guanto","guardare","gufo","guidare","ibernato","icona","identico","idillio","idolo","idra","idrico","idrogeno","igiene","ignaro","ignorato","ilare","illeso","illogico","illudere","imballo","imbevuto","imbocco","imbuto","immane","immerso","immolato","impacco","impeto","impiego","importo","impronta","inalare","inarcare","inattivo","incanto","incendio","inchino","incisivo","incluso","incontro","incrocio","incubo","indagine","india","indole","inedito","infatti","infilare","inflitto","ingaggio","ingegno","inglese","ingordo","ingrosso","innesco","inodore","inoltrare","inondato","insano","insetto","insieme","insonnia","insulina","intasato","intero","intonaco","intuito","inumidire","invalido","invece","invito","iperbole","ipnotico","ipotesi","ippica","iride","irlanda","ironico","irrigato","irrorare","isolato","isotopo","isterico","istituto","istrice","italia","iterare","labbro","labirinto","lacca","lacerato","lacrima","lacuna","laddove","lago","lampo","lancetta","lanterna","lardoso","larga","laringe","lastra","latenza","latino","lattuga","lavagna","lavoro","legale","leggero","lembo","lentezza","lenza","leone","lepre","lesivo","lessato","lesto","letterale","leva","levigato","libero","lido","lievito","lilla","limatura","limitare","limpido","lineare","lingua","liquido","lira","lirica","lisca","lite","litigio","livrea","locanda","lode","logica","lombare","londra","longevo","loquace","lorenzo","loto","lotteria","luce","lucidato","lumaca","luminoso","lungo","lupo","luppolo","lusinga","lusso","lutto","macabro","macchina","macero","macinato","madama","magico","maglia","magnete","magro","maiolica","malafede","malgrado","malinteso","malsano","malto","malumore","mana","mancia","mandorla","mangiare","manifesto","mannaro","manovra","mansarda","mantide","manubrio","mappa","maratona","marcire","maretta","marmo","marsupio","maschera","massaia","mastino","materasso","matricola","mattone","maturo","mazurca","meandro","meccanico","mecenate","medesimo","meditare","mega","melassa","melis","melodia","meninge","meno","mensola","mercurio","merenda","merlo","meschino","mese","messere","mestolo","metallo","metodo","mettere","miagolare","mica","micelio","michele","microbo","midollo","miele","migliore","milano","milite","mimosa","minerale","mini","minore","mirino","mirtillo","miscela","missiva","misto","misurare","mitezza","mitigare","mitra","mittente","mnemonico","modello","modifica","modulo","mogano","mogio","mole","molosso","monastero","monco","mondina","monetario","monile","monotono","monsone","montato","monviso","mora","mordere","morsicato","mostro","motivato","motosega","motto","movenza","movimento","mozzo","mucca","mucosa","muffa","mughetto","mugnaio","mulatto","mulinello","multiplo","mummia","munto","muovere","murale","musa","muscolo","musica","mutevole","muto","nababbo","nafta","nanometro","narciso","narice","narrato","nascere","nastrare","naturale","nautica","naviglio","nebulosa","necrosi","negativo","negozio","nemmeno","neofita","neretto","nervo","nessuno","nettuno","neutrale","neve","nevrotico","nicchia","ninfa","nitido","nobile","nocivo","nodo","nome","nomina","nordico","normale","norvegese","nostrano","notare","notizia","notturno","novella","nucleo","nulla","numero","nuovo","nutrire","nuvola","nuziale","oasi","obbedire","obbligo","obelisco","oblio","obolo","obsoleto","occasione","occhio","occidente","occorrere","occultare","ocra","oculato","odierno","odorare","offerta","offrire","offuscato","oggetto","oggi","ognuno","olandese","olfatto","oliato","oliva","ologramma","oltre","omaggio","ombelico","ombra","omega","omissione","ondoso","onere","onice","onnivoro","onorevole","onta","operato","opinione","opposto","oracolo","orafo","ordine","orecchino","orefice","orfano","organico","origine","orizzonte","orma","ormeggio","ornativo","orologio","orrendo","orribile","ortensia","ortica","orzata","orzo","osare","oscurare","osmosi","ospedale","ospite","ossa","ossidare","ostacolo","oste","otite","otre","ottagono","ottimo","ottobre","ovale","ovest","ovino","oviparo","ovocito","ovunque","ovviare","ozio","pacchetto","pace","pacifico","padella","padrone","paese","paga","pagina","palazzina","palesare","pallido","palo","palude","pandoro","pannello","paolo","paonazzo","paprica","parabola","parcella","parere","pargolo","pari","parlato","parola","partire","parvenza","parziale","passivo","pasticca","patacca","patologia","pattume","pavone","peccato","pedalare","pedonale","peggio","peloso","penare","pendice","penisola","pennuto","penombra","pensare","pentola","pepe","pepita","perbene","percorso","perdonato","perforare","pergamena","periodo","permesso","perno","perplesso","persuaso","pertugio","pervaso","pesatore","pesista","peso","pestifero","petalo","pettine","petulante","pezzo","piacere","pianta","piattino","piccino","picozza","piega","pietra","piffero","pigiama","pigolio","pigro","pila","pilifero","pillola","pilota","pimpante","pineta","pinna","pinolo","pioggia","piombo","piramide","piretico","pirite","pirolisi","pitone","pizzico","placebo","planare","plasma","platano","plenario","pochezza","poderoso","podismo","poesia","poggiare","polenta","poligono","pollice","polmonite","polpetta","polso","poltrona","polvere","pomice","pomodoro","ponte","popoloso","porfido","poroso","porpora","porre","portata","posa","positivo","possesso","postulato","potassio","potere","pranzo","prassi","pratica","precluso","predica","prefisso","pregiato","prelievo","premere","prenotare","preparato","presenza","pretesto","prevalso","prima","principe","privato","problema","procura","produrre","profumo","progetto","prolunga","promessa","pronome","proposta","proroga","proteso","prova","prudente","prugna","prurito","psiche","pubblico","pudica","pugilato","pugno","pulce","pulito","pulsante","puntare","pupazzo","pupilla","puro","quadro","qualcosa","quasi","querela","quota","raccolto","raddoppio","radicale","radunato","raffica","ragazzo","ragione","ragno","ramarro","ramingo","ramo","randagio","rantolare","rapato","rapina","rappreso","rasatura","raschiato","rasente","rassegna","rastrello","rata","ravveduto","reale","recepire","recinto","recluta","recondito","recupero","reddito","redimere","regalato","registro","regola","regresso","relazione","remare","remoto","renna","replica","reprimere","reputare","resa","residente","responso","restauro","rete","retina","retorica","rettifica","revocato","riassunto","ribadire","ribelle","ribrezzo","ricarica","ricco","ricevere","riciclato","ricordo","ricreduto","ridicolo","ridurre","rifasare","riflesso","riforma","rifugio","rigare","rigettato","righello","rilassato","rilevato","rimanere","rimbalzo","rimedio","rimorchio","rinascita","rincaro","rinforzo","rinnovo","rinomato","rinsavito","rintocco","rinuncia","rinvenire","riparato","ripetuto","ripieno","riportare","ripresa","ripulire","risata","rischio","riserva","risibile","riso","rispetto","ristoro","risultato","risvolto","ritardo","ritegno","ritmico","ritrovo","riunione","riva","riverso","rivincita","rivolto","rizoma","roba","robotico","robusto","roccia","roco","rodaggio","rodere","roditore","rogito","rollio","romantico","rompere","ronzio","rosolare","rospo","rotante","rotondo","rotula","rovescio","rubizzo","rubrica","ruga","rullino","rumine","rumoroso","ruolo","rupe","russare","rustico","sabato","sabbiare","sabotato","sagoma","salasso","saldatura","salgemma","salivare","salmone","salone","saltare","saluto","salvo","sapere","sapido","saporito","saraceno","sarcasmo","sarto","sassoso","satellite","satira","satollo","saturno","savana","savio","saziato","sbadiglio","sbalzo","sbancato","sbarra","sbattere","sbavare","sbendare","sbirciare","sbloccato","sbocciato","sbrinare","sbruffone","sbuffare","scabroso","scadenza","scala","scambiare","scandalo","scapola","scarso","scatenare","scavato","scelto","scenico","scettro","scheda","schiena","sciarpa","scienza","scindere","scippo","sciroppo","scivolo","sclerare","scodella","scolpito","scomparto","sconforto","scoprire","scorta","scossone","scozzese","scriba","scrollare","scrutinio","scuderia","scultore","scuola","scuro","scusare","sdebitare","sdoganare","seccatura","secondo","sedano","seggiola","segnalato","segregato","seguito","selciato","selettivo","sella","selvaggio","semaforo","sembrare","seme","seminato","sempre","senso","sentire","sepolto","sequenza","serata","serbato","sereno","serio","serpente","serraglio","servire","sestina","setola","settimana","sfacelo","sfaldare","sfamato","sfarzoso","sfaticato","sfera","sfida","sfilato","sfinge","sfocato","sfoderare","sfogo","sfoltire","sforzato","sfratto","sfruttato","sfuggito","sfumare","sfuso","sgabello","sgarbato","sgonfiare","sgorbio","sgrassato","sguardo","sibilo","siccome","sierra","sigla","signore","silenzio","sillaba","simbolo","simpatico","simulato","sinfonia","singolo","sinistro","sino","sintesi","sinusoide","sipario","sisma","sistole","situato","slitta","slogatura","sloveno","smarrito","smemorato","smentito","smeraldo","smilzo","smontare","smottato","smussato","snellire","snervato","snodo","sobbalzo","sobrio","soccorso","sociale","sodale","soffitto","sogno","soldato","solenne","solido","sollazzo","solo","solubile","solvente","somatico","somma","sonda","sonetto","sonnifero","sopire","soppeso","sopra","sorgere","sorpasso","sorriso","sorso","sorteggio","sorvolato","sospiro","sosta","sottile","spada","spalla","spargere","spatola","spavento","spazzola","specie","spedire","spegnere","spelatura","speranza","spessore","spettrale","spezzato","spia","spigoloso","spillato","spinoso","spirale","splendido","sportivo","sposo","spranga","sprecare","spronato","spruzzo","spuntino","squillo","sradicare","srotolato","stabile","stacco","staffa","stagnare","stampato","stantio","starnuto","stasera","statuto","stelo","steppa","sterzo","stiletto","stima","stirpe","stivale","stizzoso","stonato","storico","strappo","stregato","stridulo","strozzare","strutto","stuccare","stufo","stupendo","subentro","succoso","sudore","suggerito","sugo","sultano","suonare","superbo","supporto","surgelato","surrogato","sussurro","sutura","svagare","svedese","sveglio","svelare","svenuto","svezia","sviluppo","svista","svizzera","svolta","svuotare","tabacco","tabulato","tacciare","taciturno","tale","talismano","tampone","tannino","tara","tardivo","targato","tariffa","tarpare","tartaruga","tasto","tattico","taverna","tavolata","tazza","teca","tecnico","telefono","temerario","tempo","temuto","tendone","tenero","tensione","tentacolo","teorema","terme","terrazzo","terzetto","tesi","tesserato","testato","tetro","tettoia","tifare","tigella","timbro","tinto","tipico","tipografo","tiraggio","tiro","titanio","titolo","titubante","tizio","tizzone","toccare","tollerare","tolto","tombola","tomo","tonfo","tonsilla","topazio","topologia","toppa","torba","tornare","torrone","tortora","toscano","tossire","tostatura","totano","trabocco","trachea","trafila","tragedia","tralcio","tramonto","transito","trapano","trarre","trasloco","trattato","trave","treccia","tremolio","trespolo","tributo","tricheco","trifoglio","trillo","trincea","trio","tristezza","triturato","trivella","tromba","trono","troppo","trottola","trovare","truccato","tubatura","tuffato","tulipano","tumulto","tunisia","turbare","turchino","tuta","tutela","ubicato","uccello","uccisore","udire","uditivo","uffa","ufficio","uguale","ulisse","ultimato","umano","umile","umorismo","uncinetto","ungere","ungherese","unicorno","unificato","unisono","unitario","unte","uovo","upupa","uragano","urgenza","urlo","usanza","usato","uscito","usignolo","usuraio","utensile","utilizzo","utopia","vacante","vaccinato","vagabondo","vagliato","valanga","valgo","valico","valletta","valoroso","valutare","valvola","vampata","vangare","vanitoso","vano","vantaggio","vanvera","vapore","varano","varcato","variante","vasca","vedetta","vedova","veduto","vegetale","veicolo","velcro","velina","velluto","veloce","venato","vendemmia","vento","verace","verbale","vergogna","verifica","vero","verruca","verticale","vescica","vessillo","vestale","veterano","vetrina","vetusto","viandante","vibrante","vicenda","vichingo","vicinanza","vidimare","vigilia","vigneto","vigore","vile","villano","vimini","vincitore","viola","vipera","virgola","virologo","virulento","viscoso","visione","vispo","vissuto","visura","vita","vitello","vittima","vivanda","vivido","viziare","voce","voga","volatile","volere","volpe","voragine","vulcano","zampogna","zanna","zappato","zattera","zavorra","zefiro","zelante","zelo","zenzero","zerbino","zibetto","zinco","zircone","zitto","zolla","zotico","zucchero","zufolo","zulu","zuppa"]')},4472:e=>{"use strict";e.exports=JSON.parse('["\u3042\u3044\u3053\u304f\u3057\u3093","\u3042\u3044\u3055\u3064","\u3042\u3044\u305f\u3099","\u3042\u304a\u305d\u3099\u3089","\u3042\u304b\u3061\u3083\u3093","\u3042\u304d\u308b","\u3042\u3051\u304b\u3099\u305f","\u3042\u3051\u308b","\u3042\u3053\u304b\u3099\u308c\u308b","\u3042\u3055\u3044","\u3042\u3055\u3072","\u3042\u3057\u3042\u3068","\u3042\u3057\u3099\u308f\u3046","\u3042\u3059\u3099\u304b\u308b","\u3042\u3059\u3099\u304d","\u3042\u305d\u3075\u3099","\u3042\u305f\u3048\u308b","\u3042\u305f\u305f\u3081\u308b","\u3042\u305f\u308a\u307e\u3048","\u3042\u305f\u308b","\u3042\u3064\u3044","\u3042\u3064\u304b\u3046","\u3042\u3063\u3057\u3085\u304f","\u3042\u3064\u307e\u308a","\u3042\u3064\u3081\u308b","\u3042\u3066\u306a","\u3042\u3066\u306f\u307e\u308b","\u3042\u3072\u308b","\u3042\u3075\u3099\u3089","\u3042\u3075\u3099\u308b","\u3042\u3075\u308c\u308b","\u3042\u307e\u3044","\u3042\u307e\u3068\u3099","\u3042\u307e\u3084\u304b\u3059","\u3042\u307e\u308a","\u3042\u307f\u3082\u306e","\u3042\u3081\u308a\u304b","\u3042\u3084\u307e\u308b","\u3042\u3086\u3080","\u3042\u3089\u3044\u304f\u3099\u307e","\u3042\u3089\u3057","\u3042\u3089\u3059\u3057\u3099","\u3042\u3089\u305f\u3081\u308b","\u3042\u3089\u3086\u308b","\u3042\u3089\u308f\u3059","\u3042\u308a\u304b\u3099\u3068\u3046","\u3042\u308f\u305b\u308b","\u3042\u308f\u3066\u308b","\u3042\u3093\u3044","\u3042\u3093\u304b\u3099\u3044","\u3042\u3093\u3053","\u3042\u3093\u305b\u3099\u3093","\u3042\u3093\u3066\u3044","\u3042\u3093\u306a\u3044","\u3042\u3093\u307e\u308a","\u3044\u3044\u305f\u3099\u3059","\u3044\u304a\u3093","\u3044\u304b\u3099\u3044","\u3044\u304b\u3099\u304f","\u3044\u304d\u304a\u3044","\u3044\u304d\u306a\u308a","\u3044\u304d\u3082\u306e","\u3044\u304d\u308b","\u3044\u304f\u3057\u3099","\u3044\u304f\u3075\u3099\u3093","\u3044\u3051\u306f\u3099\u306a","\u3044\u3051\u3093","\u3044\u3053\u3046","\u3044\u3053\u304f","\u3044\u3053\u3064","\u3044\u3055\u307e\u3057\u3044","\u3044\u3055\u3093","\u3044\u3057\u304d","\u3044\u3057\u3099\u3085\u3046","\u3044\u3057\u3099\u3087\u3046","\u3044\u3057\u3099\u308f\u308b","\u3044\u3059\u3099\u307f","\u3044\u3059\u3099\u308c","\u3044\u305b\u3044","\u3044\u305b\u3048\u3072\u3099","\u3044\u305b\u304b\u3044","\u3044\u305b\u304d","\u3044\u305b\u3099\u3093","\u3044\u305d\u3046\u308d\u3046","\u3044\u305d\u304b\u3099\u3057\u3044","\u3044\u305f\u3099\u3044","\u3044\u305f\u3099\u304f","\u3044\u305f\u3059\u3099\u3089","\u3044\u305f\u307f","\u3044\u305f\u308a\u3042","\u3044\u3061\u304a\u3046","\u3044\u3061\u3057\u3099","\u3044\u3061\u3068\u3099","\u3044\u3061\u306f\u3099","\u3044\u3061\u3075\u3099","\u3044\u3061\u308a\u3085\u3046","\u3044\u3064\u304b","\u3044\u3063\u3057\u3085\u3093","\u3044\u3063\u305b\u3044","\u3044\u3063\u305d\u3046","\u3044\u3063\u305f\u3093","\u3044\u3063\u3061","\u3044\u3063\u3066\u3044","\u3044\u3063\u307b\u309a\u3046","\u3044\u3066\u3055\u3099","\u3044\u3066\u3093","\u3044\u3068\u3099\u3046","\u3044\u3068\u3053","\u3044\u306a\u3044","\u3044\u306a\u304b","\u3044\u306d\u3080\u308a","\u3044\u306e\u3061","\u3044\u306e\u308b","\u3044\u306f\u3064","\u3044\u306f\u3099\u308b","\u3044\u306f\u3093","\u3044\u3072\u3099\u304d","\u3044\u3072\u3093","\u3044\u3075\u304f","\u3044\u3078\u3093","\u3044\u307b\u3046","\u3044\u307f\u3093","\u3044\u3082\u3046\u3068","\u3044\u3082\u305f\u308c","\u3044\u3082\u308a","\u3044\u3084\u304b\u3099\u308b","\u3044\u3084\u3059","\u3044\u3088\u304b\u3093","\u3044\u3088\u304f","\u3044\u3089\u3044","\u3044\u3089\u3059\u3068","\u3044\u308a\u304f\u3099\u3061","\u3044\u308a\u3087\u3046","\u3044\u308c\u3044","\u3044\u308c\u3082\u306e","\u3044\u308c\u308b","\u3044\u308d\u3048\u3093\u3072\u309a\u3064","\u3044\u308f\u3044","\u3044\u308f\u3046","\u3044\u308f\u304b\u3093","\u3044\u308f\u306f\u3099","\u3044\u308f\u3086\u308b","\u3044\u3093\u3051\u3099\u3093\u307e\u3081","\u3044\u3093\u3055\u3064","\u3044\u3093\u3057\u3087\u3046","\u3044\u3093\u3088\u3046","\u3046\u3048\u304d","\u3046\u3048\u308b","\u3046\u304a\u3055\u3099","\u3046\u304b\u3099\u3044","\u3046\u304b\u3075\u3099","\u3046\u304b\u3078\u3099\u308b","\u3046\u304d\u308f","\u3046\u304f\u3089\u3044\u306a","\u3046\u304f\u308c\u308c","\u3046\u3051\u305f\u307e\u308f\u308b","\u3046\u3051\u3064\u3051","\u3046\u3051\u3068\u308b","\u3046\u3051\u3082\u3064","\u3046\u3051\u308b","\u3046\u3053\u3099\u304b\u3059","\u3046\u3053\u3099\u304f","\u3046\u3053\u3093","\u3046\u3055\u304d\u3099","\u3046\u3057\u306a\u3046","\u3046\u3057\u308d\u304b\u3099\u307f","\u3046\u3059\u3044","\u3046\u3059\u304d\u3099","\u3046\u3059\u304f\u3099\u3089\u3044","\u3046\u3059\u3081\u308b","\u3046\u305b\u3064","\u3046\u3061\u3042\u308f\u305b","\u3046\u3061\u304b\u3099\u308f","\u3046\u3061\u304d","\u3046\u3061\u3085\u3046","\u3046\u3063\u304b\u308a","\u3046\u3064\u304f\u3057\u3044","\u3046\u3063\u305f\u3048\u308b","\u3046\u3064\u308b","\u3046\u3068\u3099\u3093","\u3046\u306a\u304d\u3099","\u3046\u306a\u3057\u3099","\u3046\u306a\u3059\u3099\u304f","\u3046\u306a\u308b","\u3046\u306d\u308b","\u3046\u306e\u3046","\u3046\u3075\u3099\u3051\u3099","\u3046\u3075\u3099\u3053\u3099\u3048","\u3046\u307e\u308c\u308b","\u3046\u3081\u308b","\u3046\u3082\u3046","\u3046\u3084\u307e\u3046","\u3046\u3088\u304f","\u3046\u3089\u304b\u3099\u3048\u3059","\u3046\u3089\u304f\u3099\u3061","\u3046\u3089\u306a\u3044","\u3046\u308a\u3042\u3051\u3099","\u3046\u308a\u304d\u308c","\u3046\u308b\u3055\u3044","\u3046\u308c\u3057\u3044","\u3046\u308c\u3086\u304d","\u3046\u308c\u308b","\u3046\u308d\u3053","\u3046\u308f\u304d","\u3046\u308f\u3055","\u3046\u3093\u3053\u3046","\u3046\u3093\u3061\u3093","\u3046\u3093\u3066\u3093","\u3046\u3093\u3068\u3099\u3046","\u3048\u3044\u3048\u3093","\u3048\u3044\u304b\u3099","\u3048\u3044\u304d\u3087\u3046","\u3048\u3044\u3053\u3099","\u3048\u3044\u305b\u3044","\u3048\u3044\u3075\u3099\u3093","\u3048\u3044\u3088\u3046","\u3048\u3044\u308f","\u3048\u304a\u308a","\u3048\u304b\u3099\u304a","\u3048\u304b\u3099\u304f","\u3048\u304d\u305f\u3044","\u3048\u304f\u305b\u308b","\u3048\u3057\u3083\u304f","\u3048\u3059\u3066","\u3048\u3064\u3089\u3093","\u3048\u306e\u304f\u3099","\u3048\u307b\u3046\u307e\u304d","\u3048\u307b\u3093","\u3048\u307e\u304d","\u3048\u3082\u3057\u3099","\u3048\u3082\u306e","\u3048\u3089\u3044","\u3048\u3089\u3075\u3099","\u3048\u308a\u3042","\u3048\u3093\u3048\u3093","\u3048\u3093\u304b\u3044","\u3048\u3093\u304d\u3099","\u3048\u3093\u3051\u3099\u304d","\u3048\u3093\u3057\u3085\u3046","\u3048\u3093\u305b\u3099\u3064","\u3048\u3093\u305d\u304f","\u3048\u3093\u3061\u3087\u3046","\u3048\u3093\u3068\u3064","\u304a\u3044\u304b\u3051\u308b","\u304a\u3044\u3053\u3059","\u304a\u3044\u3057\u3044","\u304a\u3044\u3064\u304f","\u304a\u3046\u3048\u3093","\u304a\u3046\u3055\u307e","\u304a\u3046\u3057\u3099","\u304a\u3046\u305b\u3064","\u304a\u3046\u305f\u3044","\u304a\u3046\u3075\u304f","\u304a\u3046\u3078\u3099\u3044","\u304a\u3046\u3088\u3046","\u304a\u3048\u308b","\u304a\u304a\u3044","\u304a\u304a\u3046","\u304a\u304a\u3068\u3099\u304a\u308a","\u304a\u304a\u3084","\u304a\u304a\u3088\u305d","\u304a\u304b\u3048\u308a","\u304a\u304b\u3059\u3099","\u304a\u304b\u3099\u3080","\u304a\u304b\u308f\u308a","\u304a\u304d\u3099\u306a\u3046","\u304a\u304d\u308b","\u304a\u304f\u3055\u307e","\u304a\u304f\u3057\u3099\u3087\u3046","\u304a\u304f\u308a\u304b\u3099\u306a","\u304a\u304f\u308b","\u304a\u304f\u308c\u308b","\u304a\u3053\u3059","\u304a\u3053\u306a\u3046","\u304a\u3053\u308b","\u304a\u3055\u3048\u308b","\u304a\u3055\u306a\u3044","\u304a\u3055\u3081\u308b","\u304a\u3057\u3044\u308c","\u304a\u3057\u3048\u308b","\u304a\u3057\u3099\u304d\u3099","\u304a\u3057\u3099\u3055\u3093","\u304a\u3057\u3083\u308c","\u304a\u305d\u3089\u304f","\u304a\u305d\u308f\u308b","\u304a\u305f\u304b\u3099\u3044","\u304a\u305f\u304f","\u304a\u305f\u3099\u3084\u304b","\u304a\u3061\u3064\u304f","\u304a\u3063\u3068","\u304a\u3064\u308a","\u304a\u3066\u3099\u304b\u3051","\u304a\u3068\u3057\u3082\u306e","\u304a\u3068\u306a\u3057\u3044","\u304a\u3068\u3099\u308a","\u304a\u3068\u3099\u308d\u304b\u3059","\u304a\u306f\u3099\u3055\u3093","\u304a\u307e\u3044\u308a","\u304a\u3081\u3066\u3099\u3068\u3046","\u304a\u3082\u3044\u3066\u3099","\u304a\u3082\u3046","\u304a\u3082\u305f\u3044","\u304a\u3082\u3061\u3083","\u304a\u3084\u3064","\u304a\u3084\u3086\u3072\u3099","\u304a\u3088\u307b\u3099\u3059","\u304a\u3089\u3093\u305f\u3099","\u304a\u308d\u3059","\u304a\u3093\u304b\u3099\u304f","\u304a\u3093\u3051\u3044","\u304a\u3093\u3057\u3083","\u304a\u3093\u305b\u3093","\u304a\u3093\u305f\u3099\u3093","\u304a\u3093\u3061\u3085\u3046","\u304a\u3093\u3068\u3099\u3051\u3044","\u304b\u3042\u3064","\u304b\u3044\u304b\u3099","\u304b\u3099\u3044\u304d","\u304b\u3099\u3044\u3051\u3093","\u304b\u3099\u3044\u3053\u3046","\u304b\u3044\u3055\u3064","\u304b\u3044\u3057\u3083","\u304b\u3044\u3059\u3044\u3088\u304f","\u304b\u3044\u305b\u3099\u3093","\u304b\u3044\u305d\u3099\u3046\u3068\u3099","\u304b\u3044\u3064\u3046","\u304b\u3044\u3066\u3093","\u304b\u3044\u3068\u3046","\u304b\u3044\u3075\u304f","\u304b\u3099\u3044\u3078\u304d","\u304b\u3044\u307b\u3046","\u304b\u3044\u3088\u3046","\u304b\u3099\u3044\u3089\u3044","\u304b\u3044\u308f","\u304b\u3048\u308b","\u304b\u304a\u308a","\u304b\u304b\u3048\u308b","\u304b\u304b\u3099\u304f","\u304b\u304b\u3099\u3057","\u304b\u304b\u3099\u307f","\u304b\u304f\u3053\u3099","\u304b\u304f\u3068\u304f","\u304b\u3055\u3099\u308b","\u304b\u3099\u305d\u3099\u3046","\u304b\u305f\u3044","\u304b\u305f\u3061","\u304b\u3099\u3061\u3087\u3046","\u304b\u3099\u3063\u304d\u3085\u3046","\u304b\u3099\u3063\u3053\u3046","\u304b\u3099\u3063\u3055\u3093","\u304b\u3099\u3063\u3057\u3087\u3046","\u304b\u306a\u3055\u3099\u308f\u3057","\u304b\u306e\u3046","\u304b\u3099\u306f\u304f","\u304b\u3075\u3099\u304b","\u304b\u307b\u3046","\u304b\u307b\u3053\u3099","\u304b\u307e\u3046","\u304b\u307e\u307b\u3099\u3053","\u304b\u3081\u308c\u304a\u3093","\u304b\u3086\u3044","\u304b\u3088\u3046\u3072\u3099","\u304b\u3089\u3044","\u304b\u308b\u3044","\u304b\u308d\u3046","\u304b\u308f\u304f","\u304b\u308f\u3089","\u304b\u3099\u3093\u304b","\u304b\u3093\u3051\u3044","\u304b\u3093\u3053\u3046","\u304b\u3093\u3057\u3083","\u304b\u3093\u305d\u3046","\u304b\u3093\u305f\u3093","\u304b\u3093\u3061","\u304b\u3099\u3093\u306f\u3099\u308b","\u304d\u3042\u3044","\u304d\u3042\u3064","\u304d\u3044\u308d","\u304d\u3099\u3044\u3093","\u304d\u3046\u3044","\u304d\u3046\u3093","\u304d\u3048\u308b","\u304d\u304a\u3046","\u304d\u304a\u304f","\u304d\u304a\u3061","\u304d\u304a\u3093","\u304d\u304b\u3044","\u304d\u304b\u304f","\u304d\u304b\u3093\u3057\u3083","\u304d\u304d\u3066","\u304d\u304f\u306f\u3099\u308a","\u304d\u304f\u3089\u3051\u3099","\u304d\u3051\u3093\u305b\u3044","\u304d\u3053\u3046","\u304d\u3053\u3048\u308b","\u304d\u3053\u304f","\u304d\u3055\u3044","\u304d\u3055\u304f","\u304d\u3055\u307e","\u304d\u3055\u3089\u304d\u3099","\u304d\u3099\u3057\u3099\u304b\u304b\u3099\u304f","\u304d\u3099\u3057\u304d","\u304d\u3099\u3057\u3099\u305f\u3044\u3051\u3093","\u304d\u3099\u3057\u3099\u306b\u3063\u3066\u3044","\u304d\u3099\u3057\u3099\u3085\u3064\u3057\u3083","\u304d\u3059\u3046","\u304d\u305b\u3044","\u304d\u305b\u304d","\u304d\u305b\u3064","\u304d\u305d\u3046","\u304d\u305d\u3099\u304f","\u304d\u305d\u3099\u3093","\u304d\u305f\u3048\u308b","\u304d\u3061\u3087\u3046","\u304d\u3064\u3048\u3093","\u304d\u3099\u3063\u3061\u308a","\u304d\u3064\u3064\u304d","\u304d\u3064\u306d","\u304d\u3066\u3044","\u304d\u3068\u3099\u3046","\u304d\u3068\u3099\u304f","\u304d\u306a\u3044","\u304d\u306a\u304b\u3099","\u304d\u306a\u3053","\u304d\u306c\u3053\u3099\u3057","\u304d\u306d\u3093","\u304d\u306e\u3046","\u304d\u306e\u3057\u305f","\u304d\u306f\u304f","\u304d\u3072\u3099\u3057\u3044","\u304d\u3072\u3093","\u304d\u3075\u304f","\u304d\u3075\u3099\u3093","\u304d\u307b\u3099\u3046","\u304d\u307b\u3093","\u304d\u307e\u308b","\u304d\u307f\u3064","\u304d\u3080\u3059\u3099\u304b\u3057\u3044","\u304d\u3081\u308b","\u304d\u3082\u305f\u3099\u3081\u3057","\u304d\u3082\u3061","\u304d\u3082\u306e","\u304d\u3083\u304f","\u304d\u3084\u304f","\u304d\u3099\u3085\u3046\u306b\u304f","\u304d\u3088\u3046","\u304d\u3087\u3046\u308a\u3085\u3046","\u304d\u3089\u3044","\u304d\u3089\u304f","\u304d\u308a\u3093","\u304d\u308c\u3044","\u304d\u308c\u3064","\u304d\u308d\u304f","\u304d\u3099\u308d\u3093","\u304d\u308f\u3081\u308b","\u304d\u3099\u3093\u3044\u308d","\u304d\u3093\u304b\u304f\u3057\u3099","\u304d\u3093\u3057\u3099\u3087","\u304d\u3093\u3088\u3046\u3072\u3099","\u304f\u3099\u3042\u3044","\u304f\u3044\u3059\u3099","\u304f\u3046\u304b\u3093","\u304f\u3046\u304d","\u304f\u3046\u304f\u3099\u3093","\u304f\u3046\u3053\u3046","\u304f\u3099\u3046\u305b\u3044","\u304f\u3046\u305d\u3046","\u304f\u3099\u3046\u305f\u3089","\u304f\u3046\u3075\u304f","\u304f\u3046\u307b\u3099","\u304f\u304b\u3093","\u304f\u304d\u3087\u3046","\u304f\u3051\u3099\u3093","\u304f\u3099\u3053\u3046","\u304f\u3055\u3044","\u304f\u3055\u304d","\u304f\u3055\u306f\u3099\u306a","\u304f\u3055\u308b","\u304f\u3057\u3083\u307f","\u304f\u3057\u3087\u3046","\u304f\u3059\u306e\u304d","\u304f\u3059\u308a\u3086\u3072\u3099","\u304f\u305b\u3051\u3099","\u304f\u305b\u3093","\u304f\u3099\u305f\u3044\u3066\u304d","\u304f\u305f\u3099\u3055\u308b","\u304f\u305f\u3072\u3099\u308c\u308b","\u304f\u3061\u3053\u307f","\u304f\u3061\u3055\u304d","\u304f\u3064\u3057\u305f","\u304f\u3099\u3063\u3059\u308a","\u304f\u3064\u308d\u304f\u3099","\u304f\u3068\u3046\u3066\u3093","\u304f\u3068\u3099\u304f","\u304f\u306a\u3093","\u304f\u306d\u304f\u306d","\u304f\u306e\u3046","\u304f\u3075\u3046","\u304f\u307f\u3042\u308f\u305b","\u304f\u307f\u305f\u3066\u308b","\u304f\u3081\u308b","\u304f\u3084\u304f\u3057\u3087","\u304f\u3089\u3059","\u304f\u3089\u3078\u3099\u308b","\u304f\u308b\u307e","\u304f\u308c\u308b","\u304f\u308d\u3046","\u304f\u308f\u3057\u3044","\u304f\u3099\u3093\u304b\u3093","\u304f\u3099\u3093\u3057\u3087\u304f","\u304f\u3099\u3093\u305f\u3044","\u304f\u3099\u3093\u3066","\u3051\u3042\u306a","\u3051\u3044\u304b\u304f","\u3051\u3044\u3051\u3093","\u3051\u3044\u3053","\u3051\u3044\u3055\u3064","\u3051\u3099\u3044\u3057\u3099\u3085\u3064","\u3051\u3044\u305f\u3044","\u3051\u3099\u3044\u306e\u3046\u3057\u3099\u3093","\u3051\u3044\u308c\u304d","\u3051\u3044\u308d","\u3051\u304a\u3068\u3059","\u3051\u304a\u308a\u3082\u306e","\u3051\u3099\u304d\u304b","\u3051\u3099\u304d\u3051\u3099\u3093","\u3051\u3099\u304d\u305f\u3099\u3093","\u3051\u3099\u304d\u3061\u3093","\u3051\u3099\u304d\u3068\u3064","\u3051\u3099\u304d\u306f","\u3051\u3099\u304d\u3084\u304f","\u3051\u3099\u3053\u3046","\u3051\u3099\u3053\u304f\u3057\u3099\u3087\u3046","\u3051\u3099\u3055\u3099\u3044","\u3051\u3055\u304d","\u3051\u3099\u3055\u3099\u3093","\u3051\u3057\u304d","\u3051\u3057\u3053\u3099\u3080","\u3051\u3057\u3087\u3046","\u3051\u3099\u3059\u3068","\u3051\u305f\u306f\u3099","\u3051\u3061\u3083\u3063\u3075\u309a","\u3051\u3061\u3089\u3059","\u3051\u3064\u3042\u3064","\u3051\u3064\u3044","\u3051\u3064\u3048\u304d","\u3051\u3063\u3053\u3093","\u3051\u3064\u3057\u3099\u3087","\u3051\u3063\u305b\u304d","\u3051\u3063\u3066\u3044","\u3051\u3064\u307e\u3064","\u3051\u3099\u3064\u3088\u3046\u3072\u3099","\u3051\u3099\u3064\u308c\u3044","\u3051\u3064\u308d\u3093","\u3051\u3099\u3068\u3099\u304f","\u3051\u3068\u306f\u3099\u3059","\u3051\u3068\u308b","\u3051\u306a\u3051\u3099","\u3051\u306a\u3059","\u3051\u306a\u307f","\u3051\u306c\u304d","\u3051\u3099\u306d\u3064","\u3051\u306d\u3093","\u3051\u306f\u3044","\u3051\u3099\u3072\u3093","\u3051\u3075\u3099\u304b\u3044","\u3051\u3099\u307b\u3099\u304f","\u3051\u307e\u308a","\u3051\u307f\u304b\u308b","\u3051\u3080\u3057","\u3051\u3080\u308a","\u3051\u3082\u306e","\u3051\u3089\u3044","\u3051\u308d\u3051\u308d","\u3051\u308f\u3057\u3044","\u3051\u3093\u3044","\u3051\u3093\u3048\u3064","\u3051\u3093\u304a","\u3051\u3093\u304b","\u3051\u3099\u3093\u304d","\u3051\u3093\u3051\u3099\u3093","\u3051\u3093\u3053\u3046","\u3051\u3093\u3055\u304f","\u3051\u3093\u3057\u3085\u3046","\u3051\u3093\u3059\u3046","\u3051\u3099\u3093\u305d\u3046","\u3051\u3093\u3061\u304f","\u3051\u3093\u3066\u3044","\u3051\u3093\u3068\u3046","\u3051\u3093\u306a\u3044","\u3051\u3093\u306b\u3093","\u3051\u3099\u3093\u3075\u3099\u3064","\u3051\u3093\u307e","\u3051\u3093\u307f\u3093","\u3051\u3093\u3081\u3044","\u3051\u3093\u3089\u3093","\u3051\u3093\u308a","\u3053\u3042\u304f\u307e","\u3053\u3044\u306c","\u3053\u3044\u3072\u3099\u3068","\u3053\u3099\u3046\u3044","\u3053\u3046\u3048\u3093","\u3053\u3046\u304a\u3093","\u3053\u3046\u304b\u3093","\u3053\u3099\u3046\u304d\u3085\u3046","\u3053\u3099\u3046\u3051\u3044","\u3053\u3046\u3053\u3046","\u3053\u3046\u3055\u3044","\u3053\u3046\u3057\u3099","\u3053\u3046\u3059\u3044","\u3053\u3099\u3046\u305b\u3044","\u3053\u3046\u305d\u304f","\u3053\u3046\u305f\u3044","\u3053\u3046\u3061\u3083","\u3053\u3046\u3064\u3046","\u3053\u3046\u3066\u3044","\u3053\u3046\u3068\u3099\u3046","\u3053\u3046\u306a\u3044","\u3053\u3046\u306f\u3044","\u3053\u3099\u3046\u307b\u3046","\u3053\u3099\u3046\u307e\u3093","\u3053\u3046\u3082\u304f","\u3053\u3046\u308a\u3064","\u3053\u3048\u308b","\u3053\u304a\u308a","\u3053\u3099\u304b\u3044","\u3053\u3099\u304b\u3099\u3064","\u3053\u3099\u304b\u3093","\u3053\u304f\u3053\u3099","\u3053\u304f\u3055\u3044","\u3053\u304f\u3068\u3046","\u3053\u304f\u306a\u3044","\u3053\u304f\u306f\u304f","\u3053\u304f\u3099\u307e","\u3053\u3051\u3044","\u3053\u3051\u308b","\u3053\u3053\u306e\u304b","\u3053\u3053\u308d","\u3053\u3055\u3081","\u3053\u3057\u3064","\u3053\u3059\u3046","\u3053\u305b\u3044","\u3053\u305b\u304d","\u3053\u305b\u3099\u3093","\u3053\u305d\u305f\u3099\u3066","\u3053\u305f\u3044","\u3053\u305f\u3048\u308b","\u3053\u305f\u3064","\u3053\u3061\u3087\u3046","\u3053\u3063\u304b","\u3053\u3064\u3053\u3064","\u3053\u3064\u306f\u3099\u3093","\u3053\u3064\u3075\u3099","\u3053\u3066\u3044","\u3053\u3066\u3093","\u3053\u3068\u304b\u3099\u3089","\u3053\u3068\u3057","\u3053\u3068\u306f\u3099","\u3053\u3068\u308a","\u3053\u306a\u3053\u3099\u306a","\u3053\u306d\u3053\u306d","\u3053\u306e\u307e\u307e","\u3053\u306e\u307f","\u3053\u306e\u3088","\u3053\u3099\u306f\u3093","\u3053\u3072\u3064\u3057\u3099","\u3053\u3075\u3046","\u3053\u3075\u3093","\u3053\u307b\u3099\u308c\u308b","\u3053\u3099\u307e\u3042\u3075\u3099\u3089","\u3053\u307e\u304b\u3044","\u3053\u3099\u307e\u3059\u308a","\u3053\u307e\u3064\u306a","\u3053\u307e\u308b","\u3053\u3080\u304d\u3099\u3053","\u3053\u3082\u3057\u3099","\u3053\u3082\u3061","\u3053\u3082\u306e","\u3053\u3082\u3093","\u3053\u3084\u304f","\u3053\u3084\u307e","\u3053\u3086\u3046","\u3053\u3086\u3072\u3099","\u3053\u3088\u3044","\u3053\u3088\u3046","\u3053\u308a\u308b","\u3053\u308c\u304f\u3057\u3087\u3093","\u3053\u308d\u3063\u3051","\u3053\u308f\u3082\u3066","\u3053\u308f\u308c\u308b","\u3053\u3093\u3044\u3093","\u3053\u3093\u304b\u3044","\u3053\u3093\u304d","\u3053\u3093\u3057\u3085\u3046","\u3053\u3093\u3059\u3044","\u3053\u3093\u305f\u3099\u3066","\u3053\u3093\u3068\u3093","\u3053\u3093\u306a\u3093","\u3053\u3093\u3072\u3099\u306b","\u3053\u3093\u307b\u309a\u3093","\u3053\u3093\u307e\u3051","\u3053\u3093\u3084","\u3053\u3093\u308c\u3044","\u3053\u3093\u308f\u304f","\u3055\u3099\u3044\u3048\u304d","\u3055\u3044\u304b\u3044","\u3055\u3044\u304d\u3093","\u3055\u3099\u3044\u3051\u3099\u3093","\u3055\u3099\u3044\u3053","\u3055\u3044\u3057\u3087","\u3055\u3044\u305b\u3044","\u3055\u3099\u3044\u305f\u304f","\u3055\u3099\u3044\u3061\u3085\u3046","\u3055\u3044\u3066\u304d","\u3055\u3099\u3044\u308a\u3087\u3046","\u3055\u3046\u306a","\u3055\u304b\u3044\u3057","\u3055\u304b\u3099\u3059","\u3055\u304b\u306a","\u3055\u304b\u307f\u3061","\u3055\u304b\u3099\u308b","\u3055\u304d\u3099\u3087\u3046","\u3055\u304f\u3057","\u3055\u304f\u3072\u3093","\u3055\u304f\u3089","\u3055\u3053\u304f","\u3055\u3053\u3064","\u3055\u3059\u3099\u304b\u308b","\u3055\u3099\u305b\u304d","\u3055\u305f\u3093","\u3055\u3064\u3048\u3044","\u3055\u3099\u3064\u304a\u3093","\u3055\u3099\u3063\u304b","\u3055\u3099\u3064\u304b\u3099\u304f","\u3055\u3063\u304d\u3087\u304f","\u3055\u3099\u3063\u3057","\u3055\u3064\u3057\u3099\u3093","\u3055\u3099\u3063\u305d\u3046","\u3055\u3064\u305f\u306f\u3099","\u3055\u3064\u307e\u3044\u3082","\u3055\u3066\u3044","\u3055\u3068\u3044\u3082","\u3055\u3068\u3046","\u3055\u3068\u304a\u3084","\u3055\u3068\u3057","\u3055\u3068\u308b","\u3055\u306e\u3046","\u3055\u306f\u3099\u304f","\u3055\u3072\u3099\u3057\u3044","\u3055\u3078\u3099\u3064","\u3055\u307b\u3046","\u3055\u307b\u3068\u3099","\u3055\u307e\u3059","\u3055\u307f\u3057\u3044","\u3055\u307f\u305f\u3099\u308c","\u3055\u3080\u3051","\u3055\u3081\u308b","\u3055\u3084\u3048\u3093\u3068\u3099\u3046","\u3055\u3086\u3046","\u3055\u3088\u3046","\u3055\u3088\u304f","\u3055\u3089\u305f\u3099","\u3055\u3099\u308b\u305d\u306f\u3099","\u3055\u308f\u3084\u304b","\u3055\u308f\u308b","\u3055\u3093\u3044\u3093","\u3055\u3093\u304b","\u3055\u3093\u304d\u3083\u304f","\u3055\u3093\u3053\u3046","\u3055\u3093\u3055\u3044","\u3055\u3099\u3093\u3057\u3087","\u3055\u3093\u3059\u3046","\u3055\u3093\u305b\u3044","\u3055\u3093\u305d","\u3055\u3093\u3061","\u3055\u3093\u307e","\u3055\u3093\u307f","\u3055\u3093\u3089\u3093","\u3057\u3042\u3044","\u3057\u3042\u3051\u3099","\u3057\u3042\u3055\u3063\u3066","\u3057\u3042\u308f\u305b","\u3057\u3044\u304f","\u3057\u3044\u3093","\u3057\u3046\u3061","\u3057\u3048\u3044","\u3057\u304a\u3051","\u3057\u304b\u3044","\u3057\u304b\u304f","\u3057\u3099\u304b\u3093","\u3057\u3053\u3099\u3068","\u3057\u3059\u3046","\u3057\u3099\u305f\u3099\u3044","\u3057\u305f\u3046\u3051","\u3057\u305f\u304d\u3099","\u3057\u305f\u3066","\u3057\u305f\u307f","\u3057\u3061\u3087\u3046","\u3057\u3061\u308a\u3093","\u3057\u3063\u304b\u308a","\u3057\u3064\u3057\u3099","\u3057\u3064\u3082\u3093","\u3057\u3066\u3044","\u3057\u3066\u304d","\u3057\u3066\u3064","\u3057\u3099\u3066\u3093","\u3057\u3099\u3068\u3099\u3046","\u3057\u306a\u304d\u3099\u308c","\u3057\u306a\u3082\u306e","\u3057\u306a\u3093","\u3057\u306d\u307e","\u3057\u306d\u3093","\u3057\u306e\u304f\u3099","\u3057\u306e\u3075\u3099","\u3057\u306f\u3044","\u3057\u306f\u3099\u304b\u308a","\u3057\u306f\u3064","\u3057\u306f\u3089\u3044","\u3057\u306f\u3093","\u3057\u3072\u3087\u3046","\u3057\u3075\u304f","\u3057\u3099\u3075\u3099\u3093","\u3057\u3078\u3044","\u3057\u307b\u3046","\u3057\u307b\u3093","\u3057\u307e\u3046","\u3057\u307e\u308b","\u3057\u307f\u3093","\u3057\u3080\u3051\u308b","\u3057\u3099\u3080\u3057\u3087","\u3057\u3081\u3044","\u3057\u3081\u308b","\u3057\u3082\u3093","\u3057\u3083\u3044\u3093","\u3057\u3083\u3046\u3093","\u3057\u3083\u304a\u3093","\u3057\u3099\u3083\u304b\u3099\u3044\u3082","\u3057\u3084\u304f\u3057\u3087","\u3057\u3083\u304f\u307b\u3046","\u3057\u3083\u3051\u3093","\u3057\u3083\u3053","\u3057\u3083\u3055\u3099\u3044","\u3057\u3083\u3057\u3093","\u3057\u3083\u305b\u3093","\u3057\u3083\u305d\u3046","\u3057\u3083\u305f\u3044","\u3057\u3083\u3061\u3087\u3046","\u3057\u3083\u3063\u304d\u3093","\u3057\u3099\u3083\u307e","\u3057\u3083\u308a\u3093","\u3057\u3083\u308c\u3044","\u3057\u3099\u3086\u3046","\u3057\u3099\u3085\u3046\u3057\u3087","\u3057\u3085\u304f\u306f\u304f","\u3057\u3099\u3085\u3057\u3093","\u3057\u3085\u3063\u305b\u304d","\u3057\u3085\u307f","\u3057\u3085\u3089\u306f\u3099","\u3057\u3099\u3085\u3093\u306f\u3099\u3093","\u3057\u3087\u3046\u304b\u3044","\u3057\u3087\u304f\u305f\u304f","\u3057\u3087\u3063\u3051\u3093","\u3057\u3087\u3068\u3099\u3046","\u3057\u3087\u3082\u3064","\u3057\u3089\u305b\u308b","\u3057\u3089\u3078\u3099\u308b","\u3057\u3093\u304b","\u3057\u3093\u3053\u3046","\u3057\u3099\u3093\u3057\u3099\u3083","\u3057\u3093\u305b\u3044\u3057\u3099","\u3057\u3093\u3061\u304f","\u3057\u3093\u308a\u3093","\u3059\u3042\u3051\u3099","\u3059\u3042\u3057","\u3059\u3042\u306a","\u3059\u3099\u3042\u3093","\u3059\u3044\u3048\u3044","\u3059\u3044\u304b","\u3059\u3044\u3068\u3046","\u3059\u3099\u3044\u3075\u3099\u3093","\u3059\u3044\u3088\u3046\u3072\u3099","\u3059\u3046\u304b\u3099\u304f","\u3059\u3046\u3057\u3099\u3064","\u3059\u3046\u305b\u3093","\u3059\u304a\u3068\u3099\u308a","\u3059\u304d\u307e","\u3059\u304f\u3046","\u3059\u304f\u306a\u3044","\u3059\u3051\u308b","\u3059\u3053\u3099\u3044","\u3059\u3053\u3057","\u3059\u3099\u3055\u3093","\u3059\u3059\u3099\u3057\u3044","\u3059\u3059\u3080","\u3059\u3059\u3081\u308b","\u3059\u3063\u304b\u308a","\u3059\u3099\u3063\u3057\u308a","\u3059\u3099\u3063\u3068","\u3059\u3066\u304d","\u3059\u3066\u308b","\u3059\u306d\u308b","\u3059\u306e\u3053","\u3059\u306f\u305f\u3099","\u3059\u306f\u3099\u3089\u3057\u3044","\u3059\u3099\u3072\u3087\u3046","\u3059\u3099\u3075\u3099\u306c\u308c","\u3059\u3075\u3099\u308a","\u3059\u3075\u308c","\u3059\u3078\u3099\u3066","\u3059\u3078\u3099\u308b","\u3059\u3099\u307b\u3046","\u3059\u307b\u3099\u3093","\u3059\u307e\u3044","\u3059\u3081\u3057","\u3059\u3082\u3046","\u3059\u3084\u304d","\u3059\u3089\u3059\u3089","\u3059\u308b\u3081","\u3059\u308c\u3061\u304b\u3099\u3046","\u3059\u308d\u3063\u3068","\u3059\u308f\u308b","\u3059\u3093\u305b\u3099\u3093","\u3059\u3093\u307b\u309a\u3046","\u305b\u3042\u3075\u3099\u3089","\u305b\u3044\u304b\u3064","\u305b\u3044\u3051\u3099\u3093","\u305b\u3044\u3057\u3099","\u305b\u3044\u3088\u3046","\u305b\u304a\u3046","\u305b\u304b\u3044\u304b\u3093","\u305b\u304d\u306b\u3093","\u305b\u304d\u3080","\u305b\u304d\u3086","\u305b\u304d\u3089\u3093\u3046\u3093","\u305b\u3051\u3093","\u305b\u3053\u3046","\u305b\u3059\u3057\u3099","\u305b\u305f\u3044","\u305b\u305f\u3051","\u305b\u3063\u304b\u304f","\u305b\u3063\u304d\u3083\u304f","\u305b\u3099\u3063\u304f","\u305b\u3063\u3051\u3093","\u305b\u3063\u3053\u3064","\u305b\u3063\u3055\u305f\u304f\u307e","\u305b\u3064\u305d\u3099\u304f","\u305b\u3064\u305f\u3099\u3093","\u305b\u3064\u3066\u3099\u3093","\u305b\u3063\u306f\u309a\u3093","\u305b\u3064\u3072\u3099","\u305b\u3064\u3075\u3099\u3093","\u305b\u3064\u3081\u3044","\u305b\u3064\u308a\u3064","\u305b\u306a\u304b","\u305b\u306e\u3072\u3099","\u305b\u306f\u306f\u3099","\u305b\u3072\u3099\u308d","\u305b\u307b\u3099\u306d","\u305b\u307e\u3044","\u305b\u307e\u308b","\u305b\u3081\u308b","\u305b\u3082\u305f\u308c","\u305b\u308a\u3075","\u305b\u3099\u3093\u3042\u304f","\u305b\u3093\u3044","\u305b\u3093\u3048\u3044","\u305b\u3093\u304b","\u305b\u3093\u304d\u3087","\u305b\u3093\u304f","\u305b\u3093\u3051\u3099\u3093","\u305b\u3099\u3093\u3053\u3099","\u305b\u3093\u3055\u3044","\u305b\u3093\u3057\u3085","\u305b\u3093\u3059\u3044","\u305b\u3093\u305b\u3044","\u305b\u3093\u305d\u3099","\u305b\u3093\u305f\u304f","\u305b\u3093\u3061\u3087\u3046","\u305b\u3093\u3066\u3044","\u305b\u3093\u3068\u3046","\u305b\u3093\u306c\u304d","\u305b\u3093\u306d\u3093","\u305b\u3093\u306f\u309a\u3044","\u305b\u3099\u3093\u3075\u3099","\u305b\u3099\u3093\u307b\u309a\u3046","\u305b\u3093\u3080","\u305b\u3093\u3081\u3093\u3057\u3099\u3087","\u305b\u3093\u3082\u3093","\u305b\u3093\u3084\u304f","\u305b\u3093\u3086\u3046","\u305b\u3093\u3088\u3046","\u305b\u3099\u3093\u3089","\u305b\u3099\u3093\u308a\u3083\u304f","\u305b\u3093\u308c\u3044","\u305b\u3093\u308d","\u305d\u3042\u304f","\u305d\u3044\u3068\u3051\u3099\u308b","\u305d\u3044\u306d","\u305d\u3046\u304b\u3099\u3093\u304d\u3087\u3046","\u305d\u3046\u304d","\u305d\u3046\u3053\u3099","\u305d\u3046\u3057\u3093","\u305d\u3046\u305f\u3099\u3093","\u305d\u3046\u306a\u3093","\u305d\u3046\u3072\u3099","\u305d\u3046\u3081\u3093","\u305d\u3046\u308a","\u305d\u3048\u3082\u306e","\u305d\u3048\u3093","\u305d\u304b\u3099\u3044","\u305d\u3051\u3099\u304d","\u305d\u3053\u3046","\u305d\u3053\u305d\u3053","\u305d\u3055\u3099\u3044","\u305d\u3057\u306a","\u305d\u305b\u3044","\u305d\u305b\u3093","\u305d\u305d\u304f\u3099","\u305d\u305f\u3099\u3066\u308b","\u305d\u3064\u3046","\u305d\u3064\u3048\u3093","\u305d\u3063\u304b\u3093","\u305d\u3064\u304d\u3099\u3087\u3046","\u305d\u3063\u3051\u3064","\u305d\u3063\u3053\u3046","\u305d\u3063\u305b\u3093","\u305d\u3063\u3068","\u305d\u3068\u304b\u3099\u308f","\u305d\u3068\u3064\u3099\u3089","\u305d\u306a\u3048\u308b","\u305d\u306a\u305f","\u305d\u3075\u307b\u3099","\u305d\u307b\u3099\u304f","\u305d\u307b\u3099\u308d","\u305d\u307e\u3064","\u305d\u307e\u308b","\u305d\u3080\u304f","\u305d\u3080\u308a\u3048","\u305d\u3081\u308b","\u305d\u3082\u305d\u3082","\u305d\u3088\u304b\u305b\u3099","\u305d\u3089\u307e\u3081","\u305d\u308d\u3046","\u305d\u3093\u304b\u3044","\u305d\u3093\u3051\u3044","\u305d\u3093\u3055\u3099\u3044","\u305d\u3093\u3057\u3064","\u305d\u3093\u305d\u3099\u304f","\u305d\u3093\u3061\u3087\u3046","\u305d\u3099\u3093\u3072\u3099","\u305d\u3099\u3093\u3075\u3099\u3093","\u305d\u3093\u307f\u3093","\u305f\u3042\u3044","\u305f\u3044\u3044\u3093","\u305f\u3044\u3046\u3093","\u305f\u3044\u3048\u304d","\u305f\u3044\u304a\u3046","\u305f\u3099\u3044\u304b\u3099\u304f","\u305f\u3044\u304d","\u305f\u3044\u304f\u3099\u3046","\u305f\u3044\u3051\u3093","\u305f\u3044\u3053","\u305f\u3044\u3055\u3099\u3044","\u305f\u3099\u3044\u3057\u3099\u3087\u3046\u3075\u3099","\u305f\u3099\u3044\u3059\u304d","\u305f\u3044\u305b\u3064","\u305f\u3044\u305d\u3046","\u305f\u3099\u3044\u305f\u3044","\u305f\u3044\u3061\u3087\u3046","\u305f\u3044\u3066\u3044","\u305f\u3099\u3044\u3068\u3099\u3053\u308d","\u305f\u3044\u306a\u3044","\u305f\u3044\u306d\u3064","\u305f\u3044\u306e\u3046","\u305f\u3044\u306f\u3093","\u305f\u3099\u3044\u3072\u3087\u3046","\u305f\u3044\u3075\u3046","\u305f\u3044\u3078\u3093","\u305f\u3044\u307b","\u305f\u3044\u307e\u3064\u306f\u3099\u306a","\u305f\u3044\u307f\u3093\u304f\u3099","\u305f\u3044\u3080","\u305f\u3044\u3081\u3093","\u305f\u3044\u3084\u304d","\u305f\u3044\u3088\u3046","\u305f\u3044\u3089","\u305f\u3044\u308a\u3087\u304f","\u305f\u3044\u308b","\u305f\u3044\u308f\u3093","\u305f\u3046\u3048","\u305f\u3048\u308b","\u305f\u304a\u3059","\u305f\u304a\u308b","\u305f\u304a\u308c\u308b","\u305f\u304b\u3044","\u305f\u304b\u306d","\u305f\u304d\u3072\u3099","\u305f\u304f\u3055\u3093","\u305f\u3053\u304f","\u305f\u3053\u3084\u304d","\u305f\u3055\u3044","\u305f\u3057\u3055\u3099\u3093","\u305f\u3099\u3057\u3099\u3083\u308c","\u305f\u3059\u3051\u308b","\u305f\u3059\u3099\u3055\u308f\u308b","\u305f\u305d\u304b\u3099\u308c","\u305f\u305f\u304b\u3046","\u305f\u305f\u304f","\u305f\u305f\u3099\u3057\u3044","\u305f\u305f\u307f","\u305f\u3061\u306f\u3099\u306a","\u305f\u3099\u3063\u304b\u3044","\u305f\u3099\u3063\u304d\u3083\u304f","\u305f\u3099\u3063\u3053","\u305f\u3099\u3063\u3057\u3085\u3064","\u305f\u3099\u3063\u305f\u3044","\u305f\u3066\u308b","\u305f\u3068\u3048\u308b","\u305f\u306a\u306f\u3099\u305f","\u305f\u306b\u3093","\u305f\u306c\u304d","\u305f\u306e\u3057\u307f","\u305f\u306f\u3064","\u305f\u3075\u3099\u3093","\u305f\u3078\u3099\u308b","\u305f\u307b\u3099\u3046","\u305f\u307e\u3053\u3099","\u305f\u307e\u308b","\u305f\u3099\u3080\u308b","\u305f\u3081\u3044\u304d","\u305f\u3081\u3059","\u305f\u3081\u308b","\u305f\u3082\u3064","\u305f\u3084\u3059\u3044","\u305f\u3088\u308b","\u305f\u3089\u3059","\u305f\u308a\u304d\u307b\u3093\u304b\u3099\u3093","\u305f\u308a\u3087\u3046","\u305f\u308a\u308b","\u305f\u308b\u3068","\u305f\u308c\u308b","\u305f\u308c\u3093\u3068","\u305f\u308d\u3063\u3068","\u305f\u308f\u3080\u308c\u308b","\u305f\u3099\u3093\u3042\u3064","\u305f\u3093\u3044","\u305f\u3093\u304a\u3093","\u305f\u3093\u304b","\u305f\u3093\u304d","\u305f\u3093\u3051\u3093","\u305f\u3093\u3053\u3099","\u305f\u3093\u3055\u3093","\u305f\u3093\u3057\u3099\u3087\u3046\u3072\u3099","\u305f\u3099\u3093\u305b\u3044","\u305f\u3093\u305d\u304f","\u305f\u3093\u305f\u3044","\u305f\u3099\u3093\u3061","\u305f\u3093\u3066\u3044","\u305f\u3093\u3068\u3046","\u305f\u3099\u3093\u306a","\u305f\u3093\u306b\u3093","\u305f\u3099\u3093\u306d\u3064","\u305f\u3093\u306e\u3046","\u305f\u3093\u3072\u309a\u3093","\u305f\u3099\u3093\u307b\u3099\u3046","\u305f\u3093\u307e\u3064","\u305f\u3093\u3081\u3044","\u305f\u3099\u3093\u308c\u3064","\u305f\u3099\u3093\u308d","\u305f\u3099\u3093\u308f","\u3061\u3042\u3044","\u3061\u3042\u3093","\u3061\u3044\u304d","\u3061\u3044\u3055\u3044","\u3061\u3048\u3093","\u3061\u304b\u3044","\u3061\u304b\u3089","\u3061\u304d\u3085\u3046","\u3061\u304d\u3093","\u3061\u3051\u3044\u3059\u3099","\u3061\u3051\u3093","\u3061\u3053\u304f","\u3061\u3055\u3044","\u3061\u3057\u304d","\u3061\u3057\u308a\u3087\u3046","\u3061\u305b\u3044","\u3061\u305d\u3046","\u3061\u305f\u3044","\u3061\u305f\u3093","\u3061\u3061\u304a\u3084","\u3061\u3064\u3057\u3099\u3087","\u3061\u3066\u304d","\u3061\u3066\u3093","\u3061\u306c\u304d","\u3061\u306c\u308a","\u3061\u306e\u3046","\u3061\u3072\u3087\u3046","\u3061\u3078\u3044\u305b\u3093","\u3061\u307b\u3046","\u3061\u307e\u305f","\u3061\u307f\u3064","\u3061\u307f\u3068\u3099\u308d","\u3061\u3081\u3044\u3068\u3099","\u3061\u3083\u3093\u3053\u306a\u3078\u3099","\u3061\u3085\u3046\u3044","\u3061\u3086\u308a\u3087\u304f","\u3061\u3087\u3046\u3057","\u3061\u3087\u3055\u304f\u3051\u3093","\u3061\u3089\u3057","\u3061\u3089\u307f","\u3061\u308a\u304b\u3099\u307f","\u3061\u308a\u3087\u3046","\u3061\u308b\u3068\u3099","\u3061\u308f\u308f","\u3061\u3093\u305f\u3044","\u3061\u3093\u3082\u304f","\u3064\u3044\u304b","\u3064\u3044\u305f\u3061","\u3064\u3046\u304b","\u3064\u3046\u3057\u3099\u3087\u3046","\u3064\u3046\u306f\u3093","\u3064\u3046\u308f","\u3064\u304b\u3046","\u3064\u304b\u308c\u308b","\u3064\u304f\u306d","\u3064\u304f\u308b","\u3064\u3051\u306d","\u3064\u3051\u308b","\u3064\u3053\u3099\u3046","\u3064\u305f\u3048\u308b","\u3064\u3064\u3099\u304f","\u3064\u3064\u3057\u3099","\u3064\u3064\u3080","\u3064\u3068\u3081\u308b","\u3064\u306a\u304b\u3099\u308b","\u3064\u306a\u307f","\u3064\u306d\u3064\u3099\u306d","\u3064\u306e\u308b","\u3064\u3075\u3099\u3059","\u3064\u307e\u3089\u306a\u3044","\u3064\u307e\u308b","\u3064\u307f\u304d","\u3064\u3081\u305f\u3044","\u3064\u3082\u308a","\u3064\u3082\u308b","\u3064\u3088\u3044","\u3064\u308b\u307b\u3099","\u3064\u308b\u307f\u304f","\u3064\u308f\u3082\u306e","\u3064\u308f\u308a","\u3066\u3042\u3057","\u3066\u3042\u3066","\u3066\u3042\u307f","\u3066\u3044\u304a\u3093","\u3066\u3044\u304b","\u3066\u3044\u304d","\u3066\u3044\u3051\u3044","\u3066\u3044\u3053\u304f","\u3066\u3044\u3055\u3064","\u3066\u3044\u3057","\u3066\u3044\u305b\u3044","\u3066\u3044\u305f\u3044","\u3066\u3044\u3068\u3099","\u3066\u3044\u306d\u3044","\u3066\u3044\u3072\u3087\u3046","\u3066\u3044\u3078\u3093","\u3066\u3044\u307b\u3099\u3046","\u3066\u3046\u3061","\u3066\u304a\u304f\u308c","\u3066\u304d\u3068\u3046","\u3066\u304f\u3072\u3099","\u3066\u3099\u3053\u307b\u3099\u3053","\u3066\u3055\u304d\u3099\u3087\u3046","\u3066\u3055\u3051\u3099","\u3066\u3059\u308a","\u3066\u305d\u3046","\u3066\u3061\u304b\u3099\u3044","\u3066\u3061\u3087\u3046","\u3066\u3064\u304b\u3099\u304f","\u3066\u3064\u3064\u3099\u304d","\u3066\u3099\u3063\u306f\u309a","\u3066\u3064\u307b\u3099\u3046","\u3066\u3064\u3084","\u3066\u3099\u306c\u304b\u3048","\u3066\u306c\u304d","\u3066\u306c\u304f\u3099\u3044","\u3066\u306e\u3072\u3089","\u3066\u306f\u3044","\u3066\u3075\u3099\u304f\u308d","\u3066\u3075\u305f\u3099","\u3066\u307b\u3068\u3099\u304d","\u3066\u307b\u3093","\u3066\u307e\u3048","\u3066\u307e\u304d\u3059\u3099\u3057","\u3066\u307f\u3057\u3099\u304b","\u3066\u307f\u3084\u3051\u3099","\u3066\u3089\u3059","\u3066\u308c\u3072\u3099","\u3066\u308f\u3051","\u3066\u308f\u305f\u3057","\u3066\u3099\u3093\u3042\u3064","\u3066\u3093\u3044\u3093","\u3066\u3093\u304b\u3044","\u3066\u3093\u304d","\u3066\u3093\u304f\u3099","\u3066\u3093\u3051\u3093","\u3066\u3093\u3053\u3099\u304f","\u3066\u3093\u3055\u3044","\u3066\u3093\u3057","\u3066\u3093\u3059\u3046","\u3066\u3099\u3093\u3061","\u3066\u3093\u3066\u304d","\u3066\u3093\u3068\u3046","\u3066\u3093\u306a\u3044","\u3066\u3093\u3075\u309a\u3089","\u3066\u3093\u307b\u3099\u3046\u305f\u3099\u3044","\u3066\u3093\u3081\u3064","\u3066\u3093\u3089\u3093\u304b\u3044","\u3066\u3099\u3093\u308a\u3087\u304f","\u3066\u3099\u3093\u308f","\u3068\u3099\u3042\u3044","\u3068\u3044\u308c","\u3068\u3099\u3046\u304b\u3093","\u3068\u3046\u304d\u3085\u3046","\u3068\u3099\u3046\u304f\u3099","\u3068\u3046\u3057","\u3068\u3046\u3080\u304d\u3099","\u3068\u304a\u3044","\u3068\u304a\u304b","\u3068\u304a\u304f","\u3068\u304a\u3059","\u3068\u304a\u308b","\u3068\u304b\u3044","\u3068\u304b\u3059","\u3068\u304d\u304a\u308a","\u3068\u304d\u3068\u3099\u304d","\u3068\u304f\u3044","\u3068\u304f\u3057\u3085\u3046","\u3068\u304f\u3066\u3093","\u3068\u304f\u306b","\u3068\u304f\u3078\u3099\u3064","\u3068\u3051\u3044","\u3068\u3051\u308b","\u3068\u3053\u3084","\u3068\u3055\u304b","\u3068\u3057\u3087\u304b\u3093","\u3068\u305d\u3046","\u3068\u305f\u3093","\u3068\u3061\u3085\u3046","\u3068\u3063\u304d\u3085\u3046","\u3068\u3063\u304f\u3093","\u3068\u3064\u305b\u3099\u3093","\u3068\u3064\u306b\u3085\u3046","\u3068\u3068\u3099\u3051\u308b","\u3068\u3068\u306e\u3048\u308b","\u3068\u306a\u3044","\u3068\u306a\u3048\u308b","\u3068\u306a\u308a","\u3068\u306e\u3055\u307e","\u3068\u306f\u3099\u3059","\u3068\u3099\u3075\u3099\u304b\u3099\u308f","\u3068\u307b\u3046","\u3068\u307e\u308b","\u3068\u3081\u308b","\u3068\u3082\u305f\u3099\u3061","\u3068\u3082\u308b","\u3068\u3099\u3088\u3046\u3072\u3099","\u3068\u3089\u3048\u308b","\u3068\u3093\u304b\u3064","\u3068\u3099\u3093\u3075\u3099\u308a","\u306a\u3044\u304b\u304f","\u306a\u3044\u3053\u3046","\u306a\u3044\u3057\u3087","\u306a\u3044\u3059","\u306a\u3044\u305b\u3093","\u306a\u3044\u305d\u3046","\u306a\u304a\u3059","\u306a\u304b\u3099\u3044","\u306a\u304f\u3059","\u306a\u3051\u3099\u308b","\u306a\u3053\u3046\u3068\u3099","\u306a\u3055\u3051","\u306a\u305f\u3066\u3099\u3053\u3053","\u306a\u3063\u3068\u3046","\u306a\u3064\u3084\u3059\u307f","\u306a\u306a\u304a\u3057","\u306a\u306b\u3053\u3099\u3068","\u306a\u306b\u3082\u306e","\u306a\u306b\u308f","\u306a\u306e\u304b","\u306a\u3075\u305f\u3099","\u306a\u307e\u3044\u304d","\u306a\u307e\u3048","\u306a\u307e\u307f","\u306a\u307f\u305f\u3099","\u306a\u3081\u3089\u304b","\u306a\u3081\u308b","\u306a\u3084\u3080","\u306a\u3089\u3046","\u306a\u3089\u3072\u3099","\u306a\u3089\u3075\u3099","\u306a\u308c\u308b","\u306a\u308f\u3068\u3072\u3099","\u306a\u308f\u306f\u3099\u308a","\u306b\u3042\u3046","\u306b\u3044\u304b\u3099\u305f","\u306b\u3046\u3051","\u306b\u304a\u3044","\u306b\u304b\u3044","\u306b\u304b\u3099\u3066","\u306b\u304d\u3072\u3099","\u306b\u304f\u3057\u307f","\u306b\u304f\u307e\u3093","\u306b\u3051\u3099\u308b","\u306b\u3055\u3093\u304b\u305f\u3093\u305d","\u306b\u3057\u304d","\u306b\u305b\u3082\u306e","\u306b\u3061\u3057\u3099\u3087\u3046","\u306b\u3061\u3088\u3046\u3072\u3099","\u306b\u3063\u304b","\u306b\u3063\u304d","\u306b\u3063\u3051\u3044","\u306b\u3063\u3053\u3046","\u306b\u3063\u3055\u3093","\u306b\u3063\u3057\u3087\u304f","\u306b\u3063\u3059\u3046","\u306b\u3063\u305b\u304d","\u306b\u3063\u3066\u3044","\u306b\u306a\u3046","\u306b\u307b\u3093","\u306b\u307e\u3081","\u306b\u3082\u3064","\u306b\u3084\u308a","\u306b\u3085\u3046\u3044\u3093","\u306b\u308a\u3093\u3057\u3083","\u306b\u308f\u3068\u308a","\u306b\u3093\u3044","\u306b\u3093\u304b","\u306b\u3093\u304d","\u306b\u3093\u3051\u3099\u3093","\u306b\u3093\u3057\u304d","\u306b\u3093\u3059\u3099\u3046","\u306b\u3093\u305d\u3046","\u306b\u3093\u305f\u3044","\u306b\u3093\u3061","\u306b\u3093\u3066\u3044","\u306b\u3093\u306b\u304f","\u306b\u3093\u3075\u309a","\u306b\u3093\u307e\u308a","\u306b\u3093\u3080","\u306b\u3093\u3081\u3044","\u306b\u3093\u3088\u3046","\u306c\u3044\u304f\u304d\u3099","\u306c\u304b\u3059","\u306c\u304f\u3099\u3044\u3068\u308b","\u306c\u304f\u3099\u3046","\u306c\u304f\u3082\u308a","\u306c\u3059\u3080","\u306c\u307e\u3048\u3072\u3099","\u306c\u3081\u308a","\u306c\u3089\u3059","\u306c\u3093\u3061\u3083\u304f","\u306d\u3042\u3051\u3099","\u306d\u3044\u304d","\u306d\u3044\u308b","\u306d\u3044\u308d","\u306d\u304f\u3099\u305b","\u306d\u304f\u305f\u3044","\u306d\u304f\u3089","\u306d\u3053\u305b\u3099","\u306d\u3053\u3080","\u306d\u3055\u3051\u3099","\u306d\u3059\u3053\u3099\u3059","\u306d\u305d\u3078\u3099\u308b","\u306d\u305f\u3099\u3093","\u306d\u3064\u3044","\u306d\u3063\u3057\u3093","\u306d\u3064\u305d\u3099\u3046","\u306d\u3063\u305f\u3044\u304d\u3099\u3087","\u306d\u3075\u3099\u305d\u304f","\u306d\u3075\u305f\u3099","\u306d\u307b\u3099\u3046","\u306d\u307b\u308a\u306f\u307b\u308a","\u306d\u307e\u304d","\u306d\u307e\u308f\u3057","\u306d\u307f\u307f","\u306d\u3080\u3044","\u306d\u3080\u305f\u3044","\u306d\u3082\u3068","\u306d\u3089\u3046","\u306d\u308f\u3055\u3099","\u306d\u3093\u3044\u308a","\u306d\u3093\u304a\u3057","\u306d\u3093\u304b\u3093","\u306d\u3093\u304d\u3093","\u306d\u3093\u304f\u3099","\u306d\u3093\u3055\u3099","\u306d\u3093\u3057","\u306d\u3093\u3061\u3083\u304f","\u306d\u3093\u3068\u3099","\u306d\u3093\u3072\u309a","\u306d\u3093\u3075\u3099\u3064","\u306d\u3093\u307e\u3064","\u306d\u3093\u308a\u3087\u3046","\u306d\u3093\u308c\u3044","\u306e\u3044\u3059\u3099","\u306e\u304a\u3064\u3099\u307e","\u306e\u304b\u3099\u3059","\u306e\u304d\u306a\u307f","\u306e\u3053\u304d\u3099\u308a","\u306e\u3053\u3059","\u306e\u3053\u308b","\u306e\u305b\u308b","\u306e\u305d\u3099\u304f","\u306e\u305d\u3099\u3080","\u306e\u305f\u307e\u3046","\u306e\u3061\u307b\u3068\u3099","\u306e\u3063\u304f","\u306e\u306f\u3099\u3059","\u306e\u306f\u3089","\u306e\u3078\u3099\u308b","\u306e\u307b\u3099\u308b","\u306e\u307f\u3082\u306e","\u306e\u3084\u307e","\u306e\u3089\u3044\u306c","\u306e\u3089\u306d\u3053","\u306e\u308a\u3082\u306e","\u306e\u308a\u3086\u304d","\u306e\u308c\u3093","\u306e\u3093\u304d","\u306f\u3099\u3042\u3044","\u306f\u3042\u304f","\u306f\u3099\u3042\u3055\u3093","\u306f\u3099\u3044\u304b","\u306f\u3099\u3044\u304f","\u306f\u3044\u3051\u3093","\u306f\u3044\u3053\u3099","\u306f\u3044\u3057\u3093","\u306f\u3044\u3059\u3044","\u306f\u3044\u305b\u3093","\u306f\u3044\u305d\u3046","\u306f\u3044\u3061","\u306f\u3099\u3044\u306f\u3099\u3044","\u306f\u3044\u308c\u3064","\u306f\u3048\u308b","\u306f\u304a\u308b","\u306f\u304b\u3044","\u306f\u3099\u304b\u308a","\u306f\u304b\u308b","\u306f\u304f\u3057\u3085","\u306f\u3051\u3093","\u306f\u3053\u3075\u3099","\u306f\u3055\u307f","\u306f\u3055\u3093","\u306f\u3057\u3053\u3099","\u306f\u3099\u3057\u3087","\u306f\u3057\u308b","\u306f\u305b\u308b","\u306f\u309a\u305d\u3053\u3093","\u306f\u305d\u3093","\u306f\u305f\u3093","\u306f\u3061\u307f\u3064","\u306f\u3064\u304a\u3093","\u306f\u3063\u304b\u304f","\u306f\u3064\u3099\u304d","\u306f\u3063\u304d\u308a","\u306f\u3063\u304f\u3064","\u306f\u3063\u3051\u3093","\u306f\u3063\u3053\u3046","\u306f\u3063\u3055\u3093","\u306f\u3063\u3057\u3093","\u306f\u3063\u305f\u3064","\u306f\u3063\u3061\u3085\u3046","\u306f\u3063\u3066\u3093","\u306f\u3063\u3072\u309a\u3087\u3046","\u306f\u3063\u307b\u309a\u3046","\u306f\u306a\u3059","\u306f\u306a\u3072\u3099","\u306f\u306b\u304b\u3080","\u306f\u3075\u3099\u3089\u3057","\u306f\u307f\u304b\u3099\u304d","\u306f\u3080\u304b\u3046","\u306f\u3081\u3064","\u306f\u3084\u3044","\u306f\u3084\u3057","\u306f\u3089\u3046","\u306f\u308d\u3046\u3043\u3093","\u306f\u308f\u3044","\u306f\u3093\u3044","\u306f\u3093\u3048\u3044","\u306f\u3093\u304a\u3093","\u306f\u3093\u304b\u304f","\u306f\u3093\u304d\u3087\u3046","\u306f\u3099\u3093\u304f\u3099\u307f","\u306f\u3093\u3053","\u306f\u3093\u3057\u3083","\u306f\u3093\u3059\u3046","\u306f\u3093\u305f\u3099\u3093","\u306f\u309a\u3093\u3061","\u306f\u309a\u3093\u3064","\u306f\u3093\u3066\u3044","\u306f\u3093\u3068\u3057","\u306f\u3093\u306e\u3046","\u306f\u3093\u306f\u309a","\u306f\u3093\u3075\u3099\u3093","\u306f\u3093\u3078\u309a\u3093","\u306f\u3093\u307b\u3099\u3046\u304d","\u306f\u3093\u3081\u3044","\u306f\u3093\u3089\u3093","\u306f\u3093\u308d\u3093","\u3072\u3044\u304d","\u3072\u3046\u3093","\u3072\u3048\u308b","\u3072\u304b\u304f","\u3072\u304b\u308a","\u3072\u304b\u308b","\u3072\u304b\u3093","\u3072\u304f\u3044","\u3072\u3051\u3064","\u3072\u3053\u3046\u304d","\u3072\u3053\u304f","\u3072\u3055\u3044","\u3072\u3055\u3057\u3075\u3099\u308a","\u3072\u3055\u3093","\u3072\u3099\u3057\u3099\u3085\u3064\u304b\u3093","\u3072\u3057\u3087","\u3072\u305d\u304b","\u3072\u305d\u3080","\u3072\u305f\u3080\u304d","\u3072\u305f\u3099\u308a","\u3072\u305f\u308b","\u3072\u3064\u304d\u3099","\u3072\u3063\u3053\u3057","\u3072\u3063\u3057","\u3072\u3064\u3057\u3099\u3085\u3072\u3093","\u3072\u3063\u3059","\u3072\u3064\u305b\u3099\u3093","\u3072\u309a\u3063\u305f\u308a","\u3072\u309a\u3063\u3061\u308a","\u3072\u3064\u3088\u3046","\u3072\u3066\u3044","\u3072\u3068\u3053\u3099\u307f","\u3072\u306a\u307e\u3064\u308a","\u3072\u306a\u3093","\u3072\u306d\u308b","\u3072\u306f\u3093","\u3072\u3072\u3099\u304f","\u3072\u3072\u3087\u3046","\u3072\u307b\u3046","\u3072\u307e\u308f\u308a","\u3072\u307e\u3093","\u3072\u307f\u3064","\u3072\u3081\u3044","\u3072\u3081\u3057\u3099\u3057","\u3072\u3084\u3051","\u3072\u3084\u3059","\u3072\u3088\u3046","\u3072\u3099\u3087\u3046\u304d","\u3072\u3089\u304b\u3099\u306a","\u3072\u3089\u304f","\u3072\u308a\u3064","\u3072\u308a\u3087\u3046","\u3072\u308b\u307e","\u3072\u308b\u3084\u3059\u307f","\u3072\u308c\u3044","\u3072\u308d\u3044","\u3072\u308d\u3046","\u3072\u308d\u304d","\u3072\u308d\u3086\u304d","\u3072\u3093\u304b\u304f","\u3072\u3093\u3051\u3064","\u3072\u3093\u3053\u3093","\u3072\u3093\u3057\u3085","\u3072\u3093\u305d\u3046","\u3072\u309a\u3093\u3061","\u3072\u3093\u306f\u309a\u3093","\u3072\u3099\u3093\u307b\u3099\u3046","\u3075\u3042\u3093","\u3075\u3044\u3046\u3061","\u3075\u3046\u3051\u3044","\u3075\u3046\u305b\u3093","\u3075\u309a\u3046\u305f\u308d\u3046","\u3075\u3046\u3068\u3046","\u3075\u3046\u3075","\u3075\u3048\u308b","\u3075\u304a\u3093","\u3075\u304b\u3044","\u3075\u304d\u3093","\u3075\u304f\u3055\u3099\u3064","\u3075\u304f\u3075\u3099\u304f\u308d","\u3075\u3053\u3046","\u3075\u3055\u3044","\u3075\u3057\u304d\u3099","\u3075\u3057\u3099\u307f","\u3075\u3059\u307e","\u3075\u305b\u3044","\u3075\u305b\u304f\u3099","\u3075\u305d\u304f","\u3075\u3099\u305f\u306b\u304f","\u3075\u305f\u3093","\u3075\u3061\u3087\u3046","\u3075\u3064\u3046","\u3075\u3064\u304b","\u3075\u3063\u304b\u3064","\u3075\u3063\u304d","\u3075\u3063\u3053\u304f","\u3075\u3099\u3068\u3099\u3046","\u3075\u3068\u308b","\u3075\u3068\u3093","\u3075\u306e\u3046","\u3075\u306f\u3044","\u3075\u3072\u3087\u3046","\u3075\u3078\u3093","\u3075\u307e\u3093","\u3075\u307f\u3093","\u3075\u3081\u3064","\u3075\u3081\u3093","\u3075\u3088\u3046","\u3075\u308a\u3053","\u3075\u308a\u308b","\u3075\u308b\u3044","\u3075\u3093\u3044\u304d","\u3075\u3099\u3093\u304b\u3099\u304f","\u3075\u3099\u3093\u304f\u3099","\u3075\u3093\u3057\u3064","\u3075\u3099\u3093\u305b\u304d","\u3075\u3093\u305d\u3046","\u3075\u3099\u3093\u307b\u309a\u3046","\u3078\u3044\u3042\u3093","\u3078\u3044\u304a\u3093","\u3078\u3044\u304b\u3099\u3044","\u3078\u3044\u304d","\u3078\u3044\u3051\u3099\u3093","\u3078\u3044\u3053\u3046","\u3078\u3044\u3055","\u3078\u3044\u3057\u3083","\u3078\u3044\u305b\u3064","\u3078\u3044\u305d","\u3078\u3044\u305f\u304f","\u3078\u3044\u3066\u3093","\u3078\u3044\u306d\u3064","\u3078\u3044\u308f","\u3078\u304d\u304b\u3099","\u3078\u3053\u3080","\u3078\u3099\u306b\u3044\u308d","\u3078\u3099\u306b\u3057\u3087\u3046\u304b\u3099","\u3078\u3089\u3059","\u3078\u3093\u304b\u3093","\u3078\u3099\u3093\u304d\u3087\u3046","\u3078\u3099\u3093\u3053\u3099\u3057","\u3078\u3093\u3055\u3044","\u3078\u3093\u305f\u3044","\u3078\u3099\u3093\u308a","\u307b\u3042\u3093","\u307b\u3044\u304f","\u307b\u3099\u3046\u304d\u3099\u3087","\u307b\u3046\u3053\u304f","\u307b\u3046\u305d\u3046","\u307b\u3046\u307b\u3046","\u307b\u3046\u3082\u3093","\u307b\u3046\u308a\u3064","\u307b\u3048\u308b","\u307b\u304a\u3093","\u307b\u304b\u3093","\u307b\u304d\u3087\u3046","\u307b\u3099\u304d\u3093","\u307b\u304f\u308d","\u307b\u3051\u3064","\u307b\u3051\u3093","\u307b\u3053\u3046","\u307b\u3053\u308b","\u307b\u3057\u3044","\u307b\u3057\u3064","\u307b\u3057\u3085","\u307b\u3057\u3087\u3046","\u307b\u305b\u3044","\u307b\u305d\u3044","\u307b\u305d\u304f","\u307b\u305f\u3066","\u307b\u305f\u308b","\u307b\u309a\u3061\u3075\u3099\u304f\u308d","\u307b\u3063\u304d\u3087\u304f","\u307b\u3063\u3055","\u307b\u3063\u305f\u3093","\u307b\u3068\u3093\u3068\u3099","\u307b\u3081\u308b","\u307b\u3093\u3044","\u307b\u3093\u304d","\u307b\u3093\u3051","\u307b\u3093\u3057\u3064","\u307b\u3093\u3084\u304f","\u307e\u3044\u306b\u3061","\u307e\u304b\u3044","\u307e\u304b\u305b\u308b","\u307e\u304b\u3099\u308b","\u307e\u3051\u308b","\u307e\u3053\u3068","\u307e\u3055\u3064","\u307e\u3057\u3099\u3081","\u307e\u3059\u304f","\u307e\u305b\u3099\u308b","\u307e\u3064\u308a","\u307e\u3068\u3081","\u307e\u306a\u3075\u3099","\u307e\u306c\u3051","\u307e\u306d\u304f","\u307e\u307b\u3046","\u307e\u3082\u308b","\u307e\u3086\u3051\u3099","\u307e\u3088\u3046","\u307e\u308d\u3084\u304b","\u307e\u308f\u3059","\u307e\u308f\u308a","\u307e\u308f\u308b","\u307e\u3093\u304b\u3099","\u307e\u3093\u304d\u3064","\u307e\u3093\u305d\u3099\u304f","\u307e\u3093\u306a\u304b","\u307f\u3044\u3089","\u307f\u3046\u3061","\u307f\u3048\u308b","\u307f\u304b\u3099\u304f","\u307f\u304b\u305f","\u307f\u304b\u3093","\u307f\u3051\u3093","\u307f\u3053\u3093","\u307f\u3057\u3099\u304b\u3044","\u307f\u3059\u3044","\u307f\u3059\u3048\u308b","\u307f\u305b\u308b","\u307f\u3063\u304b","\u307f\u3064\u304b\u308b","\u307f\u3064\u3051\u308b","\u307f\u3066\u3044","\u307f\u3068\u3081\u308b","\u307f\u306a\u3068","\u307f\u306a\u307f\u304b\u3055\u3044","\u307f\u306d\u3089\u308b","\u307f\u306e\u3046","\u307f\u306e\u304b\u3099\u3059","\u307f\u307b\u3093","\u307f\u3082\u3068","\u307f\u3084\u3051\u3099","\u307f\u3089\u3044","\u307f\u308a\u3087\u304f","\u307f\u308f\u304f","\u307f\u3093\u304b","\u307f\u3093\u305d\u3099\u304f","\u3080\u3044\u304b","\u3080\u3048\u304d","\u3080\u3048\u3093","\u3080\u304b\u3044","\u3080\u304b\u3046","\u3080\u304b\u3048","\u3080\u304b\u3057","\u3080\u304d\u3099\u3061\u3083","\u3080\u3051\u308b","\u3080\u3051\u3099\u3093","\u3080\u3055\u307b\u3099\u308b","\u3080\u3057\u3042\u3064\u3044","\u3080\u3057\u306f\u3099","\u3080\u3057\u3099\u3085\u3093","\u3080\u3057\u308d","\u3080\u3059\u3046","\u3080\u3059\u3053","\u3080\u3059\u3075\u3099","\u3080\u3059\u3081","\u3080\u305b\u308b","\u3080\u305b\u3093","\u3080\u3061\u3085\u3046","\u3080\u306a\u3057\u3044","\u3080\u306e\u3046","\u3080\u3084\u307f","\u3080\u3088\u3046","\u3080\u3089\u3055\u304d","\u3080\u308a\u3087\u3046","\u3080\u308d\u3093","\u3081\u3044\u3042\u3093","\u3081\u3044\u3046\u3093","\u3081\u3044\u3048\u3093","\u3081\u3044\u304b\u304f","\u3081\u3044\u304d\u3087\u304f","\u3081\u3044\u3055\u3044","\u3081\u3044\u3057","\u3081\u3044\u305d\u3046","\u3081\u3044\u3075\u3099\u3064","\u3081\u3044\u308c\u3044","\u3081\u3044\u308f\u304f","\u3081\u304f\u3099\u307e\u308c\u308b","\u3081\u3055\u3099\u3059","\u3081\u3057\u305f","\u3081\u3059\u3099\u3089\u3057\u3044","\u3081\u305f\u3099\u3064","\u3081\u307e\u3044","\u3081\u3084\u3059","\u3081\u3093\u304d\u3087","\u3081\u3093\u305b\u304d","\u3081\u3093\u3068\u3099\u3046","\u3082\u3046\u3057\u3042\u3051\u3099\u308b","\u3082\u3046\u3068\u3099\u3046\u3051\u3093","\u3082\u3048\u308b","\u3082\u304f\u3057","\u3082\u304f\u3066\u304d","\u3082\u304f\u3088\u3046\u3072\u3099","\u3082\u3061\u308d\u3093","\u3082\u3068\u3099\u308b","\u3082\u3089\u3046","\u3082\u3093\u304f","\u3082\u3093\u305f\u3099\u3044","\u3084\u304a\u3084","\u3084\u3051\u308b","\u3084\u3055\u3044","\u3084\u3055\u3057\u3044","\u3084\u3059\u3044","\u3084\u3059\u305f\u308d\u3046","\u3084\u3059\u307f","\u3084\u305b\u308b","\u3084\u305d\u3046","\u3084\u305f\u3044","\u3084\u3061\u3093","\u3084\u3063\u3068","\u3084\u3063\u306f\u309a\u308a","\u3084\u3075\u3099\u308b","\u3084\u3081\u308b","\u3084\u3084\u3053\u3057\u3044","\u3084\u3088\u3044","\u3084\u308f\u3089\u304b\u3044","\u3086\u3046\u304d","\u3086\u3046\u3072\u3099\u3093\u304d\u3087\u304f","\u3086\u3046\u3078\u3099","\u3086\u3046\u3081\u3044","\u3086\u3051\u3064","\u3086\u3057\u3085\u3064","\u3086\u305b\u3093","\u3086\u305d\u3046","\u3086\u305f\u304b","\u3086\u3061\u3083\u304f","\u3086\u3066\u3099\u308b","\u3086\u306b\u3085\u3046","\u3086\u3072\u3099\u308f","\u3086\u3089\u3044","\u3086\u308c\u308b","\u3088\u3046\u3044","\u3088\u3046\u304b","\u3088\u3046\u304d\u3085\u3046","\u3088\u3046\u3057\u3099","\u3088\u3046\u3059","\u3088\u3046\u3061\u3048\u3093","\u3088\u304b\u305b\u3099","\u3088\u304b\u3093","\u3088\u304d\u3093","\u3088\u304f\u305b\u3044","\u3088\u304f\u307b\u3099\u3046","\u3088\u3051\u3044","\u3088\u3053\u3099\u308c\u308b","\u3088\u3055\u3093","\u3088\u3057\u3085\u3046","\u3088\u305d\u3046","\u3088\u305d\u304f","\u3088\u3063\u304b","\u3088\u3066\u3044","\u3088\u3068\u3099\u304b\u3099\u308f\u304f","\u3088\u306d\u3064","\u3088\u3084\u304f","\u3088\u3086\u3046","\u3088\u308d\u3053\u3075\u3099","\u3088\u308d\u3057\u3044","\u3089\u3044\u3046","\u3089\u304f\u304b\u3099\u304d","\u3089\u304f\u3053\u3099","\u3089\u304f\u3055\u3064","\u3089\u304f\u305f\u3099","\u3089\u3057\u3093\u306f\u3099\u3093","\u3089\u305b\u3093","\u3089\u305d\u3099\u304f","\u3089\u305f\u3044","\u3089\u3063\u304b","\u3089\u308c\u3064","\u308a\u3048\u304d","\u308a\u304b\u3044","\u308a\u304d\u3055\u304f","\u308a\u304d\u305b\u3064","\u308a\u304f\u304f\u3099\u3093","\u308a\u304f\u3064","\u308a\u3051\u3093","\u308a\u3053\u3046","\u308a\u305b\u3044","\u308a\u305d\u3046","\u308a\u305d\u304f","\u308a\u3066\u3093","\u308a\u306d\u3093","\u308a\u3086\u3046","\u308a\u3085\u3046\u304b\u3099\u304f","\u308a\u3088\u3046","\u308a\u3087\u3046\u308a","\u308a\u3087\u304b\u3093","\u308a\u3087\u304f\u3061\u3083","\u308a\u3087\u3053\u3046","\u308a\u308a\u304f","\u308a\u308c\u304d","\u308a\u308d\u3093","\u308a\u3093\u3053\u3099","\u308b\u3044\u3051\u3044","\u308b\u3044\u3055\u3044","\u308b\u3044\u3057\u3099","\u308b\u3044\u305b\u304d","\u308b\u3059\u306f\u3099\u3093","\u308b\u308a\u304b\u3099\u308f\u3089","\u308c\u3044\u304b\u3093","\u308c\u3044\u304d\u3099","\u308c\u3044\u305b\u3044","\u308c\u3044\u305d\u3099\u3046\u3053","\u308c\u3044\u3068\u3046","\u308c\u3044\u307b\u3099\u3046","\u308c\u304d\u3057","\u308c\u304d\u305f\u3099\u3044","\u308c\u3093\u3042\u3044","\u308c\u3093\u3051\u3044","\u308c\u3093\u3053\u3093","\u308c\u3093\u3055\u3044","\u308c\u3093\u3057\u3085\u3046","\u308c\u3093\u305d\u3099\u304f","\u308c\u3093\u3089\u304f","\u308d\u3046\u304b","\u308d\u3046\u3053\u3099","\u308d\u3046\u3057\u3099\u3093","\u308d\u3046\u305d\u304f","\u308d\u304f\u304b\u3099","\u308d\u3053\u3064","\u308d\u3057\u3099\u3046\u3089","\u308d\u3057\u3085\u3064","\u308d\u305b\u3093","\u308d\u3066\u3093","\u308d\u3081\u3093","\u308d\u308c\u3064","\u308d\u3093\u304d\u3099","\u308d\u3093\u306f\u309a","\u308d\u3093\u3075\u3099\u3093","\u308d\u3093\u308a","\u308f\u304b\u3059","\u308f\u304b\u3081","\u308f\u304b\u3084\u307e","\u308f\u304b\u308c\u308b","\u308f\u3057\u3064","\u308f\u3057\u3099\u307e\u3057","\u308f\u3059\u308c\u3082\u306e","\u308f\u3089\u3046","\u308f\u308c\u308b"]')},8013:e=>{"use strict";e.exports=JSON.parse('["\u1100\u1161\u1100\u1167\u11a8","\u1100\u1161\u1101\u1173\u11b7","\u1100\u1161\u1102\u1161\u11ab","\u1100\u1161\u1102\u1173\u11bc","\u1100\u1161\u1103\u1173\u11a8","\u1100\u1161\u1105\u1173\u110e\u1175\u11b7","\u1100\u1161\u1106\u116e\u11b7","\u1100\u1161\u1107\u1161\u11bc","\u1100\u1161\u1109\u1161\u11bc","\u1100\u1161\u1109\u1173\u11b7","\u1100\u1161\u110b\u116e\u11ab\u1103\u1166","\u1100\u1161\u110b\u1173\u11af","\u1100\u1161\u110b\u1175\u1103\u1173","\u1100\u1161\u110b\u1175\u11b8","\u1100\u1161\u110c\u1161\u11bc","\u1100\u1161\u110c\u1165\u11bc","\u1100\u1161\u110c\u1169\u11a8","\u1100\u1161\u110c\u116e\u11a8","\u1100\u1161\u11a8\u110b\u1169","\u1100\u1161\u11a8\u110c\u1161","\u1100\u1161\u11ab\u1100\u1167\u11a8","\u1100\u1161\u11ab\u1107\u116e","\u1100\u1161\u11ab\u1109\u1165\u11b8","\u1100\u1161\u11ab\u110c\u1161\u11bc","\u1100\u1161\u11ab\u110c\u1165\u11b8","\u1100\u1161\u11ab\u1111\u1161\u11ab","\u1100\u1161\u11af\u1103\u1173\u11bc","\u1100\u1161\u11af\u1107\u1175","\u1100\u1161\u11af\u1109\u1162\u11a8","\u1100\u1161\u11af\u110c\u1173\u11bc","\u1100\u1161\u11b7\u1100\u1161\u11a8","\u1100\u1161\u11b7\u1100\u1175","\u1100\u1161\u11b7\u1109\u1169","\u1100\u1161\u11b7\u1109\u116e\u1109\u1165\u11bc","\u1100\u1161\u11b7\u110c\u1161","\u1100\u1161\u11b7\u110c\u1165\u11bc","\u1100\u1161\u11b8\u110c\u1161\u1100\u1175","\u1100\u1161\u11bc\u1102\u1161\u11b7","\u1100\u1161\u11bc\u1103\u1161\u11bc","\u1100\u1161\u11bc\u1103\u1169","\u1100\u1161\u11bc\u1105\u1167\u11a8\u1112\u1175","\u1100\u1161\u11bc\u1107\u1167\u11ab","\u1100\u1161\u11bc\u1107\u116e\u11a8","\u1100\u1161\u11bc\u1109\u1161","\u1100\u1161\u11bc\u1109\u116e\u1105\u1163\u11bc","\u1100\u1161\u11bc\u110b\u1161\u110c\u1175","\u1100\u1161\u11bc\u110b\u116f\u11ab\u1103\u1169","\u1100\u1161\u11bc\u110b\u1174","\u1100\u1161\u11bc\u110c\u1166","\u1100\u1161\u11bc\u110c\u1169","\u1100\u1161\u11c0\u110b\u1175","\u1100\u1162\u1100\u116e\u1105\u1175","\u1100\u1162\u1102\u1161\u1105\u1175","\u1100\u1162\u1107\u1161\u11bc","\u1100\u1162\u1107\u1167\u11af","\u1100\u1162\u1109\u1165\u11ab","\u1100\u1162\u1109\u1165\u11bc","\u1100\u1162\u110b\u1175\u11ab","\u1100\u1162\u11a8\u1100\u116a\u11ab\u110c\u1165\u11a8","\u1100\u1165\u1109\u1175\u11af","\u1100\u1165\u110b\u1162\u11a8","\u1100\u1165\u110b\u116e\u11af","\u1100\u1165\u110c\u1175\u11ba","\u1100\u1165\u1111\u116e\u11b7","\u1100\u1165\u11a8\u110c\u1165\u11bc","\u1100\u1165\u11ab\u1100\u1161\u11bc","\u1100\u1165\u11ab\u1106\u116e\u11af","\u1100\u1165\u11ab\u1109\u1165\u11af","\u1100\u1165\u11ab\u110c\u1169","\u1100\u1165\u11ab\u110e\u116e\u11a8","\u1100\u1165\u11af\u110b\u1173\u11b7","\u1100\u1165\u11b7\u1109\u1161","\u1100\u1165\u11b7\u1110\u1169","\u1100\u1166\u1109\u1175\u1111\u1161\u11ab","\u1100\u1166\u110b\u1175\u11b7","\u1100\u1167\u110b\u116e\u11af","\u1100\u1167\u11ab\u1112\u1162","\u1100\u1167\u11af\u1100\u116a","\u1100\u1167\u11af\u1100\u116e\u11a8","\u1100\u1167\u11af\u1105\u1169\u11ab","\u1100\u1167\u11af\u1109\u1165\u11a8","\u1100\u1167\u11af\u1109\u1173\u11bc","\u1100\u1167\u11af\u1109\u1175\u11b7","\u1100\u1167\u11af\u110c\u1165\u11bc","\u1100\u1167\u11af\u1112\u1169\u11ab","\u1100\u1167\u11bc\u1100\u1168","\u1100\u1167\u11bc\u1100\u1169","\u1100\u1167\u11bc\u1100\u1175","\u1100\u1167\u11bc\u1105\u1167\u11a8","\u1100\u1167\u11bc\u1107\u1169\u11a8\u1100\u116e\u11bc","\u1100\u1167\u11bc\u1107\u1175","\u1100\u1167\u11bc\u1109\u1161\u11bc\u1103\u1169","\u1100\u1167\u11bc\u110b\u1167\u11bc","\u1100\u1167\u11bc\u110b\u116e","\u1100\u1167\u11bc\u110c\u1162\u11bc","\u1100\u1167\u11bc\u110c\u1166","\u1100\u1167\u11bc\u110c\u116e","\u1100\u1167\u11bc\u110e\u1161\u11af","\u1100\u1167\u11bc\u110e\u1175","\u1100\u1167\u11bc\u1112\u1163\u11bc","\u1100\u1167\u11bc\u1112\u1165\u11b7","\u1100\u1168\u1100\u1169\u11a8","\u1100\u1168\u1103\u1161\u11ab","\u1100\u1168\u1105\u1161\u11ab","\u1100\u1168\u1109\u1161\u11ab","\u1100\u1168\u1109\u1169\u11a8","\u1100\u1168\u110b\u1163\u11a8","\u1100\u1168\u110c\u1165\u11af","\u1100\u1168\u110e\u1173\u11bc","\u1100\u1168\u1112\u116c\u11a8","\u1100\u1169\u1100\u1162\u11a8","\u1100\u1169\u1100\u116e\u1105\u1167","\u1100\u1169\u1100\u116e\u11bc","\u1100\u1169\u1100\u1173\u11b8","\u1100\u1169\u1103\u1173\u11bc\u1112\u1161\u11a8\u1109\u1162\u11bc","\u1100\u1169\u1106\u116e\u1109\u1175\u11ab","\u1100\u1169\u1106\u1175\u11ab","\u1100\u1169\u110b\u1163\u11bc\u110b\u1175","\u1100\u1169\u110c\u1161\u11bc","\u1100\u1169\u110c\u1165\u11ab","\u1100\u1169\u110c\u1175\u11b8","\u1100\u1169\u110e\u116e\u11ba\u1100\u1161\u1105\u116e","\u1100\u1169\u1110\u1169\u11bc","\u1100\u1169\u1112\u1163\u11bc","\u1100\u1169\u11a8\u1109\u1175\u11a8","\u1100\u1169\u11af\u1106\u1169\u11a8","\u1100\u1169\u11af\u110d\u1161\u1100\u1175","\u1100\u1169\u11af\u1111\u1173","\u1100\u1169\u11bc\u1100\u1161\u11ab","\u1100\u1169\u11bc\u1100\u1162","\u1100\u1169\u11bc\u1100\u1167\u11a8","\u1100\u1169\u11bc\u1100\u116e\u11ab","\u1100\u1169\u11bc\u1100\u1173\u11b8","\u1100\u1169\u11bc\u1100\u1175","\u1100\u1169\u11bc\u1103\u1169\u11bc","\u1100\u1169\u11bc\u1106\u116e\u110b\u116f\u11ab","\u1100\u1169\u11bc\u1107\u116e","\u1100\u1169\u11bc\u1109\u1161","\u1100\u1169\u11bc\u1109\u1175\u11a8","\u1100\u1169\u11bc\u110b\u1165\u11b8","\u1100\u1169\u11bc\u110b\u1167\u11ab","\u1100\u1169\u11bc\u110b\u116f\u11ab","\u1100\u1169\u11bc\u110c\u1161\u11bc","\u1100\u1169\u11bc\u110d\u1161","\u1100\u1169\u11bc\u110e\u1162\u11a8","\u1100\u1169\u11bc\u1110\u1169\u11bc","\u1100\u1169\u11bc\u1111\u1169","\u1100\u1169\u11bc\u1112\u1161\u11bc","\u1100\u1169\u11bc\u1112\u1172\u110b\u1175\u11af","\u1100\u116a\u1106\u1169\u11a8","\u1100\u116a\u110b\u1175\u11af","\u1100\u116a\u110c\u1161\u11bc","\u1100\u116a\u110c\u1165\u11bc","\u1100\u116a\u1112\u1161\u11a8","\u1100\u116a\u11ab\u1100\u1162\u11a8","\u1100\u116a\u11ab\u1100\u1168","\u1100\u116a\u11ab\u1100\u116a\u11bc","\u1100\u116a\u11ab\u1102\u1167\u11b7","\u1100\u116a\u11ab\u1105\u1161\u11b7","\u1100\u116a\u11ab\u1105\u1167\u11ab","\u1100\u116a\u11ab\u1105\u1175","\u1100\u116a\u11ab\u1109\u1173\u11b8","\u1100\u116a\u11ab\u1109\u1175\u11b7","\u1100\u116a\u11ab\u110c\u1165\u11b7","\u1100\u116a\u11ab\u110e\u1161\u11af","\u1100\u116a\u11bc\u1100\u1167\u11bc","\u1100\u116a\u11bc\u1100\u1169","\u1100\u116a\u11bc\u110c\u1161\u11bc","\u1100\u116a\u11bc\u110c\u116e","\u1100\u116c\u1105\u1169\u110b\u116e\u11b7","\u1100\u116c\u11bc\u110c\u1161\u11bc\u1112\u1175","\u1100\u116d\u1100\u116a\u1109\u1165","\u1100\u116d\u1106\u116e\u11ab","\u1100\u116d\u1107\u1169\u11a8","\u1100\u116d\u1109\u1175\u11af","\u1100\u116d\u110b\u1163\u11bc","\u1100\u116d\u110b\u1172\u11a8","\u1100\u116d\u110c\u1161\u11bc","\u1100\u116d\u110c\u1175\u11a8","\u1100\u116d\u1110\u1169\u11bc","\u1100\u116d\u1112\u116a\u11ab","\u1100\u116d\u1112\u116e\u11ab","\u1100\u116e\u1100\u1167\u11bc","\u1100\u116e\u1105\u1173\u11b7","\u1100\u116e\u1106\u1165\u11bc","\u1100\u116e\u1107\u1167\u11af","\u1100\u116e\u1107\u116e\u11ab","\u1100\u116e\u1109\u1165\u11a8","\u1100\u116e\u1109\u1165\u11bc","\u1100\u116e\u1109\u1169\u11a8","\u1100\u116e\u110b\u1167\u11a8","\u1100\u116e\u110b\u1175\u11b8","\u1100\u116e\u110e\u1165\u11bc","\u1100\u116e\u110e\u1166\u110c\u1165\u11a8","\u1100\u116e\u11a8\u1100\u1161","\u1100\u116e\u11a8\u1100\u1175","\u1100\u116e\u11a8\u1102\u1162","\u1100\u116e\u11a8\u1105\u1175\u11b8","\u1100\u116e\u11a8\u1106\u116e\u11af","\u1100\u116e\u11a8\u1106\u1175\u11ab","\u1100\u116e\u11a8\u1109\u116e","\u1100\u116e\u11a8\u110b\u1165","\u1100\u116e\u11a8\u110b\u116a\u11bc","\u1100\u116e\u11a8\u110c\u1165\u11a8","\u1100\u116e\u11a8\u110c\u1166","\u1100\u116e\u11a8\u1112\u116c","\u1100\u116e\u11ab\u1103\u1162","\u1100\u116e\u11ab\u1109\u1161","\u1100\u116e\u11ab\u110b\u1175\u11ab","\u1100\u116e\u11bc\u1100\u1173\u11a8\u110c\u1165\u11a8","\u1100\u116f\u11ab\u1105\u1175","\u1100\u116f\u11ab\u110b\u1171","\u1100\u116f\u11ab\u1110\u116e","\u1100\u1171\u1100\u116e\u11a8","\u1100\u1171\u1109\u1175\u11ab","\u1100\u1172\u110c\u1165\u11bc","\u1100\u1172\u110e\u1175\u11a8","\u1100\u1172\u11ab\u1112\u1167\u11bc","\u1100\u1173\u1102\u1161\u11af","\u1100\u1173\u1102\u1163\u11bc","\u1100\u1173\u1102\u1173\u11af","\u1100\u1173\u1105\u1165\u1102\u1161","\u1100\u1173\u1105\u116e\u11b8","\u1100\u1173\u1105\u1173\u11ba","\u1100\u1173\u1105\u1175\u11b7","\u1100\u1173\u110c\u1166\u1109\u1165\u110b\u1163","\u1100\u1173\u1110\u1169\u1105\u1169\u11a8","\u1100\u1173\u11a8\u1107\u1169\u11a8","\u1100\u1173\u11a8\u1112\u1175","\u1100\u1173\u11ab\u1100\u1165","\u1100\u1173\u11ab\u1100\u116d","\u1100\u1173\u11ab\u1105\u1162","\u1100\u1173\u11ab\u1105\u1169","\u1100\u1173\u11ab\u1106\u116e","\u1100\u1173\u11ab\u1107\u1169\u11ab","\u1100\u1173\u11ab\u110b\u116f\u11ab","\u1100\u1173\u11ab\u110b\u1172\u11a8","\u1100\u1173\u11ab\u110e\u1165","\u1100\u1173\u11af\u110a\u1175","\u1100\u1173\u11af\u110c\u1161","\u1100\u1173\u11b7\u1100\u1161\u11bc\u1109\u1161\u11ab","\u1100\u1173\u11b7\u1100\u1169","\u1100\u1173\u11b7\u1102\u1167\u11ab","\u1100\u1173\u11b7\u1106\u1166\u1103\u1161\u11af","\u1100\u1173\u11b7\u110b\u1162\u11a8","\u1100\u1173\u11b7\u110b\u1167\u11ab","\u1100\u1173\u11b7\u110b\u116d\u110b\u1175\u11af","\u1100\u1173\u11b7\u110c\u1175","\u1100\u1173\u11bc\u110c\u1165\u11bc\u110c\u1165\u11a8","\u1100\u1175\u1100\u1161\u11ab","\u1100\u1175\u1100\u116a\u11ab","\u1100\u1175\u1102\u1167\u11b7","\u1100\u1175\u1102\u1173\u11bc","\u1100\u1175\u1103\u1169\u11a8\u1100\u116d","\u1100\u1175\u1103\u116e\u11bc","\u1100\u1175\u1105\u1169\u11a8","\u1100\u1175\u1105\u1173\u11b7","\u1100\u1175\u1107\u1165\u11b8","\u1100\u1175\u1107\u1169\u11ab","\u1100\u1175\u1107\u116e\u11ab","\u1100\u1175\u1108\u1173\u11b7","\u1100\u1175\u1109\u116e\u11a8\u1109\u1161","\u1100\u1175\u1109\u116e\u11af","\u1100\u1175\u110b\u1165\u11a8","\u1100\u1175\u110b\u1165\u11b8","\u1100\u1175\u110b\u1169\u11ab","\u1100\u1175\u110b\u116e\u11ab","\u1100\u1175\u110b\u116f\u11ab","\u1100\u1175\u110c\u1165\u11a8","\u1100\u1175\u110c\u116e\u11ab","\u1100\u1175\u110e\u1175\u11b7","\u1100\u1175\u1112\u1169\u11ab","\u1100\u1175\u1112\u116c\u11a8","\u1100\u1175\u11ab\u1100\u1173\u11b8","\u1100\u1175\u11ab\u110c\u1161\u11bc","\u1100\u1175\u11af\u110b\u1175","\u1100\u1175\u11b7\u1107\u1161\u11b8","\u1100\u1175\u11b7\u110e\u1175","\u1100\u1175\u11b7\u1111\u1169\u1100\u1169\u11bc\u1112\u1161\u11bc","\u1101\u1161\u11a8\u1103\u116e\u1100\u1175","\u1101\u1161\u11b7\u1108\u1161\u11a8","\u1101\u1162\u1103\u1161\u11af\u110b\u1173\u11b7","\u1101\u1162\u1109\u1169\u1100\u1173\u11b7","\u1101\u1165\u11b8\u110c\u1175\u11af","\u1101\u1169\u11a8\u1103\u1162\u1100\u1175","\u1101\u1169\u11be\u110b\u1175\u11c1","\u1102\u1161\u1103\u1173\u11af\u110b\u1175","\u1102\u1161\u1105\u1161\u11ab\u1112\u1175","\u1102\u1161\u1106\u1165\u110c\u1175","\u1102\u1161\u1106\u116e\u11af","\u1102\u1161\u110e\u1175\u11b7\u1107\u1161\u11ab","\u1102\u1161\u1112\u1173\u11af","\u1102\u1161\u11a8\u110b\u1167\u11b8","\u1102\u1161\u11ab\u1107\u1161\u11bc","\u1102\u1161\u11af\u1100\u1162","\u1102\u1161\u11af\u110a\u1175","\u1102\u1161\u11af\u110d\u1161","\u1102\u1161\u11b7\u1102\u1167","\u1102\u1161\u11b7\u1103\u1162\u1106\u116e\u11ab","\u1102\u1161\u11b7\u1106\u1162","\u1102\u1161\u11b7\u1109\u1161\u11ab","\u1102\u1161\u11b7\u110c\u1161","\u1102\u1161\u11b7\u1111\u1167\u11ab","\u1102\u1161\u11b7\u1112\u1161\u11a8\u1109\u1162\u11bc","\u1102\u1161\u11bc\u1107\u1175","\u1102\u1161\u11c0\u1106\u1161\u11af","\u1102\u1162\u1102\u1167\u11ab","\u1102\u1162\u110b\u116d\u11bc","\u1102\u1162\u110b\u1175\u11af","\u1102\u1162\u11b7\u1107\u1175","\u1102\u1162\u11b7\u1109\u1162","\u1102\u1162\u11ba\u1106\u116e\u11af","\u1102\u1162\u11bc\u1103\u1169\u11bc","\u1102\u1162\u11bc\u1106\u1167\u11ab","\u1102\u1162\u11bc\u1107\u1161\u11bc","\u1102\u1162\u11bc\u110c\u1161\u11bc\u1100\u1169","\u1102\u1166\u11a8\u1110\u1161\u110b\u1175","\u1102\u1166\u11ba\u110d\u1162","\u1102\u1169\u1103\u1169\u11bc","\u1102\u1169\u1105\u1161\u11ab\u1109\u1162\u11a8","\u1102\u1169\u1105\u1167\u11a8","\u1102\u1169\u110b\u1175\u11ab","\u1102\u1169\u11a8\u110b\u1173\u11b7","\u1102\u1169\u11a8\u110e\u1161","\u1102\u1169\u11a8\u1112\u116a","\u1102\u1169\u11ab\u1105\u1175","\u1102\u1169\u11ab\u1106\u116e\u11ab","\u1102\u1169\u11ab\u110c\u1162\u11bc","\u1102\u1169\u11af\u110b\u1175","\u1102\u1169\u11bc\u1100\u116e","\u1102\u1169\u11bc\u1103\u1161\u11b7","\u1102\u1169\u11bc\u1106\u1175\u11ab","\u1102\u1169\u11bc\u1107\u116e","\u1102\u1169\u11bc\u110b\u1165\u11b8","\u1102\u1169\u11bc\u110c\u1161\u11bc","\u1102\u1169\u11bc\u110e\u1169\u11ab","\u1102\u1169\u11c1\u110b\u1175","\u1102\u116e\u11ab\u1103\u1169\u11bc\u110c\u1161","\u1102\u116e\u11ab\u1106\u116e\u11af","\u1102\u116e\u11ab\u110a\u1165\u11b8","\u1102\u1172\u110b\u116d\u11a8","\u1102\u1173\u1101\u1175\u11b7","\u1102\u1173\u11a8\u1103\u1162","\u1102\u1173\u11bc\u1103\u1169\u11bc\u110c\u1165\u11a8","\u1102\u1173\u11bc\u1105\u1167\u11a8","\u1103\u1161\u1107\u1161\u11bc","\u1103\u1161\u110b\u1163\u11bc\u1109\u1165\u11bc","\u1103\u1161\u110b\u1173\u11b7","\u1103\u1161\u110b\u1175\u110b\u1165\u1110\u1173","\u1103\u1161\u1112\u1162\u11bc","\u1103\u1161\u11ab\u1100\u1168","\u1103\u1161\u11ab\u1100\u1169\u11af","\u1103\u1161\u11ab\u1103\u1169\u11a8","\u1103\u1161\u11ab\u1106\u1161\u11ba","\u1103\u1161\u11ab\u1109\u116e\u11ab","\u1103\u1161\u11ab\u110b\u1165","\u1103\u1161\u11ab\u110b\u1171","\u1103\u1161\u11ab\u110c\u1165\u11b7","\u1103\u1161\u11ab\u110e\u1166","\u1103\u1161\u11ab\u110e\u116e","\u1103\u1161\u11ab\u1111\u1167\u11ab","\u1103\u1161\u11ab\u1111\u116e\u11bc","\u1103\u1161\u11af\u1100\u1163\u11af","\u1103\u1161\u11af\u1105\u1165","\u1103\u1161\u11af\u1105\u1167\u11a8","\u1103\u1161\u11af\u1105\u1175","\u1103\u1161\u11b0\u1100\u1169\u1100\u1175","\u1103\u1161\u11b7\u1103\u1161\u11bc","\u1103\u1161\u11b7\u1107\u1162","\u1103\u1161\u11b7\u110b\u116d","\u1103\u1161\u11b7\u110b\u1175\u11b7","\u1103\u1161\u11b8\u1107\u1167\u11ab","\u1103\u1161\u11b8\u110c\u1161\u11bc","\u1103\u1161\u11bc\u1100\u1173\u11ab","\u1103\u1161\u11bc\u1107\u116e\u11ab\u1100\u1161\u11ab","\u1103\u1161\u11bc\u110b\u1167\u11ab\u1112\u1175","\u1103\u1161\u11bc\u110c\u1161\u11bc","\u1103\u1162\u1100\u1172\u1106\u1169","\u1103\u1162\u1102\u1161\u11bd","\u1103\u1162\u1103\u1161\u11ab\u1112\u1175","\u1103\u1162\u1103\u1161\u11b8","\u1103\u1162\u1103\u1169\u1109\u1175","\u1103\u1162\u1105\u1163\u11a8","\u1103\u1162\u1105\u1163\u11bc","\u1103\u1162\u1105\u1172\u11a8","\u1103\u1162\u1106\u116e\u11ab","\u1103\u1162\u1107\u116e\u1107\u116e\u11ab","\u1103\u1162\u1109\u1175\u11ab","\u1103\u1162\u110b\u1173\u11bc","\u1103\u1162\u110c\u1161\u11bc","\u1103\u1162\u110c\u1165\u11ab","\u1103\u1162\u110c\u1165\u11b8","\u1103\u1162\u110c\u116e\u11bc","\u1103\u1162\u110e\u1162\u11a8","\u1103\u1162\u110e\u116e\u11af","\u1103\u1162\u110e\u116e\u11bc","\u1103\u1162\u1110\u1169\u11bc\u1105\u1167\u11bc","\u1103\u1162\u1112\u1161\u11a8","\u1103\u1162\u1112\u1161\u11ab\u1106\u1175\u11ab\u1100\u116e\u11a8","\u1103\u1162\u1112\u1161\u11b8\u1109\u1175\u11af","\u1103\u1162\u1112\u1167\u11bc","\u1103\u1165\u11bc\u110b\u1165\u1105\u1175","\u1103\u1166\u110b\u1175\u1110\u1173","\u1103\u1169\u1103\u1162\u110e\u1166","\u1103\u1169\u1103\u1165\u11a8","\u1103\u1169\u1103\u116e\u11a8","\u1103\u1169\u1106\u1161\u11bc","\u1103\u1169\u1109\u1165\u1100\u116a\u11ab","\u1103\u1169\u1109\u1175\u11b7","\u1103\u1169\u110b\u116e\u11b7","\u1103\u1169\u110b\u1175\u11b8","\u1103\u1169\u110c\u1161\u1100\u1175","\u1103\u1169\u110c\u1165\u1112\u1175","\u1103\u1169\u110c\u1165\u11ab","\u1103\u1169\u110c\u116e\u11bc","\u1103\u1169\u110e\u1161\u11a8","\u1103\u1169\u11a8\u1100\u1161\u11b7","\u1103\u1169\u11a8\u1105\u1175\u11b8","\u1103\u1169\u11a8\u1109\u1165","\u1103\u1169\u11a8\u110b\u1175\u11af","\u1103\u1169\u11a8\u110e\u1161\u11bc\u110c\u1165\u11a8","\u1103\u1169\u11bc\u1112\u116a\u110e\u1162\u11a8","\u1103\u1171\u11ba\u1106\u1169\u1109\u1173\u11b8","\u1103\u1171\u11ba\u1109\u1161\u11ab","\u1104\u1161\u11af\u110b\u1161\u110b\u1175","\u1106\u1161\u1102\u116e\u1105\u1161","\u1106\u1161\u1102\u1173\u11af","\u1106\u1161\u1103\u1161\u11bc","\u1106\u1161\u1105\u1161\u1110\u1169\u11ab","\u1106\u1161\u1105\u1167\u11ab","\u1106\u1161\u1106\u116e\u1105\u1175","\u1106\u1161\u1109\u1161\u110c\u1175","\u1106\u1161\u110b\u1163\u11a8","\u1106\u1161\u110b\u116d\u1102\u1166\u110c\u1173","\u1106\u1161\u110b\u1173\u11af","\u1106\u1161\u110b\u1173\u11b7","\u1106\u1161\u110b\u1175\u110f\u1173","\u1106\u1161\u110c\u116e\u11bc","\u1106\u1161\u110c\u1175\u1106\u1161\u11a8","\u1106\u1161\u110e\u1161\u11ab\u1100\u1161\u110c\u1175","\u1106\u1161\u110e\u1161\u11af","\u1106\u1161\u1112\u1173\u11ab","\u1106\u1161\u11a8\u1100\u1165\u11af\u1105\u1175","\u1106\u1161\u11a8\u1102\u1162","\u1106\u1161\u11a8\u1109\u1161\u11bc","\u1106\u1161\u11ab\u1102\u1161\u11b7","\u1106\u1161\u11ab\u1103\u116e","\u1106\u1161\u11ab\u1109\u1166","\u1106\u1161\u11ab\u110b\u1163\u11a8","\u1106\u1161\u11ab\u110b\u1175\u11af","\u1106\u1161\u11ab\u110c\u1165\u11b7","\u1106\u1161\u11ab\u110c\u1169\u11a8","\u1106\u1161\u11ab\u1112\u116a","\u1106\u1161\u11ad\u110b\u1175","\u1106\u1161\u11af\u1100\u1175","\u1106\u1161\u11af\u110a\u1173\u11b7","\u1106\u1161\u11af\u1110\u116e","\u1106\u1161\u11b7\u1103\u1162\u1105\u1169","\u1106\u1161\u11bc\u110b\u116f\u11ab\u1100\u1167\u11bc","\u1106\u1162\u1102\u1167\u11ab","\u1106\u1162\u1103\u1161\u11af","\u1106\u1162\u1105\u1167\u11a8","\u1106\u1162\u1107\u1165\u11ab","\u1106\u1162\u1109\u1173\u110f\u1165\u11b7","\u1106\u1162\u110b\u1175\u11af","\u1106\u1162\u110c\u1161\u11bc","\u1106\u1162\u11a8\u110c\u116e","\u1106\u1165\u11a8\u110b\u1175","\u1106\u1165\u11ab\u110c\u1165","\u1106\u1165\u11ab\u110c\u1175","\u1106\u1165\u11af\u1105\u1175","\u1106\u1166\u110b\u1175\u11af","\u1106\u1167\u1102\u1173\u1105\u1175","\u1106\u1167\u110e\u1175\u11af","\u1106\u1167\u11ab\u1103\u1161\u11b7","\u1106\u1167\u11af\u110e\u1175","\u1106\u1167\u11bc\u1103\u1161\u11ab","\u1106\u1167\u11bc\u1105\u1167\u11bc","\u1106\u1167\u11bc\u110b\u1168","\u1106\u1167\u11bc\u110b\u1174","\u1106\u1167\u11bc\u110c\u1165\u11af","\u1106\u1167\u11bc\u110e\u1175\u11bc","\u1106\u1167\u11bc\u1112\u1161\u11b7","\u1106\u1169\u1100\u1173\u11b7","\u1106\u1169\u1102\u1175\u1110\u1165","\u1106\u1169\u1103\u1166\u11af","\u1106\u1169\u1103\u1173\u11ab","\u1106\u1169\u1107\u1165\u11b7","\u1106\u1169\u1109\u1173\u11b8","\u1106\u1169\u110b\u1163\u11bc","\u1106\u1169\u110b\u1175\u11b7","\u1106\u1169\u110c\u1169\u1105\u1175","\u1106\u1169\u110c\u1175\u11b8","\u1106\u1169\u1110\u116e\u11bc\u110b\u1175","\u1106\u1169\u11a8\u1100\u1165\u11af\u110b\u1175","\u1106\u1169\u11a8\u1105\u1169\u11a8","\u1106\u1169\u11a8\u1109\u1161","\u1106\u1169\u11a8\u1109\u1169\u1105\u1175","\u1106\u1169\u11a8\u1109\u116e\u11b7","\u1106\u1169\u11a8\u110c\u1165\u11a8","\u1106\u1169\u11a8\u1111\u116d","\u1106\u1169\u11af\u1105\u1162","\u1106\u1169\u11b7\u1106\u1162","\u1106\u1169\u11b7\u1106\u116e\u1100\u1166","\u1106\u1169\u11b7\u1109\u1161\u11af","\u1106\u1169\u11b7\u1109\u1169\u11a8","\u1106\u1169\u11b7\u110c\u1175\u11ba","\u1106\u1169\u11b7\u1110\u1169\u11bc","\u1106\u1169\u11b8\u1109\u1175","\u1106\u116e\u1100\u116a\u11ab\u1109\u1175\u11b7","\u1106\u116e\u1100\u116e\u11bc\u1112\u116a","\u1106\u116e\u1103\u1165\u110b\u1171","\u1106\u116e\u1103\u1165\u11b7","\u1106\u116e\u1105\u1173\u11c1","\u1106\u116e\u1109\u1173\u11ab","\u1106\u116e\u110b\u1165\u11ba","\u1106\u116e\u110b\u1167\u11a8","\u1106\u116e\u110b\u116d\u11bc","\u1106\u116e\u110c\u1169\u1100\u1165\u11ab","\u1106\u116e\u110c\u1175\u1100\u1162","\u1106\u116e\u110e\u1165\u11a8","\u1106\u116e\u11ab\u1100\u116e","\u1106\u116e\u11ab\u1103\u1173\u11a8","\u1106\u116e\u11ab\u1107\u1165\u11b8","\u1106\u116e\u11ab\u1109\u1165","\u1106\u116e\u11ab\u110c\u1166","\u1106\u116e\u11ab\u1112\u1161\u11a8","\u1106\u116e\u11ab\u1112\u116a","\u1106\u116e\u11af\u1100\u1161","\u1106\u116e\u11af\u1100\u1165\u11ab","\u1106\u116e\u11af\u1100\u1167\u11af","\u1106\u116e\u11af\u1100\u1169\u1100\u1175","\u1106\u116e\u11af\u1105\u1169\u11ab","\u1106\u116e\u11af\u1105\u1175\u1112\u1161\u11a8","\u1106\u116e\u11af\u110b\u1173\u11b7","\u1106\u116e\u11af\u110c\u1175\u11af","\u1106\u116e\u11af\u110e\u1166","\u1106\u1175\u1100\u116e\u11a8","\u1106\u1175\u1103\u1175\u110b\u1165","\u1106\u1175\u1109\u1161\u110b\u1175\u11af","\u1106\u1175\u1109\u116e\u11af","\u1106\u1175\u110b\u1167\u11a8","\u1106\u1175\u110b\u116d\u11bc\u1109\u1175\u11af","\u1106\u1175\u110b\u116e\u11b7","\u1106\u1175\u110b\u1175\u11ab","\u1106\u1175\u1110\u1175\u11bc","\u1106\u1175\u1112\u1169\u11ab","\u1106\u1175\u11ab\u1100\u1161\u11ab","\u1106\u1175\u11ab\u110c\u1169\u11a8","\u1106\u1175\u11ab\u110c\u116e","\u1106\u1175\u11ae\u110b\u1173\u11b7","\u1106\u1175\u11af\u1100\u1161\u1105\u116e","\u1106\u1175\u11af\u1105\u1175\u1106\u1175\u1110\u1165","\u1106\u1175\u11c0\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u1100\u1161\u110c\u1175","\u1107\u1161\u1100\u116e\u1102\u1175","\u1107\u1161\u1102\u1161\u1102\u1161","\u1107\u1161\u1102\u1173\u11af","\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u1103\u1161\u11ba\u1100\u1161","\u1107\u1161\u1105\u1161\u11b7","\u1107\u1161\u110b\u1175\u1105\u1165\u1109\u1173","\u1107\u1161\u1110\u1161\u11bc","\u1107\u1161\u11a8\u1106\u116e\u11af\u1100\u116a\u11ab","\u1107\u1161\u11a8\u1109\u1161","\u1107\u1161\u11a8\u1109\u116e","\u1107\u1161\u11ab\u1103\u1162","\u1107\u1161\u11ab\u1103\u1173\u1109\u1175","\u1107\u1161\u11ab\u1106\u1161\u11af","\u1107\u1161\u11ab\u1107\u1161\u11af","\u1107\u1161\u11ab\u1109\u1165\u11bc","\u1107\u1161\u11ab\u110b\u1173\u11bc","\u1107\u1161\u11ab\u110c\u1161\u11bc","\u1107\u1161\u11ab\u110c\u116e\u11a8","\u1107\u1161\u11ab\u110c\u1175","\u1107\u1161\u11ab\u110e\u1161\u11ab","\u1107\u1161\u11ae\u110e\u1175\u11b7","\u1107\u1161\u11af\u1100\u1161\u1105\u1161\u11a8","\u1107\u1161\u11af\u1100\u1165\u11af\u110b\u1173\u11b7","\u1107\u1161\u11af\u1100\u1167\u11ab","\u1107\u1161\u11af\u1103\u1161\u11af","\u1107\u1161\u11af\u1105\u1166","\u1107\u1161\u11af\u1106\u1169\u11a8","\u1107\u1161\u11af\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u11af\u1109\u1162\u11bc","\u1107\u1161\u11af\u110b\u1173\u11b7","\u1107\u1161\u11af\u110c\u1161\u1100\u116e\u11a8","\u1107\u1161\u11af\u110c\u1165\u11ab","\u1107\u1161\u11af\u1110\u1169\u11b8","\u1107\u1161\u11af\u1111\u116d","\u1107\u1161\u11b7\u1112\u1161\u1102\u1173\u11af","\u1107\u1161\u11b8\u1100\u1173\u1105\u1173\u11ba","\u1107\u1161\u11b8\u1106\u1161\u11ba","\u1107\u1161\u11b8\u1109\u1161\u11bc","\u1107\u1161\u11b8\u1109\u1169\u11c0","\u1107\u1161\u11bc\u1100\u1173\u11b7","\u1107\u1161\u11bc\u1106\u1167\u11ab","\u1107\u1161\u11bc\u1106\u116e\u11ab","\u1107\u1161\u11bc\u1107\u1161\u1103\u1161\u11a8","\u1107\u1161\u11bc\u1107\u1165\u11b8","\u1107\u1161\u11bc\u1109\u1169\u11bc","\u1107\u1161\u11bc\u1109\u1175\u11a8","\u1107\u1161\u11bc\u110b\u1161\u11ab","\u1107\u1161\u11bc\u110b\u116e\u11af","\u1107\u1161\u11bc\u110c\u1175","\u1107\u1161\u11bc\u1112\u1161\u11a8","\u1107\u1161\u11bc\u1112\u1162","\u1107\u1161\u11bc\u1112\u1163\u11bc","\u1107\u1162\u1100\u1167\u11bc","\u1107\u1162\u1101\u1169\u11b8","\u1107\u1162\u1103\u1161\u11af","\u1107\u1162\u1103\u1173\u1106\u1175\u11ab\u1110\u1165\u11ab","\u1107\u1162\u11a8\u1103\u116e\u1109\u1161\u11ab","\u1107\u1162\u11a8\u1109\u1162\u11a8","\u1107\u1162\u11a8\u1109\u1165\u11bc","\u1107\u1162\u11a8\u110b\u1175\u11ab","\u1107\u1162\u11a8\u110c\u1166","\u1107\u1162\u11a8\u1112\u116a\u110c\u1165\u11b7","\u1107\u1165\u1105\u1173\u11ba","\u1107\u1165\u1109\u1165\u11ba","\u1107\u1165\u1110\u1173\u11ab","\u1107\u1165\u11ab\u1100\u1162","\u1107\u1165\u11ab\u110b\u1167\u11a8","\u1107\u1165\u11ab\u110c\u1175","\u1107\u1165\u11ab\u1112\u1169","\u1107\u1165\u11af\u1100\u1173\u11b7","\u1107\u1165\u11af\u1105\u1166","\u1107\u1165\u11af\u110a\u1165","\u1107\u1165\u11b7\u110b\u1171","\u1107\u1165\u11b7\u110b\u1175\u11ab","\u1107\u1165\u11b7\u110c\u116c","\u1107\u1165\u11b8\u1105\u1172\u11af","\u1107\u1165\u11b8\u110b\u116f\u11ab","\u1107\u1165\u11b8\u110c\u1165\u11a8","\u1107\u1165\u11b8\u110e\u1175\u11a8","\u1107\u1166\u110b\u1175\u110c\u1175\u11bc","\u1107\u1166\u11af\u1110\u1173","\u1107\u1167\u11ab\u1100\u1167\u11bc","\u1107\u1167\u11ab\u1103\u1169\u11bc","\u1107\u1167\u11ab\u1106\u1167\u11bc","\u1107\u1167\u11ab\u1109\u1175\u11ab","\u1107\u1167\u11ab\u1112\u1169\u1109\u1161","\u1107\u1167\u11ab\u1112\u116a","\u1107\u1167\u11af\u1103\u1169","\u1107\u1167\u11af\u1106\u1167\u11bc","\u1107\u1167\u11af\u110b\u1175\u11af","\u1107\u1167\u11bc\u1109\u1175\u11af","\u1107\u1167\u11bc\u110b\u1161\u1105\u1175","\u1107\u1167\u11bc\u110b\u116f\u11ab","\u1107\u1169\u1100\u116a\u11ab","\u1107\u1169\u1102\u1165\u1109\u1173","\u1107\u1169\u1105\u1161\u1109\u1162\u11a8","\u1107\u1169\u1105\u1161\u11b7","\u1107\u1169\u1105\u1173\u11b7","\u1107\u1169\u1109\u1161\u11bc","\u1107\u1169\u110b\u1161\u11ab","\u1107\u1169\u110c\u1161\u1100\u1175","\u1107\u1169\u110c\u1161\u11bc","\u1107\u1169\u110c\u1165\u11ab","\u1107\u1169\u110c\u1169\u11ab","\u1107\u1169\u1110\u1169\u11bc","\u1107\u1169\u1111\u1167\u11ab\u110c\u1165\u11a8","\u1107\u1169\u1112\u1165\u11b7","\u1107\u1169\u11a8\u1103\u1169","\u1107\u1169\u11a8\u1109\u1161","\u1107\u1169\u11a8\u1109\u116e\u11bc\u110b\u1161","\u1107\u1169\u11a8\u1109\u1173\u11b8","\u1107\u1169\u11a9\u110b\u1173\u11b7","\u1107\u1169\u11ab\u1100\u1167\u11a8\u110c\u1165\u11a8","\u1107\u1169\u11ab\u1105\u1162","\u1107\u1169\u11ab\u1107\u116e","\u1107\u1169\u11ab\u1109\u1161","\u1107\u1169\u11ab\u1109\u1165\u11bc","\u1107\u1169\u11ab\u110b\u1175\u11ab","\u1107\u1169\u11ab\u110c\u1175\u11af","\u1107\u1169\u11af\u1111\u1166\u11ab","\u1107\u1169\u11bc\u1109\u1161","\u1107\u1169\u11bc\u110c\u1175","\u1107\u1169\u11bc\u1110\u116e","\u1107\u116e\u1100\u1173\u11ab","\u1107\u116e\u1101\u1173\u1105\u1165\u110b\u116e\u11b7","\u1107\u116e\u1103\u1161\u11b7","\u1107\u116e\u1103\u1169\u11bc\u1109\u1161\u11ab","\u1107\u116e\u1106\u116e\u11ab","\u1107\u116e\u1107\u116e\u11ab","\u1107\u116e\u1109\u1161\u11ab","\u1107\u116e\u1109\u1161\u11bc","\u1107\u116e\u110b\u1165\u11bf","\u1107\u116e\u110b\u1175\u11ab","\u1107\u116e\u110c\u1161\u11a8\u110b\u116d\u11bc","\u1107\u116e\u110c\u1161\u11bc","\u1107\u116e\u110c\u1165\u11bc","\u1107\u116e\u110c\u1169\u11a8","\u1107\u116e\u110c\u1175\u1105\u1165\u11ab\u1112\u1175","\u1107\u116e\u110e\u1175\u11ab","\u1107\u116e\u1110\u1161\u11a8","\u1107\u116e\u1111\u116e\u11b7","\u1107\u116e\u1112\u116c\u110c\u1161\u11bc","\u1107\u116e\u11a8\u1107\u116e","\u1107\u116e\u11a8\u1112\u1161\u11ab","\u1107\u116e\u11ab\u1102\u1169","\u1107\u116e\u11ab\u1105\u1163\u11bc","\u1107\u116e\u11ab\u1105\u1175","\u1107\u116e\u11ab\u1106\u1167\u11bc","\u1107\u116e\u11ab\u1109\u1165\u11a8","\u1107\u116e\u11ab\u110b\u1163","\u1107\u116e\u11ab\u110b\u1171\u1100\u1175","\u1107\u116e\u11ab\u1111\u1175\u11af","\u1107\u116e\u11ab\u1112\u1169\u11bc\u1109\u1162\u11a8","\u1107\u116e\u11af\u1100\u1169\u1100\u1175","\u1107\u116e\u11af\u1100\u116a","\u1107\u116e\u11af\u1100\u116d","\u1107\u116e\u11af\u1101\u1169\u11be","\u1107\u116e\u11af\u1106\u1161\u11ab","\u1107\u116e\u11af\u1107\u1165\u11b8","\u1107\u116e\u11af\u1107\u1175\u11be","\u1107\u116e\u11af\u110b\u1161\u11ab","\u1107\u116e\u11af\u110b\u1175\u110b\u1175\u11a8","\u1107\u116e\u11af\u1112\u1162\u11bc","\u1107\u1173\u1105\u1162\u11ab\u1103\u1173","\u1107\u1175\u1100\u1173\u11a8","\u1107\u1175\u1102\u1161\u11ab","\u1107\u1175\u1102\u1175\u11af","\u1107\u1175\u1103\u116e\u11af\u1100\u1175","\u1107\u1175\u1103\u1175\u110b\u1169","\u1107\u1175\u1105\u1169\u1109\u1169","\u1107\u1175\u1106\u1161\u11ab","\u1107\u1175\u1106\u1167\u11bc","\u1107\u1175\u1106\u1175\u11af","\u1107\u1175\u1107\u1161\u1105\u1161\u11b7","\u1107\u1175\u1107\u1175\u11b7\u1107\u1161\u11b8","\u1107\u1175\u1109\u1161\u11bc","\u1107\u1175\u110b\u116d\u11bc","\u1107\u1175\u110b\u1172\u11af","\u1107\u1175\u110c\u116e\u11bc","\u1107\u1175\u1110\u1161\u1106\u1175\u11ab","\u1107\u1175\u1111\u1161\u11ab","\u1107\u1175\u11af\u1103\u1175\u11bc","\u1107\u1175\u11ba\u1106\u116e\u11af","\u1107\u1175\u11ba\u1107\u1161\u11bc\u110b\u116e\u11af","\u1107\u1175\u11ba\u110c\u116e\u11af\u1100\u1175","\u1107\u1175\u11be\u1101\u1161\u11af","\u1108\u1161\u11af\u1100\u1161\u11ab\u1109\u1162\u11a8","\u1108\u1161\u11af\u1105\u1162","\u1108\u1161\u11af\u1105\u1175","\u1109\u1161\u1100\u1165\u11ab","\u1109\u1161\u1100\u1168\u110c\u1165\u11af","\u1109\u1161\u1102\u1161\u110b\u1175","\u1109\u1161\u1102\u1163\u11bc","\u1109\u1161\u1105\u1161\u11b7","\u1109\u1161\u1105\u1161\u11bc","\u1109\u1161\u1105\u1175\u11b8","\u1109\u1161\u1106\u1169\u1102\u1175\u11b7","\u1109\u1161\u1106\u116e\u11af","\u1109\u1161\u1107\u1161\u11bc","\u1109\u1161\u1109\u1161\u11bc","\u1109\u1161\u1109\u1162\u11bc\u1112\u116a\u11af","\u1109\u1161\u1109\u1165\u11af","\u1109\u1161\u1109\u1173\u11b7","\u1109\u1161\u1109\u1175\u11af","\u1109\u1161\u110b\u1165\u11b8","\u1109\u1161\u110b\u116d\u11bc","\u1109\u1161\u110b\u116f\u11af","\u1109\u1161\u110c\u1161\u11bc","\u1109\u1161\u110c\u1165\u11ab","\u1109\u1161\u110c\u1175\u11ab","\u1109\u1161\u110e\u1169\u11ab","\u1109\u1161\u110e\u116e\u11ab\u1100\u1175","\u1109\u1161\u1110\u1161\u11bc","\u1109\u1161\u1110\u116e\u1105\u1175","\u1109\u1161\u1112\u1173\u11af","\u1109\u1161\u11ab\u1100\u1175\u11af","\u1109\u1161\u11ab\u1107\u116e\u110b\u1175\u11ab\u1100\u116a","\u1109\u1161\u11ab\u110b\u1165\u11b8","\u1109\u1161\u11ab\u110e\u1162\u11a8","\u1109\u1161\u11af\u1105\u1175\u11b7","\u1109\u1161\u11af\u110b\u1175\u11ab","\u1109\u1161\u11af\u110d\u1161\u11a8","\u1109\u1161\u11b7\u1100\u1168\u1110\u1161\u11bc","\u1109\u1161\u11b7\u1100\u116e\u11a8","\u1109\u1161\u11b7\u1109\u1175\u11b8","\u1109\u1161\u11b7\u110b\u116f\u11af","\u1109\u1161\u11b7\u110e\u1169\u11ab","\u1109\u1161\u11bc\u1100\u116a\u11ab","\u1109\u1161\u11bc\u1100\u1173\u11b7","\u1109\u1161\u11bc\u1103\u1162","\u1109\u1161\u11bc\u1105\u1172","\u1109\u1161\u11bc\u1107\u1161\u11ab\u1100\u1175","\u1109\u1161\u11bc\u1109\u1161\u11bc","\u1109\u1161\u11bc\u1109\u1175\u11a8","\u1109\u1161\u11bc\u110b\u1165\u11b8","\u1109\u1161\u11bc\u110b\u1175\u11ab","\u1109\u1161\u11bc\u110c\u1161","\u1109\u1161\u11bc\u110c\u1165\u11b7","\u1109\u1161\u11bc\u110e\u1165","\u1109\u1161\u11bc\u110e\u116e","\u1109\u1161\u11bc\u1110\u1162","\u1109\u1161\u11bc\u1111\u116d","\u1109\u1161\u11bc\u1111\u116e\u11b7","\u1109\u1161\u11bc\u1112\u116a\u11bc","\u1109\u1162\u1107\u1167\u11a8","\u1109\u1162\u11a8\u1101\u1161\u11af","\u1109\u1162\u11a8\u110b\u1167\u11ab\u1111\u1175\u11af","\u1109\u1162\u11bc\u1100\u1161\u11a8","\u1109\u1162\u11bc\u1106\u1167\u11bc","\u1109\u1162\u11bc\u1106\u116e\u11af","\u1109\u1162\u11bc\u1107\u1161\u11bc\u1109\u1169\u11bc","\u1109\u1162\u11bc\u1109\u1161\u11ab","\u1109\u1162\u11bc\u1109\u1165\u11ab","\u1109\u1162\u11bc\u1109\u1175\u11ab","\u1109\u1162\u11bc\u110b\u1175\u11af","\u1109\u1162\u11bc\u1112\u116a\u11af","\u1109\u1165\u1105\u1161\u11b8","\u1109\u1165\u1105\u1173\u11ab","\u1109\u1165\u1106\u1167\u11bc","\u1109\u1165\u1106\u1175\u11ab","\u1109\u1165\u1107\u1175\u1109\u1173","\u1109\u1165\u110b\u1163\u11bc","\u1109\u1165\u110b\u116e\u11af","\u1109\u1165\u110c\u1165\u11a8","\u1109\u1165\u110c\u1165\u11b7","\u1109\u1165\u110d\u1169\u11a8","\u1109\u1165\u110f\u1173\u11af","\u1109\u1165\u11a8\u1109\u1161","\u1109\u1165\u11a8\u110b\u1172","\u1109\u1165\u11ab\u1100\u1165","\u1109\u1165\u11ab\u1106\u116e\u11af","\u1109\u1165\u11ab\u1107\u1162","\u1109\u1165\u11ab\u1109\u1162\u11bc","\u1109\u1165\u11ab\u1109\u116e","\u1109\u1165\u11ab\u110b\u116f\u11ab","\u1109\u1165\u11ab\u110c\u1161\u11bc","\u1109\u1165\u11ab\u110c\u1165\u11ab","\u1109\u1165\u11ab\u1110\u1162\u11a8","\u1109\u1165\u11ab\u1111\u116e\u11bc\u1100\u1175","\u1109\u1165\u11af\u1100\u1165\u110c\u1175","\u1109\u1165\u11af\u1102\u1161\u11af","\u1109\u1165\u11af\u1105\u1165\u11bc\u1110\u1161\u11bc","\u1109\u1165\u11af\u1106\u1167\u11bc","\u1109\u1165\u11af\u1106\u116e\u11ab","\u1109\u1165\u11af\u1109\u1161","\u1109\u1165\u11af\u110b\u1161\u11a8\u1109\u1161\u11ab","\u1109\u1165\u11af\u110e\u1175","\u1109\u1165\u11af\u1110\u1161\u11bc","\u1109\u1165\u11b8\u110a\u1175","\u1109\u1165\u11bc\u1100\u1169\u11bc","\u1109\u1165\u11bc\u1103\u1161\u11bc","\u1109\u1165\u11bc\u1106\u1167\u11bc","\u1109\u1165\u11bc\u1107\u1167\u11af","\u1109\u1165\u11bc\u110b\u1175\u11ab","\u1109\u1165\u11bc\u110c\u1161\u11bc","\u1109\u1165\u11bc\u110c\u1165\u11a8","\u1109\u1165\u11bc\u110c\u1175\u11af","\u1109\u1165\u11bc\u1112\u1161\u11b7","\u1109\u1166\u1100\u1173\u11b7","\u1109\u1166\u1106\u1175\u1102\u1161","\u1109\u1166\u1109\u1161\u11bc","\u1109\u1166\u110b\u116f\u11af","\u1109\u1166\u110c\u1169\u11bc\u1103\u1162\u110b\u116a\u11bc","\u1109\u1166\u1110\u1161\u11a8","\u1109\u1166\u11ab\u1110\u1165","\u1109\u1166\u11ab\u1110\u1175\u1106\u1175\u1110\u1165","\u1109\u1166\u11ba\u110d\u1162","\u1109\u1169\u1100\u1172\u1106\u1169","\u1109\u1169\u1100\u1173\u11a8\u110c\u1165\u11a8","\u1109\u1169\u1100\u1173\u11b7","\u1109\u1169\u1102\u1161\u1100\u1175","\u1109\u1169\u1102\u1167\u11ab","\u1109\u1169\u1103\u1173\u11a8","\u1109\u1169\u1106\u1161\u11bc","\u1109\u1169\u1106\u116e\u11ab","\u1109\u1169\u1109\u1165\u11af","\u1109\u1169\u1109\u1169\u11a8","\u1109\u1169\u110b\u1161\u1100\u116a","\u1109\u1169\u110b\u116d\u11bc","\u1109\u1169\u110b\u116f\u11ab","\u1109\u1169\u110b\u1173\u11b7","\u1109\u1169\u110c\u116e\u11bc\u1112\u1175","\u1109\u1169\u110c\u1175\u1111\u116e\u11b7","\u1109\u1169\u110c\u1175\u11af","\u1109\u1169\u1111\u116e\u11bc","\u1109\u1169\u1112\u1167\u11bc","\u1109\u1169\u11a8\u1103\u1161\u11b7","\u1109\u1169\u11a8\u1103\u1169","\u1109\u1169\u11a8\u110b\u1169\u11ba","\u1109\u1169\u11ab\u1100\u1161\u1105\u1161\u11a8","\u1109\u1169\u11ab\u1100\u1175\u11af","\u1109\u1169\u11ab\u1102\u1167","\u1109\u1169\u11ab\u1102\u1175\u11b7","\u1109\u1169\u11ab\u1103\u1173\u11bc","\u1109\u1169\u11ab\u1106\u1169\u11a8","\u1109\u1169\u11ab\u1108\u1167\u11a8","\u1109\u1169\u11ab\u1109\u1175\u11af","\u1109\u1169\u11ab\u110c\u1175\u11af","\u1109\u1169\u11ab\u1110\u1169\u11b8","\u1109\u1169\u11ab\u1112\u1162","\u1109\u1169\u11af\u110c\u1175\u11a8\u1112\u1175","\u1109\u1169\u11b7\u110a\u1175","\u1109\u1169\u11bc\u110b\u1161\u110c\u1175","\u1109\u1169\u11bc\u110b\u1175","\u1109\u1169\u11bc\u1111\u1167\u11ab","\u1109\u116c\u1100\u1169\u1100\u1175","\u1109\u116d\u1111\u1175\u11bc","\u1109\u116e\u1100\u1165\u11ab","\u1109\u116e\u1102\u1167\u11ab","\u1109\u116e\u1103\u1161\u11ab","\u1109\u116e\u1103\u1169\u11ba\u1106\u116e\u11af","\u1109\u116e\u1103\u1169\u11bc\u110c\u1165\u11a8","\u1109\u116e\u1106\u1167\u11ab","\u1109\u116e\u1106\u1167\u11bc","\u1109\u116e\u1107\u1161\u11a8","\u1109\u116e\u1109\u1161\u11bc","\u1109\u116e\u1109\u1165\u11a8","\u1109\u116e\u1109\u116e\u11af","\u1109\u116e\u1109\u1175\u1105\u1169","\u1109\u116e\u110b\u1165\u11b8","\u1109\u116e\u110b\u1167\u11b7","\u1109\u116e\u110b\u1167\u11bc","\u1109\u116e\u110b\u1175\u11b8","\u1109\u116e\u110c\u116e\u11ab","\u1109\u116e\u110c\u1175\u11b8","\u1109\u116e\u110e\u116e\u11af","\u1109\u116e\u110f\u1165\u11ba","\u1109\u116e\u1111\u1175\u11af","\u1109\u116e\u1112\u1161\u11a8","\u1109\u116e\u1112\u1165\u11b7\u1109\u1162\u11bc","\u1109\u116e\u1112\u116a\u1100\u1175","\u1109\u116e\u11a8\u1102\u1167","\u1109\u116e\u11a8\u1109\u1169","\u1109\u116e\u11a8\u110c\u1166","\u1109\u116e\u11ab\u1100\u1161\u11ab","\u1109\u116e\u11ab\u1109\u1165","\u1109\u116e\u11ab\u1109\u116e","\u1109\u116e\u11ab\u1109\u1175\u11a8\u1100\u1161\u11ab","\u1109\u116e\u11ab\u110b\u1171","\u1109\u116e\u11ae\u1100\u1161\u1105\u1161\u11a8","\u1109\u116e\u11af\u1107\u1167\u11bc","\u1109\u116e\u11af\u110c\u1175\u11b8","\u1109\u116e\u11ba\u110c\u1161","\u1109\u1173\u1102\u1175\u11b7","\u1109\u1173\u1106\u116e\u11af","\u1109\u1173\u1109\u1173\u1105\u1169","\u1109\u1173\u1109\u1173\u11bc","\u1109\u1173\u110b\u1170\u1110\u1165","\u1109\u1173\u110b\u1171\u110e\u1175","\u1109\u1173\u110f\u1166\u110b\u1175\u1110\u1173","\u1109\u1173\u1110\u1172\u1103\u1175\u110b\u1169","\u1109\u1173\u1110\u1173\u1105\u1166\u1109\u1173","\u1109\u1173\u1111\u1169\u110e\u1173","\u1109\u1173\u11af\u110d\u1165\u11a8","\u1109\u1173\u11af\u1111\u1173\u11b7","\u1109\u1173\u11b8\u1100\u116a\u11ab","\u1109\u1173\u11b8\u1100\u1175","\u1109\u1173\u11bc\u1100\u1162\u11a8","\u1109\u1173\u11bc\u1105\u1175","\u1109\u1173\u11bc\u1107\u116e","\u1109\u1173\u11bc\u110b\u116d\u11bc\u110e\u1161","\u1109\u1173\u11bc\u110c\u1175\u11ab","\u1109\u1175\u1100\u1161\u11a8","\u1109\u1175\u1100\u1161\u11ab","\u1109\u1175\u1100\u1169\u11af","\u1109\u1175\u1100\u1173\u11b7\u110e\u1175","\u1109\u1175\u1102\u1161\u1105\u1175\u110b\u1169","\u1109\u1175\u1103\u1162\u11a8","\u1109\u1175\u1105\u1175\u110c\u1173","\u1109\u1175\u1106\u1166\u11ab\u1110\u1173","\u1109\u1175\u1106\u1175\u11ab","\u1109\u1175\u1107\u116e\u1106\u1169","\u1109\u1175\u1109\u1165\u11ab","\u1109\u1175\u1109\u1165\u11af","\u1109\u1175\u1109\u1173\u1110\u1166\u11b7","\u1109\u1175\u110b\u1161\u1107\u1165\u110c\u1175","\u1109\u1175\u110b\u1165\u1106\u1165\u1102\u1175","\u1109\u1175\u110b\u116f\u11af","\u1109\u1175\u110b\u1175\u11ab","\u1109\u1175\u110b\u1175\u11af","\u1109\u1175\u110c\u1161\u11a8","\u1109\u1175\u110c\u1161\u11bc","\u1109\u1175\u110c\u1165\u11af","\u1109\u1175\u110c\u1165\u11b7","\u1109\u1175\u110c\u116e\u11bc","\u1109\u1175\u110c\u1173\u11ab","\u1109\u1175\u110c\u1175\u11b8","\u1109\u1175\u110e\u1165\u11bc","\u1109\u1175\u1112\u1161\u11b8","\u1109\u1175\u1112\u1165\u11b7","\u1109\u1175\u11a8\u1100\u116e","\u1109\u1175\u11a8\u1100\u1175","\u1109\u1175\u11a8\u1103\u1161\u11bc","\u1109\u1175\u11a8\u1105\u1163\u11bc","\u1109\u1175\u11a8\u1105\u116d\u1111\u116e\u11b7","\u1109\u1175\u11a8\u1106\u116e\u11af","\u1109\u1175\u11a8\u1108\u1161\u11bc","\u1109\u1175\u11a8\u1109\u1161","\u1109\u1175\u11a8\u1109\u1162\u11bc\u1112\u116a\u11af","\u1109\u1175\u11a8\u110e\u1169","\u1109\u1175\u11a8\u1110\u1161\u11a8","\u1109\u1175\u11a8\u1111\u116e\u11b7","\u1109\u1175\u11ab\u1100\u1169","\u1109\u1175\u11ab\u1100\u1172","\u1109\u1175\u11ab\u1102\u1167\u11b7","\u1109\u1175\u11ab\u1106\u116e\u11ab","\u1109\u1175\u11ab\u1107\u1161\u11af","\u1109\u1175\u11ab\u1107\u1175","\u1109\u1175\u11ab\u1109\u1161","\u1109\u1175\u11ab\u1109\u1166","\u1109\u1175\u11ab\u110b\u116d\u11bc","\u1109\u1175\u11ab\u110c\u1166\u1111\u116e\u11b7","\u1109\u1175\u11ab\u110e\u1165\u11bc","\u1109\u1175\u11ab\u110e\u1166","\u1109\u1175\u11ab\u1112\u116a","\u1109\u1175\u11af\u1100\u1161\u11b7","\u1109\u1175\u11af\u1102\u1162","\u1109\u1175\u11af\u1105\u1167\u11a8","\u1109\u1175\u11af\u1105\u1168","\u1109\u1175\u11af\u1106\u1161\u11bc","\u1109\u1175\u11af\u1109\u116e","\u1109\u1175\u11af\u1109\u1173\u11b8","\u1109\u1175\u11af\u1109\u1175","\u1109\u1175\u11af\u110c\u1161\u11bc","\u1109\u1175\u11af\u110c\u1165\u11bc","\u1109\u1175\u11af\u110c\u1175\u11af\u110c\u1165\u11a8","\u1109\u1175\u11af\u110e\u1165\u11ab","\u1109\u1175\u11af\u110e\u1166","\u1109\u1175\u11af\u110f\u1165\u11ba","\u1109\u1175\u11af\u1110\u1162","\u1109\u1175\u11af\u1111\u1162","\u1109\u1175\u11af\u1112\u1165\u11b7","\u1109\u1175\u11af\u1112\u1167\u11ab","\u1109\u1175\u11b7\u1105\u1175","\u1109\u1175\u11b7\u1107\u116e\u1105\u1173\u11b7","\u1109\u1175\u11b7\u1109\u1161","\u1109\u1175\u11b7\u110c\u1161\u11bc","\u1109\u1175\u11b7\u110c\u1165\u11bc","\u1109\u1175\u11b7\u1111\u1161\u11ab","\u110a\u1161\u11bc\u1103\u116e\u11bc\u110b\u1175","\u110a\u1175\u1105\u1173\u11b7","\u110a\u1175\u110b\u1161\u11ba","\u110b\u1161\u1100\u1161\u110a\u1175","\u110b\u1161\u1102\u1161\u110b\u116e\u11ab\u1109\u1165","\u110b\u1161\u1103\u1173\u1102\u1175\u11b7","\u110b\u1161\u1103\u1173\u11af","\u110b\u1161\u1109\u1171\u110b\u116e\u11b7","\u110b\u1161\u1109\u1173\u1111\u1161\u11af\u1110\u1173","\u110b\u1161\u1109\u1175\u110b\u1161","\u110b\u1161\u110b\u116e\u11af\u1105\u1165","\u110b\u1161\u110c\u1165\u110a\u1175","\u110b\u1161\u110c\u116e\u11b7\u1106\u1161","\u110b\u1161\u110c\u1175\u11a8","\u110b\u1161\u110e\u1175\u11b7","\u110b\u1161\u1111\u1161\u1110\u1173","\u110b\u1161\u1111\u1173\u1105\u1175\u110f\u1161","\u110b\u1161\u1111\u1173\u11b7","\u110b\u1161\u1112\u1169\u11b8","\u110b\u1161\u1112\u1173\u11ab","\u110b\u1161\u11a8\u1100\u1175","\u110b\u1161\u11a8\u1106\u1169\u11bc","\u110b\u1161\u11a8\u1109\u116e","\u110b\u1161\u11ab\u1100\u1162","\u110b\u1161\u11ab\u1100\u1167\u11bc","\u110b\u1161\u11ab\u1100\u116a","\u110b\u1161\u11ab\u1102\u1162","\u110b\u1161\u11ab\u1102\u1167\u11bc","\u110b\u1161\u11ab\u1103\u1169\u11bc","\u110b\u1161\u11ab\u1107\u1161\u11bc","\u110b\u1161\u11ab\u1107\u116e","\u110b\u1161\u11ab\u110c\u116e","\u110b\u1161\u11af\u1105\u116e\u1106\u1175\u1102\u1172\u11b7","\u110b\u1161\u11af\u110f\u1169\u110b\u1169\u11af","\u110b\u1161\u11b7\u1109\u1175","\u110b\u1161\u11b7\u110f\u1165\u11ba","\u110b\u1161\u11b8\u1105\u1167\u11a8","\u110b\u1161\u11c1\u1102\u1161\u11af","\u110b\u1161\u11c1\u1106\u116e\u11ab","\u110b\u1162\u110b\u1175\u11ab","\u110b\u1162\u110c\u1165\u11bc","\u110b\u1162\u11a8\u1109\u116e","\u110b\u1162\u11af\u1107\u1165\u11b7","\u110b\u1163\u1100\u1161\u11ab","\u110b\u1163\u1103\u1161\u11ab","\u110b\u1163\u110b\u1169\u11bc","\u110b\u1163\u11a8\u1100\u1161\u11ab","\u110b\u1163\u11a8\u1100\u116e\u11a8","\u110b\u1163\u11a8\u1109\u1169\u11a8","\u110b\u1163\u11a8\u1109\u116e","\u110b\u1163\u11a8\u110c\u1165\u11b7","\u110b\u1163\u11a8\u1111\u116e\u11b7","\u110b\u1163\u11a8\u1112\u1169\u11ab\u1102\u1167","\u110b\u1163\u11bc\u1102\u1167\u11b7","\u110b\u1163\u11bc\u1105\u1167\u11a8","\u110b\u1163\u11bc\u1106\u1161\u11af","\u110b\u1163\u11bc\u1107\u1162\u110e\u116e","\u110b\u1163\u11bc\u110c\u116e","\u110b\u1163\u11bc\u1111\u1161","\u110b\u1165\u1103\u116e\u11b7","\u110b\u1165\u1105\u1167\u110b\u116e\u11b7","\u110b\u1165\u1105\u1173\u11ab","\u110b\u1165\u110c\u1166\u11ba\u1107\u1161\u11b7","\u110b\u1165\u110d\u1162\u11bb\u1103\u1173\u11ab","\u110b\u1165\u110d\u1165\u1103\u1161\u1100\u1161","\u110b\u1165\u110d\u1165\u11ab\u110c\u1175","\u110b\u1165\u11ab\u1102\u1175","\u110b\u1165\u11ab\u1103\u1165\u11a8","\u110b\u1165\u11ab\u1105\u1169\u11ab","\u110b\u1165\u11ab\u110b\u1165","\u110b\u1165\u11af\u1100\u116e\u11af","\u110b\u1165\u11af\u1105\u1173\u11ab","\u110b\u1165\u11af\u110b\u1173\u11b7","\u110b\u1165\u11af\u1111\u1175\u11ba","\u110b\u1165\u11b7\u1106\u1161","\u110b\u1165\u11b8\u1106\u116e","\u110b\u1165\u11b8\u110c\u1169\u11bc","\u110b\u1165\u11b8\u110e\u1166","\u110b\u1165\u11bc\u1103\u1165\u11bc\u110b\u1175","\u110b\u1165\u11bc\u1106\u1161\u11bc","\u110b\u1165\u11bc\u1110\u1165\u1105\u1175","\u110b\u1165\u11bd\u1100\u1173\u110c\u1166","\u110b\u1166\u1102\u1165\u110c\u1175","\u110b\u1166\u110b\u1165\u110f\u1165\u11ab","\u110b\u1166\u11ab\u110c\u1175\u11ab","\u110b\u1167\u1100\u1165\u11ab","\u110b\u1167\u1100\u1169\u1109\u1162\u11bc","\u110b\u1167\u1100\u116a\u11ab","\u110b\u1167\u1100\u116e\u11ab","\u110b\u1167\u1100\u116f\u11ab","\u110b\u1167\u1103\u1162\u1109\u1162\u11bc","\u110b\u1167\u1103\u1165\u11b2","\u110b\u1167\u1103\u1169\u11bc\u1109\u1162\u11bc","\u110b\u1167\u1103\u1173\u11ab","\u110b\u1167\u1105\u1169\u11ab","\u110b\u1167\u1105\u1173\u11b7","\u110b\u1167\u1109\u1165\u11ba","\u110b\u1167\u1109\u1165\u11bc","\u110b\u1167\u110b\u116a\u11bc","\u110b\u1167\u110b\u1175\u11ab","\u110b\u1167\u110c\u1165\u11ab\u1112\u1175","\u110b\u1167\u110c\u1175\u11a8\u110b\u116f\u11ab","\u110b\u1167\u1112\u1161\u11a8\u1109\u1162\u11bc","\u110b\u1167\u1112\u1162\u11bc","\u110b\u1167\u11a8\u1109\u1161","\u110b\u1167\u11a8\u1109\u1175","\u110b\u1167\u11a8\u1112\u1161\u11af","\u110b\u1167\u11ab\u1100\u1167\u11af","\u110b\u1167\u11ab\u1100\u116e","\u110b\u1167\u11ab\u1100\u1173\u11a8","\u110b\u1167\u11ab\u1100\u1175","\u110b\u1167\u11ab\u1105\u1161\u11a8","\u110b\u1167\u11ab\u1109\u1165\u11af","\u110b\u1167\u11ab\u1109\u1166","\u110b\u1167\u11ab\u1109\u1169\u11a8","\u110b\u1167\u11ab\u1109\u1173\u11b8","\u110b\u1167\u11ab\u110b\u1162","\u110b\u1167\u11ab\u110b\u1168\u110b\u1175\u11ab","\u110b\u1167\u11ab\u110b\u1175\u11ab","\u110b\u1167\u11ab\u110c\u1161\u11bc","\u110b\u1167\u11ab\u110c\u116e","\u110b\u1167\u11ab\u110e\u116e\u11af","\u110b\u1167\u11ab\u1111\u1175\u11af","\u110b\u1167\u11ab\u1112\u1161\u11b8","\u110b\u1167\u11ab\u1112\u1172","\u110b\u1167\u11af\u1100\u1175","\u110b\u1167\u11af\u1106\u1162","\u110b\u1167\u11af\u1109\u116c","\u110b\u1167\u11af\u1109\u1175\u11b7\u1112\u1175","\u110b\u1167\u11af\u110c\u1165\u11bc","\u110b\u1167\u11af\u110e\u1161","\u110b\u1167\u11af\u1112\u1173\u11af","\u110b\u1167\u11b7\u1105\u1167","\u110b\u1167\u11b8\u1109\u1165","\u110b\u1167\u11bc\u1100\u116e\u11a8","\u110b\u1167\u11bc\u1102\u1161\u11b7","\u110b\u1167\u11bc\u1109\u1161\u11bc","\u110b\u1167\u11bc\u110b\u1163\u11bc","\u110b\u1167\u11bc\u110b\u1167\u11a8","\u110b\u1167\u11bc\u110b\u116e\u11bc","\u110b\u1167\u11bc\u110b\u116f\u11ab\u1112\u1175","\u110b\u1167\u11bc\u1112\u1161","\u110b\u1167\u11bc\u1112\u1163\u11bc","\u110b\u1167\u11bc\u1112\u1169\u11ab","\u110b\u1167\u11bc\u1112\u116a","\u110b\u1167\u11c1\u1100\u116e\u1105\u1175","\u110b\u1167\u11c1\u1107\u1161\u11bc","\u110b\u1167\u11c1\u110c\u1175\u11b8","\u110b\u1168\u1100\u1161\u11b7","\u110b\u1168\u1100\u1173\u11b7","\u110b\u1168\u1107\u1161\u11bc","\u110b\u1168\u1109\u1161\u11ab","\u110b\u1168\u1109\u1161\u11bc","\u110b\u1168\u1109\u1165\u11ab","\u110b\u1168\u1109\u116e\u11af","\u110b\u1168\u1109\u1173\u11b8","\u110b\u1168\u1109\u1175\u11a8\u110c\u1161\u11bc","\u110b\u1168\u110b\u1163\u11a8","\u110b\u1168\u110c\u1165\u11ab","\u110b\u1168\u110c\u1165\u11af","\u110b\u1168\u110c\u1165\u11bc","\u110b\u1168\u110f\u1165\u11ab\u1103\u1162","\u110b\u1168\u11ba\u1102\u1161\u11af","\u110b\u1169\u1102\u1173\u11af","\u110b\u1169\u1105\u1161\u11a8","\u110b\u1169\u1105\u1162\u11ba\u1103\u1169\u11bc\u110b\u1161\u11ab","\u110b\u1169\u1105\u1166\u11ab\u110c\u1175","\u110b\u1169\u1105\u1169\u110c\u1175","\u110b\u1169\u1105\u1173\u11ab\u1107\u1161\u11af","\u110b\u1169\u1107\u1173\u11ab","\u110b\u1169\u1109\u1175\u11b8","\u110b\u1169\u110b\u1167\u11b7","\u110b\u1169\u110b\u116f\u11af","\u110b\u1169\u110c\u1165\u11ab","\u110b\u1169\u110c\u1175\u11a8","\u110b\u1169\u110c\u1175\u11bc\u110b\u1165","\u110b\u1169\u1111\u1166\u1105\u1161","\u110b\u1169\u1111\u1175\u1109\u1173\u1110\u1166\u11af","\u110b\u1169\u1112\u1175\u1105\u1167","\u110b\u1169\u11a8\u1109\u1161\u11bc","\u110b\u1169\u11a8\u1109\u116e\u1109\u116e","\u110b\u1169\u11ab\u1100\u1161\u11bd","\u110b\u1169\u11ab\u1105\u1161\u110b\u1175\u11ab","\u110b\u1169\u11ab\u1106\u1169\u11b7","\u110b\u1169\u11ab\u110c\u1169\u11bc\u110b\u1175\u11af","\u110b\u1169\u11ab\u1110\u1169\u11bc","\u110b\u1169\u11af\u1100\u1161\u110b\u1173\u11af","\u110b\u1169\u11af\u1105\u1175\u11b7\u1111\u1175\u11a8","\u110b\u1169\u11af\u1112\u1162","\u110b\u1169\u11ba\u110e\u1161\u1105\u1175\u11b7","\u110b\u116a\u110b\u1175\u1109\u1167\u110e\u1173","\u110b\u116a\u110b\u1175\u11ab","\u110b\u116a\u11ab\u1109\u1165\u11bc","\u110b\u116a\u11ab\u110c\u1165\u11ab","\u110b\u116a\u11bc\u1107\u1175","\u110b\u116a\u11bc\u110c\u1161","\u110b\u116b\u1102\u1163\u1112\u1161\u1106\u1167\u11ab","\u110b\u116b\u11ab\u110c\u1175","\u110b\u116c\u1100\u1161\u11ba\u110c\u1175\u11b8","\u110b\u116c\u1100\u116e\u11a8","\u110b\u116c\u1105\u1169\u110b\u116e\u11b7","\u110b\u116c\u1109\u1161\u11b7\u110e\u1169\u11ab","\u110b\u116c\u110e\u116e\u11af","\u110b\u116c\u110e\u1175\u11b7","\u110b\u116c\u1112\u1161\u11af\u1106\u1165\u1102\u1175","\u110b\u116c\u11ab\u1107\u1161\u11af","\u110b\u116c\u11ab\u1109\u1169\u11ab","\u110b\u116c\u11ab\u110d\u1169\u11a8","\u110b\u116d\u1100\u1173\u11b7","\u110b\u116d\u110b\u1175\u11af","\u110b\u116d\u110c\u1173\u11b7","\u110b\u116d\u110e\u1165\u11bc","\u110b\u116d\u11bc\u1100\u1175","\u110b\u116d\u11bc\u1109\u1165","\u110b\u116d\u11bc\u110b\u1165","\u110b\u116e\u1109\u1161\u11ab","\u110b\u116e\u1109\u1165\u11ab","\u110b\u116e\u1109\u1173\u11bc","\u110b\u116e\u110b\u1167\u11ab\u1112\u1175","\u110b\u116e\u110c\u1165\u11bc","\u110b\u116e\u110e\u1166\u1100\u116e\u11a8","\u110b\u116e\u1111\u1167\u11ab","\u110b\u116e\u11ab\u1103\u1169\u11bc","\u110b\u116e\u11ab\u1106\u1167\u11bc","\u110b\u116e\u11ab\u1107\u1161\u11ab","\u110b\u116e\u11ab\u110c\u1165\u11ab","\u110b\u116e\u11ab\u1112\u1162\u11bc","\u110b\u116e\u11af\u1109\u1161\u11ab","\u110b\u116e\u11af\u110b\u1173\u11b7","\u110b\u116e\u11b7\u110c\u1175\u11a8\u110b\u1175\u11b7","\u110b\u116e\u11ba\u110b\u1165\u1105\u1173\u11ab","\u110b\u116e\u11ba\u110b\u1173\u11b7","\u110b\u116f\u1102\u1161\u11a8","\u110b\u116f\u11ab\u1100\u1169","\u110b\u116f\u11ab\u1105\u1162","\u110b\u116f\u11ab\u1109\u1165","\u110b\u116f\u11ab\u1109\u116e\u11bc\u110b\u1175","\u110b\u116f\u11ab\u110b\u1175\u11ab","\u110b\u116f\u11ab\u110c\u1161\u11bc","\u110b\u116f\u11ab\u1111\u1175\u1109\u1173","\u110b\u116f\u11af\u1100\u1173\u11b8","\u110b\u116f\u11af\u1103\u1173\u110f\u1165\u11b8","\u110b\u116f\u11af\u1109\u1166","\u110b\u116f\u11af\u110b\u116d\u110b\u1175\u11af","\u110b\u1170\u110b\u1175\u1110\u1165","\u110b\u1171\u1107\u1161\u11ab","\u110b\u1171\u1107\u1165\u11b8","\u110b\u1171\u1109\u1165\u11bc","\u110b\u1171\u110b\u116f\u11ab","\u110b\u1171\u1112\u1165\u11b7","\u110b\u1171\u1112\u1167\u11b8","\u110b\u1171\u11ba\u1109\u1161\u1105\u1161\u11b7","\u110b\u1172\u1102\u1161\u11ab\u1112\u1175","\u110b\u1172\u1105\u1165\u11b8","\u110b\u1172\u1106\u1167\u11bc","\u110b\u1172\u1106\u116e\u11af","\u110b\u1172\u1109\u1161\u11ab","\u110b\u1172\u110c\u1165\u11a8","\u110b\u1172\u110e\u1175\u110b\u116f\u11ab","\u110b\u1172\u1112\u1161\u11a8","\u110b\u1172\u1112\u1162\u11bc","\u110b\u1172\u1112\u1167\u11bc","\u110b\u1172\u11a8\u1100\u116e\u11ab","\u110b\u1172\u11a8\u1109\u1161\u11bc","\u110b\u1172\u11a8\u1109\u1175\u11b8","\u110b\u1172\u11a8\u110e\u1166","\u110b\u1173\u11ab\u1112\u1162\u11bc","\u110b\u1173\u11b7\u1105\u1167\u11a8","\u110b\u1173\u11b7\u1105\u116d","\u110b\u1173\u11b7\u1107\u1161\u11ab","\u110b\u1173\u11b7\u1109\u1165\u11bc","\u110b\u1173\u11b7\u1109\u1175\u11a8","\u110b\u1173\u11b7\u110b\u1161\u11a8","\u110b\u1173\u11b7\u110c\u116e","\u110b\u1174\u1100\u1167\u11ab","\u110b\u1174\u1102\u1169\u11ab","\u110b\u1174\u1106\u116e\u11ab","\u110b\u1174\u1107\u1169\u11a8","\u110b\u1174\u1109\u1175\u11a8","\u110b\u1174\u1109\u1175\u11b7","\u110b\u1174\u110b\u116c\u1105\u1169","\u110b\u1174\u110b\u116d\u11a8","\u110b\u1174\u110b\u116f\u11ab","\u110b\u1174\u1112\u1161\u11a8","\u110b\u1175\u1100\u1165\u11ba","\u110b\u1175\u1100\u1169\u11ba","\u110b\u1175\u1102\u1167\u11b7","\u110b\u1175\u1102\u1169\u11b7","\u110b\u1175\u1103\u1161\u11af","\u110b\u1175\u1103\u1162\u1105\u1169","\u110b\u1175\u1103\u1169\u11bc","\u110b\u1175\u1105\u1165\u11c2\u1100\u1166","\u110b\u1175\u1105\u1167\u11a8\u1109\u1165","\u110b\u1175\u1105\u1169\u11ab\u110c\u1165\u11a8","\u110b\u1175\u1105\u1173\u11b7","\u110b\u1175\u1106\u1175\u11ab","\u110b\u1175\u1107\u1161\u11af\u1109\u1169","\u110b\u1175\u1107\u1167\u11af","\u110b\u1175\u1107\u116e\u11af","\u110b\u1175\u1108\u1161\u11af","\u110b\u1175\u1109\u1161\u11bc","\u110b\u1175\u1109\u1165\u11bc","\u110b\u1175\u1109\u1173\u11af","\u110b\u1175\u110b\u1163\u1100\u1175","\u110b\u1175\u110b\u116d\u11bc","\u110b\u1175\u110b\u116e\u11ba","\u110b\u1175\u110b\u116f\u11af","\u110b\u1175\u110b\u1173\u11a8\u1100\u1169","\u110b\u1175\u110b\u1175\u11a8","\u110b\u1175\u110c\u1165\u11ab","\u110b\u1175\u110c\u116e\u11bc","\u110b\u1175\u1110\u1173\u11ae\u1102\u1161\u11af","\u110b\u1175\u1110\u1173\u11af","\u110b\u1175\u1112\u1169\u11ab","\u110b\u1175\u11ab\u1100\u1161\u11ab","\u110b\u1175\u11ab\u1100\u1167\u11a8","\u110b\u1175\u11ab\u1100\u1169\u11bc","\u110b\u1175\u11ab\u1100\u116e","\u110b\u1175\u11ab\u1100\u1173\u11ab","\u110b\u1175\u11ab\u1100\u1175","\u110b\u1175\u11ab\u1103\u1169","\u110b\u1175\u11ab\u1105\u1172","\u110b\u1175\u11ab\u1106\u116e\u11af","\u110b\u1175\u11ab\u1109\u1162\u11bc","\u110b\u1175\u11ab\u1109\u116b","\u110b\u1175\u11ab\u110b\u1167\u11ab","\u110b\u1175\u11ab\u110b\u116f\u11ab","\u110b\u1175\u11ab\u110c\u1162","\u110b\u1175\u11ab\u110c\u1169\u11bc","\u110b\u1175\u11ab\u110e\u1165\u11ab","\u110b\u1175\u11ab\u110e\u1166","\u110b\u1175\u11ab\u1110\u1165\u1102\u1166\u11ba","\u110b\u1175\u11ab\u1112\u1161","\u110b\u1175\u11ab\u1112\u1167\u11bc","\u110b\u1175\u11af\u1100\u1169\u11b8","\u110b\u1175\u11af\u1100\u1175","\u110b\u1175\u11af\u1103\u1161\u11ab","\u110b\u1175\u11af\u1103\u1162","\u110b\u1175\u11af\u1103\u1173\u11bc","\u110b\u1175\u11af\u1107\u1161\u11ab","\u110b\u1175\u11af\u1107\u1169\u11ab","\u110b\u1175\u11af\u1107\u116e","\u110b\u1175\u11af\u1109\u1161\u11bc","\u110b\u1175\u11af\u1109\u1162\u11bc","\u110b\u1175\u11af\u1109\u1169\u11ab","\u110b\u1175\u11af\u110b\u116d\u110b\u1175\u11af","\u110b\u1175\u11af\u110b\u116f\u11af","\u110b\u1175\u11af\u110c\u1165\u11bc","\u110b\u1175\u11af\u110c\u1169\u11bc","\u110b\u1175\u11af\u110c\u116e\u110b\u1175\u11af","\u110b\u1175\u11af\u110d\u1175\u11a8","\u110b\u1175\u11af\u110e\u1166","\u110b\u1175\u11af\u110e\u1175","\u110b\u1175\u11af\u1112\u1162\u11bc","\u110b\u1175\u11af\u1112\u116c\u110b\u116d\u11bc","\u110b\u1175\u11b7\u1100\u1173\u11b7","\u110b\u1175\u11b7\u1106\u116e","\u110b\u1175\u11b8\u1103\u1162","\u110b\u1175\u11b8\u1105\u1167\u11a8","\u110b\u1175\u11b8\u1106\u1161\u11ba","\u110b\u1175\u11b8\u1109\u1161","\u110b\u1175\u11b8\u1109\u116e\u11af","\u110b\u1175\u11b8\u1109\u1175","\u110b\u1175\u11b8\u110b\u116f\u11ab","\u110b\u1175\u11b8\u110c\u1161\u11bc","\u110b\u1175\u11b8\u1112\u1161\u11a8","\u110c\u1161\u1100\u1161\u110b\u116d\u11bc","\u110c\u1161\u1100\u1167\u11a8","\u110c\u1161\u1100\u1173\u11a8","\u110c\u1161\u1103\u1169\u11bc","\u110c\u1161\u1105\u1161\u11bc","\u110c\u1161\u1107\u116e\u1109\u1175\u11b7","\u110c\u1161\u1109\u1175\u11a8","\u110c\u1161\u1109\u1175\u11ab","\u110c\u1161\u110b\u1167\u11ab","\u110c\u1161\u110b\u116f\u11ab","\u110c\u1161\u110b\u1172\u11af","\u110c\u1161\u110c\u1165\u11ab\u1100\u1165","\u110c\u1161\u110c\u1165\u11bc","\u110c\u1161\u110c\u1169\u11ab\u1109\u1175\u11b7","\u110c\u1161\u1111\u1161\u11ab","\u110c\u1161\u11a8\u1100\u1161","\u110c\u1161\u11a8\u1102\u1167\u11ab","\u110c\u1161\u11a8\u1109\u1165\u11bc","\u110c\u1161\u11a8\u110b\u1165\u11b8","\u110c\u1161\u11a8\u110b\u116d\u11bc","\u110c\u1161\u11a8\u110b\u1173\u11ab\u1104\u1161\u11af","\u110c\u1161\u11a8\u1111\u116e\u11b7","\u110c\u1161\u11ab\u1103\u1175","\u110c\u1161\u11ab\u1104\u1173\u11a8","\u110c\u1161\u11ab\u110e\u1175","\u110c\u1161\u11af\u1106\u1169\u11ba","\u110c\u1161\u11b7\u1101\u1161\u11ab","\u110c\u1161\u11b7\u1109\u116e\u1112\u1161\u11b7","\u110c\u1161\u11b7\u1109\u1175","\u110c\u1161\u11b7\u110b\u1169\u11ba","\u110c\u1161\u11b7\u110c\u1161\u1105\u1175","\u110c\u1161\u11b8\u110c\u1175","\u110c\u1161\u11bc\u1100\u116a\u11ab","\u110c\u1161\u11bc\u1100\u116e\u11ab","\u110c\u1161\u11bc\u1100\u1175\u1100\u1161\u11ab","\u110c\u1161\u11bc\u1105\u1162","\u110c\u1161\u11bc\u1105\u1168","\u110c\u1161\u11bc\u1105\u1173","\u110c\u1161\u11bc\u1106\u1161","\u110c\u1161\u11bc\u1106\u1167\u11ab","\u110c\u1161\u11bc\u1106\u1169","\u110c\u1161\u11bc\u1106\u1175","\u110c\u1161\u11bc\u1107\u1175","\u110c\u1161\u11bc\u1109\u1161","\u110c\u1161\u11bc\u1109\u1169","\u110c\u1161\u11bc\u1109\u1175\u11a8","\u110c\u1161\u11bc\u110b\u1162\u110b\u1175\u11ab","\u110c\u1161\u11bc\u110b\u1175\u11ab","\u110c\u1161\u11bc\u110c\u1165\u11b7","\u110c\u1161\u11bc\u110e\u1161","\u110c\u1161\u11bc\u1112\u1161\u11a8\u1100\u1173\u11b7","\u110c\u1162\u1102\u1173\u11bc","\u110c\u1162\u1108\u1161\u11af\u1105\u1175","\u110c\u1162\u1109\u1161\u11ab","\u110c\u1162\u1109\u1162\u11bc","\u110c\u1162\u110c\u1161\u11a8\u1102\u1167\u11ab","\u110c\u1162\u110c\u1165\u11bc","\u110c\u1162\u110e\u1162\u1100\u1175","\u110c\u1162\u1111\u1161\u11ab","\u110c\u1162\u1112\u1161\u11a8","\u110c\u1162\u1112\u116a\u11af\u110b\u116d\u11bc","\u110c\u1165\u1100\u1165\u11ba","\u110c\u1165\u1100\u1169\u1105\u1175","\u110c\u1165\u1100\u1169\u11ba","\u110c\u1165\u1102\u1167\u11a8","\u110c\u1165\u1105\u1165\u11ab","\u110c\u1165\u1105\u1165\u11c2\u1100\u1166","\u110c\u1165\u1107\u1165\u11ab","\u110c\u1165\u110b\u116e\u11af","\u110c\u1165\u110c\u1165\u11af\u1105\u1169","\u110c\u1165\u110e\u116e\u11a8","\u110c\u1165\u11a8\u1100\u1173\u11a8","\u110c\u1165\u11a8\u1103\u1161\u11bc\u1112\u1175","\u110c\u1165\u11a8\u1109\u1165\u11bc","\u110c\u1165\u11a8\u110b\u116d\u11bc","\u110c\u1165\u11a8\u110b\u1173\u11bc","\u110c\u1165\u11ab\u1100\u1162","\u110c\u1165\u11ab\u1100\u1169\u11bc","\u110c\u1165\u11ab\u1100\u1175","\u110c\u1165\u11ab\u1103\u1161\u11af","\u110c\u1165\u11ab\u1105\u1161\u1103\u1169","\u110c\u1165\u11ab\u1106\u1161\u11bc","\u110c\u1165\u11ab\u1106\u116e\u11ab","\u110c\u1165\u11ab\u1107\u1161\u11ab","\u110c\u1165\u11ab\u1107\u116e","\u110c\u1165\u11ab\u1109\u1166","\u110c\u1165\u11ab\u1109\u1175","\u110c\u1165\u11ab\u110b\u116d\u11bc","\u110c\u1165\u11ab\u110c\u1161","\u110c\u1165\u11ab\u110c\u1162\u11bc","\u110c\u1165\u11ab\u110c\u116e","\u110c\u1165\u11ab\u110e\u1165\u11af","\u110c\u1165\u11ab\u110e\u1166","\u110c\u1165\u11ab\u1110\u1169\u11bc","\u110c\u1165\u11ab\u1112\u1167","\u110c\u1165\u11ab\u1112\u116e","\u110c\u1165\u11af\u1103\u1162","\u110c\u1165\u11af\u1106\u1161\u11bc","\u110c\u1165\u11af\u1107\u1161\u11ab","\u110c\u1165\u11af\u110b\u1163\u11a8","\u110c\u1165\u11af\u110e\u1161","\u110c\u1165\u11b7\u1100\u1165\u11b7","\u110c\u1165\u11b7\u1109\u116e","\u110c\u1165\u11b7\u1109\u1175\u11b7","\u110c\u1165\u11b7\u110b\u116f\u11ab","\u110c\u1165\u11b7\u110c\u1165\u11b7","\u110c\u1165\u11b7\u110e\u1161","\u110c\u1165\u11b8\u1100\u1173\u11ab","\u110c\u1165\u11b8\u1109\u1175","\u110c\u1165\u11b8\u110e\u1169\u11a8","\u110c\u1165\u11ba\u1100\u1161\u1105\u1161\u11a8","\u110c\u1165\u11bc\u1100\u1165\u110c\u1161\u11bc","\u110c\u1165\u11bc\u1103\u1169","\u110c\u1165\u11bc\u1105\u1172\u110c\u1161\u11bc","\u110c\u1165\u11bc\u1105\u1175","\u110c\u1165\u11bc\u1106\u1161\u11af","\u110c\u1165\u11bc\u1106\u1167\u11ab","\u110c\u1165\u11bc\u1106\u116e\u11ab","\u110c\u1165\u11bc\u1107\u1161\u11ab\u1103\u1162","\u110c\u1165\u11bc\u1107\u1169","\u110c\u1165\u11bc\u1107\u116e","\u110c\u1165\u11bc\u1107\u1175","\u110c\u1165\u11bc\u1109\u1161\u11bc","\u110c\u1165\u11bc\u1109\u1165\u11bc","\u110c\u1165\u11bc\u110b\u1169","\u110c\u1165\u11bc\u110b\u116f\u11ab","\u110c\u1165\u11bc\u110c\u1161\u11bc","\u110c\u1165\u11bc\u110c\u1175","\u110c\u1165\u11bc\u110e\u1175","\u110c\u1165\u11bc\u1112\u116a\u11a8\u1112\u1175","\u110c\u1166\u1100\u1169\u11bc","\u110c\u1166\u1100\u116a\u110c\u1165\u11b7","\u110c\u1166\u1103\u1162\u1105\u1169","\u110c\u1166\u1106\u1169\u11a8","\u110c\u1166\u1107\u1161\u11af","\u110c\u1166\u1107\u1165\u11b8","\u110c\u1166\u1109\u1161\u11ba\u1102\u1161\u11af","\u110c\u1166\u110b\u1161\u11ab","\u110c\u1166\u110b\u1175\u11af","\u110c\u1166\u110c\u1161\u11a8","\u110c\u1166\u110c\u116e\u1103\u1169","\u110c\u1166\u110e\u116e\u11af","\u110c\u1166\u1111\u116e\u11b7","\u110c\u1166\u1112\u1161\u11ab","\u110c\u1169\u1100\u1161\u11a8","\u110c\u1169\u1100\u1165\u11ab","\u110c\u1169\u1100\u1173\u11b7","\u110c\u1169\u1100\u1175\u11bc","\u110c\u1169\u1106\u1167\u11bc","\u110c\u1169\u1106\u1175\u1105\u116d","\u110c\u1169\u1109\u1161\u11bc","\u110c\u1169\u1109\u1165\u11ab","\u110c\u1169\u110b\u116d\u11bc\u1112\u1175","\u110c\u1169\u110c\u1165\u11af","\u110c\u1169\u110c\u1165\u11bc","\u110c\u1169\u110c\u1175\u11a8","\u110c\u1169\u11ab\u1103\u1162\u11ba\u1106\u1161\u11af","\u110c\u1169\u11ab\u110c\u1162","\u110c\u1169\u11af\u110b\u1165\u11b8","\u110c\u1169\u11af\u110b\u1173\u11b7","\u110c\u1169\u11bc\u1100\u116d","\u110c\u1169\u11bc\u1105\u1169","\u110c\u1169\u11bc\u1105\u1172","\u110c\u1169\u11bc\u1109\u1169\u1105\u1175","\u110c\u1169\u11bc\u110b\u1165\u11b8\u110b\u116f\u11ab","\u110c\u1169\u11bc\u110c\u1169\u11bc","\u110c\u1169\u11bc\u1112\u1161\u11b8","\u110c\u116a\u1109\u1165\u11a8","\u110c\u116c\u110b\u1175\u11ab","\u110c\u116e\u1100\u116a\u11ab\u110c\u1165\u11a8","\u110c\u116e\u1105\u1173\u11b7","\u110c\u116e\u1106\u1161\u11af","\u110c\u116e\u1106\u1165\u1102\u1175","\u110c\u116e\u1106\u1165\u11a8","\u110c\u116e\u1106\u116e\u11ab","\u110c\u116e\u1106\u1175\u11ab","\u110c\u116e\u1107\u1161\u11bc","\u110c\u116e\u1107\u1167\u11ab","\u110c\u116e\u1109\u1175\u11a8","\u110c\u116e\u110b\u1175\u11ab","\u110c\u116e\u110b\u1175\u11af","\u110c\u116e\u110c\u1161\u11bc","\u110c\u116e\u110c\u1165\u11ab\u110c\u1161","\u110c\u116e\u1110\u1162\u11a8","\u110c\u116e\u11ab\u1107\u1175","\u110c\u116e\u11af\u1100\u1165\u1105\u1175","\u110c\u116e\u11af\u1100\u1175","\u110c\u116e\u11af\u1106\u116e\u1102\u1174","\u110c\u116e\u11bc\u1100\u1161\u11ab","\u110c\u116e\u11bc\u1100\u1168\u1107\u1161\u11bc\u1109\u1169\u11bc","\u110c\u116e\u11bc\u1100\u116e\u11a8","\u110c\u116e\u11bc\u1102\u1167\u11ab","\u110c\u116e\u11bc\u1103\u1161\u11ab","\u110c\u116e\u11bc\u1103\u1169\u11a8","\u110c\u116e\u11bc\u1107\u1161\u11ab","\u110c\u116e\u11bc\u1107\u116e","\u110c\u116e\u11bc\u1109\u1166","\u110c\u116e\u11bc\u1109\u1169\u1100\u1175\u110b\u1165\u11b8","\u110c\u116e\u11bc\u1109\u116e\u11ab","\u110c\u116e\u11bc\u110b\u1161\u11bc","\u110c\u116e\u11bc\u110b\u116d","\u110c\u116e\u11bc\u1112\u1161\u11a8\u1100\u116d","\u110c\u1173\u11a8\u1109\u1165\u11a8","\u110c\u1173\u11a8\u1109\u1175","\u110c\u1173\u11af\u1100\u1165\u110b\u116e\u11b7","\u110c\u1173\u11bc\u1100\u1161","\u110c\u1173\u11bc\u1100\u1165","\u110c\u1173\u11bc\u1100\u116f\u11ab","\u110c\u1173\u11bc\u1109\u1161\u11bc","\u110c\u1173\u11bc\u1109\u1166","\u110c\u1175\u1100\u1161\u11a8","\u110c\u1175\u1100\u1161\u11b8","\u110c\u1175\u1100\u1167\u11bc","\u110c\u1175\u1100\u1173\u11a8\u1112\u1175","\u110c\u1175\u1100\u1173\u11b7","\u110c\u1175\u1100\u1173\u11b8","\u110c\u1175\u1102\u1173\u11bc","\u110c\u1175\u1105\u1173\u11b7\u1100\u1175\u11af","\u110c\u1175\u1105\u1175\u1109\u1161\u11ab","\u110c\u1175\u1107\u1161\u11bc","\u110c\u1175\u1107\u116e\u11bc","\u110c\u1175\u1109\u1175\u11a8","\u110c\u1175\u110b\u1167\u11a8","\u110c\u1175\u110b\u116e\u1100\u1162","\u110c\u1175\u110b\u116f\u11ab","\u110c\u1175\u110c\u1165\u11a8","\u110c\u1175\u110c\u1165\u11b7","\u110c\u1175\u110c\u1175\u11ab","\u110c\u1175\u110e\u116e\u11af","\u110c\u1175\u11a8\u1109\u1165\u11ab","\u110c\u1175\u11a8\u110b\u1165\u11b8","\u110c\u1175\u11a8\u110b\u116f\u11ab","\u110c\u1175\u11a8\u110c\u1161\u11bc","\u110c\u1175\u11ab\u1100\u1173\u11b8","\u110c\u1175\u11ab\u1103\u1169\u11bc","\u110c\u1175\u11ab\u1105\u1169","\u110c\u1175\u11ab\u1105\u116d","\u110c\u1175\u11ab\u1105\u1175","\u110c\u1175\u11ab\u110d\u1161","\u110c\u1175\u11ab\u110e\u1161\u11af","\u110c\u1175\u11ab\u110e\u116e\u11af","\u110c\u1175\u11ab\u1110\u1169\u11bc","\u110c\u1175\u11ab\u1112\u1162\u11bc","\u110c\u1175\u11af\u1106\u116e\u11ab","\u110c\u1175\u11af\u1107\u1167\u11bc","\u110c\u1175\u11af\u1109\u1165","\u110c\u1175\u11b7\u110c\u1161\u11a8","\u110c\u1175\u11b8\u1103\u1161\u11ab","\u110c\u1175\u11b8\u110b\u1161\u11ab","\u110c\u1175\u11b8\u110c\u116e\u11bc","\u110d\u1161\u110c\u1173\u11bc","\u110d\u1175\u1101\u1165\u1100\u1175","\u110e\u1161\u1102\u1161\u11b7","\u110e\u1161\u1105\u1161\u1105\u1175","\u110e\u1161\u1105\u1163\u11bc","\u110e\u1161\u1105\u1175\u11b7","\u110e\u1161\u1107\u1167\u11af","\u110e\u1161\u1109\u1165\u11ab","\u110e\u1161\u110e\u1173\u11b7","\u110e\u1161\u11a8\u1100\u1161\u11a8","\u110e\u1161\u11ab\u1106\u116e\u11af","\u110e\u1161\u11ab\u1109\u1165\u11bc","\u110e\u1161\u11b7\u1100\u1161","\u110e\u1161\u11b7\u1100\u1175\u1105\u1173\u11b7","\u110e\u1161\u11b7\u1109\u1162","\u110e\u1161\u11b7\u1109\u1165\u11a8","\u110e\u1161\u11b7\u110b\u1167","\u110e\u1161\u11b7\u110b\u116c","\u110e\u1161\u11b7\u110c\u1169","\u110e\u1161\u11ba\u110c\u1161\u11ab","\u110e\u1161\u11bc\u1100\u1161","\u110e\u1161\u11bc\u1100\u1169","\u110e\u1161\u11bc\u1100\u116e","\u110e\u1161\u11bc\u1106\u116e\u11ab","\u110e\u1161\u11bc\u1107\u1161\u11a9","\u110e\u1161\u11bc\u110c\u1161\u11a8","\u110e\u1161\u11bc\u110c\u1169","\u110e\u1162\u1102\u1165\u11af","\u110e\u1162\u110c\u1165\u11b7","\u110e\u1162\u11a8\u1100\u1161\u1107\u1161\u11bc","\u110e\u1162\u11a8\u1107\u1161\u11bc","\u110e\u1162\u11a8\u1109\u1161\u11bc","\u110e\u1162\u11a8\u110b\u1175\u11b7","\u110e\u1162\u11b7\u1111\u1175\u110b\u1165\u11ab","\u110e\u1165\u1107\u1165\u11af","\u110e\u1165\u110b\u1173\u11b7","\u110e\u1165\u11ab\u1100\u116e\u11a8","\u110e\u1165\u11ab\u1103\u116e\u11bc","\u110e\u1165\u11ab\u110c\u1161\u11bc","\u110e\u1165\u11ab\u110c\u1162","\u110e\u1165\u11ab\u110e\u1165\u11ab\u1112\u1175","\u110e\u1165\u11af\u1103\u1169","\u110e\u1165\u11af\u110c\u1165\u1112\u1175","\u110e\u1165\u11af\u1112\u1161\u11a8","\u110e\u1165\u11ba\u1102\u1161\u11af","\u110e\u1165\u11ba\u110d\u1162","\u110e\u1165\u11bc\u1102\u1167\u11ab","\u110e\u1165\u11bc\u1107\u1161\u110c\u1175","\u110e\u1165\u11bc\u1109\u1169","\u110e\u1165\u11bc\u110e\u116e\u11ab","\u110e\u1166\u1100\u1168","\u110e\u1166\u1105\u1167\u11a8","\u110e\u1166\u110b\u1169\u11ab","\u110e\u1166\u110b\u1172\u11a8","\u110e\u1166\u110c\u116e\u11bc","\u110e\u1166\u1112\u1165\u11b7","\u110e\u1169\u1103\u1173\u11bc\u1112\u1161\u11a8\u1109\u1162\u11bc","\u110e\u1169\u1107\u1161\u11ab","\u110e\u1169\u1107\u1161\u11b8","\u110e\u1169\u1109\u1161\u11bc\u1112\u116a","\u110e\u1169\u1109\u116e\u11ab","\u110e\u1169\u110b\u1167\u1105\u1173\u11b7","\u110e\u1169\u110b\u116f\u11ab","\u110e\u1169\u110c\u1165\u1102\u1167\u11a8","\u110e\u1169\u110c\u1165\u11b7","\u110e\u1169\u110e\u1165\u11bc","\u110e\u1169\u110f\u1169\u11af\u1105\u1175\u11ba","\u110e\u1169\u11ba\u1107\u116e\u11af","\u110e\u1169\u11bc\u1100\u1161\u11a8","\u110e\u1169\u11bc\u1105\u1175","\u110e\u1169\u11bc\u110c\u1161\u11bc","\u110e\u116a\u11af\u110b\u1167\u11bc","\u110e\u116c\u1100\u1173\u11ab","\u110e\u116c\u1109\u1161\u11bc","\u110e\u116c\u1109\u1165\u11ab","\u110e\u116c\u1109\u1175\u11ab","\u110e\u116c\u110b\u1161\u11a8","\u110e\u116c\u110c\u1169\u11bc","\u110e\u116e\u1109\u1165\u11a8","\u110e\u116e\u110b\u1165\u11a8","\u110e\u116e\u110c\u1175\u11ab","\u110e\u116e\u110e\u1165\u11ab","\u110e\u116e\u110e\u1173\u11a8","\u110e\u116e\u11a8\u1100\u116e","\u110e\u116e\u11a8\u1109\u1169","\u110e\u116e\u11a8\u110c\u1166","\u110e\u116e\u11a8\u1112\u1161","\u110e\u116e\u11af\u1100\u1173\u11ab","\u110e\u116e\u11af\u1107\u1161\u11af","\u110e\u116e\u11af\u1109\u1161\u11ab","\u110e\u116e\u11af\u1109\u1175\u11ab","\u110e\u116e\u11af\u110b\u1167\u11ab","\u110e\u116e\u11af\u110b\u1175\u11b8","\u110e\u116e\u11af\u110c\u1161\u11bc","\u110e\u116e\u11af\u1111\u1161\u11ab","\u110e\u116e\u11bc\u1100\u1167\u11a8","\u110e\u116e\u11bc\u1100\u1169","\u110e\u116e\u11bc\u1103\u1169\u11af","\u110e\u116e\u11bc\u1107\u116e\u11ab\u1112\u1175","\u110e\u116e\u11bc\u110e\u1165\u11bc\u1103\u1169","\u110e\u1171\u110b\u1165\u11b8","\u110e\u1171\u110c\u1175\u11a8","\u110e\u1171\u1112\u1163\u11bc","\u110e\u1175\u110b\u1163\u11a8","\u110e\u1175\u11ab\u1100\u116e","\u110e\u1175\u11ab\u110e\u1165\u11a8","\u110e\u1175\u11af\u1109\u1175\u11b8","\u110e\u1175\u11af\u110b\u116f\u11af","\u110e\u1175\u11af\u1111\u1161\u11ab","\u110e\u1175\u11b7\u1103\u1162","\u110e\u1175\u11b7\u1106\u116e\u11a8","\u110e\u1175\u11b7\u1109\u1175\u11af","\u110e\u1175\u11ba\u1109\u1169\u11af","\u110e\u1175\u11bc\u110e\u1161\u11ab","\u110f\u1161\u1106\u1166\u1105\u1161","\u110f\u1161\u110b\u116e\u11ab\u1110\u1165","\u110f\u1161\u11af\u1100\u116e\u11a8\u1109\u116e","\u110f\u1162\u1105\u1175\u11a8\u1110\u1165","\u110f\u1162\u11b7\u1111\u1165\u1109\u1173","\u110f\u1162\u11b7\u1111\u1166\u110b\u1175\u11ab","\u110f\u1165\u1110\u1173\u11ab","\u110f\u1165\u11ab\u1103\u1175\u1109\u1167\u11ab","\u110f\u1165\u11af\u1105\u1165","\u110f\u1165\u11b7\u1111\u1172\u1110\u1165","\u110f\u1169\u1101\u1175\u1105\u1175","\u110f\u1169\u1106\u1175\u1103\u1175","\u110f\u1169\u11ab\u1109\u1165\u1110\u1173","\u110f\u1169\u11af\u1105\u1161","\u110f\u1169\u11b7\u1111\u1173\u11af\u1105\u1166\u11a8\u1109\u1173","\u110f\u1169\u11bc\u1102\u1161\u1106\u116e\u11af","\u110f\u116b\u1100\u1161\u11b7","\u110f\u116e\u1103\u1166\u1110\u1161","\u110f\u1173\u1105\u1175\u11b7","\u110f\u1173\u11ab\u1100\u1175\u11af","\u110f\u1173\u11ab\u1104\u1161\u11af","\u110f\u1173\u11ab\u1109\u1169\u1105\u1175","\u110f\u1173\u11ab\u110b\u1161\u1103\u1173\u11af","\u110f\u1173\u11ab\u110b\u1165\u1106\u1165\u1102\u1175","\u110f\u1173\u11ab\u110b\u1175\u11af","\u110f\u1173\u11ab\u110c\u1165\u11af","\u110f\u1173\u11af\u1105\u1162\u1109\u1175\u11a8","\u110f\u1173\u11af\u1105\u1165\u11b8","\u110f\u1175\u11af\u1105\u1169","\u1110\u1161\u110b\u1175\u11b8","\u1110\u1161\u110c\u1161\u1100\u1175","\u1110\u1161\u11a8\u1100\u116e","\u1110\u1161\u11a8\u110c\u1161","\u1110\u1161\u11ab\u1109\u1162\u11bc","\u1110\u1162\u1100\u116f\u11ab\u1103\u1169","\u1110\u1162\u110b\u1163\u11bc","\u1110\u1162\u1111\u116e\u11bc","\u1110\u1162\u11a8\u1109\u1175","\u1110\u1162\u11af\u1105\u1165\u11ab\u1110\u1173","\u1110\u1165\u1102\u1165\u11af","\u1110\u1165\u1106\u1175\u1102\u1165\u11af","\u1110\u1166\u1102\u1175\u1109\u1173","\u1110\u1166\u1109\u1173\u1110\u1173","\u1110\u1166\u110b\u1175\u1107\u1173\u11af","\u1110\u1166\u11af\u1105\u1166\u1107\u1175\u110c\u1165\u11ab","\u1110\u1169\u1105\u1169\u11ab","\u1110\u1169\u1106\u1161\u1110\u1169","\u1110\u1169\u110b\u116d\u110b\u1175\u11af","\u1110\u1169\u11bc\u1100\u1168","\u1110\u1169\u11bc\u1100\u116a","\u1110\u1169\u11bc\u1105\u1169","\u1110\u1169\u11bc\u1109\u1175\u11ab","\u1110\u1169\u11bc\u110b\u1167\u11a8","\u1110\u1169\u11bc\u110b\u1175\u11af","\u1110\u1169\u11bc\u110c\u1161\u11bc","\u1110\u1169\u11bc\u110c\u1166","\u1110\u1169\u11bc\u110c\u1173\u11bc","\u1110\u1169\u11bc\u1112\u1161\u11b8","\u1110\u1169\u11bc\u1112\u116a","\u1110\u116c\u1100\u1173\u11ab","\u1110\u116c\u110b\u116f\u11ab","\u1110\u116c\u110c\u1175\u11a8\u1100\u1173\u11b7","\u1110\u1171\u1100\u1175\u11b7","\u1110\u1173\u1105\u1165\u11a8","\u1110\u1173\u11a8\u1100\u1173\u11b8","\u1110\u1173\u11a8\u1107\u1167\u11af","\u1110\u1173\u11a8\u1109\u1165\u11bc","\u1110\u1173\u11a8\u1109\u116e","\u1110\u1173\u11a8\u110c\u1175\u11bc","\u1110\u1173\u11a8\u1112\u1175","\u1110\u1173\u11ab\u1110\u1173\u11ab\u1112\u1175","\u1110\u1175\u1109\u1167\u110e\u1173","\u1111\u1161\u1105\u1161\u11ab\u1109\u1162\u11a8","\u1111\u1161\u110b\u1175\u11af","\u1111\u1161\u110e\u116e\u11af\u1109\u1169","\u1111\u1161\u11ab\u1100\u1167\u11af","\u1111\u1161\u11ab\u1103\u1161\u11ab","\u1111\u1161\u11ab\u1106\u1162","\u1111\u1161\u11ab\u1109\u1161","\u1111\u1161\u11af\u1109\u1175\u11b8","\u1111\u1161\u11af\u110b\u116f\u11af","\u1111\u1161\u11b8\u1109\u1169\u11bc","\u1111\u1162\u1109\u1167\u11ab","\u1111\u1162\u11a8\u1109\u1173","\u1111\u1162\u11a8\u1109\u1175\u1106\u1175\u11af\u1105\u1175","\u1111\u1162\u11ab\u1110\u1175","\u1111\u1165\u1109\u1166\u11ab\u1110\u1173","\u1111\u1166\u110b\u1175\u11ab\u1110\u1173","\u1111\u1167\u11ab\u1100\u1167\u11ab","\u1111\u1167\u11ab\u110b\u1174","\u1111\u1167\u11ab\u110c\u1175","\u1111\u1167\u11ab\u1112\u1175","\u1111\u1167\u11bc\u1100\u1161","\u1111\u1167\u11bc\u1100\u1172\u11ab","\u1111\u1167\u11bc\u1109\u1162\u11bc","\u1111\u1167\u11bc\u1109\u1169","\u1111\u1167\u11bc\u110b\u1163\u11bc","\u1111\u1167\u11bc\u110b\u1175\u11af","\u1111\u1167\u11bc\u1112\u116a","\u1111\u1169\u1109\u1173\u1110\u1165","\u1111\u1169\u110b\u1175\u11ab\u1110\u1173","\u1111\u1169\u110c\u1161\u11bc","\u1111\u1169\u1112\u1161\u11b7","\u1111\u116d\u1106\u1167\u11ab","\u1111\u116d\u110c\u1165\u11bc","\u1111\u116d\u110c\u116e\u11ab","\u1111\u116d\u1112\u1167\u11ab","\u1111\u116e\u11b7\u1106\u1169\u11a8","\u1111\u116e\u11b7\u110c\u1175\u11af","\u1111\u116e\u11bc\u1100\u1167\u11bc","\u1111\u116e\u11bc\u1109\u1169\u11a8","\u1111\u116e\u11bc\u1109\u1173\u11b8","\u1111\u1173\u1105\u1161\u11bc\u1109\u1173","\u1111\u1173\u1105\u1175\u11ab\u1110\u1165","\u1111\u1173\u11af\u1105\u1161\u1109\u1173\u1110\u1175\u11a8","\u1111\u1175\u1100\u1169\u11ab","\u1111\u1175\u1106\u1161\u11bc","\u1111\u1175\u110b\u1161\u1102\u1169","\u1111\u1175\u11af\u1105\u1173\u11b7","\u1111\u1175\u11af\u1109\u116e","\u1111\u1175\u11af\u110b\u116d","\u1111\u1175\u11af\u110c\u1161","\u1111\u1175\u11af\u1110\u1169\u11bc","\u1111\u1175\u11bc\u1100\u1168","\u1112\u1161\u1102\u1173\u1102\u1175\u11b7","\u1112\u1161\u1102\u1173\u11af","\u1112\u1161\u1103\u1173\u110b\u1170\u110b\u1165","\u1112\u1161\u1105\u116e\u11ba\u1107\u1161\u11b7","\u1112\u1161\u1107\u1161\u11ab\u1100\u1175","\u1112\u1161\u1109\u116e\u11a8\u110c\u1175\u11b8","\u1112\u1161\u1109\u116e\u11ab","\u1112\u1161\u110b\u1167\u1110\u1173\u11ab","\u1112\u1161\u110c\u1175\u1106\u1161\u11ab","\u1112\u1161\u110e\u1165\u11ab","\u1112\u1161\u1111\u116e\u11b7","\u1112\u1161\u1111\u1175\u11af","\u1112\u1161\u11a8\u1100\u116a","\u1112\u1161\u11a8\u1100\u116d","\u1112\u1161\u11a8\u1100\u1173\u11b8","\u1112\u1161\u11a8\u1100\u1175","\u1112\u1161\u11a8\u1102\u1167\u11ab","\u1112\u1161\u11a8\u1105\u1167\u11a8","\u1112\u1161\u11a8\u1107\u1165\u11ab","\u1112\u1161\u11a8\u1107\u116e\u1106\u1169","\u1112\u1161\u11a8\u1107\u1175","\u1112\u1161\u11a8\u1109\u1162\u11bc","\u1112\u1161\u11a8\u1109\u116e\u11af","\u1112\u1161\u11a8\u1109\u1173\u11b8","\u1112\u1161\u11a8\u110b\u116d\u11bc\u1111\u116e\u11b7","\u1112\u1161\u11a8\u110b\u116f\u11ab","\u1112\u1161\u11a8\u110b\u1171","\u1112\u1161\u11a8\u110c\u1161","\u1112\u1161\u11a8\u110c\u1165\u11b7","\u1112\u1161\u11ab\u1100\u1168","\u1112\u1161\u11ab\u1100\u1173\u11af","\u1112\u1161\u11ab\u1101\u1165\u1107\u1165\u11ab\u110b\u1166","\u1112\u1161\u11ab\u1102\u1161\u11bd","\u1112\u1161\u11ab\u1102\u116e\u11ab","\u1112\u1161\u11ab\u1103\u1169\u11bc\u110b\u1161\u11ab","\u1112\u1161\u11ab\u1104\u1162","\u1112\u1161\u11ab\u1105\u1161\u1109\u1161\u11ab","\u1112\u1161\u11ab\u1106\u1161\u1103\u1175","\u1112\u1161\u11ab\u1106\u116e\u11ab","\u1112\u1161\u11ab\u1107\u1165\u11ab","\u1112\u1161\u11ab\u1107\u1169\u11a8","\u1112\u1161\u11ab\u1109\u1175\u11a8","\u1112\u1161\u11ab\u110b\u1167\u1105\u1173\u11b7","\u1112\u1161\u11ab\u110d\u1169\u11a8","\u1112\u1161\u11af\u1106\u1165\u1102\u1175","\u1112\u1161\u11af\u110b\u1161\u1107\u1165\u110c\u1175","\u1112\u1161\u11af\u110b\u1175\u11ab","\u1112\u1161\u11b7\u1101\u1166","\u1112\u1161\u11b7\u1107\u116e\u1105\u1169","\u1112\u1161\u11b8\u1100\u1167\u11a8","\u1112\u1161\u11b8\u1105\u1175\u110c\u1165\u11a8","\u1112\u1161\u11bc\u1100\u1169\u11bc","\u1112\u1161\u11bc\u1100\u116e","\u1112\u1161\u11bc\u1109\u1161\u11bc","\u1112\u1161\u11bc\u110b\u1174","\u1112\u1162\u1100\u1167\u11af","\u1112\u1162\u1100\u116e\u11ab","\u1112\u1162\u1103\u1161\u11b8","\u1112\u1162\u1103\u1161\u11bc","\u1112\u1162\u1106\u116e\u11af","\u1112\u1162\u1109\u1165\u11a8","\u1112\u1162\u1109\u1165\u11af","\u1112\u1162\u1109\u116e\u110b\u116d\u11a8\u110c\u1161\u11bc","\u1112\u1162\u110b\u1161\u11ab","\u1112\u1162\u11a8\u1109\u1175\u11b7","\u1112\u1162\u11ab\u1103\u1173\u1107\u1162\u11a8","\u1112\u1162\u11b7\u1107\u1165\u1100\u1165","\u1112\u1162\u11ba\u1107\u1167\u11c0","\u1112\u1162\u11ba\u1109\u1161\u11af","\u1112\u1162\u11bc\u1103\u1169\u11bc","\u1112\u1162\u11bc\u1107\u1169\u11a8","\u1112\u1162\u11bc\u1109\u1161","\u1112\u1162\u11bc\u110b\u116e\u11ab","\u1112\u1162\u11bc\u110b\u1171","\u1112\u1163\u11bc\u1100\u1175","\u1112\u1163\u11bc\u1109\u1161\u11bc","\u1112\u1163\u11bc\u1109\u116e","\u1112\u1165\u1105\u1161\u11a8","\u1112\u1165\u110b\u116d\u11bc","\u1112\u1166\u11af\u1100\u1175","\u1112\u1167\u11ab\u1100\u116a\u11ab","\u1112\u1167\u11ab\u1100\u1173\u11b7","\u1112\u1167\u11ab\u1103\u1162","\u1112\u1167\u11ab\u1109\u1161\u11bc","\u1112\u1167\u11ab\u1109\u1175\u11af","\u1112\u1167\u11ab\u110c\u1161\u11bc","\u1112\u1167\u11ab\u110c\u1162","\u1112\u1167\u11ab\u110c\u1175","\u1112\u1167\u11af\u110b\u1162\u11a8","\u1112\u1167\u11b8\u1105\u1167\u11a8","\u1112\u1167\u11bc\u1107\u116e","\u1112\u1167\u11bc\u1109\u1161","\u1112\u1167\u11bc\u1109\u116e","\u1112\u1167\u11bc\u1109\u1175\u11a8","\u1112\u1167\u11bc\u110c\u1166","\u1112\u1167\u11bc\u1110\u1162","\u1112\u1167\u11bc\u1111\u1167\u11ab","\u1112\u1168\u1110\u1162\u11a8","\u1112\u1169\u1100\u1175\u1109\u1175\u11b7","\u1112\u1169\u1102\u1161\u11b7","\u1112\u1169\u1105\u1161\u11bc\u110b\u1175","\u1112\u1169\u1107\u1161\u11a8","\u1112\u1169\u1110\u1166\u11af","\u1112\u1169\u1112\u1173\u11b8","\u1112\u1169\u11a8\u1109\u1175","\u1112\u1169\u11af\u1105\u1169","\u1112\u1169\u11b7\u1111\u1166\u110b\u1175\u110c\u1175","\u1112\u1169\u11bc\u1107\u1169","\u1112\u1169\u11bc\u1109\u116e","\u1112\u1169\u11bc\u110e\u1161","\u1112\u116a\u1106\u1167\u11ab","\u1112\u116a\u1107\u116e\u11ab","\u1112\u116a\u1109\u1161\u11af","\u1112\u116a\u110b\u116d\u110b\u1175\u11af","\u1112\u116a\u110c\u1161\u11bc","\u1112\u116a\u1112\u1161\u11a8","\u1112\u116a\u11a8\u1107\u1169","\u1112\u116a\u11a8\u110b\u1175\u11ab","\u1112\u116a\u11a8\u110c\u1161\u11bc","\u1112\u116a\u11a8\u110c\u1165\u11bc","\u1112\u116a\u11ab\u1100\u1161\u11b8","\u1112\u116a\u11ab\u1100\u1167\u11bc","\u1112\u116a\u11ab\u110b\u1167\u11bc","\u1112\u116a\u11ab\u110b\u1172\u11af","\u1112\u116a\u11ab\u110c\u1161","\u1112\u116a\u11af\u1100\u1175","\u1112\u116a\u11af\u1103\u1169\u11bc","\u1112\u116a\u11af\u1107\u1161\u11af\u1112\u1175","\u1112\u116a\u11af\u110b\u116d\u11bc","\u1112\u116a\u11af\u110d\u1161\u11a8","\u1112\u116c\u1100\u1167\u11ab","\u1112\u116c\u1100\u116a\u11ab","\u1112\u116c\u1107\u1169\u11a8","\u1112\u116c\u1109\u1162\u11a8","\u1112\u116c\u110b\u116f\u11ab","\u1112\u116c\u110c\u1161\u11bc","\u1112\u116c\u110c\u1165\u11ab","\u1112\u116c\u11ba\u1109\u116e","\u1112\u116c\u11bc\u1103\u1161\u11ab\u1107\u1169\u1103\u1169","\u1112\u116d\u110b\u1172\u11af\u110c\u1165\u11a8","\u1112\u116e\u1107\u1161\u11ab","\u1112\u116e\u110e\u116e\u11ba\u1100\u1161\u1105\u116e","\u1112\u116e\u11ab\u1105\u1167\u11ab","\u1112\u116f\u11af\u110a\u1175\u11ab","\u1112\u1172\u1109\u1175\u11a8","\u1112\u1172\u110b\u1175\u11af","\u1112\u1172\u11bc\u1102\u1162","\u1112\u1173\u1105\u1173\u11b7","\u1112\u1173\u11a8\u1107\u1162\u11a8","\u1112\u1173\u11a8\u110b\u1175\u11ab","\u1112\u1173\u11ab\u110c\u1165\u11a8","\u1112\u1173\u11ab\u1112\u1175","\u1112\u1173\u11bc\u1106\u1175","\u1112\u1173\u11bc\u1107\u116e\u11ab","\u1112\u1174\u1100\u1169\u11a8","\u1112\u1174\u1106\u1161\u11bc","\u1112\u1174\u1109\u1162\u11bc","\u1112\u1174\u11ab\u1109\u1162\u11a8","\u1112\u1175\u11b7\u1101\u1165\u11ba"]')},1945:e=>{"use strict";e.exports=JSON.parse('["abacate","abaixo","abalar","abater","abduzir","abelha","aberto","abismo","abotoar","abranger","abreviar","abrigar","abrupto","absinto","absoluto","absurdo","abutre","acabado","acalmar","acampar","acanhar","acaso","aceitar","acelerar","acenar","acervo","acessar","acetona","achatar","acidez","acima","acionado","acirrar","aclamar","aclive","acolhida","acomodar","acoplar","acordar","acumular","acusador","adaptar","adega","adentro","adepto","adequar","aderente","adesivo","adeus","adiante","aditivo","adjetivo","adjunto","admirar","adorar","adquirir","adubo","adverso","advogado","aeronave","afastar","aferir","afetivo","afinador","afivelar","aflito","afluente","afrontar","agachar","agarrar","agasalho","agenciar","agilizar","agiota","agitado","agora","agradar","agreste","agrupar","aguardar","agulha","ajoelhar","ajudar","ajustar","alameda","alarme","alastrar","alavanca","albergue","albino","alcatra","aldeia","alecrim","alegria","alertar","alface","alfinete","algum","alheio","aliar","alicate","alienar","alinhar","aliviar","almofada","alocar","alpiste","alterar","altitude","alucinar","alugar","aluno","alusivo","alvo","amaciar","amador","amarelo","amassar","ambas","ambiente","ameixa","amenizar","amido","amistoso","amizade","amolador","amontoar","amoroso","amostra","amparar","ampliar","ampola","anagrama","analisar","anarquia","anatomia","andaime","anel","anexo","angular","animar","anjo","anomalia","anotado","ansioso","anterior","anuidade","anunciar","anzol","apagador","apalpar","apanhado","apego","apelido","apertada","apesar","apetite","apito","aplauso","aplicada","apoio","apontar","aposta","aprendiz","aprovar","aquecer","arame","aranha","arara","arcada","ardente","areia","arejar","arenito","aresta","argiloso","argola","arma","arquivo","arraial","arrebate","arriscar","arroba","arrumar","arsenal","arterial","artigo","arvoredo","asfaltar","asilado","aspirar","assador","assinar","assoalho","assunto","astral","atacado","atadura","atalho","atarefar","atear","atender","aterro","ateu","atingir","atirador","ativo","atoleiro","atracar","atrevido","atriz","atual","atum","auditor","aumentar","aura","aurora","autismo","autoria","autuar","avaliar","avante","avaria","avental","avesso","aviador","avisar","avulso","axila","azarar","azedo","azeite","azulejo","babar","babosa","bacalhau","bacharel","bacia","bagagem","baiano","bailar","baioneta","bairro","baixista","bajular","baleia","baliza","balsa","banal","bandeira","banho","banir","banquete","barato","barbado","baronesa","barraca","barulho","baseado","bastante","batata","batedor","batida","batom","batucar","baunilha","beber","beijo","beirada","beisebol","beldade","beleza","belga","beliscar","bendito","bengala","benzer","berimbau","berlinda","berro","besouro","bexiga","bezerro","bico","bicudo","bienal","bifocal","bifurcar","bigorna","bilhete","bimestre","bimotor","biologia","biombo","biosfera","bipolar","birrento","biscoito","bisneto","bispo","bissexto","bitola","bizarro","blindado","bloco","bloquear","boato","bobagem","bocado","bocejo","bochecha","boicotar","bolada","boletim","bolha","bolo","bombeiro","bonde","boneco","bonita","borbulha","borda","boreal","borracha","bovino","boxeador","branco","brasa","braveza","breu","briga","brilho","brincar","broa","brochura","bronzear","broto","bruxo","bucha","budismo","bufar","bule","buraco","busca","busto","buzina","cabana","cabelo","cabide","cabo","cabrito","cacau","cacetada","cachorro","cacique","cadastro","cadeado","cafezal","caiaque","caipira","caixote","cajado","caju","calafrio","calcular","caldeira","calibrar","calmante","calota","camada","cambista","camisa","camomila","campanha","camuflar","canavial","cancelar","caneta","canguru","canhoto","canivete","canoa","cansado","cantar","canudo","capacho","capela","capinar","capotar","capricho","captador","capuz","caracol","carbono","cardeal","careca","carimbar","carneiro","carpete","carreira","cartaz","carvalho","casaco","casca","casebre","castelo","casulo","catarata","cativar","caule","causador","cautelar","cavalo","caverna","cebola","cedilha","cegonha","celebrar","celular","cenoura","censo","centeio","cercar","cerrado","certeiro","cerveja","cetim","cevada","chacota","chaleira","chamado","chapada","charme","chatice","chave","chefe","chegada","cheiro","cheque","chicote","chifre","chinelo","chocalho","chover","chumbo","chutar","chuva","cicatriz","ciclone","cidade","cidreira","ciente","cigana","cimento","cinto","cinza","ciranda","circuito","cirurgia","citar","clareza","clero","clicar","clone","clube","coado","coagir","cobaia","cobertor","cobrar","cocada","coelho","coentro","coeso","cogumelo","coibir","coifa","coiote","colar","coleira","colher","colidir","colmeia","colono","coluna","comando","combinar","comentar","comitiva","comover","complexo","comum","concha","condor","conectar","confuso","congelar","conhecer","conjugar","consumir","contrato","convite","cooperar","copeiro","copiador","copo","coquetel","coragem","cordial","corneta","coronha","corporal","correio","cortejo","coruja","corvo","cosseno","costela","cotonete","couro","couve","covil","cozinha","cratera","cravo","creche","credor","creme","crer","crespo","criada","criminal","crioulo","crise","criticar","crosta","crua","cruzeiro","cubano","cueca","cuidado","cujo","culatra","culminar","culpar","cultura","cumprir","cunhado","cupido","curativo","curral","cursar","curto","cuspir","custear","cutelo","damasco","datar","debater","debitar","deboche","debulhar","decalque","decimal","declive","decote","decretar","dedal","dedicado","deduzir","defesa","defumar","degelo","degrau","degustar","deitado","deixar","delator","delegado","delinear","delonga","demanda","demitir","demolido","dentista","depenado","depilar","depois","depressa","depurar","deriva","derramar","desafio","desbotar","descanso","desenho","desfiado","desgaste","desigual","deslize","desmamar","desova","despesa","destaque","desviar","detalhar","detentor","detonar","detrito","deusa","dever","devido","devotado","dezena","diagrama","dialeto","didata","difuso","digitar","dilatado","diluente","diminuir","dinastia","dinheiro","diocese","direto","discreta","disfarce","disparo","disquete","dissipar","distante","ditador","diurno","diverso","divisor","divulgar","dizer","dobrador","dolorido","domador","dominado","donativo","donzela","dormente","dorsal","dosagem","dourado","doutor","drenagem","drible","drogaria","duelar","duende","dueto","duplo","duquesa","durante","duvidoso","eclodir","ecoar","ecologia","edificar","edital","educado","efeito","efetivar","ejetar","elaborar","eleger","eleitor","elenco","elevador","eliminar","elogiar","embargo","embolado","embrulho","embutido","emenda","emergir","emissor","empatia","empenho","empinado","empolgar","emprego","empurrar","emulador","encaixe","encenado","enchente","encontro","endeusar","endossar","enfaixar","enfeite","enfim","engajado","engenho","englobar","engomado","engraxar","enguia","enjoar","enlatar","enquanto","enraizar","enrolado","enrugar","ensaio","enseada","ensino","ensopado","entanto","enteado","entidade","entortar","entrada","entulho","envergar","enviado","envolver","enxame","enxerto","enxofre","enxuto","epiderme","equipar","ereto","erguido","errata","erva","ervilha","esbanjar","esbelto","escama","escola","escrita","escuta","esfinge","esfolar","esfregar","esfumado","esgrima","esmalte","espanto","espelho","espiga","esponja","espreita","espumar","esquerda","estaca","esteira","esticar","estofado","estrela","estudo","esvaziar","etanol","etiqueta","euforia","europeu","evacuar","evaporar","evasivo","eventual","evidente","evoluir","exagero","exalar","examinar","exato","exausto","excesso","excitar","exclamar","executar","exemplo","exibir","exigente","exonerar","expandir","expelir","expirar","explanar","exposto","expresso","expulsar","externo","extinto","extrato","fabricar","fabuloso","faceta","facial","fada","fadiga","faixa","falar","falta","familiar","fandango","fanfarra","fantoche","fardado","farelo","farinha","farofa","farpa","fartura","fatia","fator","favorita","faxina","fazenda","fechado","feijoada","feirante","felino","feminino","fenda","feno","fera","feriado","ferrugem","ferver","festejar","fetal","feudal","fiapo","fibrose","ficar","ficheiro","figurado","fileira","filho","filme","filtrar","firmeza","fisgada","fissura","fita","fivela","fixador","fixo","flacidez","flamingo","flanela","flechada","flora","flutuar","fluxo","focal","focinho","fofocar","fogo","foguete","foice","folgado","folheto","forjar","formiga","forno","forte","fosco","fossa","fragata","fralda","frango","frasco","fraterno","freira","frente","fretar","frieza","friso","fritura","fronha","frustrar","fruteira","fugir","fulano","fuligem","fundar","fungo","funil","furador","furioso","futebol","gabarito","gabinete","gado","gaiato","gaiola","gaivota","galega","galho","galinha","galocha","ganhar","garagem","garfo","gargalo","garimpo","garoupa","garrafa","gasoduto","gasto","gata","gatilho","gaveta","gazela","gelado","geleia","gelo","gemada","gemer","gemido","generoso","gengiva","genial","genoma","genro","geologia","gerador","germinar","gesso","gestor","ginasta","gincana","gingado","girafa","girino","glacial","glicose","global","glorioso","goela","goiaba","golfe","golpear","gordura","gorjeta","gorro","gostoso","goteira","governar","gracejo","gradual","grafite","gralha","grampo","granada","gratuito","graveto","graxa","grego","grelhar","greve","grilo","grisalho","gritaria","grosso","grotesco","grudado","grunhido","gruta","guache","guarani","guaxinim","guerrear","guiar","guincho","guisado","gula","guloso","guru","habitar","harmonia","haste","haver","hectare","herdar","heresia","hesitar","hiato","hibernar","hidratar","hiena","hino","hipismo","hipnose","hipoteca","hoje","holofote","homem","honesto","honrado","hormonal","hospedar","humorado","iate","ideia","idoso","ignorado","igreja","iguana","ileso","ilha","iludido","iluminar","ilustrar","imagem","imediato","imenso","imersivo","iminente","imitador","imortal","impacto","impedir","implante","impor","imprensa","impune","imunizar","inalador","inapto","inativo","incenso","inchar","incidir","incluir","incolor","indeciso","indireto","indutor","ineficaz","inerente","infantil","infestar","infinito","inflamar","informal","infrator","ingerir","inibido","inicial","inimigo","injetar","inocente","inodoro","inovador","inox","inquieto","inscrito","inseto","insistir","inspetor","instalar","insulto","intacto","integral","intimar","intocado","intriga","invasor","inverno","invicto","invocar","iogurte","iraniano","ironizar","irreal","irritado","isca","isento","isolado","isqueiro","italiano","janeiro","jangada","janta","jararaca","jardim","jarro","jasmim","jato","javali","jazida","jejum","joaninha","joelhada","jogador","joia","jornal","jorrar","jovem","juba","judeu","judoca","juiz","julgador","julho","jurado","jurista","juro","justa","labareda","laboral","lacre","lactante","ladrilho","lagarta","lagoa","laje","lamber","lamentar","laminar","lampejo","lanche","lapidar","lapso","laranja","lareira","largura","lasanha","lastro","lateral","latido","lavanda","lavoura","lavrador","laxante","lazer","lealdade","lebre","legado","legendar","legista","leigo","leiloar","leitura","lembrete","leme","lenhador","lentilha","leoa","lesma","leste","letivo","letreiro","levar","leveza","levitar","liberal","libido","liderar","ligar","ligeiro","limitar","limoeiro","limpador","linda","linear","linhagem","liquidez","listagem","lisura","litoral","livro","lixa","lixeira","locador","locutor","lojista","lombo","lona","longe","lontra","lorde","lotado","loteria","loucura","lousa","louvar","luar","lucidez","lucro","luneta","lustre","lutador","luva","macaco","macete","machado","macio","madeira","madrinha","magnata","magreza","maior","mais","malandro","malha","malote","maluco","mamilo","mamoeiro","mamute","manada","mancha","mandato","manequim","manhoso","manivela","manobrar","mansa","manter","manusear","mapeado","maquinar","marcador","maresia","marfim","margem","marinho","marmita","maroto","marquise","marreco","martelo","marujo","mascote","masmorra","massagem","mastigar","matagal","materno","matinal","matutar","maxilar","medalha","medida","medusa","megafone","meiga","melancia","melhor","membro","memorial","menino","menos","mensagem","mental","merecer","mergulho","mesada","mesclar","mesmo","mesquita","mestre","metade","meteoro","metragem","mexer","mexicano","micro","migalha","migrar","milagre","milenar","milhar","mimado","minerar","minhoca","ministro","minoria","miolo","mirante","mirtilo","misturar","mocidade","moderno","modular","moeda","moer","moinho","moita","moldura","moleza","molho","molinete","molusco","montanha","moqueca","morango","morcego","mordomo","morena","mosaico","mosquete","mostarda","motel","motim","moto","motriz","muda","muito","mulata","mulher","multar","mundial","munido","muralha","murcho","muscular","museu","musical","nacional","nadador","naja","namoro","narina","narrado","nascer","nativa","natureza","navalha","navegar","navio","neblina","nebuloso","negativa","negociar","negrito","nervoso","neta","neural","nevasca","nevoeiro","ninar","ninho","nitidez","nivelar","nobreza","noite","noiva","nomear","nominal","nordeste","nortear","notar","noticiar","noturno","novelo","novilho","novo","nublado","nudez","numeral","nupcial","nutrir","nuvem","obcecado","obedecer","objetivo","obrigado","obscuro","obstetra","obter","obturar","ocidente","ocioso","ocorrer","oculista","ocupado","ofegante","ofensiva","oferenda","oficina","ofuscado","ogiva","olaria","oleoso","olhar","oliveira","ombro","omelete","omisso","omitir","ondulado","oneroso","ontem","opcional","operador","oponente","oportuno","oposto","orar","orbitar","ordem","ordinal","orfanato","orgasmo","orgulho","oriental","origem","oriundo","orla","ortodoxo","orvalho","oscilar","ossada","osso","ostentar","otimismo","ousadia","outono","outubro","ouvido","ovelha","ovular","oxidar","oxigenar","pacato","paciente","pacote","pactuar","padaria","padrinho","pagar","pagode","painel","pairar","paisagem","palavra","palestra","palheta","palito","palmada","palpitar","pancada","panela","panfleto","panqueca","pantanal","papagaio","papelada","papiro","parafina","parcial","pardal","parede","partida","pasmo","passado","pastel","patamar","patente","patinar","patrono","paulada","pausar","peculiar","pedalar","pedestre","pediatra","pedra","pegada","peitoral","peixe","pele","pelicano","penca","pendurar","peneira","penhasco","pensador","pente","perceber","perfeito","pergunta","perito","permitir","perna","perplexo","persiana","pertence","peruca","pescado","pesquisa","pessoa","petiscar","piada","picado","piedade","pigmento","pilastra","pilhado","pilotar","pimenta","pincel","pinguim","pinha","pinote","pintar","pioneiro","pipoca","piquete","piranha","pires","pirueta","piscar","pistola","pitanga","pivete","planta","plaqueta","platina","plebeu","plumagem","pluvial","pneu","poda","poeira","poetisa","polegada","policiar","poluente","polvilho","pomar","pomba","ponderar","pontaria","populoso","porta","possuir","postal","pote","poupar","pouso","povoar","praia","prancha","prato","praxe","prece","predador","prefeito","premiar","prensar","preparar","presilha","pretexto","prevenir","prezar","primata","princesa","prisma","privado","processo","produto","profeta","proibido","projeto","prometer","propagar","prosa","protetor","provador","publicar","pudim","pular","pulmonar","pulseira","punhal","punir","pupilo","pureza","puxador","quadra","quantia","quarto","quase","quebrar","queda","queijo","quente","querido","quimono","quina","quiosque","rabanada","rabisco","rachar","racionar","radial","raiar","rainha","raio","raiva","rajada","ralado","ramal","ranger","ranhura","rapadura","rapel","rapidez","raposa","raquete","raridade","rasante","rascunho","rasgar","raspador","rasteira","rasurar","ratazana","ratoeira","realeza","reanimar","reaver","rebaixar","rebelde","rebolar","recado","recente","recheio","recibo","recordar","recrutar","recuar","rede","redimir","redonda","reduzida","reenvio","refinar","refletir","refogar","refresco","refugiar","regalia","regime","regra","reinado","reitor","rejeitar","relativo","remador","remendo","remorso","renovado","reparo","repelir","repleto","repolho","represa","repudiar","requerer","resenha","resfriar","resgatar","residir","resolver","respeito","ressaca","restante","resumir","retalho","reter","retirar","retomada","retratar","revelar","revisor","revolta","riacho","rica","rigidez","rigoroso","rimar","ringue","risada","risco","risonho","robalo","rochedo","rodada","rodeio","rodovia","roedor","roleta","romano","roncar","rosado","roseira","rosto","rota","roteiro","rotina","rotular","rouco","roupa","roxo","rubro","rugido","rugoso","ruivo","rumo","rupestre","russo","sabor","saciar","sacola","sacudir","sadio","safira","saga","sagrada","saibro","salada","saleiro","salgado","saliva","salpicar","salsicha","saltar","salvador","sambar","samurai","sanar","sanfona","sangue","sanidade","sapato","sarda","sargento","sarjeta","saturar","saudade","saxofone","sazonal","secar","secular","seda","sedento","sediado","sedoso","sedutor","segmento","segredo","segundo","seiva","seleto","selvagem","semanal","semente","senador","senhor","sensual","sentado","separado","sereia","seringa","serra","servo","setembro","setor","sigilo","silhueta","silicone","simetria","simpatia","simular","sinal","sincero","singular","sinopse","sintonia","sirene","siri","situado","soberano","sobra","socorro","sogro","soja","solda","soletrar","solteiro","sombrio","sonata","sondar","sonegar","sonhador","sono","soprano","soquete","sorrir","sorteio","sossego","sotaque","soterrar","sovado","sozinho","suavizar","subida","submerso","subsolo","subtrair","sucata","sucesso","suco","sudeste","sufixo","sugador","sugerir","sujeito","sulfato","sumir","suor","superior","suplicar","suposto","suprimir","surdina","surfista","surpresa","surreal","surtir","suspiro","sustento","tabela","tablete","tabuada","tacho","tagarela","talher","talo","talvez","tamanho","tamborim","tampa","tangente","tanto","tapar","tapioca","tardio","tarefa","tarja","tarraxa","tatuagem","taurino","taxativo","taxista","teatral","tecer","tecido","teclado","tedioso","teia","teimar","telefone","telhado","tempero","tenente","tensor","tentar","termal","terno","terreno","tese","tesoura","testado","teto","textura","texugo","tiara","tigela","tijolo","timbrar","timidez","tingido","tinteiro","tiragem","titular","toalha","tocha","tolerar","tolice","tomada","tomilho","tonel","tontura","topete","tora","torcido","torneio","torque","torrada","torto","tostar","touca","toupeira","toxina","trabalho","tracejar","tradutor","trafegar","trajeto","trama","trancar","trapo","traseiro","tratador","travar","treino","tremer","trepidar","trevo","triagem","tribo","triciclo","tridente","trilogia","trindade","triplo","triturar","triunfal","trocar","trombeta","trova","trunfo","truque","tubular","tucano","tudo","tulipa","tupi","turbo","turma","turquesa","tutelar","tutorial","uivar","umbigo","unha","unidade","uniforme","urologia","urso","urtiga","urubu","usado","usina","usufruir","vacina","vadiar","vagaroso","vaidoso","vala","valente","validade","valores","vantagem","vaqueiro","varanda","vareta","varrer","vascular","vasilha","vassoura","vazar","vazio","veado","vedar","vegetar","veicular","veleiro","velhice","veludo","vencedor","vendaval","venerar","ventre","verbal","verdade","vereador","vergonha","vermelho","verniz","versar","vertente","vespa","vestido","vetorial","viaduto","viagem","viajar","viatura","vibrador","videira","vidraria","viela","viga","vigente","vigiar","vigorar","vilarejo","vinco","vinheta","vinil","violeta","virada","virtude","visitar","visto","vitral","viveiro","vizinho","voador","voar","vogal","volante","voleibol","voltagem","volumoso","vontade","vulto","vuvuzela","xadrez","xarope","xeque","xeretar","xerife","xingar","zangado","zarpar","zebu","zelador","zombar","zoologia","zumbido"]')},659:e=>{"use strict";e.exports=JSON.parse('["a\u0301baco","abdomen","abeja","abierto","abogado","abono","aborto","abrazo","abrir","abuelo","abuso","acabar","academia","acceso","accio\u0301n","aceite","acelga","acento","aceptar","a\u0301cido","aclarar","acne\u0301","acoger","acoso","activo","acto","actriz","actuar","acudir","acuerdo","acusar","adicto","admitir","adoptar","adorno","aduana","adulto","ae\u0301reo","afectar","aficio\u0301n","afinar","afirmar","a\u0301gil","agitar","agoni\u0301a","agosto","agotar","agregar","agrio","agua","agudo","a\u0301guila","aguja","ahogo","ahorro","aire","aislar","ajedrez","ajeno","ajuste","alacra\u0301n","alambre","alarma","alba","a\u0301lbum","alcalde","aldea","alegre","alejar","alerta","aleta","alfiler","alga","algodo\u0301n","aliado","aliento","alivio","alma","almeja","almi\u0301bar","altar","alteza","altivo","alto","altura","alumno","alzar","amable","amante","amapola","amargo","amasar","a\u0301mbar","a\u0301mbito","ameno","amigo","amistad","amor","amparo","amplio","ancho","anciano","ancla","andar","ande\u0301n","anemia","a\u0301ngulo","anillo","a\u0301nimo","ani\u0301s","anotar","antena","antiguo","antojo","anual","anular","anuncio","an\u0303adir","an\u0303ejo","an\u0303o","apagar","aparato","apetito","apio","aplicar","apodo","aporte","apoyo","aprender","aprobar","apuesta","apuro","arado","aran\u0303a","arar","a\u0301rbitro","a\u0301rbol","arbusto","archivo","arco","arder","ardilla","arduo","a\u0301rea","a\u0301rido","aries","armoni\u0301a","arne\u0301s","aroma","arpa","arpo\u0301n","arreglo","arroz","arruga","arte","artista","asa","asado","asalto","ascenso","asegurar","aseo","asesor","asiento","asilo","asistir","asno","asombro","a\u0301spero","astilla","astro","astuto","asumir","asunto","atajo","ataque","atar","atento","ateo","a\u0301tico","atleta","a\u0301tomo","atraer","atroz","atu\u0301n","audaz","audio","auge","aula","aumento","ausente","autor","aval","avance","avaro","ave","avellana","avena","avestruz","avio\u0301n","aviso","ayer","ayuda","ayuno","azafra\u0301n","azar","azote","azu\u0301car","azufre","azul","baba","babor","bache","bahi\u0301a","baile","bajar","balanza","balco\u0301n","balde","bambu\u0301","banco","banda","ban\u0303o","barba","barco","barniz","barro","ba\u0301scula","basto\u0301n","basura","batalla","bateri\u0301a","batir","batuta","bau\u0301l","bazar","bebe\u0301","bebida","bello","besar","beso","bestia","bicho","bien","bingo","blanco","bloque","blusa","boa","bobina","bobo","boca","bocina","boda","bodega","boina","bola","bolero","bolsa","bomba","bondad","bonito","bono","bonsa\u0301i","borde","borrar","bosque","bote","boti\u0301n","bo\u0301veda","bozal","bravo","brazo","brecha","breve","brillo","brinco","brisa","broca","broma","bronce","brote","bruja","brusco","bruto","buceo","bucle","bueno","buey","bufanda","bufo\u0301n","bu\u0301ho","buitre","bulto","burbuja","burla","burro","buscar","butaca","buzo\u0301n","caballo","cabeza","cabina","cabra","cacao","cada\u0301ver","cadena","caer","cafe\u0301","cai\u0301da","caima\u0301n","caja","cajo\u0301n","cal","calamar","calcio","caldo","calidad","calle","calma","calor","calvo","cama","cambio","camello","camino","campo","ca\u0301ncer","candil","canela","canguro","canica","canto","can\u0303a","can\u0303o\u0301n","caoba","caos","capaz","capita\u0301n","capote","captar","capucha","cara","carbo\u0301n","ca\u0301rcel","careta","carga","carin\u0303o","carne","carpeta","carro","carta","casa","casco","casero","caspa","castor","catorce","catre","caudal","causa","cazo","cebolla","ceder","cedro","celda","ce\u0301lebre","celoso","ce\u0301lula","cemento","ceniza","centro","cerca","cerdo","cereza","cero","cerrar","certeza","ce\u0301sped","cetro","chacal","chaleco","champu\u0301","chancla","chapa","charla","chico","chiste","chivo","choque","choza","chuleta","chupar","ciclo\u0301n","ciego","cielo","cien","cierto","cifra","cigarro","cima","cinco","cine","cinta","cipre\u0301s","circo","ciruela","cisne","cita","ciudad","clamor","clan","claro","clase","clave","cliente","clima","cli\u0301nica","cobre","coccio\u0301n","cochino","cocina","coco","co\u0301digo","codo","cofre","coger","cohete","coji\u0301n","cojo","cola","colcha","colegio","colgar","colina","collar","colmo","columna","combate","comer","comida","co\u0301modo","compra","conde","conejo","conga","conocer","consejo","contar","copa","copia","corazo\u0301n","corbata","corcho","cordo\u0301n","corona","correr","coser","cosmos","costa","cra\u0301neo","cra\u0301ter","crear","crecer","crei\u0301do","crema","cri\u0301a","crimen","cripta","crisis","cromo","cro\u0301nica","croqueta","crudo","cruz","cuadro","cuarto","cuatro","cubo","cubrir","cuchara","cuello","cuento","cuerda","cuesta","cueva","cuidar","culebra","culpa","culto","cumbre","cumplir","cuna","cuneta","cuota","cupo\u0301n","cu\u0301pula","curar","curioso","curso","curva","cutis","dama","danza","dar","dardo","da\u0301til","deber","de\u0301bil","de\u0301cada","decir","dedo","defensa","definir","dejar","delfi\u0301n","delgado","delito","demora","denso","dental","deporte","derecho","derrota","desayuno","deseo","desfile","desnudo","destino","desvi\u0301o","detalle","detener","deuda","di\u0301a","diablo","diadema","diamante","diana","diario","dibujo","dictar","diente","dieta","diez","difi\u0301cil","digno","dilema","diluir","dinero","directo","dirigir","disco","disen\u0303o","disfraz","diva","divino","doble","doce","dolor","domingo","don","donar","dorado","dormir","dorso","dos","dosis","drago\u0301n","droga","ducha","duda","duelo","duen\u0303o","dulce","du\u0301o","duque","durar","dureza","duro","e\u0301bano","ebrio","echar","eco","ecuador","edad","edicio\u0301n","edificio","editor","educar","efecto","eficaz","eje","ejemplo","elefante","elegir","elemento","elevar","elipse","e\u0301lite","elixir","elogio","eludir","embudo","emitir","emocio\u0301n","empate","empen\u0303o","empleo","empresa","enano","encargo","enchufe","enci\u0301a","enemigo","enero","enfado","enfermo","engan\u0303o","enigma","enlace","enorme","enredo","ensayo","ensen\u0303ar","entero","entrar","envase","envi\u0301o","e\u0301poca","equipo","erizo","escala","escena","escolar","escribir","escudo","esencia","esfera","esfuerzo","espada","espejo","espi\u0301a","esposa","espuma","esqui\u0301","estar","este","estilo","estufa","etapa","eterno","e\u0301tica","etnia","evadir","evaluar","evento","evitar","exacto","examen","exceso","excusa","exento","exigir","exilio","existir","e\u0301xito","experto","explicar","exponer","extremo","fa\u0301brica","fa\u0301bula","fachada","fa\u0301cil","factor","faena","faja","falda","fallo","falso","faltar","fama","familia","famoso","farao\u0301n","farmacia","farol","farsa","fase","fatiga","fauna","favor","fax","febrero","fecha","feliz","feo","feria","feroz","fe\u0301rtil","fervor","festi\u0301n","fiable","fianza","fiar","fibra","ficcio\u0301n","ficha","fideo","fiebre","fiel","fiera","fiesta","figura","fijar","fijo","fila","filete","filial","filtro","fin","finca","fingir","finito","firma","flaco","flauta","flecha","flor","flota","fluir","flujo","flu\u0301or","fobia","foca","fogata","fogo\u0301n","folio","folleto","fondo","forma","forro","fortuna","forzar","fosa","foto","fracaso","fra\u0301gil","franja","frase","fraude","frei\u0301r","freno","fresa","fri\u0301o","frito","fruta","fuego","fuente","fuerza","fuga","fumar","funcio\u0301n","funda","furgo\u0301n","furia","fusil","fu\u0301tbol","futuro","gacela","gafas","gaita","gajo","gala","galeri\u0301a","gallo","gamba","ganar","gancho","ganga","ganso","garaje","garza","gasolina","gastar","gato","gavila\u0301n","gemelo","gemir","gen","ge\u0301nero","genio","gente","geranio","gerente","germen","gesto","gigante","gimnasio","girar","giro","glaciar","globo","gloria","gol","golfo","goloso","golpe","goma","gordo","gorila","gorra","gota","goteo","gozar","grada","gra\u0301fico","grano","grasa","gratis","grave","grieta","grillo","gripe","gris","grito","grosor","gru\u0301a","grueso","grumo","grupo","guante","guapo","guardia","guerra","gui\u0301a","guin\u0303o","guion","guiso","guitarra","gusano","gustar","haber","ha\u0301bil","hablar","hacer","hacha","hada","hallar","hamaca","harina","haz","hazan\u0303a","hebilla","hebra","hecho","helado","helio","hembra","herir","hermano","he\u0301roe","hervir","hielo","hierro","hi\u0301gado","higiene","hijo","himno","historia","hocico","hogar","hoguera","hoja","hombre","hongo","honor","honra","hora","hormiga","horno","hostil","hoyo","hueco","huelga","huerta","hueso","huevo","huida","huir","humano","hu\u0301medo","humilde","humo","hundir","huraca\u0301n","hurto","icono","ideal","idioma","i\u0301dolo","iglesia","iglu\u0301","igual","ilegal","ilusio\u0301n","imagen","ima\u0301n","imitar","impar","imperio","imponer","impulso","incapaz","i\u0301ndice","inerte","infiel","informe","ingenio","inicio","inmenso","inmune","innato","insecto","instante","intere\u0301s","i\u0301ntimo","intuir","inu\u0301til","invierno","ira","iris","ironi\u0301a","isla","islote","jabali\u0301","jabo\u0301n","jamo\u0301n","jarabe","jardi\u0301n","jarra","jaula","jazmi\u0301n","jefe","jeringa","jinete","jornada","joroba","joven","joya","juerga","jueves","juez","jugador","jugo","juguete","juicio","junco","jungla","junio","juntar","ju\u0301piter","jurar","justo","juvenil","juzgar","kilo","koala","labio","lacio","lacra","lado","ladro\u0301n","lagarto","la\u0301grima","laguna","laico","lamer","la\u0301mina","la\u0301mpara","lana","lancha","langosta","lanza","la\u0301piz","largo","larva","la\u0301stima","lata","la\u0301tex","latir","laurel","lavar","lazo","leal","leccio\u0301n","leche","lector","leer","legio\u0301n","legumbre","lejano","lengua","lento","len\u0303a","leo\u0301n","leopardo","lesio\u0301n","letal","letra","leve","leyenda","libertad","libro","licor","li\u0301der","lidiar","lienzo","liga","ligero","lima","li\u0301mite","limo\u0301n","limpio","lince","lindo","li\u0301nea","lingote","lino","linterna","li\u0301quido","liso","lista","litera","litio","litro","llaga","llama","llanto","llave","llegar","llenar","llevar","llorar","llover","lluvia","lobo","locio\u0301n","loco","locura","lo\u0301gica","logro","lombriz","lomo","lonja","lote","lucha","lucir","lugar","lujo","luna","lunes","lupa","lustro","luto","luz","maceta","macho","madera","madre","maduro","maestro","mafia","magia","mago","mai\u0301z","maldad","maleta","malla","malo","mama\u0301","mambo","mamut","manco","mando","manejar","manga","maniqui\u0301","manjar","mano","manso","manta","man\u0303ana","mapa","ma\u0301quina","mar","marco","marea","marfil","margen","marido","ma\u0301rmol","marro\u0301n","martes","marzo","masa","ma\u0301scara","masivo","matar","materia","matiz","matriz","ma\u0301ximo","mayor","mazorca","mecha","medalla","medio","me\u0301dula","mejilla","mejor","melena","melo\u0301n","memoria","menor","mensaje","mente","menu\u0301","mercado","merengue","me\u0301rito","mes","meso\u0301n","meta","meter","me\u0301todo","metro","mezcla","miedo","miel","miembro","miga","mil","milagro","militar","millo\u0301n","mimo","mina","minero","mi\u0301nimo","minuto","miope","mirar","misa","miseria","misil","mismo","mitad","mito","mochila","mocio\u0301n","moda","modelo","moho","mojar","molde","moler","molino","momento","momia","monarca","moneda","monja","monto","mon\u0303o","morada","morder","moreno","morir","morro","morsa","mortal","mosca","mostrar","motivo","mover","mo\u0301vil","mozo","mucho","mudar","mueble","muela","muerte","muestra","mugre","mujer","mula","muleta","multa","mundo","mun\u0303eca","mural","muro","mu\u0301sculo","museo","musgo","mu\u0301sica","muslo","na\u0301car","nacio\u0301n","nadar","naipe","naranja","nariz","narrar","nasal","natal","nativo","natural","na\u0301usea","naval","nave","navidad","necio","ne\u0301ctar","negar","negocio","negro","neo\u0301n","nervio","neto","neutro","nevar","nevera","nicho","nido","niebla","nieto","nin\u0303ez","nin\u0303o","ni\u0301tido","nivel","nobleza","noche","no\u0301mina","noria","norma","norte","nota","noticia","novato","novela","novio","nube","nuca","nu\u0301cleo","nudillo","nudo","nuera","nueve","nuez","nulo","nu\u0301mero","nutria","oasis","obeso","obispo","objeto","obra","obrero","observar","obtener","obvio","oca","ocaso","oce\u0301ano","ochenta","ocho","ocio","ocre","octavo","octubre","oculto","ocupar","ocurrir","odiar","odio","odisea","oeste","ofensa","oferta","oficio","ofrecer","ogro","oi\u0301do","oi\u0301r","ojo","ola","oleada","olfato","olivo","olla","olmo","olor","olvido","ombligo","onda","onza","opaco","opcio\u0301n","o\u0301pera","opinar","oponer","optar","o\u0301ptica","opuesto","oracio\u0301n","orador","oral","o\u0301rbita","orca","orden","oreja","o\u0301rgano","orgi\u0301a","orgullo","oriente","origen","orilla","oro","orquesta","oruga","osadi\u0301a","oscuro","osezno","oso","ostra","oton\u0303o","otro","oveja","o\u0301vulo","o\u0301xido","oxi\u0301geno","oyente","ozono","pacto","padre","paella","pa\u0301gina","pago","pai\u0301s","pa\u0301jaro","palabra","palco","paleta","pa\u0301lido","palma","paloma","palpar","pan","panal","pa\u0301nico","pantera","pan\u0303uelo","papa\u0301","papel","papilla","paquete","parar","parcela","pared","parir","paro","pa\u0301rpado","parque","pa\u0301rrafo","parte","pasar","paseo","pasio\u0301n","paso","pasta","pata","patio","patria","pausa","pauta","pavo","payaso","peato\u0301n","pecado","pecera","pecho","pedal","pedir","pegar","peine","pelar","peldan\u0303o","pelea","peligro","pellejo","pelo","peluca","pena","pensar","pen\u0303o\u0301n","peo\u0301n","peor","pepino","pequen\u0303o","pera","percha","perder","pereza","perfil","perico","perla","permiso","perro","persona","pesa","pesca","pe\u0301simo","pestan\u0303a","pe\u0301talo","petro\u0301leo","pez","pezun\u0303a","picar","picho\u0301n","pie","piedra","pierna","pieza","pijama","pilar","piloto","pimienta","pino","pintor","pinza","pin\u0303a","piojo","pipa","pirata","pisar","piscina","piso","pista","pito\u0301n","pizca","placa","plan","plata","playa","plaza","pleito","pleno","plomo","pluma","plural","pobre","poco","poder","podio","poema","poesi\u0301a","poeta","polen","polici\u0301a","pollo","polvo","pomada","pomelo","pomo","pompa","poner","porcio\u0301n","portal","posada","poseer","posible","poste","potencia","potro","pozo","prado","precoz","pregunta","premio","prensa","preso","previo","primo","pri\u0301ncipe","prisio\u0301n","privar","proa","probar","proceso","producto","proeza","profesor","programa","prole","promesa","pronto","propio","pro\u0301ximo","prueba","pu\u0301blico","puchero","pudor","pueblo","puerta","puesto","pulga","pulir","pulmo\u0301n","pulpo","pulso","puma","punto","pun\u0303al","pun\u0303o","pupa","pupila","pure\u0301","quedar","queja","quemar","querer","queso","quieto","qui\u0301mica","quince","quitar","ra\u0301bano","rabia","rabo","racio\u0301n","radical","rai\u0301z","rama","rampa","rancho","rango","rapaz","ra\u0301pido","rapto","rasgo","raspa","rato","rayo","raza","razo\u0301n","reaccio\u0301n","realidad","reban\u0303o","rebote","recaer","receta","rechazo","recoger","recreo","recto","recurso","red","redondo","reducir","reflejo","reforma","refra\u0301n","refugio","regalo","regir","regla","regreso","rehe\u0301n","reino","rei\u0301r","reja","relato","relevo","relieve","relleno","reloj","remar","remedio","remo","rencor","rendir","renta","reparto","repetir","reposo","reptil","res","rescate","resina","respeto","resto","resumen","retiro","retorno","retrato","reunir","reve\u0301s","revista","rey","rezar","rico","riego","rienda","riesgo","rifa","ri\u0301gido","rigor","rinco\u0301n","rin\u0303o\u0301n","ri\u0301o","riqueza","risa","ritmo","rito","rizo","roble","roce","rociar","rodar","rodeo","rodilla","roer","rojizo","rojo","romero","romper","ron","ronco","ronda","ropa","ropero","rosa","rosca","rostro","rotar","rubi\u0301","rubor","rudo","rueda","rugir","ruido","ruina","ruleta","rulo","rumbo","rumor","ruptura","ruta","rutina","sa\u0301bado","saber","sabio","sable","sacar","sagaz","sagrado","sala","saldo","salero","salir","salmo\u0301n","salo\u0301n","salsa","salto","salud","salvar","samba","sancio\u0301n","sandi\u0301a","sanear","sangre","sanidad","sano","santo","sapo","saque","sardina","sarte\u0301n","sastre","sata\u0301n","sauna","saxofo\u0301n","seccio\u0301n","seco","secreto","secta","sed","seguir","seis","sello","selva","semana","semilla","senda","sensor","sen\u0303al","sen\u0303or","separar","sepia","sequi\u0301a","ser","serie","sermo\u0301n","servir","sesenta","sesio\u0301n","seta","setenta","severo","sexo","sexto","sidra","siesta","siete","siglo","signo","si\u0301laba","silbar","silencio","silla","si\u0301mbolo","simio","sirena","sistema","sitio","situar","sobre","socio","sodio","sol","solapa","soldado","soledad","so\u0301lido","soltar","solucio\u0301n","sombra","sondeo","sonido","sonoro","sonrisa","sopa","soplar","soporte","sordo","sorpresa","sorteo","soste\u0301n","so\u0301tano","suave","subir","suceso","sudor","suegra","suelo","suen\u0303o","suerte","sufrir","sujeto","sulta\u0301n","sumar","superar","suplir","suponer","supremo","sur","surco","suren\u0303o","surgir","susto","sutil","tabaco","tabique","tabla","tabu\u0301","taco","tacto","tajo","talar","talco","talento","talla","talo\u0301n","taman\u0303o","tambor","tango","tanque","tapa","tapete","tapia","tapo\u0301n","taquilla","tarde","tarea","tarifa","tarjeta","tarot","tarro","tarta","tatuaje","tauro","taza","tazo\u0301n","teatro","techo","tecla","te\u0301cnica","tejado","tejer","tejido","tela","tele\u0301fono","tema","temor","templo","tenaz","tender","tener","tenis","tenso","teori\u0301a","terapia","terco","te\u0301rmino","ternura","terror","tesis","tesoro","testigo","tetera","texto","tez","tibio","tiburo\u0301n","tiempo","tienda","tierra","tieso","tigre","tijera","tilde","timbre","ti\u0301mido","timo","tinta","ti\u0301o","ti\u0301pico","tipo","tira","tiro\u0301n","tita\u0301n","ti\u0301tere","ti\u0301tulo","tiza","toalla","tobillo","tocar","tocino","todo","toga","toldo","tomar","tono","tonto","topar","tope","toque","to\u0301rax","torero","tormenta","torneo","toro","torpedo","torre","torso","tortuga","tos","tosco","toser","to\u0301xico","trabajo","tractor","traer","tra\u0301fico","trago","traje","tramo","trance","trato","trauma","trazar","tre\u0301bol","tregua","treinta","tren","trepar","tres","tribu","trigo","tripa","triste","triunfo","trofeo","trompa","tronco","tropa","trote","trozo","truco","trueno","trufa","tuberi\u0301a","tubo","tuerto","tumba","tumor","tu\u0301nel","tu\u0301nica","turbina","turismo","turno","tutor","ubicar","u\u0301lcera","umbral","unidad","unir","universo","uno","untar","un\u0303a","urbano","urbe","urgente","urna","usar","usuario","u\u0301til","utopi\u0301a","uva","vaca","vaci\u0301o","vacuna","vagar","vago","vaina","vajilla","vale","va\u0301lido","valle","valor","va\u0301lvula","vampiro","vara","variar","varo\u0301n","vaso","vecino","vector","vehi\u0301culo","veinte","vejez","vela","velero","veloz","vena","vencer","venda","veneno","vengar","venir","venta","venus","ver","verano","verbo","verde","vereda","verja","verso","verter","vi\u0301a","viaje","vibrar","vicio","vi\u0301ctima","vida","vi\u0301deo","vidrio","viejo","viernes","vigor","vil","villa","vinagre","vino","vin\u0303edo","violi\u0301n","viral","virgo","virtud","visor","vi\u0301spera","vista","vitamina","viudo","vivaz","vivero","vivir","vivo","volca\u0301n","volumen","volver","voraz","votar","voto","voz","vuelo","vulgar","yacer","yate","yegua","yema","yerno","yeso","yodo","yoga","yogur","zafiro","zanja","zapato","zarza","zona","zorro","zumo","zurdo"]')},8597:e=>{"use strict";e.exports={i8:"6.5.4"}}},t={};function r(n){var i=t[n];if(void 0!==i)return i.exports;var o=t[n]={id:n,loaded:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}r.m=e,r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},(()=>{var e,t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;r.t=function(n,i){if(1&i&&(n=this(n)),8&i)return n;if("object"===typeof n&&n){if(4&i&&n.__esModule)return n;if(16&i&&"function"===typeof n.then)return n}var o=Object.create(null);r.r(o);var a={};e=e||[null,t({}),t([]),t(t)];for(var s=2&i&&n;"object"==typeof s&&!~e.indexOf(s);s=t(s))Object.getOwnPropertyNames(s).forEach((e=>a[e]=()=>n[e]));return a.default=()=>n,r.d(o,a),o}})(),r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce(((t,n)=>(r.f[n](e,t),t)),[])),r.u=e=>"static/js/"+{11:"reactPlayerFilePlayer",55:"reactPlayerWistia",121:"reactPlayerFacebook",125:"reactPlayerSoundCloud",216:"reactPlayerTwitch",261:"reactPlayerKaltura",439:"reactPlayerYouTube",546:"reactPlayerStreamable",596:"reactPlayerDailyMotion",664:"reactPlayerPreview",667:"reactPlayerMixcloud",743:"reactPlayerVimeo",888:"reactPlayerVidyard"}[e]+"."+{11:"e80ecc26",55:"3e9b92cd",121:"7cf6341d",125:"711da1b8",216:"f0b1f6ae",261:"be8ee3e8",439:"7af9731a",546:"5c7da0c4",596:"aabe77d2",664:"acebb486",667:"17f7600e",743:"bb9275d4",888:"56722b87"}[e]+".chunk.js",r.miniCssF=e=>{},r.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}(),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{var e={},t="umami:";r.l=(n,i,o,a)=>{if(e[n])e[n].push(i);else{var s,c;if(void 0!==o)for(var l=document.getElementsByTagName("script"),u=0;u{s.onerror=s.onload=null,clearTimeout(f);var i=e[n];if(delete e[n],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(r))),t)return t(r)},f=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),c&&document.head.appendChild(s)}}})(),r.r=e=>{"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),r.p="./",(()=>{var e={179:0};r.f.j=(t,n)=>{var i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{var o=new Promise(((r,n)=>i=e[t]=[r,n]));n.push(i[2]=o);var a=r.p+r.u(t),s=new Error;r.l(a,(n=>{if(r.o(e,t)&&(0!==(i=e[t])&&(e[t]=void 0),i)){var o=n&&("load"===n.type?"missing":n.type),a=n&&n.target&&n.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,i[1](s)}}),"chunk-"+t,t)}};var t=(t,n)=>{var i,o,[a,s,c]=n,l=0;if(a.some((t=>0!==e[t]))){for(i in s)r.o(s,i)&&(r.m[i]=s[i]);if(c)c(r)}for(t&&t(n);l{"use strict";var e={};r.r(e),r.d(e,{hasBrowserEnv:()=>wC,hasStandardBrowserEnv:()=>xC,hasStandardBrowserWebWorkerEnv:()=>SC});var t={};r.r(t),r.d(t,{Decoder:()=>B6,Encoder:()=>D6,PacketType:()=>N6,protocol:()=>L6});var n=r(9652),i=r.t(n,2),o=r(2171);const a=(0,n.createContext)(null),s={didCatch:!1,error:null};class c extends n.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=s}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){const{error:e}=this.state;if(null!==e){for(var t,r,n=arguments.length,i=new Array(n),o=0;o0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return e.length!==t.length||e.some(((e,r)=>!Object.is(e,t[r])))}(e.resetKeys,n)&&(null===(i=(o=this.props).onReset)||void 0===i||i.call(o,{next:n,prev:e.resetKeys,reason:"keys"}),this.setState(s))}render(){const{children:e,fallbackRender:t,FallbackComponent:r,fallback:i}=this.props,{didCatch:o,error:s}=this.state;let c=e;if(o){const e={error:s,resetErrorBoundary:this.resetErrorBoundary};if("function"===typeof t)c=t(e);else if(r)c=(0,n.createElement)(r,e);else{if(null!==i&&!(0,n.isValidElement)(i))throw s;c=i}}return(0,n.createElement)(a.Provider,{value:{didCatch:o,error:s,resetErrorBoundary:this.resetErrorBoundary}},c)}}function l(e){return l="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"===typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function u(e,t){for(var r=0;re.filter(Boolean).join(" ");function y(e){const t=typeof e;return null!=e&&("object"===t||"function"===t)&&!Array.isArray(e)}var b=e=>{const{condition:t,message:r}=e};function w(e,...t){return x(e)?e(...t):e}var x=e=>"function"===typeof e,_=e=>e?"":void 0,S=e=>!!e||void 0;function k(...e){return function(t){e.some((e=>(null==e||e(t),null==t?void 0:t.defaultPrevented)))}}function E(...e){return function(t){e.forEach((e=>{null==e||e(t)}))}}var A=r(6283),P=e=>"string"===typeof e?e.replace(/!(important)?$/,"").trim():e,O=(e,t)=>r=>{const n=String(t),i=(e=>/!(important)?$/.test(e))(n),o=P(n),a=e?`${e}.${o}`:o;let s=y(r.__cssMap)&&a in r.__cssMap?r.__cssMap[a].varRef:t;return s=P(s),i?`${s} !important`:s};function T(e){const{scale:t,transform:r,compose:n}=e;return(e,i)=>{var o;const a=O(t,e)(i);let s=null!=(o=null==r?void 0:r(a,i))?o:a;return n&&(s=n(s,i)),s}}var C=(...e)=>t=>e.reduce(((e,t)=>t(e)),t);function j(e,t){return r=>{const n={property:r,scale:e};return n.transform=T({scale:e,transform:t}),n}}var R=({rtl:e,ltr:t})=>r=>"rtl"===r.direction?e:t;var I=["rotate(var(--chakra-rotate, 0))","scaleX(var(--chakra-scale-x, 1))","scaleY(var(--chakra-scale-y, 1))","skewX(var(--chakra-skew-x, 0))","skewY(var(--chakra-skew-y, 0))"];var M={"--chakra-blur":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-brightness":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-contrast":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-grayscale":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-hue-rotate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-invert":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-saturate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-sepia":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-drop-shadow":"var(--chakra-empty,/*!*/ /*!*/)",filter:["var(--chakra-blur)","var(--chakra-brightness)","var(--chakra-contrast)","var(--chakra-grayscale)","var(--chakra-hue-rotate)","var(--chakra-invert)","var(--chakra-saturate)","var(--chakra-sepia)","var(--chakra-drop-shadow)"].join(" ")},L={backdropFilter:["var(--chakra-backdrop-blur)","var(--chakra-backdrop-brightness)","var(--chakra-backdrop-contrast)","var(--chakra-backdrop-grayscale)","var(--chakra-backdrop-hue-rotate)","var(--chakra-backdrop-invert)","var(--chakra-backdrop-opacity)","var(--chakra-backdrop-saturate)","var(--chakra-backdrop-sepia)"].join(" "),"--chakra-backdrop-blur":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-brightness":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-contrast":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-grayscale":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-hue-rotate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-invert":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-opacity":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-saturate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-sepia":"var(--chakra-empty,/*!*/ /*!*/)"};var N={"row-reverse":{space:"--chakra-space-x-reverse",divide:"--chakra-divide-x-reverse"},"column-reverse":{space:"--chakra-space-y-reverse",divide:"--chakra-divide-y-reverse"}},D={"to-t":"to top","to-tr":"to top right","to-r":"to right","to-br":"to bottom right","to-b":"to bottom","to-bl":"to bottom left","to-l":"to left","to-tl":"to top left"},z=new Set(Object.values(D)),B=new Set(["none","-moz-initial","inherit","initial","revert","unset"]),U=e=>e.trim();var F=e=>"string"===typeof e&&e.includes("(")&&e.includes(")");var $=e=>t=>`${e}(${t})`,H={filter:e=>"auto"!==e?e:M,backdropFilter:e=>"auto"!==e?e:L,ring:e=>function(e){return{"--chakra-ring-offset-shadow":"var(--chakra-ring-inset) 0 0 0 var(--chakra-ring-offset-width) var(--chakra-ring-offset-color)","--chakra-ring-shadow":"var(--chakra-ring-inset) 0 0 0 calc(var(--chakra-ring-width) + var(--chakra-ring-offset-width)) var(--chakra-ring-color)","--chakra-ring-width":e,boxShadow:["var(--chakra-ring-offset-shadow)","var(--chakra-ring-shadow)","var(--chakra-shadow, 0 0 #0000)"].join(", ")}}(H.px(e)),bgClip:e=>"text"===e?{color:"transparent",backgroundClip:"text"}:{backgroundClip:e},transform:e=>"auto"===e?["translateX(var(--chakra-translate-x, 0))","translateY(var(--chakra-translate-y, 0))",...I].join(" "):"auto-gpu"===e?["translate3d(var(--chakra-translate-x, 0), var(--chakra-translate-y, 0), 0)",...I].join(" "):e,vh:e=>"$100vh"===e?"var(--chakra-vh)":e,px(e){if(null==e)return e;const{unitless:t}=(e=>{const t=parseFloat(e.toString()),r=e.toString().replace(String(t),"");return{unitless:!r,value:t,unit:r}})(e);return t||"number"===typeof e?`${e}px`:e},fraction:e=>"number"!==typeof e||e>1?e:100*e+"%",float:(e,t)=>"rtl"===t.direction?{left:"right",right:"left"}[e]:e,degree(e){if(function(e){return/^var\(--.+\)$/.test(e)}(e)||null==e)return e;const t="string"===typeof e&&!e.endsWith("deg");return"number"===typeof e||t?`${e}deg`:e},gradient:(e,t)=>function(e,t){if(null==e||B.has(e))return e;if(!F(e)&&!B.has(e))return`url('${e}')`;const r=/(^[a-z-A-Z]+)\((.*)\)/g.exec(e),n=null==r?void 0:r[1],i=null==r?void 0:r[2];if(!n||!i)return e;const o=n.includes("-gradient")?n:`${n}-gradient`,[a,...s]=i.split(",").map(U).filter(Boolean);if(0===(null==s?void 0:s.length))return e;const c=a in D?D[a]:a;return s.unshift(c),`${o}(${s.map((e=>{if(z.has(e))return e;const r=e.indexOf(" "),[n,i]=-1!==r?[e.substr(0,r),e.substr(r+1)]:[e],o=F(i)?i:i&&i.split(" "),a=`colors.${n}`,s=a in t.__cssMap?t.__cssMap[a].varRef:n;return o?[s,...Array.isArray(o)?o:[o]].join(" "):s})).join(", ")})`}(e,null!=t?t:{}),blur:$("blur"),opacity:$("opacity"),brightness:$("brightness"),contrast:$("contrast"),dropShadow:$("drop-shadow"),grayscale:$("grayscale"),hueRotate:e=>$("hue-rotate")(H.degree(e)),invert:$("invert"),saturate:$("saturate"),sepia:$("sepia"),bgImage(e){if(null==e)return e;return F(e)||B.has(e)?e:`url(${e})`},outline(e){const t="0"===String(e)||"none"===String(e);return null!==e&&t?{outline:"2px solid transparent",outlineOffset:"2px"}:{outline:e}},flexDirection(e){var t;const{space:r,divide:n}=null!=(t=N[e])?t:{},i={flexDirection:e};return r&&(i[r]=1),n&&(i[n]=1),i}},V={borderWidths:j("borderWidths"),borderStyles:j("borderStyles"),colors:j("colors"),borders:j("borders"),gradients:j("gradients",H.gradient),radii:j("radii",H.px),space:j("space",C(H.vh,H.px)),spaceT:j("space",C(H.vh,H.px)),degreeT:e=>({property:e,transform:H.degree}),prop:(e,t,r)=>({property:e,scale:t,...t&&{transform:T({scale:t,transform:r})}}),propT:(e,t)=>({property:e,transform:t}),sizes:j("sizes",C(H.vh,H.px)),sizesT:j("sizes",C(H.vh,H.fraction)),shadows:j("shadows"),logical:function(e){const{property:t,scale:r,transform:n}=e;return{scale:r,property:R(t),transform:r?T({scale:r,compose:n}):n}},blur:j("blur",H.blur)},q={background:V.colors("background"),backgroundColor:V.colors("backgroundColor"),backgroundImage:V.gradients("backgroundImage"),backgroundSize:!0,backgroundPosition:!0,backgroundRepeat:!0,backgroundAttachment:!0,backgroundClip:{transform:H.bgClip},bgSize:V.prop("backgroundSize"),bgPosition:V.prop("backgroundPosition"),bg:V.colors("background"),bgColor:V.colors("backgroundColor"),bgPos:V.prop("backgroundPosition"),bgRepeat:V.prop("backgroundRepeat"),bgAttachment:V.prop("backgroundAttachment"),bgGradient:V.gradients("backgroundImage"),bgClip:{transform:H.bgClip}};Object.assign(q,{bgImage:q.backgroundImage,bgImg:q.backgroundImage});var K={border:V.borders("border"),borderWidth:V.borderWidths("borderWidth"),borderStyle:V.borderStyles("borderStyle"),borderColor:V.colors("borderColor"),borderRadius:V.radii("borderRadius"),borderTop:V.borders("borderTop"),borderBlockStart:V.borders("borderBlockStart"),borderTopLeftRadius:V.radii("borderTopLeftRadius"),borderStartStartRadius:V.logical({scale:"radii",property:{ltr:"borderTopLeftRadius",rtl:"borderTopRightRadius"}}),borderEndStartRadius:V.logical({scale:"radii",property:{ltr:"borderBottomLeftRadius",rtl:"borderBottomRightRadius"}}),borderTopRightRadius:V.radii("borderTopRightRadius"),borderStartEndRadius:V.logical({scale:"radii",property:{ltr:"borderTopRightRadius",rtl:"borderTopLeftRadius"}}),borderEndEndRadius:V.logical({scale:"radii",property:{ltr:"borderBottomRightRadius",rtl:"borderBottomLeftRadius"}}),borderRight:V.borders("borderRight"),borderInlineEnd:V.borders("borderInlineEnd"),borderBottom:V.borders("borderBottom"),borderBlockEnd:V.borders("borderBlockEnd"),borderBottomLeftRadius:V.radii("borderBottomLeftRadius"),borderBottomRightRadius:V.radii("borderBottomRightRadius"),borderLeft:V.borders("borderLeft"),borderInlineStart:{property:"borderInlineStart",scale:"borders"},borderInlineStartRadius:V.logical({scale:"radii",property:{ltr:["borderTopLeftRadius","borderBottomLeftRadius"],rtl:["borderTopRightRadius","borderBottomRightRadius"]}}),borderInlineEndRadius:V.logical({scale:"radii",property:{ltr:["borderTopRightRadius","borderBottomRightRadius"],rtl:["borderTopLeftRadius","borderBottomLeftRadius"]}}),borderX:V.borders(["borderLeft","borderRight"]),borderInline:V.borders("borderInline"),borderY:V.borders(["borderTop","borderBottom"]),borderBlock:V.borders("borderBlock"),borderTopWidth:V.borderWidths("borderTopWidth"),borderBlockStartWidth:V.borderWidths("borderBlockStartWidth"),borderTopColor:V.colors("borderTopColor"),borderBlockStartColor:V.colors("borderBlockStartColor"),borderTopStyle:V.borderStyles("borderTopStyle"),borderBlockStartStyle:V.borderStyles("borderBlockStartStyle"),borderBottomWidth:V.borderWidths("borderBottomWidth"),borderBlockEndWidth:V.borderWidths("borderBlockEndWidth"),borderBottomColor:V.colors("borderBottomColor"),borderBlockEndColor:V.colors("borderBlockEndColor"),borderBottomStyle:V.borderStyles("borderBottomStyle"),borderBlockEndStyle:V.borderStyles("borderBlockEndStyle"),borderLeftWidth:V.borderWidths("borderLeftWidth"),borderInlineStartWidth:V.borderWidths("borderInlineStartWidth"),borderLeftColor:V.colors("borderLeftColor"),borderInlineStartColor:V.colors("borderInlineStartColor"),borderLeftStyle:V.borderStyles("borderLeftStyle"),borderInlineStartStyle:V.borderStyles("borderInlineStartStyle"),borderRightWidth:V.borderWidths("borderRightWidth"),borderInlineEndWidth:V.borderWidths("borderInlineEndWidth"),borderRightColor:V.colors("borderRightColor"),borderInlineEndColor:V.colors("borderInlineEndColor"),borderRightStyle:V.borderStyles("borderRightStyle"),borderInlineEndStyle:V.borderStyles("borderInlineEndStyle"),borderTopRadius:V.radii(["borderTopLeftRadius","borderTopRightRadius"]),borderBottomRadius:V.radii(["borderBottomLeftRadius","borderBottomRightRadius"]),borderLeftRadius:V.radii(["borderTopLeftRadius","borderBottomLeftRadius"]),borderRightRadius:V.radii(["borderTopRightRadius","borderBottomRightRadius"])};Object.assign(K,{rounded:K.borderRadius,roundedTop:K.borderTopRadius,roundedTopLeft:K.borderTopLeftRadius,roundedTopRight:K.borderTopRightRadius,roundedTopStart:K.borderStartStartRadius,roundedTopEnd:K.borderStartEndRadius,roundedBottom:K.borderBottomRadius,roundedBottomLeft:K.borderBottomLeftRadius,roundedBottomRight:K.borderBottomRightRadius,roundedBottomStart:K.borderEndStartRadius,roundedBottomEnd:K.borderEndEndRadius,roundedLeft:K.borderLeftRadius,roundedRight:K.borderRightRadius,roundedStart:K.borderInlineStartRadius,roundedEnd:K.borderInlineEndRadius,borderStart:K.borderInlineStart,borderEnd:K.borderInlineEnd,borderTopStartRadius:K.borderStartStartRadius,borderTopEndRadius:K.borderStartEndRadius,borderBottomStartRadius:K.borderEndStartRadius,borderBottomEndRadius:K.borderEndEndRadius,borderStartRadius:K.borderInlineStartRadius,borderEndRadius:K.borderInlineEndRadius,borderStartWidth:K.borderInlineStartWidth,borderEndWidth:K.borderInlineEndWidth,borderStartColor:K.borderInlineStartColor,borderEndColor:K.borderInlineEndColor,borderStartStyle:K.borderInlineStartStyle,borderEndStyle:K.borderInlineEndStyle});var W={color:V.colors("color"),textColor:V.colors("color"),fill:V.colors("fill"),stroke:V.colors("stroke")},G={boxShadow:V.shadows("boxShadow"),mixBlendMode:!0,blendMode:V.prop("mixBlendMode"),backgroundBlendMode:!0,bgBlendMode:V.prop("backgroundBlendMode"),opacity:!0};Object.assign(G,{shadow:G.boxShadow});var Z={filter:{transform:H.filter},blur:V.blur("--chakra-blur"),brightness:V.propT("--chakra-brightness",H.brightness),contrast:V.propT("--chakra-contrast",H.contrast),hueRotate:V.propT("--chakra-hue-rotate",H.hueRotate),invert:V.propT("--chakra-invert",H.invert),saturate:V.propT("--chakra-saturate",H.saturate),dropShadow:V.propT("--chakra-drop-shadow",H.dropShadow),backdropFilter:{transform:H.backdropFilter},backdropBlur:V.blur("--chakra-backdrop-blur"),backdropBrightness:V.propT("--chakra-backdrop-brightness",H.brightness),backdropContrast:V.propT("--chakra-backdrop-contrast",H.contrast),backdropHueRotate:V.propT("--chakra-backdrop-hue-rotate",H.hueRotate),backdropInvert:V.propT("--chakra-backdrop-invert",H.invert),backdropSaturate:V.propT("--chakra-backdrop-saturate",H.saturate)},Y={alignItems:!0,alignContent:!0,justifyItems:!0,justifyContent:!0,flexWrap:!0,flexDirection:{transform:H.flexDirection},flex:!0,flexFlow:!0,flexGrow:!0,flexShrink:!0,flexBasis:V.sizes("flexBasis"),justifySelf:!0,alignSelf:!0,order:!0,placeItems:!0,placeContent:!0,placeSelf:!0,gap:V.space("gap"),rowGap:V.space("rowGap"),columnGap:V.space("columnGap")};Object.assign(Y,{flexDir:Y.flexDirection});var X={gridGap:V.space("gridGap"),gridColumnGap:V.space("gridColumnGap"),gridRowGap:V.space("gridRowGap"),gridColumn:!0,gridRow:!0,gridAutoFlow:!0,gridAutoColumns:!0,gridColumnStart:!0,gridColumnEnd:!0,gridRowStart:!0,gridRowEnd:!0,gridAutoRows:!0,gridTemplate:!0,gridTemplateColumns:!0,gridTemplateRows:!0,gridTemplateAreas:!0,gridArea:!0},J={appearance:!0,cursor:!0,resize:!0,userSelect:!0,pointerEvents:!0,outline:{transform:H.outline},outlineOffset:!0,outlineColor:V.colors("outlineColor")},Q={width:V.sizesT("width"),inlineSize:V.sizesT("inlineSize"),height:V.sizes("height"),blockSize:V.sizes("blockSize"),boxSize:V.sizes(["width","height"]),minWidth:V.sizes("minWidth"),minInlineSize:V.sizes("minInlineSize"),minHeight:V.sizes("minHeight"),minBlockSize:V.sizes("minBlockSize"),maxWidth:V.sizes("maxWidth"),maxInlineSize:V.sizes("maxInlineSize"),maxHeight:V.sizes("maxHeight"),maxBlockSize:V.sizes("maxBlockSize"),overflow:!0,overflowX:!0,overflowY:!0,overscrollBehavior:!0,overscrollBehaviorX:!0,overscrollBehaviorY:!0,display:!0,aspectRatio:!0,hideFrom:{scale:"breakpoints",transform:(e,t)=>{var r,n,i;return{[`@media screen and (min-width: ${null!=(i=null==(n=null==(r=t.__breakpoints)?void 0:r.get(e))?void 0:n.minW)?i:e})`]:{display:"none"}}}},hideBelow:{scale:"breakpoints",transform:(e,t)=>{var r,n,i;return{[`@media screen and (max-width: ${null!=(i=null==(n=null==(r=t.__breakpoints)?void 0:r.get(e))?void 0:n._minW)?i:e})`]:{display:"none"}}}},verticalAlign:!0,boxSizing:!0,boxDecorationBreak:!0,float:V.propT("float",H.float),objectFit:!0,objectPosition:!0,visibility:!0,isolation:!0};Object.assign(Q,{w:Q.width,h:Q.height,minW:Q.minWidth,maxW:Q.maxWidth,minH:Q.minHeight,maxH:Q.maxHeight,overscroll:Q.overscrollBehavior,overscrollX:Q.overscrollBehaviorX,overscrollY:Q.overscrollBehaviorY});var ee={listStyleType:!0,listStylePosition:!0,listStylePos:V.prop("listStylePosition"),listStyleImage:!0,listStyleImg:V.prop("listStyleImage")};var te=(e=>{const t=new WeakMap;return(r,n,i,o)=>{if("undefined"===typeof r)return e(r,n,i);t.has(r)||t.set(r,new Map);const a=t.get(r);if(a.has(n))return a.get(n);const s=e(r,n,i,o);return a.set(n,s),s}})((function(e,t,r,n){const i="string"===typeof t?t.split("."):[t];for(n=0;n{const n={},i=te(e,t,{});for(const o in i){o in r&&null!=r[o]||(n[o]=i[o])}return n},oe={srOnly:{transform:e=>!0===e?re:"focusable"===e?ne:{}},layerStyle:{processResult:!0,transform:(e,t,r)=>ie(t,`layerStyles.${e}`,r)},textStyle:{processResult:!0,transform:(e,t,r)=>ie(t,`textStyles.${e}`,r)},apply:{processResult:!0,transform:(e,t,r)=>ie(t,e,r)}},ae={position:!0,pos:V.prop("position"),zIndex:V.prop("zIndex","zIndices"),inset:V.spaceT("inset"),insetX:V.spaceT(["left","right"]),insetInline:V.spaceT("insetInline"),insetY:V.spaceT(["top","bottom"]),insetBlock:V.spaceT("insetBlock"),top:V.spaceT("top"),insetBlockStart:V.spaceT("insetBlockStart"),bottom:V.spaceT("bottom"),insetBlockEnd:V.spaceT("insetBlockEnd"),left:V.spaceT("left"),insetInlineStart:V.logical({scale:"space",property:{ltr:"left",rtl:"right"}}),right:V.spaceT("right"),insetInlineEnd:V.logical({scale:"space",property:{ltr:"right",rtl:"left"}})};Object.assign(ae,{insetStart:ae.insetInlineStart,insetEnd:ae.insetInlineEnd});var se={ring:{transform:H.ring},ringColor:V.colors("--chakra-ring-color"),ringOffset:V.prop("--chakra-ring-offset-width"),ringOffsetColor:V.colors("--chakra-ring-offset-color"),ringInset:V.prop("--chakra-ring-inset")},ce={margin:V.spaceT("margin"),marginTop:V.spaceT("marginTop"),marginBlockStart:V.spaceT("marginBlockStart"),marginRight:V.spaceT("marginRight"),marginInlineEnd:V.spaceT("marginInlineEnd"),marginBottom:V.spaceT("marginBottom"),marginBlockEnd:V.spaceT("marginBlockEnd"),marginLeft:V.spaceT("marginLeft"),marginInlineStart:V.spaceT("marginInlineStart"),marginX:V.spaceT(["marginInlineStart","marginInlineEnd"]),marginInline:V.spaceT("marginInline"),marginY:V.spaceT(["marginTop","marginBottom"]),marginBlock:V.spaceT("marginBlock"),padding:V.space("padding"),paddingTop:V.space("paddingTop"),paddingBlockStart:V.space("paddingBlockStart"),paddingRight:V.space("paddingRight"),paddingBottom:V.space("paddingBottom"),paddingBlockEnd:V.space("paddingBlockEnd"),paddingLeft:V.space("paddingLeft"),paddingInlineStart:V.space("paddingInlineStart"),paddingInlineEnd:V.space("paddingInlineEnd"),paddingX:V.space(["paddingInlineStart","paddingInlineEnd"]),paddingInline:V.space("paddingInline"),paddingY:V.space(["paddingTop","paddingBottom"]),paddingBlock:V.space("paddingBlock")};Object.assign(ce,{m:ce.margin,mt:ce.marginTop,mr:ce.marginRight,me:ce.marginInlineEnd,marginEnd:ce.marginInlineEnd,mb:ce.marginBottom,ml:ce.marginLeft,ms:ce.marginInlineStart,marginStart:ce.marginInlineStart,mx:ce.marginX,my:ce.marginY,p:ce.padding,pt:ce.paddingTop,py:ce.paddingY,px:ce.paddingX,pb:ce.paddingBottom,pl:ce.paddingLeft,ps:ce.paddingInlineStart,paddingStart:ce.paddingInlineStart,pr:ce.paddingRight,pe:ce.paddingInlineEnd,paddingEnd:ce.paddingInlineEnd});var le={textDecorationColor:V.colors("textDecorationColor"),textDecoration:!0,textDecor:{property:"textDecoration"},textDecorationLine:!0,textDecorationStyle:!0,textDecorationThickness:!0,textUnderlineOffset:!0,textShadow:V.shadows("textShadow")},ue={clipPath:!0,transform:V.propT("transform",H.transform),transformOrigin:!0,translateX:V.spaceT("--chakra-translate-x"),translateY:V.spaceT("--chakra-translate-y"),skewX:V.degreeT("--chakra-skew-x"),skewY:V.degreeT("--chakra-skew-y"),scaleX:V.prop("--chakra-scale-x"),scaleY:V.prop("--chakra-scale-y"),scale:V.prop(["--chakra-scale-x","--chakra-scale-y"]),rotate:V.degreeT("--chakra-rotate")},de={transition:!0,transitionDelay:!0,animation:!0,willChange:!0,transitionDuration:V.prop("transitionDuration","transition.duration"),transitionProperty:V.prop("transitionProperty","transition.property"),transitionTimingFunction:V.prop("transitionTimingFunction","transition.easing")},he={fontFamily:V.prop("fontFamily","fonts"),fontSize:V.prop("fontSize","fontSizes",H.px),fontWeight:V.prop("fontWeight","fontWeights"),lineHeight:V.prop("lineHeight","lineHeights"),letterSpacing:V.prop("letterSpacing","letterSpacings"),textAlign:!0,fontStyle:!0,textIndent:!0,wordBreak:!0,overflowWrap:!0,textOverflow:!0,textTransform:!0,whiteSpace:!0,isTruncated:{transform(e){if(!0===e)return{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}}},noOfLines:{static:{overflow:"hidden",textOverflow:"ellipsis",display:"-webkit-box",WebkitBoxOrient:"vertical",WebkitLineClamp:"var(--chakra-line-clamp)"},property:"--chakra-line-clamp"}},fe={scrollBehavior:!0,scrollSnapAlign:!0,scrollSnapStop:!0,scrollSnapType:!0,scrollMargin:V.spaceT("scrollMargin"),scrollMarginTop:V.spaceT("scrollMarginTop"),scrollMarginBottom:V.spaceT("scrollMarginBottom"),scrollMarginLeft:V.spaceT("scrollMarginLeft"),scrollMarginRight:V.spaceT("scrollMarginRight"),scrollMarginX:V.spaceT(["scrollMarginLeft","scrollMarginRight"]),scrollMarginY:V.spaceT(["scrollMarginTop","scrollMarginBottom"]),scrollPadding:V.spaceT("scrollPadding"),scrollPaddingTop:V.spaceT("scrollPaddingTop"),scrollPaddingBottom:V.spaceT("scrollPaddingBottom"),scrollPaddingLeft:V.spaceT("scrollPaddingLeft"),scrollPaddingRight:V.spaceT("scrollPaddingRight"),scrollPaddingX:V.spaceT(["scrollPaddingLeft","scrollPaddingRight"]),scrollPaddingY:V.spaceT(["scrollPaddingTop","scrollPaddingBottom"])};function pe(e){return y(e)&&e.reference?e.reference:String(e)}var me=(e,...t)=>t.map(pe).join(` ${e} `).replace(/calc/g,""),ge=(...e)=>`calc(${me("+",...e)})`,ve=(...e)=>`calc(${me("-",...e)})`,ye=(...e)=>`calc(${me("*",...e)})`,be=(...e)=>`calc(${me("/",...e)})`,we=e=>{const t=pe(e);return null==t||Number.isNaN(parseFloat(t))?ye(t,-1):String(t).startsWith("-")?String(t).slice(1):`-${t}`},xe=Object.assign((e=>({add:(...t)=>xe(ge(e,...t)),subtract:(...t)=>xe(ve(e,...t)),multiply:(...t)=>xe(ye(e,...t)),divide:(...t)=>xe(be(e,...t)),negate:()=>xe(we(e)),toString:()=>e.toString()})),{add:ge,subtract:ve,multiply:ye,divide:be,negate:we});function _e(e){return function(e){return e.replace(/[!-,/:-@[-^`{-~]/g,"\\$&")}(function(e){if(e.includes("\\."))return e;const t=!Number.isInteger(parseFloat(e.toString()));return t?e.replace(".","\\."):e}(function(e,t="-"){return e.replace(/\s+/g,t)}(e.toString())))}function Se(e,t){return`var(${e}${t?`, ${t}`:""})`}function ke(e,t=""){return _e(`--${function(e,t=""){return[t,e].filter(Boolean).join("-")}(e,t)}`)}function Ee(e,t,r){const n=ke(e,r);return{variable:n,reference:Se(n,t)}}function Ae(e){const t=null==e?0:e.length;return t?e[t-1]:void 0}function Pe(e){if(null==e)return e;const{unitless:t}=function(e){const t=parseFloat(e.toString()),r=e.toString().replace(String(t),"");return{unitless:!r,value:t,unit:r}}(e);return t||"number"===typeof e?`${e}px`:e}var Oe=(e,t)=>parseInt(e[1],10)>parseInt(t[1],10)?1:-1,Te=e=>Object.fromEntries(Object.entries(e).sort(Oe));function Ce(e){const t=Te(e);return Object.assign(Object.values(t),t)}function je(e){var t;if(!e)return e;e=null!=(t=Pe(e))?t:e;return"number"===typeof e?`${e+-.02}`:e.replace(/(\d+\.?\d*)/u,(e=>`${parseFloat(e)+-.02}`))}function Re(e,t){const r=["@media screen"];return e&&r.push("and",`(min-width: ${Pe(e)})`),t&&r.push("and",`(max-width: ${Pe(t)})`),r.join(" ")}function Ie(e){var t;if(!e)return null;e.base=null!=(t=e.base)?t:"0px";const r=Ce(e),n=Object.entries(e).sort(Oe).map((([e,t],r,n)=>{var i;let[,o]=null!=(i=n[r+1])?i:[];return o=parseFloat(o)>0?je(o):void 0,{_minW:je(t),breakpoint:e,minW:t,maxW:o,maxWQuery:Re(null,o),minWQuery:Re(t),minMaxQuery:Re(t,o)}})),i=function(e){const t=Object.keys(Te(e));return new Set(t)}(e),o=Array.from(i.values());return{keys:i,normalized:r,isResponsive(e){const t=Object.keys(e);return t.length>0&&t.every((e=>i.has(e)))},asObject:Te(e),asArray:Ce(e),details:n,get:e=>n.find((t=>t.breakpoint===e)),media:[null,...r.map((e=>Re(e))).slice(1)],toArrayValue(e){if(!y(e))throw new Error("toArrayValue: value must be an object");const t=o.map((t=>{var r;return null!=(r=e[t])?r:null}));for(;null===Ae(t);)t.pop();return t},toObjectValue(e){if(!Array.isArray(e))throw new Error("toObjectValue: value must be an array");return e.reduce(((e,t,r)=>{const n=o[r];return null!=n&&null!=t&&(e[n]=t),e}),{})}}}var Me=(e,t)=>`${e}:hover ${t}, ${e}[data-hover] ${t}`,Le=(e,t)=>`${e}:focus ${t}, ${e}[data-focus] ${t}`,Ne=(e,t)=>`${e}:focus-visible ${t}`,De=(e,t)=>`${e}:focus-within ${t}`,ze=(e,t)=>`${e}:active ${t}, ${e}[data-active] ${t}`,Be=(e,t)=>`${e}:disabled ${t}, ${e}[data-disabled] ${t}`,Ue=(e,t)=>`${e}:invalid ${t}, ${e}[data-invalid] ${t}`,Fe=(e,t)=>`${e}:checked ${t}, ${e}[data-checked] ${t}`,$e=(e,t)=>`${e}:placeholder-shown ${t}`,He=e=>qe((t=>e(t,"&")),"[role=group]","[data-group]",".group"),Ve=e=>qe((t=>e(t,"~ &")),"[data-peer]",".peer"),qe=(e,...t)=>t.map(e).join(", "),Ke={_hover:"&:hover, &[data-hover]",_active:"&:active, &[data-active]",_focus:"&:focus, &[data-focus]",_highlighted:"&[data-highlighted]",_focusWithin:"&:focus-within",_focusVisible:"&:focus-visible, &[data-focus-visible]",_disabled:"&:disabled, &[disabled], &[aria-disabled=true], &[data-disabled]",_readOnly:"&[aria-readonly=true], &[readonly], &[data-readonly]",_before:"&::before",_after:"&::after",_empty:"&:empty",_expanded:"&[aria-expanded=true], &[data-expanded]",_checked:"&[aria-checked=true], &[data-checked]",_grabbed:"&[aria-grabbed=true], &[data-grabbed]",_pressed:"&[aria-pressed=true], &[data-pressed]",_invalid:"&[aria-invalid=true], &[data-invalid]",_valid:"&[data-valid], &[data-state=valid]",_loading:"&[data-loading], &[aria-busy=true]",_selected:"&[aria-selected=true], &[data-selected]",_hidden:"&[hidden], &[data-hidden]",_autofill:"&:-webkit-autofill",_even:"&:nth-of-type(even)",_odd:"&:nth-of-type(odd)",_first:"&:first-of-type",_firstLetter:"&::first-letter",_last:"&:last-of-type",_notFirst:"&:not(:first-of-type)",_notLast:"&:not(:last-of-type)",_visited:"&:visited",_activeLink:"&[aria-current=page]",_activeStep:"&[aria-current=step]",_indeterminate:"&:indeterminate, &[aria-checked=mixed], &[data-indeterminate]",_groupHover:He(Me),_peerHover:Ve(Me),_groupFocus:He(Le),_peerFocus:Ve(Le),_groupFocusVisible:He(Ne),_peerFocusVisible:Ve(Ne),_groupActive:He(ze),_peerActive:Ve(ze),_groupDisabled:He(Be),_peerDisabled:Ve(Be),_groupInvalid:He(Ue),_peerInvalid:Ve(Ue),_groupChecked:He(Fe),_peerChecked:Ve(Fe),_groupFocusWithin:He(De),_peerFocusWithin:Ve(De),_peerPlaceholderShown:Ve($e),_placeholder:"&::placeholder",_placeholderShown:"&:placeholder-shown",_fullScreen:"&:fullscreen",_selection:"&::selection",_rtl:"[dir=rtl] &, &[dir=rtl]",_ltr:"[dir=ltr] &, &[dir=ltr]",_mediaDark:"@media (prefers-color-scheme: dark)",_mediaReduceMotion:"@media (prefers-reduced-motion: reduce)",_dark:".chakra-ui-dark &:not([data-theme]),[data-theme=dark] &:not([data-theme]),&[data-theme=dark]",_light:".chakra-ui-light &:not([data-theme]),[data-theme=light] &:not([data-theme]),&[data-theme=light]",_horizontal:"&[data-orientation=horizontal]",_vertical:"&[data-orientation=vertical]"},We=Object.keys(Ke);function Ge(e,t){return Ee(String(e).replace(/\./g,"-"),void 0,t)}function Ze(e,t,r={}){const{stop:n,getKey:i}=r;return function e(r,o=[]){var a;if(function(e){return"object"===typeof e&&null!=e&&!Array.isArray(e)}(r)||Array.isArray(r)){const s={};for(const[c,l]of Object.entries(r)){const u=null!=(a=null==i?void 0:i(c))?a:c,d=[...o,u];if(null==n?void 0:n(r,d))return t(r,o);s[u]=e(l,d)}return s}return t(r,o)}(e)}var Ye=["colors","borders","borderWidths","borderStyles","fonts","fontSizes","fontWeights","gradients","letterSpacings","lineHeights","radii","space","shadows","sizes","zIndices","transition","blur","breakpoints"];var Xe=e=>We.includes(e)||"default"===e;function Je(e){var t;const r=function(e){const{__cssMap:t,__cssVars:r,__breakpoints:n,...i}=e;return i}(e),n=function(e){return function(e,t){const r={};for(const n of t)n in e&&(r[n]=e[n]);return r}(e,Ye)}(r),i=function(e){return e.semanticTokens}(r),o=function({tokens:e,semanticTokens:t}){const r={};return Ze(e,((e,t)=>{null!=e&&(r[t.join(".")]={isSemantic:!1,value:e})})),Ze(t,((e,t)=>{null!=e&&(r[t.join(".")]={isSemantic:!0,value:e})}),{stop:e=>Object.keys(e).every(Xe)}),r}({tokens:n,semanticTokens:i}),a=null==(t=r.config)?void 0:t.cssVarPrefix,{cssMap:s,cssVars:c}=function(e,t){let r={};const n={};for(const[i,o]of Object.entries(e)){const{isSemantic:a,value:s}=o,{variable:c,reference:l}=Ge(i,null==t?void 0:t.cssVarPrefix);if(!a){if(i.startsWith("space")){const e=i.split("."),[t,...r]=e,o=`${t}.-${r.join(".")}`,a=xe.negate(s),u=xe.negate(l);n[o]={value:a,var:c,varRef:u}}r[c]=s,n[i]={value:s,var:c,varRef:l};continue}const u=r=>{const n=[String(i).split(".")[0],r].join(".");if(!e[n])return r;const{reference:o}=Ge(n,null==t?void 0:t.cssVarPrefix);return o},d=y(s)?s:{default:s};r=A(r,Object.entries(d).reduce(((e,[t,r])=>{var n,i;if(!r)return e;const o=u(`${r}`);return"default"===t?(e[c]=o,e):(e[null!=(i=null==(n=Ke)?void 0:n[t])?i:t]={[c]:o},e)}),{})),n[i]={value:l,var:c,varRef:l}}return{cssVars:r,cssMap:n}}(o,{cssVarPrefix:a});return Object.assign(r,{__cssVars:{"--chakra-ring-inset":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-ring-offset-width":"0px","--chakra-ring-offset-color":"#fff","--chakra-ring-color":"rgba(66, 153, 225, 0.6)","--chakra-ring-offset-shadow":"0 0 #0000","--chakra-ring-shadow":"0 0 #0000","--chakra-space-x-reverse":"0","--chakra-space-y-reverse":"0",...c},__cssMap:s,__breakpoints:Ie(r.breakpoints)}),r}var Qe=A({},q,K,W,Y,Q,Z,se,J,X,oe,ae,G,ce,fe,he,le,ue,ee,de),et=Object.assign({},ce,Q,Y,X,ae),tt=Object.keys(et),rt=[...Object.keys(Qe),...We],nt={...Qe,...Ke},it=e=>e in nt;var ot=(e,t)=>e.startsWith("--")&&"string"===typeof t&&!function(e){return/^var\(--.+\)$/.test(e)}(t),at=(e,t)=>{var r,n;if(null==t)return t;const i=t=>{var r,n;return null==(n=null==(r=e.__cssMap)?void 0:r[t])?void 0:n.varRef},o=e=>{var t;return null!=(t=i(e))?t:e},[a,s]=function(e){const t=[];let r="",n=!1;for(let i=0;i{var a,s,c;const l=w(e,n),u=(e=>t=>{if(!t.__breakpoints)return e;const{isResponsive:r,toArrayValue:n,media:i}=t.__breakpoints,o={};for(const a in e){let s=w(e[a],t);if(null==s)continue;if(s=y(s)&&r(s)?n(s):s,!Array.isArray(s)){o[a]=s;continue}const c=s.slice(0,i.length).length;for(let e=0;et=>st({theme:t,pseudos:Ke,configs:Qe})(e);function lt(e){return{definePartsStyle:e=>e,defineMultiStyleConfig:t=>({parts:e,...t})}}function ut(e,t){for(let r=t+1;r{A(s,{[e]:u?p[e]:{[f]:p[e]}})})):d?s[f]=p:u?A(s,p):s[f]=p)}return s}}function ht(e){return function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(e,["styleConfig","size","variant","colorScheme"])}var ft=new Set([...rt,"textStyle","layerStyle","apply","noOfLines","focusBorderColor","errorBorderColor","as","__css","css","sx"]),pt=new Set(["htmlWidth","htmlHeight","htmlSize","htmlTranslate"]);function mt(e){return pt.has(e)||!ft.has(e)}var gt=(0,n.createContext)({});function vt(){const e=(0,n.useContext)(gt);if(void 0===e)throw new Error("useColorMode must be used within a ColorModeProvider");return e}gt.displayName="ColorModeContext";var yt=(e=>{const t=new WeakMap;return(r,n,i,o)=>{if("undefined"===typeof r)return e(r,n,i);t.has(r)||t.set(r,new Map);const a=t.get(r);if(a.has(n))return a.get(n);const s=e(r,n,i,o);return a.set(n,s),s}})((function(e,t,r,n){const i="string"===typeof t?t.split("."):[t];for(n=0;n{const i=e[n];t(i,n,e)&&(r[n]=i)})),r}var wt=e=>bt(e,(e=>null!==e&&void 0!==e));function xt(e,...t){return function(e){return"function"===typeof e}(e)?e(...t):e}function _t(...e){return function(t){e.some((e=>(null==e||e(t),null==t?void 0:t.defaultPrevented)))}}function St(){return St=Object.assign?Object.assign.bind():function(e){for(var t=1;t0?Mt(Vt,--$t):0,Ut--,10===Ht&&(Ut=1,Bt--),Ht}function Gt(){return Ht=$t2||Jt(Ht)>3?"":" "}function nr(e,t){for(;--t&&Gt()&&!(Ht<48||Ht>102||Ht>57&&Ht<65||Ht>70&&Ht<97););return Xt(e,Yt()+(t<6&&32==Zt()&&32==Gt()))}function ir(e){for(;Gt();)switch(Ht){case e:return $t;case 34:case 39:34!==e&&39!==e&&ir(Ht);break;case 40:41===e&&ir(e);break;case 92:Gt()}return $t}function or(e,t){for(;Gt()&&e+Ht!==57&&(e+Ht!==84||47!==Zt()););return"/*"+Xt(t,$t-1)+"*"+Tt(47===e?e:Gt())}function ar(e){for(;!Jt(Zt());)Gt();return Xt(e,$t)}var sr="-ms-",cr="-moz-",lr="-webkit-",ur="comm",dr="rule",hr="decl",fr="@keyframes";function pr(e,t){for(var r="",n=Dt(e),i=0;i0&&Nt(S)-d&&zt(f>32?wr(S+";",n,r,d-1):wr(Rt(S," ","")+";",n,r,d-2),c);break;case 59:S+=";";default:if(zt(_=yr(S,t,r,l,u,i,s,b,w=[],x=[],d),o),123===y)if(0===u)vr(S,t,_,_,w,o,d,s,x);else switch(99===h&&110===Mt(S,3)?100:h){case 100:case 108:case 109:case 115:vr(e,_,_,n&&zt(yr(e,_,_,0,0,i,s,b,i,w=[],d),x),i,x,d,s,n?w:x);break;default:vr(S,_,_,_,[""],x,0,s,x)}}l=u=f=0,m=v=1,b=S="",d=a;break;case 58:d=1+Nt(S),f=p;default:if(m<1)if(123==y)--m;else if(125==y&&0==m++&&125==Wt())continue;switch(S+=Tt(y),y*m){case 38:v=u>0?1:(S+="\f",-1);break;case 44:s[l++]=(Nt(S)-1)*v,v=1;break;case 64:45===Zt()&&(S+=tr(Gt())),h=Zt(),u=d=Nt(b=S+=ar(Yt())),y++;break;case 45:45===p&&2==Nt(S)&&(m=0)}}return o}function yr(e,t,r,n,i,o,a,s,c,l,u){for(var d=i-1,h=0===i?o:[""],f=Dt(h),p=0,m=0,g=0;p0?h[v]+" "+y:Rt(y,/&\f/g,h[v])))&&(c[g++]=b);return qt(e,t,r,0===i?dr:s,c,l,u)}function br(e,t,r){return qt(e,t,r,ur,Tt(Ht),Lt(e,2,-2),0)}function wr(e,t,r,n){return qt(e,t,r,hr,Lt(e,0,n),Lt(e,n+1,-1),n)}var xr=function(e,t,r){for(var n=0,i=0;n=i,i=Zt(),38===n&&12===i&&(t[r]=1),!Jt(i);)Gt();return Xt(e,$t)},_r=function(e,t){return er(function(e,t){var r=-1,n=44;do{switch(Jt(n)){case 0:38===n&&12===Zt()&&(t[r]=1),e[r]+=xr($t-1,t,r);break;case 2:e[r]+=tr(n);break;case 4:if(44===n){e[++r]=58===Zt()?"&\f":"",t[r]=e[r].length;break}default:e[r]+=Tt(n)}}while(n=Gt());return e}(Qt(e),t))},Sr=new WeakMap,kr=function(e){if("rule"===e.type&&e.parent&&!(e.length<1)){for(var t=e.value,r=e.parent,n=e.column===r.column&&e.line===r.line;"rule"!==r.type;)if(!(r=r.parent))return;if((1!==e.props.length||58===t.charCodeAt(0)||Sr.get(r))&&!n){Sr.set(e,!0);for(var i=[],o=_r(t,i),a=r.props,s=0,c=0;s6)switch(Mt(e,t+1)){case 109:if(45!==Mt(e,t+4))break;case 102:return Rt(e,/(.+:)(.+)-([^]+)/,"$1"+lr+"$2-$3$1"+cr+(108==Mt(e,t+3)?"$3":"$2-$3"))+e;case 115:return~It(e,"stretch")?Ar(Rt(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==Mt(e,t+1))break;case 6444:switch(Mt(e,Nt(e)-3-(~It(e,"!important")&&10))){case 107:return Rt(e,":",":"+lr)+e;case 101:return Rt(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+lr+(45===Mt(e,14)?"inline-":"")+"box$3$1"+lr+"$2$3$1"+sr+"$2box$3")+e}break;case 5936:switch(Mt(e,t+11)){case 114:return lr+e+sr+Rt(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return lr+e+sr+Rt(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return lr+e+sr+Rt(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return lr+e+sr+e+e}return e}var Pr=[function(e,t,r,n){if(e.length>-1&&!e.return)switch(e.type){case hr:e.return=Ar(e.value,e.length);break;case fr:return pr([Kt(e,{value:Rt(e.value,"@","@"+lr)})],n);case dr:if(e.length)return function(e,t){return e.map(t).join("")}(e.props,(function(t){switch(function(e,t){return(e=t.exec(e))?e[0]:e}(t,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return pr([Kt(e,{props:[Rt(t,/:(read-\w+)/,":-moz-$1")]})],n);case"::placeholder":return pr([Kt(e,{props:[Rt(t,/:(plac\w+)/,":"+lr+"input-$1")]}),Kt(e,{props:[Rt(t,/:(plac\w+)/,":-moz-$1")]}),Kt(e,{props:[Rt(t,/:(plac\w+)/,sr+"input-$1")]})],n)}return""}))}}],Or=function(e){var t=e.key;if("css"===t){var r=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(r,(function(e){-1!==e.getAttribute("data-emotion").indexOf(" ")&&(document.head.appendChild(e),e.setAttribute("data-s",""))}))}var n=e.stylisPlugins||Pr;var i,o,a={},s=[];i=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+t+' "]'),(function(e){for(var t=e.getAttribute("data-emotion").split(" "),r=1;r=4;++n,i-=4)t=1540483477*(65535&(t=255&e.charCodeAt(n)|(255&e.charCodeAt(++n))<<8|(255&e.charCodeAt(++n))<<16|(255&e.charCodeAt(++n))<<24))+(59797*(t>>>16)<<16),r=1540483477*(65535&(t^=t>>>24))+(59797*(t>>>16)<<16)^1540483477*(65535&r)+(59797*(r>>>16)<<16);switch(i){case 3:r^=(255&e.charCodeAt(n+2))<<16;case 2:r^=(255&e.charCodeAt(n+1))<<8;case 1:r=1540483477*(65535&(r^=255&e.charCodeAt(n)))+(59797*(r>>>16)<<16)}return(((r=1540483477*(65535&(r^=r>>>13))+(59797*(r>>>16)<<16))^r>>>15)>>>0).toString(36)}(i)+c;return{name:l,styles:i,next:zr}},Fr=!!i.useInsertionEffect&&i.useInsertionEffect,$r=Fr||function(e){return e()},Hr=Fr||n.useLayoutEffect,Vr=n.createContext("undefined"!==typeof HTMLElement?Or({key:"css"}):null);Vr.Provider;var qr=function(e){return(0,n.forwardRef)((function(t,r){var i=(0,n.useContext)(Vr);return e(t,i,r)}))};var Kr=n.createContext({});var Wr=Tr((function(e){return Tr((function(t){return function(e,t){return"function"===typeof t?t(e):St({},e,t)}(e,t)}))})),Gr=function(e){var t=n.useContext(Kr);return e.theme!==t&&(t=Wr(t)(e.theme)),n.createElement(Kr.Provider,{value:t},e.children)};var Zr,Yr=function(e,t,r){var n=e.key+"-"+t.name;!1===r&&void 0===e.registered[n]&&(e.registered[n]=t.styles)},Xr=function(e,t,r){Yr(e,t,r);var n=e.key+"-"+t.name;if(void 0===e.inserted[t.name]){var i=t;do{e.insert(t===i?"."+n:"",i,e.sheet,!0),i=i.next}while(void 0!==i)}},Jr=At,Qr=function(e){return"theme"!==e},en=function(e){return"string"===typeof e&&e.charCodeAt(0)>96?Jr:Qr},tn=function(e,t,r){var n;if(t){var i=t.shouldForwardProp;n=e.__emotion_forwardProp&&i?function(t){return e.__emotion_forwardProp(t)&&i(t)}:i}return"function"!==typeof n&&r&&(n=e.__emotion_forwardProp),n},rn=function(e){var t=e.cache,r=e.serialized,n=e.isStringTag;return Yr(t,r,n),$r((function(){return Xr(t,r,n)})),null},nn=function e(t,r){var i,o,a=t.__emotion_real===t,s=a&&t.__emotion_base||t;void 0!==r&&(i=r.label,o=r.target);var c=tn(t,r,a),l=c||en(s),u=!l("as");return function(){var d=arguments,h=a&&void 0!==t.__emotion_styles?t.__emotion_styles.slice(0):[];if(void 0!==i&&h.push("label:"+i+";"),null==d[0]||void 0===d[0].raw)h.push.apply(h,d);else{0,h.push(d[0][0]);for(var f=d.length,p=1;pt=>{const{theme:r,css:n,__css:i,sx:o,...a}=t,s=bt(a,((e,t)=>it(t))),c=function(e,...t){if(null==e)throw new TypeError("Cannot convert undefined or null to object");const r={...e};for(const n of t)if(null!=n)for(const e in n)Object.prototype.hasOwnProperty.call(n,e)&&(e in r&&delete r[e],r[e]=n[e]);return r}({},i,xt(e,t),wt(s),o),l=ct(c)(t.theme);return n?[l,n]:l};function sn(e,t){const{baseStyle:r,...i}=null!=t?t:{};i.shouldForwardProp||(i.shouldForwardProp=mt);const o=an({baseStyle:r}),a=on(e,i)(o);return n.forwardRef((function(e,t){const{colorMode:r,forced:i}=vt();return n.createElement(a,{ref:t,"data-theme":i?r:void 0,...e})}))}var cn=function(){const e=new Map;return new Proxy(sn,{apply:(e,t,r)=>sn(...r),get:(t,r)=>(e.has(r)||e.set(r,sn(r)),e.get(r))})}(),ln=r(5124),un=g((function(e,t){const{direction:r,align:n,justify:i,wrap:o,basis:a,grow:s,shrink:c,...l}=e,u={display:"flex",flexDirection:r,alignItems:n,justifyContent:i,flexWrap:o,flexBasis:a,flexGrow:s,flexShrink:c};return(0,ln.jsx)(cn.div,{ref:t,__css:u,...l})}));un.displayName="Flex";var dn=cn("div",{baseStyle:{display:"flex",alignItems:"center",justifyContent:"center"}});dn.displayName="Center";var hn={horizontal:{insetStart:"50%",transform:"translateX(-50%)"},vertical:{top:"50%",transform:"translateY(-50%)"},both:{insetStart:"50%",top:"50%",transform:"translate(-50%, -50%)"}},fn=(g((function(e,t){const{axis:r="both",...n}=e;return(0,ln.jsx)(cn.div,{ref:t,__css:hn[r],...n,position:"absolute"})})),cn("div"));fn.displayName="Box";var pn=g((function(e,t){const{size:r,centerContent:n=!0,...i}=e,o=n?{display:"flex",alignItems:"center",justifyContent:"center"}:{};return(0,ln.jsx)(fn,{ref:t,boxSize:r,__css:{...o,flexShrink:0,flexGrow:0},...i})}));pn.displayName="Square";var mn=g((function(e,t){const{size:r,...n}=e;return(0,ln.jsx)(pn,{size:r,ref:t,borderRadius:"9999px",...n})}));function gn(){const e=(0,n.useContext)(Kr);if(!e)throw Error("useTheme: `theme` is undefined. Seems you forgot to wrap your app in `` or ``");return e}function vn(){return{...vt(),theme:gn()}}function yn(e,t,r){const n=Array.isArray(t)?t:[t],i=Array.isArray(r)?r:[r];return r=>{const o=i.filter(Boolean),a=n.map(((t,n)=>{var i,a;if("breakpoints"===e)return function(e,t,r){var n,i;if(null==t)return t;const o=t=>{var r,n;return null==(n=null==(r=e.__breakpoints)?void 0:r.asArray)?void 0:n[t]};return null!=(i=null!=(n=o(t))?n:o(r))?i:r}(r,t,null!=(i=o[n])?i:t);return function(e,t,r){var n,i;if(null==t)return t;const o=t=>{var r,n;return null==(n=null==(r=e.__cssMap)?void 0:r[t])?void 0:n.value};return null!=(i=null!=(n=o(t))?n:o(r))?i:r}(r,`${e}.${t}`,null!=(a=o[n])?a:t)}));return Array.isArray(t)?a:a[0]}}mn.displayName="Circle";var bn=r(8366);function wn(e,t={}){var r;const{styleConfig:i,...o}=t,{theme:a,colorMode:s}=vn(),c=e?yt(a,`components.${e}`):void 0,l=i||c,u=A({theme:a,colorMode:s},null!=(r=null==l?void 0:l.defaultProps)?r:{},wt(function(e,t){const r={};return Object.keys(e).forEach((n=>{t.includes(n)||(r[n]=e[n])})),r}(o,["children"]))),d=(0,n.useRef)({});if(l){const e=function(e){return t=>{var r;const{variant:n,size:i,theme:o}=t,a=dt(o);return A({},w(null!=(r=e.baseStyle)?r:{},t),a(e,"sizes",i,t),a(e,"variants",n,t))}}(l),t=e(u);bn(d.current,t)||(d.current=t)}return d.current}function xn(e,t={}){return wn(e,t)}function _n(e,t={}){return wn(e,t)}var Sn=g((function(e,t){const r=xn("Heading",e),{className:n,...i}=ht(e);return(0,ln.jsx)(cn.h2,{ref:t,className:v("chakra-heading",e.className),...i,__css:r})}));function kn(e={}){const{name:t,strict:r=!0,hookName:i="useContext",providerName:o="Provider",errorMessage:a,defaultValue:s}=e,c=(0,n.createContext)(s);return c.displayName=t,[c.Provider,function e(){var t;const s=(0,n.useContext)(c);if(!s&&r){const r=new Error(null!=a?a:`${i} returned \`undefined\`. Seems you forgot to wrap component within ${o}`);throw r.name="ContextError",null==(t=Error.captureStackTrace)||t.call(Error,r,e),r}return s},c]}Sn.displayName="Heading";var[En,An]=kn({strict:!1,name:"ButtonGroupContext"});function Pn(e){const{children:t,className:r,...i}=e,o=(0,n.isValidElement)(t)?(0,n.cloneElement)(t,{"aria-hidden":!0,focusable:!1}):t,a=v("chakra-button__icon",r);return(0,ln.jsx)(cn.span,{display:"inline-flex",alignSelf:"center",flexShrink:0,...i,className:a,children:o})}Pn.displayName="ButtonIcon";r(1194);var On=qr((function(e,t){var r=e.styles,i=Ur([r],void 0,n.useContext(Kr)),o=n.useRef();return Hr((function(){var e=t.key+"-global",r=new t.sheet.constructor({key:e,nonce:t.sheet.nonce,container:t.sheet.container,speedy:t.sheet.isSpeedy}),n=!1,a=document.querySelector('style[data-emotion="'+e+" "+i.name+'"]');return t.sheet.tags.length&&(r.before=t.sheet.tags[0]),null!==a&&(n=!0,a.setAttribute("data-emotion",e),r.hydrate([a])),o.current=[r,n],function(){r.flush()}}),[t]),Hr((function(){var e=o.current,r=e[0];if(e[1])e[1]=!1;else{if(void 0!==i.next&&Xr(t,i.next,!0),r.tags.length){var n=r.tags[r.tags.length-1].nextElementSibling;r.before=n,r.flush()}t.insert("",i,r,!1)}}),[t,i.name]),null}));function Tn(){for(var e=arguments.length,t=new Array(e),r=0;r{const r=xn("Spinner",e),{label:n="Loading...",thickness:i="2px",speed:o="0.45s",emptyColor:a="transparent",className:s,...c}=ht(e),l=v("chakra-spinner",s),u={display:"inline-block",borderColor:"currentColor",borderStyle:"solid",borderRadius:"99999px",borderWidth:i,borderBottomColor:a,borderLeftColor:a,animation:`${jn} ${o} linear infinite`,...r};return(0,ln.jsx)(cn.div,{ref:t,__css:u,className:l,...c,children:n&&(0,ln.jsx)(cn.span,{srOnly:!0,children:n})})}));function In(e){const{label:t,placement:r,spacing:i="0.5rem",children:o=(0,ln.jsx)(Rn,{color:"currentColor",width:"1em",height:"1em"}),className:a,__css:s,...c}=e,l=v("chakra-button__spinner",a),u="start"===r?"marginEnd":"marginStart",d=(0,n.useMemo)((()=>({display:"flex",alignItems:"center",position:t?"relative":"absolute",[u]:t?i:0,fontSize:"1em",lineHeight:"normal",...s})),[s,t,u,i]);return(0,ln.jsx)(cn.div,{className:l,...c,__css:d,children:o})}function Mn(...e){return t=>{e.forEach((e=>{!function(e,t){if(null!=e)if("function"!==typeof e)try{e.current=t}catch(r){throw new Error(`Cannot assign value '${t}' to ref '${e}'`)}else e(t)}(e,t)}))}}function Ln(...e){return(0,n.useMemo)((()=>Mn(...e)),e)}Rn.displayName="Spinner",In.displayName="ButtonSpinner";var Nn=g(((e,t)=>{const r=An(),i=xn("Button",{...r,...e}),{isDisabled:o=(null==r?void 0:r.isDisabled),isLoading:a,isActive:s,children:c,leftIcon:l,rightIcon:u,loadingText:d,iconSpacing:h="0.5rem",type:f,spinner:p,spinnerPlacement:m="start",className:g,as:y,...b}=ht(e),w=(0,n.useMemo)((()=>{const e={...null==i?void 0:i._focus,zIndex:1};return{display:"inline-flex",appearance:"none",alignItems:"center",justifyContent:"center",userSelect:"none",position:"relative",whiteSpace:"nowrap",verticalAlign:"middle",outline:"none",...i,...!!r&&{_focus:e}}}),[i,r]),{ref:x,type:S}=function(e){const[t,r]=(0,n.useState)(!e),i=(0,n.useCallback)((e=>{e&&r("BUTTON"===e.tagName)}),[]);return{ref:i,type:t?"button":void 0}}(y),k={rightIcon:u,leftIcon:l,iconSpacing:h,children:c};return(0,ln.jsxs)(cn.button,{ref:Ln(t,x),as:y,type:null!=f?f:S,"data-active":_(s),"data-loading":_(a),__css:w,className:v("chakra-button",g),...b,disabled:o||a,children:[a&&"start"===m&&(0,ln.jsx)(In,{className:"chakra-button__spinner--start",label:d,placement:"start",spacing:h,children:p}),a?d||(0,ln.jsx)(cn.span,{opacity:0,children:(0,ln.jsx)(Dn,{...k})}):(0,ln.jsx)(Dn,{...k}),a&&"end"===m&&(0,ln.jsx)(In,{className:"chakra-button__spinner--end",label:d,placement:"end",spacing:h,children:p})]})}));function Dn(e){const{leftIcon:t,rightIcon:r,children:n,iconSpacing:i}=e;return(0,ln.jsxs)(ln.Fragment,{children:[t&&(0,ln.jsx)(Pn,{marginEnd:i,children:t}),n,r&&(0,ln.jsx)(Pn,{marginStart:i,children:r})]})}Nn.displayName="Button";var zn=g((function(e,t){const r=xn("Link",e),{className:n,isExternal:i,...o}=ht(e);return(0,ln.jsx)(cn.a,{target:i?"_blank":void 0,rel:i?"noopener":void 0,ref:t,className:v("chakra-link",n),...o,__css:r})}));zn.displayName="Link";const Bn="What is it about? (if a bug report please consider including your account address) %0A PLEASE FILL %0A%0A What is the feedback? %0A PLEASE FILL",Un=()=>{const e=()=>{window.location.reload()};return(0,ln.jsx)(un,{alignItems:"stretch",children:(0,ln.jsx)(dn,{width:"100%",marginTop:"200px",children:(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(Sn,{marginBottom:3,textAlign:"center",children:"Ooops, something went wrong!"}),(0,ln.jsx)(Nn,{marginRight:2,onClick:e,children:"Refresh the page"}),(0,ln.jsx)(Nn,{marginRight:2,onClick:()=>{const e=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(window.localStorage))}`,t=document.createElement("a");t.href=e,t.download="data.json",t.click()},variant:"secondary",children:"Download Backup"}),(0,ln.jsx)(Nn,{marginRight:2,onClick:()=>{window.localStorage.clear(),e()},variant:"warning",children:"Offboard"}),(0,ln.jsx)(Nn,{variant:"tertiary",children:(0,ln.jsx)(zn,{href:`mailto:umami-support@trili.tech?subject=Umami V2 feedback&body=${Bn}`,rel:"noopener noreferrer",target:"_blank",children:"Report Error"})})]})})})};var Fn=r(2029);const $n=new Fn.QueryClient,Hn=e=>(0,ln.jsx)(Fn.QueryClientProvider,{client:$n,children:e.children});var Vn=r(5447),qn=r(2003),Kn=r(2717),Wn=r.t(Kn,2);let Gn=function(e){e()};const Zn=()=>Gn,Yn=Symbol.for("react-redux-context"),Xn="undefined"!==typeof globalThis?globalThis:{};function Jn(){var e;if(!n.createContext)return{};const t=null!=(e=Xn[Yn])?e:Xn[Yn]=new Map;let r=t.get(n.createContext);return r||(r=n.createContext(null),t.set(n.createContext,r)),r}const Qn=Jn();function ei(e=Qn){return function(){return(0,n.useContext)(e)}}const ti=ei();let ri=()=>{throw new Error("uSES not initialized!")};const ni=(e,t)=>e===t;function ii(e=Qn){const t=e===Qn?ti:ei(e);return function(e,r={}){const{equalityFn:i=ni,stabilityCheck:o,noopCheck:a}="function"===typeof r?{equalityFn:r}:r;const{store:s,subscription:c,getServerState:l,stabilityCheck:u,noopCheck:d}=t(),h=((0,n.useRef)(!0),(0,n.useCallback)({[e.name]:t=>e(t)}[e.name],[e,u,o])),f=ri(c.addNestedSub,s.getState,l||s.getState,h,i);return(0,n.useDebugValue)(f),f}}const oi=ii();r(931);const ai={notify(){},get:()=>[]};function si(e,t){let r,n=ai,i=0,o=!1;function a(){l.onStateChange&&l.onStateChange()}function s(){i++,r||(r=t?t.addNestedSub(a):e.subscribe(a),n=function(){const e=Zn();let t=null,r=null;return{clear(){t=null,r=null},notify(){e((()=>{let e=t;for(;e;)e.callback(),e=e.next}))},get(){let e=[],r=t;for(;r;)e.push(r),r=r.next;return e},subscribe(e){let n=!0,i=r={callback:e,next:null,prev:r};return i.prev?i.prev.next=i:t=i,function(){n&&null!==t&&(n=!1,i.next?i.next.prev=i.prev:r=i.prev,i.prev?i.prev.next=i.next:t=i.next)}}}}())}function c(){i--,r&&0===i&&(r(),r=void 0,n.clear(),n=ai)}const l={addNestedSub:function(e){s();const t=n.subscribe(e);let r=!1;return()=>{r||(r=!0,t(),c())}},notifyNestedSubs:function(){n.notify()},handleChangeWrapper:a,isSubscribed:function(){return o},trySubscribe:function(){o||(o=!0,s())},tryUnsubscribe:function(){o&&(o=!1,c())},getListeners:()=>n};return l}const ci=!("undefined"===typeof window||"undefined"===typeof window.document||"undefined"===typeof window.document.createElement)?n.useLayoutEffect:n.useEffect;let li=null;const ui=function({store:e,context:t,children:r,serverState:i,stabilityCheck:o="once",noopCheck:a="once"}){const s=n.useMemo((()=>{const t=si(e);return{store:e,subscription:t,getServerState:i?()=>i:void 0,stabilityCheck:o,noopCheck:a}}),[e,i,o,a]),c=n.useMemo((()=>e.getState()),[e]);ci((()=>{const{subscription:t}=s;return t.onStateChange=t.notifyNestedSubs,t.trySubscribe(),c!==e.getState()&&t.notifyNestedSubs(),()=>{t.tryUnsubscribe(),t.onStateChange=void 0}}),[s,c]);const l=t||Qn;return n.createElement(l.Provider,{value:s},r)};function di(e=Qn){const t=e===Qn?ti:ei(e);return function(){const{store:e}=t();return e}}const hi=di();function fi(e=Qn){const t=e===Qn?hi:di(e);return function(){return t().dispatch}}const pi=fi();var mi;function gi(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n3?t.i-4:t.i:Array.isArray(e)?1:Ei(e)?2:Ai(e)?3:0}function xi(e,t){return 2===wi(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function _i(e,t){return 2===wi(e)?e.get(t):e[t]}function Si(e,t,r){var n=wi(e);2===n?e.set(t,r):3===n?e.add(r):e[t]=r}function ki(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function Ei(e){return to&&e instanceof Map}function Ai(e){return ro&&e instanceof Set}function Pi(e){return e.o||e.t}function Oi(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=lo(e);delete t[ao];for(var r=co(t),n=0;n1&&(e.set=e.add=e.clear=e.delete=Ci),Object.freeze(e),t&&bi(e,(function(e,t){return Ti(t,!0)}),!0)),e}function Ci(){gi(2)}function ji(e){return null==e||"object"!=typeof e||Object.isFrozen(e)}function Ri(e){var t=uo[e];return t||gi(18,e),t}function Ii(e,t){uo[e]||(uo[e]=t)}function Mi(){return Qi}function Li(e,t){t&&(Ri("Patches"),e.u=[],e.s=[],e.v=t)}function Ni(e){Di(e),e.p.forEach(Bi),e.p=null}function Di(e){e===Qi&&(Qi=e.l)}function zi(e){return Qi={p:[],l:Qi,h:e,m:!0,_:0}}function Bi(e){var t=e[ao];0===t.i||1===t.i?t.j():t.g=!0}function Ui(e,t){t._=t.p.length;var r=t.p[0],n=void 0!==e&&e!==r;return t.h.O||Ri("ES5").S(t,e,n),n?(r[ao].P&&(Ni(t),gi(4)),yi(e)&&(e=Fi(t,e),t.l||Hi(t,e)),t.u&&Ri("Patches").M(r[ao].t,e,t.u,t.s)):e=Fi(t,r,[]),Ni(t),t.u&&t.v(t.u,t.s),e!==io?e:void 0}function Fi(e,t,r){if(ji(t))return t;var n=t[ao];if(!n)return bi(t,(function(i,o){return $i(e,n,t,i,o,r)}),!0),t;if(n.A!==e)return t;if(!n.P)return Hi(e,n.t,!0),n.t;if(!n.I){n.I=!0,n.A._--;var i=4===n.i||5===n.i?n.o=Oi(n.k):n.o,o=i,a=!1;3===n.i&&(o=new Set(i),i.clear(),a=!0),bi(o,(function(t,o){return $i(e,n,i,t,o,r,a)})),Hi(e,i,!1),r&&e.u&&Ri("Patches").N(n,r,e.u,e.s)}return n.o}function $i(e,t,r,n,i,o,a){if(vi(i)){var s=Fi(e,i,o&&t&&3!==t.i&&!xi(t.R,n)?o.concat(n):void 0);if(Si(r,n,s),!vi(s))return;e.m=!1}else a&&r.add(i);if(yi(i)&&!ji(i)){if(!e.h.D&&e._<1)return;Fi(e,i),t&&t.A.l||Hi(e,i)}}function Hi(e,t,r){void 0===r&&(r=!1),!e.l&&e.h.D&&e.m&&Ti(t,r)}function Vi(e,t){var r=e[ao];return(r?Pi(r):e)[t]}function qi(e,t){if(t in e)for(var r=Object.getPrototypeOf(e);r;){var n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=Object.getPrototypeOf(r)}}function Ki(e){e.P||(e.P=!0,e.l&&Ki(e.l))}function Wi(e){e.o||(e.o=Oi(e.t))}function Gi(e,t,r){var n=Ei(t)?Ri("MapSet").F(t,r):Ai(t)?Ri("MapSet").T(t,r):e.O?function(e,t){var r=Array.isArray(e),n={i:r?1:0,A:t?t.A:Mi(),P:!1,I:!1,R:{},l:t,t:e,k:null,o:null,j:null,C:!1},i=n,o=ho;r&&(i=[n],o=fo);var a=Proxy.revocable(i,o),s=a.revoke,c=a.proxy;return n.k=c,n.j=s,c}(t,r):Ri("ES5").J(t,r);return(r?r.A:Mi()).p.push(n),n}function Zi(e){return vi(e)||gi(22,e),function e(t){if(!yi(t))return t;var r,n=t[ao],i=wi(t);if(n){if(!n.P&&(n.i<4||!Ri("ES5").K(n)))return n.t;n.I=!0,r=Yi(t,i),n.I=!1}else r=Yi(t,i);return bi(r,(function(t,i){n&&_i(n.t,t)===i||Si(r,t,e(i))})),3===i?new Set(r):r}(e)}function Yi(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return Oi(e)}function Xi(){function e(e,t){var r=i[e];return r?r.enumerable=t:i[e]=r={configurable:!0,enumerable:t,get:function(){var t=this[ao];return ho.get(t,e)},set:function(t){var r=this[ao];ho.set(r,e,t)}},r}function t(e){for(var t=e.length-1;t>=0;t--){var i=e[t][ao];if(!i.P)switch(i.i){case 5:n(i)&&Ki(i);break;case 4:r(i)&&Ki(i)}}}function r(e){for(var t=e.t,r=e.k,n=co(r),i=n.length-1;i>=0;i--){var o=n[i];if(o!==ao){var a=t[o];if(void 0===a&&!xi(t,o))return!0;var s=r[o],c=s&&s[ao];if(c?c.t!==a:!ki(s,a))return!0}}var l=!!t[ao];return n.length!==co(t).length+(l?0:1)}function n(e){var t=e.k;if(t.length!==e.t.length)return!0;var r=Object.getOwnPropertyDescriptor(t,t.length-1);if(r&&!r.get)return!0;for(var n=0;n{ri=e})(qn.useSyncExternalStoreWithSelector),(e=>{li=e})(Vn.useSyncExternalStore),mi=Kn.unstable_batchedUpdates,Gn=mi;var Ji,Qi,eo="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),to="undefined"!=typeof Map,ro="undefined"!=typeof Set,no="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,io=eo?Symbol.for("immer-nothing"):((Ji={})["immer-nothing"]=!0,Ji),oo=eo?Symbol.for("immer-draftable"):"__$immer_draftable",ao=eo?Symbol.for("immer-state"):"__$immer_state",so=("undefined"!=typeof Symbol&&Symbol.iterator,""+Object.prototype.constructor),co="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,lo=Object.getOwnPropertyDescriptors||function(e){var t={};return co(e).forEach((function(r){t[r]=Object.getOwnPropertyDescriptor(e,r)})),t},uo={},ho={get:function(e,t){if(t===ao)return e;var r=Pi(e);if(!xi(r,t))return function(e,t,r){var n,i=qi(t,r);return i?"value"in i?i.value:null===(n=i.get)||void 0===n?void 0:n.call(e.k):void 0}(e,r,t);var n=r[t];return e.I||!yi(n)?n:n===Vi(e.t,t)?(Wi(e),e.o[t]=Gi(e.A.h,n,e)):n},has:function(e,t){return t in Pi(e)},ownKeys:function(e){return Reflect.ownKeys(Pi(e))},set:function(e,t,r){var n=qi(Pi(e),t);if(null==n?void 0:n.set)return n.set.call(e.k,r),!0;if(!e.P){var i=Vi(Pi(e),t),o=null==i?void 0:i[ao];if(o&&o.t===r)return e.o[t]=r,e.R[t]=!1,!0;if(ki(r,i)&&(void 0!==r||xi(e.t,t)))return!0;Wi(e),Ki(e)}return e.o[t]===r&&(void 0!==r||t in e.o)||Number.isNaN(r)&&Number.isNaN(e.o[t])||(e.o[t]=r,e.R[t]=!0),!0},deleteProperty:function(e,t){return void 0!==Vi(e.t,t)||t in e.t?(e.R[t]=!1,Wi(e),Ki(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var r=Pi(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n?{writable:!0,configurable:1!==e.i||"length"!==t,enumerable:n.enumerable,value:r[t]}:n},defineProperty:function(){gi(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){gi(12)}},fo={};bi(ho,(function(e,t){fo[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}})),fo.deleteProperty=function(e,t){return fo.set.call(this,e,t,void 0)},fo.set=function(e,t,r){return ho.set.call(this,e[0],t,r,e[0])};var po=function(){function e(e){var t=this;this.O=no,this.D=!0,this.produce=function(e,r,n){if("function"==typeof e&&"function"!=typeof r){var i=r;r=e;var o=t;return function(e){var t=this;void 0===e&&(e=i);for(var n=arguments.length,a=Array(n>1?n-1:0),s=1;s1?n-1:0),o=1;o=0;r--){var n=t[r];if(0===n.path.length&&"replace"===n.op){e=n.value;break}}r>-1&&(t=t.slice(r+1));var i=Ri("Patches").$;return vi(e)?i(e,t):this.produce(e,(function(e){return i(e,t)}))},e}(),mo=new po,go=mo.produce;mo.produceWithPatches.bind(mo),mo.setAutoFreeze.bind(mo),mo.setUseProxies.bind(mo),mo.applyPatches.bind(mo),mo.createDraft.bind(mo),mo.finishDraft.bind(mo);const vo=go;function yo(e){return yo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},yo(e)}function bo(e){var t=function(e,t){if("object"!==yo(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==yo(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===yo(t)?t:String(t)}function wo(e,t,r){return(t=bo(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function xo(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function _o(e){for(var t=1;t0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}function Ia(e,t){var r=void 0!==e.version?e.version:-1,n=(e.debug,void 0===e.stateReconciler?Sa:e.stateReconciler),i=e.getStoredState||Aa,o=void 0!==e.timeout?e.timeout:5e3,a=null,s=!1,c=!0,l=function(e){return e._persist.rehydrated&&a&&!c&&a.update(e),e};return function(u,d){var h=u||{},f=h._persist,p=Ra(h,["_persist"]);if(d.type===va){var m=!1,g=function(t,r){m||(d.rehydrate(e.key,t,r),m=!0)};if(o&&setTimeout((function(){!m&&g(void 0,new Error('redux-persist: persist timed out for persist key "'.concat(e.key,'"')))}),o),c=!1,a||(a=ka(e)),f)return Ca({},t(p,d),{_persist:f});if("function"!==typeof d.rehydrate||"function"!==typeof d.register)throw new Error("redux-persist: either rehydrate or register is not a function on the PERSIST action. This can happen if the action is being replayed. This is an unexplored use case, please open an issue and we will figure out a resolution.");return d.register(e.key),i(e).then((function(t){var n=e.migrate||function(e,t){return Promise.resolve(e)};n(t,r).then((function(e){g(e)}),(function(e){g(void 0,e)}))}),(function(e){g(void 0,e)})),Ca({},t(p,d),{_persist:{version:r,rehydrated:!1}})}if(d.type===ya)return s=!0,d.result(function(e){var t=e.storage,r="".concat(void 0!==e.keyPrefix?e.keyPrefix:fa).concat(e.key);return t.removeItem(r,Oa)}(e)),Ca({},t(p,d),{_persist:f});if(d.type===pa)return d.result(a&&a.flush()),Ca({},t(p,d),{_persist:f});if(d.type===ga)c=!0;else if(d.type===ma){if(s)return Ca({},p,{_persist:Ca({},f,{rehydrated:!0})});if(d.key===e.key){var v=t(p,d),y=d.payload,b=Ca({},!1!==n&&void 0!==y?n(y,u,v,e):v,{_persist:Ca({},f,{rehydrated:!0})});return l(b)}}if(!f)return t(u,d);var w=t(p,d);return w===p?u:l(Ca({},w,{_persist:f}))}}function Ma(e){return function(e){if(Array.isArray(e)){for(var t=0,r=new Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:za,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case ba:return Na({},e,{registry:[].concat(Ma(e.registry),[t.key])});case ma:var r=e.registry.indexOf(t.key),n=Ma(e.registry);return n.splice(r,1),Na({},e,{registry:n,bootstrapped:0===n.length});default:return e}};var Ua=r(967);const Fa={html:"",seen:!0},$a=ra({name:"announcements",initialState:Fa,reducers:{reset:()=>Fa,setCurrent:(e,{payload:t})=>{t!==e.html&&(e.seen=!1),e.html=t},setSeen:e=>{e.seen=!0}}}),Ha={0:e=>go(e,(e=>{e.multisigs.labelsMap={}})),1:e=>go(e,(e=>{e.announcements=Fa}))};var Va=r(2354),qa=r(4872),Ka=r(4670),Wa=r(448),Ga=r(4563),Za=r.n(Ga),Ya=r(7491),Xa=r.n(Ya);class Ja extends Error{}class Qa extends Ja{}class es extends Ja{}class ts extends Ja{}class rs extends Ja{}class ns extends Ja{}class is extends Qa{constructor(e,t){super(),this.address=e,this.errorDetail=t,this.name="InvalidAddressError",this.message=`Invalid address "${e}"`,this.message+=t?` ${t}.`:"."}}class os extends Qa{constructor(e,t){super(),this.blockHash=e,this.errorDetail=t,this.name="InvalidBlockHashError",this.message=`Invalid block hash "${e}"`,this.message+=t?` ${t}.`:"."}}class as extends Qa{constructor(e){super(),this.amount=e,this.name="InvalidAmountError",this.message=`Invalid amount "${e}"`}}class ss extends Qa{constructor(e,t){super(),this.derivationPath=e,this.errorDetail=t,this.name="InvalidDerivationPathError",this.message=`Invalid derivation path "${e}"`,this.message+=t?` ${t}.`:"."}}class cs extends Qa{constructor(e,t){super(),this.hexString=e,this.errorDetail=t,this.name="InvalidHexStringError",this.message=`Invalid hex string "${e}"`,this.message+=t?` ${t}.`:"."}}class ls extends Qa{constructor(e,t){super(),this.msg=e,this.errorDetail=t,this.name="InvalidMessageError",this.message=`Invalid message "${e}"`,this.message+=t?` ${t}.`:"."}}class us extends Qa{constructor(e,t,r,n){super(),this.viewName=e,this.sigs=t,this.args=r,this.cause=n,this.name="InvalidViewParameterError",this.message=`Invalid view arguments ${JSON.stringify(r)} received for name "${e}" expecting one of the following signatures ${JSON.stringify(t)}.`}}class ds extends Qa{constructor(e){super(),this.errorDetail=e,this.name="InvalidKeyError",this.message="Invalid private key",this.message+=e?` ${e}.`:"."}}class hs extends Qa{constructor(e,t){super(),this.publicKey=e,this.errorDetail=t,this.name="InvalidPublicKeyError",this.message=`Invalid public key "${e}"`,this.message+=t?` ${t}.`:"."}}class fs extends Qa{constructor(e,t){super(),this.contractAddress=e,this.errorDetail=t,this.name="InvalidContractAddressError",this.message=`Invalid contract address "${e}"`,this.message+=t?` ${t}.`:"."}}class ps extends Qa{constructor(e,t){super(),this.chainId=e,this.errorDetail=t,this.name="InvalidChainIdError",this.message=`Invalid chain id "${e}"`,this.message+=t?` ${t}.`:"."}}class ms extends Qa{constructor(e,t){super(),this.keyHash=e,this.errorDetail=t,this.name="InvalidKeyHashError",this.message=`Invalid public key hash "${e}"`,this.message+=t?` ${t}.`:"."}}class gs extends Qa{constructor(e,t){super(),this.operationHash=e,this.errorDetail=t,this.name="InvalidOperationHashError",this.message=`Invalid operation hash "${e}"`,this.message+=t?` ${t}.`:"."}}class vs extends Qa{constructor(e,t){super(),this.operationKind=e,this.errorDetail=t,this.name="InvalidOperationKindError",this.message=`Invalid operation kind "${e}"`,this.message+=t?` ${t}.`:"."}}class ys extends rs{constructor(e){super(),this.message=e,this.name="DeprecationError"}}class bs extends rs{constructor(e){super(),this.message=e,this.name="ProhibitedActionError"}}class ws extends Ja{constructor(e,t){super(),this.pkh=e,this.cause=t,this.name="PublicKeyNotFoundError",this.message=`Public key not found of this address "${e}" in either wallet or contract API.`}}var xs=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,_s=Math.ceil,Ss=Math.floor,ks="[BigNumber Error] ",Es=ks+"Number primitive has more than 15 significant digits: ",As=1e14,Ps=14,Os=9007199254740991,Ts=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],Cs=1e7,js=1e9;function Rs(e){var t=0|e;return e>0||e===t?t:t-1}function Is(e){for(var t,r,n=1,i=e.length,o=e[0]+"";nl^r?1:-1;for(s=(c=i.length)<(l=o.length)?c:l,a=0;ao[a]^r?1:-1;return c==l?0:c>l^r?1:-1}function Ls(e,t,r,n){if(er||e!==Ss(e))throw Error(ks+(n||"Argument")+("number"==typeof e?er?" out of range: ":" not an integer: ":" not a primitive number: ")+String(e))}function Ns(e){var t=e.c.length-1;return Rs(e.e/Ps)==t&&e.c[t]%2!=0}function Ds(e,t){return(e.length>1?e.charAt(0)+"."+e.slice(1):e)+(t<0?"e":"e+")+t}function zs(e,t,r){var n,i;if(t<0){for(i=r+".";++t;i+=r);e=i+e}else if(++t>(n=e.length)){for(i=r,t-=n;--t;i+=r);e+=i}else th?g.c=g.e=null:e.e=10;u/=10,l++);return void(l>h?g.c=g.e=null:(g.e=l,g.c=[e]))}m=String(e)}else{if(!xs.test(m=String(e)))return i(g,m,f);g.s=45==m.charCodeAt(0)?(m=m.slice(1),-1):1}(l=m.indexOf("."))>-1&&(m=m.replace(".","")),(u=m.search(/e/i))>0?(l<0&&(l=u),l+=+m.slice(u+1),m=m.substring(0,u)):l<0&&(l=m.length)}else{if(Ls(t,2,v.length,"Base"),10==t&&y)return S(g=new b(e),s+g.e+1,c);if(m=String(e),f="number"==typeof e){if(0*e!=0)return i(g,m,f,t);if(g.s=1/e<0?(m=m.slice(1),-1):1,b.DEBUG&&m.replace(/^0\.0*|\./,"").length>15)throw Error(Es+e)}else g.s=45===m.charCodeAt(0)?(m=m.slice(1),-1):1;for(r=v.slice(0,t),l=u=0,p=m.length;ul){l=p;continue}}else if(!a&&(m==m.toUpperCase()&&(m=m.toLowerCase())||m==m.toLowerCase()&&(m=m.toUpperCase()))){a=!0,u=-1,l=0;continue}return i(g,String(e),f,t)}f=!1,(l=(m=n(m,t,10,g.s)).indexOf("."))>-1?m=m.replace(".",""):l=m.length}for(u=0;48===m.charCodeAt(u);u++);for(p=m.length;48===m.charCodeAt(--p););if(m=m.slice(u,++p)){if(p-=u,f&&b.DEBUG&&p>15&&(e>Os||e!==Ss(e)))throw Error(Es+g.s*e);if((l=l-u-1)>h)g.c=g.e=null;else if(l=u)?Ds(d,a):zs(d,a,"0");else if(o=(e=S(new b(e),t,r)).e,s=(d=Is(e.c)).length,1==n||2==n&&(t<=o||o<=l)){for(;ss){if(--t>0)for(d+=".";t--;d+="0");}else if((t+=o-s)>0)for(o+1==s&&(d+=".");t--;d+="0");return e.s<0&&i?"-"+d:d}function x(e,t){for(var r,n,i=1,o=new b(e[0]);i=10;i/=10,n++);return(r=n+r*Ps-1)>h?e.c=e.e=null:r=10;s/=10,i++);if((o=t-i)<0)o+=Ps,a=t,c=f[l=0],u=Ss(c/p[i-a-1]%10);else if((l=_s((o+1)/Ps))>=f.length){if(!n)break e;for(;f.length<=l;f.push(0));c=u=0,i=1,a=(o%=Ps)-Ps+1}else{for(c=s=f[l],i=1;s>=10;s/=10,i++);u=(a=(o%=Ps)-Ps+i)<0?0:Ss(c/p[i-a-1]%10)}if(n=n||t<0||null!=f[l+1]||(a<0?c:c%p[i-a-1]),n=r<4?(u||n)&&(0==r||r==(e.s<0?3:2)):u>5||5==u&&(4==r||n||6==r&&(o>0?a>0?c/p[i-a]:0:f[l-1])%10&1||r==(e.s<0?8:7)),t<1||!f[0])return f.length=0,n?(t-=e.e+1,f[0]=p[(Ps-t%Ps)%Ps],e.e=-t||0):f[0]=e.e=0,e;if(0==o?(f.length=l,s=1,l--):(f.length=l+1,s=p[Ps-o],f[l]=a>0?Ss(c/p[i-a]%p[a])*s:0),n)for(;;){if(0==l){for(o=1,a=f[0];a>=10;a/=10,o++);for(a=f[0]+=s,s=1;a>=10;a/=10,s++);o!=s&&(e.e++,f[0]==As&&(f[0]=1));break}if(f[l]+=s,f[l]!=As)break;f[l--]=0,s=1}for(o=f.length;0===f[--o];f.pop());}e.e>h?e.c=e.e=null:e.e=u?Ds(t,r):zs(t,r,"0"),e.s<0?"-"+t:t)}return b.clone=e,b.ROUND_UP=0,b.ROUND_DOWN=1,b.ROUND_CEIL=2,b.ROUND_FLOOR=3,b.ROUND_HALF_UP=4,b.ROUND_HALF_DOWN=5,b.ROUND_HALF_EVEN=6,b.ROUND_HALF_CEIL=7,b.ROUND_HALF_FLOOR=8,b.EUCLID=9,b.config=b.set=function(e){var t,r;if(null!=e){if("object"!=typeof e)throw Error(ks+"Object expected: "+e);if(e.hasOwnProperty(t="DECIMAL_PLACES")&&(Ls(r=e[t],0,js,t),s=r),e.hasOwnProperty(t="ROUNDING_MODE")&&(Ls(r=e[t],0,8,t),c=r),e.hasOwnProperty(t="EXPONENTIAL_AT")&&((r=e[t])&&r.pop?(Ls(r[0],-js,0,t),Ls(r[1],0,js,t),l=r[0],u=r[1]):(Ls(r,-js,js,t),l=-(u=r<0?-r:r))),e.hasOwnProperty(t="RANGE"))if((r=e[t])&&r.pop)Ls(r[0],-js,-1,t),Ls(r[1],1,js,t),d=r[0],h=r[1];else{if(Ls(r,-js,js,t),!r)throw Error(ks+t+" cannot be zero: "+r);d=-(h=r<0?-r:r)}if(e.hasOwnProperty(t="CRYPTO")){if((r=e[t])!==!!r)throw Error(ks+t+" not true or false: "+r);if(r){if("undefined"==typeof crypto||!crypto||!crypto.getRandomValues&&!crypto.randomBytes)throw f=!r,Error(ks+"crypto unavailable");f=r}else f=r}if(e.hasOwnProperty(t="MODULO_MODE")&&(Ls(r=e[t],0,9,t),p=r),e.hasOwnProperty(t="POW_PRECISION")&&(Ls(r=e[t],0,js,t),m=r),e.hasOwnProperty(t="FORMAT")){if("object"!=typeof(r=e[t]))throw Error(ks+t+" not an object: "+r);g=r}if(e.hasOwnProperty(t="ALPHABET")){if("string"!=typeof(r=e[t])||/^.?$|[+\-.\s]|(.).*\1/.test(r))throw Error(ks+t+" invalid: "+r);y="0123456789"==r.slice(0,10),v=r}}return{DECIMAL_PLACES:s,ROUNDING_MODE:c,EXPONENTIAL_AT:[l,u],RANGE:[d,h],CRYPTO:f,MODULO_MODE:p,POW_PRECISION:m,FORMAT:g,ALPHABET:v}},b.isBigNumber=function(e){if(!e||!0!==e._isBigNumber)return!1;if(!b.DEBUG)return!0;var t,r,n=e.c,i=e.e,o=e.s;e:if("[object Array]"=={}.toString.call(n)){if((1===o||-1===o)&&i>=-js&&i<=js&&i===Ss(i)){if(0===n[0]){if(0===i&&1===n.length)return!0;break e}if((t=(i+1)%Ps)<1&&(t+=Ps),String(n[0]).length==t){for(t=0;t=As||r!==Ss(r))break e;if(0!==r)return!0}}}else if(null===n&&null===i&&(null===o||1===o||-1===o))return!0;throw Error(ks+"Invalid BigNumber: "+e)},b.maximum=b.max=function(){return x(arguments,-1)},b.minimum=b.min=function(){return x(arguments,1)},b.random=function(){var e=9007199254740992,t=Math.random()*e&2097151?function(){return Ss(Math.random()*e)}:function(){return 8388608*(1073741824*Math.random()|0)+(8388608*Math.random()|0)};return function(e){var r,n,i,o,c,l=0,u=[],d=new b(a);if(null==e?e=s:Ls(e,0,js),o=_s(e/Ps),f)if(crypto.getRandomValues){for(r=crypto.getRandomValues(new Uint32Array(o*=2));l>>11))>=9e15?(n=crypto.getRandomValues(new Uint32Array(2)),r[l]=n[0],r[l+1]=n[1]):(u.push(c%1e14),l+=2);l=o/2}else{if(!crypto.randomBytes)throw f=!1,Error(ks+"crypto unavailable");for(r=crypto.randomBytes(o*=7);l=9e15?crypto.randomBytes(7).copy(r,l):(u.push(c%1e14),l+=7);l=o/7}if(!f)for(;l=10;c/=10,l++);lr-1&&(null==a[i+1]&&(a[i+1]=0),a[i+1]+=a[i]/r|0,a[i]%=r)}return a.reverse()}return function(n,i,o,a,l){var u,d,h,f,p,g,y,w,x=n.indexOf("."),_=s,S=c;for(x>=0&&(f=m,m=0,n=n.replace(".",""),g=(w=new b(i)).pow(n.length-x),m=f,w.c=t(zs(Is(g.c),g.e,"0"),10,o,e),w.e=w.c.length),h=f=(y=t(n,i,o,l?(u=v,e):(u=e,v))).length;0==y[--f];y.pop());if(!y[0])return u.charAt(0);if(x<0?--h:(g.c=y,g.e=h,g.s=a,y=(g=r(g,w,_,S,o)).c,p=g.r,h=g.e),x=y[d=h+_+1],f=o/2,p=p||d<0||null!=y[d+1],p=S<4?(null!=x||p)&&(0==S||S==(g.s<0?3:2)):x>f||x==f&&(4==S||p||6==S&&1&y[d-1]||S==(g.s<0?8:7)),d<1||!y[0])n=p?zs(u.charAt(1),-_,u.charAt(0)):u.charAt(0);else{if(y.length=d,p)for(--o;++y[--d]>o;)y[d]=0,d||(++h,y=[1].concat(y));for(f=y.length;!y[--f];);for(x=0,n="";x<=f;n+=u.charAt(y[x++]));n=zs(n,h,u.charAt(0))}return n}}(),r=function(){function e(e,t,r){var n,i,o,a,s=0,c=e.length,l=t%Cs,u=t/Cs|0;for(e=e.slice();c--;)s=((i=l*(o=e[c]%Cs)+(n=u*o+(a=e[c]/Cs|0)*l)%Cs*Cs+s)/r|0)+(n/Cs|0)+u*a,e[c]=i%r;return s&&(e=[s].concat(e)),e}function t(e,t,r,n){var i,o;if(r!=n)o=r>n?1:-1;else for(i=o=0;it[i]?1:-1;break}return o}function r(e,t,r,n){for(var i=0;r--;)e[r]-=i,i=e[r]1;e.splice(0,1));}return function(n,i,o,a,s){var c,l,u,d,h,f,p,m,g,v,y,w,x,_,k,E,A,P=n.s==i.s?1:-1,O=n.c,T=i.c;if(!O||!O[0]||!T||!T[0])return new b(n.s&&i.s&&(O?!T||O[0]!=T[0]:T)?O&&0==O[0]||!T?0*P:P/0:NaN);for(g=(m=new b(P)).c=[],P=o+(l=n.e-i.e)+1,s||(s=As,l=Rs(n.e/Ps)-Rs(i.e/Ps),P=P/Ps|0),u=0;T[u]==(O[u]||0);u++);if(T[u]>(O[u]||0)&&l--,P<0)g.push(1),d=!0;else{for(_=O.length,E=T.length,u=0,P+=2,(h=Ss(s/(T[0]+1)))>1&&(T=e(T,h,s),O=e(O,h,s),E=T.length,_=O.length),x=E,y=(v=O.slice(0,E)).length;y=s/2&&k++;do{if(h=0,(c=t(T,v,E,y))<0){if(w=v[0],E!=y&&(w=w*s+(v[1]||0)),(h=Ss(w/k))>1)for(h>=s&&(h=s-1),p=(f=e(T,h,s)).length,y=v.length;1==t(f,v,p,y);)h--,r(f,E=10;P/=10,u++);S(m,o+(m.e=u+l*Ps-1)+1,a,d)}else m.e=l,m.r=+d;return m}}(),i=function(){var e=/^(-?)0([xbo])(?=\w[\w.]*$)/i,t=/^([^.]+)\.$/,r=/^\.([^.]+)$/,n=/^-?(Infinity|NaN)$/,i=/^\s*\+(?=[\w.])|^\s+|\s+$/g;return function(o,a,s,c){var l,u=s?a:a.replace(i,"");if(n.test(u))o.s=isNaN(u)?null:u<0?-1:1;else{if(!s&&(u=u.replace(e,(function(e,t,r){return l="x"==(r=r.toLowerCase())?16:"b"==r?2:8,c&&c!=l?e:t})),c&&(l=c,u=u.replace(t,"$1").replace(r,"0.$1")),a!=u))return new b(u,l);if(b.DEBUG)throw Error(ks+"Not a"+(c?" base "+c:"")+" number: "+a);o.s=null}o.c=o.e=null}}(),o.absoluteValue=o.abs=function(){var e=new b(this);return e.s<0&&(e.s=1),e},o.comparedTo=function(e,t){return Ms(this,new b(e,t))},o.decimalPlaces=o.dp=function(e,t){var r,n,i,o=this;if(null!=e)return Ls(e,0,js),null==t?t=c:Ls(t,0,8),S(new b(o),e+o.e+1,t);if(!(r=o.c))return null;if(n=((i=r.length-1)-Rs(this.e/Ps))*Ps,i=r[i])for(;i%10==0;i/=10,n--);return n<0&&(n=0),n},o.dividedBy=o.div=function(e,t){return r(this,new b(e,t),s,c)},o.dividedToIntegerBy=o.idiv=function(e,t){return r(this,new b(e,t),0,1)},o.exponentiatedBy=o.pow=function(e,t){var r,n,i,o,s,l,u,d,h=this;if((e=new b(e)).c&&!e.isInteger())throw Error(ks+"Exponent not an integer: "+k(e));if(null!=t&&(t=new b(t)),s=e.e>14,!h.c||!h.c[0]||1==h.c[0]&&!h.e&&1==h.c.length||!e.c||!e.c[0])return d=new b(Math.pow(+k(h),s?e.s*(2-Ns(e)):+k(e))),t?d.mod(t):d;if(l=e.s<0,t){if(t.c?!t.c[0]:!t.s)return new b(NaN);(n=!l&&h.isInteger()&&t.isInteger())&&(h=h.mod(t))}else{if(e.e>9&&(h.e>0||h.e<-1||(0==h.e?h.c[0]>1||s&&h.c[1]>=24e7:h.c[0]<8e13||s&&h.c[0]<=9999975e7)))return o=h.s<0&&Ns(e)?-0:0,h.e>-1&&(o=1/o),new b(l?1/o:o);m&&(o=_s(m/Ps+2))}for(s?(r=new b(.5),l&&(e.s=1),u=Ns(e)):u=(i=Math.abs(+k(e)))%2,d=new b(a);;){if(u){if(!(d=d.times(h)).c)break;o?d.c.length>o&&(d.c.length=o):n&&(d=d.mod(t))}if(i){if(0===(i=Ss(i/2)))break;u=i%2}else if(S(e=e.times(r),e.e+1,1),e.e>14)u=Ns(e);else{if(0===(i=+k(e)))break;u=i%2}h=h.times(h),o?h.c&&h.c.length>o&&(h.c.length=o):n&&(h=h.mod(t))}return n?d:(l&&(d=a.div(d)),t?d.mod(t):o?S(d,m,c,undefined):d)},o.integerValue=function(e){var t=new b(this);return null==e?e=c:Ls(e,0,8),S(t,t.e+1,e)},o.isEqualTo=o.eq=function(e,t){return 0===Ms(this,new b(e,t))},o.isFinite=function(){return!!this.c},o.isGreaterThan=o.gt=function(e,t){return Ms(this,new b(e,t))>0},o.isGreaterThanOrEqualTo=o.gte=function(e,t){return 1===(t=Ms(this,new b(e,t)))||0===t},o.isInteger=function(){return!!this.c&&Rs(this.e/Ps)>this.c.length-2},o.isLessThan=o.lt=function(e,t){return Ms(this,new b(e,t))<0},o.isLessThanOrEqualTo=o.lte=function(e,t){return-1===(t=Ms(this,new b(e,t)))||0===t},o.isNaN=function(){return!this.s},o.isNegative=function(){return this.s<0},o.isPositive=function(){return this.s>0},o.isZero=function(){return!!this.c&&0==this.c[0]},o.minus=function(e,t){var r,n,i,o,a=this,s=a.s;if(t=(e=new b(e,t)).s,!s||!t)return new b(NaN);if(s!=t)return e.s=-t,a.plus(e);var l=a.e/Ps,u=e.e/Ps,d=a.c,h=e.c;if(!l||!u){if(!d||!h)return d?(e.s=-t,e):new b(h?a:NaN);if(!d[0]||!h[0])return h[0]?(e.s=-t,e):new b(d[0]?a:3==c?-0:0)}if(l=Rs(l),u=Rs(u),d=d.slice(),s=l-u){for((o=s<0)?(s=-s,i=d):(u=l,i=h),i.reverse(),t=s;t--;i.push(0));i.reverse()}else for(n=(o=(s=d.length)<(t=h.length))?s:t,s=t=0;t0)for(;t--;d[r++]=0);for(t=As-1;n>s;){if(d[--n]=0;){for(r=0,h=w[i]%g,f=w[i]/g|0,o=i+(a=c);o>i;)r=((l=h*(l=y[--a]%g)+(s=f*l+(u=y[a]/g|0)*h)%g*g+p[o]+r)/m|0)+(s/g|0)+f*u,p[o--]=l%m;p[o]=r}return r?++n:p.splice(0,1),_(e,p,n)},o.negated=function(){var e=new b(this);return e.s=-e.s||null,e},o.plus=function(e,t){var r,n=this,i=n.s;if(t=(e=new b(e,t)).s,!i||!t)return new b(NaN);if(i!=t)return e.s=-t,n.minus(e);var o=n.e/Ps,a=e.e/Ps,s=n.c,c=e.c;if(!o||!a){if(!s||!c)return new b(i/0);if(!s[0]||!c[0])return c[0]?e:new b(s[0]?n:0*i)}if(o=Rs(o),a=Rs(a),s=s.slice(),i=o-a){for(i>0?(a=o,r=c):(i=-i,r=s),r.reverse();i--;r.push(0));r.reverse()}for((i=s.length)-(t=c.length)<0&&(r=c,c=s,s=r,t=i),i=0;t;)i=(s[--t]=s[t]+c[t]+i)/As|0,s[t]=As===s[t]?0:s[t]%As;return i&&(s=[i].concat(s),++a),_(e,s,a)},o.precision=o.sd=function(e,t){var r,n,i,o=this;if(null!=e&&e!==!!e)return Ls(e,1,js),null==t?t=c:Ls(t,0,8),S(new b(o),e,t);if(!(r=o.c))return null;if(n=(i=r.length-1)*Ps+1,i=r[i]){for(;i%10==0;i/=10,n--);for(i=r[0];i>=10;i/=10,n++);}return e&&o.e+1>n&&(n=o.e+1),n},o.shiftedBy=function(e){return Ls(e,-9007199254740991,Os),this.times("1e"+e)},o.squareRoot=o.sqrt=function(){var e,t,n,i,o,a=this,l=a.c,u=a.s,d=a.e,h=s+4,f=new b("0.5");if(1!==u||!l||!l[0])return new b(!u||u<0&&(!l||l[0])?NaN:l?a:1/0);if(0==(u=Math.sqrt(+k(a)))||u==1/0?(((t=Is(l)).length+d)%2==0&&(t+="0"),u=Math.sqrt(+t),d=Rs((d+1)/2)-(d<0||d%2),n=new b(t=u==1/0?"5e"+d:(t=u.toExponential()).slice(0,t.indexOf("e")+1)+d)):n=new b(u+""),n.c[0])for((u=(d=n.e)+h)<3&&(u=0);;)if(o=n,n=f.times(o.plus(r(a,o,h,1))),Is(o.c).slice(0,u)===(t=Is(n.c)).slice(0,u)){if(n.e0&&p>0){for(o=p%s||s,u=f.substr(0,o);o0&&(u+=l+f.slice(o)),h&&(u="-"+u)}n=d?u+(r.decimalSeparator||"")+((c=+r.fractionGroupSize)?d.replace(new RegExp("\\d{"+c+"}\\B","g"),"$&"+(r.fractionGroupSeparator||"")):d):u}return(r.prefix||"")+n+(r.suffix||"")},o.toFraction=function(e){var t,n,i,o,s,l,u,d,f,p,m,g,v=this,y=v.c;if(null!=e&&(!(u=new b(e)).isInteger()&&(u.c||1!==u.s)||u.lt(a)))throw Error(ks+"Argument "+(u.isInteger()?"out of range: ":"not an integer: ")+k(u));if(!y)return new b(v);for(t=new b(a),f=n=new b(a),i=d=new b(a),g=Is(y),s=t.e=g.length-v.e-1,t.c[0]=Ts[(l=s%Ps)<0?Ps+l:l],e=!e||u.comparedTo(t)>0?s>0?t:f:u,l=h,h=1/0,u=new b(g),d.c[0]=0;p=r(u,t,0,1),1!=(o=n.plus(p.times(i))).comparedTo(e);)n=i,i=o,f=d.plus(p.times(o=f)),d=o,t=u.minus(p.times(o=t)),u=o;return o=r(e.minus(n),i,0,1),d=d.plus(o.times(f)),n=n.plus(o.times(i)),d.s=f.s=v.s,m=r(f,i,s*=2,c).minus(v).abs().comparedTo(r(d,n,s,c).minus(v).abs())<1?[f,i]:[d,n],h=l,m},o.toNumber=function(){return+k(this)},o.toPrecision=function(e,t){return null!=e&&Ls(e,1,js),w(this,e,t,2)},o.toString=function(e){var t,r=this,i=r.s,o=r.e;return null===o?i?(t="Infinity",i<0&&(t="-"+t)):t="NaN":(null==e?t=o<=l||o>=u?Ds(Is(r.c),o):zs(Is(r.c),o,"0"):10===e&&y?t=zs(Is((r=S(new b(r),s+o+1,c)).c),r.e,"0"):(Ls(e,2,v.length,"Base"),t=n(zs(Is(r.c),o,"0"),10,e,i,!0)),i<0&&r.c[0]&&(t="-"+t)),t},o.valueOf=o.toJSON=function(){return k(this)},o._isBigNumber=!0,o[Symbol.toStringTag]="BigNumber",o[Symbol.for("nodejs.util.inspect.custom")]=o.valueOf,null!=t&&b.set(t),b}();const Us=Bs;var Fs,$s=r(7007),Hs=r.n($s),Vs=r(1808),qs=r.n(Vs);!function(e){e.TZ1="tz1",e.TZ2="tz2",e.TZ3="tz3",e.TZ4="tz4",e.KT="KT",e.KT1="KT1",e.EDSK2="edsk2",e.SPSK="spsk",e.P2SK="p2sk",e.EDPK="edpk",e.SPPK="sppk",e.P2PK="p2pk",e.BLPK="BLpk",e.EDESK="edesk",e.SPESK="spesk",e.P2ESK="p2esk",e.EDSK="edsk",e.EDSIG="edsig",e.SPSIG="spsig",e.P2SIG="p2sig",e.SIG="sig",e.NET="Net",e.NCE="nce",e.B="B",e.O="o",e.LO="Lo",e.LLO="LLo",e.P="P",e.CO="Co",e.ID="id",e.EXPR="expr",e.TZ="TZ",e.VH="vh",e.SASK="sask",e.ZET1="zet1",e.TXR1="txr1",e.TXI="txi",e.TXM="txm",e.TXC="txc",e.TXMR="txmr",e.TXRL="txM",e.TXW="txw",e.SR1="sr1",e.SRC1="src1"}(Fs||(Fs={}));const Ks={[Fs.TZ1]:new Uint8Array([6,161,159]),[Fs.TZ2]:new Uint8Array([6,161,161]),[Fs.TZ3]:new Uint8Array([6,161,164]),[Fs.TZ4]:new Uint8Array([6,161,166]),[Fs.KT]:new Uint8Array([2,90,121]),[Fs.KT1]:new Uint8Array([2,90,121]),[Fs.EDSK]:new Uint8Array([43,246,78,7]),[Fs.EDSK2]:new Uint8Array([13,15,58,7]),[Fs.SPSK]:new Uint8Array([17,162,224,201]),[Fs.P2SK]:new Uint8Array([16,81,238,189]),[Fs.EDPK]:new Uint8Array([13,15,37,217]),[Fs.SPPK]:new Uint8Array([3,254,226,86]),[Fs.P2PK]:new Uint8Array([3,178,139,127]),[Fs.BLPK]:new Uint8Array([6,149,135,204]),[Fs.EDESK]:new Uint8Array([7,90,60,179,41]),[Fs.SPESK]:new Uint8Array([9,237,241,174,150]),[Fs.P2ESK]:new Uint8Array([9,48,57,115,171]),[Fs.EDSIG]:new Uint8Array([9,245,205,134,18]),[Fs.SPSIG]:new Uint8Array([13,115,101,19,63]),[Fs.P2SIG]:new Uint8Array([54,240,44,52]),[Fs.SIG]:new Uint8Array([4,130,43]),[Fs.NET]:new Uint8Array([87,82,0]),[Fs.NCE]:new Uint8Array([69,220,169]),[Fs.B]:new Uint8Array([1,52]),[Fs.O]:new Uint8Array([5,116]),[Fs.LO]:new Uint8Array([133,233]),[Fs.LLO]:new Uint8Array([29,159,109]),[Fs.P]:new Uint8Array([2,170]),[Fs.CO]:new Uint8Array([79,179]),[Fs.ID]:new Uint8Array([153,103]),[Fs.EXPR]:new Uint8Array([13,44,64,27]),[Fs.TZ]:new Uint8Array([2,90,121]),[Fs.VH]:new Uint8Array([1,106,242]),[Fs.SASK]:new Uint8Array([11,237,20,92]),[Fs.ZET1]:new Uint8Array([18,71,40,223]),[Fs.TXR1]:new Uint8Array([1,128,120,31]),[Fs.TXI]:new Uint8Array([79,148,196]),[Fs.TXM]:new Uint8Array([79,149,30]),[Fs.TXC]:new Uint8Array([79,148,17]),[Fs.TXMR]:new Uint8Array([18,7,206,87]),[Fs.TXRL]:new Uint8Array([79,146,82]),[Fs.TXW]:new Uint8Array([79,150,72]),[Fs.SR1]:new Uint8Array([6,124,117]),[Fs.SRC1]:new Uint8Array([17,165,134,138])},Ws={[Fs.TZ1]:20,[Fs.TZ2]:20,[Fs.TZ3]:20,[Fs.TZ4]:20,[Fs.KT]:20,[Fs.KT1]:20,[Fs.EDPK]:32,[Fs.SPPK]:33,[Fs.P2PK]:33,[Fs.BLPK]:48,[Fs.EDSIG]:64,[Fs.SPSIG]:64,[Fs.P2SIG]:64,[Fs.SIG]:64,[Fs.NET]:4,[Fs.B]:32,[Fs.P]:32,[Fs.O]:32,[Fs.VH]:32,[Fs.SASK]:169,[Fs.ZET1]:43,[Fs.TXR1]:20,[Fs.TXI]:32,[Fs.TXM]:32,[Fs.TXC]:32,[Fs.TXMR]:32,[Fs.TXRL]:32,[Fs.TXW]:32,[Fs.SR1]:20,[Fs.SRC1]:32};class Gs extends rs{constructor(e,t){super(),this.value=e,this.desiredType=t,this.name="ValueConversionError",this.message=`Unable to convert ${e} to a ${t}`}}var Zs;function Ys(e){return"string"===typeof e&&e in Ks}function Xs(e,t){const r=new RegExp(`^(${t.join("|")})`).exec(e);if(!r||0===r.length)return Zs.NO_PREFIX_MATCHED;const n=r[0];if(!Ys(n))return Zs.NO_PREFIX_MATCHED;e.includes("%")&&(e=e.split("%")[0]);if(!/^(KT1\w{33})$/.test(e)&&"KT1"===n)return Zs.INVALID_CHECKSUM;let i=Xa().decodeUnsafe(e);return i?(i=i.slice(Ks[n].length),i.length!==Ws[n]?Zs.INVALID_LENGTH:Zs.VALID):Zs.INVALID_CHECKSUM}!function(e){e[e.NO_PREFIX_MATCHED=0]="NO_PREFIX_MATCHED",e[e.INVALID_CHECKSUM=1]="INVALID_CHECKSUM",e[e.INVALID_LENGTH=2]="INVALID_LENGTH",e[e.VALID=3]="VALID"}(Zs||(Zs={}));const Js=[Fs.TZ1,Fs.TZ2,Fs.TZ3,Fs.TZ4],Qs=[Fs.KT1,Fs.TXR1],ec=[Fs.EDSIG,Fs.P2SIG,Fs.SPSIG,Fs.SIG],tc=[Fs.EDPK,Fs.SPPK,Fs.P2PK,Fs.BLPK],rc=[Fs.O],nc=(Fs.P,[Fs.B]),ic=[Fs.SR1];function oc(e){return Xs(e,[...Js,...Qs,...ic])}function ac(e){return Xs(e,[Fs.NET])}function sc(e){return Xs(e,Qs)}function cc(e){return Xs(e,Js)}function lc(e){return Xs(e,ec)}function uc(e){return Xs(e,tc)}function dc(e){return Xs(e,rc)}function hc(e){switch(e){case Zs.NO_PREFIX_MATCHED:return"with unsupported prefix";case Zs.INVALID_CHECKSUM:return"failed checksum";case Zs.INVALID_LENGTH:return"with incorrect length";default:return""}}const fc=6,pc=3;function mc(e){switch(e){case"tz":return fc;case"mtz":return pc;default:return 0}}function gc(e="mutez",t="mutez",r){const n=new Us(r);return n.isNaN()?r:n.multipliedBy(Math.pow(10,mc(e))).dividedBy(Math.pow(10,mc(t)))}function vc(e,t){const r="string"===typeof e?Uint8Array.from(qa.Buffer.from(e,"hex")):e,n=new Uint8Array(t.length+r.length);return n.set(t),n.set(r,t.length),Xa().encode(qa.Buffer.from(n.buffer))}const yc=(e,t)=>Xa().decode(e).slice(t.length);function bc(e){if("00"===e.substring(0,2)){const t={"0000":Ks.tz1,"0001":Ks.tz2,"0002":Ks.tz3};return vc(e.substring(4),t[e.substring(0,4)])}return"02"===e.substring(0,2)?vc(e.substring(2,e.length-2),Ks.txr1):vc(e.substring(2,42),Ks.KT)}function wc(e){return vc(e,Ks.tz4)}function xc(e){if("0"===e[0]){const t={"00":new Uint8Array([6,161,159]),"01":new Uint8Array([6,161,161]),"02":new Uint8Array([6,161,164])};return vc(e.substring(2),t[e.substring(0,2)])}}const _c=e=>{if(e.length%2!==0)throw new cs(e,": Expecting even number of characters");const t=Ac(e);if(!t.match(/^([\da-f]{2})*$/gi))throw new cs(e,": Only characters 0-9, a-f and A-F are expected. Optionally, it can be prefixed with '0x'");const r=new Uint8Array(t.length/2);let n=0;for(let i=0;i{const r=new Uint8Array(e.length+t.length);return r.set(e),r.set(t,e.length),r},kc=e=>{const t=[];return e.forEach((e=>{const r=`00${e.toString(16)}`.slice(-2);t.push(r)})),t.join("")};function Ec(e){const t=Ac(e);if(!t.match(/^(0x)?([\da-f]{2})*$/gi))throw new cs(e,": Expecting even number of characters: 0-9, a-z, A-Z, optionally prefixed with 0x");return qa.Buffer.from(t,"hex")}function Ac(e){return e.startsWith("0x")?e.slice(2):e}var Pc=r(4872).Buffer;const Oc=async(e,t)=>Tc(Pc.from(e,"utf-8"),t,6e5),Tc=async(e,t,r)=>{const n={name:"PBKDF2",salt:t,iterations:r,hash:"SHA-256"},i=await crypto.subtle.importKey("raw",e,n.name,!1,["deriveKey"]);return await crypto.subtle.deriveKey(n,i,{name:jc,length:256},!1,["encrypt","decrypt"])};var Cc=r(4872).Buffer;const jc="AES-GCM",Rc=async(e,t)=>{const r=crypto.getRandomValues(new Uint8Array(32)),n=await Oc(t,r),i=crypto.getRandomValues(new Uint8Array(12)),o=await crypto.subtle.encrypt({name:jc,iv:i},n,Cc.from(e,"utf-8"));return{iv:kc(Cc.from(i)),salt:kc(Cc.from(r)),data:kc(Cc.from(o))}},Ic=async(e,t,r="V2")=>{const{iv:n,salt:i,data:o}=e;try{const e="V2"===r?await Oc(t,Ec(i)):await(async(e,t)=>Tc(Pc.alloc(32,e,"utf-8"),t,1e4))(t,Ec(i)),a=await crypto.subtle.decrypt({name:jc,iv:Ec(n)},e,Ec(o));return Cc.from(a).toString("utf-8")}catch(a){throw new Error("Error decrypting data: Invalid password")}},Mc=ca("accounts/changeMnemonicPassword",(async({currentPassword:e,newPassword:t},{getState:r})=>{if(e===t)throw new Error("New password must be different from the current password");const{items:n,seedPhrases:i}=r().accounts;if(0===n.filter((e=>"mnemonic"===e.type)).length)throw new Error("No mnemonic accounts found");const o=await Promise.all(Object.entries(i).map((async([r,n])=>{if(!n)throw new Error("No encrypted mnemonic found");try{const i=await Ic(n,e);return[r,await Rc(i,t)]}catch(i){throw new Error(i.message)}})));return{newEncryptedMnemonics:(0,Va.fromPairs)(o)}})),Lc={items:[],seedPhrases:{},secretKeys:{}},Nc=ra({name:"accounts",initialState:Lc,extraReducers:e=>{e.addCase(Mc.fulfilled,((e,t)=>{const{newEncryptedMnemonics:r}=t.payload;e.seedPhrases=r}))},reducers:{reset:()=>Lc,removeMnemonicAndAccounts:(e,{payload:t})=>{const{fingerPrint:r}=t,n=e.items.filter((e=>!("mnemonic"===e.type&&e.seedFingerPrint===r)));e.items=n,delete e.seedPhrases[r]},removeNonMnemonicAccounts:(e,{payload:t})=>{e.items=(0,Va.remove)(e.items,(e=>"mnemonic"===e.type||e.type!==t.accountType))},removeAccount:(e,{payload:t})=>{(0,Va.remove)(e.items,(e=>e.address.pkh===t.address.pkh))},renameAccount:(e,{payload:t})=>{const{account:r,newName:n}=t;if(0===n.length)throw new Error("Cannot rename account to an empty name.");if(e.items.find((e=>e.label===n)))throw new Error(`Cannot rename account ${r.address.pkh} to ${n} since the name already exists.`);const i=e.items.find((e=>e.address.pkh===r.address.pkh&&e.label===r.label));i&&(i.label=n)},addAccount:(e,{payload:t})=>{e.items=Dc(e.items,[t])},addMnemonicAccounts:(e,{payload:{encryptedMnemonic:t,accounts:r,seedFingerprint:n}})=>{e.items=Dc(e.items,r),e.seedPhrases[n]=t},addMockMnemonicAccounts:(e,{payload:t})=>{e.items=Dc(e.items,t)},addSecretKey:(e,{payload:{pkh:t,encryptedSecretKey:r}})=>{e.secretKeys[t]=r},removeSecretKey:(e,{payload:t})=>{delete e.secretKeys[t.address.pkh]}}}),Dc=(e,t)=>(t.forEach((t=>{if(e.some((e=>e.address.pkh===t.address.pkh)))throw new Error(`Can't add account ${t.address.pkh} in store since it already exists.`)})),[...e,...t]);Nc.actions;var zc,Bc;!function(e){e.assertEqual=e=>e,e.assertIs=function(e){},e.assertNever=function(e){throw new Error},e.arrayToEnum=e=>{const t={};for(const r of e)t[r]=r;return t},e.getValidEnumValues=t=>{const r=e.objectKeys(t).filter((e=>"number"!==typeof t[t[e]])),n={};for(const e of r)n[e]=t[e];return e.objectValues(n)},e.objectValues=t=>e.objectKeys(t).map((function(e){return t[e]})),e.objectKeys="function"===typeof Object.keys?e=>Object.keys(e):e=>{const t=[];for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.push(r);return t},e.find=(e,t)=>{for(const r of e)if(t(r))return r},e.isInteger="function"===typeof Number.isInteger?e=>Number.isInteger(e):e=>"number"===typeof e&&isFinite(e)&&Math.floor(e)===e,e.joinValues=function(e,t=" | "){return e.map((e=>"string"===typeof e?`'${e}'`:e)).join(t)},e.jsonStringifyReplacer=(e,t)=>"bigint"===typeof t?t.toString():t}(zc||(zc={})),function(e){e.mergeShapes=(e,t)=>({...e,...t})}(Bc||(Bc={}));const Uc=zc.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Fc=e=>{switch(typeof e){case"undefined":return Uc.undefined;case"string":return Uc.string;case"number":return isNaN(e)?Uc.nan:Uc.number;case"boolean":return Uc.boolean;case"function":return Uc.function;case"bigint":return Uc.bigint;case"symbol":return Uc.symbol;case"object":return Array.isArray(e)?Uc.array:null===e?Uc.null:e.then&&"function"===typeof e.then&&e.catch&&"function"===typeof e.catch?Uc.promise:"undefined"!==typeof Map&&e instanceof Map?Uc.map:"undefined"!==typeof Set&&e instanceof Set?Uc.set:"undefined"!==typeof Date&&e instanceof Date?Uc.date:Uc.object;default:return Uc.unknown}},$c=zc.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class Hc extends Error{constructor(e){super(),this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=(e=[])=>{this.issues=[...this.issues,...e]};const t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}get errors(){return this.issues}format(e){const t=e||function(e){return e.message},r={_errors:[]},n=e=>{for(const i of e.issues)if("invalid_union"===i.code)i.unionErrors.map(n);else if("invalid_return_type"===i.code)n(i.returnTypeError);else if("invalid_arguments"===i.code)n(i.argumentsError);else if(0===i.path.length)r._errors.push(t(i));else{let e=r,n=0;for(;ne.message)){const t={},r=[];for(const n of this.issues)n.path.length>0?(t[n.path[0]]=t[n.path[0]]||[],t[n.path[0]].push(e(n))):r.push(e(n));return{formErrors:r,fieldErrors:t}}get formErrors(){return this.flatten()}}Hc.create=e=>new Hc(e);const Vc=(e,t)=>{let r;switch(e.code){case $c.invalid_type:r=e.received===Uc.undefined?"Required":`Expected ${e.expected}, received ${e.received}`;break;case $c.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(e.expected,zc.jsonStringifyReplacer)}`;break;case $c.unrecognized_keys:r=`Unrecognized key(s) in object: ${zc.joinValues(e.keys,", ")}`;break;case $c.invalid_union:r="Invalid input";break;case $c.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${zc.joinValues(e.options)}`;break;case $c.invalid_enum_value:r=`Invalid enum value. Expected ${zc.joinValues(e.options)}, received '${e.received}'`;break;case $c.invalid_arguments:r="Invalid function arguments";break;case $c.invalid_return_type:r="Invalid function return type";break;case $c.invalid_date:r="Invalid date";break;case $c.invalid_string:"object"===typeof e.validation?"includes"in e.validation?(r=`Invalid input: must include "${e.validation.includes}"`,"number"===typeof e.validation.position&&(r=`${r} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?r=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?r=`Invalid input: must end with "${e.validation.endsWith}"`:zc.assertNever(e.validation):r="regex"!==e.validation?`Invalid ${e.validation}`:"Invalid";break;case $c.too_small:r="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:"number"===e.type?`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:"date"===e.type?`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:"Invalid input";break;case $c.too_big:r="array"===e.type?`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:"string"===e.type?`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:"number"===e.type?`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"bigint"===e.type?`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:"date"===e.type?`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:"Invalid input";break;case $c.custom:r="Invalid input";break;case $c.invalid_intersection_types:r="Intersection results could not be merged";break;case $c.not_multiple_of:r=`Number must be a multiple of ${e.multipleOf}`;break;case $c.not_finite:r="Number must be finite";break;default:r=t.defaultError,zc.assertNever(e)}return{message:r}};let qc=Vc;function Kc(){return qc}const Wc=e=>{const{data:t,path:r,errorMaps:n,issueData:i}=e,o=[...r,...i.path||[]],a={...i,path:o};let s="";const c=n.filter((e=>!!e)).slice().reverse();for(const l of c)s=l(a,{data:t,defaultError:s}).message;return{...i,path:o,message:i.message||s}};function Gc(e,t){const r=Wc({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,Kc(),Vc].filter((e=>!!e))});e.common.issues.push(r)}class Zc{constructor(){this.value="valid"}dirty(){"valid"===this.value&&(this.value="dirty")}abort(){"aborted"!==this.value&&(this.value="aborted")}static mergeArray(e,t){const r=[];for(const n of t){if("aborted"===n.status)return Yc;"dirty"===n.status&&e.dirty(),r.push(n.value)}return{status:e.value,value:r}}static async mergeObjectAsync(e,t){const r=[];for(const n of t)r.push({key:await n.key,value:await n.value});return Zc.mergeObjectSync(e,r)}static mergeObjectSync(e,t){const r={};for(const n of t){const{key:t,value:i}=n;if("aborted"===t.status)return Yc;if("aborted"===i.status)return Yc;"dirty"===t.status&&e.dirty(),"dirty"===i.status&&e.dirty(),"__proto__"===t.value||"undefined"===typeof i.value&&!n.alwaysSet||(r[t.value]=i.value)}return{status:e.value,value:r}}}const Yc=Object.freeze({status:"aborted"}),Xc=e=>({status:"dirty",value:e}),Jc=e=>({status:"valid",value:e}),Qc=e=>"aborted"===e.status,el=e=>"dirty"===e.status,tl=e=>"valid"===e.status,rl=e=>"undefined"!==typeof Promise&&e instanceof Promise;var nl;!function(e){e.errToObj=e=>"string"===typeof e?{message:e}:e||{},e.toString=e=>"string"===typeof e?e:null===e||void 0===e?void 0:e.message}(nl||(nl={}));class il{constructor(e,t,r,n){this._cachedPath=[],this.parent=e,this.data=t,this._path=r,this._key=n}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const ol=(e,t)=>{if(tl(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const t=new Hc(e.common.issues);return this._error=t,this._error}}};function al(e){if(!e)return{};const{errorMap:t,invalid_type_error:r,required_error:n,description:i}=e;if(t&&(r||n))throw new Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');if(t)return{errorMap:t,description:i};return{errorMap:(e,t)=>"invalid_type"!==e.code?{message:t.defaultError}:"undefined"===typeof t.data?{message:null!==n&&void 0!==n?n:t.defaultError}:{message:null!==r&&void 0!==r?r:t.defaultError},description:i}}class sl{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return Fc(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:Fc(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Zc,ctx:{common:e.parent.common,data:e.data,parsedType:Fc(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){const t=this._parse(e);if(rl(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){const t=this._parse(e);return Promise.resolve(t)}parse(e,t){const r=this.safeParse(e,t);if(r.success)return r.data;throw r.error}safeParse(e,t){var r;const n={common:{issues:[],async:null!==(r=null===t||void 0===t?void 0:t.async)&&void 0!==r&&r,contextualErrorMap:null===t||void 0===t?void 0:t.errorMap},path:(null===t||void 0===t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Fc(e)},i=this._parseSync({data:e,path:n.path,parent:n});return ol(n,i)}async parseAsync(e,t){const r=await this.safeParseAsync(e,t);if(r.success)return r.data;throw r.error}async safeParseAsync(e,t){const r={common:{issues:[],contextualErrorMap:null===t||void 0===t?void 0:t.errorMap,async:!0},path:(null===t||void 0===t?void 0:t.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Fc(e)},n=this._parse({data:e,path:r.path,parent:r}),i=await(rl(n)?n:Promise.resolve(n));return ol(r,i)}refine(e,t){const r=e=>"string"===typeof t||"undefined"===typeof t?{message:t}:"function"===typeof t?t(e):t;return this._refinement(((t,n)=>{const i=e(t),o=()=>n.addIssue({code:$c.custom,...r(t)});return"undefined"!==typeof Promise&&i instanceof Promise?i.then((e=>!!e||(o(),!1))):!!i||(o(),!1)}))}refinement(e,t){return this._refinement(((r,n)=>!!e(r)||(n.addIssue("function"===typeof t?t(r,n):t),!1)))}_refinement(e){return new Gl({schema:this,typeName:au.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return Zl.create(this,this._def)}nullable(){return Yl.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Tl.create(this,this._def)}promise(){return Wl.create(this,this._def)}or(e){return Rl.create([this,e],this._def)}and(e){return Nl.create(this,e,this._def)}transform(e){return new Gl({...al(this._def),schema:this,typeName:au.ZodEffects,effect:{type:"transform",transform:e}})}default(e){const t="function"===typeof e?e:()=>e;return new Xl({...al(this._def),innerType:this,defaultValue:t,typeName:au.ZodDefault})}brand(){return new tu({typeName:au.ZodBranded,type:this,...al(this._def)})}catch(e){const t="function"===typeof e?e:()=>e;return new Jl({...al(this._def),innerType:this,catchValue:t,typeName:au.ZodCatch})}describe(e){return new(0,this.constructor)({...this._def,description:e})}pipe(e){return ru.create(this,e)}readonly(){return nu.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const cl=/^c[^\s-]{8,}$/i,ll=/^[a-z][a-z0-9]*$/,ul=/^[0-9A-HJKMNP-TV-Z]{26}$/,dl=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,hl=/^(?!\.)(?!.*\.\.)([A-Z0-9_+-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i;let fl;const pl=/^(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))$/,ml=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/;class gl extends sl{_parse(e){this._def.coerce&&(e.data=String(e.data));if(this._getType(e)!==Uc.string){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.string,received:t.parsedType}),Yc}const t=new Zc;let r;for(const a of this._def.checks)if("min"===a.kind)e.data.lengtha.value&&(r=this._getOrReturnCtx(e,r),Gc(r,{code:$c.too_big,maximum:a.value,type:"string",inclusive:!0,exact:!1,message:a.message}),t.dirty());else if("length"===a.kind){const n=e.data.length>a.value,i=e.data.lengthe.test(t)),{validation:t,code:$c.invalid_string,...nl.errToObj(r)})}_addCheck(e){return new gl({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...nl.errToObj(e)})}url(e){return this._addCheck({kind:"url",...nl.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...nl.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...nl.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...nl.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...nl.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...nl.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...nl.errToObj(e)})}datetime(e){var t;return"string"===typeof e?this._addCheck({kind:"datetime",precision:null,offset:!1,message:e}):this._addCheck({kind:"datetime",precision:"undefined"===typeof(null===e||void 0===e?void 0:e.precision)?null:null===e||void 0===e?void 0:e.precision,offset:null!==(t=null===e||void 0===e?void 0:e.offset)&&void 0!==t&&t,...nl.errToObj(null===e||void 0===e?void 0:e.message)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...nl.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:null===t||void 0===t?void 0:t.position,...nl.errToObj(null===t||void 0===t?void 0:t.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...nl.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...nl.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...nl.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...nl.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...nl.errToObj(t)})}nonempty(e){return this.min(1,nl.errToObj(e))}trim(){return new gl({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new gl({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new gl({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((e=>"datetime"===e.kind))}get isEmail(){return!!this._def.checks.find((e=>"email"===e.kind))}get isURL(){return!!this._def.checks.find((e=>"url"===e.kind))}get isEmoji(){return!!this._def.checks.find((e=>"emoji"===e.kind))}get isUUID(){return!!this._def.checks.find((e=>"uuid"===e.kind))}get isCUID(){return!!this._def.checks.find((e=>"cuid"===e.kind))}get isCUID2(){return!!this._def.checks.find((e=>"cuid2"===e.kind))}get isULID(){return!!this._def.checks.find((e=>"ulid"===e.kind))}get isIP(){return!!this._def.checks.find((e=>"ip"===e.kind))}get minLength(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.valuen?r:n;return parseInt(e.toFixed(i).replace(".",""))%parseInt(t.toFixed(i).replace(".",""))/Math.pow(10,i)}gl.create=e=>{var t;return new gl({checks:[],typeName:au.ZodString,coerce:null!==(t=null===e||void 0===e?void 0:e.coerce)&&void 0!==t&&t,...al(e)})};class yl extends sl{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){this._def.coerce&&(e.data=Number(e.data));if(this._getType(e)!==Uc.number){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.number,received:t.parsedType}),Yc}let t;const r=new Zc;for(const n of this._def.checks)if("int"===n.kind)zc.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),Gc(t,{code:$c.invalid_type,expected:"integer",received:"float",message:n.message}),r.dirty());else if("min"===n.kind){(n.inclusive?e.datan.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),Gc(t,{code:$c.too_big,maximum:n.value,type:"number",inclusive:n.inclusive,exact:!1,message:n.message}),r.dirty())}else"multipleOf"===n.kind?0!==vl(e.data,n.value)&&(t=this._getOrReturnCtx(e,t),Gc(t,{code:$c.not_multiple_of,multipleOf:n.value,message:n.message}),r.dirty()):"finite"===n.kind?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),Gc(t,{code:$c.not_finite,message:n.message}),r.dirty()):zc.assertNever(n);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,nl.toString(t))}gt(e,t){return this.setLimit("min",e,!1,nl.toString(t))}lte(e,t){return this.setLimit("max",e,!0,nl.toString(t))}lt(e,t){return this.setLimit("max",e,!1,nl.toString(t))}setLimit(e,t,r,n){return new yl({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:nl.toString(n)}]})}_addCheck(e){return new yl({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:nl.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:nl.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:nl.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:nl.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:nl.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:nl.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:nl.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:nl.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:nl.toString(e)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value"int"===e.kind||"multipleOf"===e.kind&&zc.isInteger(e.value)))}get isFinite(){let e=null,t=null;for(const r of this._def.checks){if("finite"===r.kind||"int"===r.kind||"multipleOf"===r.kind)return!0;"min"===r.kind?(null===t||r.value>t)&&(t=r.value):"max"===r.kind&&(null===e||r.valuenew yl({checks:[],typeName:au.ZodNumber,coerce:(null===e||void 0===e?void 0:e.coerce)||!1,...al(e)});class bl extends sl{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){this._def.coerce&&(e.data=BigInt(e.data));if(this._getType(e)!==Uc.bigint){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.bigint,received:t.parsedType}),Yc}let t;const r=new Zc;for(const n of this._def.checks)if("min"===n.kind){(n.inclusive?e.datan.value:e.data>=n.value)&&(t=this._getOrReturnCtx(e,t),Gc(t,{code:$c.too_big,type:"bigint",maximum:n.value,inclusive:n.inclusive,message:n.message}),r.dirty())}else"multipleOf"===n.kind?e.data%n.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),Gc(t,{code:$c.not_multiple_of,multipleOf:n.value,message:n.message}),r.dirty()):zc.assertNever(n);return{status:r.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,nl.toString(t))}gt(e,t){return this.setLimit("min",e,!1,nl.toString(t))}lte(e,t){return this.setLimit("max",e,!0,nl.toString(t))}lt(e,t){return this.setLimit("max",e,!1,nl.toString(t))}setLimit(e,t,r,n){return new bl({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:r,message:nl.toString(n)}]})}_addCheck(e){return new bl({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:nl.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:nl.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:nl.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:nl.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:nl.toString(t)})}get minValue(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.value{var t;return new bl({checks:[],typeName:au.ZodBigInt,coerce:null!==(t=null===e||void 0===e?void 0:e.coerce)&&void 0!==t&&t,...al(e)})};class wl extends sl{_parse(e){this._def.coerce&&(e.data=Boolean(e.data));if(this._getType(e)!==Uc.boolean){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.boolean,received:t.parsedType}),Yc}return Jc(e.data)}}wl.create=e=>new wl({typeName:au.ZodBoolean,coerce:(null===e||void 0===e?void 0:e.coerce)||!1,...al(e)});class xl extends sl{_parse(e){this._def.coerce&&(e.data=new Date(e.data));if(this._getType(e)!==Uc.date){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.date,received:t.parsedType}),Yc}if(isNaN(e.data.getTime())){return Gc(this._getOrReturnCtx(e),{code:$c.invalid_date}),Yc}const t=new Zc;let r;for(const n of this._def.checks)"min"===n.kind?e.data.getTime()n.value&&(r=this._getOrReturnCtx(e,r),Gc(r,{code:$c.too_big,message:n.message,inclusive:!0,exact:!1,maximum:n.value,type:"date"}),t.dirty()):zc.assertNever(n);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(e){return new xl({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:nl.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:nl.toString(t)})}get minDate(){let e=null;for(const t of this._def.checks)"min"===t.kind&&(null===e||t.value>e)&&(e=t.value);return null!=e?new Date(e):null}get maxDate(){let e=null;for(const t of this._def.checks)"max"===t.kind&&(null===e||t.valuenew xl({checks:[],coerce:(null===e||void 0===e?void 0:e.coerce)||!1,typeName:au.ZodDate,...al(e)});class _l extends sl{_parse(e){if(this._getType(e)!==Uc.symbol){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.symbol,received:t.parsedType}),Yc}return Jc(e.data)}}_l.create=e=>new _l({typeName:au.ZodSymbol,...al(e)});class Sl extends sl{_parse(e){if(this._getType(e)!==Uc.undefined){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.undefined,received:t.parsedType}),Yc}return Jc(e.data)}}Sl.create=e=>new Sl({typeName:au.ZodUndefined,...al(e)});class kl extends sl{_parse(e){if(this._getType(e)!==Uc.null){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.null,received:t.parsedType}),Yc}return Jc(e.data)}}kl.create=e=>new kl({typeName:au.ZodNull,...al(e)});class El extends sl{constructor(){super(...arguments),this._any=!0}_parse(e){return Jc(e.data)}}El.create=e=>new El({typeName:au.ZodAny,...al(e)});class Al extends sl{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Jc(e.data)}}Al.create=e=>new Al({typeName:au.ZodUnknown,...al(e)});class Pl extends sl{_parse(e){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.never,received:t.parsedType}),Yc}}Pl.create=e=>new Pl({typeName:au.ZodNever,...al(e)});class Ol extends sl{_parse(e){if(this._getType(e)!==Uc.undefined){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.void,received:t.parsedType}),Yc}return Jc(e.data)}}Ol.create=e=>new Ol({typeName:au.ZodVoid,...al(e)});class Tl extends sl{_parse(e){const{ctx:t,status:r}=this._processInputParams(e),n=this._def;if(t.parsedType!==Uc.array)return Gc(t,{code:$c.invalid_type,expected:Uc.array,received:t.parsedType}),Yc;if(null!==n.exactLength){const e=t.data.length>n.exactLength.value,i=t.data.lengthn.maxLength.value&&(Gc(t,{code:$c.too_big,maximum:n.maxLength.value,type:"array",inclusive:!0,exact:!1,message:n.maxLength.message}),r.dirty()),t.common.async)return Promise.all([...t.data].map(((e,r)=>n.type._parseAsync(new il(t,e,t.path,r))))).then((e=>Zc.mergeArray(r,e)));const i=[...t.data].map(((e,r)=>n.type._parseSync(new il(t,e,t.path,r))));return Zc.mergeArray(r,i)}get element(){return this._def.type}min(e,t){return new Tl({...this._def,minLength:{value:e,message:nl.toString(t)}})}max(e,t){return new Tl({...this._def,maxLength:{value:e,message:nl.toString(t)}})}length(e,t){return new Tl({...this._def,exactLength:{value:e,message:nl.toString(t)}})}nonempty(e){return this.min(1,e)}}function Cl(e){if(e instanceof jl){const t={};for(const r in e.shape){const n=e.shape[r];t[r]=Zl.create(Cl(n))}return new jl({...e._def,shape:()=>t})}return e instanceof Tl?new Tl({...e._def,type:Cl(e.element)}):e instanceof Zl?Zl.create(Cl(e.unwrap())):e instanceof Yl?Yl.create(Cl(e.unwrap())):e instanceof Dl?Dl.create(e.items.map((e=>Cl(e)))):e}Tl.create=(e,t)=>new Tl({type:e,minLength:null,maxLength:null,exactLength:null,typeName:au.ZodArray,...al(t)});class jl extends sl{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(null!==this._cached)return this._cached;const e=this._def.shape(),t=zc.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==Uc.object){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.object,received:t.parsedType}),Yc}const{status:t,ctx:r}=this._processInputParams(e),{shape:n,keys:i}=this._getCached(),o=[];if(!(this._def.catchall instanceof Pl&&"strip"===this._def.unknownKeys))for(const s in r.data)i.includes(s)||o.push(s);const a=[];for(const s of i){const e=n[s],t=r.data[s];a.push({key:{status:"valid",value:s},value:e._parse(new il(r,t,r.path,s)),alwaysSet:s in r.data})}if(this._def.catchall instanceof Pl){const e=this._def.unknownKeys;if("passthrough"===e)for(const t of o)a.push({key:{status:"valid",value:t},value:{status:"valid",value:r.data[t]}});else if("strict"===e)o.length>0&&(Gc(r,{code:$c.unrecognized_keys,keys:o}),t.dirty());else if("strip"!==e)throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const e=this._def.catchall;for(const t of o){const n=r.data[t];a.push({key:{status:"valid",value:t},value:e._parse(new il(r,n,r.path,t)),alwaysSet:t in r.data})}}return r.common.async?Promise.resolve().then((async()=>{const e=[];for(const t of a){const r=await t.key;e.push({key:r,value:await t.value,alwaysSet:t.alwaysSet})}return e})).then((e=>Zc.mergeObjectSync(t,e))):Zc.mergeObjectSync(t,a)}get shape(){return this._def.shape()}strict(e){return nl.errToObj,new jl({...this._def,unknownKeys:"strict",...void 0!==e?{errorMap:(t,r)=>{var n,i,o,a;const s=null!==(o=null===(i=(n=this._def).errorMap)||void 0===i?void 0:i.call(n,t,r).message)&&void 0!==o?o:r.defaultError;return"unrecognized_keys"===t.code?{message:null!==(a=nl.errToObj(e).message)&&void 0!==a?a:s}:{message:s}}}:{}})}strip(){return new jl({...this._def,unknownKeys:"strip"})}passthrough(){return new jl({...this._def,unknownKeys:"passthrough"})}extend(e){return new jl({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new jl({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:au.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new jl({...this._def,catchall:e})}pick(e){const t={};return zc.objectKeys(e).forEach((r=>{e[r]&&this.shape[r]&&(t[r]=this.shape[r])})),new jl({...this._def,shape:()=>t})}omit(e){const t={};return zc.objectKeys(this.shape).forEach((r=>{e[r]||(t[r]=this.shape[r])})),new jl({...this._def,shape:()=>t})}deepPartial(){return Cl(this)}partial(e){const t={};return zc.objectKeys(this.shape).forEach((r=>{const n=this.shape[r];e&&!e[r]?t[r]=n:t[r]=n.optional()})),new jl({...this._def,shape:()=>t})}required(e){const t={};return zc.objectKeys(this.shape).forEach((r=>{if(e&&!e[r])t[r]=this.shape[r];else{let e=this.shape[r];for(;e instanceof Zl;)e=e._def.innerType;t[r]=e}})),new jl({...this._def,shape:()=>t})}keyof(){return Vl(zc.objectKeys(this.shape))}}jl.create=(e,t)=>new jl({shape:()=>e,unknownKeys:"strip",catchall:Pl.create(),typeName:au.ZodObject,...al(t)}),jl.strictCreate=(e,t)=>new jl({shape:()=>e,unknownKeys:"strict",catchall:Pl.create(),typeName:au.ZodObject,...al(t)}),jl.lazycreate=(e,t)=>new jl({shape:e,unknownKeys:"strip",catchall:Pl.create(),typeName:au.ZodObject,...al(t)});class Rl extends sl{_parse(e){const{ctx:t}=this._processInputParams(e),r=this._def.options;if(t.common.async)return Promise.all(r.map((async e=>{const r={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:r}),ctx:r}}))).then((function(e){for(const t of e)if("valid"===t.result.status)return t.result;for(const n of e)if("dirty"===n.result.status)return t.common.issues.push(...n.ctx.common.issues),n.result;const r=e.map((e=>new Hc(e.ctx.common.issues)));return Gc(t,{code:$c.invalid_union,unionErrors:r}),Yc}));{let e;const n=[];for(const o of r){const r={...t,common:{...t.common,issues:[]},parent:null},i=o._parseSync({data:t.data,path:t.path,parent:r});if("valid"===i.status)return i;"dirty"!==i.status||e||(e={result:i,ctx:r}),r.common.issues.length&&n.push(r.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;const i=n.map((e=>new Hc(e)));return Gc(t,{code:$c.invalid_union,unionErrors:i}),Yc}}get options(){return this._def.options}}Rl.create=(e,t)=>new Rl({options:e,typeName:au.ZodUnion,...al(t)});const Il=e=>e instanceof $l?Il(e.schema):e instanceof Gl?Il(e.innerType()):e instanceof Hl?[e.value]:e instanceof ql?e.options:e instanceof Kl?Object.keys(e.enum):e instanceof Xl?Il(e._def.innerType):e instanceof Sl?[void 0]:e instanceof kl?[null]:null;class Ml extends sl{_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==Uc.object)return Gc(t,{code:$c.invalid_type,expected:Uc.object,received:t.parsedType}),Yc;const r=this.discriminator,n=t.data[r],i=this.optionsMap.get(n);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(Gc(t,{code:$c.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),Yc)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,r){const n=new Map;for(const i of t){const t=Il(i.shape[e]);if(!t)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(const r of t){if(n.has(r))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(r)}`);n.set(r,i)}}return new Ml({typeName:au.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:n,...al(r)})}}function Ll(e,t){const r=Fc(e),n=Fc(t);if(e===t)return{valid:!0,data:e};if(r===Uc.object&&n===Uc.object){const r=zc.objectKeys(t),n=zc.objectKeys(e).filter((e=>-1!==r.indexOf(e))),i={...e,...t};for(const o of n){const r=Ll(e[o],t[o]);if(!r.valid)return{valid:!1};i[o]=r.data}return{valid:!0,data:i}}if(r===Uc.array&&n===Uc.array){if(e.length!==t.length)return{valid:!1};const r=[];for(let n=0;n{if(Qc(e)||Qc(n))return Yc;const i=Ll(e.value,n.value);return i.valid?((el(e)||el(n))&&t.dirty(),{status:t.value,value:i.data}):(Gc(r,{code:$c.invalid_intersection_types}),Yc)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then((([e,t])=>n(e,t))):n(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}Nl.create=(e,t,r)=>new Nl({left:e,right:t,typeName:au.ZodIntersection,...al(r)});class Dl extends sl{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Uc.array)return Gc(r,{code:$c.invalid_type,expected:Uc.array,received:r.parsedType}),Yc;if(r.data.lengththis._def.items.length&&(Gc(r,{code:$c.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());const n=[...r.data].map(((e,t)=>{const n=this._def.items[t]||this._def.rest;return n?n._parse(new il(r,e,r.path,t)):null})).filter((e=>!!e));return r.common.async?Promise.all(n).then((e=>Zc.mergeArray(t,e))):Zc.mergeArray(t,n)}get items(){return this._def.items}rest(e){return new Dl({...this._def,rest:e})}}Dl.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Dl({items:e,typeName:au.ZodTuple,rest:null,...al(t)})};class zl extends sl{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Uc.object)return Gc(r,{code:$c.invalid_type,expected:Uc.object,received:r.parsedType}),Yc;const n=[],i=this._def.keyType,o=this._def.valueType;for(const a in r.data)n.push({key:i._parse(new il(r,a,r.path,a)),value:o._parse(new il(r,r.data[a],r.path,a))});return r.common.async?Zc.mergeObjectAsync(t,n):Zc.mergeObjectSync(t,n)}get element(){return this._def.valueType}static create(e,t,r){return new zl(t instanceof sl?{keyType:e,valueType:t,typeName:au.ZodRecord,...al(r)}:{keyType:gl.create(),valueType:e,typeName:au.ZodRecord,...al(t)})}}class Bl extends sl{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Uc.map)return Gc(r,{code:$c.invalid_type,expected:Uc.map,received:r.parsedType}),Yc;const n=this._def.keyType,i=this._def.valueType,o=[...r.data.entries()].map((([e,t],o)=>({key:n._parse(new il(r,e,r.path,[o,"key"])),value:i._parse(new il(r,t,r.path,[o,"value"]))})));if(r.common.async){const e=new Map;return Promise.resolve().then((async()=>{for(const r of o){const n=await r.key,i=await r.value;if("aborted"===n.status||"aborted"===i.status)return Yc;"dirty"!==n.status&&"dirty"!==i.status||t.dirty(),e.set(n.value,i.value)}return{status:t.value,value:e}}))}{const e=new Map;for(const r of o){const n=r.key,i=r.value;if("aborted"===n.status||"aborted"===i.status)return Yc;"dirty"!==n.status&&"dirty"!==i.status||t.dirty(),e.set(n.value,i.value)}return{status:t.value,value:e}}}}Bl.create=(e,t,r)=>new Bl({valueType:t,keyType:e,typeName:au.ZodMap,...al(r)});class Ul extends sl{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.parsedType!==Uc.set)return Gc(r,{code:$c.invalid_type,expected:Uc.set,received:r.parsedType}),Yc;const n=this._def;null!==n.minSize&&r.data.sizen.maxSize.value&&(Gc(r,{code:$c.too_big,maximum:n.maxSize.value,type:"set",inclusive:!0,exact:!1,message:n.maxSize.message}),t.dirty());const i=this._def.valueType;function o(e){const r=new Set;for(const n of e){if("aborted"===n.status)return Yc;"dirty"===n.status&&t.dirty(),r.add(n.value)}return{status:t.value,value:r}}const a=[...r.data.values()].map(((e,t)=>i._parse(new il(r,e,r.path,t))));return r.common.async?Promise.all(a).then((e=>o(e))):o(a)}min(e,t){return new Ul({...this._def,minSize:{value:e,message:nl.toString(t)}})}max(e,t){return new Ul({...this._def,maxSize:{value:e,message:nl.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}}Ul.create=(e,t)=>new Ul({valueType:e,minSize:null,maxSize:null,typeName:au.ZodSet,...al(t)});class Fl extends sl{constructor(){super(...arguments),this.validate=this.implement}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==Uc.function)return Gc(t,{code:$c.invalid_type,expected:Uc.function,received:t.parsedType}),Yc;function r(e,r){return Wc({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Kc(),Vc].filter((e=>!!e)),issueData:{code:$c.invalid_arguments,argumentsError:r}})}function n(e,r){return Wc({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Kc(),Vc].filter((e=>!!e)),issueData:{code:$c.invalid_return_type,returnTypeError:r}})}const i={errorMap:t.common.contextualErrorMap},o=t.data;if(this._def.returns instanceof Wl){const e=this;return Jc((async function(...t){const a=new Hc([]),s=await e._def.args.parseAsync(t,i).catch((e=>{throw a.addIssue(r(t,e)),a})),c=await Reflect.apply(o,this,s),l=await e._def.returns._def.type.parseAsync(c,i).catch((e=>{throw a.addIssue(n(c,e)),a}));return l}))}{const e=this;return Jc((function(...t){const a=e._def.args.safeParse(t,i);if(!a.success)throw new Hc([r(t,a.error)]);const s=Reflect.apply(o,this,a.data),c=e._def.returns.safeParse(s,i);if(!c.success)throw new Hc([n(s,c.error)]);return c.data}))}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new Fl({...this._def,args:Dl.create(e).rest(Al.create())})}returns(e){return new Fl({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,r){return new Fl({args:e||Dl.create([]).rest(Al.create()),returns:t||Al.create(),typeName:au.ZodFunction,...al(r)})}}class $l extends sl{get schema(){return this._def.getter()}_parse(e){const{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}}$l.create=(e,t)=>new $l({getter:e,typeName:au.ZodLazy,...al(t)});class Hl extends sl{_parse(e){if(e.data!==this._def.value){const t=this._getOrReturnCtx(e);return Gc(t,{received:t.data,code:$c.invalid_literal,expected:this._def.value}),Yc}return{status:"valid",value:e.data}}get value(){return this._def.value}}function Vl(e,t){return new ql({values:e,typeName:au.ZodEnum,...al(t)})}Hl.create=(e,t)=>new Hl({value:e,typeName:au.ZodLiteral,...al(t)});class ql extends sl{_parse(e){if("string"!==typeof e.data){const t=this._getOrReturnCtx(e),r=this._def.values;return Gc(t,{expected:zc.joinValues(r),received:t.parsedType,code:$c.invalid_type}),Yc}if(-1===this._def.values.indexOf(e.data)){const t=this._getOrReturnCtx(e),r=this._def.values;return Gc(t,{received:t.data,code:$c.invalid_enum_value,options:r}),Yc}return Jc(e.data)}get options(){return this._def.values}get enum(){const e={};for(const t of this._def.values)e[t]=t;return e}get Values(){const e={};for(const t of this._def.values)e[t]=t;return e}get Enum(){const e={};for(const t of this._def.values)e[t]=t;return e}extract(e){return ql.create(e)}exclude(e){return ql.create(this.options.filter((t=>!e.includes(t))))}}ql.create=Vl;class Kl extends sl{_parse(e){const t=zc.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(e);if(r.parsedType!==Uc.string&&r.parsedType!==Uc.number){const e=zc.objectValues(t);return Gc(r,{expected:zc.joinValues(e),received:r.parsedType,code:$c.invalid_type}),Yc}if(-1===t.indexOf(e.data)){const e=zc.objectValues(t);return Gc(r,{received:r.data,code:$c.invalid_enum_value,options:e}),Yc}return Jc(e.data)}get enum(){return this._def.values}}Kl.create=(e,t)=>new Kl({values:e,typeName:au.ZodNativeEnum,...al(t)});class Wl extends sl{unwrap(){return this._def.type}_parse(e){const{ctx:t}=this._processInputParams(e);if(t.parsedType!==Uc.promise&&!1===t.common.async)return Gc(t,{code:$c.invalid_type,expected:Uc.promise,received:t.parsedType}),Yc;const r=t.parsedType===Uc.promise?t.data:Promise.resolve(t.data);return Jc(r.then((e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap}))))}}Wl.create=(e,t)=>new Wl({type:e,typeName:au.ZodPromise,...al(t)});class Gl extends sl{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===au.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){const{status:t,ctx:r}=this._processInputParams(e),n=this._def.effect||null,i={addIssue:e=>{Gc(r,e),e.fatal?t.abort():t.dirty()},get path(){return r.path}};if(i.addIssue=i.addIssue.bind(i),"preprocess"===n.type){const e=n.transform(r.data,i);return r.common.issues.length?{status:"dirty",value:r.data}:r.common.async?Promise.resolve(e).then((e=>this._def.schema._parseAsync({data:e,path:r.path,parent:r}))):this._def.schema._parseSync({data:e,path:r.path,parent:r})}if("refinement"===n.type){const e=e=>{const t=n.refinement(e,i);if(r.common.async)return Promise.resolve(t);if(t instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return e};if(!1===r.common.async){const n=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return"aborted"===n.status?Yc:("dirty"===n.status&&t.dirty(),e(n.value),{status:t.value,value:n.value})}return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then((r=>"aborted"===r.status?Yc:("dirty"===r.status&&t.dirty(),e(r.value).then((()=>({status:t.value,value:r.value}))))))}if("transform"===n.type){if(!1===r.common.async){const e=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!tl(e))return e;const o=n.transform(e.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:o}}return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then((e=>tl(e)?Promise.resolve(n.transform(e.value,i)).then((e=>({status:t.value,value:e}))):e))}zc.assertNever(n)}}Gl.create=(e,t,r)=>new Gl({schema:e,typeName:au.ZodEffects,effect:t,...al(r)}),Gl.createWithPreprocess=(e,t,r)=>new Gl({schema:t,effect:{type:"preprocess",transform:e},typeName:au.ZodEffects,...al(r)});class Zl extends sl{_parse(e){return this._getType(e)===Uc.undefined?Jc(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Zl.create=(e,t)=>new Zl({innerType:e,typeName:au.ZodOptional,...al(t)});class Yl extends sl{_parse(e){return this._getType(e)===Uc.null?Jc(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}}Yl.create=(e,t)=>new Yl({innerType:e,typeName:au.ZodNullable,...al(t)});class Xl extends sl{_parse(e){const{ctx:t}=this._processInputParams(e);let r=t.data;return t.parsedType===Uc.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:t.path,parent:t})}removeDefault(){return this._def.innerType}}Xl.create=(e,t)=>new Xl({innerType:e,typeName:au.ZodDefault,defaultValue:"function"===typeof t.default?t.default:()=>t.default,...al(t)});class Jl extends sl{_parse(e){const{ctx:t}=this._processInputParams(e),r={...t,common:{...t.common,issues:[]}},n=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return rl(n)?n.then((e=>({status:"valid",value:"valid"===e.status?e.value:this._def.catchValue({get error(){return new Hc(r.common.issues)},input:r.data})}))):{status:"valid",value:"valid"===n.status?n.value:this._def.catchValue({get error(){return new Hc(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}Jl.create=(e,t)=>new Jl({innerType:e,typeName:au.ZodCatch,catchValue:"function"===typeof t.catch?t.catch:()=>t.catch,...al(t)});class Ql extends sl{_parse(e){if(this._getType(e)!==Uc.nan){const t=this._getOrReturnCtx(e);return Gc(t,{code:$c.invalid_type,expected:Uc.nan,received:t.parsedType}),Yc}return{status:"valid",value:e.data}}}Ql.create=e=>new Ql({typeName:au.ZodNaN,...al(e)});const eu=Symbol("zod_brand");class tu extends sl{_parse(e){const{ctx:t}=this._processInputParams(e),r=t.data;return this._def.type._parse({data:r,path:t.path,parent:t})}unwrap(){return this._def.type}}class ru extends sl{_parse(e){const{status:t,ctx:r}=this._processInputParams(e);if(r.common.async){return(async()=>{const e=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return"aborted"===e.status?Yc:"dirty"===e.status?(t.dirty(),Xc(e.value)):this._def.out._parseAsync({data:e.value,path:r.path,parent:r})})()}{const e=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return"aborted"===e.status?Yc:"dirty"===e.status?(t.dirty(),{status:"dirty",value:e.value}):this._def.out._parseSync({data:e.value,path:r.path,parent:r})}}static create(e,t){return new ru({in:e,out:t,typeName:au.ZodPipeline})}}class nu extends sl{_parse(e){const t=this._def.innerType._parse(e);return tl(t)&&(t.value=Object.freeze(t.value)),t}}nu.create=(e,t)=>new nu({innerType:e,typeName:au.ZodReadonly,...al(t)});const iu=(e,t={},r)=>e?El.create().superRefine(((n,i)=>{var o,a;if(!e(n)){const e="function"===typeof t?t(n):"string"===typeof t?{message:t}:t,s=null===(a=null!==(o=e.fatal)&&void 0!==o?o:r)||void 0===a||a,c="string"===typeof e?{message:e}:e;i.addIssue({code:"custom",...c,fatal:s})}})):El.create(),ou={object:jl.lazycreate};var au;!function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"}(au||(au={}));const su=gl.create,cu=yl.create,lu=Ql.create,uu=bl.create,du=wl.create,hu=xl.create,fu=_l.create,pu=Sl.create,mu=kl.create,gu=El.create,vu=Al.create,yu=Pl.create,bu=Ol.create,wu=Tl.create,xu=jl.create,_u=jl.strictCreate,Su=Rl.create,ku=Ml.create,Eu=Nl.create,Au=Dl.create,Pu=zl.create,Ou=Bl.create,Tu=Ul.create,Cu=Fl.create,ju=$l.create,Ru=Hl.create,Iu=ql.create,Mu=Kl.create,Lu=Wl.create,Nu=Gl.create,Du=Zl.create,zu=Yl.create,Bu=Gl.createWithPreprocess,Uu=ru.create,Fu={string:e=>gl.create({...e,coerce:!0}),number:e=>yl.create({...e,coerce:!0}),boolean:e=>wl.create({...e,coerce:!0}),bigint:e=>bl.create({...e,coerce:!0}),date:e=>xl.create({...e,coerce:!0})},$u=Yc;var Hu=Object.freeze({__proto__:null,defaultErrorMap:Vc,setErrorMap:function(e){qc=e},getErrorMap:Kc,makeIssue:Wc,EMPTY_PATH:[],addIssueToContext:Gc,ParseStatus:Zc,INVALID:Yc,DIRTY:Xc,OK:Jc,isAborted:Qc,isDirty:el,isValid:tl,isAsync:rl,get util(){return zc},get objectUtil(){return Bc},ZodParsedType:Uc,getParsedType:Fc,ZodType:sl,ZodString:gl,ZodNumber:yl,ZodBigInt:bl,ZodBoolean:wl,ZodDate:xl,ZodSymbol:_l,ZodUndefined:Sl,ZodNull:kl,ZodAny:El,ZodUnknown:Al,ZodNever:Pl,ZodVoid:Ol,ZodArray:Tl,ZodObject:jl,ZodUnion:Rl,ZodDiscriminatedUnion:Ml,ZodIntersection:Nl,ZodTuple:Dl,ZodRecord:zl,ZodMap:Bl,ZodSet:Ul,ZodFunction:Fl,ZodLazy:$l,ZodLiteral:Hl,ZodEnum:ql,ZodNativeEnum:Kl,ZodPromise:Wl,ZodEffects:Gl,ZodTransformer:Gl,ZodOptional:Zl,ZodNullable:Yl,ZodDefault:Xl,ZodCatch:Jl,ZodNaN:Ql,BRAND:eu,ZodBranded:tu,ZodPipeline:ru,ZodReadonly:nu,custom:iu,Schema:sl,ZodSchema:sl,late:ou,get ZodFirstPartyTypeKind(){return au},coerce:Fu,any:gu,array:wu,bigint:uu,boolean:du,date:hu,discriminatedUnion:ku,effect:Nu,enum:Iu,function:Cu,instanceof:(e,t={message:`Input not instance of ${e.name}`})=>iu((t=>t instanceof e),t),intersection:Eu,lazy:ju,literal:Ru,map:Ou,nan:lu,nativeEnum:Mu,never:yu,null:mu,nullable:zu,number:cu,object:xu,oboolean:()=>du().optional(),onumber:()=>cu().optional(),optional:Du,ostring:()=>su().optional(),pipeline:Uu,preprocess:Bu,promise:Lu,record:Pu,set:Tu,strictObject:_u,string:su,symbol:fu,transformer:Nu,tuple:Au,undefined:pu,union:Su,unknown:vu,void:bu,NEVER:$u,ZodIssueCode:$c,quotelessJson:e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,"$1:"),ZodError:Hc});const Vu=Hu.object({address:Hu.string()}),qu=e=>{if(Wu(e))return Zu(e);if(Gu(e))return Yu(e);throw new Error(`Cannot parse address type: ${e}`)},Ku=e=>oc(e)===Zs.VALID,Wu=e=>Ku(e)&&e.match(/^KT1\w+/),Gu=e=>Ku(e)&&e.match(/^tz[1234]\w+/),Zu=e=>{if(Wu(e))return{type:"contract",pkh:e};throw new Error(`Invalid contract address: ${e}`)},Yu=e=>{if(Gu(e))return{type:"implicit",pkh:e};throw new Error(`Invalid implicit address: ${e}`)},Xu=Hu.object({standard:Hu.string().regex(/^fa1\.2$/i),contract:Vu}),Ju=Hu.object({standard:Hu.string().regex(/^fa2$/i),tokenId:Hu.string(),contract:Vu}),Qu=Hu.object({id:Hu.number(),standard:Hu.string().regex(/^fa2$/i),tokenId:Hu.string(),contract:Vu,totalSupply:Hu.string().optional(),metadata:Hu.object({displayUri:Hu.string(),decimals:Hu.void().or(Hu.string().regex(/^0$/))})}),ed=e=>{const t=e.metadata;if("fa1.2"===e.standard){const r=Xu.safeParse(e);return r.success?{type:"fa1.2",metadata:t,contract:r.data.contract.address,tokenId:"0"}:(console.warn("Invalid FA1 token: "+JSON.stringify(e)),null)}const r=Qu.safeParse(e);if(r.success)return{metadata:t,type:"nft",id:r.data.id,contract:r.data.contract.address,tokenId:r.data.tokenId,displayUri:r.data.metadata.displayUri,totalSupply:r.data.totalSupply};const n=Ju.safeParse(e);return n.success?{type:"fa2",metadata:t,contract:n.data.contract.address,tokenId:n.data.tokenId}:(console.warn("Invalid FA2 token: "+JSON.stringify(e)),null)},td=e=>`${e.contract}:${e.tokenId}`,rd=e=>nd(e)||(e=>{switch(e.type){case"fa1.2":return md;case"fa2":return gd;case"nft":return vd}})(e),nd=e=>{var t;return null===(t=e.metadata)||void 0===t?void 0:t.name},id=e=>od(e)||(e=>{switch(e.type){case"fa1.2":return yd;case"fa2":return bd;case"nft":return wd}})(e),od=e=>{var t;return null===(t=e.metadata)||void 0===t?void 0:t.symbol},ad=e=>{var t,r;return null!==(t=null===(r=e.metadata)||void 0===r?void 0:r.decimals)&&void 0!==t?t:xd},sd=(e,t)=>{const r=new Us(t),n=ad(e);return r.multipliedBy(new Us(10).exponentiatedBy(n)).toFixed()},cd=(e,t=xd)=>{const r=Us(e).dividedBy(Us(10).pow(t));try{return new Intl.NumberFormat("en-US",{minimumFractionDigits:Number(t),maximumFractionDigits:Number(t)}).format(r.toNumber())}catch(n){return console.warn(`Can't format token amount with decimals = ${t}`),cd(e,"0")}},ld=(e,t,r)=>{var n;if("nft"===t.type)return e;const i=id(t),o=null===(n=t.metadata)||void 0===n?void 0:n.decimals,a=null!==r&&void 0!==r&&r.showSymbol?` ${i}`:"";return`${cd(e,o)}${a}`},ud=e=>e.metadata.artifactUri||e.displayUri,dd=e=>e.metadata.thumbnailUri||e.displayUri,hd=e=>{var t,r;return null===(t=e.metadata.formats)||void 0===t||null===(r=t.find((t=>t.uri===ud(e))))||void 0===r?void 0:r.mimeType},fd=(e,t)=>`${pd(e,t)}/metadata`,pd=({contract:e,tokenId:t},r)=>`${r.tzktExplorerUrl}/${e}/tokens/${t}`,md="FA1.2 token",gd="FA2 token",vd="NFT",yd="FA1.2",bd="FA2",wd="NFT",xd="0",_d=e=>{const t=ed(e.token);return t&&e.balance?{balance:e.balance,lastLevel:e.lastLevel,...t}:null},Sd={blockLevel:null,balances:{mutez:{},tokens:{}},transfers:{tez:{},tokens:{}},delegationLevels:{},bakers:[],conversionRate:null,refetchTrigger:0,isLoading:!1,lastTimeUpdated:null},kd=ra({name:"assets",initialState:Sd,extraReducers:e=>e.addCase(Nc.actions.reset,(()=>Sd)),reducers:{reset:()=>Sd,updateBlockLevel:(e,{payload:t})=>{e.blockLevel=t},updateTokenTransfers:(e,{payload:t})=>{t.forEach((t=>{e.transfers.tokens[t.transactionId]=t}))},updateTezBalance:(e,{payload:t})=>{e.balances.mutez=t.reduce(((e,t)=>({...e,[t.address]:String(t.balance)})),{}),e.delegationLevels=t.reduce(((e,t)=>({...e,[t.address]:t.delegationLevel})),{})},updateTokenBalance:(e,{payload:t})=>{const r=(0,Va.groupBy)(t,(e=>e.account.address));e.balances.tokens=(0,Va.mapValues)(r,(e=>(0,Va.compact)(e.map(_d)).map((({balance:e,contract:t,tokenId:r,lastLevel:n})=>({balance:e,contract:t,tokenId:r,lastLevel:n})))))},updateBakers:(e,{payload:t})=>{e.bakers=t},updateConversionRate:(e,{payload:{rate:t}})=>{e.conversionRate=t},refetch:e=>{e.refetchTrigger+=1},setIsLoading:(e,{payload:t})=>{e.isLoading=t},setLastTimeUpdated:(e,{payload:t})=>{e.lastTimeUpdated=t}}}),Ed=kd.actions,Ad={name:"mainnet",rpcUrl:"https://prod.tcinfra.net/rpc/mainnet/",tzktApiUrl:"https://api.mainnet.tzkt.io",tzktExplorerUrl:"https://tzkt.io",buyTezUrl:"https://widget.wert.io"},Pd=e=>Od.map((e=>e.name)).includes(e.name),Od=[Ad,{name:"ghostnet",rpcUrl:"https://ghostnet.ecadinfra.com",tzktApiUrl:"https://api.ghostnet.tzkt.io",tzktExplorerUrl:"https://ghostnet.tzkt.io",buyTezUrl:"https://faucet.ghostnet.teztnets.xyz/"}],Td=(0,Va.fromPairs)(Od.map((e=>[e.name,[]]))),Cd=ra({name:"batches",initialState:Td,reducers:{reset:()=>Td,add:(e,{payload:{operations:t,network:r}})=>{r.name in e||(e[r.name]=[]);const n=e[r.name],i=n.find((e=>e.sender.address.pkh===t.sender.address.pkh));i?i.operations.push(...t.operations):n.push(t)},clear:(e,{payload:{pkh:t,network:r}})=>{const n=e[r.name]||[],i=(0,Va.findIndex)(n,(e=>e.sender.address.pkh===t));-1!==i&&n.splice(i,1)},removeItem:(e,{payload:{pkh:t,index:r,network:n}})=>{const i=e[n.name]||[],o=(0,Va.findIndex)(i,(e=>e.sender.address.pkh===t));if(-1===o)return;const a=i[o];rRd,addConnection:(e,{payload:t})=>{e[t.dAppId]={accountPkh:t.accountPkh,networkType:t.networkType}},removeConnection:(e,{payload:t})=>{delete e[t.dAppId]}}}),Md=(Id.actions,(e,t)=>Object.values(e).map((e=>e.name)).includes(t)),Ld={},Nd=ra({name:"contacts",initialState:Ld,reducers:{reset:()=>Ld,upsert:(e,{payload:t})=>{Md(e,t.name)||(e[t.pkh]=t)},remove:(e,{payload:t})=>{delete e[t]}}}),Dd=Nd.actions,zd=[],Bd=ra({name:"errors",initialState:zd,reducers:{reset:()=>zd,add(e,{payload:t}){100===e.length&&e.shift(),e.push(t)}}}),Ud={items:[],pendingOperations:{},labelsMap:{}},Fd=ra({name:"multisigs",initialState:Ud,reducers:{reset:()=>Ud,setMultisigs:(e,{payload:t})=>{const r=(0,Va.fromPairs)(e.items.map((e=>[e.address.pkh,e.label])));e.items=t.map(((t,n)=>({...t,label:r[t.address.pkh]||e.labelsMap[t.address.pkh]||`Multisig Account ${n}`,type:"multisig"})))},addMultisigLabel:(e,{payload:{pkh:t,label:r}})=>{e.labelsMap[t]=r},setPendingOperations:(e,{payload:t})=>{e.pendingOperations=(0,Va.groupBy)(t,(e=>e.bigmapId))},setName:(e,{payload:t})=>{const{account:{address:{pkh:r}},newName:n}=t,i=e.items.find((e=>e.address.pkh===r));i&&(i.label=n)}}}),$d=Fd.actions,Hd={available:Od,current:Ad},Vd=ra({name:"networks",initialState:Hd,reducers:{reset:()=>Hd,setCurrent:(e,{payload:t})=>{e.current=t},upsertNetwork:(e,{payload:t})=>{if(Pd(t))return;const r=e.available.findIndex((e=>e.name===t.name));e.current.name===t.name&&(e.current=t),-1===r?e.available.push(t):e.available[r]=t},removeNetwork:(e,{payload:t})=>{Pd(t)||(0,Va.remove)(e.available,(e=>e.name===t.name))}}}),qd=Vd.actions,Kd=(0,Va.fromPairs)(Od.map((e=>[e.name,{}]))),Wd=ra({name:"tokens",initialState:Kd,reducers:{reset:()=>Kd,addTokens:(e,{payload:{network:t,tokens:r}})=>{(0,Va.compact)(r.map(ed)).forEach((r=>{(0,Va.setWith)(e,[t.name,r.contract,r.tokenId],r,Object)}))}}}),Gd=Wd.actions,Zd={key:"root",version:1,storage:Ua.Z,blacklist:["accounts"],migrate:function(e,t){return(t||{}).debug,function(t,r){if(!t)return Promise.resolve(void 0);var n=t._persist&&void 0!==t._persist.version?t._persist.version:-1;if(n===r)return Promise.resolve(t);if(n>r)return Promise.resolve(t);var i=Object.keys(e).map((function(e){return parseInt(e)})).filter((function(e){return r>=e&&e>n})).sort((function(e,t){return e-t}));try{var o=i.reduce((function(t,r){return e[r](t)}),t);return Promise.resolve(o)}catch(a){return Promise.reject(a)}}}(Ha,{debug:!1})},Yd=To({accounts:Ia({key:"accounts",version:1,storage:Ua.Z},Nc.reducer),announcement:$a.reducer,assets:kd.reducer,batches:Cd.reducer,beacon:Id.reducer,contacts:Nd.reducer,errors:Bd.reducer,multisigs:Fd.reducer,networks:Vd.reducer,tokens:Wd.reducer}),Xd=function(e){var t,r=ea(),n=e||{},i=n.reducer,o=void 0===i?void 0:i,a=n.middleware,s=void 0===a?r():a,c=n.devTools,l=void 0===c||c,u=n.preloadedState,d=void 0===u?void 0:u,h=n.enhancers,f=void 0===h?void 0:h;if("function"===typeof o)t=o;else{if(!Zo(o))throw new Error('"reducer" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');t=To(o)}var p=s;"function"===typeof p&&(p=p(r));var m=jo.apply(void 0,p),g=Co;l&&(g=Go(qo({trace:!1},"object"===typeof l&&l)));var v=new Jo(m),y=v;return Array.isArray(f)?y=Do([m],f):"function"===typeof f&&(y=f(v)),Oo(t,d,g.apply(void 0,y))}({reducer:Ia(Zd,Yd),middleware:e=>e({serializableCheck:{ignoredActions:[pa,ma,ga,va,ya,ba]}})}),Jd=e=>(0,ln.jsx)(ui,{store:Xd,children:e.children});var Qd=String.raw,eh=Qd` :root, :host { --chakra-vh: 100vh; @@ -25,7 +25,7 @@ --chakra-vh: 100dvh; } } -`,th=()=>(0,Yn.jsx)(mi,{styles:eh}),rh=({scope:e=""})=>(0,Yn.jsx)(mi,{styles:Qd` +`,th=()=>(0,ln.jsx)(On,{styles:eh}),rh=({scope:e=""})=>(0,ln.jsx)(On,{styles:Qd` html { line-height: 1.5; -webkit-text-size-adjust: 100%; @@ -278,5 +278,5 @@ } ${eh} - `}),[nh,ih]=di({strict:!1,name:"PortalManagerContext"});function oh(e){const{children:t,zIndex:r}=e;return(0,Yn.jsx)(nh,{value:{zIndex:r},children:t})}function ah(e={}){const{strict:t=!0,errorMessage:r="useContext: `context` is undefined. Seems you forgot to wrap component within the Provider",name:i}=e,o=(0,n.createContext)(void 0);return o.displayName=i,[o.Provider,function e(){var i;const a=(0,n.useContext)(o);if(!a&&t){const t=new Error(r);throw t.name="ContextError",null==(i=Error.captureStackTrace)||i.call(Error,t,e),t}return a},o]}function sh(e){const{cssVarsRoot:t,theme:r,children:i}=e,o=(0,n.useMemo)((()=>Bt(r)),[r]);return(0,Yn.jsxs)(Nn,{theme:o,children:[(0,Yn.jsx)(ch,{root:t}),i]})}function ch({root:e=":host, :root"}){const t=[e,"[data-theme]"].join(",");return(0,Yn.jsx)(mi,{styles:e=>({[t]:e.__cssVars})})}oh.displayName="PortalManager";var[lh,uh]=ah({name:"StylesContext",errorMessage:"useStyles: `styles` is undefined. Seems you forgot to wrap the components in `` "});function dh(){const{colorMode:e}=ir();return(0,Yn.jsx)(mi,{styles:t=>{const r=cr(or(t,"styles.global"),{theme:t,colorMode:e});if(!r)return;return Zt(r)(t)}})}var hh={light:"chakra-ui-light",dark:"chakra-ui-dark"};var fh="chakra-ui-color-mode";var ph,mh=(ph=fh,{ssr:!1,type:"localStorage",get(e){if(!(null==globalThis?void 0:globalThis.document))return e;let t;try{t=localStorage.getItem(ph)||e}catch(r){}return t||e},set(e){try{localStorage.setItem(ph,e)}catch(t){}}});function gh(e,t){const r=e.match(new RegExp(`(^| )${t}=([^;]+)`));return null==r?void 0:r[2]}function vh(e,t){return{ssr:!!t,type:"cookie",get:r=>t?gh(t,e):(null==globalThis?void 0:globalThis.document)&&gh(document.cookie,e)||r,set(t){document.cookie=`${e}=${t}; max-age=31536000; path=/`}}}vh(fh);var yh=Boolean(null==globalThis?void 0:globalThis.document)?n.useLayoutEffect:n.useEffect,bh=()=>{};function wh(e,t){return"cookie"===e.type&&e.ssr?e.get(t):t}function xh(e){const{value:t,children:r,options:{useSystemColorMode:i,initialColorMode:o,disableTransitionOnChange:a}={},colorModeManager:s=mh}=e,c="dark"===o?"dark":"light",[l,u]=(0,n.useState)((()=>wh(s,c))),[d,h]=(0,n.useState)((()=>wh(s))),{getSystemTheme:f,setClassName:p,setDataset:m,addListener:g}=(0,n.useMemo)((()=>function(e={}){const{preventTransition:t=!0}=e,r={setDataset:e=>{const n=t?r.preventTransition():void 0;document.documentElement.dataset.theme=e,document.documentElement.style.colorScheme=e,null==n||n()},setClassName(e){document.body.classList.add(e?hh.dark:hh.light),document.body.classList.remove(e?hh.light:hh.dark)},query:()=>window.matchMedia("(prefers-color-scheme: dark)"),getSystemTheme(e){var t;return(null!=(t=r.query().matches)?t:"dark"===e)?"dark":"light"},addListener(e){const t=r.query(),n=t=>{e(t.matches?"dark":"light")};return"function"===typeof t.addListener?t.addListener(n):t.addEventListener("change",n),()=>{"function"===typeof t.removeListener?t.removeListener(n):t.removeEventListener("change",n)}},preventTransition(){const e=document.createElement("style");return e.appendChild(document.createTextNode("*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(e),()=>{window.getComputedStyle(document.body),requestAnimationFrame((()=>{requestAnimationFrame((()=>{document.head.removeChild(e)}))}))}}};return r}({preventTransition:a})),[a]),v="system"!==o||l?l:d,y=(0,n.useCallback)((e=>{const t="system"===e?f():e;u(t),p("dark"===t),m(t),s.set(t)}),[s,f,p,m]);yh((()=>{"system"===o&&h(f())}),[]),(0,n.useEffect)((()=>{const e=s.get();y(e||("system"!==o?c:"system"))}),[s,c,o,y]);const b=(0,n.useCallback)((()=>{y("dark"===v?"light":"dark")}),[v,y]);(0,n.useEffect)((()=>{if(i)return g(y)}),[i,g,y]);const w=(0,n.useMemo)((()=>({colorMode:null!=t?t:v,toggleColorMode:t?bh:b,setColorMode:t?bh:y,forced:void 0!==t})),[v,b,y,t]);return(0,Yn.jsx)(nr.Provider,{value:w,children:r})}xh.displayName="ColorModeProvider";var _h=(0,n.createContext)({getDocument:()=>document,getWindow:()=>window});function Sh(e){const{children:t,environment:r,disabled:i}=e,o=(0,n.useRef)(null),a=(0,n.useMemo)((()=>r||{getDocument:()=>{var e,t;return null!=(t=null==(e=o.current)?void 0:e.ownerDocument)?t:document},getWindow:()=>{var e,t;return null!=(t=null==(e=o.current)?void 0:e.ownerDocument.defaultView)?t:window}}),[r]),s=!i||!r;return(0,Yn.jsxs)(_h.Provider,{value:a,children:[t,s&&(0,Yn.jsx)("span",{id:"__chakra_env",hidden:!0,ref:o})]})}_h.displayName="EnvironmentContext",Sh.displayName="EnvironmentProvider";var kh=e=>{const{children:t,colorModeManager:r,portalZIndex:n,resetScope:i,resetCSS:o=!0,theme:a={},environment:s,cssVarsRoot:c,disableEnvironment:l,disableGlobalStyle:u}=e,d=(0,Yn.jsx)(Sh,{environment:s,disabled:l,children:t});return(0,Yn.jsx)(sh,{theme:a,cssVarsRoot:c,children:(0,Yn.jsxs)(xh,{colorModeManager:r,options:a.config,children:[o?(0,Yn.jsx)(rh,{scope:i}):(0,Yn.jsx)(th,{}),!u&&(0,Yn.jsx)(dh,{}),n?(0,Yn.jsx)(oh,{zIndex:n,children:d}):d]})})},Eh={property:{common:"background-color, border-color, color, fill, stroke, opacity, box-shadow, transform",colors:"background-color, border-color, color, fill, stroke",dimensions:"width, height",position:"left, right, top, bottom",background:"background-color, background-image, background-position"},easing:{"ease-in":"cubic-bezier(0.4, 0, 1, 1)","ease-out":"cubic-bezier(0, 0, 0.2, 1)","ease-in-out":"cubic-bezier(0.4, 0, 0.2, 1)"},duration:{"ultra-fast":"50ms",faster:"100ms",fast:"150ms",normal:"200ms",slow:"300ms",slower:"400ms","ultra-slow":"500ms"}},Ah={hide:-1,auto:"auto",base:0,docked:10,dropdown:1e3,sticky:1100,banner:1200,overlay:1300,modal:1400,popover:1500,skipLink:1600,toast:1700,tooltip:1800},Ph={none:0,"1px":"1px solid","2px":"2px solid","4px":"4px solid","8px":"8px solid"},Oh={base:"0em",sm:"30em",md:"48em",lg:"62em",xl:"80em","2xl":"96em"},Th={transparent:"transparent",current:"currentColor",black:"#000000",white:"#FFFFFF",whiteAlpha:{50:"rgba(255, 255, 255, 0.04)",100:"rgba(255, 255, 255, 0.06)",200:"rgba(255, 255, 255, 0.08)",300:"rgba(255, 255, 255, 0.16)",400:"rgba(255, 255, 255, 0.24)",500:"rgba(255, 255, 255, 0.36)",600:"rgba(255, 255, 255, 0.48)",700:"rgba(255, 255, 255, 0.64)",800:"rgba(255, 255, 255, 0.80)",900:"rgba(255, 255, 255, 0.92)"},blackAlpha:{50:"rgba(0, 0, 0, 0.04)",100:"rgba(0, 0, 0, 0.06)",200:"rgba(0, 0, 0, 0.08)",300:"rgba(0, 0, 0, 0.16)",400:"rgba(0, 0, 0, 0.24)",500:"rgba(0, 0, 0, 0.36)",600:"rgba(0, 0, 0, 0.48)",700:"rgba(0, 0, 0, 0.64)",800:"rgba(0, 0, 0, 0.80)",900:"rgba(0, 0, 0, 0.92)"},gray:{50:"#F7FAFC",100:"#EDF2F7",200:"#E2E8F0",300:"#CBD5E0",400:"#A0AEC0",500:"#718096",600:"#4A5568",700:"#2D3748",800:"#1A202C",900:"#171923"},red:{50:"#FFF5F5",100:"#FED7D7",200:"#FEB2B2",300:"#FC8181",400:"#F56565",500:"#E53E3E",600:"#C53030",700:"#9B2C2C",800:"#822727",900:"#63171B"},orange:{50:"#FFFAF0",100:"#FEEBC8",200:"#FBD38D",300:"#F6AD55",400:"#ED8936",500:"#DD6B20",600:"#C05621",700:"#9C4221",800:"#7B341E",900:"#652B19"},yellow:{50:"#FFFFF0",100:"#FEFCBF",200:"#FAF089",300:"#F6E05E",400:"#ECC94B",500:"#D69E2E",600:"#B7791F",700:"#975A16",800:"#744210",900:"#5F370E"},green:{50:"#F0FFF4",100:"#C6F6D5",200:"#9AE6B4",300:"#68D391",400:"#48BB78",500:"#38A169",600:"#2F855A",700:"#276749",800:"#22543D",900:"#1C4532"},teal:{50:"#E6FFFA",100:"#B2F5EA",200:"#81E6D9",300:"#4FD1C5",400:"#38B2AC",500:"#319795",600:"#2C7A7B",700:"#285E61",800:"#234E52",900:"#1D4044"},blue:{50:"#ebf8ff",100:"#bee3f8",200:"#90cdf4",300:"#63b3ed",400:"#4299e1",500:"#3182ce",600:"#2b6cb0",700:"#2c5282",800:"#2a4365",900:"#1A365D"},cyan:{50:"#EDFDFD",100:"#C4F1F9",200:"#9DECF9",300:"#76E4F7",400:"#0BC5EA",500:"#00B5D8",600:"#00A3C4",700:"#0987A0",800:"#086F83",900:"#065666"},purple:{50:"#FAF5FF",100:"#E9D8FD",200:"#D6BCFA",300:"#B794F4",400:"#9F7AEA",500:"#805AD5",600:"#6B46C1",700:"#553C9A",800:"#44337A",900:"#322659"},pink:{50:"#FFF5F7",100:"#FED7E2",200:"#FBB6CE",300:"#F687B3",400:"#ED64A6",500:"#D53F8C",600:"#B83280",700:"#97266D",800:"#702459",900:"#521B41"},linkedin:{50:"#E8F4F9",100:"#CFEDFB",200:"#9BDAF3",300:"#68C7EC",400:"#34B3E4",500:"#00A0DC",600:"#008CC9",700:"#0077B5",800:"#005E93",900:"#004471"},facebook:{50:"#E8F4F9",100:"#D9DEE9",200:"#B7C2DA",300:"#6482C0",400:"#4267B2",500:"#385898",600:"#314E89",700:"#29487D",800:"#223B67",900:"#1E355B"},messenger:{50:"#D0E6FF",100:"#B9DAFF",200:"#A2CDFF",300:"#7AB8FF",400:"#2E90FF",500:"#0078FF",600:"#0063D1",700:"#0052AC",800:"#003C7E",900:"#002C5C"},whatsapp:{50:"#dffeec",100:"#b9f5d0",200:"#90edb3",300:"#65e495",400:"#3cdd78",500:"#22c35e",600:"#179848",700:"#0c6c33",800:"#01421c",900:"#001803"},twitter:{50:"#E5F4FD",100:"#C8E9FB",200:"#A8DCFA",300:"#83CDF7",400:"#57BBF5",500:"#1DA1F2",600:"#1A94DA",700:"#1681BF",800:"#136B9E",900:"#0D4D71"},telegram:{50:"#E3F2F9",100:"#C5E4F3",200:"#A2D4EC",300:"#7AC1E4",400:"#47A9DA",500:"#0088CC",600:"#007AB8",700:"#006BA1",800:"#005885",900:"#003F5E"}},Ch={none:"0",sm:"0.125rem",base:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem",full:"9999px"},jh={xs:"0 0 0 1px rgba(0, 0, 0, 0.05)",sm:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",base:"0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)",md:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)",lg:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)",xl:"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)","2xl":"0 25px 50px -12px rgba(0, 0, 0, 0.25)",outline:"0 0 0 3px rgba(66, 153, 225, 0.6)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.06)",none:"none","dark-lg":"rgba(0, 0, 0, 0.1) 0px 0px 0px 1px, rgba(0, 0, 0, 0.2) 0px 5px 10px, rgba(0, 0, 0, 0.4) 0px 15px 40px"},Rh={none:0,sm:"4px",base:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},Ih={letterSpacings:{tighter:"-0.05em",tight:"-0.025em",normal:"0",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeights:{normal:"normal",none:1,shorter:1.25,short:1.375,base:1.5,tall:1.625,taller:"2",3:".75rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem"},fontWeights:{hairline:100,thin:200,light:300,normal:400,medium:500,semibold:600,bold:700,extrabold:800,black:900},fonts:{heading:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',body:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',mono:'SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'},fontSizes:{"3xs":"0.45rem","2xs":"0.625rem",xs:"0.75rem",sm:"0.875rem",md:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem","5xl":"3rem","6xl":"3.75rem","7xl":"4.5rem","8xl":"6rem","9xl":"8rem"}},Mh={px:"1px",.5:"0.125rem",1:"0.25rem",1.5:"0.375rem",2:"0.5rem",2.5:"0.625rem",3:"0.75rem",3.5:"0.875rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem",12:"3rem",14:"3.5rem",16:"4rem",20:"5rem",24:"6rem",28:"7rem",32:"8rem",36:"9rem",40:"10rem",44:"11rem",48:"12rem",52:"13rem",56:"14rem",60:"15rem",64:"16rem",72:"18rem",80:"20rem",96:"24rem"},Lh={...Mh,max:"max-content",min:"min-content",full:"100%","3xs":"14rem","2xs":"16rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem","8xl":"90rem",prose:"60ch",container:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px"}},Nh={breakpoints:Oh,zIndices:Ah,radii:Ch,blur:Rh,colors:Th,...Ih,sizes:Lh,shadows:jh,space:Mh,borders:Ph,transition:Eh},{defineMultiStyleConfig:Dh,definePartsStyle:zh}=Yt(["stepper","step","title","description","indicator","separator","icon","number"]),Bh=ht("stepper-indicator-size"),Uh=ht("stepper-icon-size"),Fh=ht("stepper-title-font-size"),$h=ht("stepper-description-font-size"),Hh=ht("stepper-accent-color"),Vh=zh((({colorScheme:e})=>({stepper:{display:"flex",justifyContent:"space-between",gap:"4","&[data-orientation=vertical]":{flexDirection:"column",alignItems:"flex-start"},"&[data-orientation=horizontal]":{flexDirection:"row",alignItems:"center"},[Hh.variable]:`colors.${e}.500`,_dark:{[Hh.variable]:`colors.${e}.200`}},title:{fontSize:Fh.reference,fontWeight:"medium"},description:{fontSize:$h.reference,color:"chakra-subtle-text"},number:{fontSize:Fh.reference},step:{flexShrink:0,position:"relative",display:"flex",gap:"2","&[data-orientation=horizontal]":{alignItems:"center"},flex:"1","&:last-of-type:not([data-stretch])":{flex:"initial"}},icon:{flexShrink:0,width:Uh.reference,height:Uh.reference},indicator:{flexShrink:0,borderRadius:"full",width:Bh.reference,height:Bh.reference,display:"flex",justifyContent:"center",alignItems:"center","&[data-status=active]":{borderWidth:"2px",borderColor:Hh.reference},"&[data-status=complete]":{bg:Hh.reference,color:"chakra-inverse-text"},"&[data-status=incomplete]":{borderWidth:"2px"}},separator:{bg:"chakra-border-color",flex:"1","&[data-status=complete]":{bg:Hh.reference},"&[data-orientation=horizontal]":{width:"100%",height:"2px",marginStart:"2"},"&[data-orientation=vertical]":{width:"2px",position:"absolute",height:"100%",maxHeight:`calc(100% - ${Bh.reference} - 8px)`,top:`calc(${Bh.reference} + 4px)`,insetStart:`calc(${Bh.reference} / 2 - 1px)`}}}))),qh=Dh({baseStyle:Vh,sizes:{xs:zh({stepper:{[Bh.variable]:"sizes.4",[Uh.variable]:"sizes.3",[Fh.variable]:"fontSizes.xs",[$h.variable]:"fontSizes.xs"}}),sm:zh({stepper:{[Bh.variable]:"sizes.6",[Uh.variable]:"sizes.4",[Fh.variable]:"fontSizes.sm",[$h.variable]:"fontSizes.xs"}}),md:zh({stepper:{[Bh.variable]:"sizes.8",[Uh.variable]:"sizes.5",[Fh.variable]:"fontSizes.md",[$h.variable]:"fontSizes.sm"}}),lg:zh({stepper:{[Bh.variable]:"sizes.10",[Uh.variable]:"sizes.6",[Fh.variable]:"fontSizes.lg",[$h.variable]:"fontSizes.md"}})},defaultProps:{size:"md",colorScheme:"blue"}});function Kh(e,t={}){let r=!1;function n(t){const r=`chakra-${(["container","root"].includes(null!=t?t:"")?[e]:[e,t]).filter(Boolean).join("__")}`;return{className:r,selector:`.${r}`,toString:()=>t}}return{parts:function(...i){!function(){if(r)throw new Error("[anatomy] .part(...) should only be called once. Did you mean to use .extend(...) ?");r=!0}();for(const e of i)t[e]=n(e);return Kh(e,t)},toPart:n,extend:function(...r){for(const e of r)e in t||(t[e]=n(e));return Kh(e,t)},selectors:function(){const e=Object.fromEntries(Object.entries(t).map((([e,t])=>[e,t.selector])));return e},classnames:function(){const e=Object.fromEntries(Object.entries(t).map((([e,t])=>[e,t.className])));return e},get keys(){return Object.keys(t)},__type:{}}}var Wh=Kh("accordion").parts("root","container","button","panel").extend("icon"),Gh=Kh("alert").parts("title","description","container").extend("icon","spinner"),Zh=Kh("avatar").parts("label","badge","container").extend("excessLabel","group"),Yh=Kh("breadcrumb").parts("link","item","container").extend("separator"),Xh=(Kh("button").parts(),Kh("checkbox").parts("control","icon","container").extend("label")),Jh=(Kh("progress").parts("track","filledTrack").extend("label"),Kh("drawer").parts("overlay","dialogContainer","dialog").extend("header","closeButton","body","footer")),Qh=Kh("editable").parts("preview","input","textarea"),ef=Kh("form").parts("container","requiredIndicator","helperText"),tf=Kh("formError").parts("text","icon"),rf=Kh("input").parts("addon","field","element","group"),nf=Kh("list").parts("container","item","icon"),of=Kh("menu").parts("button","list","item").extend("groupTitle","icon","command","divider"),af=Kh("modal").parts("overlay","dialogContainer","dialog").extend("header","closeButton","body","footer"),sf=Kh("numberinput").parts("root","field","stepperGroup","stepper"),cf=(Kh("pininput").parts("field"),Kh("popover").parts("content","header","body","footer").extend("popper","arrow","closeButton")),lf=Kh("progress").parts("label","filledTrack","track"),uf=Kh("radio").parts("container","control","label"),df=Kh("select").parts("field","icon"),hf=Kh("slider").parts("container","track","thumb","filledTrack","mark"),ff=Kh("stat").parts("container","label","helpText","number","icon"),pf=Kh("switch").parts("container","track","thumb","label"),mf=Kh("table").parts("table","thead","tbody","tr","th","td","tfoot","caption"),gf=Kh("tabs").parts("root","tab","tablist","tabpanel","tabpanels","indicator"),vf=Kh("tag").parts("container","label","closeButton"),yf=Kh("card").parts("container","header","body","footer");Kh("stepper").parts("stepper","step","title","description","indicator","separator","icon","number");function bf(e){const t=function(e,t="-"){return e.replace(/\s+/g,t)}(e.toString());return t.includes("\\.")?e:function(e){return!Number.isInteger(parseFloat(e.toString()))}(e)?t.replace(".","\\."):e}function wf(e,t){return`var(${bf(e)}${t?`, ${t}`:""})`}function xf(e,t=""){return`--${function(e,t=""){return[t,bf(e)].filter(Boolean).join("-")}(e,t)}`}function _f(e,t){const r=xf(e,null==t?void 0:t.prefix);return{variable:r,reference:wf(r,Sf(null==t?void 0:t.fallback))}}function Sf(e){return"string"===typeof e?e:null==e?void 0:e.reference}function kf(e){return oe(e)&&e.reference?e.reference:String(e)}var Ef=(e,...t)=>t.map(kf).join(` ${e} `).replace(/calc/g,""),Af=(...e)=>`calc(${Ef("+",...e)})`,Pf=(...e)=>`calc(${Ef("-",...e)})`,Of=(...e)=>`calc(${Ef("*",...e)})`,Tf=(...e)=>`calc(${Ef("/",...e)})`,Cf=e=>{const t=kf(e);return null==t||Number.isNaN(parseFloat(t))?Of(t,-1):String(t).startsWith("-")?String(t).slice(1):`-${t}`},jf=Object.assign((e=>({add:(...t)=>jf(Af(e,...t)),subtract:(...t)=>jf(Pf(e,...t)),multiply:(...t)=>jf(Of(e,...t)),divide:(...t)=>jf(Tf(e,...t)),negate:()=>jf(Cf(e)),toString:()=>e.toString()})),{add:Af,subtract:Pf,multiply:Of,divide:Tf,negate:Cf}),{defineMultiStyleConfig:Rf,definePartsStyle:If}=Yt(pf.keys),Mf=_f("switch-track-width"),Lf=_f("switch-track-height"),Nf=_f("switch-track-diff"),Df=jf.subtract(Mf,Lf),zf=_f("switch-thumb-x"),Bf=_f("switch-bg"),Uf=e=>{const{colorScheme:t}=e;return{borderRadius:"full",p:"0.5",width:[Mf.reference],height:[Lf.reference],transitionProperty:"common",transitionDuration:"fast",[Bf.variable]:"colors.gray.300",_dark:{[Bf.variable]:"colors.whiteAlpha.400"},_focusVisible:{boxShadow:"outline"},_disabled:{opacity:.4,cursor:"not-allowed"},_checked:{[Bf.variable]:`colors.${t}.500`,_dark:{[Bf.variable]:`colors.${t}.200`}},bg:Bf.reference}},Ff={bg:"white",transitionProperty:"transform",transitionDuration:"normal",borderRadius:"inherit",width:[Lf.reference],height:[Lf.reference],_checked:{transform:`translateX(${zf.reference})`}},$f=Rf({baseStyle:If((e=>({container:{[Nf.variable]:Df,[zf.variable]:Nf.reference,_rtl:{[zf.variable]:jf(Nf).negate().toString()}},track:Uf(e),thumb:Ff}))),sizes:{sm:If({container:{[Mf.variable]:"1.375rem",[Lf.variable]:"sizes.3"}}),md:If({container:{[Mf.variable]:"1.875rem",[Lf.variable]:"sizes.4"}}),lg:If({container:{[Mf.variable]:"2.875rem",[Lf.variable]:"sizes.6"}})},defaultProps:{size:"md",colorScheme:"blue"}});function Hf(e,t){return r=>"dark"===r.colorMode?t:e}function Vf(e){const{orientation:t,vertical:r,horizontal:n}=e;return t?"vertical"===t?r:n:{}}var{defineMultiStyleConfig:qf,definePartsStyle:Kf}=Yt(mf.keys),Wf=Kf({table:{fontVariantNumeric:"lining-nums tabular-nums",borderCollapse:"collapse",width:"full"},th:{fontFamily:"heading",fontWeight:"bold",textTransform:"uppercase",letterSpacing:"wider",textAlign:"start"},td:{textAlign:"start"},caption:{mt:4,fontFamily:"heading",textAlign:"center",fontWeight:"medium"}}),Gf={"&[data-is-numeric=true]":{textAlign:"end"}},Zf=Kf((e=>{const{colorScheme:t}=e;return{th:{color:Hf("gray.600","gray.400")(e),borderBottom:"1px",borderColor:Hf(`${t}.100`,`${t}.700`)(e),...Gf},td:{borderBottom:"1px",borderColor:Hf(`${t}.100`,`${t}.700`)(e),...Gf},caption:{color:Hf("gray.600","gray.100")(e)},tfoot:{tr:{"&:last-of-type":{th:{borderBottomWidth:0}}}}}})),Yf=Kf((e=>{const{colorScheme:t}=e;return{th:{color:Hf("gray.600","gray.400")(e),borderBottom:"1px",borderColor:Hf(`${t}.100`,`${t}.700`)(e),...Gf},td:{borderBottom:"1px",borderColor:Hf(`${t}.100`,`${t}.700`)(e),...Gf},caption:{color:Hf("gray.600","gray.100")(e)},tbody:{tr:{"&:nth-of-type(odd)":{"th, td":{borderBottomWidth:"1px",borderColor:Hf(`${t}.100`,`${t}.700`)(e)},td:{background:Hf(`${t}.100`,`${t}.700`)(e)}}}},tfoot:{tr:{"&:last-of-type":{th:{borderBottomWidth:0}}}}}})),Xf=qf({baseStyle:Wf,variants:{simple:Zf,striped:Yf,unstyled:{}},sizes:{sm:Kf({th:{px:"4",py:"1",lineHeight:"4",fontSize:"xs"},td:{px:"4",py:"2",fontSize:"sm",lineHeight:"4"},caption:{px:"4",py:"2",fontSize:"xs"}}),md:Kf({th:{px:"6",py:"3",lineHeight:"4",fontSize:"xs"},td:{px:"6",py:"4",lineHeight:"5"},caption:{px:"6",py:"2",fontSize:"sm"}}),lg:Kf({th:{px:"8",py:"4",lineHeight:"5",fontSize:"sm"},td:{px:"8",py:"5",lineHeight:"6"},caption:{px:"6",py:"2",fontSize:"md"}})},defaultProps:{variant:"simple",size:"md",colorScheme:"gray"}});function Jf(e,t,r){return Math.min(Math.max(e,r),t)}class Qf extends Error{constructor(e){super(`Failed to parse color: "${e}"`)}}var ep=Qf;function tp(e){if("string"!==typeof e)throw new ep(e);if("transparent"===e.trim().toLowerCase())return[0,0,0,0];let t=e.trim();t=lp.test(e)?function(e){const t=e.toLowerCase().trim(),r=np[function(e){let t=5381,r=e.length;for(;r;)t=33*t^e.charCodeAt(--r);return(t>>>0)%2341}(t)];if(!r)throw new ep(e);return`#${r}`}(e):e;const r=op.exec(t);if(r){const e=Array.from(r).slice(1);return[...e.slice(0,3).map((e=>parseInt(ip(e,2),16))),parseInt(ip(e[3]||"f",2),16)/255]}const n=ap.exec(t);if(n){const e=Array.from(n).slice(1);return[...e.slice(0,3).map((e=>parseInt(e,16))),parseInt(e[3]||"ff",16)/255]}const i=sp.exec(t);if(i){const e=Array.from(i).slice(1);return[...e.slice(0,3).map((e=>parseInt(e,10))),parseFloat(e[3]||"1")]}const o=cp.exec(t);if(o){const[t,r,n,i]=Array.from(o).slice(1).map(parseFloat);if(Jf(0,100,r)!==r)throw new ep(e);if(Jf(0,100,n)!==n)throw new ep(e);return[...dp(t,r,n),Number.isNaN(i)?1:i]}throw new ep(e)}const rp=e=>parseInt(e.replace(/_/g,""),36),np="1q29ehhb 1n09sgk7 1kl1ekf_ _yl4zsno 16z9eiv3 1p29lhp8 _bd9zg04 17u0____ _iw9zhe5 _to73___ _r45e31e _7l6g016 _jh8ouiv _zn3qba8 1jy4zshs 11u87k0u 1ro9yvyo 1aj3xael 1gz9zjz0 _3w8l4xo 1bf1ekf_ _ke3v___ _4rrkb__ 13j776yz _646mbhl _nrjr4__ _le6mbhl 1n37ehkb _m75f91n _qj3bzfz 1939yygw 11i5z6x8 _1k5f8xs 1509441m 15t5lwgf _ae2th1n _tg1ugcv 1lp1ugcv 16e14up_ _h55rw7n _ny9yavn _7a11xb_ 1ih442g9 _pv442g9 1mv16xof 14e6y7tu 1oo9zkds 17d1cisi _4v9y70f _y98m8kc 1019pq0v 12o9zda8 _348j4f4 1et50i2o _8epa8__ _ts6senj 1o350i2o 1mi9eiuo 1259yrp0 1ln80gnw _632xcoy 1cn9zldc _f29edu4 1n490c8q _9f9ziet 1b94vk74 _m49zkct 1kz6s73a 1eu9dtog _q58s1rz 1dy9sjiq __u89jo3 _aj5nkwg _ld89jo3 13h9z6wx _qa9z2ii _l119xgq _bs5arju 1hj4nwk9 1qt4nwk9 1ge6wau6 14j9zlcw 11p1edc_ _ms1zcxe _439shk6 _jt9y70f _754zsow 1la40eju _oq5p___ _x279qkz 1fa5r3rv _yd2d9ip _424tcku _8y1di2_ _zi2uabw _yy7rn9h 12yz980_ __39ljp6 1b59zg0x _n39zfzp 1fy9zest _b33k___ _hp9wq92 1il50hz4 _io472ub _lj9z3eo 19z9ykg0 _8t8iu3a 12b9bl4a 1ak5yw0o _896v4ku _tb8k8lv _s59zi6t _c09ze0p 1lg80oqn 1id9z8wb _238nba5 1kq6wgdi _154zssg _tn3zk49 _da9y6tc 1sg7cv4f _r12jvtt 1gq5fmkz 1cs9rvci _lp9jn1c _xw1tdnb 13f9zje6 16f6973h _vo7ir40 _bt5arjf _rc45e4t _hr4e100 10v4e100 _hc9zke2 _w91egv_ _sj2r1kk 13c87yx8 _vqpds__ _ni8ggk8 _tj9yqfb 1ia2j4r4 _7x9b10u 1fc9ld4j 1eq9zldr _5j9lhpx _ez9zl6o _md61fzm".split(" ").reduce(((e,t)=>{const r=rp(t.substring(0,3)),n=rp(t.substring(3)).toString(16);let i="";for(let o=0;o<6-n.length;o++)i+="0";return e[r]=`${i}${n}`,e}),{});const ip=(e,t)=>Array.from(Array(t)).map((()=>e)).join(""),op=new RegExp(`^#${ip("([a-f0-9])",3)}([a-f0-9])?$`,"i"),ap=new RegExp(`^#${ip("([a-f0-9]{2})",3)}([a-f0-9]{2})?$`,"i"),sp=new RegExp(`^rgba?\\(\\s*(\\d+)\\s*${ip(",\\s*(\\d+)\\s*",2)}(?:,\\s*([\\d.]+))?\\s*\\)$`,"i"),cp=/^hsla?\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)$/i,lp=/^[a-z]+$/i,up=e=>Math.round(255*e),dp=(e,t,r)=>{let n=r/100;if(0===t)return[n,n,n].map(up);const i=(e%360+360)%360/60,o=(1-Math.abs(2*n-1))*(t/100),a=o*(1-Math.abs(i%2-1));let s=0,c=0,l=0;i>=0&&i<1?(s=o,c=a):i>=1&&i<2?(s=a,c=o):i>=2&&i<3?(c=o,l=a):i>=3&&i<4?(c=a,l=o):i>=4&&i<5?(s=a,l=o):i>=5&&i<6&&(s=o,l=a);const u=n-o/2;return[s+u,c+u,l+u].map(up)};function hp(e,t,r,n){return`rgba(${Jf(0,255,e).toFixed()}, ${Jf(0,255,t).toFixed()}, ${Jf(0,255,r).toFixed()}, ${parseFloat(Jf(0,1,n).toFixed(3))})`}function fp(e,t){const[r,n,i,o]=tp(e);return hp(r,n,i,o-t)}var pp=(e,t,r)=>{const n=function(e,t,r,n,i){for(t=t.split?t.split("."):t,n=0;n{const t=Jf(0,255,e).toString(16);return 1===t.length?`0${t}`:t};o(t),o(r),o(n),i<1&&o(Math.round(255*i))}(n),n}catch{return null!=r?r:"#000000"}},mp=e=>t=>{const r=(e=>{const[t,r,n]=tp(e);return(299*t+587*r+114*n)/1e3})(pp(t,e));return r<128?"dark":"light"},gp=(e,t)=>r=>fp(pp(r,e),1-t);function vp(e="1rem",t="rgba(255, 255, 255, 0.15)"){return{backgroundImage:`linear-gradient(\n 45deg,\n ${t} 25%,\n transparent 25%,\n transparent 50%,\n ${t} 50%,\n ${t} 75%,\n transparent 75%,\n transparent\n )`,backgroundSize:`${e} ${e}`}}function yp(e){const t=`#${Math.floor(16777215*Math.random()).toString(16).padEnd(6,"0")}`;return e&&(r=e,0!==Object.keys(r).length)?e.string&&e.colors?function(e,t){let r=0;if(0===e.length)return t[0];for(let n=0;n>8*n&255).toString(16)}`.substr(-2)}return r}(e.string):e.colors&&!e.string?function(e){return e[Math.floor(Math.random()*e.length)]}(e.colors):t:t;var r}var bp=ht("tabs-color"),wp=ht("tabs-bg"),xp=ht("tabs-border-color"),{defineMultiStyleConfig:_p,definePartsStyle:Sp}=Yt(gf.keys),kp=e=>{const{orientation:t}=e;return{display:"vertical"===t?"flex":"block"}},Ep=e=>{const{isFitted:t}=e;return{flex:t?1:void 0,transitionProperty:"common",transitionDuration:"normal",_focusVisible:{zIndex:1,boxShadow:"outline"},_disabled:{cursor:"not-allowed",opacity:.4}}},Ap=e=>{const{align:t="start",orientation:r}=e;return{justifyContent:{end:"flex-end",center:"center",start:"flex-start"}[t],flexDirection:"vertical"===r?"column":"row"}},Pp={p:4},Op=Sp((e=>({root:kp(e),tab:Ep(e),tablist:Ap(e),tabpanel:Pp}))),Tp={sm:Sp({tab:{py:1,px:4,fontSize:"sm"}}),md:Sp({tab:{fontSize:"md",py:2,px:4}}),lg:Sp({tab:{fontSize:"lg",py:3,px:4}})},Cp=Sp((e=>{const{colorScheme:t,orientation:r}=e,n="vertical"===r,i=n?"borderStart":"borderBottom";return{tablist:{[i]:"2px solid",borderColor:"inherit"},tab:{[i]:"2px solid",borderColor:"transparent",[n?"marginStart":"marginBottom"]:"-2px",_selected:{[bp.variable]:`colors.${t}.600`,_dark:{[bp.variable]:`colors.${t}.300`},borderColor:"currentColor"},_active:{[wp.variable]:"colors.gray.200",_dark:{[wp.variable]:"colors.whiteAlpha.300"}},_disabled:{_active:{bg:"none"}},color:bp.reference,bg:wp.reference}}})),jp=Sp((e=>{const{colorScheme:t}=e;return{tab:{borderTopRadius:"md",border:"1px solid",borderColor:"transparent",mb:"-1px",[xp.variable]:"transparent",_selected:{[bp.variable]:`colors.${t}.600`,[xp.variable]:"colors.white",_dark:{[bp.variable]:`colors.${t}.300`,[xp.variable]:"colors.gray.800"},borderColor:"inherit",borderBottomColor:xp.reference},color:bp.reference},tablist:{mb:"-1px",borderBottom:"1px solid",borderColor:"inherit"}}})),Rp=Sp((e=>{const{colorScheme:t}=e;return{tab:{border:"1px solid",borderColor:"inherit",[wp.variable]:"colors.gray.50",_dark:{[wp.variable]:"colors.whiteAlpha.50"},mb:"-1px",_notLast:{marginEnd:"-1px"},_selected:{[wp.variable]:"colors.white",[bp.variable]:`colors.${t}.600`,_dark:{[wp.variable]:"colors.gray.800",[bp.variable]:`colors.${t}.300`},borderColor:"inherit",borderTopColor:"currentColor",borderBottomColor:"transparent"},color:bp.reference,bg:wp.reference},tablist:{mb:"-1px",borderBottom:"1px solid",borderColor:"inherit"}}})),Ip=Sp((e=>{const{colorScheme:t,theme:r}=e;return{tab:{borderRadius:"full",fontWeight:"semibold",color:"gray.600",_selected:{color:pp(r,`${t}.700`),bg:pp(r,`${t}.100`)}}}})),Mp=Sp((e=>{const{colorScheme:t}=e;return{tab:{borderRadius:"full",fontWeight:"semibold",[bp.variable]:"colors.gray.600",_dark:{[bp.variable]:"inherit"},_selected:{[bp.variable]:"colors.white",[wp.variable]:`colors.${t}.600`,_dark:{[bp.variable]:"colors.gray.800",[wp.variable]:`colors.${t}.300`}},color:bp.reference,bg:wp.reference}}})),Lp=_p({baseStyle:Op,sizes:Tp,variants:{line:Cp,enclosed:jp,"enclosed-colored":Rp,"soft-rounded":Ip,"solid-rounded":Mp,unstyled:Sp({})},defaultProps:{size:"md",variant:"line",colorScheme:"blue"}}),Np=function(e,t){const r={};for(const n of t)if(Array.isArray(n)){const[t,i]=n;r[t]=ht(`${e}-${t}`,i)}else r[n]=ht(`${e}-${n}`);return r}("badge",["bg","color","shadow"]),Dp=e=>{const{colorScheme:t,theme:r}=e,n=gp(`${t}.500`,.6)(r);return{[Np.bg.variable]:`colors.${t}.500`,[Np.color.variable]:"colors.white",_dark:{[Np.bg.variable]:n,[Np.color.variable]:"colors.whiteAlpha.800"}}},zp=e=>{const{colorScheme:t,theme:r}=e,n=gp(`${t}.200`,.16)(r);return{[Np.bg.variable]:`colors.${t}.100`,[Np.color.variable]:`colors.${t}.800`,_dark:{[Np.bg.variable]:n,[Np.color.variable]:`colors.${t}.200`}}},Bp=e=>{const{colorScheme:t,theme:r}=e,n=gp(`${t}.200`,.8)(r);return{[Np.color.variable]:`colors.${t}.500`,_dark:{[Np.color.variable]:n},[Np.shadow.variable]:`inset 0 0 0px 1px ${Np.color.reference}`}},Up={baseStyle:{px:1,textTransform:"uppercase",fontSize:"xs",borderRadius:"sm",fontWeight:"bold",bg:Np.bg.reference,color:Np.color.reference,boxShadow:Np.shadow.reference},variants:{solid:Dp,subtle:zp,outline:Bp},defaultProps:{variant:"subtle",colorScheme:"gray"}},{defineMultiStyleConfig:Fp,definePartsStyle:$p}=Yt(vf.keys),Hp=ht("tag-bg"),Vp=ht("tag-color"),qp=ht("tag-shadow"),Kp=ht("tag-min-height"),Wp=ht("tag-min-width"),Gp=ht("tag-font-size"),Zp=ht("tag-padding-inline"),Yp=$p({container:{fontWeight:"medium",lineHeight:1.2,outline:0,[Vp.variable]:Np.color.reference,[Hp.variable]:Np.bg.reference,[qp.variable]:Np.shadow.reference,color:Vp.reference,bg:Hp.reference,boxShadow:qp.reference,borderRadius:"md",minH:Kp.reference,minW:Wp.reference,fontSize:Gp.reference,px:Zp.reference,_focusVisible:{[qp.variable]:"shadows.outline"}},label:{lineHeight:1.2,overflow:"visible"},closeButton:{fontSize:"lg",w:"5",h:"5",transitionProperty:"common",transitionDuration:"normal",borderRadius:"full",marginStart:"1.5",marginEnd:"-1",opacity:.5,_disabled:{opacity:.4},_focusVisible:{boxShadow:"outline",bg:"rgba(0, 0, 0, 0.14)"},_hover:{opacity:.8},_active:{opacity:1}}}),Xp={sm:$p({container:{[Kp.variable]:"sizes.5",[Wp.variable]:"sizes.5",[Gp.variable]:"fontSizes.xs",[Zp.variable]:"space.2"},closeButton:{marginEnd:"-2px",marginStart:"0.35rem"}}),md:$p({container:{[Kp.variable]:"sizes.6",[Wp.variable]:"sizes.6",[Gp.variable]:"fontSizes.sm",[Zp.variable]:"space.2"}}),lg:$p({container:{[Kp.variable]:"sizes.8",[Wp.variable]:"sizes.8",[Gp.variable]:"fontSizes.md",[Zp.variable]:"space.3"}})},Jp={subtle:$p((e=>{var t;return{container:null==(t=Up.variants)?void 0:t.subtle(e)}})),solid:$p((e=>{var t;return{container:null==(t=Up.variants)?void 0:t.solid(e)}})),outline:$p((e=>{var t;return{container:null==(t=Up.variants)?void 0:t.outline(e)}}))},Qp=Fp({variants:Jp,baseStyle:Yp,sizes:Xp,defaultProps:{size:"md",variant:"subtle",colorScheme:"gray"}}),{definePartsStyle:em,defineMultiStyleConfig:tm}=Yt(rf.keys),rm=ht("input-height"),nm=ht("input-font-size"),im=ht("input-padding"),om=ht("input-border-radius"),am=em({addon:{height:rm.reference,fontSize:nm.reference,px:im.reference,borderRadius:om.reference},field:{width:"100%",height:rm.reference,fontSize:nm.reference,px:im.reference,borderRadius:om.reference,minWidth:0,outline:0,position:"relative",appearance:"none",transitionProperty:"common",transitionDuration:"normal",_disabled:{opacity:.4,cursor:"not-allowed"}}}),sm={lg:{[nm.variable]:"fontSizes.lg",[im.variable]:"space.4",[om.variable]:"radii.md",[rm.variable]:"sizes.12"},md:{[nm.variable]:"fontSizes.md",[im.variable]:"space.4",[om.variable]:"radii.md",[rm.variable]:"sizes.10"},sm:{[nm.variable]:"fontSizes.sm",[im.variable]:"space.3",[om.variable]:"radii.sm",[rm.variable]:"sizes.8"},xs:{[nm.variable]:"fontSizes.xs",[im.variable]:"space.2",[om.variable]:"radii.sm",[rm.variable]:"sizes.6"}},cm={lg:em({field:sm.lg,group:sm.lg}),md:em({field:sm.md,group:sm.md}),sm:em({field:sm.sm,group:sm.sm}),xs:em({field:sm.xs,group:sm.xs})};function lm(e){const{focusBorderColor:t,errorBorderColor:r}=e;return{focusBorderColor:t||Hf("blue.500","blue.300")(e),errorBorderColor:r||Hf("red.500","red.300")(e)}}var um,dm,hm,fm,pm,mm,gm,vm,ym,bm,wm,xm=em((e=>{const{theme:t}=e,{focusBorderColor:r,errorBorderColor:n}=lm(e);return{field:{border:"1px solid",borderColor:"inherit",bg:"inherit",_hover:{borderColor:Hf("gray.300","whiteAlpha.400")(e)},_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:pp(t,n),boxShadow:`0 0 0 1px ${pp(t,n)}`},_focusVisible:{zIndex:1,borderColor:pp(t,r),boxShadow:`0 0 0 1px ${pp(t,r)}`}},addon:{border:"1px solid",borderColor:Hf("inherit","whiteAlpha.50")(e),bg:Hf("gray.100","whiteAlpha.300")(e)}}})),_m=em((e=>{const{theme:t}=e,{focusBorderColor:r,errorBorderColor:n}=lm(e);return{field:{border:"2px solid",borderColor:"transparent",bg:Hf("gray.100","whiteAlpha.50")(e),_hover:{bg:Hf("gray.200","whiteAlpha.100")(e)},_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:pp(t,n)},_focusVisible:{bg:"transparent",borderColor:pp(t,r)}},addon:{border:"2px solid",borderColor:"transparent",bg:Hf("gray.100","whiteAlpha.50")(e)}}})),Sm=em((e=>{const{theme:t}=e,{focusBorderColor:r,errorBorderColor:n}=lm(e);return{field:{borderBottom:"1px solid",borderColor:"inherit",borderRadius:"0",px:"0",bg:"transparent",_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:pp(t,n),boxShadow:`0px 1px 0px 0px ${pp(t,n)}`},_focusVisible:{borderColor:pp(t,r),boxShadow:`0px 1px 0px 0px ${pp(t,r)}`}},addon:{borderBottom:"2px solid",borderColor:"inherit",borderRadius:"0",px:"0",bg:"transparent"}}})),km=tm({baseStyle:am,sizes:cm,variants:{outline:xm,filled:_m,flushed:Sm,unstyled:em({field:{bg:"transparent",px:"0",height:"auto"},addon:{bg:"transparent",px:"0",height:"auto"}})},defaultProps:{size:"md",variant:"outline"}}),Em={...null==(um=km.baseStyle)?void 0:um.field,paddingY:"2",minHeight:"20",lineHeight:"short",verticalAlign:"top"},Am={outline:e=>{var t,r;return null!=(r=null==(t=km.variants)?void 0:t.outline(e).field)?r:{}},flushed:e=>{var t,r;return null!=(r=null==(t=km.variants)?void 0:t.flushed(e).field)?r:{}},filled:e=>{var t,r;return null!=(r=null==(t=km.variants)?void 0:t.filled(e).field)?r:{}},unstyled:null!=(hm=null==(dm=km.variants)?void 0:dm.unstyled.field)?hm:{}},Pm={baseStyle:Em,sizes:{xs:null!=(pm=null==(fm=km.sizes)?void 0:fm.xs.field)?pm:{},sm:null!=(gm=null==(mm=km.sizes)?void 0:mm.sm.field)?gm:{},md:null!=(ym=null==(vm=km.sizes)?void 0:vm.md.field)?ym:{},lg:null!=(wm=null==(bm=km.sizes)?void 0:bm.lg.field)?wm:{}},variants:Am,defaultProps:{size:"md",variant:"outline"}},Om=_f("tooltip-bg"),Tm=_f("tooltip-fg"),Cm=_f("popper-arrow-bg"),jm={baseStyle:{bg:Om.reference,color:Tm.reference,[Om.variable]:"colors.gray.700",[Tm.variable]:"colors.whiteAlpha.900",_dark:{[Om.variable]:"colors.gray.300",[Tm.variable]:"colors.gray.900"},[Cm.variable]:Om.reference,px:"2",py:"0.5",borderRadius:"sm",fontWeight:"medium",fontSize:"sm",boxShadow:"md",maxW:"xs",zIndex:"tooltip"}},{defineMultiStyleConfig:Rm,definePartsStyle:Im}=Yt(lf.keys),Mm=e=>{const{colorScheme:t,theme:r,isIndeterminate:n,hasStripe:i}=e,o=Hf(vp(),vp("1rem","rgba(0,0,0,0.1)"))(e),a=Hf(`${t}.500`,`${t}.200`)(e),s=`linear-gradient(\n to right,\n transparent 0%,\n ${pp(r,a)} 50%,\n transparent 100%\n )`;return{...!n&&i&&o,...n?{bgImage:s}:{bgColor:a}}},Lm={lineHeight:"1",fontSize:"0.25em",fontWeight:"bold",color:"white"},Nm=e=>({bg:Hf("gray.100","whiteAlpha.300")(e)}),Dm=e=>({transitionProperty:"common",transitionDuration:"slow",...Mm(e)}),zm=Im((e=>({label:Lm,filledTrack:Dm(e),track:Nm(e)}))),Bm=Rm({sizes:{xs:Im({track:{h:"1"}}),sm:Im({track:{h:"2"}}),md:Im({track:{h:"3"}}),lg:Im({track:{h:"4"}})},baseStyle:zm,defaultProps:{size:"md",colorScheme:"blue"}});function Um(e,...t){return(e=>"function"===typeof e)(e)?e(...t):e}var Fm,$m,Hm,Vm,qm,Km,Wm,Gm,Zm,{definePartsStyle:Ym,defineMultiStyleConfig:Xm}=Yt(Xh.keys),Jm=ht("checkbox-size"),Qm=e=>{const{colorScheme:t}=e;return{w:Jm.reference,h:Jm.reference,transitionProperty:"box-shadow",transitionDuration:"normal",border:"2px solid",borderRadius:"sm",borderColor:"inherit",color:"white",_checked:{bg:Hf(`${t}.500`,`${t}.200`)(e),borderColor:Hf(`${t}.500`,`${t}.200`)(e),color:Hf("white","gray.900")(e),_hover:{bg:Hf(`${t}.600`,`${t}.300`)(e),borderColor:Hf(`${t}.600`,`${t}.300`)(e)},_disabled:{borderColor:Hf("gray.200","transparent")(e),bg:Hf("gray.200","whiteAlpha.300")(e),color:Hf("gray.500","whiteAlpha.500")(e)}},_indeterminate:{bg:Hf(`${t}.500`,`${t}.200`)(e),borderColor:Hf(`${t}.500`,`${t}.200`)(e),color:Hf("white","gray.900")(e)},_disabled:{bg:Hf("gray.100","whiteAlpha.100")(e),borderColor:Hf("gray.100","transparent")(e)},_focusVisible:{boxShadow:"outline"},_invalid:{borderColor:Hf("red.500","red.300")(e)}}},eg={_disabled:{cursor:"not-allowed"}},tg={userSelect:"none",_disabled:{opacity:.4}},rg={transitionProperty:"transform",transitionDuration:"normal"},ng=Xm({baseStyle:Ym((e=>({icon:rg,container:eg,control:Um(Qm,e),label:tg}))),sizes:{sm:Ym({control:{[Jm.variable]:"sizes.3"},label:{fontSize:"sm"},icon:{fontSize:"3xs"}}),md:Ym({control:{[Jm.variable]:"sizes.4"},label:{fontSize:"md"},icon:{fontSize:"2xs"}}),lg:Ym({control:{[Jm.variable]:"sizes.5"},label:{fontSize:"lg"},icon:{fontSize:"2xs"}})},defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:ig,definePartsStyle:og}=Yt(uf.keys),ag=e=>{var t;const r=null==(t=Um(ng.baseStyle,e))?void 0:t.control;return{...r,borderRadius:"full",_checked:{...null==r?void 0:r._checked,_before:{content:'""',display:"inline-block",pos:"relative",w:"50%",h:"50%",borderRadius:"50%",bg:"currentColor"}}}},sg=og((e=>{var t,r,n,i;return{label:null==(r=(t=ng).baseStyle)?void 0:r.call(t,e).label,container:null==(i=(n=ng).baseStyle)?void 0:i.call(n,e).container,control:ag(e)}})),cg=ig({baseStyle:sg,sizes:{md:og({control:{w:"4",h:"4"},label:{fontSize:"md"}}),lg:og({control:{w:"5",h:"5"},label:{fontSize:"lg"}}),sm:og({control:{width:"3",height:"3"},label:{fontSize:"sm"}})},defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:lg,definePartsStyle:ug}=Yt(df.keys),dg=ht("select-bg"),hg={paddingInlineEnd:"8"},fg=lg({baseStyle:ug({field:{...null==(Fm=km.baseStyle)?void 0:Fm.field,appearance:"none",paddingBottom:"1px",lineHeight:"normal",bg:dg.reference,[dg.variable]:"colors.white",_dark:{[dg.variable]:"colors.gray.700"},"> option, > optgroup":{bg:dg.reference}},icon:{width:"6",height:"100%",insetEnd:"2",position:"relative",color:"currentColor",fontSize:"xl",_disabled:{opacity:.5}}}),sizes:{lg:{...null==($m=km.sizes)?void 0:$m.lg,field:{...null==(Hm=km.sizes)?void 0:Hm.lg.field,...hg}},md:{...null==(Vm=km.sizes)?void 0:Vm.md,field:{...null==(qm=km.sizes)?void 0:qm.md.field,...hg}},sm:{...null==(Km=km.sizes)?void 0:Km.sm,field:{...null==(Wm=km.sizes)?void 0:Wm.sm.field,...hg}},xs:{...null==(Gm=km.sizes)?void 0:Gm.xs,field:{...null==(Zm=km.sizes)?void 0:Zm.xs.field,...hg},icon:{insetEnd:"1"}}},variants:km.variants,defaultProps:km.defaultProps}),pg=ht("skeleton-start-color"),mg=ht("skeleton-end-color"),gg={baseStyle:{[pg.variable]:"colors.gray.100",[mg.variable]:"colors.gray.400",_dark:{[pg.variable]:"colors.gray.800",[mg.variable]:"colors.gray.600"},background:pg.reference,borderColor:mg.reference,opacity:.7,borderRadius:"sm"}},vg=ht("skip-link-bg"),yg={baseStyle:{borderRadius:"md",fontWeight:"semibold",_focusVisible:{boxShadow:"outline",padding:"4",position:"fixed",top:"6",insetStart:"6",[vg.variable]:"colors.white",_dark:{[vg.variable]:"colors.gray.700"},bg:vg.reference}}},{defineMultiStyleConfig:bg,definePartsStyle:wg}=Yt(hf.keys),xg=ht("slider-thumb-size"),_g=ht("slider-track-size"),Sg=ht("slider-bg"),kg=e=>{const{orientation:t}=e;return{display:"inline-block",position:"relative",cursor:"pointer",_disabled:{opacity:.6,cursor:"default",pointerEvents:"none"},...Vf({orientation:t,vertical:{h:"100%"},horizontal:{w:"100%"}})}},Eg=e=>({...Vf({orientation:e.orientation,horizontal:{h:_g.reference},vertical:{w:_g.reference}}),overflow:"hidden",borderRadius:"sm",[Sg.variable]:"colors.gray.200",_dark:{[Sg.variable]:"colors.whiteAlpha.200"},_disabled:{[Sg.variable]:"colors.gray.300",_dark:{[Sg.variable]:"colors.whiteAlpha.300"}},bg:Sg.reference}),Ag=e=>{const{orientation:t}=e;return{...Vf({orientation:t,vertical:{left:"50%",transform:"translateX(-50%)",_active:{transform:"translateX(-50%) scale(1.15)"}},horizontal:{top:"50%",transform:"translateY(-50%)",_active:{transform:"translateY(-50%) scale(1.15)"}}}),w:xg.reference,h:xg.reference,display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",outline:0,zIndex:1,borderRadius:"full",bg:"white",boxShadow:"base",border:"1px solid",borderColor:"transparent",transitionProperty:"transform",transitionDuration:"normal",_focusVisible:{boxShadow:"outline"},_disabled:{bg:"gray.300"}}},Pg=e=>{const{colorScheme:t}=e;return{width:"inherit",height:"inherit",[Sg.variable]:`colors.${t}.500`,_dark:{[Sg.variable]:`colors.${t}.200`},bg:Sg.reference}},Og=bg({baseStyle:wg((e=>({container:kg(e),track:Eg(e),thumb:Ag(e),filledTrack:Pg(e)}))),sizes:{lg:wg({container:{[xg.variable]:"sizes.4",[_g.variable]:"sizes.1"}}),md:wg({container:{[xg.variable]:"sizes.3.5",[_g.variable]:"sizes.1"}}),sm:wg({container:{[xg.variable]:"sizes.2.5",[_g.variable]:"sizes.0.5"}})},defaultProps:{size:"md",colorScheme:"blue"}}),Tg=_f("spinner-size"),Cg={baseStyle:{width:[Tg.reference],height:[Tg.reference]},sizes:{xs:{[Tg.variable]:"sizes.3"},sm:{[Tg.variable]:"sizes.4"},md:{[Tg.variable]:"sizes.6"},lg:{[Tg.variable]:"sizes.8"},xl:{[Tg.variable]:"sizes.12"}},defaultProps:{size:"md"}},{defineMultiStyleConfig:jg,definePartsStyle:Rg}=Yt(ff.keys),Ig=jg({baseStyle:Rg({container:{},label:{fontWeight:"medium"},helpText:{opacity:.8,marginBottom:"2"},number:{verticalAlign:"baseline",fontWeight:"semibold"},icon:{marginEnd:1,w:"3.5",h:"3.5",verticalAlign:"middle"}}),sizes:{md:Rg({label:{fontSize:"sm"},helpText:{fontSize:"sm"},number:{fontSize:"2xl"}})},defaultProps:{size:"md"}}),Mg=ht("kbd-bg"),Lg={baseStyle:{[Mg.variable]:"colors.gray.100",_dark:{[Mg.variable]:"colors.whiteAlpha.100"},bg:Mg.reference,borderRadius:"md",borderWidth:"1px",borderBottomWidth:"3px",fontSize:"0.8em",fontWeight:"bold",lineHeight:"normal",px:"0.4em",whiteSpace:"nowrap"}},Ng={baseStyle:{transitionProperty:"common",transitionDuration:"fast",transitionTimingFunction:"ease-out",cursor:"pointer",textDecoration:"none",outline:"none",color:"inherit",_hover:{textDecoration:"underline"},_focusVisible:{boxShadow:"outline"}}},{defineMultiStyleConfig:Dg,definePartsStyle:zg}=Yt(nf.keys),Bg=Dg({baseStyle:zg({icon:{marginEnd:"2",display:"inline",verticalAlign:"text-bottom"}})}),{defineMultiStyleConfig:Ug,definePartsStyle:Fg}=Yt(of.keys),$g=ht("menu-bg"),Hg=ht("menu-shadow"),Vg=Ug({baseStyle:Fg({button:{transitionProperty:"common",transitionDuration:"normal"},list:{[$g.variable]:"#fff",[Hg.variable]:"shadows.sm",_dark:{[$g.variable]:"colors.gray.700",[Hg.variable]:"shadows.dark-lg"},color:"inherit",minW:"3xs",py:"2",zIndex:1,borderRadius:"md",borderWidth:"1px",bg:$g.reference,boxShadow:Hg.reference},item:{py:"1.5",px:"3",transitionProperty:"background",transitionDuration:"ultra-fast",transitionTimingFunction:"ease-in",_focus:{[$g.variable]:"colors.gray.100",_dark:{[$g.variable]:"colors.whiteAlpha.100"}},_active:{[$g.variable]:"colors.gray.200",_dark:{[$g.variable]:"colors.whiteAlpha.200"}},_expanded:{[$g.variable]:"colors.gray.100",_dark:{[$g.variable]:"colors.whiteAlpha.100"}},_disabled:{opacity:.4,cursor:"not-allowed"},bg:$g.reference},groupTitle:{mx:4,my:2,fontWeight:"semibold",fontSize:"sm"},icon:{display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0},command:{opacity:.6},divider:{border:0,borderBottom:"1px solid",borderColor:"inherit",my:"2",opacity:.6}})}),{defineMultiStyleConfig:qg,definePartsStyle:Kg}=Yt(af.keys),Wg=ht("modal-bg"),Gg=ht("modal-shadow"),Zg={bg:"blackAlpha.600",zIndex:"modal"},Yg=e=>{const{isCentered:t,scrollBehavior:r}=e;return{display:"flex",zIndex:"modal",justifyContent:"center",alignItems:t?"center":"flex-start",overflow:"inside"===r?"hidden":"auto",overscrollBehaviorY:"none"}},Xg=e=>{const{isCentered:t,scrollBehavior:r}=e;return{borderRadius:"md",color:"inherit",my:t?"auto":"16",mx:t?"auto":void 0,zIndex:"modal",maxH:"inside"===r?"calc(100% - 7.5rem)":void 0,[Wg.variable]:"colors.white",[Gg.variable]:"shadows.lg",_dark:{[Wg.variable]:"colors.gray.700",[Gg.variable]:"shadows.dark-lg"},bg:Wg.reference,boxShadow:Gg.reference}},Jg={px:"6",py:"4",fontSize:"xl",fontWeight:"semibold"},Qg={position:"absolute",top:"2",insetEnd:"3"},ev=e=>{const{scrollBehavior:t}=e;return{px:"6",py:"2",flex:"1",overflow:"inside"===t?"auto":void 0}},tv={px:"6",py:"4"};function rv(e){return Kg("full"===e?{dialog:{maxW:"100vw",minH:"$100vh",my:"0",borderRadius:"0"}}:{dialog:{maxW:e}})}var nv=qg({baseStyle:Kg((e=>({overlay:Zg,dialogContainer:Um(Yg,e),dialog:Um(Xg,e),header:Jg,closeButton:Qg,body:Um(ev,e),footer:tv}))),sizes:{xs:rv("xs"),sm:rv("sm"),md:rv("md"),lg:rv("lg"),xl:rv("xl"),"2xl":rv("2xl"),"3xl":rv("3xl"),"4xl":rv("4xl"),"5xl":rv("5xl"),"6xl":rv("6xl"),full:rv("full")},defaultProps:{size:"md"}}),{defineMultiStyleConfig:iv,definePartsStyle:ov}=Yt(sf.keys),av=_f("number-input-stepper-width"),sv=_f("number-input-input-padding"),cv=jf(av).add("0.5rem").toString(),lv=_f("number-input-bg"),uv=_f("number-input-color"),dv=_f("number-input-border-color"),hv={[av.variable]:"sizes.6",[sv.variable]:cv},fv=e=>{var t,r;return null!=(r=null==(t=Um(km.baseStyle,e))?void 0:t.field)?r:{}},pv={width:av.reference},mv={borderStart:"1px solid",borderStartColor:dv.reference,color:uv.reference,bg:lv.reference,[uv.variable]:"colors.chakra-body-text",[dv.variable]:"colors.chakra-border-color",_dark:{[uv.variable]:"colors.whiteAlpha.800",[dv.variable]:"colors.whiteAlpha.300"},_active:{[lv.variable]:"colors.gray.200",_dark:{[lv.variable]:"colors.whiteAlpha.300"}},_disabled:{opacity:.4,cursor:"not-allowed"}},gv=ov((e=>{var t;return{root:hv,field:null!=(t=Um(fv,e))?t:{},stepperGroup:pv,stepper:mv}}));function vv(e){var t,r,n;const i=null==(t=km.sizes)?void 0:t[e],o={lg:"md",md:"md",sm:"sm",xs:"sm"},a=null!=(n=null==(r=i.field)?void 0:r.fontSize)?n:"md",s=Ih.fontSizes[a];return ov({field:{...i.field,paddingInlineEnd:sv.reference,verticalAlign:"top"},stepper:{fontSize:jf(s).multiply(.75).toString(),_first:{borderTopEndRadius:o[e]},_last:{borderBottomEndRadius:o[e],mt:"-1px",borderTopWidth:1}}})}var yv,bv,wv,xv=iv({baseStyle:gv,sizes:{xs:vv("xs"),sm:vv("sm"),md:vv("md"),lg:vv("lg")},variants:km.variants,defaultProps:km.defaultProps}),_v={...null==(yv=km.baseStyle)?void 0:yv.field,textAlign:"center"},Sv={lg:{fontSize:"lg",w:12,h:12,borderRadius:"md"},md:{fontSize:"md",w:10,h:10,borderRadius:"md"},sm:{fontSize:"sm",w:8,h:8,borderRadius:"sm"},xs:{fontSize:"xs",w:6,h:6,borderRadius:"sm"}},kv={outline:e=>{var t,r,n;return null!=(n=null==(r=Um(null==(t=km.variants)?void 0:t.outline,e))?void 0:r.field)?n:{}},flushed:e=>{var t,r,n;return null!=(n=null==(r=Um(null==(t=km.variants)?void 0:t.flushed,e))?void 0:r.field)?n:{}},filled:e=>{var t,r,n;return null!=(n=null==(r=Um(null==(t=km.variants)?void 0:t.filled,e))?void 0:r.field)?n:{}},unstyled:null!=(wv=null==(bv=km.variants)?void 0:bv.unstyled.field)?wv:{}},Ev={baseStyle:_v,sizes:Sv,variants:kv,defaultProps:km.defaultProps},{defineMultiStyleConfig:Av,definePartsStyle:Pv}=Yt(cf.keys),Ov=_f("popper-bg"),Tv=_f("popper-arrow-bg"),Cv=_f("popper-arrow-shadow-color"),jv=Av({baseStyle:Pv({popper:{zIndex:10},content:{[Ov.variable]:"colors.white",bg:Ov.reference,[Tv.variable]:Ov.reference,[Cv.variable]:"colors.gray.200",_dark:{[Ov.variable]:"colors.gray.700",[Cv.variable]:"colors.whiteAlpha.300"},width:"xs",border:"1px solid",borderColor:"inherit",borderRadius:"md",boxShadow:"sm",zIndex:"inherit",_focusVisible:{outline:0,boxShadow:"outline"}},header:{px:3,py:2,borderBottomWidth:"1px"},body:{px:3,py:2},footer:{px:3,py:2,borderTopWidth:"1px"},closeButton:{position:"absolute",borderRadius:"md",top:1,insetEnd:2,padding:2}})}),{definePartsStyle:Rv,defineMultiStyleConfig:Iv}=Yt(Jh.keys),Mv=ht("drawer-bg"),Lv=ht("drawer-box-shadow");function Nv(e){return Rv("full"===e?{dialog:{maxW:"100vw",h:"100vh"}}:{dialog:{maxW:e}})}var Dv={bg:"blackAlpha.600",zIndex:"modal"},zv={display:"flex",zIndex:"modal",justifyContent:"center"},Bv=e=>{const{isFullHeight:t}=e;return{...t&&{height:"100vh"},zIndex:"modal",maxH:"100vh",color:"inherit",[Mv.variable]:"colors.white",[Lv.variable]:"shadows.lg",_dark:{[Mv.variable]:"colors.gray.700",[Lv.variable]:"shadows.dark-lg"},bg:Mv.reference,boxShadow:Lv.reference}},Uv={px:"6",py:"4",fontSize:"xl",fontWeight:"semibold"},Fv={position:"absolute",top:"2",insetEnd:"3"},$v={px:"6",py:"2",flex:"1",overflow:"auto"},Hv={px:"6",py:"4"},Vv=Iv({baseStyle:Rv((e=>({overlay:Dv,dialogContainer:zv,dialog:Um(Bv,e),header:Uv,closeButton:Fv,body:$v,footer:Hv}))),sizes:{xs:Nv("xs"),sm:Nv("md"),md:Nv("lg"),lg:Nv("2xl"),xl:Nv("4xl"),full:Nv("full")},defaultProps:{size:"xs"}}),{definePartsStyle:qv,defineMultiStyleConfig:Kv}=Yt(Qh.keys),Wv=Kv({baseStyle:qv({preview:{borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal"},input:{borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal",width:"full",_focusVisible:{boxShadow:"outline"},_placeholder:{opacity:.6}},textarea:{borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal",width:"full",_focusVisible:{boxShadow:"outline"},_placeholder:{opacity:.6}}})}),{definePartsStyle:Gv,defineMultiStyleConfig:Zv}=Yt(ef.keys),Yv=ht("form-control-color"),Xv=Zv({baseStyle:Gv({container:{width:"100%",position:"relative"},requiredIndicator:{marginStart:"1",[Yv.variable]:"colors.red.500",_dark:{[Yv.variable]:"colors.red.300"},color:Yv.reference},helperText:{mt:"2",[Yv.variable]:"colors.gray.600",_dark:{[Yv.variable]:"colors.whiteAlpha.600"},color:Yv.reference,lineHeight:"normal",fontSize:"sm"}})}),{definePartsStyle:Jv,defineMultiStyleConfig:Qv}=Yt(tf.keys),ey=ht("form-error-color"),ty=Qv({baseStyle:Jv({text:{[ey.variable]:"colors.red.500",_dark:{[ey.variable]:"colors.red.300"},color:ey.reference,mt:"2",fontSize:"sm",lineHeight:"normal"},icon:{marginEnd:"0.5em",[ey.variable]:"colors.red.500",_dark:{[ey.variable]:"colors.red.300"},color:ey.reference}})}),ry={baseStyle:{fontSize:"md",marginEnd:"3",mb:"2",fontWeight:"medium",transitionProperty:"common",transitionDuration:"normal",opacity:1,_disabled:{opacity:.4}}},ny={baseStyle:{fontFamily:"heading",fontWeight:"bold"},sizes:{"4xl":{fontSize:["6xl",null,"7xl"],lineHeight:1},"3xl":{fontSize:["5xl",null,"6xl"],lineHeight:1},"2xl":{fontSize:["4xl",null,"5xl"],lineHeight:[1.2,null,1]},xl:{fontSize:["3xl",null,"4xl"],lineHeight:[1.33,null,1.2]},lg:{fontSize:["2xl",null,"3xl"],lineHeight:[1.33,null,1.2]},md:{fontSize:"xl",lineHeight:1.2},sm:{fontSize:"md",lineHeight:1.2},xs:{fontSize:"sm",lineHeight:1.2}},defaultProps:{size:"xl"}},{defineMultiStyleConfig:iy,definePartsStyle:oy}=Yt(Yh.keys),ay=ht("breadcrumb-link-decor"),sy=iy({baseStyle:oy({link:{transitionProperty:"common",transitionDuration:"fast",transitionTimingFunction:"ease-out",outline:"none",color:"inherit",textDecoration:ay.reference,[ay.variable]:"none","&:not([aria-current=page])":{cursor:"pointer",_hover:{[ay.variable]:"underline"},_focusVisible:{boxShadow:"outline"}}}})}),cy=e=>{const{colorScheme:t,theme:r}=e;if("gray"===t)return{color:Hf("gray.800","whiteAlpha.900")(e),_hover:{bg:Hf("gray.100","whiteAlpha.200")(e)},_active:{bg:Hf("gray.200","whiteAlpha.300")(e)}};const n=gp(`${t}.200`,.12)(r),i=gp(`${t}.200`,.24)(r);return{color:Hf(`${t}.600`,`${t}.200`)(e),bg:"transparent",_hover:{bg:Hf(`${t}.50`,n)(e)},_active:{bg:Hf(`${t}.100`,i)(e)}}},ly=e=>{const{colorScheme:t}=e,r=Hf("gray.200","whiteAlpha.300")(e);return{border:"1px solid",borderColor:"gray"===t?r:"currentColor",".chakra-button__group[data-attached][data-orientation=horizontal] > &:not(:last-of-type)":{marginEnd:"-1px"},".chakra-button__group[data-attached][data-orientation=vertical] > &:not(:last-of-type)":{marginBottom:"-1px"},...Um(cy,e)}},uy={yellow:{bg:"yellow.400",color:"black",hoverBg:"yellow.500",activeBg:"yellow.600"},cyan:{bg:"cyan.400",color:"black",hoverBg:"cyan.500",activeBg:"cyan.600"}},dy=e=>{var t;const{colorScheme:r}=e;if("gray"===r){const t=Hf("gray.100","whiteAlpha.200")(e);return{bg:t,color:Hf("gray.800","whiteAlpha.900")(e),_hover:{bg:Hf("gray.200","whiteAlpha.300")(e),_disabled:{bg:t}},_active:{bg:Hf("gray.300","whiteAlpha.400")(e)}}}const{bg:n=`${r}.500`,color:i="white",hoverBg:o=`${r}.600`,activeBg:a=`${r}.700`}=null!=(t=uy[r])?t:{},s=Hf(n,`${r}.200`)(e);return{bg:s,color:Hf(i,"gray.800")(e),_hover:{bg:Hf(o,`${r}.300`)(e),_disabled:{bg:s}},_active:{bg:Hf(a,`${r}.400`)(e)}}},hy=e=>{const{colorScheme:t}=e;return{padding:0,height:"auto",lineHeight:"normal",verticalAlign:"baseline",color:Hf(`${t}.500`,`${t}.200`)(e),_hover:{textDecoration:"underline",_disabled:{textDecoration:"none"}},_active:{color:Hf(`${t}.700`,`${t}.500`)(e)}}},fy={baseStyle:{lineHeight:"1.2",borderRadius:"md",fontWeight:"semibold",transitionProperty:"common",transitionDuration:"normal",_focusVisible:{boxShadow:"outline"},_disabled:{opacity:.4,cursor:"not-allowed",boxShadow:"none"},_hover:{_disabled:{bg:"initial"}}},variants:{ghost:cy,outline:ly,solid:dy,link:hy,unstyled:{bg:"none",color:"inherit",display:"inline",lineHeight:"inherit",m:"0",p:"0"}},sizes:{lg:{h:"12",minW:"12",fontSize:"lg",px:"6"},md:{h:"10",minW:"10",fontSize:"md",px:"4"},sm:{h:"8",minW:"8",fontSize:"sm",px:"3"},xs:{h:"6",minW:"6",fontSize:"xs",px:"2"}},defaultProps:{variant:"solid",size:"md",colorScheme:"gray"}},{definePartsStyle:py,defineMultiStyleConfig:my}=Yt(yf.keys),gy=ht("card-bg"),vy=ht("card-padding"),yy=ht("card-shadow"),by=ht("card-radius"),wy=ht("card-border-width","0"),xy=ht("card-border-color"),_y=py({container:{[gy.variable]:"colors.chakra-body-bg",backgroundColor:gy.reference,boxShadow:yy.reference,borderRadius:by.reference,color:"chakra-body-text",borderWidth:wy.reference,borderColor:xy.reference},body:{padding:vy.reference,flex:"1 1 0%"},header:{padding:vy.reference},footer:{padding:vy.reference}}),Sy={sm:py({container:{[by.variable]:"radii.base",[vy.variable]:"space.3"}}),md:py({container:{[by.variable]:"radii.md",[vy.variable]:"space.5"}}),lg:py({container:{[by.variable]:"radii.xl",[vy.variable]:"space.7"}})},ky=my({baseStyle:_y,variants:{elevated:py({container:{[yy.variable]:"shadows.base",_dark:{[gy.variable]:"colors.gray.700"}}}),outline:py({container:{[wy.variable]:"1px",[xy.variable]:"colors.chakra-border-color"}}),filled:py({container:{[gy.variable]:"colors.chakra-subtle-bg"}}),unstyled:{body:{[vy.variable]:0},header:{[vy.variable]:0},footer:{[vy.variable]:0}}},sizes:Sy,defaultProps:{variant:"elevated",size:"md"}}),Ey=_f("close-button-size"),Ay=_f("close-button-bg"),Py={baseStyle:{w:[Ey.reference],h:[Ey.reference],borderRadius:"md",transitionProperty:"common",transitionDuration:"normal",_disabled:{opacity:.4,cursor:"not-allowed",boxShadow:"none"},_hover:{[Ay.variable]:"colors.blackAlpha.100",_dark:{[Ay.variable]:"colors.whiteAlpha.100"}},_active:{[Ay.variable]:"colors.blackAlpha.200",_dark:{[Ay.variable]:"colors.whiteAlpha.200"}},_focusVisible:{boxShadow:"outline"},bg:Ay.reference},sizes:{lg:{[Ey.variable]:"sizes.10",fontSize:"md"},md:{[Ey.variable]:"sizes.8",fontSize:"xs"},sm:{[Ey.variable]:"sizes.6",fontSize:"2xs"}},defaultProps:{size:"md"}},{variants:Oy,defaultProps:Ty}=Up,Cy={baseStyle:{fontFamily:"mono",fontSize:"sm",px:"0.2em",borderRadius:"sm",bg:Np.bg.reference,color:Np.color.reference,boxShadow:Np.shadow.reference},variants:Oy,defaultProps:Ty},jy={baseStyle:{w:"100%",mx:"auto",maxW:"prose",px:"4"}},Ry={baseStyle:{opacity:.6,borderColor:"inherit"},variants:{solid:{borderStyle:"solid"},dashed:{borderStyle:"dashed"}},defaultProps:{variant:"solid"}},{definePartsStyle:Iy,defineMultiStyleConfig:My}=Yt(Wh.keys),Ly=My({baseStyle:Iy({container:{borderTopWidth:"1px",borderColor:"inherit",_last:{borderBottomWidth:"1px"}},button:{transitionProperty:"common",transitionDuration:"normal",fontSize:"md",_focusVisible:{boxShadow:"outline"},_hover:{bg:"blackAlpha.50"},_disabled:{opacity:.4,cursor:"not-allowed"},px:"4",py:"2"},panel:{pt:"2",px:"4",pb:"5"},icon:{fontSize:"1.25em"}})}),{definePartsStyle:Ny,defineMultiStyleConfig:Dy}=Yt(Gh.keys),zy=ht("alert-fg"),By=ht("alert-bg"),Uy=Ny({container:{bg:By.reference,px:"4",py:"3"},title:{fontWeight:"bold",lineHeight:"6",marginEnd:"2"},description:{lineHeight:"6"},icon:{color:zy.reference,flexShrink:0,marginEnd:"3",w:"5",h:"6"},spinner:{color:zy.reference,flexShrink:0,marginEnd:"3",w:"5",h:"5"}});function Fy(e){const{theme:t,colorScheme:r}=e;return{light:`colors.${r}.100`,dark:gp(`${r}.200`,.16)(t)}}var $y=Ny((e=>{const{colorScheme:t}=e,r=Fy(e);return{container:{[zy.variable]:`colors.${t}.600`,[By.variable]:r.light,_dark:{[zy.variable]:`colors.${t}.200`,[By.variable]:r.dark}}}})),Hy=Ny((e=>{const{colorScheme:t}=e,r=Fy(e);return{container:{[zy.variable]:`colors.${t}.600`,[By.variable]:r.light,_dark:{[zy.variable]:`colors.${t}.200`,[By.variable]:r.dark},paddingStart:"3",borderStartWidth:"4px",borderStartColor:zy.reference}}})),Vy=Ny((e=>{const{colorScheme:t}=e,r=Fy(e);return{container:{[zy.variable]:`colors.${t}.600`,[By.variable]:r.light,_dark:{[zy.variable]:`colors.${t}.200`,[By.variable]:r.dark},pt:"2",borderTopWidth:"4px",borderTopColor:zy.reference}}})),qy=Ny((e=>{const{colorScheme:t}=e;return{container:{[zy.variable]:"colors.white",[By.variable]:`colors.${t}.600`,_dark:{[zy.variable]:"colors.gray.900",[By.variable]:`colors.${t}.200`},color:zy.reference}}})),Ky=Dy({baseStyle:Uy,variants:{subtle:$y,"left-accent":Hy,"top-accent":Vy,solid:qy},defaultProps:{variant:"subtle",colorScheme:"blue"}}),{definePartsStyle:Wy,defineMultiStyleConfig:Gy}=Yt(Zh.keys),Zy=ht("avatar-border-color"),Yy=ht("avatar-bg"),Xy=ht("avatar-font-size"),Jy=ht("avatar-size"),Qy={borderRadius:"full",border:"0.2em solid",borderColor:Zy.reference,[Zy.variable]:"white",_dark:{[Zy.variable]:"colors.gray.800"}},eb={bg:Yy.reference,fontSize:Xy.reference,width:Jy.reference,height:Jy.reference,lineHeight:"1",[Yy.variable]:"colors.gray.200",_dark:{[Yy.variable]:"colors.whiteAlpha.400"}},tb=e=>{const{name:t,theme:r}=e,n=t?yp({string:t}):"colors.gray.400",i=(e=>t=>"dark"===mp(e)(t))(n)(r);let o="white";return i||(o="gray.800"),{bg:Yy.reference,fontSize:Xy.reference,color:o,borderColor:Zy.reference,verticalAlign:"top",width:Jy.reference,height:Jy.reference,"&:not([data-loaded])":{[Yy.variable]:n},[Zy.variable]:"colors.white",_dark:{[Zy.variable]:"colors.gray.800"}}},rb={fontSize:Xy.reference,lineHeight:"1"};function nb(e){const t="100%"!==e?Lh[e]:void 0;return Wy({container:{[Jy.variable]:null!=t?t:e,[Xy.variable]:`calc(${null!=t?t:e} / 2.5)`},excessLabel:{[Jy.variable]:null!=t?t:e,[Xy.variable]:`calc(${null!=t?t:e} / 2.5)`}})}var ib={Accordion:Ly,Alert:Ky,Avatar:Gy({baseStyle:Wy((e=>({badge:Um(Qy,e),excessLabel:Um(eb,e),container:Um(tb,e),label:rb}))),sizes:{"2xs":nb(4),xs:nb(6),sm:nb(8),md:nb(12),lg:nb(16),xl:nb(24),"2xl":nb(32),full:nb("100%")},defaultProps:{size:"md"}}),Badge:Up,Breadcrumb:sy,Button:fy,Checkbox:ng,CloseButton:Py,Code:Cy,Container:jy,Divider:Ry,Drawer:Vv,Editable:Wv,Form:Xv,FormError:ty,FormLabel:ry,Heading:ny,Input:km,Kbd:Lg,Link:Ng,List:Bg,Menu:Vg,Modal:nv,NumberInput:xv,PinInput:Ev,Popover:jv,Progress:Bm,Radio:cg,Select:fg,Skeleton:gg,SkipLink:yg,Slider:Og,Spinner:Cg,Stat:Ig,Switch:$f,Table:Xf,Tabs:Lp,Tag:Qp,Textarea:Pm,Tooltip:jm,Card:ky,Stepper:qh},ob={colors:{"chakra-body-text":{_light:"gray.800",_dark:"whiteAlpha.900"},"chakra-body-bg":{_light:"white",_dark:"gray.800"},"chakra-border-color":{_light:"gray.200",_dark:"whiteAlpha.300"},"chakra-inverse-text":{_light:"white",_dark:"gray.800"},"chakra-subtle-bg":{_light:"gray.100",_dark:"gray.700"},"chakra-subtle-text":{_light:"gray.600",_dark:"gray.400"},"chakra-placeholder-color":{_light:"gray.500",_dark:"whiteAlpha.400"}}},ab={global:{body:{fontFamily:"body",color:"chakra-body-text",bg:"chakra-body-bg",transitionProperty:"background-color",transitionDuration:"normal",lineHeight:"base"},"*::placeholder":{color:"chakra-placeholder-color"},"*, *::before, &::after":{borderColor:"chakra-border-color"}}},sb={useSystemColorMode:!1,initialColorMode:"light",cssVarPrefix:"chakra"},cb={semanticTokens:ob,direction:"ltr",...Nh,components:ib,styles:ab,config:sb},lb={semanticTokens:ob,direction:"ltr",components:{},...Nh,styles:ab,config:sb},ub=(e,t)=>e.find((e=>e.id===t));function db(e,t){const r=hb(e,t);return{position:r,index:r?e[r].findIndex((e=>e.id===t)):-1}}function hb(e,t){for(const[r,n]of Object.entries(e))if(ub(n,t))return r}function fb(e){return{position:"fixed",zIndex:"var(--toast-z-index, 5500)",pointerEvents:"none",display:"flex",flexDirection:"column",margin:"top"===e||"bottom"===e?"0 auto":void 0,top:e.includes("top")?"env(safe-area-inset-top, 0px)":void 0,bottom:e.includes("bottom")?"env(safe-area-inset-bottom, 0px)":void 0,right:e.includes("left")?void 0:"env(safe-area-inset-right, 0px)",left:e.includes("right")?void 0:"env(safe-area-inset-left, 0px)"}}function pb(e,t=[]){const r=(0,n.useRef)(e);return(0,n.useEffect)((()=>{r.current=e})),(0,n.useCallback)(((...e)=>{var t;return null==(t=r.current)?void 0:t.call(r,...e)}),t)}function mb(e,t){const r=(0,n.useRef)(!1),i=(0,n.useRef)(!1);(0,n.useEffect)((()=>{if(r.current&&i.current)return e();i.current=!0}),t),(0,n.useEffect)((()=>(r.current=!0,()=>{r.current=!1})),[])}const gb=(0,n.createContext)(null);function vb(){const e=(0,n.useContext)(gb);if(null===e)return[!0,null];const{isPresent:t,onExitComplete:r,register:i}=e,o=(0,n.useId)();(0,n.useEffect)((()=>i(o)),[]);return!t&&r?[!1,()=>r&&r(o)]:[!0]}function yb(){return function(e){return null===e||e.isPresent}((0,n.useContext)(gb))}const bb=(0,n.createContext)({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"}),wb=(0,n.createContext)({}),xb="undefined"!==typeof document,_b=xb?n.useLayoutEffect:n.useEffect,Sb=(0,n.createContext)({strict:!1}),kb=e=>e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),Eb="data-"+kb("framerAppearId"),Ab=!1,Pb=!1;class Ob{constructor(){this.order=[],this.scheduled=new Set}add(e){if(!this.scheduled.has(e))return this.scheduled.add(e),this.order.push(e),!0}remove(e){const t=this.order.indexOf(e);-1!==t&&(this.order.splice(t,1),this.scheduled.delete(e))}clear(){this.order.length=0,this.scheduled.clear()}}const Tb=["prepare","read","update","preRender","render","postRender"];function Cb(e,t){let r=!1,n=!0;const i={delta:0,timestamp:0,isProcessing:!1},o=Tb.reduce(((e,t)=>(e[t]=function(e){let t=new Ob,r=new Ob,n=0,i=!1,o=!1;const a=new WeakSet,s={schedule:(e,o=!1,s=!1)=>{const c=s&&i,l=c?t:r;return o&&a.add(e),l.add(e)&&c&&i&&(n=t.order.length),e},cancel:e=>{r.remove(e),a.delete(e)},process:c=>{if(i)o=!0;else{if(i=!0,[t,r]=[r,t],r.clear(),n=t.order.length,n)for(let r=0;rr=!0)),e)),{}),a=e=>{o[e].process(i)},s=()=>{const o=Pb?i.timestamp:performance.now();r=!1,i.delta=n?1e3/60:Math.max(Math.min(o-i.timestamp,40),1),i.timestamp=o,i.isProcessing=!0,Tb.forEach(a),i.isProcessing=!1,r&&t&&(n=!1,e(s))},c=Tb.reduce(((t,a)=>{const c=o[a];return t[a]=(t,o=!1,a=!1)=>(r||(r=!0,n=!0,i.isProcessing||e(s)),c.schedule(t,o,a)),t}),{});return{schedule:c,cancel:e=>Tb.forEach((t=>o[t].cancel(e))),state:i,steps:o}}const{schedule:jb,cancel:Rb}=Cb(queueMicrotask,!1);function Ib(e){return e&&"object"===typeof e&&Object.prototype.hasOwnProperty.call(e,"current")}function Mb(e){return"string"===typeof e||Array.isArray(e)}function Lb(e){return null!==e&&"object"===typeof e&&"function"===typeof e.start}const Nb=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],Db=["initial",...Nb];function zb(e){return Lb(e.animate)||Db.some((t=>Mb(e[t])))}function Bb(e){return Boolean(zb(e)||e.variants)}function Ub(e){const{initial:t,animate:r}=function(e,t){if(zb(e)){const{initial:t,animate:r}=e;return{initial:!1===t||Mb(t)?t:void 0,animate:Mb(r)?r:void 0}}return!1!==e.inherit?t:{}}(e,(0,n.useContext)(wb));return(0,n.useMemo)((()=>({initial:t,animate:r})),[Fb(t),Fb(r)])}function Fb(e){return Array.isArray(e)?e.join(" "):e}const $b={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},Hb={};for(const r in $b)Hb[r]={isEnabled:e=>$b[r].some((t=>!!e[t]))};const Vb=(0,n.createContext)({}),qb=(0,n.createContext)({}),Kb=Symbol.for("motionComponentSymbol");function Wb({preloadedFeatures:e,createVisualElement:t,useRender:r,useVisualState:i,Component:o}){e&&function(e){for(const t in e)Hb[t]={...Hb[t],...e[t]}}(e);const a=(0,n.forwardRef)((function(a,s){let c;const l={...(0,n.useContext)(bb),...a,layoutId:Gb(a)},{isStatic:u}=l,d=Ub(a),h=i(a,u);if(!u&&xb){d.visualElement=function(e,t,r,i){const{visualElement:o}=(0,n.useContext)(wb),a=(0,n.useContext)(Sb),s=(0,n.useContext)(gb),c=(0,n.useContext)(bb).reducedMotion,l=(0,n.useRef)();i=i||a.renderer,!l.current&&i&&(l.current=i(e,{visualState:t,parent:o,props:r,presenceContext:s,blockInitialAnimation:!!s&&!1===s.initial,reducedMotionConfig:c}));const u=l.current;(0,n.useInsertionEffect)((()=>{u&&u.update(r,s)}));const d=(0,n.useRef)(Boolean(r[Eb]&&!window.HandoffComplete));return _b((()=>{u&&(jb.postRender(u.render),d.current&&u.animationState&&u.animationState.animateChanges())})),(0,n.useEffect)((()=>{u&&(u.updateFeatures(),!d.current&&u.animationState&&u.animationState.animateChanges(),d.current&&(d.current=!1,window.HandoffComplete=!0))})),u}(o,h,l,t);const r=(0,n.useContext)(qb),i=(0,n.useContext)(Sb).strict;d.visualElement&&(c=d.visualElement.loadFeatures(l,i,e,r))}return n.createElement(wb.Provider,{value:d},c&&d.visualElement?n.createElement(c,{visualElement:d.visualElement,...l}):null,r(o,a,function(e,t,r){return(0,n.useCallback)((n=>{n&&e.mount&&e.mount(n),t&&(n?t.mount(n):t.unmount()),r&&("function"===typeof r?r(n):Ib(r)&&(r.current=n))}),[t])}(h,d.visualElement,s),h,u,d.visualElement))}));return a[Kb]=o,a}function Gb({layoutId:e}){const t=(0,n.useContext)(Vb).id;return t&&void 0!==e?t+"-"+e:e}function Zb(e){function t(t,r={}){return Wb(e(t,r))}if("undefined"===typeof Proxy)return t;const r=new Map;return new Proxy(t,{get:(e,n)=>(r.has(n)||r.set(n,t(n)),r.get(n))})}const Yb=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function Xb(e){return"string"===typeof e&&!e.includes("-")&&!!(Yb.indexOf(e)>-1||/[A-Z]/.test(e))}const Jb={};const Qb=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],ew=new Set(Qb);function tw(e,{layout:t,layoutId:r}){return ew.has(e)||e.startsWith("origin")||(t||void 0!==r)&&(!!Jb[e]||"opacity"===e)}const rw=e=>Boolean(e&&e.getVelocity),nw={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},iw=Qb.length;const ow=e=>t=>"string"===typeof t&&t.startsWith(e),aw=ow("--"),sw=ow("var(--"),cw=(e,t)=>t&&"number"===typeof e?t.transform(e):e,lw=(e,t,r)=>Math.min(Math.max(r,e),t),uw={test:e=>"number"===typeof e,parse:parseFloat,transform:e=>e},dw={...uw,transform:e=>lw(0,1,e)},hw={...uw,default:1},fw=e=>Math.round(1e5*e)/1e5,pw=/(-)?([\d]*\.?[\d])+/g,mw=/(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))/gi,gw=/^(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function vw(e){return"string"===typeof e}const yw=e=>({test:t=>vw(t)&&t.endsWith(e)&&1===t.split(" ").length,parse:parseFloat,transform:t=>`${t}${e}`}),bw=yw("deg"),ww=yw("%"),xw=yw("px"),_w=yw("vh"),Sw=yw("vw"),kw={...ww,parse:e=>ww.parse(e)/100,transform:e=>ww.transform(100*e)},Ew={...uw,transform:Math.round},Aw={borderWidth:xw,borderTopWidth:xw,borderRightWidth:xw,borderBottomWidth:xw,borderLeftWidth:xw,borderRadius:xw,radius:xw,borderTopLeftRadius:xw,borderTopRightRadius:xw,borderBottomRightRadius:xw,borderBottomLeftRadius:xw,width:xw,maxWidth:xw,height:xw,maxHeight:xw,size:xw,top:xw,right:xw,bottom:xw,left:xw,padding:xw,paddingTop:xw,paddingRight:xw,paddingBottom:xw,paddingLeft:xw,margin:xw,marginTop:xw,marginRight:xw,marginBottom:xw,marginLeft:xw,rotate:bw,rotateX:bw,rotateY:bw,rotateZ:bw,scale:hw,scaleX:hw,scaleY:hw,scaleZ:hw,skew:bw,skewX:bw,skewY:bw,distance:xw,translateX:xw,translateY:xw,translateZ:xw,x:xw,y:xw,z:xw,perspective:xw,transformPerspective:xw,opacity:dw,originX:kw,originY:kw,originZ:xw,zIndex:Ew,fillOpacity:dw,strokeOpacity:dw,numOctaves:Ew};function Pw(e,t,r,n){const{style:i,vars:o,transform:a,transformOrigin:s}=e;let c=!1,l=!1,u=!0;for(const d in t){const e=t[d];if(aw(d)){o[d]=e;continue}const r=Aw[d],n=cw(e,r);if(ew.has(d)){if(c=!0,a[d]=n,!u)continue;e!==(r.default||0)&&(u=!1)}else d.startsWith("origin")?(l=!0,s[d]=n):i[d]=n}if(t.transform||(c||n?i.transform=function(e,{enableHardwareAcceleration:t=!0,allowTransformNone:r=!0},n,i){let o="";for(let a=0;a({style:{},transform:{},transformOrigin:{},vars:{}});function Tw(e,t,r){for(const n in t)rw(t[n])||tw(n,r)||(e[n]=t[n])}function Cw(e,t,r){const i={};return Tw(i,e.style||{},e),Object.assign(i,function({transformTemplate:e},t,r){return(0,n.useMemo)((()=>{const n=Ow();return Pw(n,t,{enableHardwareAcceleration:!r},e),Object.assign({},n.vars,n.style)}),[t])}(e,t,r)),i}function jw(e,t,r){const n={},i=Cw(e,t,r);return e.drag&&!1!==e.dragListener&&(n.draggable=!1,i.userSelect=i.WebkitUserSelect=i.WebkitTouchCallout="none",i.touchAction=!0===e.drag?"none":"pan-"+("x"===e.drag?"y":"x")),void 0===e.tabIndex&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=i,n}const Rw=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function Iw(e){return e.startsWith("while")||e.startsWith("drag")&&"draggable"!==e||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||Rw.has(e)}let Mw=e=>!Iw(e);try{(Lw=require("@emotion/is-prop-valid").default)&&(Mw=e=>e.startsWith("on")?!Iw(e):Lw(e))}catch(Dn){}var Lw;function Nw(e,t,r){return"string"===typeof e?e:xw.transform(t+r*e)}const Dw={offset:"stroke-dashoffset",array:"stroke-dasharray"},zw={offset:"strokeDashoffset",array:"strokeDasharray"};function Bw(e,{attrX:t,attrY:r,attrScale:n,originX:i,originY:o,pathLength:a,pathSpacing:s=1,pathOffset:c=0,...l},u,d,h){if(Pw(e,l,u,h),d)return void(e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox));e.attrs=e.style,e.style={};const{attrs:f,style:p,dimensions:m}=e;f.transform&&(m&&(p.transform=f.transform),delete f.transform),m&&(void 0!==i||void 0!==o||p.transform)&&(p.transformOrigin=function(e,t,r){return`${Nw(t,e.x,e.width)} ${Nw(r,e.y,e.height)}`}(m,void 0!==i?i:.5,void 0!==o?o:.5)),void 0!==t&&(f.x=t),void 0!==r&&(f.y=r),void 0!==n&&(f.scale=n),void 0!==a&&function(e,t,r=1,n=0,i=!0){e.pathLength=1;const o=i?Dw:zw;e[o.offset]=xw.transform(-n);const a=xw.transform(t),s=xw.transform(r);e[o.array]=`${a} ${s}`}(f,a,s,c,!1)}const Uw=()=>({...Ow(),attrs:{}}),Fw=e=>"string"===typeof e&&"svg"===e.toLowerCase();function $w(e,t,r,i){const o=(0,n.useMemo)((()=>{const r=Uw();return Bw(r,t,{enableHardwareAcceleration:!1},Fw(i),e.transformTemplate),{...r.attrs,style:{...r.style}}}),[t]);if(e.style){const t={};Tw(t,e.style,e),o.style={...t,...o.style}}return o}function Hw(e=!1){return(t,r,i,{latestValues:o},a)=>{const s=(Xb(t)?$w:jw)(r,o,a,t),c=function(e,t,r){const n={};for(const i in e)"values"===i&&"object"===typeof e.values||(Mw(i)||!0===r&&Iw(i)||!t&&!Iw(i)||e.draggable&&i.startsWith("onDrag"))&&(n[i]=e[i]);return n}(r,"string"===typeof t,e),l={...c,...s,ref:i},{children:u}=r,d=(0,n.useMemo)((()=>rw(u)?u.get():u),[u]);return(0,n.createElement)(t,{...l,children:d})}}function Vw(e,{style:t,vars:r},n,i){Object.assign(e.style,t,i&&i.getProjectionStyles(n));for(const o in r)e.style.setProperty(o,r[o])}const qw=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function Kw(e,t,r,n){Vw(e,t,void 0,n);for(const i in t.attrs)e.setAttribute(qw.has(i)?i:kb(i),t.attrs[i])}function Ww(e,t){const{style:r}=e,n={};for(const i in r)(rw(r[i])||t.style&&rw(t.style[i])||tw(i,e))&&(n[i]=r[i]);return n}function Gw(e,t){const r=Ww(e,t);for(const n in e)if(rw(e[n])||rw(t[n])){r[-1!==Qb.indexOf(n)?"attr"+n.charAt(0).toUpperCase()+n.substring(1):n]=e[n]}return r}function Zw(e,t,r,n={},i={}){return"function"===typeof t&&(t=t(void 0!==r?r:e.custom,n,i)),"string"===typeof t&&(t=e.variants&&e.variants[t]),"function"===typeof t&&(t=t(void 0!==r?r:e.custom,n,i)),t}function Yw(e){const t=(0,n.useRef)(null);return null===t.current&&(t.current=e()),t.current}const Xw=e=>Array.isArray(e),Jw=e=>Boolean(e&&"object"===typeof e&&e.mix&&e.toValue),Qw=e=>Xw(e)?e[e.length-1]||0:e;function ex(e){const t=rw(e)?e.get():e;return Jw(t)?t.toValue():t}const tx=e=>(t,r)=>{const i=(0,n.useContext)(wb),o=(0,n.useContext)(gb),a=()=>function({scrapeMotionValuesFromProps:e,createRenderState:t,onMount:r},n,i,o){const a={latestValues:rx(n,i,o,e),renderState:t()};return r&&(a.mount=e=>r(n,e,a)),a}(e,t,i,o);return r?a():Yw(a)};function rx(e,t,r,n){const i={},o=n(e,{});for(const h in o)i[h]=ex(o[h]);let{initial:a,animate:s}=e;const c=zb(e),l=Bb(e);t&&l&&!c&&!1!==e.inherit&&(void 0===a&&(a=t.initial),void 0===s&&(s=t.animate));let u=!!r&&!1===r.initial;u=u||!1===a;const d=u?s:a;if(d&&"boolean"!==typeof d&&!Lb(d)){(Array.isArray(d)?d:[d]).forEach((t=>{const r=Zw(e,t);if(!r)return;const{transitionEnd:n,transition:o,...a}=r;for(const e in a){let t=a[e];if(Array.isArray(t)){t=t[u?t.length-1:0]}null!==t&&(i[e]=t)}for(const e in n)i[e]=n[e]}))}return i}const nx=e=>e,{schedule:ix,cancel:ox,state:ax,steps:sx}=Cb("undefined"!==typeof requestAnimationFrame?requestAnimationFrame:nx,!0),cx={useVisualState:tx({scrapeMotionValuesFromProps:Gw,createRenderState:Uw,onMount:(e,t,{renderState:r,latestValues:n})=>{ix.read((()=>{try{r.dimensions="function"===typeof t.getBBox?t.getBBox():t.getBoundingClientRect()}catch(e){r.dimensions={x:0,y:0,width:0,height:0}}})),ix.render((()=>{Bw(r,n,{enableHardwareAcceleration:!1},Fw(t.tagName),e.transformTemplate),Kw(t,r)}))}})},lx={useVisualState:tx({scrapeMotionValuesFromProps:Ww,createRenderState:Ow})};function ux(e,t,r,n={passive:!0}){return e.addEventListener(t,r,n),()=>e.removeEventListener(t,r)}const dx=e=>"mouse"===e.pointerType?"number"!==typeof e.button||e.button<=0:!1!==e.isPrimary;function hx(e,t="page"){return{point:{x:e[t+"X"],y:e[t+"Y"]}}}const fx=e=>t=>dx(t)&&e(t,hx(t));function px(e,t,r,n){return ux(e,t,fx(r),n)}const mx=(e,t)=>r=>t(e(r)),gx=(...e)=>e.reduce(mx);function vx(e){let t=null;return()=>{const r=()=>{t=null};return null===t&&(t=e,r)}}const yx=vx("dragHorizontal"),bx=vx("dragVertical");function wx(e){let t=!1;if("y"===e)t=bx();else if("x"===e)t=yx();else{const e=yx(),r=bx();e&&r?t=()=>{e(),r()}:(e&&e(),r&&r())}return t}function xx(){const e=wx(!0);return!e||(e(),!1)}class _x{constructor(e){this.isMounted=!1,this.node=e}update(){}}function Sx(e,t){const r="pointer"+(t?"enter":"leave"),n="onHover"+(t?"Start":"End");return px(e.current,r,((r,i)=>{if("touch"===r.pointerType||xx())return;const o=e.getProps();e.animationState&&o.whileHover&&e.animationState.setActive("whileHover",t),o[n]&&ix.update((()=>o[n](r,i)))}),{passive:!e.getProps()[n]})}const kx=(e,t)=>!!t&&(e===t||kx(e,t.parentElement));function Ex(e,t){if(!t)return;const r=new PointerEvent("pointer"+e);t(r,hx(r))}const Ax=new WeakMap,Px=new WeakMap,Ox=e=>{const t=Ax.get(e.target);t&&t(e)},Tx=e=>{e.forEach(Ox)};function Cx(e,t,r){const n=function({root:e,...t}){const r=e||document;Px.has(r)||Px.set(r,{});const n=Px.get(r),i=JSON.stringify(t);return n[i]||(n[i]=new IntersectionObserver(Tx,{root:e,...t})),n[i]}(t);return Ax.set(e,r),n.observe(e),()=>{Ax.delete(e),n.unobserve(e)}}const jx={some:0,all:1};const Rx={inView:{Feature:class extends _x{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:e={}}=this.node.getProps(),{root:t,margin:r,amount:n="some",once:i}=e,o={root:t?t.current:void 0,rootMargin:r,threshold:"number"===typeof n?n:jx[n]};return Cx(this.node.current,o,(e=>{const{isIntersecting:t}=e;if(this.isInView===t)return;if(this.isInView=t,i&&!t&&this.hasEnteredView)return;t&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",t);const{onViewportEnter:r,onViewportLeave:n}=this.node.getProps(),o=t?r:n;o&&o(e)}))}mount(){this.startObserver()}update(){if("undefined"===typeof IntersectionObserver)return;const{props:e,prevProps:t}=this.node,r=["amount","margin","root"].some(function({viewport:e={}},{viewport:t={}}={}){return r=>e[r]!==t[r]}(e,t));r&&this.startObserver()}unmount(){}}},tap:{Feature:class extends _x{constructor(){super(...arguments),this.removeStartListeners=nx,this.removeEndListeners=nx,this.removeAccessibleListeners=nx,this.startPointerPress=(e,t)=>{if(this.isPressing)return;this.removeEndListeners();const r=this.node.getProps(),n=px(window,"pointerup",((e,t)=>{if(!this.checkPressEnd())return;const{onTap:r,onTapCancel:n,globalTapTarget:i}=this.node.getProps();ix.update((()=>{i||kx(this.node.current,e.target)?r&&r(e,t):n&&n(e,t)}))}),{passive:!(r.onTap||r.onPointerUp)}),i=px(window,"pointercancel",((e,t)=>this.cancelPress(e,t)),{passive:!(r.onTapCancel||r.onPointerCancel)});this.removeEndListeners=gx(n,i),this.startPress(e,t)},this.startAccessiblePress=()=>{const e=ux(this.node.current,"keydown",(e=>{if("Enter"!==e.key||this.isPressing)return;this.removeEndListeners(),this.removeEndListeners=ux(this.node.current,"keyup",(e=>{"Enter"===e.key&&this.checkPressEnd()&&Ex("up",((e,t)=>{const{onTap:r}=this.node.getProps();r&&ix.update((()=>r(e,t)))}))})),Ex("down",((e,t)=>{this.startPress(e,t)}))})),t=ux(this.node.current,"blur",(()=>{this.isPressing&&Ex("cancel",((e,t)=>this.cancelPress(e,t)))}));this.removeAccessibleListeners=gx(e,t)}}startPress(e,t){this.isPressing=!0;const{onTapStart:r,whileTap:n}=this.node.getProps();n&&this.node.animationState&&this.node.animationState.setActive("whileTap",!0),r&&ix.update((()=>r(e,t)))}checkPressEnd(){this.removeEndListeners(),this.isPressing=!1;return this.node.getProps().whileTap&&this.node.animationState&&this.node.animationState.setActive("whileTap",!1),!xx()}cancelPress(e,t){if(!this.checkPressEnd())return;const{onTapCancel:r}=this.node.getProps();r&&ix.update((()=>r(e,t)))}mount(){const e=this.node.getProps(),t=px(e.globalTapTarget?window:this.node.current,"pointerdown",this.startPointerPress,{passive:!(e.onTapStart||e.onPointerStart)}),r=ux(this.node.current,"focus",this.startAccessiblePress);this.removeStartListeners=gx(t,r)}unmount(){this.removeStartListeners(),this.removeEndListeners(),this.removeAccessibleListeners()}}},focus:{Feature:class extends _x{constructor(){super(...arguments),this.isActive=!1}onFocus(){let e=!1;try{e=this.node.current.matches(":focus-visible")}catch(t){e=!0}e&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){this.isActive&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=gx(ux(this.node.current,"focus",(()=>this.onFocus())),ux(this.node.current,"blur",(()=>this.onBlur())))}unmount(){}}},hover:{Feature:class extends _x{mount(){this.unmount=gx(Sx(this.node,!0),Sx(this.node,!1))}unmount(){}}}};function Ix(e,t){if(!Array.isArray(t))return!1;const r=t.length;if(r!==e.length)return!1;for(let n=0;nt[r]=e.get())),t}(e),function(e){const t={};return e.values.forEach(((e,r)=>t[r]=e.getVelocity())),t}(e))}let Lx=nx,Nx=nx;const Dx=e=>1e3*e,zx=e=>e/1e3,Bx=!1,Ux=e=>Array.isArray(e)&&"number"===typeof e[0];function Fx(e){return Boolean(!e||"string"===typeof e&&Hx[e]||Ux(e)||Array.isArray(e)&&e.every(Fx))}const $x=([e,t,r,n])=>`cubic-bezier(${e}, ${t}, ${r}, ${n})`,Hx={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:$x([0,.65,.55,1]),circOut:$x([.55,0,1,.45]),backIn:$x([.31,.01,.66,-.59]),backOut:$x([.33,1.53,.69,.99])};function Vx(e){if(e)return Ux(e)?$x(e):Array.isArray(e)?e.map(Vx):Hx[e]}const qx=(e,t,r)=>(((1-3*r+3*t)*e+(3*r-6*t))*e+3*t)*e,Kx=1e-7,Wx=12;function Gx(e,t,r,n){if(e===t&&r===n)return nx;const i=t=>function(e,t,r,n,i){let o,a,s=0;do{a=t+(r-t)/2,o=qx(a,n,i)-e,o>0?r=a:t=a}while(Math.abs(o)>Kx&&++s0===e||1===e?e:qx(i(e),t,n)}const Zx=Gx(.42,0,1,1),Yx=Gx(0,0,.58,1),Xx=Gx(.42,0,.58,1),Jx=e=>Array.isArray(e)&&"number"!==typeof e[0],Qx=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,e_=e=>t=>1-e(1-t),t_=e=>1-Math.sin(Math.acos(e)),r_=e_(t_),n_=Qx(t_),i_=Gx(.33,1.53,.69,.99),o_=e_(i_),a_=Qx(o_),s_={linear:nx,easeIn:Zx,easeInOut:Xx,easeOut:Yx,circIn:t_,circInOut:n_,circOut:r_,backIn:o_,backInOut:a_,backOut:i_,anticipate:e=>(e*=2)<1?.5*o_(e):.5*(2-Math.pow(2,-10*(e-1)))},c_=e=>{if(Array.isArray(e)){Nx(4===e.length,"Cubic bezier arrays must contain four numerical values.");const[t,r,n,i]=e;return Gx(t,r,n,i)}return"string"===typeof e?(Nx(void 0!==s_[e],`Invalid easing type '${e}'`),s_[e]):e},l_=(e,t)=>r=>Boolean(vw(r)&&gw.test(r)&&r.startsWith(e)||t&&Object.prototype.hasOwnProperty.call(r,t)),u_=(e,t,r)=>n=>{if(!vw(n))return n;const[i,o,a,s]=n.match(pw);return{[e]:parseFloat(i),[t]:parseFloat(o),[r]:parseFloat(a),alpha:void 0!==s?parseFloat(s):1}},d_={...uw,transform:e=>Math.round((e=>lw(0,255,e))(e))},h_={test:l_("rgb","red"),parse:u_("red","green","blue"),transform:({red:e,green:t,blue:r,alpha:n=1})=>"rgba("+d_.transform(e)+", "+d_.transform(t)+", "+d_.transform(r)+", "+fw(dw.transform(n))+")"};const f_={test:l_("#"),parse:function(e){let t="",r="",n="",i="";return e.length>5?(t=e.substring(1,3),r=e.substring(3,5),n=e.substring(5,7),i=e.substring(7,9)):(t=e.substring(1,2),r=e.substring(2,3),n=e.substring(3,4),i=e.substring(4,5),t+=t,r+=r,n+=n,i+=i),{red:parseInt(t,16),green:parseInt(r,16),blue:parseInt(n,16),alpha:i?parseInt(i,16)/255:1}},transform:h_.transform},p_={test:l_("hsl","hue"),parse:u_("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:r,alpha:n=1})=>"hsla("+Math.round(e)+", "+ww.transform(fw(t))+", "+ww.transform(fw(r))+", "+fw(dw.transform(n))+")"},m_={test:e=>h_.test(e)||f_.test(e)||p_.test(e),parse:e=>h_.test(e)?h_.parse(e):p_.test(e)?p_.parse(e):f_.parse(e),transform:e=>vw(e)?e:e.hasOwnProperty("red")?h_.transform(e):p_.transform(e)},g_=(e,t,r)=>-r*e+r*t+e;function v_(e,t,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?e+6*(t-e)*r:r<.5?t:r<2/3?e+(t-e)*(2/3-r)*6:e}const y_=(e,t,r)=>{const n=e*e;return Math.sqrt(Math.max(0,r*(t*t-n)+n))},b_=[f_,h_,p_];function w_(e){const t=(e=>b_.find((t=>t.test(e))))(e);Nx(Boolean(t),`'${e}' is not an animatable color. Use the equivalent color code instead.`);let r=t.parse(e);return t===p_&&(r=function({hue:e,saturation:t,lightness:r,alpha:n}){e/=360,r/=100;let i=0,o=0,a=0;if(t/=100){const n=r<.5?r*(1+t):r+t-r*t,s=2*r-n;i=v_(s,n,e+1/3),o=v_(s,n,e),a=v_(s,n,e-1/3)}else i=o=a=r;return{red:Math.round(255*i),green:Math.round(255*o),blue:Math.round(255*a),alpha:n}}(r)),r}const x_=(e,t)=>{const r=w_(e),n=w_(t),i={...r};return e=>(i.red=y_(r.red,n.red,e),i.green=y_(r.green,n.green,e),i.blue=y_(r.blue,n.blue,e),i.alpha=g_(r.alpha,n.alpha,e),h_.transform(i))};const __={regex:/var\s*\(\s*--[\w-]+(\s*,\s*(?:(?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)+)?\s*\)/g,countKey:"Vars",token:"${v}",parse:nx},S_={regex:mw,countKey:"Colors",token:"${c}",parse:m_.parse},k_={regex:pw,countKey:"Numbers",token:"${n}",parse:uw.parse};function E_(e,{regex:t,countKey:r,token:n,parse:i}){const o=e.tokenised.match(t);o&&(e["num"+r]=o.length,e.tokenised=e.tokenised.replace(t,n),e.values.push(...o.map(i)))}function A_(e){const t=e.toString(),r={value:t,tokenised:t,values:[],numVars:0,numColors:0,numNumbers:0};return r.value.includes("var(--")&&E_(r,__),E_(r,S_),E_(r,k_),r}function P_(e){return A_(e).values}function O_(e){const{values:t,numColors:r,numVars:n,tokenised:i}=A_(e),o=t.length;return e=>{let t=i;for(let i=0;i"number"===typeof e?0:e;const C_={test:function(e){var t,r;return isNaN(e)&&vw(e)&&((null===(t=e.match(pw))||void 0===t?void 0:t.length)||0)+((null===(r=e.match(mw))||void 0===r?void 0:r.length)||0)>0},parse:P_,createTransformer:O_,getAnimatableNone:function(e){const t=P_(e);return O_(e)(t.map(T_))}},j_=(e,t)=>r=>`${r>0?t:e}`;function R_(e,t){return"number"===typeof e?r=>g_(e,t,r):m_.test(e)?x_(e,t):e.startsWith("var(")?j_(e,t):L_(e,t)}const I_=(e,t)=>{const r=[...e],n=r.length,i=e.map(((e,r)=>R_(e,t[r])));return e=>{for(let t=0;t{const r={...e,...t},n={};for(const i in r)void 0!==e[i]&&void 0!==t[i]&&(n[i]=R_(e[i],t[i]));return e=>{for(const t in n)r[t]=n[t](e);return r}},L_=(e,t)=>{const r=C_.createTransformer(t),n=A_(e),i=A_(t);return n.numVars===i.numVars&&n.numColors===i.numColors&&n.numNumbers>=i.numNumbers?gx(I_(n.values,i.values),r):(Lx(!0,`Complex values '${e}' and '${t}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`),j_(e,t))},N_=(e,t,r)=>{const n=t-e;return 0===n?1:(r-e)/n},D_=(e,t)=>r=>g_(e,t,r);function z_(e,t,r){const n=[],i=r||function(e){return"number"===typeof e?D_:"string"===typeof e?m_.test(e)?x_:L_:Array.isArray(e)?I_:"object"===typeof e?M_:D_}(e[0]),o=e.length-1;for(let a=0;at[0];e[0]>e[o-1]&&(e=[...e].reverse(),t=[...t].reverse());const a=z_(t,n,i),s=a.length,c=t=>{let r=0;if(s>1)for(;rc(lw(e[0],e[o-1],t)):c}function U_(e){const t=[0];return function(e,t){const r=e[e.length-1];for(let n=1;n<=t;n++){const i=N_(0,t,n);e.push(g_(r,1,i))}}(t,e.length-1),t}function F_({duration:e=300,keyframes:t,times:r,ease:n="easeInOut"}){const i=Jx(n)?n.map(c_):c_(n),o={done:!1,value:t[0]},a=function(e,t){return e.map((e=>e*t))}(r&&r.length===t.length?r:U_(t),e),s=B_(a,t,{ease:Array.isArray(i)?i:(c=t,l=i,c.map((()=>l||Xx)).splice(0,c.length-1))});var c,l;return{calculatedDuration:e,next:t=>(o.value=s(t),o.done=t>=e,o)}}function $_(e,t){return t?e*(1e3/t):0}const H_=5;function V_(e,t,r){const n=Math.max(t-H_,0);return $_(r-e(n),t-n)}const q_=.001,K_=.01,W_=10,G_=.05,Z_=1;function Y_({duration:e=800,bounce:t=.25,velocity:r=0,mass:n=1}){let i,o;Lx(e<=Dx(W_),"Spring duration must be 10 seconds or less");let a=1-t;a=lw(G_,Z_,a),e=lw(K_,W_,zx(e)),a<1?(i=t=>{const n=t*a,i=n*e,o=n-r,s=J_(t,a),c=Math.exp(-i);return q_-o/s*c},o=t=>{const n=t*a*e,o=n*r+r,s=Math.pow(a,2)*Math.pow(t,2)*e,c=Math.exp(-n),l=J_(Math.pow(t,2),a);return(-i(t)+q_>0?-1:1)*((o-s)*c)/l}):(i=t=>Math.exp(-t*e)*((t-r)*e+1)-q_,o=t=>Math.exp(-t*e)*(e*e*(r-t)));const s=function(e,t,r){let n=r;for(let i=1;ivoid 0!==e[t]))}function rS({keyframes:e,restDelta:t,restSpeed:r,...n}){const i=e[0],o=e[e.length-1],a={done:!1,value:i},{stiffness:s,damping:c,mass:l,duration:u,velocity:d,isResolvedFromDuration:h}=function(e){let t={velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1,...e};if(!tS(e,eS)&&tS(e,Q_)){const r=Y_(e);t={...t,...r,mass:1},t.isResolvedFromDuration=!0}return t}({...n,velocity:-zx(n.velocity||0)}),f=d||0,p=c/(2*Math.sqrt(s*l)),m=o-i,g=zx(Math.sqrt(s/l)),v=Math.abs(m)<5;let y;if(r||(r=v?.01:2),t||(t=v?.005:.5),p<1){const e=J_(g,p);y=t=>{const r=Math.exp(-p*g*t);return o-r*((f+p*g*m)/e*Math.sin(e*t)+m*Math.cos(e*t))}}else if(1===p)y=e=>o-Math.exp(-g*e)*(m+(f+g*m)*e);else{const e=g*Math.sqrt(p*p-1);y=t=>{const r=Math.exp(-p*g*t),n=Math.min(e*t,300);return o-r*((f+p*g*m)*Math.sinh(n)+e*m*Math.cosh(n))/e}}return{calculatedDuration:h&&u||null,next:e=>{const n=y(e);if(h)a.done=e>=u;else{let i=f;0!==e&&(i=p<1?V_(y,e,n):0);const s=Math.abs(i)<=r,c=Math.abs(o-n)<=t;a.done=s&&c}return a.value=a.done?o:n,a}}}function nS({keyframes:e,velocity:t=0,power:r=.8,timeConstant:n=325,bounceDamping:i=10,bounceStiffness:o=500,modifyTarget:a,min:s,max:c,restDelta:l=.5,restSpeed:u}){const d=e[0],h={done:!1,value:d},f=e=>void 0===s?c:void 0===c||Math.abs(s-e)-p*Math.exp(-e/n),y=e=>g+v(e),b=e=>{const t=v(e),r=y(e);h.done=Math.abs(t)<=l,h.value=h.done?g:r};let w,x;const _=e=>{(e=>void 0!==s&&ec)(h.value)&&(w=e,x=rS({keyframes:[h.value,f(h.value)],velocity:V_(y,e,h.value),damping:i,stiffness:o,restDelta:l,restSpeed:u}))};return _(0),{calculatedDuration:null,next:e=>{let t=!1;return x||void 0!==w||(t=!0,b(e),_(e)),void 0!==w&&e>w?x.next(e-w):(!t&&b(e),h)}}}let iS;function oS(){iS=void 0}const aS={now:()=>(void 0===iS&&aS.set(ax.isProcessing||Pb?ax.timestamp:performance.now()),iS),set:e=>{iS=e,queueMicrotask(oS)}},sS=e=>{const t=({timestamp:t})=>e(t);return{start:()=>ix.update(t,!0),stop:()=>ox(t),now:()=>ax.isProcessing?ax.timestamp:aS.now()}},cS=2e4;function lS(e){let t=0;let r=e.next(t);for(;!r.done&&t=cS?1/0:t}const uS={decay:nS,inertia:nS,tween:F_,keyframes:F_,spring:rS};function dS({autoplay:e=!0,delay:t=0,driver:r=sS,keyframes:n,type:i="keyframes",repeat:o=0,repeatDelay:a=0,repeatType:s="loop",onPlay:c,onStop:l,onComplete:u,onUpdate:d,...h}){let f,p,m=1,g=!1;const v=()=>{p=new Promise((e=>{f=e}))};let y;v();const b=uS[i]||F_;let w;b!==F_&&"number"!==typeof n[0]&&(w=B_([0,100],n,{clamp:!1}),n=[0,100]);const x=b({...h,keyframes:n});let _;"mirror"===s&&(_=b({...h,keyframes:[...n].reverse(),velocity:-(h.velocity||0)}));let S="idle",k=null,E=null,A=null;null===x.calculatedDuration&&o&&(x.calculatedDuration=lS(x));const{calculatedDuration:P}=x;let O=1/0,T=1/0;null!==P&&(O=P+a,T=O*(o+1)-a);let C=0;const j=e=>{if(null===E)return;m>0&&(E=Math.min(E,e)),m<0&&(E=Math.min(e-T/m,E)),C=null!==k?k:Math.round(e-E)*m;const r=C-t*(m>=0?1:-1),i=m>=0?r<0:r>T;C=Math.max(r,0),"finished"===S&&null===k&&(C=T);let c=C,l=x;if(o){const e=Math.min(C,T)/O;let t=Math.floor(e),r=e%1;!r&&e>=1&&(r=1),1===r&&t--,t=Math.min(t,o+1);Boolean(t%2)&&("reverse"===s?(r=1-r,a&&(r-=a/O)):"mirror"===s&&(l=_)),c=lw(0,1,r)*O}const u=i?{done:!1,value:n[0]}:l.next(c);w&&(u.value=w(u.value));let{done:h}=u;i||null===P||(h=m>=0?C>=T:C<=0);const f=null===k&&("finished"===S||"running"===S&&h);return d&&d(u.value),f&&M(),u},R=()=>{y&&y.stop(),y=void 0},I=()=>{S="idle",R(),f(),v(),E=A=null},M=()=>{S="finished",u&&u(),R(),f()},L=()=>{if(g)return;y||(y=r(j));const e=y.now();c&&c(),null!==k?E=e-k:E&&"finished"!==S||(E=e),"finished"===S&&v(),A=E,k=null,S="running",y.start()};e&&L();const N={then:(e,t)=>p.then(e,t),get time(){return zx(C)},set time(e){e=Dx(e),C=e,null===k&&y&&0!==m?E=y.now()-e/m:k=e},get duration(){const e=null===x.calculatedDuration?lS(x):x.calculatedDuration;return zx(e)},get speed(){return m},set speed(e){e!==m&&y&&(m=e,N.time=zx(C))},get state(){return S},play:L,pause:()=>{S="paused",k=C},stop:()=>{g=!0,"idle"!==S&&(S="idle",l&&l(),I())},cancel:()=>{null!==A&&j(A),I()},complete:()=>{S="finished"},sample:e=>(E=0,j(e))};return N}const hS=function(e){let t;return()=>(void 0===t&&(t=e()),t)}((()=>Object.hasOwnProperty.call(Element.prototype,"animate"))),fS=new Set(["opacity","clipPath","filter","transform","backgroundColor"]);function pS(e,t,{onUpdate:r,onComplete:n,...i}){if(!(hS()&&fS.has(t)&&!i.repeatDelay&&"mirror"!==i.repeatType&&0!==i.damping&&"inertia"!==i.type))return!1;let o,a,s=!1,c=!1;const l=()=>{a=new Promise((e=>{o=e}))};l();let{keyframes:u,duration:d=300,ease:h,times:f}=i;if(((e,t)=>"spring"===t.type||"backgroundColor"===e||!Fx(t.ease))(t,i)){const e=dS({...i,repeat:0,delay:0});let t={done:!1,value:u[0]};const r=[];let n=0;for(;!t.done&&n<2e4;)t=e.sample(n),r.push(t.value),n+=10;f=void 0,u=r,d=n-10,h="linear"}const p=function(e,t,r,{delay:n=0,duration:i,repeat:o=0,repeatType:a="loop",ease:s,times:c}={}){const l={[t]:r};c&&(l.offset=c);const u=Vx(s);return Array.isArray(u)&&(l.easing=u),e.animate(l,{delay:n,duration:i,easing:Array.isArray(u)?"linear":u,fill:"both",iterations:o+1,direction:"reverse"===a?"alternate":"normal"})}(e.owner.current,t,u,{...i,duration:d,ease:h,times:f}),m=()=>{c=!1,p.cancel()},g=()=>{c=!0,ix.update(m),o(),l()};p.onfinish=()=>{c||(e.set(function(e,{repeat:t,repeatType:r="loop"}){return e[t&&"loop"!==r&&t%2===1?0:e.length-1]}(u,i)),n&&n(),g())};return{then:(e,t)=>a.then(e,t),attachTimeline:e=>(p.timeline=e,p.onfinish=null,nx),get time(){return zx(p.currentTime||0)},set time(e){p.currentTime=Dx(e)},get speed(){return p.playbackRate},set speed(e){p.playbackRate=e},get duration(){return zx(d)},play:()=>{s||(p.play(),ox(m))},pause:()=>p.pause(),stop:()=>{if(s=!0,"idle"===p.playState)return;const{currentTime:t}=p;if(t){const r=dS({...i,autoplay:!1});e.setWithVelocity(r.sample(t-10).value,r.sample(t).value,10)}g()},complete:()=>{c||p.finish()},cancel:g}}const mS={type:"spring",stiffness:500,damping:25,restSpeed:10},gS={type:"keyframes",duration:.8},vS={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},yS=(e,{keyframes:t})=>t.length>2?gS:ew.has(e)?e.startsWith("scale")?{type:"spring",stiffness:550,damping:0===t[1]?2*Math.sqrt(550):30,restSpeed:10}:mS:vS,bS=(e,t)=>"zIndex"!==e&&(!("number"!==typeof t&&!Array.isArray(t))||!("string"!==typeof t||!C_.test(t)&&"0"!==t||t.startsWith("url("))),wS=new Set(["brightness","contrast","saturate","opacity"]);function xS(e){const[t,r]=e.slice(0,-1).split("(");if("drop-shadow"===t)return e;const[n]=r.match(pw)||[];if(!n)return e;const i=r.replace(n,"");let o=wS.has(t)?1:0;return n!==r&&(o*=100),t+"("+o+i+")"}const _S=/([a-z-]*)\(.*?\)/g,SS={...C_,getAnimatableNone:e=>{const t=e.match(_S);return t?t.map(xS).join(" "):e}},kS={...Aw,color:m_,backgroundColor:m_,outlineColor:m_,fill:m_,stroke:m_,borderColor:m_,borderTopColor:m_,borderRightColor:m_,borderBottomColor:m_,borderLeftColor:m_,filter:SS,WebkitFilter:SS},ES=e=>kS[e];function AS(e,t){let r=ES(e);return r!==SS&&(r=C_),r.getAnimatableNone?r.getAnimatableNone(t):void 0}const PS=e=>/^0[^.\s]+$/.test(e);function OS(e){return"number"===typeof e?0===e:null!==e?"none"===e||"0"===e||PS(e):void 0}function TS(e,t){return e[t]||e.default||e}const CS=(e,t,r,n={})=>i=>{const o=TS(n,e)||{},a=o.delay||n.delay||0;let{elapsed:s=0}=n;s-=Dx(a);const c=function(e,t,r,n){const i=bS(t,r);let o;o=Array.isArray(r)?[...r]:[null,r];const a=void 0!==n.from?n.from:e.get();let s;const c=[];for(let l=0;l{t.set(e),o.onUpdate&&o.onUpdate(e)},onComplete:()=>{i(),o.onComplete&&o.onComplete()}};if(function({when:e,delay:t,delayChildren:r,staggerChildren:n,staggerDirection:i,repeat:o,repeatType:a,repeatDelay:s,from:c,elapsed:l,...u}){return!!Object.keys(u).length}(o)||(f={...f,...yS(e,f)}),f.duration&&(f.duration=Dx(f.duration)),f.repeatDelay&&(f.repeatDelay=Dx(f.repeatDelay)),!d||!h||Bx||!1===o.type||Ab)return function({keyframes:e,delay:t,onUpdate:r,onComplete:n}){const i=()=>(r&&r(e[e.length-1]),n&&n(),{time:0,speed:1,duration:0,play:nx,pause:nx,stop:nx,then:e=>(e(),Promise.resolve()),cancel:nx,complete:nx});return t?dS({keyframes:[0,1],duration:0,delay:t,onComplete:i}):i()}(Bx?{...f,delay:0}:f);if(!n.isHandoff&&t.owner&&t.owner.current instanceof HTMLElement&&!t.owner.getProps().onUpdate){const r=pS(t,e,f);if(r)return r}return dS(f)};function jS(e){return Boolean(rw(e)&&e.add)}const RS=e=>/^\-?\d*\.?\d+$/.test(e);function IS(e,t){-1===e.indexOf(t)&&e.push(t)}function MS(e,t){const r=e.indexOf(t);r>-1&&e.splice(r,1)}class LS{constructor(){this.subscriptions=[]}add(e){return IS(this.subscriptions,e),()=>MS(this.subscriptions,e)}notify(e,t,r){const n=this.subscriptions.length;if(n)if(1===n)this.subscriptions[0](e,t,r);else for(let i=0;i{const r=aS.now();this.updatedAt!==r&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(e),this.current!==this.prev&&this.events.change&&this.events.change.notify(this.current),t&&this.events.renderRequest&&this.events.renderRequest.notify(this.current)},this.hasAnimated=!1,this.setCurrent(e),this.canTrackVelocity=(e=>!isNaN(parseFloat(e)))(this.current),this.owner=t.owner}setCurrent(e){this.current=e,this.updatedAt=aS.now()}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return this.on("change",e)}on(e,t){this.events[e]||(this.events[e]=new LS);const r=this.events[e].add(t);return"change"===e?()=>{r(),ix.read((()=>{this.events.change.getSize()||this.stop()}))}:r}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,t){this.passiveEffect=e,this.stopPassiveEffect=t}set(e,t=!0){t&&this.passiveEffect?this.passiveEffect(e,this.updateAndNotify):this.updateAndNotify(e,t)}setWithVelocity(e,t,r){this.set(t),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-r}jump(e){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}get(){return NS.current&&NS.current.push(this),this.current}getPrevious(){return this.prev}getVelocity(){const e=aS.now();if(!this.canTrackVelocity||void 0===this.prevFrameValue||e-this.updatedAt>30)return 0;const t=Math.min(this.updatedAt-this.prevUpdatedAt,30);return $_(parseFloat(this.current)-parseFloat(this.prevFrameValue),t)}start(e){return this.stop(),new Promise((t=>{this.hasAnimated=!0,this.animation=e(t),this.events.animationStart&&this.events.animationStart.notify()})).then((()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()}))}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function zS(e,t){return new DS(e,t)}const BS=e=>t=>t.test(e),US=[uw,xw,ww,bw,Sw,_w,{test:e=>"auto"===e,parse:e=>e}],FS=e=>US.find(BS(e)),$S=[...US,m_,C_],HS=e=>$S.find(BS(e));function VS(e,t,r){e.hasValue(t)?e.getValue(t).set(r):e.addValue(t,zS(r))}function qS(e,t){const r=Mx(e,t);let{transitionEnd:n={},transition:i={},...o}=r?e.makeTargetAnimatable(r,!1):{};o={...o,...n};for(const a in o){VS(e,a,Qw(o[a]))}}function KS(e,t){if(!t)return;return(t[e]||t.default||t).from}function WS({protectedKeys:e,needsAnimating:t},r){const n=e.hasOwnProperty(r)&&!0!==t[r];return t[r]=!1,n}function GS(e,t){const r=e.get();if(!Array.isArray(t))return r!==t;for(let n=0;nc.remove(d)))),l.push(h)}return a&&Promise.all(l).then((()=>{a&&qS(e,a)})),l}function YS(e,t,r={}){const n=Mx(e,t,r.custom);let{transition:i=e.getDefaultTransition()||{}}=n||{};r.transitionOverride&&(i=r.transitionOverride);const o=n?()=>Promise.all(ZS(e,n,r)):()=>Promise.resolve(),a=e.variantChildren&&e.variantChildren.size?(n=0)=>{const{delayChildren:o=0,staggerChildren:a,staggerDirection:s}=i;return function(e,t,r=0,n=0,i=1,o){const a=[],s=(e.variantChildren.size-1)*n,c=1===i?(e=0)=>e*n:(e=0)=>s-e*n;return Array.from(e.variantChildren).sort(XS).forEach(((e,n)=>{e.notify("AnimationStart",t),a.push(YS(e,t,{...o,delay:r+c(n)}).then((()=>e.notify("AnimationComplete",t))))})),Promise.all(a)}(e,t,o+n,a,s,r)}:()=>Promise.resolve(),{when:s}=i;if(s){const[e,t]="beforeChildren"===s?[o,a]:[a,o];return e().then((()=>t()))}return Promise.all([o(),a(r.delay)])}function XS(e,t){return e.sortNodePosition(t)}const JS=[...Nb].reverse(),QS=Nb.length;function ek(e){return t=>Promise.all(t.map((({animation:t,options:r})=>function(e,t,r={}){let n;if(e.notify("AnimationStart",t),Array.isArray(t)){const i=t.map((t=>YS(e,t,r)));n=Promise.all(i)}else if("string"===typeof t)n=YS(e,t,r);else{const i="function"===typeof t?Mx(e,t,r.custom):t;n=Promise.all(ZS(e,i,r))}return n.then((()=>e.notify("AnimationComplete",t)))}(e,t,r))))}function tk(e){let t=ek(e);const r={animate:nk(!0),whileInView:nk(),whileHover:nk(),whileTap:nk(),whileDrag:nk(),whileFocus:nk(),exit:nk()};let n=!0;const i=(t,r)=>{const n=Mx(e,r);if(n){const{transition:e,transitionEnd:r,...i}=n;t={...t,...i,...r}}return t};function o(o,a){const s=e.getProps(),c=e.getVariantContext(!0)||{},l=[],u=new Set;let d={},h=1/0;for(let t=0;th&&g,w=!1;const x=Array.isArray(m)?m:[m];let _=x.reduce(i,{});!1===v&&(_={});const{prevResolvedValues:S={}}=p,k={...S,..._},E=e=>{b=!0,u.has(e)&&(w=!0,u.delete(e)),p.needsAnimating[e]=!0};for(const e in k){const t=_[e],r=S[e];if(d.hasOwnProperty(e))continue;let n=!1;n=Xw(t)&&Xw(r)?!Ix(t,r):t!==r,n?void 0!==t?E(e):u.add(e):void 0!==t&&u.has(e)?E(e):p.protectedKeys[e]=!0}p.prevProp=m,p.prevResolvedValues=_,p.isActive&&(d={...d,..._}),n&&e.blockInitialAnimation&&(b=!1),!b||y&&!w||l.push(...x.map((e=>({animation:e,options:{type:f,...o}}))))}if(u.size){const t={};u.forEach((r=>{const n=e.getBaseTarget(r);void 0!==n&&(t[r]=n)})),l.push({animation:t})}let f=Boolean(l.length);return!n||!1!==s.initial&&s.initial!==s.animate||e.manuallyAnimateOnMount||(f=!1),n=!1,f?t(l):Promise.resolve()}return{animateChanges:o,setActive:function(t,n,i){var a;if(r[t].isActive===n)return Promise.resolve();null===(a=e.variantChildren)||void 0===a||a.forEach((e=>{var r;return null===(r=e.animationState)||void 0===r?void 0:r.setActive(t,n)})),r[t].isActive=n;const s=o(i,t);for(const e in r)r[e].protectedKeys={};return s},setAnimateFunction:function(r){t=r(e)},getState:()=>r}}function rk(e,t){return"string"===typeof t?t!==e:!!Array.isArray(t)&&!Ix(t,e)}function nk(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}let ik=0;const ok={animation:{Feature:class extends _x{constructor(e){super(e),e.animationState||(e.animationState=tk(e))}updateAnimationControlsSubscription(){const{animate:e}=this.node.getProps();this.unmount(),Lb(e)&&(this.unmount=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:e}=this.node.getProps(),{animate:t}=this.node.prevProps||{};e!==t&&this.updateAnimationControlsSubscription()}unmount(){}}},exit:{Feature:class extends _x{constructor(){super(...arguments),this.id=ik++}update(){if(!this.node.presenceContext)return;const{isPresent:e,onExitComplete:t,custom:r}=this.node.presenceContext,{isPresent:n}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===n)return;const i=this.node.animationState.setActive("exit",!e,{custom:null!==r&&void 0!==r?r:this.node.getProps().custom});t&&!e&&i.then((()=>t(this.id)))}mount(){const{register:e}=this.node.presenceContext||{};e&&(this.unmount=e(this.id))}unmount(){}}}},ak=(e,t)=>Math.abs(e-t);class sk{constructor(e,t,{transformPagePoint:r,contextWindow:n,dragSnapToOrigin:i=!1}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!this.lastMoveEvent||!this.lastMoveEventInfo)return;const e=uk(this.lastMoveEventInfo,this.history),t=null!==this.startEvent,r=function(e,t){const r=ak(e.x,t.x),n=ak(e.y,t.y);return Math.sqrt(r**2+n**2)}(e.offset,{x:0,y:0})>=3;if(!t&&!r)return;const{point:n}=e,{timestamp:i}=ax;this.history.push({...n,timestamp:i});const{onStart:o,onMove:a}=this.handlers;t||(o&&o(this.lastMoveEvent,e),this.startEvent=this.lastMoveEvent),a&&a(this.lastMoveEvent,e)},this.handlePointerMove=(e,t)=>{this.lastMoveEvent=e,this.lastMoveEventInfo=ck(t,this.transformPagePoint),ix.update(this.updatePoint,!0)},this.handlePointerUp=(e,t)=>{this.end();const{onEnd:r,onSessionEnd:n,resumeAnimation:i}=this.handlers;if(this.dragSnapToOrigin&&i&&i(),!this.lastMoveEvent||!this.lastMoveEventInfo)return;const o=uk("pointercancel"===e.type?this.lastMoveEventInfo:ck(t,this.transformPagePoint),this.history);this.startEvent&&r&&r(e,o),n&&n(e,o)},!dx(e))return;this.dragSnapToOrigin=i,this.handlers=t,this.transformPagePoint=r,this.contextWindow=n||window;const o=ck(hx(e),this.transformPagePoint),{point:a}=o,{timestamp:s}=ax;this.history=[{...a,timestamp:s}];const{onSessionStart:c}=t;c&&c(e,uk(o,this.history)),this.removeListeners=gx(px(this.contextWindow,"pointermove",this.handlePointerMove),px(this.contextWindow,"pointerup",this.handlePointerUp),px(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),ox(this.updatePoint)}}function ck(e,t){return t?{point:t(e.point)}:e}function lk(e,t){return{x:e.x-t.x,y:e.y-t.y}}function uk({point:e},t){return{point:e,delta:lk(e,hk(t)),offset:lk(e,dk(t)),velocity:fk(t,.1)}}function dk(e){return e[0]}function hk(e){return e[e.length-1]}function fk(e,t){if(e.length<2)return{x:0,y:0};let r=e.length-1,n=null;const i=hk(e);for(;r>=0&&(n=e[r],!(i.timestamp-n.timestamp>Dx(t)));)r--;if(!n)return{x:0,y:0};const o=zx(i.timestamp-n.timestamp);if(0===o)return{x:0,y:0};const a={x:(i.x-n.x)/o,y:(i.y-n.y)/o};return a.x===1/0&&(a.x=0),a.y===1/0&&(a.y=0),a}function pk(e){return e.max-e.min}function mk(e,t=0,r=.01){return Math.abs(e-t)<=r}function gk(e,t,r,n=.5){e.origin=n,e.originPoint=g_(t.min,t.max,e.origin),e.scale=pk(r)/pk(t),(mk(e.scale,1,1e-4)||isNaN(e.scale))&&(e.scale=1),e.translate=g_(r.min,r.max,e.origin)-e.originPoint,(mk(e.translate)||isNaN(e.translate))&&(e.translate=0)}function vk(e,t,r,n){gk(e.x,t.x,r.x,n?n.originX:void 0),gk(e.y,t.y,r.y,n?n.originY:void 0)}function yk(e,t,r){e.min=r.min+t.min,e.max=e.min+pk(t)}function bk(e,t,r){e.min=t.min-r.min,e.max=e.min+pk(t)}function wk(e,t,r){bk(e.x,t.x,r.x),bk(e.y,t.y,r.y)}function xk(e,t,r){return{min:void 0!==t?e.min+t:void 0,max:void 0!==r?e.max+r-(e.max-e.min):void 0}}function _k(e,t){let r=t.min-e.min,n=t.max-e.max;return t.max-t.min({x:{translate:0,scale:1,origin:0,originPoint:0},y:{translate:0,scale:1,origin:0,originPoint:0}}),Pk=()=>({x:{min:0,max:0},y:{min:0,max:0}});function Ok(e){return[e("x"),e("y")]}function Tk({top:e,left:t,right:r,bottom:n}){return{x:{min:t,max:r},y:{min:e,max:n}}}function Ck(e){return void 0===e||1===e}function jk({scale:e,scaleX:t,scaleY:r}){return!Ck(e)||!Ck(t)||!Ck(r)}function Rk(e){return jk(e)||Ik(e)||e.z||e.rotate||e.rotateX||e.rotateY}function Ik(e){return Mk(e.x)||Mk(e.y)}function Mk(e){return e&&"0%"!==e}function Lk(e,t,r){return r+t*(e-r)}function Nk(e,t,r,n,i){return void 0!==i&&(e=Lk(e,i,n)),Lk(e,r,n)+t}function Dk(e,t=0,r=1,n,i){e.min=Nk(e.min,t,r,n,i),e.max=Nk(e.max,t,r,n,i)}function zk(e,{x:t,y:r}){Dk(e.x,t.translate,t.scale,t.originPoint),Dk(e.y,r.translate,r.scale,r.originPoint)}function Bk(e){return Number.isInteger(e)||e>1.0000000000001||e<.999999999999?e:1}function Uk(e,t){e.min=e.min+t,e.max=e.max+t}function Fk(e,t,[r,n,i]){const o=void 0!==t[i]?t[i]:.5,a=g_(e.min,e.max,o);Dk(e,t[r],t[n],a,t.scale)}const $k=["x","scaleX","originX"],Hk=["y","scaleY","originY"];function Vk(e,t){Fk(e.x,t,$k),Fk(e.y,t,Hk)}function qk(e,t){return Tk(function(e,t){if(!t)return e;const r=t({x:e.left,y:e.top}),n=t({x:e.right,y:e.bottom});return{top:r.y,left:r.x,bottom:n.y,right:n.x}}(e.getBoundingClientRect(),t))}const Kk=({current:e})=>e?e.ownerDocument.defaultView:null,Wk=new WeakMap;class Gk{constructor(e){this.openGlobalLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=Pk(),this.visualElement=e}start(e,{snapToCursor:t=!1}={}){const{presenceContext:r}=this.visualElement;if(r&&!1===r.isPresent)return;const{dragSnapToOrigin:n}=this.getProps();this.panSession=new sk(e,{onSessionStart:e=>{const{dragSnapToOrigin:r}=this.getProps();r?this.pauseAnimation():this.stopAnimation(),t&&this.snapToCursor(hx(e,"page").point)},onStart:(e,t)=>{const{drag:r,dragPropagation:n,onDragStart:i}=this.getProps();if(r&&!n&&(this.openGlobalLock&&this.openGlobalLock(),this.openGlobalLock=wx(r),!this.openGlobalLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Ok((e=>{let t=this.getAxisMotionValue(e).get()||0;if(ww.test(t)){const{projection:r}=this.visualElement;if(r&&r.layout){const n=r.layout.layoutBox[e];if(n){t=pk(n)*(parseFloat(t)/100)}}}this.originPoint[e]=t})),i&&ix.update((()=>i(e,t)),!1,!0);const{animationState:o}=this.visualElement;o&&o.setActive("whileDrag",!0)},onMove:(e,t)=>{const{dragPropagation:r,dragDirectionLock:n,onDirectionLock:i,onDrag:o}=this.getProps();if(!r&&!this.openGlobalLock)return;const{offset:a}=t;if(n&&null===this.currentDirection)return this.currentDirection=function(e,t=10){let r=null;Math.abs(e.y)>t?r="y":Math.abs(e.x)>t&&(r="x");return r}(a),void(null!==this.currentDirection&&i&&i(this.currentDirection));this.updateAxis("x",t.point,a),this.updateAxis("y",t.point,a),this.visualElement.render(),o&&o(e,t)},onSessionEnd:(e,t)=>this.stop(e,t),resumeAnimation:()=>Ok((e=>{var t;return"paused"===this.getAnimationState(e)&&(null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.play())}))},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:n,contextWindow:Kk(this.visualElement)})}stop(e,t){const r=this.isDragging;if(this.cancel(),!r)return;const{velocity:n}=t;this.startAnimation(n);const{onDragEnd:i}=this.getProps();i&&ix.update((()=>i(e,t)))}cancel(){this.isDragging=!1;const{projection:e,animationState:t}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:r}=this.getProps();!r&&this.openGlobalLock&&(this.openGlobalLock(),this.openGlobalLock=null),t&&t.setActive("whileDrag",!1)}updateAxis(e,t,r){const{drag:n}=this.getProps();if(!r||!Zk(e,n,this.currentDirection))return;const i=this.getAxisMotionValue(e);let o=this.originPoint[e]+r[e];this.constraints&&this.constraints[e]&&(o=function(e,{min:t,max:r},n){return void 0!==t&&er&&(e=n?g_(r,e,n.max):Math.min(e,r)),e}(o,this.constraints[e],this.elastic[e])),i.set(o)}resolveConstraints(){var e;const{dragConstraints:t,dragElastic:r}=this.getProps(),n=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):null===(e=this.visualElement.projection)||void 0===e?void 0:e.layout,i=this.constraints;t&&Ib(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):this.constraints=!(!t||!n)&&function(e,{top:t,left:r,bottom:n,right:i}){return{x:xk(e.x,r,i),y:xk(e.y,t,n)}}(n.layoutBox,t),this.elastic=function(e=Sk){return!1===e?e=0:!0===e&&(e=Sk),{x:kk(e,"left","right"),y:kk(e,"top","bottom")}}(r),i!==this.constraints&&n&&this.constraints&&!this.hasMutatedConstraints&&Ok((e=>{this.getAxisMotionValue(e)&&(this.constraints[e]=function(e,t){const r={};return void 0!==t.min&&(r.min=t.min-e.min),void 0!==t.max&&(r.max=t.max-e.min),r}(n.layoutBox[e],this.constraints[e]))}))}resolveRefConstraints(){const{dragConstraints:e,onMeasureDragConstraints:t}=this.getProps();if(!e||!Ib(e))return!1;const r=e.current;Nx(null!==r,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.");const{projection:n}=this.visualElement;if(!n||!n.layout)return!1;const i=function(e,t,r){const n=qk(e,r),{scroll:i}=t;return i&&(Uk(n.x,i.offset.x),Uk(n.y,i.offset.y)),n}(r,n.root,this.visualElement.getTransformPagePoint());let o=function(e,t){return{x:_k(e.x,t.x),y:_k(e.y,t.y)}}(n.layout.layoutBox,i);if(t){const e=t(function({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}(o));this.hasMutatedConstraints=!!e,e&&(o=Tk(e))}return o}startAnimation(e){const{drag:t,dragMomentum:r,dragElastic:n,dragTransition:i,dragSnapToOrigin:o,onDragTransitionEnd:a}=this.getProps(),s=this.constraints||{},c=Ok((a=>{if(!Zk(a,t,this.currentDirection))return;let c=s&&s[a]||{};o&&(c={min:0,max:0});const l=n?200:1e6,u=n?40:1e7,d={type:"inertia",velocity:r?e[a]:0,bounceStiffness:l,bounceDamping:u,timeConstant:750,restDelta:1,restSpeed:10,...i,...c};return this.startAxisValueAnimation(a,d)}));return Promise.all(c).then(a)}startAxisValueAnimation(e,t){const r=this.getAxisMotionValue(e);return r.start(CS(e,r,0,t))}stopAnimation(){Ok((e=>this.getAxisMotionValue(e).stop()))}pauseAnimation(){Ok((e=>{var t;return null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.pause()}))}getAnimationState(e){var t;return null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.state}getAxisMotionValue(e){const t="_drag"+e.toUpperCase(),r=this.visualElement.getProps(),n=r[t];return n||this.visualElement.getValue(e,(r.initial?r.initial[e]:void 0)||0)}snapToCursor(e){Ok((t=>{const{drag:r}=this.getProps();if(!Zk(t,r,this.currentDirection))return;const{projection:n}=this.visualElement,i=this.getAxisMotionValue(t);if(n&&n.layout){const{min:r,max:o}=n.layout.layoutBox[t];i.set(e[t]-g_(r,o,.5))}}))}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:e,dragConstraints:t}=this.getProps(),{projection:r}=this.visualElement;if(!Ib(t)||!r||!this.constraints)return;this.stopAnimation();const n={x:0,y:0};Ok((e=>{const t=this.getAxisMotionValue(e);if(t){const r=t.get();n[e]=function(e,t){let r=.5;const n=pk(e),i=pk(t);return i>n?r=N_(t.min,t.max-n,e.min):n>i&&(r=N_(e.min,e.max-i,t.min)),lw(0,1,r)}({min:r,max:r},this.constraints[e])}}));const{transformTemplate:i}=this.visualElement.getProps();this.visualElement.current.style.transform=i?i({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.resolveConstraints(),Ok((t=>{if(!Zk(t,e,null))return;const r=this.getAxisMotionValue(t),{min:i,max:o}=this.constraints[t];r.set(g_(i,o,n[t]))}))}addListeners(){if(!this.visualElement.current)return;Wk.set(this.visualElement,this);const e=px(this.visualElement.current,"pointerdown",(e=>{const{drag:t,dragListener:r=!0}=this.getProps();t&&r&&this.start(e)})),t=()=>{const{dragConstraints:e}=this.getProps();Ib(e)&&(this.constraints=this.resolveRefConstraints())},{projection:r}=this.visualElement,n=r.addEventListener("measure",t);r&&!r.layout&&(r.root&&r.root.updateScroll(),r.updateLayout()),t();const i=ux(window,"resize",(()=>this.scalePositionWithinConstraints())),o=r.addEventListener("didUpdate",(({delta:e,hasLayoutChanged:t})=>{this.isDragging&&t&&(Ok((t=>{const r=this.getAxisMotionValue(t);r&&(this.originPoint[t]+=e[t].translate,r.set(r.get()+e[t].translate))})),this.visualElement.render())}));return()=>{i(),e(),n(),o&&o()}}getProps(){const e=this.visualElement.getProps(),{drag:t=!1,dragDirectionLock:r=!1,dragPropagation:n=!1,dragConstraints:i=!1,dragElastic:o=Sk,dragMomentum:a=!0}=e;return{...e,drag:t,dragDirectionLock:r,dragPropagation:n,dragConstraints:i,dragElastic:o,dragMomentum:a}}}function Zk(e,t,r){return(!0===t||t===e)&&(null===r||r===e)}const Yk=e=>(t,r)=>{e&&ix.update((()=>e(t,r)))};const Xk={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function Jk(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const Qk={correct:(e,t)=>{if(!t.target)return e;if("string"===typeof e){if(!xw.test(e))return e;e=parseFloat(e)}return`${Jk(e,t.target.x)}% ${Jk(e,t.target.y)}%`}},eE={correct:(e,{treeScale:t,projectionDelta:r})=>{const n=e,i=C_.parse(e);if(i.length>5)return n;const o=C_.createTransformer(e),a="number"!==typeof i[0]?1:0,s=r.x.scale*t.x,c=r.y.scale*t.y;i[0+a]/=s,i[1+a]/=c;const l=g_(s,c,.5);return"number"===typeof i[2+a]&&(i[2+a]/=l),"number"===typeof i[3+a]&&(i[3+a]/=l),o(i)}};class tE extends n.Component{componentDidMount(){const{visualElement:e,layoutGroup:t,switchLayoutGroup:r,layoutId:n}=this.props,{projection:i}=e;var o;o=nE,Object.assign(Jb,o),i&&(t.group&&t.group.add(i),r&&r.register&&n&&r.register(i),i.root.didUpdate(),i.addEventListener("animationComplete",(()=>{this.safeToRemove()})),i.setOptions({...i.options,onExitComplete:()=>this.safeToRemove()})),Xk.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){const{layoutDependency:t,visualElement:r,drag:n,isPresent:i}=this.props,o=r.projection;return o?(o.isPresent=i,n||e.layoutDependency!==t||void 0===t?o.willUpdate():this.safeToRemove(),e.isPresent!==i&&(i?o.promote():o.relegate()||ix.postRender((()=>{const e=o.getStack();e&&e.members.length||this.safeToRemove()}))),null):null}componentDidUpdate(){const{projection:e}=this.props.visualElement;e&&(e.root.didUpdate(),jb.postRender((()=>{!e.currentAnimation&&e.isLead()&&this.safeToRemove()})))}componentWillUnmount(){const{visualElement:e,layoutGroup:t,switchLayoutGroup:r}=this.props,{projection:n}=e;n&&(n.scheduleCheckAfterUnmount(),t&&t.group&&t.group.remove(n),r&&r.deregister&&r.deregister(n))}safeToRemove(){const{safeToRemove:e}=this.props;e&&e()}render(){return null}}function rE(e){const[t,r]=vb(),i=(0,n.useContext)(Vb);return n.createElement(tE,{...e,layoutGroup:i,switchLayoutGroup:(0,n.useContext)(qb),isPresent:t,safeToRemove:r})}const nE={borderRadius:{...Qk,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:Qk,borderTopRightRadius:Qk,borderBottomLeftRadius:Qk,borderBottomRightRadius:Qk,boxShadow:eE},iE=["TopLeft","TopRight","BottomLeft","BottomRight"],oE=iE.length,aE=e=>"string"===typeof e?parseFloat(e):e,sE=e=>"number"===typeof e||xw.test(e);function cE(e,t){return void 0!==e[t]?e[t]:e.borderRadius}const lE=dE(0,.5,r_),uE=dE(.5,.95,nx);function dE(e,t,r){return n=>nt?1:r(N_(e,t,n))}function hE(e,t){e.min=t.min,e.max=t.max}function fE(e,t){hE(e.x,t.x),hE(e.y,t.y)}function pE(e,t,r,n,i){return e=Lk(e-=t,1/r,n),void 0!==i&&(e=Lk(e,1/i,n)),e}function mE(e,t,[r,n,i],o,a){!function(e,t=0,r=1,n=.5,i,o=e,a=e){ww.test(t)&&(t=parseFloat(t),t=g_(a.min,a.max,t/100)-a.min);if("number"!==typeof t)return;let s=g_(o.min,o.max,n);e===o&&(s-=t),e.min=pE(e.min,t,r,s,i),e.max=pE(e.max,t,r,s,i)}(e,t[r],t[n],t[i],t.scale,o,a)}const gE=["x","scaleX","originX"],vE=["y","scaleY","originY"];function yE(e,t,r,n){mE(e.x,t,gE,r?r.x:void 0,n?n.x:void 0),mE(e.y,t,vE,r?r.y:void 0,n?n.y:void 0)}function bE(e){return 0===e.translate&&1===e.scale}function wE(e){return bE(e.x)&&bE(e.y)}function xE(e,t){return Math.round(e.x.min)===Math.round(t.x.min)&&Math.round(e.x.max)===Math.round(t.x.max)&&Math.round(e.y.min)===Math.round(t.y.min)&&Math.round(e.y.max)===Math.round(t.y.max)}function _E(e){return pk(e.x)/pk(e.y)}class SE{constructor(){this.members=[]}add(e){IS(this.members,e),e.scheduleRender()}remove(e){if(MS(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){const e=this.members[this.members.length-1];e&&this.promote(e)}}relegate(e){const t=this.members.findIndex((t=>e===t));if(0===t)return!1;let r;for(let n=t;n>=0;n--){const e=this.members[n];if(!1!==e.isPresent){r=e;break}}return!!r&&(this.promote(r),!0)}promote(e,t){const r=this.lead;if(e!==r&&(this.prevLead=r,this.lead=e,e.show(),r)){r.instance&&r.scheduleRender(),e.scheduleRender(),e.resumeFrom=r,t&&(e.resumeFrom.preserveOpacity=!0),r.snapshot&&(e.snapshot=r.snapshot,e.snapshot.latestValues=r.animationValues||r.latestValues),e.root&&e.root.isUpdating&&(e.isLayoutDirty=!0);const{crossfade:n}=e.options;!1===n&&r.hide()}}exitAnimationComplete(){this.members.forEach((e=>{const{options:t,resumingFrom:r}=e;t.onExitComplete&&t.onExitComplete(),r&&r.options.onExitComplete&&r.options.onExitComplete()}))}scheduleRender(){this.members.forEach((e=>{e.instance&&e.scheduleRender(!1)}))}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function kE(e,t,r){let n="";const i=e.x.translate/t.x,o=e.y.translate/t.y;if((i||o)&&(n=`translate3d(${i}px, ${o}px, 0) `),1===t.x&&1===t.y||(n+=`scale(${1/t.x}, ${1/t.y}) `),r){const{rotate:e,rotateX:t,rotateY:i}=r;e&&(n+=`rotate(${e}deg) `),t&&(n+=`rotateX(${t}deg) `),i&&(n+=`rotateY(${i}deg) `)}const a=e.x.scale*t.x,s=e.y.scale*t.y;return 1===a&&1===s||(n+=`scale(${a}, ${s})`),n||"none"}const EE=(e,t)=>e.depth-t.depth;class AE{constructor(){this.children=[],this.isDirty=!1}add(e){IS(this.children,e),this.isDirty=!0}remove(e){MS(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort(EE),this.isDirty=!1,this.children.forEach(e)}}const PE=["","X","Y","Z"],OE={visibility:"hidden"};let TE=0;const CE={type:"projectionFrame",totalNodes:0,resolvedTargetDeltas:0,recalculatedProjection:0};function jE({attachResizeListener:e,defaultParent:t,measureScroll:r,checkIsScrollRoot:n,resetTransform:i}){return class{constructor(e={},r=(null===t||void 0===t?void 0:t())){this.id=TE++,this.animationId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.updateScheduled=!1,this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{var e;this.projectionUpdateScheduled=!1,CE.totalNodes=CE.resolvedTargetDeltas=CE.recalculatedProjection=0,this.nodes.forEach(ME),this.nodes.forEach(FE),this.nodes.forEach($E),this.nodes.forEach(LE),e=CE,window.MotionDebug&&window.MotionDebug.record(e)},this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=e,this.root=r?r.root||r:this,this.path=r?[...r.path,r]:[],this.parent=r,this.depth=r?r.depth+1:0;for(let t=0;tthis.root.updateBlockedByResize=!1;e(t,(()=>{this.root.updateBlockedByResize=!0,r&&r(),r=function(e,t){const r=aS.now(),n=({timestamp:i})=>{const o=i-r;o>=t&&(ox(n),e(o-t))};return ix.read(n,!0),()=>ox(n)}(n,250),Xk.hasAnimatedSinceResize&&(Xk.hasAnimatedSinceResize=!1,this.nodes.forEach(UE))}))}i&&this.root.registerSharedNode(i,this),!1!==this.options.animate&&a&&(i||o)&&this.addEventListener("didUpdate",(({delta:e,hasLayoutChanged:t,hasRelativeTargetChanged:r,layout:n})=>{if(this.isTreeAnimationBlocked())return this.target=void 0,void(this.relativeTarget=void 0);const i=this.options.transition||a.getDefaultTransition()||GE,{onLayoutAnimationStart:o,onLayoutAnimationComplete:s}=a.getProps(),c=!this.targetLayout||!xE(this.targetLayout,n)||r,l=!t&&r;if(this.options.layoutRoot||this.resumeFrom&&this.resumeFrom.instance||l||t&&(c||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0),this.setAnimationOrigin(e,l);const t={...TS(i,"layout"),onPlay:o,onComplete:s};(a.shouldReduceMotion||this.options.layoutRoot)&&(t.delay=0,t.type=!1),this.startAnimation(t)}else t||UE(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=n}))}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const e=this.getStack();e&&e.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,ox(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(HE),this.animationId++)}getTransformTemplate(){const{visualElement:e}=this.options;return e&&e.getProps().transformTemplate}willUpdate(e=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked())return void(this.options.onExitComplete&&this.options.onExitComplete());if(!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let i=0;ithis.update())))}clearAllSnapshots(){this.nodes.forEach(NE),this.sharedNodes.forEach(VE)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,ix.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){ix.postRender((()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()}))}updateSnapshot(){!this.snapshot&&this.instance&&(this.snapshot=this.measure())}updateLayout(){if(!this.instance)return;if(this.updateScroll(),(!this.options.alwaysMeasureLayout||!this.isLead())&&!this.isLayoutDirty)return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let r=0;r{const r=t/1e3;qE(o.x,e.x,r),qE(o.y,e.y,r),this.setTargetDelta(o),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(wk(a,this.layout.layoutBox,this.relativeParent.layout.layoutBox),function(e,t,r,n){KE(e.x,t.x,r.x,n),KE(e.y,t.y,r.y,n)}(this.relativeTarget,this.relativeTargetOrigin,a,r),d&&function(e,t){return e.x.min===t.x.min&&e.x.max===t.x.max&&e.y.min===t.y.min&&e.y.max===t.y.max}(this.relativeTarget,d)&&(this.isProjectionDirty=!1),d||(d=Pk()),fE(d,this.relativeTarget)),s&&(this.animationValues=i,function(e,t,r,n,i,o){i?(e.opacity=g_(0,void 0!==r.opacity?r.opacity:1,lE(n)),e.opacityExit=g_(void 0!==t.opacity?t.opacity:1,0,uE(n))):o&&(e.opacity=g_(void 0!==t.opacity?t.opacity:1,void 0!==r.opacity?r.opacity:1,n));for(let a=0;a{Xk.hasAnimatedSinceResize=!0,this.currentAnimation=function(e,t,r){const n=rw(e)?e:zS(e);return n.start(CS("",n,t,r)),n.animation}(0,1e3,{...e,onUpdate:t=>{this.mixTargetDelta(t),e.onUpdate&&e.onUpdate(t)},onComplete:()=>{e.onComplete&&e.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0}))}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const e=this.getStack();e&&e.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(1e3),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const e=this.getLead();let{targetWithTransforms:t,target:r,layout:n,latestValues:i}=e;if(t&&r&&n){if(this!==e&&this.layout&&n&&JE(this.options.animationType,this.layout.layoutBox,n.layoutBox)){r=this.target||Pk();const t=pk(this.layout.layoutBox.x);r.x.min=e.target.x.min,r.x.max=r.x.min+t;const n=pk(this.layout.layoutBox.y);r.y.min=e.target.y.min,r.y.max=r.y.min+n}fE(t,r),Vk(t,i),vk(this.projectionDeltaWithTransform,this.layoutCorrected,t,i)}}registerSharedNode(e,t){this.sharedNodes.has(e)||this.sharedNodes.set(e,new SE);this.sharedNodes.get(e).add(t);const r=t.options.initialPromotionConfig;t.promote({transition:r?r.transition:void 0,preserveFollowOpacity:r&&r.shouldPreserveFollowOpacity?r.shouldPreserveFollowOpacity(t):void 0})}isLead(){const e=this.getStack();return!e||e.lead===this}getLead(){var e;const{layoutId:t}=this.options;return t&&(null===(e=this.getStack())||void 0===e?void 0:e.lead)||this}getPrevLead(){var e;const{layoutId:t}=this.options;return t?null===(e=this.getStack())||void 0===e?void 0:e.prevLead:void 0}getStack(){const{layoutId:e}=this.options;if(e)return this.root.sharedNodes.get(e)}promote({needsReset:e,transition:t,preserveFollowOpacity:r}={}){const n=this.getStack();n&&n.promote(this,r),e&&(this.projectionDelta=void 0,this.needsReset=!0),t&&this.setOptions({transition:t})}relegate(){const e=this.getStack();return!!e&&e.relegate(this)}resetRotation(){const{visualElement:e}=this.options;if(!e)return;let t=!1;const{latestValues:r}=e;if((r.rotate||r.rotateX||r.rotateY||r.rotateZ)&&(t=!0),!t)return;const n={};for(let i=0;i{var t;return null===(t=e.currentAnimation)||void 0===t?void 0:t.stop()})),this.root.nodes.forEach(DE),this.root.sharedNodes.clear()}}}function RE(e){e.updateLayout()}function IE(e){var t;const r=(null===(t=e.resumeFrom)||void 0===t?void 0:t.snapshot)||e.snapshot;if(e.isLead()&&e.layout&&r&&e.hasListeners("didUpdate")){const{layoutBox:t,measuredBox:n}=e.layout,{animationType:i}=e.options,o=r.source!==e.layout.source;"size"===i?Ok((e=>{const n=o?r.measuredBox[e]:r.layoutBox[e],i=pk(n);n.min=t[e].min,n.max=n.min+i})):JE(i,r.layoutBox,t)&&Ok((n=>{const i=o?r.measuredBox[n]:r.layoutBox[n],a=pk(t[n]);i.max=i.min+a,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[n].max=e.relativeTarget[n].min+a)}));const a=Ak();vk(a,t,r.layoutBox);const s=Ak();o?vk(s,e.applyTransform(n,!0),r.measuredBox):vk(s,t,r.layoutBox);const c=!wE(a);let l=!1;if(!e.resumeFrom){const n=e.getClosestProjectingParent();if(n&&!n.resumeFrom){const{snapshot:i,layout:o}=n;if(i&&o){const a=Pk();wk(a,r.layoutBox,i.layoutBox);const s=Pk();wk(s,t,o.layoutBox),xE(a,s)||(l=!0),n.options.layoutRoot&&(e.relativeTarget=s,e.relativeTargetOrigin=a,e.relativeParent=n)}}}e.notifyListeners("didUpdate",{layout:t,snapshot:r,delta:s,layoutDelta:a,hasLayoutChanged:c,hasRelativeTargetChanged:l})}else if(e.isLead()){const{onExitComplete:t}=e.options;t&&t()}e.options.transition=void 0}function ME(e){CE.totalNodes++,e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=Boolean(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function LE(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function NE(e){e.clearSnapshot()}function DE(e){e.clearMeasurements()}function zE(e){e.isLayoutDirty=!1}function BE(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function UE(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function FE(e){e.resolveTargetDelta()}function $E(e){e.calcProjection()}function HE(e){e.resetRotation()}function VE(e){e.removeLeadSnapshot()}function qE(e,t,r){e.translate=g_(t.translate,0,r),e.scale=g_(t.scale,1,r),e.origin=t.origin,e.originPoint=t.originPoint}function KE(e,t,r,n){e.min=g_(t.min,r.min,n),e.max=g_(t.max,r.max,n)}function WE(e){return e.animationValues&&void 0!==e.animationValues.opacityExit}const GE={duration:.45,ease:[.4,0,.1,1]},ZE=e=>"undefined"!==typeof navigator&&navigator.userAgent.toLowerCase().includes(e),YE=ZE("applewebkit/")&&!ZE("chrome/")?Math.round:nx;function XE(e){e.min=YE(e.min),e.max=YE(e.max)}function JE(e,t,r){return"position"===e||"preserve-aspect"===e&&!mk(_E(t),_E(r),.2)}const QE=jE({attachResizeListener:(e,t)=>ux(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),eA={current:void 0},tA=jE({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!eA.current){const e=new QE({});e.mount(window),e.setOptions({layoutScroll:!0}),eA.current=e}return eA.current},resetTransform:(e,t)=>{e.style.transform=void 0!==t?t:"none"},checkIsScrollRoot:e=>Boolean("fixed"===window.getComputedStyle(e).position)}),rA={pan:{Feature:class extends _x{constructor(){super(...arguments),this.removePointerDownListener=nx}onPointerDown(e){this.session=new sk(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:Kk(this.node)})}createPanHandlers(){const{onPanSessionStart:e,onPanStart:t,onPan:r,onPanEnd:n}=this.node.getProps();return{onSessionStart:Yk(e),onStart:Yk(t),onMove:r,onEnd:(e,t)=>{delete this.session,n&&ix.update((()=>n(e,t)))}}}mount(){this.removePointerDownListener=px(this.node.current,"pointerdown",(e=>this.onPointerDown(e)))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}},drag:{Feature:class extends _x{constructor(e){super(e),this.removeGroupControls=nx,this.removeListeners=nx,this.controls=new Gk(e)}mount(){const{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||nx}unmount(){this.removeGroupControls(),this.removeListeners()}},ProjectionNode:tA,MeasureLayout:rE}},nA=/var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/;const iA=4;function oA(e,t,r=1){Nx(r<=iA,`Max CSS variable fallback depth detected in property "${e}". This may indicate a circular fallback dependency.`);const[n,i]=function(e){const t=nA.exec(e);if(!t)return[,];const[,r,n]=t;return[r,n]}(e);if(!n)return;const o=window.getComputedStyle(t).getPropertyValue(n);if(o){const e=o.trim();return RS(e)?parseFloat(e):e}return sw(i)?oA(i,t,r+1):i}const aA=new Set(["width","height","top","left","right","bottom","x","y","translateX","translateY"]),sA=e=>aA.has(e),cA=e=>e===uw||e===xw,lA=(e,t)=>parseFloat(e.split(", ")[t]),uA=(e,t)=>(r,{transform:n})=>{if("none"===n||!n)return 0;const i=n.match(/^matrix3d\((.+)\)$/);if(i)return lA(i[1],t);{const t=n.match(/^matrix\((.+)\)$/);return t?lA(t[1],e):0}},dA=new Set(["x","y","z"]),hA=Qb.filter((e=>!dA.has(e)));const fA={width:({x:e},{paddingLeft:t="0",paddingRight:r="0"})=>e.max-e.min-parseFloat(t)-parseFloat(r),height:({y:e},{paddingTop:t="0",paddingBottom:r="0"})=>e.max-e.min-parseFloat(t)-parseFloat(r),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:uA(4,13),y:uA(5,14)};fA.translateX=fA.x,fA.translateY=fA.y;const pA=(e,t,r={},n={})=>{t={...t},n={...n};const i=Object.keys(t).filter(sA);let o=[],a=!1;const s=[];if(i.forEach((i=>{const c=e.getValue(i);if(!e.hasValue(i))return;let l=r[i],u=FS(l);const d=t[i];let h;if(Xw(d)){const e=d.length,t=null===d[0]?1:0;l=d[t],u=FS(l);for(let r=t;r{const n=e.getValue(r);void 0!==n&&(t.push([r,n.get()]),n.set(r.startsWith("scale")?1:0))})),t.length&&e.render(),t}(e),a=!0),s.push(i),n[i]=void 0!==n[i]?n[i]:t[i],c.jump(d))})),s.length){const r=s.indexOf("height")>=0?window.pageYOffset:null,i=((e,t,r)=>{const n=t.measureViewportBox(),i=t.current,o=getComputedStyle(i),{display:a}=o,s={};"none"===a&&t.setStaticValue("display",e.display||"block"),r.forEach((e=>{s[e]=fA[e](n,o)})),t.render();const c=t.measureViewportBox();return r.forEach((r=>{const n=t.getValue(r);n&&n.jump(s[r]),e[r]=fA[r](c,o)})),e})(t,e,s);return o.length&&o.forEach((([t,r])=>{e.getValue(t).set(r)})),e.render(),xb&&null!==r&&window.scrollTo({top:r}),{target:i,transitionEnd:n}}return{target:t,transitionEnd:n}};function mA(e,t,r,n){return(e=>Object.keys(e).some(sA))(t)?pA(e,t,r,n):{target:t,transitionEnd:n}}const gA=(e,t,r,n)=>{const i=function(e,{...t},r){const n=e.current;if(!(n instanceof Element))return{target:t,transitionEnd:r};r&&(r={...r}),e.values.forEach((e=>{const t=e.get();if(!sw(t))return;const r=oA(t,n);r&&e.set(r)}));for(const i in t){const e=t[i];if(!sw(e))continue;const o=oA(e,n);o&&(t[i]=o,r||(r={}),void 0===r[i]&&(r[i]=e))}return{target:t,transitionEnd:r}}(e,t,n);return mA(e,t=i.target,r,n=i.transitionEnd)},vA={current:null},yA={current:!1};const bA=new WeakMap,wA=Object.keys(Hb),xA=wA.length,_A=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"],SA=Db.length;class kA{constructor({parent:e,props:t,presenceContext:r,reducedMotionConfig:n,visualState:i},o={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.scheduleRender=()=>ix.render(this.render,!1,!0);const{latestValues:a,renderState:s}=i;this.latestValues=a,this.baseTarget={...a},this.initialValues=t.initial?{...a}:{},this.renderState=s,this.parent=e,this.props=t,this.presenceContext=r,this.depth=e?e.depth+1:0,this.reducedMotionConfig=n,this.options=o,this.isControllingVariants=zb(t),this.isVariantNode=Bb(t),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=Boolean(e&&e.current);const{willChange:c,...l}=this.scrapeMotionValuesFromProps(t,{});for(const u in l){const e=l[u];void 0!==a[u]&&rw(e)&&(e.set(a[u],!1),jS(c)&&c.add(u))}}scrapeMotionValuesFromProps(e,t){return{}}mount(e){this.current=e,bA.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach(((e,t)=>this.bindToMotionValue(t,e))),yA.current||function(){if(yA.current=!0,xb)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>vA.current=e.matches;e.addListener(t),t()}else vA.current=!1}(),this.shouldReduceMotion="never"!==this.reducedMotionConfig&&("always"===this.reducedMotionConfig||vA.current),this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){bA.delete(this.current),this.projection&&this.projection.unmount(),ox(this.notifyUpdate),ox(this.render),this.valueSubscriptions.forEach((e=>e())),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const e in this.events)this.events[e].clear();for(const e in this.features)this.features[e].unmount();this.current=null}bindToMotionValue(e,t){const r=ew.has(e),n=t.on("change",(t=>{this.latestValues[e]=t,this.props.onUpdate&&ix.update(this.notifyUpdate,!1,!0),r&&this.projection&&(this.projection.isTransformDirty=!0)})),i=t.on("renderRequest",this.scheduleRender);this.valueSubscriptions.set(e,(()=>{n(),i()}))}sortNodePosition(e){return this.current&&this.sortInstanceNodePosition&&this.type===e.type?this.sortInstanceNodePosition(this.current,e.current):0}loadFeatures({children:e,...t},r,n,i){let o,a;for(let s=0;sthis.scheduleRender(),animationType:"string"===typeof r?r:"both",initialPromotionConfig:i,layoutScroll:s,layoutRoot:c})}return a}updateFeatures(){for(const e in this.features){const t=this.features[e];t.isMounted?t.update():(t.mount(),t.isMounted=!0)}}triggerBuild(){this.build(this.renderState,this.latestValues,this.options,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):Pk()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,t){this.latestValues[e]=t}makeTargetAnimatable(e,t=!0){return this.makeTargetAnimatableFromInstance(e,t)}update(e,t){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=t;for(let r=0;r<_A.length;r++){const t=_A[r];this.propEventSubscriptions[t]&&(this.propEventSubscriptions[t](),delete this.propEventSubscriptions[t]);const n=e["on"+t];n&&(this.propEventSubscriptions[t]=this.on(t,n))}this.prevMotionValues=function(e,t,r){const{willChange:n}=t;for(const i in t){const o=t[i],a=r[i];if(rw(o))e.addValue(i,o),jS(n)&&n.add(i);else if(rw(a))e.addValue(i,zS(o,{owner:e})),jS(n)&&n.remove(i);else if(a!==o)if(e.hasValue(i)){const t=e.getValue(i);!t.hasAnimated&&t.set(o)}else{const t=e.getStaticValue(i);e.addValue(i,zS(void 0!==t?t:o,{owner:e}))}}for(const i in r)void 0===t[i]&&e.removeValue(i);return t}(this,this.scrapeMotionValuesFromProps(e,this.prevProps),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(e){return this.props.variants?this.props.variants[e]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}getVariantContext(e=!1){if(e)return this.parent?this.parent.getVariantContext():void 0;if(!this.isControllingVariants){const e=this.parent&&this.parent.getVariantContext()||{};return void 0!==this.props.initial&&(e.initial=this.props.initial),e}const t={};for(let r=0;rt.variantChildren.delete(e)}addValue(e,t){t!==this.values.get(e)&&(this.removeValue(e),this.bindToMotionValue(e,t)),this.values.set(e,t),this.latestValues[e]=t.get()}removeValue(e){this.values.delete(e);const t=this.valueSubscriptions.get(e);t&&(t(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,t){if(this.props.values&&this.props.values[e])return this.props.values[e];let r=this.values.get(e);return void 0===r&&void 0!==t&&(r=zS(t,{owner:this}),this.addValue(e,r)),r}readValue(e){var t;return void 0===this.latestValues[e]&&this.current?null!==(t=this.getBaseTargetFromProps(this.props,e))&&void 0!==t?t:this.readValueFromInstance(this.current,e,this.options):this.latestValues[e]}setBaseTarget(e,t){this.baseTarget[e]=t}getBaseTarget(e){var t;const{initial:r}=this.props,n="string"===typeof r||"object"===typeof r?null===(t=Zw(this.props,r))||void 0===t?void 0:t[e]:void 0;if(r&&void 0!==n)return n;const i=this.getBaseTargetFromProps(this.props,e);return void 0===i||rw(i)?void 0!==this.initialValues[e]&&void 0===n?void 0:this.baseTarget[e]:i}on(e,t){return this.events[e]||(this.events[e]=new LS),this.events[e].add(t)}notify(e,...t){this.events[e]&&this.events[e].notify(...t)}}class EA extends kA{sortInstanceNodePosition(e,t){return 2&e.compareDocumentPosition(t)?1:-1}getBaseTargetFromProps(e,t){return e.style?e.style[t]:void 0}removeValueFromRenderState(e,{vars:t,style:r}){delete t[e],delete r[e]}makeTargetAnimatableFromInstance({transition:e,transitionEnd:t,...r},n){const i=function(e,t,r){const n={};for(const i in e){const e=KS(i,t);if(void 0!==e)n[i]=e;else{const e=r.getValue(i);e&&(n[i]=e.get())}}return n}(r,e||{},this);if(n){!function(e,t,r){var n,i;const o=Object.keys(t).filter((t=>!e.hasValue(t))),a=o.length;if(a)for(let s=0;s{this.current&&(this.current.textContent=`${e}`)})))}renderInstance(e,t,r,n){Vw(e,t,r,n)}}class PA extends EA{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1}getBaseTargetFromProps(e,t){return e[t]}readValueFromInstance(e,t){if(ew.has(t)){const e=ES(t);return e&&e.default||0}return t=qw.has(t)?t:kb(t),e.getAttribute(t)}measureInstanceViewportBox(){return Pk()}scrapeMotionValuesFromProps(e,t){return Gw(e,t)}build(e,t,r,n){Bw(e,t,r,this.isSVGTag,n.transformTemplate)}renderInstance(e,t,r,n){Kw(e,t,0,n)}mount(e){this.isSVGTag=Fw(e.tagName),super.mount(e)}}const OA=(e,t)=>Xb(e)?new PA(t,{enableHardwareAcceleration:!1}):new AA(t,{enableHardwareAcceleration:!0}),TA={...ok,...Rx,...rA,...{layout:{ProjectionNode:tA,MeasureLayout:rE}}},CA=Zb(((e,t)=>function(e,{forwardMotionProps:t=!1},r,n){return{...Xb(e)?cx:lx,preloadedFeatures:r,useRender:Hw(t),createVisualElement:n,Component:e}}(e,t,TA,OA)));var jA={initial:e=>{const{position:t}=e,r=["top","bottom"].includes(t)?"y":"x";let n=["top-right","bottom-right"].includes(t)?1:-1;return"bottom"===t&&(n=1),{opacity:0,[r]:24*n}},animate:{opacity:1,y:0,x:0,scale:1,transition:{duration:.4,ease:[.4,0,.2,1]}},exit:{opacity:0,scale:.85,transition:{duration:.2,ease:[.4,0,1,1]}}},RA=(0,n.memo)((e=>{const{id:t,message:r,onCloseComplete:i,onRequestRemove:o,requestClose:a=!1,position:s="bottom",duration:c=5e3,containerStyle:l,motionVariants:u=jA,toastSpacing:d="0.5rem"}=e,[h,f]=(0,n.useState)(c),p=yb();mb((()=>{p||null==i||i()}),[p]),mb((()=>{f(c)}),[c]);const m=()=>{p&&o()};(0,n.useEffect)((()=>{p&&a&&o()}),[p,a,o]),function(e,t){const r=pb(e);(0,n.useEffect)((()=>{if(null==t)return;let e=null;return e=window.setTimeout((()=>{r()}),t),()=>{e&&window.clearTimeout(e)}}),[t,r])}(m,h);const g=(0,n.useMemo)((()=>({pointerEvents:"auto",maxWidth:560,minWidth:300,margin:d,...l})),[l,d]),v=(0,n.useMemo)((()=>function(e){let t="center";return e.includes("right")&&(t="flex-end"),e.includes("left")&&(t="flex-start"),{display:"flex",flexDirection:"column",alignItems:t}}(s)),[s]);return(0,Yn.jsx)(CA.div,{layout:!0,className:"chakra-toast",variants:u,initial:"initial",animate:"animate",exit:"exit",onHoverStart:()=>f(null),onHoverEnd:()=>f(c),custom:{position:s},style:v,children:(0,Yn.jsx)(Zn.div,{role:"status","aria-atomic":"true",className:"chakra-toast__inner",__css:g,children:se(r,{id:t,onClose:m})})})}));function IA(e,t){var r;const n=null!=e?e:"bottom",i={"top-start":{ltr:"top-left",rtl:"top-right"},"top-end":{ltr:"top-right",rtl:"top-left"},"bottom-start":{ltr:"bottom-left",rtl:"bottom-right"},"bottom-end":{ltr:"bottom-right",rtl:"bottom-left"}}[n];return null!=(r=null==i?void 0:i[t])?r:n}RA.displayName="ToastComponent";var MA={path:(0,Yn.jsxs)("g",{stroke:"currentColor",strokeWidth:"1.5",children:[(0,Yn.jsx)("path",{strokeLinecap:"round",fill:"none",d:"M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"}),(0,Yn.jsx)("path",{fill:"currentColor",strokeLinecap:"round",d:"M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"}),(0,Yn.jsx)("circle",{fill:"none",strokeMiterlimit:"10",cx:"12",cy:"12",r:"11.25"})]}),viewBox:"0 0 24 24"},LA=ne(((e,t)=>{const{as:r,viewBox:n,color:i="currentColor",focusable:o=!1,children:a,className:s,__css:c,...l}=e,u={ref:t,focusable:o,className:ie("chakra-icon",s),__css:{w:"1em",h:"1em",display:"inline-block",lineHeight:"1em",flexShrink:0,color:i,...c,...ci("Icon",e)}},d=null!=n?n:MA.viewBox;if(r&&"string"!==typeof r)return(0,Yn.jsx)(Zn.svg,{as:r,...u,...l});const h=null!=a?a:MA.path;return(0,Yn.jsx)(Zn.svg,{verticalAlign:"middle",viewBox:d,...u,...l,children:h})}));LA.displayName="Icon";function NA(e){return(0,Yn.jsx)(LA,{viewBox:"0 0 24 24",...e,children:(0,Yn.jsx)("path",{fill:"currentColor",d:"M11.983,0a12.206,12.206,0,0,0-8.51,3.653A11.8,11.8,0,0,0,0,12.207,11.779,11.779,0,0,0,11.8,24h.214A12.111,12.111,0,0,0,24,11.791h0A11.766,11.766,0,0,0,11.983,0ZM10.5,16.542a1.476,1.476,0,0,1,1.449-1.53h.027a1.527,1.527,0,0,1,1.523,1.47,1.475,1.475,0,0,1-1.449,1.53h-.027A1.529,1.529,0,0,1,10.5,16.542ZM11,12.5v-6a1,1,0,0,1,2,0v6a1,1,0,1,1-2,0Z"})})}var[DA,zA]=di({name:"AlertContext",hookName:"useAlertContext",providerName:""}),[BA,UA]=di({name:"AlertStylesContext",hookName:"useAlertStyles",providerName:""}),FA={info:{icon:function(e){return(0,Yn.jsx)(LA,{viewBox:"0 0 24 24",...e,children:(0,Yn.jsx)("path",{fill:"currentColor",d:"M12,0A12,12,0,1,0,24,12,12.013,12.013,0,0,0,12,0Zm.25,5a1.5,1.5,0,1,1-1.5,1.5A1.5,1.5,0,0,1,12.25,5ZM14.5,18.5h-4a1,1,0,0,1,0-2h.75a.25.25,0,0,0,.25-.25v-4.5a.25.25,0,0,0-.25-.25H10.5a1,1,0,0,1,0-2h1a2,2,0,0,1,2,2v4.75a.25.25,0,0,0,.25.25h.75a1,1,0,1,1,0,2Z"})})},colorScheme:"blue"},warning:{icon:NA,colorScheme:"orange"},success:{icon:function(e){return(0,Yn.jsx)(LA,{viewBox:"0 0 24 24",...e,children:(0,Yn.jsx)("path",{fill:"currentColor",d:"M12,0A12,12,0,1,0,24,12,12.014,12.014,0,0,0,12,0Zm6.927,8.2-6.845,9.289a1.011,1.011,0,0,1-1.43.188L5.764,13.769a1,1,0,1,1,1.25-1.562l4.076,3.261,6.227-8.451A1,1,0,1,1,18.927,8.2Z"})})},colorScheme:"green"},error:{icon:NA,colorScheme:"red"},loading:{icon:bi,colorScheme:"blue"}};var $A=ne((function(e,t){var r;const{status:n="info",addRole:i=!0,...o}=Qt(e),a=null!=(r=e.colorScheme)?r:function(e){return FA[e].colorScheme}(n),s=li("Alert",{...e,colorScheme:a}),c={width:"100%",display:"flex",alignItems:"center",position:"relative",overflow:"hidden",...s.container};return(0,Yn.jsx)(DA,{value:{status:n},children:(0,Yn.jsx)(BA,{value:s,children:(0,Yn.jsx)(Zn.div,{"data-status":n,role:i?"alert":void 0,ref:t,...o,className:ie("chakra-alert",e.className),__css:c})})})}));function HA(e){const{status:t}=zA(),r=function(e){return FA[e].icon}(t),n=UA(),i="loading"===t?n.spinner:n.icon;return(0,Yn.jsx)(Zn.span,{display:"inherit","data-status":t,...e,className:ie("chakra-alert__icon",e.className),__css:i,children:e.children||(0,Yn.jsx)(r,{h:"100%",w:"100%"})})}$A.displayName="Alert",HA.displayName="AlertIcon";var VA=ne((function(e,t){const r=UA(),{status:n}=zA();return(0,Yn.jsx)(Zn.div,{ref:t,"data-status":n,...e,className:ie("chakra-alert__title",e.className),__css:r.title})}));VA.displayName="AlertTitle";var qA=ne((function(e,t){const r=UA(),{status:n}=zA(),i={display:"inline",...r.description};return(0,Yn.jsx)(Zn.div,{ref:t,"data-status":n,...e,className:ie("chakra-alert__desc",e.className),__css:i})}));function KA(e){return(0,Yn.jsx)(LA,{focusable:"false","aria-hidden":!0,...e,children:(0,Yn.jsx)("path",{fill:"currentColor",d:"M.439,21.44a1.5,1.5,0,0,0,2.122,2.121L11.823,14.3a.25.25,0,0,1,.354,0l9.262,9.263a1.5,1.5,0,1,0,2.122-2.121L14.3,12.177a.25.25,0,0,1,0-.354l9.263-9.262A1.5,1.5,0,0,0,21.439.44L12.177,9.7a.25.25,0,0,1-.354,0L2.561.44A1.5,1.5,0,0,0,.439,2.561L9.7,11.823a.25.25,0,0,1,0,.354Z"})})}qA.displayName="AlertDescription";var WA=ne((function(e,t){const r=ci("CloseButton",e),{children:n,isDisabled:i,__css:o,...a}=Qt(e);return(0,Yn.jsx)(Zn.button,{type:"button","aria-label":"Close",ref:t,disabled:i,__css:{outline:0,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,...r,...o},...a,children:n||(0,Yn.jsx)(KA,{width:"1em",height:"1em"})})}));WA.displayName="CloseButton";var GA=function(e){let t=e;const r=new Set,n=e=>{t=e(t),r.forEach((e=>e()))};return{getState:()=>t,subscribe:t=>(r.add(t),()=>{n((()=>e)),r.delete(t)}),removeToast:(e,t)=>{n((r=>({...r,[t]:r[t].filter((t=>t.id!=e))})))},notify:(e,t)=>{const r=function(e,t={}){var r,n;ZA+=1;const i=null!=(r=t.id)?r:ZA,o=null!=(n=t.position)?n:"bottom";return{id:i,message:e,position:o,duration:t.duration,onCloseComplete:t.onCloseComplete,onRequestRemove:()=>GA.removeToast(String(i),o),status:t.status,requestClose:!1,containerStyle:t.containerStyle}}(e,t),{position:i,id:o}=r;return n((e=>{var t,n;const o=i.includes("top")?[r,...null!=(t=e[i])?t:[]]:[...null!=(n=e[i])?n:[],r];return{...e,[i]:o}})),o},update:(e,t)=>{e&&n((r=>{const n={...r},{position:i,index:o}=db(n,e);return i&&-1!==o&&(n[i][o]={...n[i][o],...t,message:XA(t)}),n}))},closeAll:({positions:e}={})=>{n((t=>(null!=e?e:["bottom","bottom-right","bottom-left","top","top-left","top-right"]).reduce(((e,r)=>(e[r]=t[r].map((e=>({...e,requestClose:!0}))),e)),{...t})))},close:e=>{n((t=>{const r=hb(t,e);return r?{...t,[r]:t[r].map((t=>t.id==e?{...t,requestClose:!0}:t))}:t}))},isActive:e=>Boolean(db(GA.getState(),e).position)}}({top:[],"top-left":[],"top-right":[],"bottom-left":[],bottom:[],"bottom-right":[]});var ZA=0;var YA=e=>{const{status:t,variant:r="solid",id:n,title:i,isClosable:o,onClose:a,description:s,colorScheme:c,icon:l}=e,u=n?{root:`toast-${n}`,title:`toast-${n}-title`,description:`toast-${n}-description`}:void 0;return(0,Yn.jsxs)($A,{addRole:!1,status:t,variant:r,id:null==u?void 0:u.root,alignItems:"start",borderRadius:"md",boxShadow:"lg",paddingEnd:8,textAlign:"start",width:"auto",colorScheme:c,children:[(0,Yn.jsx)(HA,{children:l}),(0,Yn.jsxs)(Zn.div,{flex:"1",maxWidth:"100%",children:[i&&(0,Yn.jsx)(VA,{id:null==u?void 0:u.title,children:i}),s&&(0,Yn.jsx)(qA,{id:null==u?void 0:u.description,display:"block",children:s})]}),o&&(0,Yn.jsx)(WA,{size:"sm",onClick:a,position:"absolute",insetEnd:1,top:1})]})};function XA(e={}){const{render:t,toastComponent:r=YA}=e;return n=>"function"===typeof t?t({...n,...e}):(0,Yn.jsx)(r,{...n,...e})}function JA(){const e=(0,n.useRef)(!1);return _b((()=>(e.current=!0,()=>{e.current=!1})),[]),e}class QA extends n.Component{getSnapshotBeforeUpdate(e){const t=this.props.childRef.current;if(t&&e.isPresent&&!this.props.isPresent){const e=this.props.sizeRef.current;e.height=t.offsetHeight||0,e.width=t.offsetWidth||0,e.top=t.offsetTop,e.left=t.offsetLeft}return null}componentDidUpdate(){}render(){return this.props.children}}function eP({children:e,isPresent:t}){const r=(0,n.useId)(),i=(0,n.useRef)(null),o=(0,n.useRef)({width:0,height:0,top:0,left:0});return(0,n.useInsertionEffect)((()=>{const{width:e,height:n,top:a,left:s}=o.current;if(t||!i.current||!e||!n)return;i.current.dataset.motionPopId=r;const c=document.createElement("style");return document.head.appendChild(c),c.sheet&&c.sheet.insertRule(`\n [data-motion-pop-id="${r}"] {\n position: absolute !important;\n width: ${e}px !important;\n height: ${n}px !important;\n top: ${a}px !important;\n left: ${s}px !important;\n }\n `),()=>{document.head.removeChild(c)}}),[t]),n.createElement(QA,{isPresent:t,childRef:i,sizeRef:o},n.cloneElement(e,{ref:i}))}const tP=({children:e,initial:t,isPresent:r,onExitComplete:i,custom:o,presenceAffectsLayout:a,mode:s})=>{const c=Yw(rP),l=(0,n.useId)(),u=(0,n.useMemo)((()=>({id:l,initial:t,isPresent:r,custom:o,onExitComplete:e=>{c.set(e,!0);for(const t of c.values())if(!t)return;i&&i()},register:e=>(c.set(e,!1),()=>c.delete(e))})),a?void 0:[r]);return(0,n.useMemo)((()=>{c.forEach(((e,t)=>c.set(t,!1)))}),[r]),n.useEffect((()=>{!r&&!c.size&&i&&i()}),[r]),"popLayout"===s&&(e=n.createElement(eP,{isPresent:r},e)),n.createElement(gb.Provider,{value:u},e)};function rP(){return new Map}const nP=e=>e.key||"";const iP=({children:e,custom:t,initial:r=!0,onExitComplete:i,exitBeforeEnter:o,presenceAffectsLayout:a=!0,mode:s="sync"})=>{Nx(!o,"Replace exitBeforeEnter with mode='wait'");const c=(0,n.useContext)(Vb).forceRender||function(){const e=JA(),[t,r]=(0,n.useState)(0),i=(0,n.useCallback)((()=>{e.current&&r(t+1)}),[t]);return[(0,n.useCallback)((()=>ix.postRender(i)),[i]),t]}()[0],l=JA(),u=function(e){const t=[];return n.Children.forEach(e,(e=>{(0,n.isValidElement)(e)&&t.push(e)})),t}(e);let d=u;const h=(0,n.useRef)(new Map).current,f=(0,n.useRef)(d),p=(0,n.useRef)(new Map).current,m=(0,n.useRef)(!0);var g;if(_b((()=>{m.current=!1,function(e,t){e.forEach((e=>{const r=nP(e);t.set(r,e)}))}(u,p),f.current=d})),g=()=>{m.current=!0,p.clear(),h.clear()},(0,n.useEffect)((()=>()=>g()),[]),m.current)return n.createElement(n.Fragment,null,d.map((e=>n.createElement(tP,{key:nP(e),isPresent:!0,initial:!!r&&void 0,presenceAffectsLayout:a,mode:s},e))));d=[...d];const v=f.current.map(nP),y=u.map(nP),b=v.length;for(let n=0;n{if(-1!==y.indexOf(r))return;const o=p.get(r);if(!o)return;const m=v.indexOf(r);let g=e;if(!g){const e=()=>{h.delete(r);const e=Array.from(p.keys()).filter((e=>!y.includes(e)));if(e.forEach((e=>p.delete(e))),f.current=u.filter((t=>{const n=nP(t);return n===r||e.includes(n)})),!h.size){if(!1===l.current)return;c(),i&&i()}};g=n.createElement(tP,{key:nP(o),isPresent:!1,onExitComplete:e,custom:t,presenceAffectsLayout:a,mode:s},o),h.set(r,g)}d.splice(m,0,g)})),d=d.map((e=>{const t=e.key;return h.has(t)?e:n.createElement(tP,{key:nP(e),isPresent:!0,presenceAffectsLayout:a,mode:s},e)})),n.createElement(n.Fragment,null,h.size?d:d.map((e=>(0,n.cloneElement)(e))))};var[oP,aP]=di({strict:!1,name:"PortalContext"}),sP="chakra-portal",cP=e=>(0,Yn.jsx)("div",{className:"chakra-portal-zIndex",style:{position:"absolute",zIndex:e.zIndex,top:0,left:0,right:0},children:e.children}),lP=e=>{const{appendToParentPortal:t,children:r}=e,[i,o]=(0,n.useState)(null),a=(0,n.useRef)(null),[,s]=(0,n.useState)({});(0,n.useEffect)((()=>s({})),[]);const c=aP(),l=ih();yh((()=>{if(!i)return;const e=i.ownerDocument,r=t&&null!=c?c:e.body;if(!r)return;a.current=e.createElement("div"),a.current.className=sP,r.appendChild(a.current),s({});const n=a.current;return()=>{r.contains(n)&&r.removeChild(n)}}),[i]);const u=(null==l?void 0:l.zIndex)?(0,Yn.jsx)(cP,{zIndex:null==l?void 0:l.zIndex,children:r}):r;return a.current?(0,Ii.createPortal)((0,Yn.jsx)(oP,{value:a.current,children:u}),a.current):(0,Yn.jsx)("span",{ref:e=>{e&&o(e)}})},uP=e=>{const{children:t,containerRef:r,appendToParentPortal:i}=e,o=r.current,a=null!=o?o:"undefined"!==typeof window?document.body:void 0,s=(0,n.useMemo)((()=>{const e=null==o?void 0:o.ownerDocument.createElement("div");return e&&(e.className=sP),e}),[o]),[,c]=(0,n.useState)({});return yh((()=>c({})),[]),yh((()=>{if(s&&a)return a.appendChild(s),()=>{a.removeChild(s)}}),[s,a]),a&&s?(0,Ii.createPortal)((0,Yn.jsx)(oP,{value:i?s:null,children:t}),s):null};function dP(e){const t={appendToParentPortal:!0,...e},{containerRef:r,...n}=t;return r?(0,Yn.jsx)(uP,{containerRef:r,...n}):(0,Yn.jsx)(lP,{...n})}dP.className=sP,dP.selector=".chakra-portal",dP.displayName="Portal";var[hP,fP]=di({name:"ToastOptionsContext",strict:!1}),pP=e=>{const t=(0,n.useSyncExternalStore)(GA.subscribe,GA.getState,GA.getState),{motionVariants:r,component:i=RA,portalProps:o}=e,a=Object.keys(t).map((e=>{const n=t[e];return(0,Yn.jsx)("div",{role:"region","aria-live":"polite","aria-label":`Notifications-${e}`,id:`chakra-toast-manager-${e}`,style:fb(e),children:(0,Yn.jsx)(iP,{initial:!1,children:n.map((e=>(0,Yn.jsx)(i,{motionVariants:r,...e},e.id)))})},e)}));return(0,Yn.jsx)(dP,{...o,children:a})},mP=e=>function({children:t,theme:r=e,toastOptions:n,...i}){return(0,Yn.jsxs)(kh,{theme:r,...i,children:[(0,Yn.jsx)(hP,{value:null==n?void 0:n.defaultOptions,children:t}),(0,Yn.jsx)(pP,{...n})]})},gP=mP(cb),vP=(mP(lb),new Set(["dark","light","system"]));function yP(e={}){const{initialColorMode:t="light",type:r="localStorage",storageKey:n="chakra-ui-color-mode"}=e,i=function(e){let t=e;return vP.has(t)||(t="light"),t}(t);return`!${"cookie"===r?`(function(){try{var a=function(o){var l="(prefers-color-scheme: dark)",v=window.matchMedia(l).matches?"dark":"light",e=o==="system"?v:o,d=document.documentElement,m=document.body,i="chakra-ui-light",n="chakra-ui-dark",s=e==="dark";return m.classList.add(s?n:i),m.classList.remove(s?i:n),d.style.colorScheme=e,d.dataset.theme=e,e},u=a,h="${i}",r="${n}",t=document.cookie.match(new RegExp("(^| )".concat(r,"=([^;]+)"))),c=t?t[2]:null;c?a(c):document.cookie="".concat(r,"=").concat(a(h),"; max-age=31536000; path=/")}catch(a){}})();\n `:`(function(){try{var a=function(c){var v="(prefers-color-scheme: dark)",h=window.matchMedia(v).matches?"dark":"light",r=c==="system"?h:c,o=document.documentElement,s=document.body,l="chakra-ui-light",d="chakra-ui-dark",i=r==="dark";return s.classList.add(i?d:l),s.classList.remove(i?l:d),o.style.colorScheme=r,o.dataset.theme=r,r},n=a,m="${i}",e="${n}",t=localStorage.getItem(e);t?a(t):localStorage.setItem(e,a(m))}catch(a){}})();\n `}`.trim()}function bP(e={}){const{nonce:t}=e;return(0,Yn.jsx)("script",{id:"chakra-script",nonce:t,dangerouslySetInnerHTML:{__html:yP(e)}})}var wP=["borders","breakpoints","colors","components","config","direction","fonts","fontSizes","fontWeights","letterSpacings","lineHeights","radii","shadows","sizes","space","styles","transition","zIndices"];function xP(e){return"function"===typeof e}var _P=e=>function(...t){let r=[...t],n=t[t.length-1];var i;return oe(i=n)&&wP.every((e=>Object.prototype.hasOwnProperty.call(i,e)))&&r.length>1?r=r.slice(0,r.length-1):n=e,function(...e){return t=>e.reduce(((e,t)=>t(e)),t)}(...r.map((e=>t=>xP(e)?e(t):function(...e){return fe({},...e,kP)}(t,e))))(n)},SP=_P(cb);_P(lb);function kP(e,t,r,n){if((xP(e)||xP(t))&&Object.prototype.hasOwnProperty.call(n,r))return(...r)=>{const n=xP(e)?e(...r):e,i=xP(t)?t(...r):t;return fe({},n,i,kP)}}const EP={orange:"#FB4F57",orangeL:"#FC7884",blue:"#0D99FF",blueL:"#4FA2FF",green:"#00C39A",greenL:"#00E7B6",black:"#000000",white:"#FFFFFF",gray:{900:"#121212",800:"#181818",700:"#282828",600:"#2C2B2B",500:"#414141",450:"#707070",400:"#C2C2C2",300:"#D6D6D6",200:"#EBEBEB",100:"#F0F0F0",50:"#F5F5F5"}},AP={borderRadius:"full",bg:EP.gray[600],_disabled:{bg:EP.gray[700],color:EP.gray[450]},_hover:{color:EP.green,bg:EP.gray[500],_disabled:{bg:EP.gray[700],color:EP.gray[450]}}},PP={sizes:{md:{height:"38px",fontSize:"14px",minWidth:"38px"},lg:{height:"48px",fontSize:"16px",minWidth:"48px"}},variants:{primary:{bg:EP.blue,_disabled:{bg:EP.gray[500],color:EP.gray[450],opacity:1},_hover:{_disabled:{bg:EP.gray[500],color:EP.gray[450],opacity:1},bg:EP.blueL}},secondary:{border:"1px solid",borderColor:EP.green,_disabled:{color:EP.gray[450],borderColor:EP.gray[500],opacity:1},_hover:{bg:EP.green,_disabled:{color:EP.gray[450],borderColor:EP.gray[500],opacity:1}}},tertiary:{bg:"transparent",border:"1px solid",borderColor:EP.gray[500],_disabled:{color:EP.gray[450],opacity:1},_hover:{border:"1px solid",borderColor:EP.gray[600],bg:EP.gray[600],_disabled:{borderColor:EP.gray[500],color:EP.gray[450],opacity:1}}},warning:{bg:EP.orange,_disabled:{bg:EP.gray[500],color:EP.gray[450],opacity:1},_hover:{bg:EP.orangeL,_disabled:{bg:EP.gray[500],color:EP.gray[450],opacity:1}}},circle_without_hover_color:{...AP,_hover:{color:EP.green,_disabled:{bg:EP.gray[700],color:EP.gray[450]}}},circle_without_color:AP,circle:{...AP,color:EP.gray[300]},specialCTA:{color:EP.greenL,_hover:{color:EP.green}},CTAWithIcon:{padding:"8px 7px",color:EP.gray[300],_hover:{color:EP.green},_disabled:{color:EP.gray[450]}},popover:{color:EP.gray[300],stroke:EP.gray[450],width:"100%",padding:0,height:"24px",justifyContent:"end",_hover:{color:EP.green,stroke:EP.green}}},defaultProps:{variant:"primary",size:"md"}},{definePartsStyle:OP,defineMultiStyleConfig:TP}=Yt(Xh.keys),CP=TP({baseStyle:OP({icon:{color:"white"},control:{marginTop:"-20px",width:"20px",height:"20px",borderWidth:"2px",borderColor:EP.gray[400],borderRadius:"2px",_checked:{borderColor:EP.green,bg:EP.green,color:EP.white,_hover:{bg:EP.green,borderColor:EP.green}}}})}),{definePartsStyle:jP,defineMultiStyleConfig:RP}=Yt(Jh.keys),IP=RP({baseStyle:jP((e=>({body:{padding:"18px 30px 30px 30px",borderLeft:`1px solid ${EP.gray[800]}`},dialog:{bg:EP.gray[900]}}))),sizes:{md:{dialog:{maxW:"594px"}}},defaultProps:{size:"md"}}),{definePartsStyle:MP,defineMultiStyleConfig:LP}=Yt(nf.keys),NP=LP({variants:{onboardingNotice:MP({item:{"&::marker":{color:EP.gray[400]}}}),suggestions:MP({item:{_hover:{background:EP.gray[500]},background:EP.gray[700],borderRadius:"4px",cursor:"pointer",height:"28px",listStyleType:"none"},container:{background:EP.gray[700],border:"1px solid",borderColor:EP.gray[500],borderRadius:"8px",listStyleType:"none",marginLeft:"0 !important",overflowX:"hidden",padding:"10px",position:"absolute",width:"100%",zIndex:2,maxHeight:"130px"}})}}),{definePartsStyle:DP,defineMultiStyleConfig:zP}=Yt(af.keys),BP={top:"10px",position:"absolute",color:EP.gray[400],borderRadius:"18px"},UP={...BP,insetEnd:"10px"},FP={...BP,insetStart:"10px"},$P=zP({baseStyle:DP({dialog:{padding:"40px",_dark:{bg:EP.gray[900],border:"1px solid",borderColor:EP.gray[700],borderRadius:"8px"}},overlay:{_dark:{bg:"rgba(0, 0, 0, 0.85)"}},closeButton:UP,body:{padding:0},footer:{padding:"32px 0 0 0"},header:{padding:0}}),sizes:{md:{dialog:{maxW:"482px"}}}}),{definePartsStyle:HP,defineMultiStyleConfig:VP}=Yt(uf.keys),qP=VP({variants:{primary:HP({control:{height:"16px",width:"16px",_dark:{borderColor:EP.gray[400]},_checked:{backgroundColor:EP.green,borderColor:EP.green,border:"none",color:"white"}}})}}),{definePartsStyle:KP,defineMultiStyleConfig:WP}=Yt(gf.keys),GP={xs:{fontSize:"12px"},sm:{fontSize:"14px"},md:{fontSize:"16px"},lg:{fontSize:"18px"},xl:{fontSize:"20px"},"2xl":{fontSize:"24px"},"3xl":{fontSize:"30px"},"4xl":{fontSize:"36px"},"5xl":{fontSize:"48px"},"6xl":{fontSize:"69px"}},ZP=SP({components:{Tabs:WP({baseStyle:KP({tab:{_selected:{fontWeight:600,color:EP.white,borderColor:EP.orange,borderBottom:`2px solid ${EP.orange}`}}})}),Text:{baseStyle:{fontWeight:"400"},sizes:GP},Heading:{baseStyle:{fontWeight:"600"},sizes:GP},Checkbox:CP,Input:{sizes:{md:{field:{height:"48px"}}},defaultProps:{variant:"filled"},variants:{filled:{field:{bg:EP.gray[800],border:"1px solid",borderColor:EP.gray[500],_invalid:{borderColor:EP.orange},_hover:{bg:EP.gray[800]},_focusVisible:{bg:EP.gray[800],borderColor:EP.gray[450]}}}}},Button:PP,FormLabel:{baseStyle:{fontWeight:"600",marginBottom:"12px",size:"md"},sizes:GP},Modal:$P,Drawer:IP,Radio:qP,List:NP},config:{initialColorMode:"dark",useSystemColorMode:!1},colors:{umami:EP,text:{dark:EP.gray[400]}},styles:{global:{body:{bg:EP.black,color:EP.white}}}}),YP=e=>(0,Yn.jsxs)(gP,{theme:ZP,children:[(0,Yn.jsx)(bP,{initialColorMode:ZP.config.initialColorMode}),e.children]});function XP(){return XP=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0&&(t.hash=e.substr(r),e=e.substr(0,r));let n=e.indexOf("?");n>=0&&(t.search=e.substr(n),e=e.substr(0,n)),e&&(t.pathname=e)}return t}function aO(e,t,r,n){void 0===n&&(n={});let{window:i=document.defaultView,v5Compat:o=!1}=n,a=i.history,s=JP.Pop,c=null,l=u();function u(){return(a.state||{idx:null}).idx}function d(){s=JP.Pop;let e=u(),t=null==e?null:e-l;l=e,c&&c({action:s,location:f.location,delta:t})}function h(e){let t="null"!==i.location.origin?i.location.origin:i.location.href,r="string"===typeof e?e:iO(e);return eO(t,"No window.location.(origin|href) available to create URL for href: "+r),new URL(r,t)}null==l&&(l=0,a.replaceState(XP({},a.state,{idx:l}),""));let f={get action(){return s},get location(){return e(i,a)},listen(e){if(c)throw new Error("A history only accepts one active listener");return i.addEventListener(QP,d),c=e,()=>{i.removeEventListener(QP,d),c=null}},createHref:e=>t(i,e),createURL:h,encodeLocation(e){let t=h(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){s=JP.Push;let n=nO(f.location,e,t);r&&r(n,e),l=u()+1;let d=rO(n,l),h=f.createHref(n);try{a.pushState(d,"",h)}catch(p){if(p instanceof DOMException&&"DataCloneError"===p.name)throw p;i.location.assign(h)}o&&c&&c({action:s,location:f.location,delta:1})},replace:function(e,t){s=JP.Replace;let n=nO(f.location,e,t);r&&r(n,e),l=u();let i=rO(n,l),d=f.createHref(n);a.replaceState(i,"",d),o&&c&&c({action:s,location:f.location,delta:0})},go:e=>a.go(e)};return f}var sO;!function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"}(sO||(sO={}));new Set(["lazy","caseSensitive","path","id","index","children"]);function cO(e,t,r){void 0===r&&(r="/");let n=_O(("string"===typeof t?oO(t):t).pathname||"/",r);if(null==n)return null;let i=lO(e);!function(e){e.sort(((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){let r=e.length===t.length&&e.slice(0,-1).every(((e,r)=>e===t[r]));return r?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map((e=>e.childrenIndex)),t.routesMeta.map((e=>e.childrenIndex)))))}(i);let o=null;for(let a=0;null==o&&a{let a={relativePath:void 0===o?e.path||"":o,caseSensitive:!0===e.caseSensitive,childrenIndex:i,route:e};a.relativePath.startsWith("/")&&(eO(a.relativePath.startsWith(n),'Absolute route path "'+a.relativePath+'" nested under path "'+n+'" is not valid. An absolute child route path must start with the combined path of all its parent routes.'),a.relativePath=a.relativePath.slice(n.length));let s=PO([n,a.relativePath]),c=r.concat(a);e.children&&e.children.length>0&&(eO(!0!==e.index,'Index routes must not have child routes. Please remove all child routes from route path "'+s+'".'),lO(e.children,t,c,s)),(null!=e.path||e.index)&&t.push({path:s,score:yO(s,e.index),routesMeta:c})};return e.forEach(((e,t)=>{var r;if(""!==e.path&&null!=(r=e.path)&&r.includes("?"))for(let n of uO(e.path))i(e,t,n);else i(e,t)})),t}function uO(e){let t=e.split("/");if(0===t.length)return[];let[r,...n]=t,i=r.endsWith("?"),o=r.replace(/\?$/,"");if(0===n.length)return i?[o,""]:[o];let a=uO(n.join("/")),s=[];return s.push(...a.map((e=>""===e?o:[o,e].join("/")))),i&&s.push(...a),s.map((t=>e.startsWith("/")&&""===t?"/":t))}const dO=/^:\w+$/,hO=3,fO=2,pO=1,mO=10,gO=-2,vO=e=>"*"===e;function yO(e,t){let r=e.split("/"),n=r.length;return r.some(vO)&&(n+=gO),t&&(n+=fO),r.filter((e=>!vO(e))).reduce(((e,t)=>e+(dO.test(t)?hO:""===t?pO:mO)),n)}function bO(e,t){let{routesMeta:r}=e,n={},i="/",o=[];for(let a=0;a(n.push({paramName:t,isOptional:null!=r}),r?"/?([^\\/]+)?":"/([^\\/]+)")));e.endsWith("*")?(n.push({paramName:"*"}),i+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?i+="\\/*$":""!==e&&"/"!==e&&(i+="(?:(?=\\/|$))");let o=new RegExp(i,t?void 0:"i");return[o,n]}(e.path,e.caseSensitive,e.end),i=t.match(r);if(!i)return null;let o=i[0],a=o.replace(/(.)\/+$/,"$1"),s=i.slice(1),c=n.reduce(((e,t,r)=>{let{paramName:n,isOptional:i}=t;if("*"===n){let e=s[r]||"";a=o.slice(0,o.length-e.length).replace(/(.)\/+$/,"$1")}const c=s[r];return e[n]=i&&!c?void 0:function(e,t){try{return decodeURIComponent(e)}catch(r){return tO(!1,'The value for the URL param "'+t+'" will not be decoded because the string "'+e+'" is a malformed URL segment. This is probably due to a bad percent encoding ('+r+")."),e}}(c||"",n),e}),{});return{params:c,pathname:o,pathnameBase:a,pattern:e}}function xO(e){try{return decodeURI(e)}catch(t){return tO(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent encoding ('+t+")."),e}}function _O(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,n=e.charAt(r);return n&&"/"!==n?null:e.slice(r)||"/"}function SO(e,t,r,n){return"Cannot include a '"+e+"' character in a manually specified `to."+t+"` field ["+JSON.stringify(n)+"]. Please separate it out to the `to."+r+'` field. Alternatively you may provide the full path as a string in and the router will parse it for you.'}function kO(e){return e.filter(((e,t)=>0===t||e.route.path&&e.route.path.length>0))}function EO(e,t){let r=kO(e);return t?r.map(((t,r)=>r===e.length-1?t.pathname:t.pathnameBase)):r.map((e=>e.pathnameBase))}function AO(e,t,r,n){let i;void 0===n&&(n=!1),"string"===typeof e?i=oO(e):(i=XP({},e),eO(!i.pathname||!i.pathname.includes("?"),SO("?","pathname","search",i)),eO(!i.pathname||!i.pathname.includes("#"),SO("#","pathname","hash",i)),eO(!i.search||!i.search.includes("#"),SO("#","search","hash",i)));let o,a=""===e||""===i.pathname,s=a?"/":i.pathname;if(null==s)o=r;else{let e=t.length-1;if(!n&&s.startsWith("..")){let t=s.split("/");for(;".."===t[0];)t.shift(),e-=1;i.pathname=t.join("/")}o=e>=0?t[e]:"/"}let c=function(e,t){void 0===t&&(t="/");let{pathname:r,search:n="",hash:i=""}="string"===typeof e?oO(e):e,o=r?r.startsWith("/")?r:function(e,t){let r=t.replace(/\/+$/,"").split("/");return e.split("/").forEach((e=>{".."===e?r.length>1&&r.pop():"."!==e&&r.push(e)})),r.length>1?r.join("/"):"/"}(r,t):t;return{pathname:o,search:TO(n),hash:CO(i)}}(i,o),l=s&&"/"!==s&&s.endsWith("/"),u=(a||"."===s)&&r.endsWith("/");return c.pathname.endsWith("/")||!l&&!u||(c.pathname+="/"),c}const PO=e=>e.join("/").replace(/\/\/+/g,"/"),OO=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),TO=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",CO=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"";Error;function jO(e){return null!=e&&"number"===typeof e.status&&"string"===typeof e.statusText&&"boolean"===typeof e.internal&&"data"in e}const RO=["post","put","patch","delete"],IO=(new Set(RO),["get",...RO]);new Set(IO),new Set([301,302,303,307,308]),new Set([307,308]);Symbol("deferred");function MO(){return MO=Object.assign?Object.assign.bind():function(e){for(var t=1;t{r.current=!0}));let i=n.useCallback((function(n,i){void 0===i&&(i={}),r.current&&("number"===typeof n?e.navigate(n):e.navigate(n,MO({fromRouteId:t},i)))}),[e,t]);return i}():function(){FO()||eO(!1);let e=n.useContext(LO),{basename:t,future:r,navigator:i}=n.useContext(DO),{matches:o}=n.useContext(BO),{pathname:a}=$O(),s=JSON.stringify(EO(o,r.v7_relativeSplatPath)),c=n.useRef(!1);HO((()=>{c.current=!0}));let l=n.useCallback((function(r,n){if(void 0===n&&(n={}),!c.current)return;if("number"===typeof r)return void i.go(r);let o=AO(r,JSON.parse(s),a,"path"===n.relative);null==e&&"/"!==t&&(o.pathname="/"===o.pathname?t:PO([t,o.pathname])),(n.replace?i.replace:i.push)(o,n.state,n)}),[t,i,s,a,e]);return l}()}function qO(e,t){let{relative:r}=void 0===t?{}:t,{future:i}=n.useContext(DO),{matches:o}=n.useContext(BO),{pathname:a}=$O(),s=JSON.stringify(EO(o,i.v7_relativeSplatPath));return n.useMemo((()=>AO(e,JSON.parse(s),a,"path"===r)),[e,s,a,r])}function KO(e,t,r,i){FO()||eO(!1);let{navigator:o}=n.useContext(DO),{matches:a}=n.useContext(BO),s=a[a.length-1],c=s?s.params:{},l=(s&&s.pathname,s?s.pathnameBase:"/");s&&s.route;let u,d=$O();if(t){var h;let e="string"===typeof t?oO(t):t;"/"===l||(null==(h=e.pathname)?void 0:h.startsWith(l))||eO(!1),u=e}else u=d;let f=u.pathname||"/",p=cO(e,{pathname:"/"===l?f:f.slice(l.length)||"/"});let m=XO(p&&p.map((e=>Object.assign({},e,{params:Object.assign({},c,e.params),pathname:PO([l,o.encodeLocation?o.encodeLocation(e.pathname).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?l:PO([l,o.encodeLocation?o.encodeLocation(e.pathnameBase).pathname:e.pathnameBase])}))),a,r,i);return t&&m?n.createElement(zO.Provider,{value:{location:MO({pathname:"/",search:"",hash:"",state:null,key:"default"},u),navigationType:JP.Pop}},m):m}function WO(){let e=function(){var e;let t=n.useContext(UO),r=tT(QO.UseRouteError),i=rT(QO.UseRouteError);if(void 0!==t)return t;return null==(e=r.errors)?void 0:e[i]}(),t=jO(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,i="rgba(200,200,200, 0.5)",o={padding:"0.5rem",backgroundColor:i};return n.createElement(n.Fragment,null,n.createElement("h2",null,"Unexpected Application Error!"),n.createElement("h3",{style:{fontStyle:"italic"}},t),r?n.createElement("pre",{style:o},r):null,null)}const GO=n.createElement(WO,null);class ZO extends n.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||"idle"!==t.revalidation&&"idle"===e.revalidation?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:void 0!==e.error?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){console.error("React Router caught the following error during render",e,t)}render(){return void 0!==this.state.error?n.createElement(BO.Provider,{value:this.props.routeContext},n.createElement(UO.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function YO(e){let{routeContext:t,match:r,children:i}=e,o=n.useContext(LO);return o&&o.static&&o.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(o.staticContext._deepestRenderedBoundaryId=r.route.id),n.createElement(BO.Provider,{value:t},i)}function XO(e,t,r,i){var o;if(void 0===t&&(t=[]),void 0===r&&(r=null),void 0===i&&(i=null),null==e){var a;if(null==(a=r)||!a.errors)return null;e=r.matches}let s=e,c=null==(o=r)?void 0:o.errors;if(null!=c){let e=s.findIndex((e=>e.route.id&&(null==c?void 0:c[e.route.id])));e>=0||eO(!1),s=s.slice(0,Math.min(s.length,e+1))}let l=!1,u=-1;if(r&&i&&i.v7_partialHydration)for(let n=0;n=0?s.slice(0,u+1):[s[0]];break}}}return s.reduceRight(((e,i,o)=>{let a,d=!1,h=null,f=null;r&&(a=c&&i.route.id?c[i.route.id]:void 0,h=i.route.errorElement||GO,l&&(u<0&&0===o?(!function(e,t,r){t||nT[e]||(nT[e]=!0)}("route-fallback",!1),d=!0,f=null):u===o&&(d=!0,f=i.route.hydrateFallbackElement||null)));let p=t.concat(s.slice(0,o+1)),m=()=>{let t;return t=a?h:d?f:i.route.Component?n.createElement(i.route.Component,null):i.route.element?i.route.element:e,n.createElement(YO,{match:i,routeContext:{outlet:e,matches:p,isDataRoute:null!=r},children:t})};return r&&(i.route.ErrorBoundary||i.route.errorElement||0===o)?n.createElement(ZO,{location:r.location,revalidation:r.revalidation,component:h,error:a,children:m(),routeContext:{outlet:null,matches:p,isDataRoute:!0}}):m()}),null)}var JO=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(JO||{}),QO=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(QO||{});function eT(e){let t=n.useContext(LO);return t||eO(!1),t}function tT(e){let t=n.useContext(NO);return t||eO(!1),t}function rT(e){let t=function(e){let t=n.useContext(BO);return t||eO(!1),t}(),r=t.matches[t.matches.length-1];return r.route.id||eO(!1),r.route.id}const nT={};i.startTransition;function iT(e){let{to:t,replace:r,state:i,relative:o}=e;FO()||eO(!1);let{future:a,static:s}=n.useContext(DO),{matches:c}=n.useContext(BO),{pathname:l}=$O(),u=VO(),d=AO(t,EO(c,a.v7_relativeSplatPath),l,"path"===o),h=JSON.stringify(d);return n.useEffect((()=>u(JSON.parse(h),{replace:r,state:i,relative:o})),[u,h,o,r,i]),null}function oT(e){eO(!1)}function aT(e){let{basename:t="/",children:r=null,location:i,navigationType:o=JP.Pop,navigator:a,static:s=!1,future:c}=e;FO()&&eO(!1);let l=t.replace(/^\/*/,"/"),u=n.useMemo((()=>({basename:l,navigator:a,static:s,future:MO({v7_relativeSplatPath:!1},c)})),[l,c,a,s]);"string"===typeof i&&(i=oO(i));let{pathname:d="/",search:h="",hash:f="",state:p=null,key:m="default"}=i,g=n.useMemo((()=>{let e=_O(d,l);return null==e?null:{location:{pathname:e,search:h,hash:f,state:p,key:m},navigationType:o}}),[l,d,h,f,p,m,o]);return null==g?null:n.createElement(DO.Provider,{value:u},n.createElement(zO.Provider,{children:r,value:g}))}function sT(e){let{children:t,location:r}=e;return KO(cT(t),r)}new Promise((()=>{}));n.Component;function cT(e,t){void 0===t&&(t=[]);let r=[];return n.Children.forEach(e,((e,i)=>{if(!n.isValidElement(e))return;let o=[...t,i];if(e.type===n.Fragment)return void r.push.apply(r,cT(e.props.children,o));e.type!==oT&&eO(!1),e.props.index&&e.props.children&&eO(!1);let a={id:e.props.id||o.join("-"),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,loader:e.props.loader,action:e.props.action,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:null!=e.props.ErrorBoundary||null!=e.props.errorElement,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(a.children=cT(e.props.children,o)),r.push(a)})),r}function lT(){return lT=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0||(i[r]=e[r]);return i}function dT(e){return void 0===e&&(e=""),new URLSearchParams("string"===typeof e||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce(((t,r)=>{let n=e[r];return t.concat(Array.isArray(n)?n.map((e=>[r,e])):[[r,n]])}),[]))}new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);const hT=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","unstable_viewTransition"];new Map;const fT=i.startTransition;Mi.flushSync;function pT(e){let{basename:t,children:r,future:i,window:o}=e,a=n.useRef();null==a.current&&(a.current=function(e){return void 0===e&&(e={}),aO((function(e,t){let{pathname:r="/",search:n="",hash:i=""}=oO(e.location.hash.substr(1));return r.startsWith("/")||r.startsWith(".")||(r="/"+r),nO("",{pathname:r,search:n,hash:i},t.state&&t.state.usr||null,t.state&&t.state.key||"default")}),(function(e,t){let r=e.document.querySelector("base"),n="";if(r&&r.getAttribute("href")){let t=e.location.href,r=t.indexOf("#");n=-1===r?t:t.slice(0,r)}return n+"#"+("string"===typeof t?t:iO(t))}),(function(e,t){tO("/"===e.pathname.charAt(0),"relative pathnames are not supported in hash history.push("+JSON.stringify(t)+")")}),e)}({window:o,v5Compat:!0}));let s=a.current,[c,l]=n.useState({action:s.action,location:s.location}),{v7_startTransition:u}=i||{},d=n.useCallback((e=>{u&&fT?fT((()=>l(e))):l(e)}),[l,u]);return n.useLayoutEffect((()=>s.listen(d)),[s,d]),n.createElement(aT,{basename:t,children:r,location:c.location,navigationType:c.action,navigator:s,future:i})}const mT="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement,gT=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,vT=n.forwardRef((function(e,t){let r,{onClick:i,relative:o,reloadDocument:a,replace:s,state:c,target:l,to:u,preventScrollReset:d,unstable_viewTransition:h}=e,f=uT(e,hT),{basename:p}=n.useContext(DO),m=!1;if("string"===typeof u&&gT.test(u)&&(r=u,mT))try{let e=new URL(window.location.href),t=u.startsWith("//")?new URL(e.protocol+u):new URL(u),r=_O(t.pathname,p);t.origin===e.origin&&null!=r?u=r+t.search+t.hash:m=!0}catch(y){}let g=function(e,t){let{relative:r}=void 0===t?{}:t;FO()||eO(!1);let{basename:i,navigator:o}=n.useContext(DO),{hash:a,pathname:s,search:c}=qO(e,{relative:r}),l=s;return"/"!==i&&(l="/"===s?i:PO([i,s])),o.createHref({pathname:l,search:c,hash:a})}(u,{relative:o}),v=function(e,t){let{target:r,replace:i,state:o,preventScrollReset:a,relative:s,unstable_viewTransition:c}=void 0===t?{}:t,l=VO(),u=$O(),d=qO(e,{relative:s});return n.useCallback((t=>{if(function(e,t){return 0===e.button&&(!t||"_self"===t)&&!function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e)}(t,r)){t.preventDefault();let r=void 0!==i?i:iO(u)===iO(d);l(e,{replace:r,state:o,preventScrollReset:a,relative:s,unstable_viewTransition:c})}}),[u,l,d,i,o,r,e,a,s,c])}(u,{replace:s,state:c,target:l,preventScrollReset:d,relative:o,unstable_viewTransition:h});return n.createElement("a",lT({},f,{href:r||g,onClick:m||a?i:function(e){i&&i(e),e.defaultPrevented||v(e)},ref:t,target:l}))}));var yT,bT;function wT(e){let t=n.useRef(dT(e)),r=n.useRef(!1),i=$O(),o=n.useMemo((()=>function(e,t){let r=dT(e);return t&&t.forEach(((e,n)=>{r.has(n)||t.getAll(n).forEach((e=>{r.append(n,e)}))})),r}(i.search,r.current?null:t.current)),[i.search]),a=VO(),s=n.useCallback(((e,t)=>{const n=dT("function"===typeof e?e(o):e);r.current=!0,a("?"+n,t)}),[a,o]);return[o,s]}(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(yT||(yT={})),function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"}(bT||(bT={}));function xT(e,t){return function(){return e.apply(t,arguments)}}const{toString:_T}=Object.prototype,{getPrototypeOf:ST}=Object,kT=(e=>t=>{const r=_T.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),ET=e=>(e=e.toLowerCase(),t=>kT(t)===e),AT=e=>t=>typeof t===e,{isArray:PT}=Array,OT=AT("undefined");const TT=ET("ArrayBuffer");const CT=AT("string"),jT=AT("function"),RT=AT("number"),IT=e=>null!==e&&"object"===typeof e,MT=e=>{if("object"!==kT(e))return!1;const t=ST(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},LT=ET("Date"),NT=ET("File"),DT=ET("Blob"),zT=ET("FileList"),BT=ET("URLSearchParams");function UT(e,t,{allOwnKeys:r=!1}={}){if(null===e||"undefined"===typeof e)return;let n,i;if("object"!==typeof e&&(e=[e]),PT(e))for(n=0,i=e.length;n0;)if(n=r[i],t===n.toLowerCase())return n;return null}const $T="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self?self:"undefined"!==typeof window?window:global,HT=e=>!OT(e)&&e!==$T;const VT=(qT="undefined"!==typeof Uint8Array&&ST(Uint8Array),e=>qT&&e instanceof qT);var qT;const KT=ET("HTMLFormElement"),WT=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),GT=ET("RegExp"),ZT=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};UT(r,((r,i)=>{let o;!1!==(o=t(r,i,e))&&(n[i]=o||r)})),Object.defineProperties(e,n)},YT="abcdefghijklmnopqrstuvwxyz",XT="0123456789",JT={DIGIT:XT,ALPHA:YT,ALPHA_DIGIT:YT+YT.toUpperCase()+XT};const QT=ET("AsyncFunction"),eC={isArray:PT,isArrayBuffer:TT,isBuffer:function(e){return null!==e&&!OT(e)&&null!==e.constructor&&!OT(e.constructor)&&jT(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"===typeof FormData&&e instanceof FormData||jT(e.append)&&("formdata"===(t=kT(e))||"object"===t&&jT(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&TT(e.buffer),t},isString:CT,isNumber:RT,isBoolean:e=>!0===e||!1===e,isObject:IT,isPlainObject:MT,isUndefined:OT,isDate:LT,isFile:NT,isBlob:DT,isRegExp:GT,isFunction:jT,isStream:e=>IT(e)&&jT(e.pipe),isURLSearchParams:BT,isTypedArray:VT,isFileList:zT,forEach:UT,merge:function e(){const{caseless:t}=HT(this)&&this||{},r={},n=(n,i)=>{const o=t&&FT(r,i)||i;MT(r[o])&&MT(n)?r[o]=e(r[o],n):MT(n)?r[o]=e({},n):PT(n)?r[o]=n.slice():r[o]=n};for(let i=0,o=arguments.length;i(UT(t,((t,n)=>{r&&jT(t)?e[n]=xT(t,r):e[n]=t}),{allOwnKeys:n}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},toFlatObject:(e,t,r,n)=>{let i,o,a;const s={};if(t=t||{},null==e)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)a=i[o],n&&!n(a,e,t)||s[a]||(t[a]=e[a],s[a]=!0);e=!1!==r&&ST(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},kindOf:kT,kindOfTest:ET,endsWith:(e,t,r)=>{e=String(e),(void 0===r||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return-1!==n&&n===r},toArray:e=>{if(!e)return null;if(PT(e))return e;let t=e.length;if(!RT(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},forEachEntry:(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let n;for(;(n=r.next())&&!n.done;){const r=n.value;t.call(e,r[0],r[1])}},matchAll:(e,t)=>{let r;const n=[];for(;null!==(r=e.exec(t));)n.push(r);return n},isHTMLForm:KT,hasOwnProperty:WT,hasOwnProp:WT,reduceDescriptors:ZT,freezeMethods:e=>{ZT(e,((t,r)=>{if(jT(e)&&-1!==["arguments","caller","callee"].indexOf(r))return!1;const n=e[r];jT(n)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")}))}))},toObjectSet:(e,t)=>{const r={},n=e=>{e.forEach((e=>{r[e]=!0}))};return PT(e)?n(e):n(String(e).split(t)),r},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,r){return t.toUpperCase()+r})),noop:()=>{},toFiniteNumber:(e,t)=>(e=+e,Number.isFinite(e)?e:t),findKey:FT,global:$T,isContextDefined:HT,ALPHABET:JT,generateString:(e=16,t=JT.ALPHA_DIGIT)=>{let r="";const{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r},isSpecCompliantForm:function(e){return!!(e&&jT(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),r=(e,n)=>{if(IT(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[n]=e;const i=PT(e)?[]:{};return UT(e,((e,t)=>{const o=r(e,n+1);!OT(o)&&(i[t]=o)})),t[n]=void 0,i}}return e};return r(e,0)},isAsyncFn:QT,isThenable:e=>e&&(IT(e)||jT(e))&&jT(e.then)&&jT(e.catch)};function tC(e,t,r,n,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),i&&(this.response=i)}eC.inherits(tC,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:eC.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const rC=tC.prototype,nC={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{nC[e]={value:e}})),Object.defineProperties(tC,nC),Object.defineProperty(rC,"isAxiosError",{value:!0}),tC.from=(e,t,r,n,i,o)=>{const a=Object.create(rC);return eC.toFlatObject(e,a,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),tC.call(a,e.message,t,r,n,i),a.cause=e,a.name=e.name,o&&Object.assign(a,o),a};const iC=tC;var oC=r(4872).Buffer;function aC(e){return eC.isPlainObject(e)||eC.isArray(e)}function sC(e){return eC.endsWith(e,"[]")?e.slice(0,-2):e}function cC(e,t,r){return e?e.concat(t).map((function(e,t){return e=sC(e),!r&&t?"["+e+"]":e})).join(r?".":""):t}const lC=eC.toFlatObject(eC,{},null,(function(e){return/^is[A-Z]/.test(e)}));const uC=function(e,t,r){if(!eC.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const n=(r=eC.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!eC.isUndefined(t[e])}))).metaTokens,i=r.visitor||l,o=r.dots,a=r.indexes,s=(r.Blob||"undefined"!==typeof Blob&&Blob)&&eC.isSpecCompliantForm(t);if(!eC.isFunction(i))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(eC.isDate(e))return e.toISOString();if(!s&&eC.isBlob(e))throw new iC("Blob is not supported. Use a Buffer instead.");return eC.isArrayBuffer(e)||eC.isTypedArray(e)?s&&"function"===typeof Blob?new Blob([e]):oC.from(e):e}function l(e,r,i){let s=e;if(e&&!i&&"object"===typeof e)if(eC.endsWith(r,"{}"))r=n?r:r.slice(0,-2),e=JSON.stringify(e);else if(eC.isArray(e)&&function(e){return eC.isArray(e)&&!e.some(aC)}(e)||(eC.isFileList(e)||eC.endsWith(r,"[]"))&&(s=eC.toArray(e)))return r=sC(r),s.forEach((function(e,n){!eC.isUndefined(e)&&null!==e&&t.append(!0===a?cC([r],n,o):null===a?r:r+"[]",c(e))})),!1;return!!aC(e)||(t.append(cC(i,r,o),c(e)),!1)}const u=[],d=Object.assign(lC,{defaultVisitor:l,convertValue:c,isVisitable:aC});if(!eC.isObject(e))throw new TypeError("data must be an object");return function e(r,n){if(!eC.isUndefined(r)){if(-1!==u.indexOf(r))throw Error("Circular reference detected in "+n.join("."));u.push(r),eC.forEach(r,(function(r,o){!0===(!(eC.isUndefined(r)||null===r)&&i.call(t,r,eC.isString(o)?o.trim():o,n,d))&&e(r,n?n.concat(o):[o])})),u.pop()}}(e),t};function dC(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function hC(e,t){this._pairs=[],e&&uC(e,this,t)}const fC=hC.prototype;fC.append=function(e,t){this._pairs.push([e,t])},fC.toString=function(e){const t=e?function(t){return e.call(this,t,dC)}:dC;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const pC=hC;function mC(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function gC(e,t,r){if(!t)return e;const n=r&&r.encode||mC,i=r&&r.serialize;let o;if(o=i?i(t,r):eC.isURLSearchParams(t)?t.toString():new pC(t,r).toString(n),o){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}const vC=class{constructor(){this.handlers=[]}use(e,t,r){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!r&&r.synchronous,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){eC.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},yC={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},bC="undefined"!==typeof URLSearchParams?URLSearchParams:pC,wC="undefined"!==typeof FormData?FormData:null,xC="undefined"!==typeof Blob?Blob:null,_C=(()=>{let e;return("undefined"===typeof navigator||"ReactNative"!==(e=navigator.product)&&"NativeScript"!==e&&"NS"!==e)&&("undefined"!==typeof window&&"undefined"!==typeof document)})(),SC={isBrowser:!0,classes:{URLSearchParams:bC,FormData:wC,Blob:xC},isStandardBrowserEnv:_C,isStandardBrowserWebWorkerEnv:"undefined"!==typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"===typeof self.importScripts,protocols:["http","https","file","blob","url","data"]};const kC=function(e){function t(e,r,n,i){let o=e[i++];const a=Number.isFinite(+o),s=i>=e.length;if(o=!o&&eC.isArray(n)?n.length:o,s)return eC.hasOwnProp(n,o)?n[o]=[n[o],r]:n[o]=r,!a;n[o]&&eC.isObject(n[o])||(n[o]=[]);return t(e,r,n[o],i)&&eC.isArray(n[o])&&(n[o]=function(e){const t={},r=Object.keys(e);let n;const i=r.length;let o;for(n=0;n{t(function(e){return eC.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),n,r,0)})),r}return null};const EC={transitional:yC,adapter:["xhr","http"],transformRequest:[function(e,t){const r=t.getContentType()||"",n=r.indexOf("application/json")>-1,i=eC.isObject(e);i&&eC.isHTMLForm(e)&&(e=new FormData(e));if(eC.isFormData(e))return n&&n?JSON.stringify(kC(e)):e;if(eC.isArrayBuffer(e)||eC.isBuffer(e)||eC.isStream(e)||eC.isFile(e)||eC.isBlob(e))return e;if(eC.isArrayBufferView(e))return e.buffer;if(eC.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(r.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return uC(e,new SC.classes.URLSearchParams,Object.assign({visitor:function(e,t,r,n){return SC.isNode&&eC.isBuffer(e)?(this.append(t,e.toString("base64")),!1):n.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((o=eC.isFileList(e))||r.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return uC(o?{"files[]":e}:e,t&&new t,this.formSerializer)}}return i||n?(t.setContentType("application/json",!1),function(e,t,r){if(eC.isString(e))try{return(t||JSON.parse)(e),eC.trim(e)}catch(n){if("SyntaxError"!==n.name)throw n}return(r||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||EC.transitional,r=t&&t.forcedJSONParsing,n="json"===this.responseType;if(e&&eC.isString(e)&&(r&&!this.responseType||n)){const r=!(t&&t.silentJSONParsing)&&n;try{return JSON.parse(e)}catch(i){if(r){if("SyntaxError"===i.name)throw iC.from(i,iC.ERR_BAD_RESPONSE,this,null,this.response);throw i}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:SC.classes.FormData,Blob:SC.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};eC.forEach(["delete","get","head","post","put","patch"],(e=>{EC.headers[e]={}}));const AC=EC,PC=eC.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),OC=Symbol("internals");function TC(e){return e&&String(e).trim().toLowerCase()}function CC(e){return!1===e||null==e?e:eC.isArray(e)?e.map(CC):String(e)}function jC(e,t,r,n,i){return eC.isFunction(n)?n.call(this,t,r):(i&&(t=r),eC.isString(t)?eC.isString(n)?-1!==t.indexOf(n):eC.isRegExp(n)?n.test(t):void 0:void 0)}class RC{constructor(e){e&&this.set(e)}set(e,t,r){const n=this;function i(e,t,r){const i=TC(t);if(!i)throw new Error("header name must be a non-empty string");const o=eC.findKey(n,i);(!o||void 0===n[o]||!0===r||void 0===r&&!1!==n[o])&&(n[o||t]=CC(e))}const o=(e,t)=>eC.forEach(e,((e,r)=>i(e,r,t)));return eC.isPlainObject(e)||e instanceof this.constructor?o(e,t):eC.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim())?o((e=>{const t={};let r,n,i;return e&&e.split("\n").forEach((function(e){i=e.indexOf(":"),r=e.substring(0,i).trim().toLowerCase(),n=e.substring(i+1).trim(),!r||t[r]&&PC[r]||("set-cookie"===r?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)})),t})(e),t):null!=e&&i(t,e,r),this}get(e,t){if(e=TC(e)){const r=eC.findKey(this,e);if(r){const e=this[r];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}(e);if(eC.isFunction(t))return t.call(this,e,r);if(eC.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=TC(e)){const r=eC.findKey(this,e);return!(!r||void 0===this[r]||t&&!jC(0,this[r],r,t))}return!1}delete(e,t){const r=this;let n=!1;function i(e){if(e=TC(e)){const i=eC.findKey(r,e);!i||t&&!jC(0,r[i],i,t)||(delete r[i],n=!0)}}return eC.isArray(e)?e.forEach(i):i(e),n}clear(e){const t=Object.keys(this);let r=t.length,n=!1;for(;r--;){const i=t[r];e&&!jC(0,this[i],i,e,!0)||(delete this[i],n=!0)}return n}normalize(e){const t=this,r={};return eC.forEach(this,((n,i)=>{const o=eC.findKey(r,i);if(o)return t[o]=CC(n),void delete t[i];const a=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,r)=>t.toUpperCase()+r))}(i):String(i).trim();a!==i&&delete t[i],t[a]=CC(n),r[a]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return eC.forEach(this,((r,n)=>{null!=r&&!1!==r&&(t[n]=e&&eC.isArray(r)?r.join(", "):r)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const r=new this(e);return t.forEach((e=>r.set(e))),r}static accessor(e){const t=(this[OC]=this[OC]={accessors:{}}).accessors,r=this.prototype;function n(e){const n=TC(e);t[n]||(!function(e,t){const r=eC.toCamelCase(" "+t);["get","set","has"].forEach((n=>{Object.defineProperty(e,n+r,{value:function(e,r,i){return this[n].call(this,t,e,r,i)},configurable:!0})}))}(r,e),t[n]=!0)}return eC.isArray(e)?e.forEach(n):n(e),this}}RC.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),eC.reduceDescriptors(RC.prototype,(({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[r]=e}}})),eC.freezeMethods(RC);const IC=RC;function MC(e,t){const r=this||AC,n=t||r,i=IC.from(n.headers);let o=n.data;return eC.forEach(e,(function(e){o=e.call(r,o,i.normalize(),t?t.status:void 0)})),i.normalize(),o}function LC(e){return!(!e||!e.__CANCEL__)}function NC(e,t,r){iC.call(this,null==e?"canceled":e,iC.ERR_CANCELED,t,r),this.name="CanceledError"}eC.inherits(NC,iC,{__CANCEL__:!0});const DC=NC;const zC=SC.isStandardBrowserEnv?{write:function(e,t,r,n,i,o){const a=[];a.push(e+"="+encodeURIComponent(t)),eC.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),eC.isString(n)&&a.push("path="+n),eC.isString(i)&&a.push("domain="+i),!0===o&&a.push("secure"),document.cookie=a.join("; ")},read:function(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}};function BC(e,t){return e&&!function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}(t)?function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const UC=SC.isStandardBrowserEnv?function(){const e=/(msie|trident)/i.test(navigator.userAgent),t=document.createElement("a");let r;function n(r){let n=r;return e&&(t.setAttribute("href",n),n=t.href),t.setAttribute("href",n),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return r=n(window.location.href),function(e){const t=eC.isString(e)?n(e):e;return t.protocol===r.protocol&&t.host===r.host}}():function(){return!0};const FC=function(e,t){e=e||10;const r=new Array(e),n=new Array(e);let i,o=0,a=0;return t=void 0!==t?t:1e3,function(s){const c=Date.now(),l=n[a];i||(i=c),r[o]=s,n[o]=c;let u=a,d=0;for(;u!==o;)d+=r[u++],u%=e;if(o=(o+1)%e,o===a&&(a=(a+1)%e),c-i{const o=i.loaded,a=i.lengthComputable?i.total:void 0,s=o-r,c=n(s);r=o;const l={loaded:o,total:a,progress:a?o/a:void 0,bytes:s,rate:c||void 0,estimated:c&&a&&o<=a?(a-o)/c:void 0,event:i};l[t?"download":"upload"]=!0,e(l)}}const HC="undefined"!==typeof XMLHttpRequest&&function(e){return new Promise((function(t,r){let n=e.data;const i=IC.from(e.headers).normalize(),o=e.responseType;let a,s;function c(){e.cancelToken&&e.cancelToken.unsubscribe(a),e.signal&&e.signal.removeEventListener("abort",a)}eC.isFormData(n)&&(SC.isStandardBrowserEnv||SC.isStandardBrowserWebWorkerEnv?i.setContentType(!1):i.getContentType(/^\s*multipart\/form-data/)?eC.isString(s=i.getContentType())&&i.setContentType(s.replace(/^\s*(multipart\/form-data);+/,"$1")):i.setContentType("multipart/form-data"));let l=new XMLHttpRequest;if(e.auth){const t=e.auth.username||"",r=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(t+":"+r))}const u=BC(e.baseURL,e.url);function d(){if(!l)return;const n=IC.from("getAllResponseHeaders"in l&&l.getAllResponseHeaders());!function(e,t,r){const n=r.config.validateStatus;r.status&&n&&!n(r.status)?t(new iC("Request failed with status code "+r.status,[iC.ERR_BAD_REQUEST,iC.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r)):e(r)}((function(e){t(e),c()}),(function(e){r(e),c()}),{data:o&&"text"!==o&&"json"!==o?l.response:l.responseText,status:l.status,statusText:l.statusText,headers:n,config:e,request:l}),l=null}if(l.open(e.method.toUpperCase(),gC(u,e.params,e.paramsSerializer),!0),l.timeout=e.timeout,"onloadend"in l?l.onloadend=d:l.onreadystatechange=function(){l&&4===l.readyState&&(0!==l.status||l.responseURL&&0===l.responseURL.indexOf("file:"))&&setTimeout(d)},l.onabort=function(){l&&(r(new iC("Request aborted",iC.ECONNABORTED,e,l)),l=null)},l.onerror=function(){r(new iC("Network Error",iC.ERR_NETWORK,e,l)),l=null},l.ontimeout=function(){let t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const n=e.transitional||yC;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),r(new iC(t,n.clarifyTimeoutError?iC.ETIMEDOUT:iC.ECONNABORTED,e,l)),l=null},SC.isStandardBrowserEnv){const t=UC(u)&&e.xsrfCookieName&&zC.read(e.xsrfCookieName);t&&i.set(e.xsrfHeaderName,t)}void 0===n&&i.setContentType(null),"setRequestHeader"in l&&eC.forEach(i.toJSON(),(function(e,t){l.setRequestHeader(t,e)})),eC.isUndefined(e.withCredentials)||(l.withCredentials=!!e.withCredentials),o&&"json"!==o&&(l.responseType=e.responseType),"function"===typeof e.onDownloadProgress&&l.addEventListener("progress",$C(e.onDownloadProgress,!0)),"function"===typeof e.onUploadProgress&&l.upload&&l.upload.addEventListener("progress",$C(e.onUploadProgress)),(e.cancelToken||e.signal)&&(a=t=>{l&&(r(!t||t.type?new DC(null,e,l):t),l.abort(),l=null)},e.cancelToken&&e.cancelToken.subscribe(a),e.signal&&(e.signal.aborted?a():e.signal.addEventListener("abort",a)));const h=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(u);h&&-1===SC.protocols.indexOf(h)?r(new iC("Unsupported protocol "+h+":",iC.ERR_BAD_REQUEST,e)):l.send(n||null)}))},VC={http:null,xhr:HC};eC.forEach(VC,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(r){}Object.defineProperty(e,"adapterName",{value:t})}}));const qC=e=>`- ${e}`,KC=e=>eC.isFunction(e)||null===e||!1===e,WC=e=>{e=eC.isArray(e)?e:[e];const{length:t}=e;let r,n;const i={};for(let o=0;o`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let r=t?e.length>1?"since :\n"+e.map(qC).join("\n"):" "+qC(e[0]):"as no adapter specified";throw new iC("There is no suitable adapter to dispatch the request "+r,"ERR_NOT_SUPPORT")}return n};function GC(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new DC(null,e)}function ZC(e){GC(e),e.headers=IC.from(e.headers),e.data=MC.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return WC(e.adapter||AC.adapter)(e).then((function(t){return GC(e),t.data=MC.call(e,e.transformResponse,t),t.headers=IC.from(t.headers),t}),(function(t){return LC(t)||(GC(e),t&&t.response&&(t.response.data=MC.call(e,e.transformResponse,t.response),t.response.headers=IC.from(t.response.headers))),Promise.reject(t)}))}const YC=e=>e instanceof IC?e.toJSON():e;function XC(e,t){t=t||{};const r={};function n(e,t,r){return eC.isPlainObject(e)&&eC.isPlainObject(t)?eC.merge.call({caseless:r},e,t):eC.isPlainObject(t)?eC.merge({},t):eC.isArray(t)?t.slice():t}function i(e,t,r){return eC.isUndefined(t)?eC.isUndefined(e)?void 0:n(void 0,e,r):n(e,t,r)}function o(e,t){if(!eC.isUndefined(t))return n(void 0,t)}function a(e,t){return eC.isUndefined(t)?eC.isUndefined(e)?void 0:n(void 0,e):n(void 0,t)}function s(r,i,o){return o in t?n(r,i):o in e?n(void 0,r):void 0}const c={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(e,t)=>i(YC(e),YC(t),!0)};return eC.forEach(Object.keys(Object.assign({},e,t)),(function(n){const o=c[n]||i,a=o(e[n],t[n],n);eC.isUndefined(a)&&o!==s||(r[n]=a)})),r}const JC="1.6.0",QC={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{QC[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}}));const ej={};QC.transitional=function(e,t,r){function n(e,t){return"[Axios v1.6.0] Transitional option '"+e+"'"+t+(r?". "+r:"")}return(r,i,o)=>{if(!1===e)throw new iC(n(i," has been removed"+(t?" in "+t:"")),iC.ERR_DEPRECATED);return t&&!ej[i]&&(ej[i]=!0,console.warn(n(i," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(r,i,o)}};const tj={assertOptions:function(e,t,r){if("object"!==typeof e)throw new iC("options must be an object",iC.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let i=n.length;for(;i-- >0;){const o=n[i],a=t[o];if(a){const t=e[o],r=void 0===t||a(t,o,e);if(!0!==r)throw new iC("option "+o+" must be "+r,iC.ERR_BAD_OPTION_VALUE)}else if(!0!==r)throw new iC("Unknown option "+o,iC.ERR_BAD_OPTION)}},validators:QC},rj=tj.validators;class nj{constructor(e){this.defaults=e,this.interceptors={request:new vC,response:new vC}}request(e,t){"string"===typeof e?(t=t||{}).url=e:t=e||{},t=XC(this.defaults,t);const{transitional:r,paramsSerializer:n,headers:i}=t;void 0!==r&&tj.assertOptions(r,{silentJSONParsing:rj.transitional(rj.boolean),forcedJSONParsing:rj.transitional(rj.boolean),clarifyTimeoutError:rj.transitional(rj.boolean)},!1),null!=n&&(eC.isFunction(n)?t.paramsSerializer={serialize:n}:tj.assertOptions(n,{encode:rj.function,serialize:rj.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&eC.merge(i.common,i[t.method]);i&&eC.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete i[e]})),t.headers=IC.concat(o,i);const a=[];let s=!0;this.interceptors.request.forEach((function(e){"function"===typeof e.runWhen&&!1===e.runWhen(t)||(s=s&&e.synchronous,a.unshift(e.fulfilled,e.rejected))}));const c=[];let l;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let u,d=0;if(!s){const e=[ZC.bind(this),void 0];for(e.unshift.apply(e,a),e.push.apply(e,c),u=e.length,l=Promise.resolve(t);d{if(!r._listeners)return;let t=r._listeners.length;for(;t-- >0;)r._listeners[t](e);r._listeners=null})),this.promise.then=e=>{let t;const n=new Promise((e=>{r.subscribe(e),t=e})).then(e);return n.cancel=function(){r.unsubscribe(t)},n},e((function(e,n,i){r.reason||(r.reason=new DC(e,n,i),t(r.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;const t=new oj((function(t){e=t}));return{token:t,cancel:e}}}const aj=oj;const sj={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(sj).forEach((([e,t])=>{sj[t]=e}));const cj=sj;const lj=function e(t){const r=new ij(t),n=xT(ij.prototype.request,r);return eC.extend(n,ij.prototype,r,{allOwnKeys:!0}),eC.extend(n,r,null,{allOwnKeys:!0}),n.create=function(r){return e(XC(t,r))},n}(AC);lj.Axios=ij,lj.CanceledError=DC,lj.CancelToken=aj,lj.isCancel=LC,lj.VERSION=JC,lj.toFormData=uC,lj.AxiosError=iC,lj.Cancel=lj.CanceledError,lj.all=function(e){return Promise.all(e)},lj.spread=function(e){return function(t){return e.apply(null,t)}},lj.isAxiosError=function(e){return eC.isObject(e)&&!0===e.isAxiosError},lj.mergeConfig=XC,lj.AxiosHeaders=IC,lj.formToJSON=e=>kC(eC.isHTMLForm(e)?new FormData(e):e),lj.getAdapter=WC,lj.HttpStatusCode=cj,lj.default=lj;const uj=lj,dj=e=>(0,Yn.jsxs)(LA,{width:"24px",height:"24px",fill:"none",textAlign:"center",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,Yn.jsx)("path",{d:"M14 5.6C14 5.03995 14 4.75992 14.109 4.54601C14.2049 4.35785 14.3578 4.20487 14.546 4.10899C14.7599 4 15.0399 4 15.6 4H18.4C18.9601 4 19.2401 4 19.454 4.10899C19.6422 4.20487 19.7951 4.35785 19.891 4.54601C20 4.75992 20 5.03995 20 5.6V8.4C20 8.96005 20 9.24008 19.891 9.45399C19.7951 9.64215 19.6422 9.79513 19.454 9.89101C19.2401 10 18.9601 10 18.4 10H15.6C15.0399 10 14.7599 10 14.546 9.89101C14.3578 9.79513 14.2049 9.64215 14.109 9.45399C14 9.24008 14 8.96005 14 8.4V5.6Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,Yn.jsx)("path",{d:"M4 5.6C4 5.03995 4 4.75992 4.10899 4.54601C4.20487 4.35785 4.35785 4.20487 4.54601 4.10899C4.75992 4 5.03995 4 5.6 4H8.4C8.96005 4 9.24008 4 9.45399 4.10899C9.64215 4.20487 9.79513 4.35785 9.89101 4.54601C10 4.75992 10 5.03995 10 5.6V8.4C10 8.96005 10 9.24008 9.89101 9.45399C9.79513 9.64215 9.64215 9.79513 9.45399 9.89101C9.24008 10 8.96005 10 8.4 10H5.6C5.03995 10 4.75992 10 4.54601 9.89101C4.35785 9.79513 4.20487 9.64215 4.10899 9.45399C4 9.24008 4 8.96005 4 8.4V5.6Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,Yn.jsx)("path",{d:"M4 15.6C4 15.0399 4 14.7599 4.10899 14.546C4.20487 14.3578 4.35785 14.2049 4.54601 14.109C4.75992 14 5.03995 14 5.6 14H8.4C8.96005 14 9.24008 14 9.45399 14.109C9.64215 14.2049 9.79513 14.3578 9.89101 14.546C10 14.7599 10 15.0399 10 15.6V18.4C10 18.9601 10 19.2401 9.89101 19.454C9.79513 19.6422 9.64215 19.7951 9.45399 19.891C9.24008 20 8.96005 20 8.4 20H5.6C5.03995 20 4.75992 20 4.54601 19.891C4.35785 19.7951 4.20487 19.6422 4.10899 19.454C4 19.2401 4 18.9601 4 18.4V15.6Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,Yn.jsx)("path",{d:"M14 15.6C14 15.0399 14 14.7599 14.109 14.546C14.2049 14.3578 14.3578 14.2049 14.546 14.109C14.7599 14 15.0399 14 15.6 14H18.4C18.9601 14 19.2401 14 19.454 14.109C19.6422 14.2049 19.7951 14.3578 19.891 14.546C20 14.7599 20 15.0399 20 15.6V18.4C20 18.9601 20 19.2401 19.891 19.454C19.7951 19.6422 19.6422 19.7951 19.454 19.891C19.2401 20 18.9601 20 18.4 20H15.6C15.0399 20 14.7599 20 14.546 19.891C14.3578 19.7951 14.2049 19.6422 14.109 19.454C14 19.2401 14 18.9601 14 18.4V15.6Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})]}),hj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M8.25 13.5H4.65C3.80992 13.5 3.38988 13.5 3.06901 13.3365C2.78677 13.1927 2.5573 12.9632 2.41349 12.681C2.25 12.3601 2.25 11.9401 2.25 11.1V5.4C2.25 4.55992 2.25 4.13988 2.41349 3.81901C2.5573 3.53677 2.78677 3.3073 3.06901 3.16349C3.38988 3 3.80992 3 4.65 3H13.35C14.1901 3 14.6101 3 14.931 3.16349C15.2132 3.3073 15.4427 3.53677 15.5865 3.81901C15.75 4.13988 15.75 4.55992 15.75 5.4V8.25M2.25 6H15.75M13.5 15V10.5M15.75 12.7506L11.25 12.75",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),fj=e=>(0,Yn.jsx)(LA,{fill:"none",viewBox:"0 0 13 17",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M13 12.5L10.75 12.5M10.75 12.5L8.5 12.5M10.75 12.5V10.25M10.75 12.5V14.75M6.25 14.75H1C1 11.8505 3.35051 9.5 6.25 9.5C6.77123 9.5 7.27472 9.57596 7.75 9.71741M9.25 4.25C9.25 5.90685 7.90685 7.25 6.25 7.25C4.59315 7.25 3.25 5.90685 3.25 4.25C3.25 2.59315 4.59315 1.25 6.25 1.25C7.90685 1.25 9.25 2.59315 9.25 4.25Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),pj=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M13.5 15.5C13.2164 14.3589 11.981 13.5 10.5 13.5C9.019 13.5 7.78364 14.3589 7.5 15.5M21 5V7M21 11V13M21 17V19M6.2 21H14.8C15.9201 21 16.4802 21 16.908 20.782C17.2843 20.5903 17.5903 20.2843 17.782 19.908C18 19.4802 18 18.9201 18 17.8V6.2C18 5.0799 18 4.51984 17.782 4.09202C17.5903 3.71569 17.2843 3.40973 16.908 3.21799C16.4802 3 15.9201 3 14.8 3H6.2C5.0799 3 4.51984 3 4.09202 3.21799C3.71569 3.40973 3.40973 3.71569 3.21799 4.09202C3 4.51984 3 5.07989 3 6.2V17.8C3 18.9201 3 19.4802 3.21799 19.908C3.40973 20.2843 3.71569 20.5903 4.09202 20.782C4.51984 21 5.07989 21 6.2 21ZM11.5 9.5C11.5 10.0523 11.0523 10.5 10.5 10.5C9.94772 10.5 9.5 10.0523 9.5 9.5C9.5 8.94772 9.94772 8.5 10.5 8.5C11.0523 8.5 11.5 8.94772 11.5 9.5Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),mj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],"data-testid":"baker-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M3.74946 5.25V8.25M7.49946 1.5V4.5M13.4995 12V15M2.24946 6.75H5.24946M5.99946 3H8.99946M11.9995 13.5H14.9995M10.4995 5.25L12.6208 7.37132M14.6369 2.80959L15.0612 3.23385C15.3582 3.53086 15.5067 3.67937 15.5624 3.85062C15.6113 4.00125 15.6113 4.16351 15.5624 4.31414C15.5067 4.48539 15.3582 4.6339 15.0612 4.93091L4.89356 15.0985C4.59655 15.3955 4.44804 15.5441 4.2768 15.5997C4.12617 15.6486 3.9639 15.6486 3.81327 15.5997C3.64203 15.5441 3.49352 15.3955 3.19651 15.0985L2.77224 14.6743C2.47523 14.3773 2.32672 14.2288 2.27108 14.0575C2.22214 13.9069 2.22214 13.7446 2.27108 13.594C2.32672 13.4227 2.47523 13.2742 2.77224 12.9772L12.9399 2.80959C13.2369 2.51258 13.3854 2.36407 13.5566 2.30843C13.7073 2.25948 13.8695 2.25948 14.0202 2.30843C14.1914 2.36407 14.3399 2.51258 14.6369 2.80959Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),gj=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",strokeWidth:"1.2",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M10 4V20M14 4V20M4 8C4 8.92997 4 9.39496 4.10222 9.77646C4.37962 10.8117 5.18827 11.6204 6.22354 11.8978C6.60504 12 7.07003 12 8 12H16C16.93 12 17.395 12 17.7765 11.8978C18.8117 11.6204 19.6204 10.8117 19.8978 9.77646C20 9.39496 20 8.92997 20 8M4 8C4 7.07003 4 6.60504 4.10222 6.22354C4.37962 5.18827 5.18827 4.37962 6.22354 4.10222C6.60504 4 7.07003 4 8 4H16C16.93 4 17.395 4 17.7765 4.10222C18.8117 4.37962 19.6204 5.18827 19.8978 6.22354C20 6.60504 20 7.07003 20 8M4 8V16C4 16.93 4 17.395 4.10222 17.7765C4.37962 18.8117 5.18827 19.6204 6.22354 19.8978C6.60504 20 7.07003 20 8 20H16C16.93 20 17.395 20 17.7765 19.8978C18.8117 19.6204 19.6204 18.8117 19.8978 17.7765C20 17.395 20 16.93 20 16V8M10 16H8C7.07003 16 6.60504 16 6.22354 15.8978C5.18827 15.6204 4.37962 14.8117 4.10222 13.7765C4 13.395 4 12.93 4 12M14 16H16C16.93 16 17.395 16 17.7765 15.8978C18.8117 15.6204 19.6204 14.8117 19.8978 13.7765C20 13.395 20 12.93 20 12M7 8H7.01M17 8H17.01",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round"})}),vj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M6 9.25L7.84615 11.25L12 6.75M15.75 9C15.75 12.7279 12.7279 15.75 9 15.75C5.27208 15.75 2.25 12.7279 2.25 9C2.25 5.27208 5.27208 2.25 9 2.25C12.7279 2.25 15.75 5.27208 15.75 9Z",stroke:"#00C39A",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),yj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M4.5 6.75L9 11.25L13.5 6.75",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),bj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M7 14L11.5 9.5L7 5",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),wj=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M12 10V14M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12ZM17 12C17 14.7614 14.7614 17 12 17C9.23858 17 7 14.7614 7 12C7 9.23858 9.23858 7 12 7C14.7614 7 17 9.23858 17 12Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),xj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none","data-testid":"contact-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M3.75 15.75C3.75 12.8505 6.10051 10.5 9 10.5C11.8995 10.5 14.25 12.8505 14.25 15.75M12 5.25C12 6.90685 10.6569 8.25 9 8.25C7.34315 8.25 6 6.90685 6 5.25C6 3.59315 7.34315 2.25 9 2.25C10.6569 2.25 12 3.59315 12 5.25Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),_j=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M7.5 12.75L6 11.25L7.5 9.75M10.5 9.75L12 11.25L10.5 12.75M9.75 2.25H6.15C5.30992 2.25 4.88988 2.25 4.56901 2.41349C4.28677 2.5573 4.0573 2.78677 3.91349 3.06901C3.75 3.38988 3.75 3.80992 3.75 4.65V13.35C3.75 14.1901 3.75 14.6101 3.91349 14.931C4.0573 15.2132 4.28677 15.4427 4.56901 15.5865C4.88988 15.75 5.30992 15.75 6.15 15.75H11.85C12.6901 15.75 13.1101 15.75 13.431 15.5865C13.7132 15.4427 13.9427 15.2132 14.0865 14.931C14.25 14.6101 14.25 14.1901 14.25 13.35V6.75M9.75 2.25L14.25 6.75M9.75 2.25V6C9.75 6.41421 10.0858 6.75 10.5 6.75H14.25",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Sj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M13.773 13.773C14.9945 12.5515 15.75 10.864 15.75 9C15.75 5.27208 12.7279 2.25 9 2.25C7.13604 2.25 5.44854 3.00552 4.22703 4.22703M13.773 13.773C12.5515 14.9945 10.864 15.75 9 15.75C5.27208 15.75 2.25 12.7279 2.25 9C2.25 7.13604 3.00552 5.44854 4.22703 4.22703M13.773 13.773L4.22703 4.22703",stroke:"#FB4F57",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),kj=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M3.125 9H20.875M12 3L8 9L12 20.6667L16 9L12 3ZM12.64 20.1467L20.64 9.48C20.7691 9.30787 20.8336 9.22181 20.8585 9.12728C20.8805 9.04385 20.8805 8.95615 20.8585 8.87272C20.8336 8.77819 20.7691 8.69213 20.64 8.52L16.74 3.32C16.652 3.20267 16.608 3.144 16.5522 3.10169C16.5028 3.06421 16.4469 3.03625 16.3873 3.01922C16.32 3 16.2467 3 16.1 3H7.9C7.75333 3 7.68 3 7.61269 3.01922C7.55308 3.03625 7.49715 3.06421 7.44776 3.10169C7.392 3.144 7.348 3.20267 7.26 3.32L3.36 8.52C3.2309 8.69213 3.16635 8.77819 3.14147 8.87271C3.11951 8.95615 3.11951 9.04385 3.14147 9.12728C3.16635 9.2218 3.2309 9.30787 3.36 9.48L11.36 20.1467C11.5771 20.4362 11.6857 20.5809 11.8188 20.6327C11.9353 20.678 12.0647 20.678 12.1812 20.6327C12.3143 20.5809 12.4229 20.4362 12.64 20.1467Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Ej=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M9 17H13M9 13H13M9 9H10M17 18V21M17 15H17.01M13 3H8.2C7.0799 3 6.51984 3 6.09202 3.21799C5.71569 3.40973 5.40973 3.71569 5.21799 4.09202C5 4.51984 5 5.0799 5 6.2V17.8C5 18.9201 5 19.4802 5.21799 19.908C5.40973 20.2843 5.71569 20.5903 6.09202 20.782C6.51984 21 7.0799 21 8.2 21H13M13 3L19 9M13 3V7.4C13 7.96005 13 8.24008 13.109 8.45399C13.2049 8.64215 13.3578 8.79513 13.546 8.89101C13.7599 9 14.0399 9 14.6 9H19M19 9V11.5",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Aj=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M4 14L9 19L20 8M6 8.88889L9.07692 12L16 5",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Pj=e=>(0,Yn.jsx)(LA,{width:"16px",height:"16px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M5 7.25L8 10.25M8 10.25L11 7.25M8 10.25V1.25M14.75 7.25V12.3494C14.75 13.1895 14.75 13.6095 14.5865 13.9304C14.4427 14.2126 14.2132 14.4421 13.931 14.5859C13.6101 14.7494 13.1901 14.7494 12.35 14.7494H3.65C2.80992 14.7494 2.38988 14.7494 2.06901 14.5859C1.78677 14.4421 1.5573 14.2126 1.41349 13.9304C1.25 13.6095 1.25 13.1895 1.25 12.3494V7.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Oj=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M8.5 21H4C4 17.134 7.13401 14 11 14C11.1681 14 11.3348 14.0059 11.5 14.0176M15 7C15 9.20914 13.2091 11 11 11C8.79086 11 7 9.20914 7 7C7 4.79086 8.79086 3 11 3C13.2091 3 15 4.79086 15 7ZM12.5898 21L14.6148 20.595C14.7914 20.5597 14.8797 20.542 14.962 20.5097C15.0351 20.4811 15.1045 20.4439 15.1689 20.399C15.2414 20.3484 15.3051 20.2848 15.4324 20.1574L19.5898 16C20.1421 15.4477 20.1421 14.5523 19.5898 14C19.0376 13.4477 18.1421 13.4477 17.5898 14L13.4324 18.1574C13.3051 18.2848 13.2414 18.3484 13.1908 18.421C13.1459 18.4853 13.1088 18.5548 13.0801 18.6279C13.0478 18.7102 13.0302 18.7985 12.9948 18.975L12.5898 21Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Tj=e=>(0,Yn.jsx)(LA,{width:"12px",height:"12px",fill:"none",stroke:EP.orange,viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M6 3.66667V6.58333M6 8.33333H6.00583M11.25 6C11.25 8.89949 8.89949 11.25 6 11.25C3.1005 11.25 0.75 8.89949 0.75 6C0.75 3.1005 3.1005 0.75 6 0.75C8.89949 0.75 11.25 3.1005 11.25 6Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Cj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M15 3V15M3 9H12M12 9L9 6M12 9L9 12",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),jj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M15 3L9 9M15 3V6.375M15 3H11.625M14.25 9.375V12.6C14.25 13.4401 14.25 13.8601 14.0865 14.181C13.9427 14.4632 13.7132 14.6927 13.431 14.8365C13.1101 15 12.6901 15 11.85 15H5.4C4.55992 15 4.13988 15 3.81901 14.8365C3.53677 14.6927 3.3073 14.4632 3.16349 14.181C3 13.8601 3 13.4401 3 12.6V6.15C3 5.30992 3 4.88988 3.16349 4.56901C3.3073 4.28677 3.53677 4.0573 3.81901 3.91349C4.13988 3.75 4.55992 3.75 5.4 3.75H8.625",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Rj=e=>(0,Yn.jsxs)(LA,{width:"16px",height:"12px",fill:"none",viewBox:"0 0 16 12",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,Yn.jsx)("path",{d:"M10.2501 6C10.2501 7.24264 9.2427 8.25 8.00006 8.25C6.75742 8.25 5.75006 7.24264 5.75006 6C5.75006 4.75736 6.75742 3.75 8.00006 3.75C9.2427 3.75 10.2501 4.75736 10.2501 6Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,Yn.jsx)("path",{d:"M8.00039 0.75C4.64217 0.75 1.79946 2.95716 0.84375 5.99997C1.79944 9.04282 4.64217 11.25 8.00041 11.25C11.3586 11.25 14.2013 9.04284 15.157 6.00003C14.2014 2.95719 11.3586 0.75 8.00039 0.75Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})]}),Ij=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M2.25024 2.25L15.7502 15.75M7.38345 7.43523C6.99147 7.84016 6.75024 8.39191 6.75024 9C6.75024 10.2426 7.7576 11.25 9.00024 11.25C9.6171 11.25 10.176 11.0018 10.5824 10.5997M4.87524 4.98536C3.45076 5.92525 2.36577 7.33796 1.84375 8.99997C2.79944 12.0428 5.64217 14.25 9.00041 14.25C10.4921 14.25 11.882 13.8145 13.0501 13.0638M8.25024 3.78705C8.49697 3.76254 8.74722 3.75 9.00039 3.75C12.3586 3.75 15.2014 5.95719 16.157 9.00003C15.9465 9.67048 15.6443 10.3004 15.2651 10.875",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Mj=e=>(0,Yn.jsx)(LA,{width:"30px",height:"15px",fill:EP.gray[450],viewBox:"1 1 30 15",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M1.2429 13V4.27273H7.02131V5.79403H3.08807V7.87358H6.63778V9.39489H3.08807V13H1.2429ZM8.67685 13H6.69957L9.71236 4.27273H12.0902L15.0987 13H13.1214L10.9354 6.26705H10.8672L8.67685 13ZM8.55327 9.5696H13.2237V11.0099H8.55327V9.5696ZM19.4847 4.27273V13H17.6396V6.02415H17.5884L15.5898 7.27699V5.64062L17.7504 4.27273H19.4847ZM22.1683 13.1108C21.8871 13.1108 21.6456 13.0114 21.4439 12.8125C21.245 12.6108 21.1456 12.3693 21.1456 12.0881C21.1456 11.8097 21.245 11.571 21.4439 11.3722C21.6456 11.1733 21.8871 11.0739 22.1683 11.0739C22.4411 11.0739 22.6797 11.1733 22.8842 11.3722C23.0888 11.571 23.1911 11.8097 23.1911 12.0881C23.1911 12.2756 23.1428 12.4474 23.0462 12.6037C22.9524 12.7571 22.8288 12.8807 22.6754 12.9744C22.522 13.0653 22.353 13.1108 22.1683 13.1108ZM24.6644 13V11.6705L27.771 8.79403C28.0352 8.53835 28.2567 8.30824 28.4357 8.10369C28.6175 7.89915 28.7553 7.69886 28.8491 7.50284C28.9428 7.30398 28.9897 7.08949 28.9897 6.85938C28.9897 6.60369 28.9315 6.38352 28.815 6.19886C28.6985 6.01136 28.5394 5.8679 28.3377 5.76847C28.136 5.66619 27.9073 5.61506 27.6516 5.61506C27.3846 5.61506 27.1516 5.66903 26.9528 5.77699C26.7539 5.88494 26.6005 6.03977 26.4925 6.24148C26.3846 6.44318 26.3306 6.68324 26.3306 6.96165H24.5792C24.5792 6.39062 24.7085 5.89489 24.967 5.47443C25.2255 5.05398 25.5877 4.72869 26.0536 4.49858C26.5195 4.26847 27.0565 4.15341 27.6644 4.15341C28.2894 4.15341 28.8335 4.2642 29.2965 4.4858C29.7624 4.70455 30.1246 5.00852 30.3832 5.39773C30.6417 5.78693 30.771 6.23295 30.771 6.7358C30.771 7.06534 30.7056 7.39062 30.5749 7.71165C30.4471 8.03267 30.2184 8.3892 29.8888 8.78125C29.5593 9.17045 29.0948 9.63778 28.4954 10.1832L27.2212 11.4318V11.4915H30.886V13H24.6644Z"})}),Lj=e=>(0,Yn.jsx)(LA,{width:"23px",height:"18px",fill:EP.gray[450],viewBox:"0 0 23 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M1.0261 13V4.27273H6.80451V5.79403H2.87127V7.87358H6.42099V9.39489H2.87127V13H1.0261ZM8.46005 13H6.48278L9.49556 4.27273H11.8734L14.8819 13H12.9047L10.7186 6.26705H10.6504L8.46005 13ZM8.33647 9.5696H13.0069V11.0099H8.33647V9.5696ZM15.8812 13V11.6705L18.9877 8.79403C19.252 8.53835 19.4735 8.30824 19.6525 8.10369C19.8343 7.89915 19.9721 7.69886 20.0659 7.50284C20.1596 7.30398 20.2065 7.08949 20.2065 6.85938C20.2065 6.60369 20.1483 6.38352 20.0318 6.19886C19.9153 6.01136 19.7562 5.8679 19.5545 5.76847C19.3528 5.66619 19.1241 5.61506 18.8684 5.61506C18.6014 5.61506 18.3684 5.66903 18.1696 5.77699C17.9707 5.88494 17.8173 6.03977 17.7093 6.24148C17.6014 6.44318 17.5474 6.68324 17.5474 6.96165H15.796C15.796 6.39062 15.9252 5.89489 16.1838 5.47443C16.4423 5.05398 16.8045 4.72869 17.2704 4.49858C17.7363 4.26847 18.2733 4.15341 18.8812 4.15341C19.5062 4.15341 20.0502 4.2642 20.5133 4.4858C20.9792 4.70455 21.3414 5.00852 21.6 5.39773C21.8585 5.78693 21.9877 6.23295 21.9877 6.7358C21.9877 7.06534 21.9224 7.39062 21.7917 7.71165C21.6639 8.03267 21.4352 8.3892 21.1056 8.78125C20.7761 9.17045 20.3116 9.63778 19.7122 10.1832L18.438 11.4318V11.4915H22.1028V13H15.8812Z"})}),Nj=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M8 10.5H16M8 14.5H11M21.0039 12C21.0039 16.9706 16.9745 21 12.0039 21C9.9675 21 3.00463 21 3.00463 21C3.00463 21 4.56382 17.2561 3.93982 16.0008C3.34076 14.7956 3.00391 13.4372 3.00391 12C3.00391 7.02944 7.03334 3 12.0039 3C16.9745 3 21.0039 7.02944 21.0039 12Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Dj=e=>(0,Yn.jsx)(LA,{width:"19px",height:"19px",fill:"none",stroke:EP.gray[400],viewBox:"0 0 19 19",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M15.7842 10.2916C15.8165 10.0323 15.8332 9.76807 15.8332 9.49996C15.8332 6.00216 12.9976 3.16663 9.49984 3.16663C7.52021 3.16663 5.75273 4.07488 4.59135 5.49742M3.2155 8.70829C3.18316 8.96764 3.1665 9.23185 3.1665 9.49996C3.1665 12.9978 6.00203 15.8333 9.49984 15.8333C11.3914 15.8333 13.0893 15.004 14.2498 13.6892M11.8748 13.4583H14.2498V13.6892M4.59135 3.16663V5.49742M4.59135 5.49742V5.54157L6.96635 5.54163M14.2498 15.8333V13.6892",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),zj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M9 8.25V12.75M9 12.75L7.5 11.25M9 12.75L10.5 11.25M9.75 2.25H6.15C5.30992 2.25 4.88988 2.25 4.56901 2.41349C4.28677 2.5573 4.0573 2.78677 3.91349 3.06901C3.75 3.38988 3.75 3.80992 3.75 4.65V13.35C3.75 14.1901 3.75 14.6101 3.91349 14.931C4.0573 15.2132 4.28677 15.4427 4.56901 15.5865C4.88988 15.75 5.30992 15.75 6.15 15.75H11.85C12.6901 15.75 13.1101 15.75 13.431 15.5865C13.7132 15.4427 13.9427 15.2132 14.0865 14.931C14.25 14.6101 14.25 14.1901 14.25 13.35V6.75M9.75 2.25L14.25 6.75M9.75 2.25V5.55C9.75 5.97004 9.75 6.18006 9.83175 6.34049C9.90365 6.48161 10.0184 6.59635 10.1595 6.66825C10.3199 6.75 10.53 6.75 10.95 6.75H14.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Bj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M11.25 2.25V4.8C11.25 5.22004 11.25 5.43006 11.3317 5.59049C11.4037 5.73161 11.5184 5.84635 11.6595 5.91825C11.8199 6 12.03 6 12.45 6H15M7.5 6H4.5C3.67157 6 3 6.67157 3 7.5V14.25C3 15.0784 3.67157 15.75 4.5 15.75H9C9.82843 15.75 10.5 15.0784 10.5 14.25V12M12 2.25H9.9C9.05992 2.25 8.63988 2.25 8.31901 2.41349C8.03677 2.5573 7.8073 2.78677 7.66349 3.06901C7.5 3.38988 7.5 3.80992 7.5 4.65V9.6C7.5 10.4401 7.5 10.8601 7.66349 11.181C7.8073 11.4632 8.03677 11.6927 8.31901 11.8365C8.63988 12 9.05992 12 9.9 12H12.6C13.4401 12 13.8601 12 14.181 11.8365C14.4632 11.6927 14.6927 11.4632 14.8365 11.181C15 10.8601 15 10.4401 15 9.6V5.25L12 2.25Z",strokeLinejoin:"round",strokeWidth:"1.2"})}),Uj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:"black",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M2.95314 5.997C4.05824 3.77605 6.35091 2.25 9 2.25C12.4718 2.25 15.3314 4.87105 15.708 8.24231M2.2912 9.74998C2.66427 13.125 5.52558 15.75 9 15.75C11.6496 15.75 13.9427 14.2234 15.0475 12.0017M2.25 3V6.375H5.625M15.75 15.375V12H12.375M8.625 6.75L7.5 9H10.5L9.375 11.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Fj=e=>(0,Yn.jsxs)(LA,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,Yn.jsx)("path",{d:"M15 12C15 13.6569 13.6569 15 12 15C10.3431 15 9 13.6569 9 12C9 10.3431 10.3431 9 12 9C13.6569 9 15 10.3431 15 12Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,Yn.jsx)("path",{d:"M12.9046 3.06005C12.6988 3 12.4659 3 12 3C11.5341 3 11.3012 3 11.0954 3.06005C10.7942 3.14794 10.5281 3.32808 10.3346 3.57511C10.2024 3.74388 10.1159 3.96016 9.94291 4.39272C9.69419 5.01452 9.00393 5.33471 8.36857 5.123L7.79779 4.93281C7.3929 4.79785 7.19045 4.73036 6.99196 4.7188C6.70039 4.70181 6.4102 4.77032 6.15701 4.9159C5.98465 5.01501 5.83376 5.16591 5.53197 5.4677C5.21122 5.78845 5.05084 5.94882 4.94896 6.13189C4.79927 6.40084 4.73595 6.70934 4.76759 7.01551C4.78912 7.2239 4.87335 7.43449 5.04182 7.85566C5.30565 8.51523 5.05184 9.26878 4.44272 9.63433L4.16521 9.80087C3.74031 10.0558 3.52786 10.1833 3.37354 10.3588C3.23698 10.5141 3.13401 10.696 3.07109 10.893C3 11.1156 3 11.3658 3 11.8663C3 12.4589 3 12.7551 3.09462 13.0088C3.17823 13.2329 3.31422 13.4337 3.49124 13.5946C3.69158 13.7766 3.96395 13.8856 4.50866 14.1035C5.06534 14.3261 5.35196 14.9441 5.16236 15.5129L4.94721 16.1584C4.79819 16.6054 4.72367 16.829 4.7169 17.0486C4.70875 17.3127 4.77049 17.5742 4.89587 17.8067C5.00015 18.0002 5.16678 18.1668 5.5 18.5C5.83323 18.8332 5.99985 18.9998 6.19325 19.1041C6.4258 19.2295 6.68733 19.2913 6.9514 19.2831C7.17102 19.2763 7.39456 19.2018 7.84164 19.0528L8.36862 18.8771C9.00393 18.6654 9.6942 18.9855 9.94291 19.6073C10.1159 20.0398 10.2024 20.2561 10.3346 20.4249C10.5281 20.6719 10.7942 20.8521 11.0954 20.94C11.3012 21 11.5341 21 12 21C12.4659 21 12.6988 21 12.9046 20.94C13.2058 20.8521 13.4719 20.6719 13.6654 20.4249C13.7976 20.2561 13.8841 20.0398 14.0571 19.6073C14.3058 18.9855 14.9961 18.6654 15.6313 18.8773L16.1579 19.0529C16.605 19.2019 16.8286 19.2764 17.0482 19.2832C17.3123 19.2913 17.5738 19.2296 17.8063 19.1042C17.9997 18.9999 18.1664 18.8333 18.4996 18.5001C18.8328 18.1669 18.9994 18.0002 19.1037 17.8068C19.2291 17.5743 19.2908 17.3127 19.2827 17.0487C19.2759 16.8291 19.2014 16.6055 19.0524 16.1584L18.8374 15.5134C18.6477 14.9444 18.9344 14.3262 19.4913 14.1035C20.036 13.8856 20.3084 13.7766 20.5088 13.5946C20.6858 13.4337 20.8218 13.2329 20.9054 13.0088C21 12.7551 21 12.4589 21 11.8663C21 11.3658 21 11.1156 20.9289 10.893C20.866 10.696 20.763 10.5141 20.6265 10.3588C20.4721 10.1833 20.2597 10.0558 19.8348 9.80087L19.5569 9.63416C18.9478 9.26867 18.6939 8.51514 18.9578 7.85558C19.1262 7.43443 19.2105 7.22383 19.232 7.01543C19.2636 6.70926 19.2003 6.40077 19.0506 6.13181C18.9487 5.94875 18.7884 5.78837 18.4676 5.46762C18.1658 5.16584 18.0149 5.01494 17.8426 4.91583C17.5894 4.77024 17.2992 4.70174 17.0076 4.71872C16.8091 4.73029 16.6067 4.79777 16.2018 4.93273L15.6314 5.12287C14.9961 5.33464 14.3058 5.0145 14.0571 4.39272C13.8841 3.96016 13.7976 3.74388 13.6654 3.57511C13.4719 3.32808 13.2058 3.14794 12.9046 3.06005Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})]}),$j=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M18.3795 5.65166L14.1055 9.86303M9.89445 14.137L5.63994 18.3679M5.63408 5.63799L9.89445 9.86303M14.1056 14.137L18.364 18.364M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12ZM15 12C15 13.6569 13.6569 15 12 15C10.3431 15 9 13.6569 9 12C9 10.3431 10.3431 9 12 9C13.6569 9 15 10.3431 15 12Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Hj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M15 2.25H3M15 15.75H3M3.75 2.25C3.75 4.13267 4.65921 5.89944 6.1912 6.99371L11.8088 11.0063C13.3408 12.1006 14.25 13.8673 14.25 15.75M14.25 2.25C14.25 4.13267 13.3408 5.89944 11.8088 6.99371L6.1912 11.0063C4.65921 12.1006 3.75 13.8673 3.75 15.75",stroke:"#FB4F57",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Vj=e=>(0,Yn.jsx)(aR,{css:{rotate:"180deg"},...e}),qj=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none","data-testid":"key-icon",strokeWidth:"1.2",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M9.24092 8.01389L3 14.25L4.5 15.75M5.25 12L6.75 13.5M15 5.625C15 7.48896 13.489 9 11.625 9C9.76104 9 8.25 7.48896 8.25 5.625C8.25 3.76104 9.76104 2.25 11.625 2.25C13.489 2.25 15 3.76104 15 5.625Z",strokeLinecap:"round",strokeLinejoin:"round"})});var Kj={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},Wj=n.createContext&&n.createContext(Kj),Gj=function(){return Gj=Object.assign||function(e){for(var t,r=1,n=arguments.length;r(0,Yn.jsx)(LA,{as:Qj,width:"18px",height:"18px","data-testid":"ledger-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e}),tR=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M9.16586 17.6508C8.9261 17.8747 8.74055 18.0245 8.55093 18.134C7.62273 18.6699 6.47914 18.6699 5.55093 18.134C5.20889 17.9365 4.88009 17.6077 4.22251 16.9501C3.56492 16.2925 3.23612 15.9637 3.03864 15.6217C2.50274 14.6935 2.50274 13.5499 3.03864 12.6217C3.23612 12.2797 3.56492 11.9509 4.2225 11.2933L7.05093 8.46484C7.70852 7.80725 8.03732 7.47846 8.37936 7.28098C9.30756 6.74508 10.4512 6.74508 11.3794 7.28098C11.7214 7.47846 12.0502 7.80725 12.7078 8.46484C13.3654 9.12243 13.6942 9.45123 13.8916 9.79327C14.4275 10.7215 14.4275 11.8651 13.8916 12.7933C13.7822 12.9829 13.6323 13.1684 13.4085 13.4082M10.5929 10.5926C10.369 10.8323 10.2192 11.0179 10.1097 11.2075C9.57381 12.1357 9.57381 13.2793 10.1097 14.2075C10.3072 14.5495 10.636 14.8783 11.2936 15.5359C11.9512 16.1935 12.28 16.5223 12.622 16.7198C13.5502 17.2557 14.6938 17.2557 15.622 16.7198C15.964 16.5223 16.2928 16.1935 16.9504 15.5359L19.7789 12.7075C20.4364 12.0499 20.7652 11.7211 20.9627 11.3791C21.4986 10.4509 21.4986 9.30726 20.9627 8.37906C20.7652 8.03701 20.4364 7.70822 19.7789 7.05063C19.1213 6.39304 18.7925 6.06425 18.4504 5.86677C17.5222 5.33087 16.3786 5.33087 15.4504 5.86677C15.2608 5.97625 15.0753 6.12608 14.8355 6.34992",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),rR=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M12 14.5V16.5M7 10.0288C7.47142 10 8.05259 10 8.8 10H15.2C15.9474 10 16.5286 10 17 10.0288M7 10.0288C6.41168 10.0647 5.99429 10.1455 5.63803 10.327C5.07354 10.6146 4.6146 11.0735 4.32698 11.638C4 12.2798 4 13.1198 4 14.8V16.2C4 17.8802 4 18.7202 4.32698 19.362C4.6146 19.9265 5.07354 20.3854 5.63803 20.673C6.27976 21 7.11984 21 8.8 21H15.2C16.8802 21 17.7202 21 18.362 20.673C18.9265 20.3854 19.3854 19.9265 19.673 19.362C20 18.7202 20 17.8802 20 16.2V14.8C20 13.1198 20 12.2798 19.673 11.638C19.3854 11.0735 18.9265 10.6146 18.362 10.327C18.0057 10.1455 17.5883 10.0647 17 10.0288M7 10.0288V8C7 5.23858 9.23858 3 12 3C14.7614 3 17 5.23858 17 8V10.0288",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),nR=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:"black",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M12.182 5.81859C13.9393 7.57595 13.9393 10.4252 12.182 12.1825M5.81802 12.1825C4.06066 10.4252 4.06066 7.57592 5.81802 5.81856M3.6967 14.3039C0.767767 11.3749 0.767767 6.6262 3.6967 3.69727M14.3033 3.6973C17.2322 6.62623 17.2322 11.375 14.3033 14.3039M10.5 9.00057C10.5 9.82899 9.82843 10.5006 9 10.5006C8.17157 10.5006 7.5 9.82899 7.5 9.00057C7.5 8.17214 8.17157 7.50057 9 7.50057C9.82843 7.50057 10.5 8.17214 10.5 9.00057Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),iR=({fishColor:e,...t})=>(0,Yn.jsxs)(LA,{width:"38px",height:"38px",fill:"none",viewBox:"0 0 38 38",xmlns:"http://www.w3.org/2000/svg",...t,children:[(0,Yn.jsx)("path",{d:"M34.9985 26.2751C34.6599 26.8629 34.2436 27.4106 33.7512 27.9032C32.2815 29.3727 30.3277 30.1819 28.2496 30.1819H24.8477V34.9996H26.8032H28.2497C30.0524 34.9996 31.7472 34.2976 33.022 33.0229C34.2967 31.7481 34.9986 30.0533 34.9985 28.2507V26.2751Z",fill:"black"}),(0,Yn.jsx)("path",{d:"M34.9989 20.9441C34.6603 21.5318 34.2439 22.0796 33.7514 22.572C32.2819 24.0416 30.328 24.8509 28.2499 24.8509H18.9983C17.8104 24.8511 16.8477 25.814 16.8477 27.0019C16.8477 28.1898 17.8104 29.1528 18.9983 29.153H28.25C30.0526 29.153 31.7474 28.4511 33.0222 27.1763C34.2965 25.902 34.9986 24.2076 34.9989 22.4054V20.9441ZM18.9988 27.8361C18.5381 27.8361 18.1645 27.4626 18.1645 27.0018C18.1645 26.5412 18.5381 26.1675 18.9988 26.1675C19.4596 26.1675 19.8331 26.5412 19.8331 27.0018C19.8331 27.4626 19.4596 27.8361 18.9988 27.8361Z",fill:"black"}),(0,Yn.jsx)("path",{d:"M35 9.74895C35 6.02751 31.9724 3 28.2509 3H9.74908C6.02761 3 3 6.02751 3 9.74895V28.2511C3 31.9725 6.02761 35 9.74899 35H23.8176V30.1824H18.9995C17.2418 30.1824 15.8171 28.7576 15.8171 27.0001C15.8171 25.2426 17.2418 23.8179 18.9995 23.8179H23.8176V18.9998H9.74899C6.5911 18.9998 4.03113 16.4402 4.03113 13.2824V9.74905C4.03113 6.59127 6.5911 4.03131 9.74899 4.03131H28.2508C31.4087 4.03131 33.9686 6.59127 33.9686 9.74905V13.2824C33.9686 16.4403 31.4089 19.0001 28.251 19.0001L24.8491 18.9998V23.8179H28.2511C30.0539 23.8179 31.7487 23.1159 33.0233 21.8411C34.2977 20.5668 34.9997 18.8725 35 17.0703V9.74895Z",fill:"black"}),(0,Yn.jsx)("path",{d:"M28.251 4.03174C31.4088 4.03174 33.9687 6.59167 33.9687 9.74952V13.2828C33.9687 16.4406 31.4089 19.0005 28.2511 19.0005L9.74908 19.0003C6.59124 19.0003 4.03125 16.4406 4.03125 13.2829V9.74954C4.03125 6.59167 6.5912 4.03174 9.74908 4.03174H28.251Z",fill:"white"}),(0,Yn.jsx)("path",{d:"M28.2511 6.73267C29.611 6.73267 30.7641 7.6364 31.1394 8.87525C31.1926 9.05118 31.0527 9.22558 30.869 9.21814C28.2867 9.11348 25.877 8.32896 23.8154 7.038C23.6751 6.95014 23.739 6.73267 23.9045 6.73267H28.2511Z",fill:e}),(0,Yn.jsx)("path",{d:"M21.9973 7.02488C24.4283 8.9081 27.4326 10.0842 30.7 10.2428C31.0172 10.2581 31.2679 10.5166 31.2679 10.8342V12.8702C31.2674 12.9124 31.2661 13.0446 31.2638 13.1857C31.2603 13.4148 31.069 13.5949 30.8401 13.5876C25.3913 13.4117 20.5215 10.9067 17.1937 7.03888C17.0905 6.91878 17.175 6.73267 17.3334 6.73267H21.1443C21.4533 6.73267 21.753 6.83569 21.9973 7.02488Z",fill:e}),(0,Yn.jsx)("path",{d:"M15.9653 7.17305C19.4649 11.5395 24.7681 14.4013 30.735 14.6156C30.8376 14.6193 30.9004 14.7309 30.8481 14.8191C30.3219 15.7056 29.3544 16.3012 28.2505 16.3012H23.1255C22.9317 16.3012 22.7392 16.2646 22.5603 16.1899C18.0848 14.3242 14.3146 11.0926 11.7745 7.01866C11.6968 6.89417 11.7878 6.73267 11.9345 6.73267H15.0503C15.4065 6.73267 15.7426 6.89513 15.9653 7.17305Z",fill:e}),(0,Yn.jsx)("path",{d:"M9.75058 6.73267H10.1145C10.294 6.73267 10.4589 6.82889 10.5496 6.98379C12.776 10.7844 16.0081 13.9276 19.8791 16.0439C20.0039 16.1122 19.9556 16.3012 19.8134 16.3012H15.1194C14.5651 16.3012 14.0261 16.1087 13.6043 15.7491C11.1433 13.6507 9.05479 11.1267 7.45371 8.29236C7.34983 8.10846 7.3762 7.87733 7.51835 7.72112C8.07107 7.11383 8.86658 6.73267 9.75058 6.73267Z",fill:e}),(0,Yn.jsx)("path",{d:"M12.3071 15.9829C12.4313 16.0951 12.3514 16.3013 12.184 16.3013H9.71437C8.06547 16.2829 6.73047 14.9363 6.73047 13.2836V9.7504L6.73065 9.54576C6.73077 9.42446 6.89048 9.37962 6.95305 9.48354C8.41152 11.9061 10.2194 14.096 12.3071 15.9829Z",fill:e})]}),oR=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M12 8H12.01M12 11V16M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),aR=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],"data-testid":"outgoing-arrow-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M5.25 12.75L12.75 5.25M12.75 5.25H6M12.75 5.25V12",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),sR=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M11.3348 4.66483L13.2208 6.55082M3 15L3.03164 14.7785C3.1436 13.9948 3.19958 13.6029 3.32692 13.2371C3.43992 12.9124 3.59428 12.6037 3.78619 12.3185C4.00247 11.9971 4.28237 11.7172 4.84218 11.1574L12.609 3.3906C13.1298 2.8698 13.9742 2.8698 14.495 3.3906C15.0158 3.9114 15.0158 4.75578 14.495 5.27658L6.58565 13.1859C6.07779 13.6938 5.82386 13.9477 5.53462 14.1497C5.27789 14.3289 5.001 14.4774 4.70965 14.5921C4.3814 14.7213 4.02937 14.7923 3.32535 14.9344L3 15Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),cR=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[300],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M4 12H20M12 4V20",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),lR=e=>(0,Yn.jsx)(LA,{width:"18",height:"18",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M3 9C3 12.3137 5.68629 15 9 15C12.3137 15 15 12.3137 15 9C15 5.68629 12.3137 3 9 3C7.20796 3 5.59942 3.78563 4.5 5.03126C4.43696 5.10268 4.3756 5.17562 4.31597 5.25M9 6V9L10.875 10.875M4.31543 3.00293V5.25293H6.56543",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),uR=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],"data-testid":"rotate-icon",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M12.5 18.5C17.1944 18.5 21 14.6944 21 10C21 5.30558 17.1944 1.5 12.5 1.5C7.80558 1.5 4 5.30558 4 10C4 11.5433 4.41128 12.9905 5.13022 14.238M1.5 13L5.13022 14.238M6.82531 10.3832L5.47107 14.3542L5.13022 14.238",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),dR=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M16 3L8 21",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),hR=e=>(0,Yn.jsx)(LA,{width:"32px",height:"32px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 32 32",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M16 7.33333C16 9.17428 14.5076 10.6667 12.6667 10.6667C10.8257 10.6667 9.33333 9.17428 9.33333 7.33333M16 7.33333C16 5.49238 14.5076 4 12.6667 4C10.8257 4 9.33333 5.49238 9.33333 7.33333M16 7.33333H28M9.33333 7.33333H4M25.3333 16C25.3333 17.8409 23.8409 19.3333 22 19.3333C20.1591 19.3333 18.6667 17.8409 18.6667 16M25.3333 16C25.3333 14.1591 23.8409 12.6667 22 12.6667C20.1591 12.6667 18.6667 14.1591 18.6667 16M25.3333 16H28M18.6667 16H4M13.3333 24.6667C13.3333 26.5076 11.8409 28 10 28C8.15905 28 6.66667 26.5076 6.66667 24.6667M13.3333 24.6667C13.3333 22.8257 11.8409 21.3333 10 21.3333C8.15905 21.3333 6.66667 22.8257 6.66667 24.6667M13.3333 24.6667H28M6.66667 24.6667H4",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),fR=e=>(0,Yn.jsx)(LA,{width:"28px",height:"28px",fill:"none",stroke:"transparent","data-testid":"social-icon",viewBox:"0 0 28 28",...e,children:(0,Yn.jsx)("g",{id:"Group 40429",children:(0,Yn.jsx)("g",{id:"Group 40428",children:(0,Yn.jsxs)("g",{id:"Group 39769",children:[(0,Yn.jsx)("path",{d:"M27.4398 14.3177C27.4398 13.325 27.3507 12.3705 27.1852 11.4541H14V16.8695H21.5344C21.2099 18.6194 20.2235 20.1021 18.7408 21.0949V24.6075H23.2653C25.9125 22.1703 27.4398 18.5813 27.4398 14.3177Z",fill:"#4285F4",clipRule:"evenodd",fillRule:"evenodd",id:"Shape"}),(0,Yn.jsx)("path",{d:"M14.0009 28C17.7809 28 20.9499 26.7464 23.2663 24.6082L18.7418 21.0955C17.4882 21.9355 15.8846 22.4319 14.0009 22.4319C10.3546 22.4319 7.26832 19.9692 6.16743 16.6602H1.49023V20.2874C3.79383 24.8628 8.5283 28 14.0009 28Z",fill:"#34A853",clipRule:"evenodd",fillRule:"evenodd",id:"Shape_2"}),(0,Yn.jsx)("path",{d:"M6.16627 16.66C5.88627 15.82 5.72718 14.9228 5.72718 14.0001C5.72718 13.0774 5.88627 12.1801 6.16627 11.3401V7.71289H1.48907C0.5409 9.60286 0 11.741 0 14.0001C0 16.2591 0.5409 18.3973 1.48907 20.2872L6.16627 16.66Z",fill:"#FBBC05",clipRule:"evenodd",fillRule:"evenodd",id:"Shape_3"}),(0,Yn.jsx)("path",{d:"M14.0009 5.56809C16.0564 5.56809 17.9018 6.27445 19.3527 7.6617L23.3681 3.64631C20.9436 1.38725 17.7745 0 14.0009 0C8.5283 0 3.79383 3.13722 1.49023 7.7126L6.16743 11.3398C7.26832 8.03078 10.3546 5.56809 14.0009 5.56809Z",fill:"#EA4335",clipRule:"evenodd",fillRule:"evenodd",id:"Shape_4"})]})})})}),pR=e=>(0,Yn.jsxs)(LA,{width:"30px",height:"30px",fill:"none","data-testid":"tez-icon",viewBox:"0 0 30 30",...e,children:[(0,Yn.jsx)("rect",{width:"30",height:"30",fill:"white",rx:"4"}),(0,Yn.jsx)("rect",{width:"30",height:"30",fill:"url(#pattern0)",rx:"4"}),(0,Yn.jsxs)("defs",{children:[(0,Yn.jsx)("pattern",{width:"1",height:"1",id:"pattern0",patternContentUnits:"objectBoundingBox",children:(0,Yn.jsx)("use",{transform:"translate(0.1753 0.101557) scale(0.00532296)",xlinkHref:"#image0_2912_38337"})}),(0,Yn.jsx)("image",{width:"122",height:"150",id:"image0_2912_38337",xlinkHref:"data:image/png;base64,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"})]})]});var mR=ne((function(e,t){const{htmlWidth:r,htmlHeight:n,alt:i,...o}=e;return(0,Yn.jsx)("img",{width:r,height:n,ref:t,alt:i,...o})}));mR.displayName="NativeImage";function gR(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}var vR=ne((function(e,t){const{fallbackSrc:r,fallback:i,src:o,srcSet:a,align:s,fit:c,loading:l,ignoreFallback:u,crossOrigin:d,fallbackStrategy:h="beforeLoadOrError",referrerPolicy:f,...p}=e,m=null!=l||u||!(void 0!==r||void 0!==i),g=function(e){const{loading:t,src:r,srcSet:i,onLoad:o,onError:a,crossOrigin:s,sizes:c,ignoreFallback:l}=e,[u,d]=(0,n.useState)("pending");(0,n.useEffect)((()=>{d(r?"loading":"pending")}),[r]);const h=(0,n.useRef)(),f=(0,n.useCallback)((()=>{if(!r)return;p();const e=new Image;e.src=r,s&&(e.crossOrigin=s),i&&(e.srcset=i),c&&(e.sizes=c),t&&(e.loading=t),e.onload=e=>{p(),d("loaded"),null==o||o(e)},e.onerror=e=>{p(),d("failed"),null==a||a(e)},h.current=e}),[r,s,i,c,o,a,t]),p=()=>{h.current&&(h.current.onload=null,h.current.onerror=null,h.current=null)};return yh((()=>{if(!l)return"loading"===u&&f(),()=>{p()}}),[u,f,l]),l?"loaded":u}({...e,crossOrigin:d,ignoreFallback:m}),v=((e,t)=>"loaded"!==e&&"beforeLoadOrError"===t||"failed"===e&&"onError"===t)(g,h),y={ref:t,objectFit:c,objectPosition:s,...m?p:gR(p,["onError","onLoad"])};return v?i||(0,Yn.jsx)(Zn.img,{as:mR,className:"chakra-image__placeholder",src:r,...y}):(0,Yn.jsx)(Zn.img,{as:mR,src:o,srcSet:a,crossOrigin:d,loading:l,referrerPolicy:f,className:"chakra-image",...y})}));vR.displayName="Image";const yR=({contract:e,...t})=>{const r=`https://services.tzkt.io/v1/avatars/${e}`;return(0,Yn.jsx)(vR,{fallbackSrc:"/static/media/coin-front.svg",src:r,...t})},bR=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M3 4.5H15M12 4.5L11.797 3.89105C11.6003 3.30094 11.502 3.00588 11.3195 2.78774C11.1584 2.5951 10.9516 2.44599 10.7179 2.35408C10.4532 2.25 10.1422 2.25 9.52018 2.25H8.47982C7.85779 2.25 7.54677 2.25 7.28213 2.35408C7.04844 2.44599 6.84156 2.5951 6.68047 2.78774C6.49804 3.00588 6.39969 3.30094 6.20298 3.89105L6 4.5M13.5 4.5V12.15C13.5 13.4101 13.5 14.0402 13.2548 14.5215C13.039 14.9448 12.6948 15.289 12.2715 15.5048C11.7902 15.75 11.1601 15.75 9.9 15.75H8.1C6.83988 15.75 6.20982 15.75 5.72852 15.5048C5.30516 15.289 4.96095 14.9448 4.74524 14.5215C4.5 14.0402 4.5 13.4101 4.5 12.15V4.5M10.5 7.5V12.75M7.5 7.5V12.75",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),wR=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none","data-testid":"unknown-contact-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M3.16602 15.5625C3.16602 12.7435 5.45123 10.4583 8.27018 10.4583C8.51775 10.4583 8.7612 10.476 8.99935 10.51M13.3722 13.375C14.1014 12.6458 14.8305 12.3575 14.8305 11.5521C14.8305 10.7467 14.1776 10.0938 13.3722 10.0938C12.6927 10.0938 12.1217 10.5585 11.9598 11.1875M13.3722 15.5625H13.3795M11.1868 5.35417C11.1868 6.965 9.88101 8.27083 8.27018 8.27083C6.65935 8.27083 5.35352 6.965 5.35352 5.35417C5.35352 3.74334 6.65935 2.4375 8.27018 2.4375C9.88101 2.4375 11.1868 3.74334 11.1868 5.35417Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),xR=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M20.5 11L18.7396 7.60473C18.253 6.65855 18.0097 6.18545 17.6514 5.84012C17.3346 5.5347 16.9544 5.30272 16.5379 5.16065C16.067 5 15.535 5 14.471 5H9.52901C8.46503 5 7.93304 5 7.46209 5.16065C7.04558 5.30272 6.66542 5.5347 6.34859 5.84012C5.99034 6.18545 5.74703 6.65855 5.26042 7.60473L3.5 11M20.5 11C20.6981 11.3853 20.7658 11.5446 20.8357 11.747C20.8977 11.9267 20.9426 12.1119 20.9696 12.3002C21 12.5121 21 12.7287 21 13.162V14.2C21 15.8802 21 16.7202 20.673 17.362C20.3854 17.9265 19.9265 18.3854 19.362 18.673C18.7202 19 17.8802 19 16.2 19H7.8C6.11984 19 5.27976 19 4.63803 18.673C4.07354 18.3854 3.6146 17.9265 3.32698 17.362C3 16.7202 3 15.8802 3 14.2V13.162C3 12.7287 3 12.5121 3.03041 12.3002C3.05741 12.1119 3.10225 11.9267 3.16432 11.747C3.23421 11.5446 3.30186 11.3853 3.5 11M20.5 11H3.5M15 15H17",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),_R=()=>(0,Yn.jsxs)(Xn,{position:"relative",alignItems:"center",justifyContent:"center","data-testid":"verified-icon",children:[(0,Yn.jsx)(SR,{}),(0,Yn.jsx)(Xn,{position:"absolute",alignItems:"center",justifyContent:"center",children:(0,Yn.jsx)(kR,{})})]}),SR=e=>(0,Yn.jsx)(LA,{width:"14px",height:"14px",fill:EP.gray[450],viewBox:"0 0 14 14",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M6.51019 0.479749C6.78233 0.213196 7.21767 0.213195 7.48981 0.479749L8.86158 1.82333C8.99061 1.94972 9.16351 2.02134 9.34412 2.02321L11.2642 2.04314C11.6451 2.04709 11.9529 2.35492 11.9569 2.73584L11.9768 4.65588C11.9787 4.83649 12.0503 5.00939 12.1767 5.13842L13.5203 6.51019C13.7868 6.78233 13.7868 7.21767 13.5203 7.48981L12.1767 8.86158C12.0503 8.99061 11.9787 9.16351 11.9768 9.34412L11.9569 11.2642C11.9529 11.6451 11.6451 11.9529 11.2642 11.9569L9.34412 11.9768C9.16351 11.9787 8.99061 12.0503 8.86158 12.1767L7.48981 13.5203C7.21767 13.7868 6.78233 13.7868 6.51019 13.5203L5.13842 12.1767C5.00939 12.0503 4.83649 11.9787 4.65588 11.9768L2.73584 11.9569C2.35492 11.9529 2.04709 11.6451 2.04314 11.2642L2.02321 9.34412C2.02134 9.16351 1.94972 8.99061 1.82333 8.86158L0.479749 7.48981C0.213196 7.21767 0.213195 6.78233 0.479749 6.51019L1.82333 5.13842C1.94972 5.00939 2.02134 4.83649 2.02321 4.65588L2.04314 2.73584C2.04709 2.35492 2.35492 2.04709 2.73584 2.04314L4.65588 2.02321C4.83649 2.02134 5.00939 1.94972 5.13842 1.82333L6.51019 0.479749Z",strokeLinecap:"square",strokeLinejoin:"round"})}),kR=e=>(0,Yn.jsx)(LA,{width:"7px",height:"5px",fill:"none",stroke:"white",viewBox:"0 0 7 5",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M1.66699 2.19314L3.0281 3.55425L5.75033 0.832031",strokeLinecap:"square",strokeLinejoin:"round"})}),ER=e=>(0,Yn.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M10 16V14.0003M10 14.0003V12M10 14.0003L12 14.0005M10 14.0003L8 14M21 12V11.2C21 10.0799 21 9.51984 20.782 9.09202C20.5903 8.7157 20.2843 8.40973 19.908 8.21799C19.4802 8 18.9201 8 17.8 8H3M21 12V16M21 12H19C17.8954 12 17 12.8954 17 14C17 15.1046 17.8954 16 19 16H21M21 16V16.8C21 17.9201 21 18.4802 20.782 18.908C20.5903 19.2843 20.2843 19.5903 19.908 19.782C19.4802 20 18.9201 20 17.8 20H6.2C5.0799 20 4.51984 20 4.09202 19.782C3.71569 19.5903 3.40973 19.2843 3.21799 18.908C3 18.4802 3 17.9201 3 16.8V8M18 8V7.2C18 6.0799 18 5.51984 17.782 5.09202C17.5903 4.71569 17.2843 4.40973 16.908 4.21799C16.4802 4 15.9201 4 14.8 4H6.2C5.07989 4 4.51984 4 4.09202 4.21799C3.71569 4.40973 3.40973 4.71569 3.21799 5.09202C3 5.51984 3 6.0799 3 7.2V8",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),AR=e=>(0,Yn.jsx)(LA,{width:"36",height:"32",fill:"none",viewBox:"0 0 36 32",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M18.0004 24.3332H18.0171M18.0004 12.6665V19.3332M8.68719 30.9999H27.3136C30.2831 30.9999 31.7678 30.9999 32.6386 30.3754C33.3985 29.8305 33.8946 28.9915 34.0058 28.0631C34.1333 26.9991 33.4178 25.6982 31.9868 23.0963L22.6736 6.16318C21.1499 3.39292 20.3881 2.00779 19.3814 1.54954C18.5041 1.15015 17.4968 1.15015 16.6194 1.54954C15.6127 2.00779 14.8509 3.39292 13.3273 6.16317L4.01404 23.0963C2.58301 25.6982 1.8675 26.9991 1.99498 28.0631C2.10622 28.9915 2.6023 29.8305 3.36219 30.3754C4.23304 30.9999 5.71776 30.9999 8.68719 30.9999Z",stroke:EP.orangeL,strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2"})}),PR=e=>(0,Yn.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M4.5 4.5L13.5 13.5M13.5 4.5L4.5 13.5","data-testid":"xmark-icon-path",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),OR=to,TR=Ki,CR=()=>{const{html:e,seen:t}=TR((e=>e.announcement)),r=OR();return(0,n.useEffect)((()=>{const e=()=>{uj.get("https://storage.googleapis.com/umami-artifacts/announcement.html").then((e=>{r($a.actions.setCurrent(e.data))})).catch((e=>{}))};e();const t=setInterval(e,36e5);return()=>clearInterval(t)}),[r]),t||!e?null:(0,Yn.jsx)($A,{className:"announcement-banner",color:"black",background:EP.orangeL,"data-testid":"announcement",paddingX:"30px",children:(0,Yn.jsxs)(Xn,{justifyContent:"space-between",width:"100%",children:[(0,Yn.jsxs)(Jn,{children:[(0,Yn.jsx)(nR,{marginRight:"4px"}),(0,Yn.jsx)(qA,{fontSize:"14px",dangerouslySetInnerHTML:{__html:e}})]}),(0,Yn.jsx)(WA,{"data-testid":"close",onClick:()=>r($a.actions.setSeen())})]})})};function jR(e,t){const r=(0,n.useId)();return(0,n.useMemo)((()=>e||[t,r].filter(Boolean).join("-")),[e,t,r])}function RR(e){return null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function IR(e){var t;return RR(e)&&null!=(t=e.ownerDocument)?t:document}function MR(){return!("undefined"===typeof window||!window.document||!window.document.createElement)}var LR=MR()?n.useLayoutEffect:n.useEffect;function NR(e,t=[]){const r=(0,n.useRef)(e);return LR((()=>{r.current=e})),(0,n.useCallback)(((...e)=>{var t;return null==(t=r.current)?void 0:t.call(r,...e)}),t)}function DR(e={}){const{onClose:t,onOpen:r,isOpen:i,id:o}=e,a=NR(r),s=NR(t),[c,l]=(0,n.useState)(e.defaultIsOpen||!1),[u,d]=function(e,t){const r=void 0!==e;return[r,r&&"undefined"!==typeof e?e:t]}(i,c),h=jR(o,"disclosure"),f=(0,n.useCallback)((()=>{u||l(!1),null==s||s()}),[u,s]),p=(0,n.useCallback)((()=>{u||l(!0),null==a||a()}),[u,a]),m=(0,n.useCallback)((()=>{(d?f:p)()}),[d,p,f]);return{isOpen:!!d,onOpen:p,onClose:f,onToggle:m,isControlled:u,getButtonProps:(e={})=>({...e,"aria-expanded":d,"aria-controls":h,onClick:lr(e.onClick,m)}),getDisclosureProps:(e={})=>({...e,hidden:!d,id:h})}}var zR=Object.defineProperty,BR=(e,t,r)=>(((e,t,r)=>{t in e?zR(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r),UR=new class{constructor(){BR(this,"modals"),this.modals=new Map}add(e){return this.modals.set(e,this.modals.size+1),this.modals.size}remove(e){this.modals.delete(e)}isTopModal(e){return!!e&&this.modals.get(e)===this.modals.size}};function FR(e,t){const[r,i]=(0,n.useState)(0);return(0,n.useEffect)((()=>{const r=e.current;if(r){if(t){const e=UR.add(r);i(e)}return()=>{UR.remove(r),i(0)}}}),[t,e]),r}var $R=function(e){return"undefined"===typeof document?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},HR=new WeakMap,VR=new WeakMap,qR={},KR=0,WR=function(e){return e&&(e.host||WR(e.parentNode))},GR=function(e,t,r,n){var i=function(e,t){return t.map((function(t){if(e.contains(t))return t;var r=WR(t);return r&&e.contains(r)?r:(console.error("aria-hidden",t,"in not contained inside",e,". Doing nothing"),null)})).filter((function(e){return Boolean(e)}))}(t,Array.isArray(e)?e:[e]);qR[r]||(qR[r]=new WeakMap);var o=qR[r],a=[],s=new Set,c=new Set(i),l=function(e){e&&!s.has(e)&&(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){e&&!c.has(e)&&Array.prototype.forEach.call(e.children,(function(e){if(s.has(e))u(e);else{var t=e.getAttribute(n),i=null!==t&&"false"!==t,c=(HR.get(e)||0)+1,l=(o.get(e)||0)+1;HR.set(e,c),o.set(e,l),a.push(e),1===c&&i&&VR.set(e,!0),1===l&&e.setAttribute(r,"true"),i||e.setAttribute(n,"true")}}))};return u(t),s.clear(),KR++,function(){a.forEach((function(e){var t=HR.get(e)-1,i=o.get(e)-1;HR.set(e,t),o.set(e,i),t||(VR.has(e)||e.removeAttribute(n),VR.delete(e)),i||e.removeAttribute(r)})),--KR||(HR=new WeakMap,HR=new WeakMap,VR=new WeakMap,qR={})}},ZR=function(e,t,r){void 0===r&&(r="data-aria-hidden");var n=Array.from(Array.isArray(e)?e:[e]),i=t||$R(e);return i?(n.push.apply(n,Array.from(i.querySelectorAll("[aria-live]"))),GR(n,i,r,"aria-hidden")):function(){return null}};function YR(e){const{isOpen:t,onClose:r,id:i,closeOnOverlayClick:o=!0,closeOnEsc:a=!0,useInert:s=!0,onOverlayClick:c,onEsc:l}=e,u=(0,n.useRef)(null),d=(0,n.useRef)(null),[h,f,p]=function(e,...t){const r=(0,n.useId)(),i=e||r;return(0,n.useMemo)((()=>t.map((e=>`${e}-${i}`))),[i,t])}(i,"chakra-modal","chakra-modal--header","chakra-modal--body");!function(e,t){const r=e.current;(0,n.useEffect)((()=>{if(e.current&&t)return ZR(e.current)}),[t,e,r])}(u,t&&s);const m=FR(u,t),g=(0,n.useRef)(null),v=(0,n.useCallback)((e=>{g.current=e.target}),[]),y=(0,n.useCallback)((e=>{"Escape"===e.key&&(e.stopPropagation(),a&&(null==r||r()),null==l||l())}),[a,r,l]),[b,w]=(0,n.useState)(!1),[x,_]=(0,n.useState)(!1),S=(0,n.useCallback)(((e={},t=null)=>({role:"dialog",...e,ref:xi(t,u),id:h,tabIndex:-1,"aria-modal":!0,"aria-labelledby":b?f:void 0,"aria-describedby":x?p:void 0,onClick:de(e.onClick,(e=>e.stopPropagation()))})),[p,x,h,f,b]),k=(0,n.useCallback)((e=>{e.stopPropagation(),g.current===e.target&&UR.isTopModal(u.current)&&(o&&(null==r||r()),null==c||c())}),[r,o,c]),E=(0,n.useCallback)(((e={},t=null)=>({...e,ref:xi(t,d),onClick:de(e.onClick,k),onKeyDown:de(e.onKeyDown,y),onMouseDown:de(e.onMouseDown,v)})),[y,v,k]);return{isOpen:t,onClose:r,headerId:f,bodyId:p,setBodyMounted:_,setHeaderMounted:w,dialogRef:u,overlayRef:d,getDialogProps:S,getDialogContainerProps:E,index:m}}var[XR,JR]=di({name:"ModalStylesContext",errorMessage:"useModalStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),[QR,eI]=di({strict:!0,name:"ModalContext",errorMessage:"useModalContext: `context` is undefined. Seems you forgot to wrap modal components in ``"}),tI=e=>{const t={scrollBehavior:"outside",autoFocus:!0,trapFocus:!0,returnFocusOnClose:!0,blockScrollOnMount:!0,allowPinchZoom:!1,motionPreset:"scale",lockFocusAcrossFrames:!0,...e},{portalProps:r,children:n,autoFocus:i,trapFocus:o,initialFocusRef:a,finalFocusRef:s,returnFocusOnClose:c,blockScrollOnMount:l,allowPinchZoom:u,preserveScrollBarGap:d,motionPreset:h,lockFocusAcrossFrames:f,onCloseComplete:p}=t,m=li("Modal",t),g={...YR(t),autoFocus:i,trapFocus:o,initialFocusRef:a,finalFocusRef:s,returnFocusOnClose:c,blockScrollOnMount:l,allowPinchZoom:u,preserveScrollBarGap:d,motionPreset:h,lockFocusAcrossFrames:f};return(0,Yn.jsx)(QR,{value:g,children:(0,Yn.jsx)(XR,{value:m,children:(0,Yn.jsx)(iP,{onExitComplete:p,children:g.isOpen&&(0,Yn.jsx)(dP,{...r,children:n})})})})};tI.displayName="Modal";var rI={ease:[.25,.1,.25,1],easeIn:[.4,0,1,1],easeOut:[0,0,.2,1],easeInOut:[.4,0,.2,1]},nI={position:{left:0,top:0,bottom:0,width:"100%"},enter:{x:0,y:0},exit:{x:"-100%",y:0}},iI={position:{right:0,top:0,bottom:0,width:"100%"},enter:{x:0,y:0},exit:{x:"100%",y:0}},oI={position:{top:0,left:0,right:0,maxWidth:"100vw"},enter:{x:0,y:0},exit:{x:0,y:"-100%"}},aI={position:{bottom:0,left:0,right:0,maxWidth:"100vw"},enter:{x:0,y:0},exit:{x:0,y:"100%"}};function sI(e){var t;switch(null!=(t=null==e?void 0:e.direction)?t:"right"){case"right":default:return iI;case"left":return nI;case"bottom":return aI;case"top":return oI}}var cI={enter:{duration:.2,ease:rI.easeOut},exit:{duration:.1,ease:rI.easeIn}},lI=(e,t)=>({...e,delay:"number"===typeof t?t:null==t?void 0:t.enter}),uI=(e,t)=>({...e,delay:"number"===typeof t?t:null==t?void 0:t.exit}),dI={enter:({transition:e,transitionEnd:t,delay:r}={})=>{var n;return{opacity:1,transition:null!=(n=null==e?void 0:e.enter)?n:lI(cI.enter,r),transitionEnd:null==t?void 0:t.enter}},exit:({transition:e,transitionEnd:t,delay:r}={})=>{var n;return{opacity:0,transition:null!=(n=null==e?void 0:e.exit)?n:uI(cI.exit,r),transitionEnd:null==t?void 0:t.exit}}},hI={initial:"exit",animate:"enter",exit:"exit",variants:dI},fI=(0,n.forwardRef)((function(e,t){const{unmountOnExit:r,in:n,className:i,transition:o,transitionEnd:a,delay:s,...c}=e,l=n||r?"enter":"exit",u=!r||n&&r,d={transition:o,transitionEnd:a,delay:s};return(0,Yn.jsx)(iP,{custom:d,children:u&&(0,Yn.jsx)(CA.div,{ref:t,className:ie("chakra-fade",i),custom:d,...hI,animate:l,...c})})}));fI.displayName="Fade";var pI=Zn(CA.div),mI=ne(((e,t)=>{const{className:r,transition:n,motionProps:i,...o}=e,a=ie("chakra-modal__overlay",r),s={pos:"fixed",left:"0",top:"0",w:"100vw",h:"100vh",...JR().overlay},{motionPreset:c}=eI(),l=i||("none"===c?{}:hI);return(0,Yn.jsx)(pI,{...l,__css:s,ref:t,className:a,...o})}));mI.displayName="ModalOverlay";var gI=function(e,t){return gI=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},gI(e,t)};function vI(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}gI(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var yI=function(){return yI=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0&&i[i.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function SI(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,i,o=r.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(s){i={error:s}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a}function kI(e,t,r){if(r||2===arguments.length)for(var n,i=0,o=t.length;i1||s(e,t)}))})}function s(e,t){try{!function(e){e.value instanceof EI?Promise.resolve(e.value.v).then(c,l):u(o[0][2],e)}(i[e](t))}catch(r){u(o[0][3],r)}}function c(e){s("next",e)}function l(e){s("throw",e)}function u(e,t){e(t),o.shift(),o.length&&s(o[0][0],o[0][1])}}function PI(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=_I(e),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,i){(function(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)})(n,i,(t=e[r](t)).done,t.value)}))}}}Object.create;"function"===typeof SuppressedError&&SuppressedError;var OI="right-scroll-bar-position",TI="width-before-scroll-bar";function CI(e,t){return function(e,t){var r=(0,n.useState)((function(){return{value:e,callback:t,facade:{get current(){return r.value},set current(e){var t=r.value;t!==e&&(r.value=e,r.callback(e,t))}}}}))[0];return r.callback=t,r.facade}(t||null,(function(t){return e.forEach((function(e){return function(e,t){return"function"===typeof e?e(t):e&&(e.current=t),e}(e,t)}))}))}function jI(e){return e}function RI(e,t){void 0===t&&(t=jI);var r=[],n=!1,i={read:function(){if(n)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:e},useMedium:function(e){var i=t(e,n);return r.push(i),function(){r=r.filter((function(e){return e!==i}))}},assignSyncMedium:function(e){for(n=!0;r.length;){var t=r;r=[],t.forEach(e)}r={push:function(t){return e(t)},filter:function(){return r}}},assignMedium:function(e){n=!0;var t=[];if(r.length){var i=r;r=[],i.forEach(e),t=r}var o=function(){var r=t;t=[],r.forEach(e)},a=function(){return Promise.resolve().then(o)};a(),r={push:function(e){t.push(e),a()},filter:function(e){return t=t.filter(e),r}}}};return i}function II(e,t){return void 0===t&&(t=jI),RI(e,t)}function MI(e){void 0===e&&(e={});var t=RI(null);return t.options=yI({async:!0,ssr:!1},e),t}var LI=MI(),NI=function(){},DI=n.forwardRef((function(e,t){var r=n.useRef(null),i=n.useState({onScrollCapture:NI,onWheelCapture:NI,onTouchMoveCapture:NI}),o=i[0],a=i[1],s=e.forwardProps,c=e.children,l=e.className,u=e.removeScrollBar,d=e.enabled,h=e.shards,f=e.sideCar,p=e.noIsolation,m=e.inert,g=e.allowPinchZoom,v=e.as,y=void 0===v?"div":v,b=e.gapMode,w=bI(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as","gapMode"]),x=f,_=CI([r,t]),S=yI(yI({},w),o);return n.createElement(n.Fragment,null,d&&n.createElement(x,{sideCar:LI,removeScrollBar:u,shards:h,noIsolation:p,inert:m,setCallbacks:a,allowPinchZoom:!!g,lockRef:r,gapMode:b}),s?n.cloneElement(n.Children.only(c),yI(yI({},S),{ref:_})):n.createElement(y,yI({},S,{className:l,ref:_}),c))}));DI.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},DI.classNames={fullWidth:TI,zeroRight:OI};var zI,BI=function(e){var t=e.sideCar,r=bI(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var i=t.read();if(!i)throw new Error("Sidecar medium not found");return n.createElement(i,yI({},r))};BI.isSideCarExport=!0;function UI(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=zI||r.nc;return t&&e.setAttribute("nonce",t),e}var FI=function(){var e=0,t=null;return{add:function(r){var n;0==e&&(t=UI())&&(!function(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}(t,r),n=t,(document.head||document.getElementsByTagName("head")[0]).appendChild(n)),e++},remove:function(){!--e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},$I=function(){var e=function(){var e=FI();return function(t,r){n.useEffect((function(){return e.add(t),function(){e.remove()}}),[t&&r])}}();return function(t){var r=t.styles,n=t.dynamic;return e(r,n),null}},HI={left:0,top:0,right:0,gap:0},VI=function(e){return parseInt(e||"",10)||0},qI=function(e){if(void 0===e&&(e="margin"),"undefined"===typeof window)return HI;var t=function(e){var t=window.getComputedStyle(document.body),r=t["padding"===e?"paddingLeft":"marginLeft"],n=t["padding"===e?"paddingTop":"marginTop"],i=t["padding"===e?"paddingRight":"marginRight"];return[VI(r),VI(n),VI(i)]}(e),r=document.documentElement.clientWidth,n=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,n-r+t[2]-t[0])}},KI=$I(),WI=function(e,t,r,n){var i=e.left,o=e.top,a=e.right,s=e.gap;return void 0===r&&(r="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(n,";\n padding-right: ").concat(s,"px ").concat(n,";\n }\n body {\n overflow: hidden ").concat(n,";\n overscroll-behavior: contain;\n ").concat([t&&"position: relative ".concat(n,";"),"margin"===r&&"\n padding-left: ".concat(i,"px;\n padding-top: ").concat(o,"px;\n padding-right: ").concat(a,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(s,"px ").concat(n,";\n "),"padding"===r&&"padding-right: ".concat(s,"px ").concat(n,";")].filter(Boolean).join(""),"\n }\n \n .").concat(OI," {\n right: ").concat(s,"px ").concat(n,";\n }\n \n .").concat(TI," {\n margin-right: ").concat(s,"px ").concat(n,";\n }\n \n .").concat(OI," .").concat(OI," {\n right: 0 ").concat(n,";\n }\n \n .").concat(TI," .").concat(TI," {\n margin-right: 0 ").concat(n,";\n }\n \n body {\n ").concat("--removed-body-scroll-bar-size",": ").concat(s,"px;\n }\n")},GI=function(e){var t=e.noRelative,r=e.noImportant,i=e.gapMode,o=void 0===i?"margin":i,a=n.useMemo((function(){return qI(o)}),[o]);return n.createElement(KI,{styles:WI(a,!t,o,r?"":"!important")})},ZI=!1;if("undefined"!==typeof window)try{var YI=Object.defineProperty({},"passive",{get:function(){return ZI=!0,!0}});window.addEventListener("test",YI,YI),window.removeEventListener("test",YI,YI)}catch(fde){ZI=!1}var XI=!!ZI&&{passive:!1},JI=function(e,t){var r=window.getComputedStyle(e);return"hidden"!==r[t]&&!(r.overflowY===r.overflowX&&!function(e){return"TEXTAREA"===e.tagName}(e)&&"visible"===r[t])},QI=function(e,t){var r=t.ownerDocument,n=t;do{if("undefined"!==typeof ShadowRoot&&n instanceof ShadowRoot&&(n=n.host),eM(e,n)){var i=tM(e,n);if(i[1]>i[2])return!0}n=n.parentNode}while(n&&n!==r.body);return!1},eM=function(e,t){return"v"===e?function(e){return JI(e,"overflowY")}(t):function(e){return JI(e,"overflowX")}(t)},tM=function(e,t){return"v"===e?function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]}(t):function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]}(t)},rM=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},nM=function(e){return[e.deltaX,e.deltaY]},iM=function(e){return e&&"current"in e?e.current:e},oM=function(e){return"\n .block-interactivity-".concat(e," {pointer-events: none;}\n .allow-interactivity-").concat(e," {pointer-events: all;}\n")},aM=0,sM=[];function cM(e){for(var t=null;null!==e;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const lM=(uM=function(e){var t=n.useRef([]),r=n.useRef([0,0]),i=n.useRef(),o=n.useState(aM++)[0],a=n.useState($I)[0],s=n.useRef(e);n.useEffect((function(){s.current=e}),[e]),n.useEffect((function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var t=kI([e.lockRef.current],(e.shards||[]).map(iM),!0).filter(Boolean);return t.forEach((function(e){return e.classList.add("allow-interactivity-".concat(o))})),function(){document.body.classList.remove("block-interactivity-".concat(o)),t.forEach((function(e){return e.classList.remove("allow-interactivity-".concat(o))}))}}}),[e.inert,e.lockRef.current,e.shards]);var c=n.useCallback((function(e,t){if("touches"in e&&2===e.touches.length)return!s.current.allowPinchZoom;var n,o=rM(e),a=r.current,c="deltaX"in e?e.deltaX:a[0]-o[0],l="deltaY"in e?e.deltaY:a[1]-o[1],u=e.target,d=Math.abs(c)>Math.abs(l)?"h":"v";if("touches"in e&&"h"===d&&"range"===u.type)return!1;var h=QI(d,u);if(!h)return!0;if(h?n=d:(n="v"===d?"h":"v",h=QI(d,u)),!h)return!1;if(!i.current&&"changedTouches"in e&&(c||l)&&(i.current=n),!n)return!0;var f=i.current||n;return function(e,t,r,n,i){var o=function(e,t){return"h"===e&&"rtl"===t?-1:1}(e,window.getComputedStyle(t).direction),a=o*n,s=r.target,c=t.contains(s),l=!1,u=a>0,d=0,h=0;do{var f=tM(e,s),p=f[0],m=f[1]-f[2]-o*p;(p||m)&&eM(e,s)&&(d+=m,h+=p),s=s instanceof ShadowRoot?s.host:s.parentNode}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&a>d)||!u&&(i&&Math.abs(h)<1||!i&&-a>h))&&(l=!0),l}(f,t,e,"h"===f?c:l,!0)}),[]),l=n.useCallback((function(e){var r=e;if(sM.length&&sM[sM.length-1]===a){var n="deltaY"in r?nM(r):rM(r),i=t.current.filter((function(e){return e.name===r.type&&(e.target===r.target||r.target===e.shadowParent)&&function(e,t){return e[0]===t[0]&&e[1]===t[1]}(e.delta,n)}))[0];if(i&&i.should)r.cancelable&&r.preventDefault();else if(!i){var o=(s.current.shards||[]).map(iM).filter(Boolean).filter((function(e){return e.contains(r.target)}));(o.length>0?c(r,o[0]):!s.current.noIsolation)&&r.cancelable&&r.preventDefault()}}}),[]),u=n.useCallback((function(e,r,n,i){var o={name:e,delta:r,target:n,should:i,shadowParent:cM(n)};t.current.push(o),setTimeout((function(){t.current=t.current.filter((function(e){return e!==o}))}),1)}),[]),d=n.useCallback((function(e){r.current=rM(e),i.current=void 0}),[]),h=n.useCallback((function(t){u(t.type,nM(t),t.target,c(t,e.lockRef.current))}),[]),f=n.useCallback((function(t){u(t.type,rM(t),t.target,c(t,e.lockRef.current))}),[]);n.useEffect((function(){return sM.push(a),e.setCallbacks({onScrollCapture:h,onWheelCapture:h,onTouchMoveCapture:f}),document.addEventListener("wheel",l,XI),document.addEventListener("touchmove",l,XI),document.addEventListener("touchstart",d,XI),function(){sM=sM.filter((function(e){return e!==a})),document.removeEventListener("wheel",l,XI),document.removeEventListener("touchmove",l,XI),document.removeEventListener("touchstart",d,XI)}}),[]);var p=e.removeScrollBar,m=e.inert;return n.createElement(n.Fragment,null,m?n.createElement(a,{styles:oM(o)}):null,p?n.createElement(GI,{gapMode:e.gapMode}):null)},LI.useMedium(uM),BI);var uM,dM=n.forwardRef((function(e,t){return n.createElement(DI,yI({},e,{ref:t,sideCar:lM}))}));dM.classNames=DI.classNames;const hM=dM,fM=(0,n.createContext)({openWith:e=>Promise.resolve(),onClose:()=>{},isOpen:!1}),pM=()=>{const{isOpen:e,onClose:t,onOpen:r}=DR(),[i,o]=(0,n.useState)(null),[a,s]=(0,n.useState)("md");return{isOpen:e,onClose:t,openWith:async(e,t="md")=>{s(t),o(e),r()},content:(0,Yn.jsxs)(tI,{autoFocus:!1,blockScrollOnMount:!1,closeOnOverlayClick:!1,isCentered:!0,isOpen:e,motionPreset:localStorage.getItem("chakra-modal-motion-preset")||void 0,onClose:t,size:a,children:[(0,Yn.jsx)(mI,{}),(0,Yn.jsx)(hM,{enabled:e,children:i})]})}};function mM(e){return Object.keys(e)}var gM;!function(e){e.PENDING="pending",e.RESOLVED="resolved",e.REJECTED="rejected"}(gM||(gM={}));const vM=()=>{throw new Error("ExposedPromise not initialized yet.")};class yM{_promise;_resolve=vM;_reject=vM;_status=gM.PENDING;_promiseResult;_promiseError;get promise(){return this._promise}get resolve(){return this._resolve}get reject(){return this._reject}get status(){return this._status}get promiseResult(){return this._promiseResult}get promiseError(){return this._promiseError}constructor(){this._promise=new Promise(((e,t)=>{this._resolve=t=>{this.isSettled()||(this._promiseResult=t,e(t),this._status=gM.RESOLVED)},this._reject=e=>{this.isSettled()||(this._promiseError=e,t(e),this._status=gM.REJECTED)}}))}static resolve(e){const t=new yM;return t.resolve(e),t}static reject(e){const t=new yM;return t.reject(e),t}isPending(){return this.status===gM.PENDING}isResolved(){return this.status===gM.RESOLVED}isRejected(){return this.status===gM.REJECTED}isSettled(){return this.isResolved()||this.isRejected()}}var bM=r(427),wM=r(8945),xM=r(5164),_M=r(9070),SM=r(4082),kM=r(4872).Buffer;function EM(e){return kM.from(e).toString("hex")}async function AM(e){return EM("string"===typeof e?(0,Wa.hash)((0,_M.cv)(e),32):(0,Wa.hash)(e,32))}async function PM(e){return(0,Ka._w)((0,Wa.hash)((0,_M.cv)(e),32))}function OM(e,t){return`@${e}:${t}`}var TM=r(4872).Buffer;async function CM(){const e=(0,xM.randomBytes)(16);return[e.slice(0,4),e.slice(4,6),e.slice(6,8),e.slice(8,10),e.slice(10,16)].map((function(e){return TM.from(e).toString("hex")})).join("-")}var jM,RM,IM,MM,LM,NM,DM,zM,BM,UM;!function(e){e.BlockchainRequest="blockchain_request",e.PermissionRequest="permission_request",e.SignPayloadRequest="sign_payload_request",e.OperationRequest="operation_request",e.BroadcastRequest="broadcast_request",e.ChangeAccountRequest="change_account_request",e.BlockchainResponse="blockchain_response",e.PermissionResponse="permission_response",e.SignPayloadResponse="sign_payload_response",e.ProofOfEventChallengeRequest="proof_of_event_challenge_request",e.ProofOfEventChallengeResponse="proof_of_event_challenge_response",e.ProofOfEventChallengeRecorded="proof_of_event_challenge_recorded",e.OperationResponse="operation_response",e.BroadcastResponse="broadcast_response",e.Acknowledge="acknowledge",e.Disconnect="disconnect",e.Error="error"}(jM||(jM={})),function(e){e.SIGN="sign",e.OPERATION_REQUEST="operation_request",e.ENCRYPT="encrypt",e.NOTIFICATION="notification",e.THRESHOLD="threshold"}(RM||(RM={})),function(e){e.MAINNET="mainnet",e.GHOSTNET="ghostnet",e.WEEKLYNET="weeklynet",e.DAILYNET="dailynet",e.DELPHINET="delphinet",e.EDONET="edonet",e.FLORENCENET="florencenet",e.GRANADANET="granadanet",e.HANGZHOUNET="hangzhounet",e.ITHACANET="ithacanet",e.JAKARTANET="jakartanet",e.KATHMANDUNET="kathmandunet",e.LIMANET="limanet",e.MUMBAINET="mumbainet",e.NAIROBINET="nairobinet",e.OXFORDNET="oxfordnet",e.CUSTOM="custom"}(IM||(IM={})),function(e){e.ENDORSEMENT="endorsement",e.SEED_NONCE_REVELATION="seed_nonce_revelation",e.DOUBLE_ENDORSEMENT_EVIDENCE="double_endorsement_evidence",e.DOUBLE_BAKING_EVIDENCE="double_baking_evidence",e.ACTIVATE_ACCOUNT="activate_account",e.PROPOSALS="proposals",e.BALLOT="ballot",e.REVEAL="reveal",e.TRANSACTION="transaction",e.ORIGINATION="origination",e.DELEGATION="delegation"}(MM||(MM={})),function(e){e.WEBSITE="website",e.EXTENSION="extension",e.P2P="p2p",e.WALLETCONNECT="walletconnect"}(LM||(LM={})),function(e){e.BACKGROUND="toBackground",e.PAGE="toPage",e.EXTENSION="toExtension"}(NM||(NM={})),function(e){e.BROADCAST_ERROR="BROADCAST_ERROR",e.NETWORK_NOT_SUPPORTED="NETWORK_NOT_SUPPORTED",e.NO_ADDRESS_ERROR="NO_ADDRESS_ERROR",e.NO_PRIVATE_KEY_FOUND_ERROR="NO_PRIVATE_KEY_FOUND_ERROR",e.NOT_GRANTED_ERROR="NOT_GRANTED_ERROR",e.PARAMETERS_INVALID_ERROR="PARAMETERS_INVALID_ERROR",e.TOO_MANY_OPERATIONS="TOO_MANY_OPERATIONS",e.TRANSACTION_INVALID_ERROR="TRANSACTION_INVALID_ERROR",e.SIGNATURE_TYPE_NOT_SUPPORTED="SIGNATURE_TYPE_NOT_SUPPORTED",e.ABORTED_ERROR="ABORTED_ERROR",e.UNKNOWN_ERROR="UNKNOWN_ERROR"}(DM||(DM={})),function(e){e.NOT_CONNECTED="NOT_CONNECTED",e.CONNECTING="CONNECTING",e.CONNECTED="CONNECTED"}(zM||(zM={})),function(e){e.CHROME_MESSAGE="chrome_message",e.WALLETCONNECT="walletconnect",e.POST_MESSAGE="post_message",e.LEDGER="ledger",e.P2P="p2p"}(BM||(BM={}));class FM{static isSupported(){return Promise.resolve(!1)}}!function(e){e.TRANSPORT_P2P_PEERS_DAPP="beacon:communication-peers-dapp",e.TRANSPORT_P2P_PEERS_WALLET="beacon:communication-peers-wallet",e.TRANSPORT_POSTMESSAGE_PEERS_DAPP="beacon:postmessage-peers-dapp",e.TRANSPORT_POSTMESSAGE_PEERS_WALLET="beacon:postmessage-peers-wallet",e.TRANSPORT_WALLETCONNECT_PEERS_DAPP="beacon:walletconnect-peers-dapp",e.LAST_SELECTED_WALLET="beacon:last-selected-wallet",e.ACCOUNTS="beacon:accounts",e.ACTIVE_ACCOUNT="beacon:active-account",e.PUSH_TOKENS="beacon:push-tokens",e.BEACON_SDK_SECRET_SEED="beacon:sdk-secret-seed",e.APP_METADATA_LIST="beacon:app-metadata-list",e.PERMISSION_LIST="beacon:permissions",e.ONGOING_PROOF_OF_EVENT_CHALLENGES="beacon:ongoing-proof-of-event-challenges",e.BEACON_SDK_VERSION="beacon:sdk_version",e.MATRIX_PRESERVED_STATE="beacon:sdk-matrix-preserved-state",e.MATRIX_PEER_ROOM_IDS="beacon:matrix-peer-rooms",e.MATRIX_SELECTED_NODE="beacon:matrix-selected-node",e.MULTI_NODE_SETUP_DONE="beacon:multi-node-setup",e.WC_2_CORE_PAIRING="wc@2:core:0.3//pairing",e.WC_2_CLIENT_SESSION="wc@2:client:0.3//session",e.WC_2_CORE_KEYCHAIN="wc@2:core:0.3//keychain",e.WC_2_CORE_MESSAGES="wc@2:core:0.3//messages",e.WC_2_CLIENT_PROPOSAL="wc@2:client:0.3//proposal",e.WC_2_CORE_SUBSCRIPTION="wc@2:core:0.3//subscription",e.WC_2_CORE_HISTORY="wc@2:core:0.3//history",e.WC_2_CORE_EXPIRER="wc@2:core:0.3//expirer"}(UM||(UM={}));const $M={[UM.TRANSPORT_P2P_PEERS_DAPP]:[],[UM.TRANSPORT_P2P_PEERS_WALLET]:[],[UM.TRANSPORT_POSTMESSAGE_PEERS_DAPP]:[],[UM.TRANSPORT_POSTMESSAGE_PEERS_WALLET]:[],[UM.TRANSPORT_WALLETCONNECT_PEERS_DAPP]:[],[UM.LAST_SELECTED_WALLET]:void 0,[UM.ACCOUNTS]:[],[UM.ACTIVE_ACCOUNT]:void 0,[UM.PUSH_TOKENS]:[],[UM.BEACON_SDK_SECRET_SEED]:void 0,[UM.APP_METADATA_LIST]:[],[UM.PERMISSION_LIST]:[],[UM.ONGOING_PROOF_OF_EVENT_CHALLENGES]:[],[UM.BEACON_SDK_VERSION]:void 0,[UM.MATRIX_PRESERVED_STATE]:{},[UM.MATRIX_PEER_ROOM_IDS]:{},[UM.MATRIX_SELECTED_NODE]:void 0,[UM.MULTI_NODE_SETUP_DONE]:void 0,[UM.WC_2_CLIENT_SESSION]:void 0,[UM.WC_2_CORE_PAIRING]:void 0,[UM.WC_2_CORE_KEYCHAIN]:void 0,[UM.WC_2_CORE_MESSAGES]:void 0,[UM.WC_2_CLIENT_PROPOSAL]:void 0,[UM.WC_2_CORE_SUBSCRIPTION]:void 0,[UM.WC_2_CORE_HISTORY]:void 0,[UM.WC_2_CORE_EXPIRER]:void 0};class HM{type="p2p-pairing-request";relayServer;id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o,a){this.id=e,this.name=t,this.icon=o,this.appUrl=a,this.publicKey=r,this.version=n,this.relayServer=i}}class VM extends HM{senderId;constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,a,s),this.senderId=o}}var qM,KM,WM;!function(e){e.RAW="raw",e.OPERATION="operation",e.MICHELINE="micheline"}(qM||(qM={}));class GM{type="p2p-pairing-request";relayServer;id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o,a){this.id=e,this.name=t,this.icon=o,this.appUrl=a,this.publicKey=r,this.version=n,this.relayServer=i}}class ZM{type="postmessage-pairing-request";id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o){this.id=e,this.name=t,this.icon=i,this.appUrl=o,this.publicKey=r,this.version=n}}class YM extends ZM{senderId;constructor(e,t,r,n,i,o,a){super(e,t,r,n,o,a),this.senderId=i}}class XM{type="walletconnect-pairing-request";uri;id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o,a){this.id=e,this.name=t,this.icon=o,this.appUrl=a,this.publicKey=r,this.version=n,this.uri=i}}class JM extends XM{senderId;constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,o,a,s),this.senderId=i}}!function(e){e.LIGHT="light",e.DARK="dark"}(KM||(KM={})),function(e){e.EUROPE_EAST="europe-east",e.EUROPE_WEST="europe-west",e.NORTH_AMERICA_EAST="north-america-east",e.NORTH_AMERICA_WEST="north-america-west",e.CENTRAL_AMERICA="central-america",e.SOUTH_AMERICA="south-america",e.ASIA_EAST="asia-east",e.ASIA_WEST="asia-west",e.AFRICA="africa",e.AUSTRALIA="australia"}(WM||(WM={}));const QM="https://beacon-notification-oracle.dev.gke.papers.tech",eL=[e=>{}];let tL={postMessage:(e,t)=>{console.log("GOT MOCK POST MESSAGE",e),eL.forEach((t=>{t({data:e})}))},addEventListener:(e,t)=>{eL.push(t)},removeEventListener:(e,t)=>{eL.splice(eL.indexOf((e=>e===t)),1)},location:{origin:"*"}};try{"undefined"!==typeof window&&(tL=window)}catch(pde){console.log(`not defined: ${pde}`)}class rL{track(e,t,r,n){}}class nL{name;iconUrl;appUrl;_beaconId=new yM;get beaconId(){return this._beaconId.promise}storage;analytics;_keyPair=new yM;get keyPair(){return this._keyPair.promise}constructor(e){if(!e.name)throw new Error("Name not set");if(!e.storage)throw new Error("Storage not set");this.name=e.name,this.iconUrl=e.iconUrl,this.appUrl=e.appUrl??tL.location.origin,this.storage=e.storage,this.analytics=e.analytics??new rL,tL.beaconCreatedClientInstance?console.error("[BEACON] It looks like you created multiple Beacon SDK Client instances. This can lead to problems. Only create one instance and re-use it everywhere."):tL.beaconCreatedClientInstance=!0,this.initSDK().catch(console.error)}async destroy(){await this.removeBeaconEntriesFromStorage(),tL.beaconCreatedClientInstance=!1}async initSDK(){return this.storage.set(UM.BEACON_SDK_VERSION,"4.1.0").catch(console.error),this.loadOrCreateBeaconSecret().catch(console.error),this.keyPair.then((e=>{this._beaconId.resolve(EM(e.publicKey))}))}async removeBeaconEntriesFromStorage(){const e=Object.values(UM);await Promise.all(e.map((e=>this.storage.delete(e))))}async loadOrCreateBeaconSecret(){const e=await this.storage.get(UM.BEACON_SDK_SECRET_SEED);if(e&&"string"===typeof e)this._keyPair.resolve(await PM(e));else{const e=await CM();await this.storage.set(UM.BEACON_SDK_SECRET_SEED,e),this._keyPair.resolve(await PM(e))}}}class iL{storage;storageKey;constructor(e,t){this.storage=e,this.storageKey=t}async getAll(){return await this.storage.get(this.storageKey)??[]}async getOne(e){return(await this.storage.get(this.storageKey)).find(e)}async addOne(e,t,r=!0){const n=await this.storage.get(this.storageKey);if(n.some(t)){if(r)for(let i=0;i!e(t)));return this.storage.set(this.storageKey,t)}async removeAll(){return this.storage.delete(this.storageKey)}}var oL=r(4872).Buffer;const aL=async(e,t)=>{const r=[e,t.type];t.name&&r.push(`name:${t.name}`),t.rpcUrl&&r.push(`rpc:${t.rpcUrl}`);const n=oL.from((0,Wa.hash)((0,_M.cv)(r.join("-")),10));return bM.encode(n)};class sL{static async hasPermission(e,t,r){switch(e.type){case jM.PermissionRequest:case jM.BroadcastRequest:return!0;case jM.OperationRequest:{const r=await aL(e.sourceAddress,e.network),n=await t(r);return!!n&&n.scopes.includes(RM.OPERATION_REQUEST)}case jM.SignPayloadRequest:{const t=(await r()).filter((t=>t.address===e.sourceAddress));return 0!==t.length&&t.some((e=>e.scopes.includes(RM.SIGN)))}default:throw new Error("Message not handled")}}}class cL{storageManager;constructor(e){this.storageManager=new iL(e,UM.ACCOUNTS)}async getAccounts(){return await this.storageManager.getAll()??[]}async getAccount(e){return this.storageManager.getOne((t=>t.accountIdentifier===e))}async addAccount(e){return this.storageManager.addOne(e,(t=>t.accountIdentifier===e.accountIdentifier))}async updateAccount(e,t){const r=await this.getAccount(e);if(!r)return;const n={...r,...t};return await this.storageManager.addOne(n,(t=>t.accountIdentifier===e),!0),n}async removeAccount(e){return this.storageManager.remove((t=>t.accountIdentifier===e))}async removeAccounts(e){return this.storageManager.remove((t=>e.includes(t.accountIdentifier)))}async removeAllAccounts(){return this.storageManager.removeAll()}async hasPermission(e){return sL.hasPermission(e,this.getAccount.bind(this),this.getAccounts.bind(this))}}var lL=r(4872).Buffer;const uL=async e=>{const t=lL.from((0,Wa.hash)(lL.from(e,"hex"),5));return bM.encode(t)};let dL=!!tL.beaconSdkDebugEnabled;dL&&console.log("[BEACON]: Debug mode is ON (turned on either by the developer or a browser extension)");class hL{name;constructor(e){this.name=e}debug(e,...t){fL.debug(this.name,e,t)}log(e,...t){fL.log(this.name,e,t)}warn(e,...t){fL.warn(this.name,e,t)}error(e,...t){fL.error(this.name,e,t)}time(e,t){fL.time(e,t)}timeLog(e,...t){fL.timeLog(e,t)}}new hL("");let fL=new class{constructor(){}debug(e,t,...r){this._log("debug",e,t,r)}log(e,t,...r){this._log("log",e,t,r)}warn(e,t,...r){this._log("warn",e,t,r)}error(e,t,...r){this._log("error",e,t,r)}time(e,t){e?console.time(t):console.timeEnd(t)}timeLog(e,t,...r){this._log("timeLog",e,t,r)}_log(e,t,r,n=[]){if(!dL)return;let i=`[BEACON] ${(new Date).toISOString()} [${t}](${r})`,o=n;switch(n[0]&&"string"===typeof n[0]&&(i+=` ${n[0]}`,o=n.slice(1)),e){case"error":console.group(i),console.error(...o);break;case"warn":console.group(i),console.warn(...o);break;case"debug":console.groupCollapsed(i),console.debug(...o);break;case"timeLog":console.group(i),console.timeLog(...o);break;default:console.group(i),console.log(...o)}console.groupEnd()}};const pL=new hL("Client");class mL extends nL{accountManager;handleResponse;rateLimit=2;rateLimitWindowInSeconds=5;requestCounter=[];matrixNodes;_transport=new yM;get transport(){return this._transport.promise}get connectionStatus(){return this._transport.promiseResult?.connectionStatus??zM.NOT_CONNECTED}get ready(){return this.transport.then((()=>{}))}constructor(e){super(e),this.accountManager=new cL(e.storage),this.matrixNodes=e.matrixNodes??{},this.handleResponse=(e,t)=>{throw new Error(`not overwritten${JSON.stringify(e)} - ${JSON.stringify(t)}`)}}async getAccounts(){return this.accountManager.getAccounts()}async getAccount(e){return this.accountManager.getAccount(e)}async removeAccount(e){return this.accountManager.removeAccount(e)}async removeAllAccounts(){return this.accountManager.removeAllAccounts()}async addRequestAndCheckIfRateLimited(){const e=(new Date).getTime();return this.requestCounter=this.requestCounter.filter((t=>t+1e3*this.rateLimitWindowInSeconds>e)),this.requestCounter.push(e),this.requestCounter.length>this.rateLimit}async init(e){return this._transport.status===gM.RESOLVED?(await this.transport).type:(await this.setTransport(e),e.type)}async getOwnAppMetadata(){return{senderId:await uL(await this.beaconId),name:this.name,icon:this.iconUrl}}async getPeers(){return(await this.transport).getPeers()}async addPeer(e){return(await this.transport).addPeer(e)}async destroy(){this._transport.status===gM.RESOLVED&&await(await this.transport).disconnect(),await super.destroy()}async setTransport(e){e?this._transport.isSettled()?this._transport=yM.resolve(e):this._transport.resolve(e):this._transport.isSettled()&&(this._transport=new yM)}async addListener(e){e.addListener((async(e,t)=>{if("string"===typeof e){const r=await(new wL).deserialize(e);this.handleResponse(r,t)}})).catch((e=>pL.error("addListener",e)))}async sendDisconnectToPeer(e,t){const r={id:await CM(),version:e.version,senderId:await uL(await this.beaconId),type:jM.Disconnect},n=await(new wL).serialize(r),i=t??await this.transport;await i.send(n,e)}}const gL=new hL("Transport");class vL{type=BM.POST_MESSAGE;name;_isConnected=zM.NOT_CONNECTED;peerManager;client;newPeerListener;setEventHandler(e,t){this.client.eventHandlers.set(e,t)}listeners=[];get connectionStatus(){return this._isConnected}constructor(e,t,r){this.name=e,this.client=t,this.peerManager=r}static async isAvailable(){return Promise.resolve(!1)}async connect(){gL.log("connect"),this._isConnected=zM.CONNECTED}async disconnect(){gL.log("disconnect"),this._isConnected=zM.NOT_CONNECTED}async send(e,t){if(t)return this.client.sendMessage(e,t);{const t=(await this.getPeers()).map((t=>this.client.sendMessage(e,t)));return(await Promise.all(t))[0]}}async addListener(e){gL.debug("addListener"),this.listeners.push(e)}async removeListener(e){gL.log("removeListener"),this.listeners=this.listeners.filter((t=>t!==e))}async getPeers(){return this.peerManager.getPeers()}async addPeer(e,t=!0){gL.log("addPeer","adding peer",e),await this.peerManager.addPeer(e),await this.listen(e.publicKey)}async removePeer(e){gL.log("removePeer","removing peer",e),await this.peerManager.removePeer(e.publicKey),this.client&&await this.client.unsubscribeFromEncryptedMessage(e.publicKey)}async removeAllPeers(){gL.log("removeAllPeers"),await this.peerManager.removeAllPeers(),this.client&&await this.client.unsubscribeFromEncryptedMessages()}async notifyListeners(e,t){0===this.listeners.length?gL.warn("notifyListeners","0 listeners notified!",this):gL.log("notifyListeners",`Notifying ${this.listeners.length} listeners`,this),this.listeners.forEach((r=>{r(e,t)}))}}class yL extends FM{prefix;constructor(e){super(),this.prefix=e}static async isSupported(){return Promise.resolve(Boolean("undefined"!==typeof window)&&Boolean(window.localStorage))}async get(e){const t=localStorage.getItem(this.getPrefixedKey(e));if(!t)return"object"===typeof $M[e]?JSON.parse(JSON.stringify($M[e])):$M[e];try{return JSON.parse(t)}catch(r){return t}}async set(e,t){return"string"===typeof t?localStorage.setItem(this.getPrefixedKey(e),t):localStorage.setItem(this.getPrefixedKey(e),JSON.stringify(t))}async delete(e){return Promise.resolve(localStorage.removeItem(this.getPrefixedKey(e)))}async subscribeToStorageChanged(e){window.addEventListener("storage",(t=>{t.key?e({eventType:"entryModified",key:this.getPrefixedKey(t.key),oldValue:t.oldValue,newValue:t.newValue}):e({eventType:"storageCleared",key:null,oldValue:null,newValue:null})}),!1)}getPrefixedKey(e){return this.prefix?`${this.prefix}-${e}`:e}}new hL("STORAGE");var bL=r(4872).Buffer;class wL{async serialize(e){const t=JSON.stringify(e);return bM.encode(bL.from(t))}async deserialize(e){if("string"!==typeof e)throw new Error("Encoded payload needs to be a string");return JSON.parse(bM.decode(e).toString())}}class xL{storageManager;constructor(e){this.storageManager=new iL(e,UM.APP_METADATA_LIST)}async getAppMetadataList(){return await this.storageManager.getAll()??[]}async getAppMetadata(e){return this.storageManager.getOne((t=>t.senderId===e))}async addAppMetadata(e){return this.storageManager.addOne(e,(t=>t.senderId===e.senderId))}async removeAppMetadata(e){return this.storageManager.remove((t=>t.senderId===e))}async removeAppMetadatas(e){return this.storageManager.remove((t=>e.includes(t.senderId)))}async removeAllAppMetadata(){return this.storageManager.removeAll()}}class _L{storageManager;constructor(e){this.storageManager=new iL(e,UM.PERMISSION_LIST)}async getPermissions(){return await this.storageManager.getAll()??[]}async getPermission(e){return this.storageManager.getOne((t=>t.accountIdentifier===e))}async addPermission(e){return this.storageManager.addOne(e,(t=>t.accountIdentifier===e.accountIdentifier&&t.senderId===e.senderId))}async removePermission(e){return this.storageManager.remove((t=>t.accountIdentifier===e))}async removePermissions(e){return this.storageManager.remove((t=>e.includes(t.accountIdentifier)))}async removeAllPermissions(){return this.storageManager.removeAll()}async hasPermission(e){return sL.hasPermission(e,this.getPermission.bind(this),this.getPermissions.bind(this))}}class SL{storageManager;constructor(e,t){this.storageManager=new iL(e,t)}async hasPeer(e){return!!await this.getPeer(e)}async getPeers(){return await this.storageManager.getAll()??[]}async getPeer(e){return this.storageManager.getOne((t=>t.publicKey===e))}async addPeer(e){return this.storageManager.addOne(e,(t=>t.publicKey===e.publicKey))}async removePeer(e){return this.storageManager.remove((t=>t.publicKey===e))}async removePeers(e){return this.storageManager.remove((t=>e.includes(t.publicKey)))}async removeAllPeers(){return this.storageManager.removeAll()}}var kL=r(347),EL=r(4872).Buffer;class AL{keyPair;constructor(e){this.keyPair=e}eventHandlers=new Map;async getPublicKey(){return EM(this.keyPair?.publicKey)}async getPublicKeyHash(){return AM(this.keyPair.publicKey)}async createCryptoBoxServer(e,t){return(0,kL.serverSessionKeys)({publicKey:(0,Ka.SH)(t.publicKey),secretKey:(0,Ka.zh)(t.secretKey)},(0,Ka.SH)(EL.from(e,"hex")))}async createCryptoBoxClient(e,t){return(0,kL.clientSessionKeys)({publicKey:(0,Ka.SH)(t.publicKey),secretKey:(0,Ka.zh)(t.secretKey)},(0,Ka.SH)(EL.from(e,"hex")))}async encryptMessageAsymmetric(e,t){return async function(e,t){const r=(0,Ka.SH)(kM.from(t)),n=(0,wM.generateKeyPair)(),i=new Wa.BLAKE2b(24).update(n.publicKey,32).update(r,32).digest(),o="string"===typeof e?(0,_M.cv)(e):e,a=(0,wM.box)(r,n.secretKey,i,o);return EM((0,SM.z)(n.publicKey,a))}(t,EL.from(e,"hex"))}}r(4872).Buffer;new hL("IndexedDBStorage");function PL(e,t){return function(){return e.apply(t,arguments)}}const{toString:OL}=Object.prototype,{getPrototypeOf:TL}=Object,CL=(e=>t=>{const r=OL.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),jL=e=>(e=e.toLowerCase(),t=>CL(t)===e),RL=e=>t=>typeof t===e,{isArray:IL}=Array,ML=RL("undefined");const LL=jL("ArrayBuffer");const NL=RL("string"),DL=RL("function"),zL=RL("number"),BL=e=>null!==e&&"object"===typeof e,UL=e=>{if("object"!==CL(e))return!1;const t=TL(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},FL=jL("Date"),$L=jL("File"),HL=jL("Blob"),VL=jL("FileList"),qL=jL("URLSearchParams");function KL(e,t,{allOwnKeys:r=!1}={}){if(null===e||"undefined"===typeof e)return;let n,i;if("object"!==typeof e&&(e=[e]),IL(e))for(n=0,i=e.length;n0;)if(n=r[i],t===n.toLowerCase())return n;return null}const GL="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self?self:"undefined"!==typeof window?window:global,ZL=e=>!ML(e)&&e!==GL;const YL=(e=>t=>e&&t instanceof e)("undefined"!==typeof Uint8Array&&TL(Uint8Array)),XL=jL("HTMLFormElement"),JL=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),QL=jL("RegExp"),eN=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};KL(r,((r,i)=>{let o;!1!==(o=t(r,i,e))&&(n[i]=o||r)})),Object.defineProperties(e,n)},tN="abcdefghijklmnopqrstuvwxyz",rN="0123456789",nN={DIGIT:rN,ALPHA:tN,ALPHA_DIGIT:tN+tN.toUpperCase()+rN};const iN=jL("AsyncFunction"),oN={isArray:IL,isArrayBuffer:LL,isBuffer:function(e){return null!==e&&!ML(e)&&null!==e.constructor&&!ML(e.constructor)&&DL(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"===typeof FormData&&e instanceof FormData||DL(e.append)&&("formdata"===(t=CL(e))||"object"===t&&DL(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&LL(e.buffer),t},isString:NL,isNumber:zL,isBoolean:e=>!0===e||!1===e,isObject:BL,isPlainObject:UL,isUndefined:ML,isDate:FL,isFile:$L,isBlob:HL,isRegExp:QL,isFunction:DL,isStream:e=>BL(e)&&DL(e.pipe),isURLSearchParams:qL,isTypedArray:YL,isFileList:VL,forEach:KL,merge:function e(){const{caseless:t}=ZL(this)&&this||{},r={},n=(n,i)=>{const o=t&&WL(r,i)||i;UL(r[o])&&UL(n)?r[o]=e(r[o],n):UL(n)?r[o]=e({},n):IL(n)?r[o]=n.slice():r[o]=n};for(let i=0,o=arguments.length;i(KL(t,((t,n)=>{r&&DL(t)?e[n]=PL(t,r):e[n]=t}),{allOwnKeys:n}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},toFlatObject:(e,t,r,n)=>{let i,o,a;const s={};if(t=t||{},null==e)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)a=i[o],n&&!n(a,e,t)||s[a]||(t[a]=e[a],s[a]=!0);e=!1!==r&&TL(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},kindOf:CL,kindOfTest:jL,endsWith:(e,t,r)=>{e=String(e),(void 0===r||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return-1!==n&&n===r},toArray:e=>{if(!e)return null;if(IL(e))return e;let t=e.length;if(!zL(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},forEachEntry:(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let n;for(;(n=r.next())&&!n.done;){const r=n.value;t.call(e,r[0],r[1])}},matchAll:(e,t)=>{let r;const n=[];for(;null!==(r=e.exec(t));)n.push(r);return n},isHTMLForm:XL,hasOwnProperty:JL,hasOwnProp:JL,reduceDescriptors:eN,freezeMethods:e=>{eN(e,((t,r)=>{if(DL(e)&&-1!==["arguments","caller","callee"].indexOf(r))return!1;const n=e[r];DL(n)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")}))}))},toObjectSet:(e,t)=>{const r={},n=e=>{e.forEach((e=>{r[e]=!0}))};return IL(e)?n(e):n(String(e).split(t)),r},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,r){return t.toUpperCase()+r})),noop:()=>{},toFiniteNumber:(e,t)=>(e=+e,Number.isFinite(e)?e:t),findKey:WL,global:GL,isContextDefined:ZL,ALPHABET:nN,generateString:(e=16,t=nN.ALPHA_DIGIT)=>{let r="";const{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r},isSpecCompliantForm:function(e){return!!(e&&DL(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),r=(e,n)=>{if(BL(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[n]=e;const i=IL(e)?[]:{};return KL(e,((e,t)=>{const o=r(e,n+1);!ML(o)&&(i[t]=o)})),t[n]=void 0,i}}return e};return r(e,0)},isAsyncFn:iN,isThenable:e=>e&&(BL(e)||DL(e))&&DL(e.then)&&DL(e.catch)};function aN(e,t,r,n,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),i&&(this.response=i)}oN.inherits(aN,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:oN.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const sN=aN.prototype,cN={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{cN[e]={value:e}})),Object.defineProperties(aN,cN),Object.defineProperty(sN,"isAxiosError",{value:!0}),aN.from=(e,t,r,n,i,o)=>{const a=Object.create(sN);return oN.toFlatObject(e,a,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),aN.call(a,e.message,t,r,n,i),a.cause=e,a.name=e.name,o&&Object.assign(a,o),a};const lN=aN;var uN=r(4872).Buffer;function dN(e){return oN.isPlainObject(e)||oN.isArray(e)}function hN(e){return oN.endsWith(e,"[]")?e.slice(0,-2):e}function fN(e,t,r){return e?e.concat(t).map((function(e,t){return e=hN(e),!r&&t?"["+e+"]":e})).join(r?".":""):t}const pN=oN.toFlatObject(oN,{},null,(function(e){return/^is[A-Z]/.test(e)}));const mN=function(e,t,r){if(!oN.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const n=(r=oN.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!oN.isUndefined(t[e])}))).metaTokens,i=r.visitor||l,o=r.dots,a=r.indexes,s=(r.Blob||"undefined"!==typeof Blob&&Blob)&&oN.isSpecCompliantForm(t);if(!oN.isFunction(i))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(oN.isDate(e))return e.toISOString();if(!s&&oN.isBlob(e))throw new lN("Blob is not supported. Use a Buffer instead.");return oN.isArrayBuffer(e)||oN.isTypedArray(e)?s&&"function"===typeof Blob?new Blob([e]):uN.from(e):e}function l(e,r,i){let s=e;if(e&&!i&&"object"===typeof e)if(oN.endsWith(r,"{}"))r=n?r:r.slice(0,-2),e=JSON.stringify(e);else if(oN.isArray(e)&&function(e){return oN.isArray(e)&&!e.some(dN)}(e)||(oN.isFileList(e)||oN.endsWith(r,"[]"))&&(s=oN.toArray(e)))return r=hN(r),s.forEach((function(e,n){!oN.isUndefined(e)&&null!==e&&t.append(!0===a?fN([r],n,o):null===a?r:r+"[]",c(e))})),!1;return!!dN(e)||(t.append(fN(i,r,o),c(e)),!1)}const u=[],d=Object.assign(pN,{defaultVisitor:l,convertValue:c,isVisitable:dN});if(!oN.isObject(e))throw new TypeError("data must be an object");return function e(r,n){if(!oN.isUndefined(r)){if(-1!==u.indexOf(r))throw Error("Circular reference detected in "+n.join("."));u.push(r),oN.forEach(r,(function(r,o){!0===(!(oN.isUndefined(r)||null===r)&&i.call(t,r,oN.isString(o)?o.trim():o,n,d))&&e(r,n?n.concat(o):[o])})),u.pop()}}(e),t};function gN(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function vN(e,t){this._pairs=[],e&&mN(e,this,t)}const yN=vN.prototype;yN.append=function(e,t){this._pairs.push([e,t])},yN.toString=function(e){const t=e?function(t){return e.call(this,t,gN)}:gN;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const bN=vN;function wN(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function xN(e,t,r){if(!t)return e;const n=r&&r.encode||wN,i=r&&r.serialize;let o;if(o=i?i(t,r):oN.isURLSearchParams(t)?t.toString():new bN(t,r).toString(n),o){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}const _N=class{constructor(){this.handlers=[]}use(e,t,r){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!r&&r.synchronous,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){oN.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},SN={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},kN={isBrowser:!0,classes:{URLSearchParams:"undefined"!==typeof URLSearchParams?URLSearchParams:bN,FormData:"undefined"!==typeof FormData?FormData:null,Blob:"undefined"!==typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},EN="undefined"!==typeof window&&"undefined"!==typeof document,AN=(PN="undefined"!==typeof navigator&&navigator.product,EN&&["ReactNative","NativeScript","NS"].indexOf(PN)<0);var PN;const ON="undefined"!==typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"===typeof self.importScripts,TN={...e,...kN};const CN=function(e){function t(e,r,n,i){let o=e[i++];if("__proto__"===o)return!0;const a=Number.isFinite(+o),s=i>=e.length;if(o=!o&&oN.isArray(n)?n.length:o,s)return oN.hasOwnProp(n,o)?n[o]=[n[o],r]:n[o]=r,!a;n[o]&&oN.isObject(n[o])||(n[o]=[]);return t(e,r,n[o],i)&&oN.isArray(n[o])&&(n[o]=function(e){const t={},r=Object.keys(e);let n;const i=r.length;let o;for(n=0;n{t(function(e){return oN.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),n,r,0)})),r}return null};const jN={transitional:SN,adapter:["xhr","http"],transformRequest:[function(e,t){const r=t.getContentType()||"",n=r.indexOf("application/json")>-1,i=oN.isObject(e);i&&oN.isHTMLForm(e)&&(e=new FormData(e));if(oN.isFormData(e))return n&&n?JSON.stringify(CN(e)):e;if(oN.isArrayBuffer(e)||oN.isBuffer(e)||oN.isStream(e)||oN.isFile(e)||oN.isBlob(e))return e;if(oN.isArrayBufferView(e))return e.buffer;if(oN.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(r.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return mN(e,new TN.classes.URLSearchParams,Object.assign({visitor:function(e,t,r,n){return TN.isNode&&oN.isBuffer(e)?(this.append(t,e.toString("base64")),!1):n.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((o=oN.isFileList(e))||r.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return mN(o?{"files[]":e}:e,t&&new t,this.formSerializer)}}return i||n?(t.setContentType("application/json",!1),function(e,t,r){if(oN.isString(e))try{return(t||JSON.parse)(e),oN.trim(e)}catch(n){if("SyntaxError"!==n.name)throw n}return(r||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||jN.transitional,r=t&&t.forcedJSONParsing,n="json"===this.responseType;if(e&&oN.isString(e)&&(r&&!this.responseType||n)){const r=!(t&&t.silentJSONParsing)&&n;try{return JSON.parse(e)}catch(i){if(r){if("SyntaxError"===i.name)throw lN.from(i,lN.ERR_BAD_RESPONSE,this,null,this.response);throw i}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:TN.classes.FormData,Blob:TN.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};oN.forEach(["delete","get","head","post","put","patch"],(e=>{jN.headers[e]={}}));const RN=jN,IN=oN.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),MN=Symbol("internals");function LN(e){return e&&String(e).trim().toLowerCase()}function NN(e){return!1===e||null==e?e:oN.isArray(e)?e.map(NN):String(e)}function DN(e,t,r,n,i){return oN.isFunction(n)?n.call(this,t,r):(i&&(t=r),oN.isString(t)?oN.isString(n)?-1!==t.indexOf(n):oN.isRegExp(n)?n.test(t):void 0:void 0)}class zN{constructor(e){e&&this.set(e)}set(e,t,r){const n=this;function i(e,t,r){const i=LN(t);if(!i)throw new Error("header name must be a non-empty string");const o=oN.findKey(n,i);(!o||void 0===n[o]||!0===r||void 0===r&&!1!==n[o])&&(n[o||t]=NN(e))}const o=(e,t)=>oN.forEach(e,((e,r)=>i(e,r,t)));return oN.isPlainObject(e)||e instanceof this.constructor?o(e,t):oN.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim())?o((e=>{const t={};let r,n,i;return e&&e.split("\n").forEach((function(e){i=e.indexOf(":"),r=e.substring(0,i).trim().toLowerCase(),n=e.substring(i+1).trim(),!r||t[r]&&IN[r]||("set-cookie"===r?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)})),t})(e),t):null!=e&&i(t,e,r),this}get(e,t){if(e=LN(e)){const r=oN.findKey(this,e);if(r){const e=this[r];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}(e);if(oN.isFunction(t))return t.call(this,e,r);if(oN.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=LN(e)){const r=oN.findKey(this,e);return!(!r||void 0===this[r]||t&&!DN(0,this[r],r,t))}return!1}delete(e,t){const r=this;let n=!1;function i(e){if(e=LN(e)){const i=oN.findKey(r,e);!i||t&&!DN(0,r[i],i,t)||(delete r[i],n=!0)}}return oN.isArray(e)?e.forEach(i):i(e),n}clear(e){const t=Object.keys(this);let r=t.length,n=!1;for(;r--;){const i=t[r];e&&!DN(0,this[i],i,e,!0)||(delete this[i],n=!0)}return n}normalize(e){const t=this,r={};return oN.forEach(this,((n,i)=>{const o=oN.findKey(r,i);if(o)return t[o]=NN(n),void delete t[i];const a=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,r)=>t.toUpperCase()+r))}(i):String(i).trim();a!==i&&delete t[i],t[a]=NN(n),r[a]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return oN.forEach(this,((r,n)=>{null!=r&&!1!==r&&(t[n]=e&&oN.isArray(r)?r.join(", "):r)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const r=new this(e);return t.forEach((e=>r.set(e))),r}static accessor(e){const t=(this[MN]=this[MN]={accessors:{}}).accessors,r=this.prototype;function n(e){const n=LN(e);t[n]||(!function(e,t){const r=oN.toCamelCase(" "+t);["get","set","has"].forEach((n=>{Object.defineProperty(e,n+r,{value:function(e,r,i){return this[n].call(this,t,e,r,i)},configurable:!0})}))}(r,e),t[n]=!0)}return oN.isArray(e)?e.forEach(n):n(e),this}}zN.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),oN.reduceDescriptors(zN.prototype,(({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[r]=e}}})),oN.freezeMethods(zN);const BN=zN;function UN(e,t){const r=this||RN,n=t||r,i=BN.from(n.headers);let o=n.data;return oN.forEach(e,(function(e){o=e.call(r,o,i.normalize(),t?t.status:void 0)})),i.normalize(),o}function FN(e){return!(!e||!e.__CANCEL__)}function $N(e,t,r){lN.call(this,null==e?"canceled":e,lN.ERR_CANCELED,t,r),this.name="CanceledError"}oN.inherits($N,lN,{__CANCEL__:!0});const HN=$N;const VN=TN.hasStandardBrowserEnv?{write(e,t,r,n,i,o){const a=[e+"="+encodeURIComponent(t)];oN.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),oN.isString(n)&&a.push("path="+n),oN.isString(i)&&a.push("domain="+i),!0===o&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function qN(e,t){return e&&!function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const KN=TN.hasStandardBrowserEnv?function(){const e=/(msie|trident)/i.test(navigator.userAgent),t=document.createElement("a");let r;function n(r){let n=r;return e&&(t.setAttribute("href",n),n=t.href),t.setAttribute("href",n),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return r=n(window.location.href),function(e){const t=oN.isString(e)?n(e):e;return t.protocol===r.protocol&&t.host===r.host}}():function(){return!0};const WN=function(e,t){e=e||10;const r=new Array(e),n=new Array(e);let i,o=0,a=0;return t=void 0!==t?t:1e3,function(s){const c=Date.now(),l=n[a];i||(i=c),r[o]=s,n[o]=c;let u=a,d=0;for(;u!==o;)d+=r[u++],u%=e;if(o=(o+1)%e,o===a&&(a=(a+1)%e),c-i{const o=i.loaded,a=i.lengthComputable?i.total:void 0,s=o-r,c=n(s);r=o;const l={loaded:o,total:a,progress:a?o/a:void 0,bytes:s,rate:c||void 0,estimated:c&&a&&o<=a?(a-o)/c:void 0,event:i};l[t?"download":"upload"]=!0,e(l)}}const ZN="undefined"!==typeof XMLHttpRequest&&function(e){return new Promise((function(t,r){let n=e.data;const i=BN.from(e.headers).normalize();let o,a,{responseType:s,withXSRFToken:c}=e;function l(){e.cancelToken&&e.cancelToken.unsubscribe(o),e.signal&&e.signal.removeEventListener("abort",o)}if(oN.isFormData(n))if(TN.hasStandardBrowserEnv||TN.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if(!1!==(a=i.getContentType())){const[e,...t]=a?a.split(";").map((e=>e.trim())).filter(Boolean):[];i.setContentType([e||"multipart/form-data",...t].join("; "))}let u=new XMLHttpRequest;if(e.auth){const t=e.auth.username||"",r=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(t+":"+r))}const d=qN(e.baseURL,e.url);function h(){if(!u)return;const n=BN.from("getAllResponseHeaders"in u&&u.getAllResponseHeaders());!function(e,t,r){const n=r.config.validateStatus;r.status&&n&&!n(r.status)?t(new lN("Request failed with status code "+r.status,[lN.ERR_BAD_REQUEST,lN.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r)):e(r)}((function(e){t(e),l()}),(function(e){r(e),l()}),{data:s&&"text"!==s&&"json"!==s?u.response:u.responseText,status:u.status,statusText:u.statusText,headers:n,config:e,request:u}),u=null}if(u.open(e.method.toUpperCase(),xN(d,e.params,e.paramsSerializer),!0),u.timeout=e.timeout,"onloadend"in u?u.onloadend=h:u.onreadystatechange=function(){u&&4===u.readyState&&(0!==u.status||u.responseURL&&0===u.responseURL.indexOf("file:"))&&setTimeout(h)},u.onabort=function(){u&&(r(new lN("Request aborted",lN.ECONNABORTED,e,u)),u=null)},u.onerror=function(){r(new lN("Network Error",lN.ERR_NETWORK,e,u)),u=null},u.ontimeout=function(){let t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const n=e.transitional||SN;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),r(new lN(t,n.clarifyTimeoutError?lN.ETIMEDOUT:lN.ECONNABORTED,e,u)),u=null},TN.hasStandardBrowserEnv&&(c&&oN.isFunction(c)&&(c=c(e)),c||!1!==c&&KN(d))){const t=e.xsrfHeaderName&&e.xsrfCookieName&&VN.read(e.xsrfCookieName);t&&i.set(e.xsrfHeaderName,t)}void 0===n&&i.setContentType(null),"setRequestHeader"in u&&oN.forEach(i.toJSON(),(function(e,t){u.setRequestHeader(t,e)})),oN.isUndefined(e.withCredentials)||(u.withCredentials=!!e.withCredentials),s&&"json"!==s&&(u.responseType=e.responseType),"function"===typeof e.onDownloadProgress&&u.addEventListener("progress",GN(e.onDownloadProgress,!0)),"function"===typeof e.onUploadProgress&&u.upload&&u.upload.addEventListener("progress",GN(e.onUploadProgress)),(e.cancelToken||e.signal)&&(o=t=>{u&&(r(!t||t.type?new HN(null,e,u):t),u.abort(),u=null)},e.cancelToken&&e.cancelToken.subscribe(o),e.signal&&(e.signal.aborted?o():e.signal.addEventListener("abort",o)));const f=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(d);f&&-1===TN.protocols.indexOf(f)?r(new lN("Unsupported protocol "+f+":",lN.ERR_BAD_REQUEST,e)):u.send(n||null)}))},YN={http:null,xhr:ZN};oN.forEach(YN,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(r){}Object.defineProperty(e,"adapterName",{value:t})}}));const XN=e=>`- ${e}`,JN=e=>oN.isFunction(e)||null===e||!1===e,QN=e=>{e=oN.isArray(e)?e:[e];const{length:t}=e;let r,n;const i={};for(let o=0;o`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let r=t?e.length>1?"since :\n"+e.map(XN).join("\n"):" "+XN(e[0]):"as no adapter specified";throw new lN("There is no suitable adapter to dispatch the request "+r,"ERR_NOT_SUPPORT")}return n};function eD(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new HN(null,e)}function tD(e){eD(e),e.headers=BN.from(e.headers),e.data=UN.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return QN(e.adapter||RN.adapter)(e).then((function(t){return eD(e),t.data=UN.call(e,e.transformResponse,t),t.headers=BN.from(t.headers),t}),(function(t){return FN(t)||(eD(e),t&&t.response&&(t.response.data=UN.call(e,e.transformResponse,t.response),t.response.headers=BN.from(t.response.headers))),Promise.reject(t)}))}const rD=e=>e instanceof BN?e.toJSON():e;function nD(e,t){t=t||{};const r={};function n(e,t,r){return oN.isPlainObject(e)&&oN.isPlainObject(t)?oN.merge.call({caseless:r},e,t):oN.isPlainObject(t)?oN.merge({},t):oN.isArray(t)?t.slice():t}function i(e,t,r){return oN.isUndefined(t)?oN.isUndefined(e)?void 0:n(void 0,e,r):n(e,t,r)}function o(e,t){if(!oN.isUndefined(t))return n(void 0,t)}function a(e,t){return oN.isUndefined(t)?oN.isUndefined(e)?void 0:n(void 0,e):n(void 0,t)}function s(r,i,o){return o in t?n(r,i):o in e?n(void 0,r):void 0}const c={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(e,t)=>i(rD(e),rD(t),!0)};return oN.forEach(Object.keys(Object.assign({},e,t)),(function(n){const o=c[n]||i,a=o(e[n],t[n],n);oN.isUndefined(a)&&o!==s||(r[n]=a)})),r}const iD="1.6.5",oD={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{oD[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}}));const aD={};oD.transitional=function(e,t,r){function n(e,t){return"[Axios v1.6.5] Transitional option '"+e+"'"+t+(r?". "+r:"")}return(r,i,o)=>{if(!1===e)throw new lN(n(i," has been removed"+(t?" in "+t:"")),lN.ERR_DEPRECATED);return t&&!aD[i]&&(aD[i]=!0,console.warn(n(i," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(r,i,o)}};const sD={assertOptions:function(e,t,r){if("object"!==typeof e)throw new lN("options must be an object",lN.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let i=n.length;for(;i-- >0;){const o=n[i],a=t[o];if(a){const t=e[o],r=void 0===t||a(t,o,e);if(!0!==r)throw new lN("option "+o+" must be "+r,lN.ERR_BAD_OPTION_VALUE)}else if(!0!==r)throw new lN("Unknown option "+o,lN.ERR_BAD_OPTION)}},validators:oD},cD=sD.validators;class lD{constructor(e){this.defaults=e,this.interceptors={request:new _N,response:new _N}}request(e,t){"string"===typeof e?(t=t||{}).url=e:t=e||{},t=nD(this.defaults,t);const{transitional:r,paramsSerializer:n,headers:i}=t;void 0!==r&&sD.assertOptions(r,{silentJSONParsing:cD.transitional(cD.boolean),forcedJSONParsing:cD.transitional(cD.boolean),clarifyTimeoutError:cD.transitional(cD.boolean)},!1),null!=n&&(oN.isFunction(n)?t.paramsSerializer={serialize:n}:sD.assertOptions(n,{encode:cD.function,serialize:cD.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&oN.merge(i.common,i[t.method]);i&&oN.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete i[e]})),t.headers=BN.concat(o,i);const a=[];let s=!0;this.interceptors.request.forEach((function(e){"function"===typeof e.runWhen&&!1===e.runWhen(t)||(s=s&&e.synchronous,a.unshift(e.fulfilled,e.rejected))}));const c=[];let l;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let u,d=0;if(!s){const e=[tD.bind(this),void 0];for(e.unshift.apply(e,a),e.push.apply(e,c),u=e.length,l=Promise.resolve(t);d{if(!r._listeners)return;let t=r._listeners.length;for(;t-- >0;)r._listeners[t](e);r._listeners=null})),this.promise.then=e=>{let t;const n=new Promise((e=>{r.subscribe(e),t=e})).then(e);return n.cancel=function(){r.unsubscribe(t)},n},e((function(e,n,i){r.reason||(r.reason=new HN(e,n,i),t(r.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;const t=new dD((function(t){e=t}));return{token:t,cancel:e}}}const hD=dD;const fD={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(fD).forEach((([e,t])=>{fD[t]=e}));const pD=fD;const mD=function e(t){const r=new uD(t),n=PL(uD.prototype.request,r);return oN.extend(n,uD.prototype,r,{allOwnKeys:!0}),oN.extend(n,r,null,{allOwnKeys:!0}),n.create=function(r){return e(nD(t,r))},n}(RN);mD.Axios=uD,mD.CanceledError=HN,mD.CancelToken=hD,mD.isCancel=FN,mD.VERSION=iD,mD.toFormData=mN,mD.AxiosError=lN,mD.Cancel=mD.CanceledError,mD.all=function(e){return Promise.all(e)},mD.spread=function(e){return function(t){return e.apply(null,t)}},mD.isAxiosError=function(e){return oN.isObject(e)&&!0===e.isAxiosError},mD.mergeConfig=nD,mD.AxiosHeaders=BN,mD.formToJSON=e=>CN(oN.isHTMLForm(e)?new FormData(e):e),mD.getAdapter=QN,mD.HttpStatusCode=pD,mD.default=mD;const gD=mD;var vD;!function(e){e.TEXT="m.text"}(vD||(vD={}));class yD{type;sender;content;timestamp;static from(e){if(wD(e))return new yD(e.content.msgtype,e.sender,e.content.body,e.origin_server_ts)}constructor(e,t,r,n){this.type=e,this.sender=t,this.content=r,this.timestamp=n}}const bD=e=>"m.room.message"===e.type,wD=e=>bD(e)&&e.content instanceof Object&&"msgtype"in e.content&&e.content.msgtype===vD.TEXT;var xD;!function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.JOINED=1]="JOINED",e[e.INVITED=2]="INVITED",e[e.LEFT=3]="LEFT"}(xD||(xD={}));class _D{id;status;members;messages;static fromSync(e){if(!e)return[];function t(e,t){return Object.entries(e).map((([e,r])=>t(e,r)))}return[...t(e.join??{},_D.fromJoined),...t(e.invite??{},_D.fromInvited),...t(e.leave??{},_D.fromLeft)]}static from(e,t){return"string"===typeof e?new _D(e,t||xD.UNKNOWN):void 0!==t?new _D(e.id,t,e.members,e.messages):e}static merge(e,t){return t&&t.id===e.id?new _D(e.id,e.status,[...t.members,...e.members].filter(((e,t,r)=>r.indexOf(e)===t)),[...t.messages,...e.messages]):_D.from(e)}static fromJoined(e,t){const r=[...t.state.events,...t.timeline.events],n=_D.getMembersFromEvents(r),i=_D.getMessagesFromEvents(r);return new _D(e,xD.JOINED,n,i)}static fromInvited(e,t){const r=_D.getMembersFromEvents(t.invite_state.events);return new _D(e,xD.INVITED,r)}static fromLeft(e,t){const r=[...t.state.events,...t.timeline.events],n=_D.getMembersFromEvents(r),i=_D.getMessagesFromEvents(r);return new _D(e,xD.LEFT,n,i)}static getMembersFromEvents(e){return _D.getUniqueEvents(e.filter((e=>(e=>"m.room.create"===e.type&&e.content instanceof Object&&"creator"in e.content)(e)||(e=>"m.room.member"===e.type&&e.content instanceof Object&&"membership"in e.content&&"join"===e.content.membership)(e)))).map((e=>e.sender)).filter(((e,t,r)=>r.indexOf(e)===t))}static getMessagesFromEvents(e){return _D.getUniqueEvents(e.filter(bD)).map((e=>yD.from(e))).filter(Boolean)}static getUniqueEvents(e){const t={},r=[];return e.forEach(((e,n)=>{const i=e.event_id;void 0!==i&&i in t||(void 0!==i&&(t[i]=n),r.push(e))})),r}constructor(e,t=xD.UNKNOWN,r=[],n=[]){this.id=e,this.status=t,this.members=r,this.messages=n}}const SD=["syncToken","rooms"];class kD{storage;state={isRunning:!1,userId:void 0,deviceId:void 0,txnNo:0,accessToken:void 0,syncToken:void 0,pollingTimeout:void 0,pollingRetries:0,rooms:{}};onStateChangedListeners=new Map;waitReadyPromise;constructor(e){this.storage=e,this.waitReadyPromise=new Promise((async(e,t)=>{try{await this.initFromStorage(),e()}catch(r){t(r)}}))}get(e){return this.state[e]}getRoom(e){const t=_D.from(e,xD.UNKNOWN);return this.state.rooms[t.id]||t}async update(e){await this.waitReady();const t=Object.assign({},this.state);this.setState(e),this.updateStorage(e),this.notifyListeners(t,this.state,e)}onStateChanged(e,...t){t.length>0?t.forEach((t=>{this.onStateChangedListeners.set(t,e)})):this.onStateChangedListeners.set("all",e)}async waitReady(){return this.waitReadyPromise}async initFromStorage(){const e=await this.storage.get(UM.MATRIX_PRESERVED_STATE);this.setState(e)}prepareData(e){const t=["rooms"].some((t=>void 0!==e[t]))?JSON.parse(JSON.stringify(e)):e;return Object.values(t.rooms||{}).forEach((e=>{e.messages=[]})),t}updateStorage(e){const t=Object.entries(e).filter((([e,t])=>SD.includes(e)&&Boolean(t)));if(t.length>0){const e={};SD.forEach((t=>{e[t]=this.state[t]})),this.storage.set(UM.MATRIX_PRESERVED_STATE,this.prepareData(e))}}setState(e){this.state={isRunning:e.isRunning||this.state.isRunning,userId:e.userId||this.state.userId,deviceId:e.deviceId||this.state.deviceId,txnNo:e.txnNo||this.state.txnNo,accessToken:e.accessToken||this.state.accessToken,syncToken:e.syncToken||this.state.syncToken,pollingTimeout:e.pollingTimeout||this.state.pollingTimeout,pollingRetries:e.pollingRetries||this.state.pollingRetries,rooms:this.mergeRooms(this.state.rooms,e.rooms)}}mergeRooms(e,t){if(!t)return e;const r=Array.isArray(t)?t:Object.values(t),n=Object.assign({},e);return r.forEach((t=>{n[t.id]=_D.merge(t,e[t.id])})),n}notifyListeners(e,t,r){const n=this.onStateChangedListeners.get("all");n&&n(e,t,r),mM(r).filter((e=>void 0!==r[e])).forEach((n=>{const i=this.onStateChangedListeners.get(n);i&&i(e,t,r)}))}}const ED=new hL("MatrixHttpClient");class AD{baseUrl;cancelTokenSource;constructor(e){this.baseUrl=e,this.cancelTokenSource=gD.CancelToken.source()}async get(e,t,r){return this.send("GET",e,r,t)}async post(e,t,r,n){return this.send("POST",e,r,n,t)}async put(e,t,r,n){return this.send("PUT",e,r,n,t)}async cancelAllRequests(){return this.cancelTokenSource.cancel("Manually cancelled")}async send(e,t,r,n,i){const o=r?this.getHeaders(r):void 0,a=n?this.getParams(n):void 0;let s;try{s=await gD.request({method:e,url:t,baseURL:this.apiUrl("/_matrix/client/r0"),headers:o,data:i,params:a,cancelToken:this.cancelTokenSource.token})}catch(c){const e=c;throw ED.error("send",e.code,e.message,e.response.data),c.response.data}return s.data}getHeaders(e){const t={},r=[];if(e.accessToken&&r.push(["Authorization",`Bearer ${e.accessToken}`]),0!==r.length){for(const[e,n]of r)t[e]=n;return t}}getParams(e){if(!e)return;const t=Object.assign(e,{});return mM(t).forEach((e=>void 0===t[e]&&delete t[e])),t}apiUrl(...e){return[this.baseUrl.endsWith("/")?this.baseUrl.substr(0,this.baseUrl.length-1):this.baseUrl,...e.map((e=>e.startsWith("/")?e.substr(1):e))].join("/")}}class PD{httpClient;constructor(e){this.httpClient=e}async createRoom(e,t={}){return this.httpClient.post("/createRoom",t,{accessToken:e})}async inviteToRoom(e,t,r){return r.status!==xD.JOINED&&r.status!==xD.UNKNOWN?Promise.reject(`User is not a member of room ${r.id}.`):this.httpClient.post(`/rooms/${encodeURIComponent(r.id)}/invite`,{user_id:t},{accessToken:e})}async joinRoom(e,t){return t.status===xD.JOINED?Promise.resolve({room_id:t.id}):this.httpClient.post(`/rooms/${encodeURIComponent(t.id)}/join`,{},{accessToken:e})}async getJoinedRooms(e){return this.httpClient.get("/joined_rooms",void 0,{accessToken:e})}}class OD{httpClient;constructor(e){this.httpClient=e}async login(e,t,r){return this.httpClient.post("/login",{type:"m.login.password",identifier:{type:"m.id.user",user:e},password:t,device_id:r})}}class TD{httpClient;cachedPromises=new Map;constructor(e){this.httpClient=e}async sync(e,t){return this.withCache("sync",(()=>this.httpClient.get("/sync",{timeout:t?t.pollingTimeout:void 0,since:t?t.syncToken:void 0},{accessToken:e})))}async sendMessage(e,t,r,n){return new Promise(((i,o)=>this.scheduleEvent({accessToken:e,roomId:t,type:"m.room.message",content:r,txnId:n,onSuccess:i,onError:o})))}scheduleEvent(e){this.sendEvent(e)}async sendEvent(e){const{roomId:t,type:r,txnId:n,content:i,accessToken:o}=e;try{const a=await this.httpClient.put(`/rooms/${encodeURIComponent(t)}/send/${r}/${encodeURIComponent(n)}`,i,{accessToken:o});e.onSuccess(a)}catch(a){e.onError(a)}}withCache(e,t){let r=this.cachedPromises.get(e);return r||(r=t().finally((()=>{this.cachedPromises.delete(e)})),this.cachedPromises.set(e,r)),r}}class CD{events={};on(e,t){return"object"!==typeof this.events[e]&&(this.events[e]=[]),this.events[e].push(t),()=>this.removeListener(e,t)}removeListener(e,t){if("object"!==typeof this.events[e])return;if(!t)return void(this.events[e]=[]);const r=this.events[e].indexOf(t);r>-1&&this.events[e].splice(r,1)}removeAllListeners(){Object.keys(this.events).forEach((e=>this.events[e].splice(0,this.events[e].length)))}emit(e,...t){"object"===typeof this.events[e]&&[...this.events[e]].forEach((e=>e.apply(this,t)))}once(e,t){const r=this.on(e,((...e)=>{r(),t.apply(this,e)}));return r}}var jD;!function(e){e.INVITE="invite",e.MESSAGE="message"}(jD||(jD={}));class RD extends CD{eventEmitProviders=new Map([[jD.INVITE,()=>[this.isInvite,this.emitInvite.bind(this)]],[jD.MESSAGE,()=>[this.isMessage,this.emitMessage.bind(this)]]]);onStateChanged(e,t,r){for(const n of mM(jD))this.emitIfEvent(jD[n],r)}emitIfEvent(e,t){const r=this.eventEmitProviders.get(e);if(r){const[n,i]=r();n(t)&&i(e,t)}}emitClientEvent(e,t,r){this.emit(e,{type:e,content:t,timestamp:r})}isInvite(e){return!!e.rooms&&e.rooms.some((e=>e.status===xD.INVITED))}emitInvite(e,t){t.rooms.filter((e=>e.status===xD.INVITED)).map((e=>[e.id,e.members])).forEach((([t,r])=>{this.emitClientEvent(e,{roomId:t,members:r})}))}isMessage(e){return!!e.rooms&&e.rooms.some((e=>e.messages.length>0))}emitMessage(e,t){t.rooms.filter((e=>e.messages.length>0)).map((e=>e.messages.map((t=>[e.id,t,t.timestamp])))).reduce(((e,t)=>e.concat(t)),[]).forEach((([t,r,n])=>{this.emitClientEvent(e,{roomId:t,message:r},n)}))}}const ID=new hL("MatrixClient");class MD{store;eventEmitter;userService;roomService;eventService;httpClient;isActive=!0;_isReady=new yM;constructor(e,t,r,n,i,o){this.store=e,this.eventEmitter=t,this.userService=r,this.roomService=n,this.eventService=i,this.httpClient=o,this.store.onStateChanged(((e,t,r)=>{this.eventEmitter.onStateChanged(e,t,r)}),"rooms")}static create(e){const t=new kD(e.storage),r=new RD,n=new AD(e.baseUrl),i=new OD(n),o=new PD(n),a=new TD(n);return new MD(t,r,i,o,a,n)}get joinedRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===xD.JOINED)))}))}get invitedRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===xD.INVITED)))}))}get leftRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===xD.LEFT)))}))}async start(e){const t=await this.userService.login(e.id,e.password,e.deviceId);await this.store.update({accessToken:t.access_token});const r=new Promise((async(e,t)=>{await this.poll(0,(async t=>{this.store.get("isRunning")||e(),await this.store.update({isRunning:!0,syncToken:t.next_batch,pollingTimeout:3e4,pollingRetries:0,rooms:_D.fromSync(t.rooms)})}),(async e=>{this.store.get("isRunning")||t(e),await this.store.update({isRunning:!1,pollingRetries:this.store.get("pollingRetries")+1})}))}));return r.then((()=>{this._isReady.resolve()})).catch(console.error),r}async isConnected(){return this._isReady.promise}async stop(){return ID.log("MATRIX CLIENT STOPPED"),this.isActive=!1,this._isReady=new yM,this.httpClient.cancelAllRequests()}subscribe(e,t){this.eventEmitter.on(e,t)}unsubscribe(e,t){t&&this.eventEmitter.removeListener(e,t)}unsubscribeAll(e){this.eventEmitter.removeListener(e)}async getRoomById(e){return await this.isConnected(),this.store.getRoom(e)}async createTrustedPrivateRoom(...e){return await this.isConnected(),this.requiresAuthorization("createRoom",(async t=>(await this.roomService.createRoom(t,{room_version:"5",invite:e,preset:"public_chat",is_direct:!0})).room_id))}async inviteToRooms(e,...t){await this.isConnected(),await this.requiresAuthorization("invite",(r=>Promise.all(t.map((t=>{const n=this.store.getRoom(t);this.roomService.inviteToRoom(r,e,n).catch((e=>ID.warn("inviteToRooms",e)))})))))}async joinRooms(...e){await this.isConnected(),await this.requiresAuthorization("join",(t=>Promise.all(e.map((e=>{const r=this.store.getRoom(e);return this.roomService.joinRoom(t,r)})))))}async sendTextMessage(e,t){await this.isConnected(),await this.requiresAuthorization("send",(async r=>{const n=await this.createTxnId();return this.eventService.sendMessage(r,e,{msgtype:"m.text",body:t},n)}))}async poll(e,t,r){const n=this.store,i=this.sync.bind(this),o=async(a,s)=>{let c=0;try{const e=await i();t(e)}catch(l){r(l),c=n.get("pollingRetries"),this.isActive&&ID.log(`Retry syncing... ${c} retries so far`)}finally{this.isActive?setTimeout((async()=>{await o(a,s)}),c>3?5e3+e:e):s(new Error("Syncing stopped manually."))}};return new Promise(o)}async sync(){return this.requiresAuthorization("sync",(async e=>this.eventService.sync(e,{pollingTimeout:this.store.get("pollingTimeout"),syncToken:this.store.get("syncToken")})))}async requiresAuthorization(e,t){const r=this.store.get("accessToken");return r?t(r):Promise.reject(`${e} requires authorization but no access token has been provided.`)}async createTxnId(){const e=(new Date).getTime(),t=this.store.get("txnNo");return await this.store.update({txnNo:t+1}),`m${e}.${t}`}}var LD=r(4872).Buffer;const ND=new hL("P2PCommunicationClient"),DD={[WM.EUROPE_WEST]:["beacon-node-1.diamond.papers.tech","beacon-node-1.sky.papers.tech","beacon-node-2.sky.papers.tech","beacon-node-1.hope.papers.tech","beacon-node-1.hope-2.papers.tech","beacon-node-1.hope-3.papers.tech","beacon-node-1.hope-4.papers.tech","beacon-node-1.hope-5.papers.tech"],[WM.NORTH_AMERICA_EAST]:["beacon-node-1.beacon-server-1.papers.tech"],[WM.NORTH_AMERICA_WEST]:["beacon-node-1.beacon-server-2.papers.tech"],[WM.ASIA_EAST]:["beacon-node-1.beacon-server-3.papers.tech"],[WM.AUSTRALIA]:["beacon-node-1.beacon-server-4.papers.tech"]},zD=e=>new Promise((t=>setTimeout(t,e)));class BD extends AL{name;replicationCount;storage;iconUrl;appUrl;client=new yM;initialEvent;initialListener;selectedRegion;ENABLED_RELAY_SERVERS;relayServer;activeListeners=new Map;ignoredRooms=[];loginCounter=0;constructor(e,t,r,n,i,o,a){super(t),this.name=e,this.replicationCount=r,this.storage=n,this.iconUrl=o,this.appUrl=a,ND.log("constructor","P2PCommunicationClient created"),this.ENABLED_RELAY_SERVERS=DD,i&&(this.ENABLED_RELAY_SERVERS={...DD,...i})}async getPairingRequestInfo(){const e=new HM(await CM(),this.name,await this.getPublicKey(),"3",(await this.getRelayServer()).server);return this.iconUrl&&(e.icon=this.iconUrl),this.appUrl&&(e.appUrl=this.appUrl),e}async getPairingResponseInfo(e){const t=new GM(e.id,this.name,await this.getPublicKey(),e.version,(await this.getRelayServer()).server);return this.iconUrl&&(t.icon=this.iconUrl),this.appUrl&&(t.appUrl=this.appUrl),t}async findBestRegionAndGetServer(){if(this.selectedRegion)return this.relayServer?.promiseResult;const e=Object.keys(this.ENABLED_RELAY_SERVERS),t=[],r=new yM;let n=0;const i=new yM;e.forEach((e=>{const o=this.ENABLED_RELAY_SERVERS[e]??[];if(0===o.length)return;n+=2;const a=(o=!0)=>{const c=Date.now();Promise.race([this.getBeaconInfo(s),i.promise]).then((i=>{"boolean"!==typeof i&&(t.push({time:Date.now()-c,server:s,region:e,result:i}),t.length>=n&&r.resolve(void 0),o||a(!0))}))},s=o[Math.floor(Math.random()*o.length)];a(!1)})),await Promise.race([r.promise,zD(1e3)]);let o=0;for(;t.length<=0;){if(o>=100)throw new Error("No server responded.");await zD(50),o++}i.resolve(!0);const a=t.reduce(((e,t)=>e.time0){const t=await this.getBeaconInfo(e);return this.relayServer.resolve({server:e,timestamp:t.timestamp,localTimestamp:(new Date).getTime()}),{server:e,timestamp:t.timestamp}}const t=await this.findBestRegionAndGetServer();if(!t)throw new Error("No servers found");return this.storage.set(UM.MATRIX_SELECTED_NODE,t.server).catch((e=>ND.log(e))),this.relayServer.resolve({server:t.server,timestamp:t.timestamp,localTimestamp:(new Date).getTime()}),{server:t.server,timestamp:t.timestamp}}async getBeaconInfo(e){return gD.get(`https://${e}/_synapse/client/beacon/info`).then((e=>({region:e.data.region,known_servers:e.data.known_servers,timestamp:Math.floor(e.data.timestamp)})))}async tryJoinRooms(e,t=1){try{await(await this.client.promise).joinRooms(e)}catch(r){t<=10&&"M_FORBIDDEN"===r.errcode?(ND.log("Retrying to join...",r),setTimeout((async()=>{await this.tryJoinRooms(e,t+1)}),200)):ND.log(`Failed to join after ${t} tries.`,r)}}async start(){ND.log("start","starting client"),ND.log("start","connecting to server");const e=await this.getRelayServer(),t=MD.create({baseUrl:`https://${e.server}`,storage:this.storage});if(this.initialListener=async e=>{this.initialEvent&&this.initialEvent.timestamp&&e&&e.timestamp?this.initialEvent.timestamp{let t;1===e.content.members.length&&(t=e.content.members[0]),await this.tryJoinRooms(e.content.roomId),t&&(await this.updateRelayServer(t),await this.updatePeerRoom(t,e.content.roomId))})),!e.timestamp)throw new Error("No timestamp received from relay server");const r=Math.floor(e.timestamp),n=`login:${Math.floor(r/300)}`;ND.log("start",`login ${n}, ${await this.getPublicKeyHash()} on ${e.server}`);const i=(0,Wa.hash)((0,_M.cv)(n),32),o=this.keyPair.secretKey??this.keyPair.privateKey,a=(0,Ka.Xx)(o,i);try{await t.start({id:await this.getPublicKeyHash(),password:`ed:${EM(a)}:${await this.getPublicKey()}`,deviceId:EM(this.keyPair.publicKey)})}catch(s){if(ND.error("start","Could not log in, retrying"),await this.reset(),!this.selectedRegion)throw new Error("No region selected.");if(this.loginCounter<=(this.ENABLED_RELAY_SERVERS[this.selectedRegion]??[]).length)return this.loginCounter++,void this.start();throw ND.error("start","Tried to log in to every known beacon node, but no login was successful."),new Error("Could not connect to any beacon nodes. Try again later.")}ND.log("start","login successful, client is ready"),this.client.resolve(t)}async stop(){ND.log("stop","stopping client"),this.client.isResolved()&&await(await this.client.promise).stop().catch((e=>ND.error(e))),await this.reset()}async reset(){ND.log("reset","resetting connection"),await this.storage.delete(UM.MATRIX_PEER_ROOM_IDS).catch((e=>ND.log(e))),await this.storage.delete(UM.MATRIX_PRESERVED_STATE).catch((e=>ND.log(e))),await this.storage.delete(UM.MATRIX_SELECTED_NODE).catch((e=>ND.log(e))),this.relayServer=void 0,this.client=new yM,this.initialEvent=void 0,this.initialListener=void 0}async listenForEncryptedMessage(e,t){if(this.activeListeners.has(e))return;ND.log("listenForEncryptedMessage",`start listening for encrypted messages from publicKey ${e}`);const r=await this.createCryptoBoxServer(e,this.keyPair),n=async n=>{if(this.isTextMessage(n.content)&&await this.isSender(n,e)){let o;await this.updateRelayServer(n.content.message.sender),await this.updatePeerRoom(n.content.message.sender,n.content.roomId);try{o=LD.from(n.content.message.content,"hex")}catch{}if(o&&o.length>=40)try{const n=await async function(e,t){const r=e.slice(0,24),n=e.slice(24),i=(0,wM.openSecretBox)(t,r,n);if(!i)throw new Error("Decryption failed");return kM.from(i).toString("utf8")}(o,r.receive);ND.log("listenForEncryptedMessage",`received a message from ${e}`,n),t(n)}catch(i){}}};this.activeListeners.set(e,n),(await this.client.promise).subscribe(jD.MESSAGE,n);const i=this.initialEvent;i&&i.timestamp&&(new Date).getTime()-i.timestamp<3e5?(ND.log("listenForEncryptedMessage","Handling previous event"),await n(i)):ND.log("listenForEncryptedMessage","No previous event found");const o=this.initialListener;o&&(await this.client.promise).unsubscribe(jD.MESSAGE,o),this.initialListener=void 0,this.initialEvent=void 0}async unsubscribeFromEncryptedMessage(e){const t=this.activeListeners.get(e);t&&((await this.client.promise).unsubscribe(jD.MESSAGE,t),this.activeListeners.delete(e))}async unsubscribeFromEncryptedMessages(){(await this.client.promise).unsubscribeAll(jD.MESSAGE),this.activeListeners.clear()}async sendMessage(e,t){const r=await this.createCryptoBoxClient(t.publicKey,this.keyPair),n=OM(await AM(LD.from(t.publicKey,"hex")),t.relayServer),i=await this.getRelevantRoom(n);await this.waitForJoin(i);const o=await async function(e,t){const r=kM.from((0,xM.randomBytes)(24));return EM(kM.concat([r,kM.from((0,wM.secretBox)(t,r,kM.from(e,"utf8")))]))}(e,r.send);ND.log("sendMessage","sending encrypted message",t.publicKey,i,e),(await this.client.promise).sendTextMessage(i,o).catch((async e=>{if("M_FORBIDDEN"===e.errcode){ND.log("sendMessage","M_FORBIDDEN",i,e),await this.deleteRoomIdFromRooms(i);const t=await this.getRelevantRoom(n);ND.log("sendMessage","Old room deleted, new room created",t),(await this.client.promise).sendTextMessage(t,o).catch((async e=>{ND.log("sendMessage","inner error",t,e)}))}else ND.log("sendMessage","unexpected error",e)}))}async updatePeerRoom(e,t){ND.log("updatePeerRoom",e,t);const r=e.split(":");if(r.length<2||!r[0].startsWith("@"))throw new Error("Invalid sender");const n=await this.storage.get(UM.MATRIX_PEER_ROOM_IDS),i=n[e];i===t&&ND.debug("updatePeerRoom","rooms are the same, not updating"),ND.debug("updatePeerRoom","current room",i,"new room",t),i&&i[1]&&(ND.log("updatePeerRoom",`adding room "${i[1]}" to ignored array`),this.ignoredRooms.push(i[1])),n[e]=t,await this.storage.set(UM.MATRIX_PEER_ROOM_IDS,n)}async deleteRoomIdFromRooms(e){const t=await this.storage.get(UM.MATRIX_PEER_ROOM_IDS),r=Object.entries(t).filter((t=>t[1]!==e)).reduce(((e,t)=>({...e,[t[0]]:t[1]})),{});await this.storage.set(UM.MATRIX_PEER_ROOM_IDS,r),this.ignoredRooms.push(e)}async listenForChannelOpening(e){ND.debug("listenForChannelOpening"),(await this.client.promise).subscribe(jD.MESSAGE,(async t=>{if(this.isTextMessage(t.content)&&await this.isChannelOpenMessage(t.content)){ND.log("listenForChannelOpening","channel opening received, trying to decrypt",JSON.stringify(t)),await this.updateRelayServer(t.content.message.sender),await this.updatePeerRoom(t.content.message.sender,t.content.roomId);const n=t.content.message.content.split(":"),i=LD.from(n[n.length-1],"hex");if(i.length>=40)try{const t=JSON.parse(await async function(e,t,r){const n=(0,Ka.zh)(kM.from(r)),i=(0,Ka.SH)(kM.from(t)),o="string"===typeof e?(0,_M.cv)(e):e,a=o.slice(0,32),s=o.slice(32),c=new Wa.BLAKE2b(24).update(a,32).update(i,32).digest(),l=(0,wM.openBox)(a,n,c,s);if(!l)throw new Error("Decryption failed");return kM.from(l).toString()}(i,this.keyPair.publicKey,this.keyPair.secretKey));ND.log("listenForChannelOpening","channel opening received and decrypted",JSON.stringify(t)),e({...t,senderId:await uL(t.publicKey)})}catch(r){}}}))}async waitForJoin(e,t=0){const r=await(await this.client.promise).getRoomById(e);if(ND.log("waitForJoin",`Currently ${r.members.length} members, we need at least 2`),!(r.members.length>=2)){if(t<=200)return ND.log(`Waiting for join... Try: ${t}`),new Promise((r=>{setTimeout((()=>{r(this.waitForJoin(e,t+1))}),100*(t>50?10:1))}));throw new Error(`No one joined after ${t} tries.`)}}async sendPairingResponse(e){ND.log("sendPairingResponse");const t=OM(await AM(LD.from(e.publicKey,"hex")),e.relayServer),r=await(await this.client.promise).createTrustedPrivateRoom(t);ND.debug("sendPairingResponse",`Connecting to room "${r}"`),await this.updatePeerRoom(t,r),await this.waitForJoin(r),ND.debug("sendPairingResponse","Successfully joined room.");const n="undefined"===typeof e.version?await this.getPublicKey():JSON.stringify(await this.getPairingResponseInfo(e));ND.debug("sendPairingResponse","Sending pairing response",n);const i=await this.encryptMessageAsymmetric(e.publicKey,n),o=["@channel-open",t,i].join(":");(await this.client.promise).sendTextMessage(r,o).catch((async e=>{if("M_FORBIDDEN"===e.errcode){ND.log("sendPairingResponse","M_FORBIDDEN",r,e),await this.deleteRoomIdFromRooms(r);const n=await this.getRelevantRoom(t);ND.log("sendPairingResponse","Old room deleted, new room created",n),(await this.client.promise).sendTextMessage(n,o).catch((async e=>{ND.log("sendPairingResponse","inner error",n,e)}))}else ND.log("sendPairingResponse","unexpected error",e)}))}isTextMessage(e){return e.message.type===vD.TEXT}async updateRelayServer(e){ND.log("updateRelayServer",e);const t=e.split(":");if(t.length<2||!t[0].startsWith("@"))throw new Error("Invalid sender");const r=t.shift(),n=t.join(":"),i=localStorage.getItem("beacon:communication-peers-dapp")?new SL(this.storage,UM.TRANSPORT_P2P_PEERS_DAPP):new SL(this.storage,UM.TRANSPORT_P2P_PEERS_WALLET),o=(await i.getPeers()).map((async e=>{`@${await AM(LD.from(e.publicKey,"hex"))}`===r&&e.relayServer!==n&&(e.relayServer=n,await i.addPeer(e))}));await Promise.all(o)}async isChannelOpenMessage(e){return e.message.content.startsWith(`@channel-open:@${await AM(LD.from(await this.getPublicKey(),"hex"))}`)}async isSender(e,t){return e.content.message.sender.startsWith(`@${await AM(LD.from(t,"hex"))}`)}async getRelevantRoom(e){const t=await this.storage.get(UM.MATRIX_PEER_ROOM_IDS);let r=t[e];if(!r){ND.log("getRelevantRoom",`No room found for peer ${e}, checking joined ones.`);const n=await this.getRelevantJoinedRoom(e);r=n.id,t[e]=n.id,await this.storage.set(UM.MATRIX_PEER_ROOM_IDS,t)}return ND.log("getRelevantRoom",`Using room ${r}`),r}async getRelevantJoinedRoom(e){const t=await(await this.client.promise).joinedRooms;ND.log("checking joined rooms",t,e);const r=t.filter((e=>!this.ignoredRooms.some((t=>e.id===t)))).filter((t=>t.members.some((t=>t===e))));let n;if(0===r.length||this.ignoredRooms.length>0){ND.log("getRelevantJoinedRoom","no relevant rooms found, creating new one");const t=await(await this.client.promise).createTrustedPrivateRoom(e);n=await(await this.client.promise).getRoomById(t),ND.log("getRelevantJoinedRoom",`waiting for other party to join room: ${n.id}`),await this.waitForJoin(t),ND.log("getRelevantJoinedRoom",`new room created and peer invited: ${n.id}`)}else n=r[0],ND.log("getRelevantJoinedRoom",`channel already open, reusing room ${n.id}`);return n}}const UD=new hL("P2PTransport");class FD extends vL{type=BM.P2P;constructor(e,t,r,n,i,o,a){super(e,new BD(e,t,1,r,n,o,a),new SL(r,i))}static async isAvailable(){return Promise.resolve(!0)}async connect(){if(this._isConnected!==zM.NOT_CONNECTED)return;UD.log("connect"),this._isConnected=zM.CONNECTING,await this.client.start();const e=await this.getPeers();if(e.length>0){UD.log("connect",`connecting to ${e.length} peers`);const t=e.map((async e=>this.listen(e.publicKey)));Promise.all(t).catch((e=>UD.error("connect",e)))}return await this.startOpenChannelListener(),super.connect()}async disconnect(){return await this.client.stop(),super.disconnect()}async startOpenChannelListener(){}async getPairingRequestInfo(){return this.client.getPairingRequestInfo()}async listen(e){await this.client.listenForEncryptedMessage(e,(t=>{const r={origin:LM.P2P,id:e};this.notifyListeners(t,r).catch((e=>{throw e}))})).catch((e=>{throw e}))}}class $D extends FD{constructor(e,t,r,n,i,o){super(e,t,r,n,UM.TRANSPORT_P2P_PEERS_WALLET,i,o)}async addPeer(e,t=!0){await super.addPeer(e),t&&await this.client.sendPairingResponse(e)}}const HD=new hL("IncomingRequestInterceptor");class VD{static async intercept(e){HD.log("INTERCEPTING REQUEST",e.message),"2"===e.message.version?VD.handleV2Message(e):"3"===e.message.version&&VD.handleV3Message(e)}static async getAppMetadata(e,t){const r=await e.getAppMetadata(t);if(!r)throw new Error("AppMetadata not found");return r}static async handleV2Message(e){const{message:t,connectionInfo:r,appMetadataManager:n,interceptorCallback:i}=e;switch(t.type){case jM.PermissionRequest:HD.log("PERMISSION REQUEST V*",t),t.appMetadata.beaconId&&!t.appMetadata.senderId&&(t.appMetadata.senderId=t.appMetadata.beaconId,delete t.appMetadata.beaconId),await n.addAppMetadata(t.appMetadata);i(t,r);break;case jM.OperationRequest:i({appMetadata:await VD.getAppMetadata(n,t.senderId),...t},r);break;case jM.SignPayloadRequest:i({appMetadata:await VD.getAppMetadata(n,t.senderId),...t},r);break;case jM.BroadcastRequest:i({appMetadata:await VD.getAppMetadata(n,t.senderId),...t},r);break;case jM.ProofOfEventChallengeRequest:i({appMetadata:await VD.getAppMetadata(n,t.senderId),...t},r);break;case jM.ProofOfEventChallengeRecorded:i({appMetadata:await VD.getAppMetadata(n,t.senderId),...t},r);break;default:HD.log("intercept","Message not handled"),qD(t)}}static async handleV3Message(e){const{message:t,connectionInfo:r,appMetadataManager:n,interceptorCallback:i}=e,o=t,a=o.message;switch(a.type){case jM.PermissionRequest:await n.addAppMetadata({...a.blockchainData.appMetadata,senderId:t.senderId});i(o,r);break;case jM.BlockchainRequest:i({...o},r);break;default:HD.log("intercept","Message not handled"),qD(a)}}}function qD(e){throw new Error("Function not implemented.")}const KD=new hL("OutgoingResponseInterceptor");class WD{static async intercept(e){"2"===e.request.version?WD.handleV2Message(e):"3"===e.request.version&&WD.handleV3Message(e)}static async handleV3Message(e){const{message:t,appMetadataManager:r,interceptorCallback:n}=e,i=t.message;KD.log("LOGGING OUTGOING V3",i,r),n(t)}static async handleV2Message(e){const{senderId:t,request:r,message:n,ownAppMetadata:i,permissionManager:o,appMetadataManager:a,interceptorCallback:s}=e;switch(n.type){case jM.Error:{const e={type:n.type,version:"2",senderId:t,id:n.id,errorType:n.errorType};if(n.errorType===DM.TRANSACTION_INVALID_ERROR&&n.errorData){const t=n.errorData;Array.isArray(t)&&t.every((e=>Boolean(e.kind)&&Boolean(e.id)))?e.errorData=n.errorData:KD.warn("ErrorData provided is not in correct format. It needs to be an array of RPC errors. It will not be included in the message sent to the dApp")}s(e);break}case jM.Acknowledge:s({type:n.type,version:"2",senderId:t,id:n.id});break;case jM.PermissionResponse:{const e={senderId:t,version:"2",appMetadata:i,...n};if(!e.address&&!e.publicKey)throw new Error("Address or PublicKey must be defined");const c=e.publicKey,l=e.address??await async function(e){const t={edpk:{length:54,prefix:kM.from(new Uint8Array([6,161,159]))},sppk:{length:55,prefix:kM.from(new Uint8Array([6,161,161]))},p2pk:{length:55,prefix:kM.from(new Uint8Array([6,161,164]))}};let r,n;if(64===e.length)r=t.edpk.prefix,n=e;else{const i=Object.entries(t);for(let t=0;t{if(!["tz1","tz2","tz3","tz4","KT1","txr1","sr1"].some((t=>e.toLowerCase().startsWith(t.toLowerCase()))))return!1;try{bM.decode(e)}catch(t){return!1}return!0})(l))throw new Error(`Invalid address: "${l}"`);if("abstracted_account"===n.walletType&&"KT1"!==l.substring(0,3))throw new Error(`Invalid abstracted account address "${l}", it should be a KT1 address`);const u=await a.getAppMetadata(r.senderId);if(!u)throw new Error("AppMetadata not found");const d={accountIdentifier:await aL(l,e.network),senderId:r.senderId,appMetadata:u,website:"",address:l,publicKey:c,network:e.network,scopes:e.scopes,connectedAt:(new Date).getTime()};o.addPermission(d).catch(console.error),s(e);break}case jM.OperationResponse:s({senderId:t,version:"2",...n});break;case jM.SignPayloadResponse:s({senderId:t,version:"2",...n});break;case jM.BroadcastResponse:s({senderId:t,version:"2",...n});break;case jM.ProofOfEventChallengeResponse:s({senderId:t,version:"2",...n});break;default:KD.log("intercept","Message not handled"),function(e){throw new Error("Function not implemented.")}()}}}const GD=new hL("WalletClient");class ZD extends mL{_isConnected=new yM;get isConnected(){return this._isConnected.promise}permissionManager;appMetadataManager;pendingRequests=[];constructor(e){super({storage:e&&e.storage?e.storage:new yL,...e}),this.permissionManager=new _L(this.storage),this.appMetadataManager=new xL(this.storage)}async init(){const e=await this.keyPair,t=new $D(this.name,e,this.storage,this.matrixNodes,this.iconUrl,this.appUrl);return super.init(t)}async connect(e){return this.handleResponse=async(t,r)=>{if("3"===t.version){const n=t;if(n.message.type===jM.Disconnect)return this.disconnect(n.senderId);this.pendingRequests.some((e=>e[0].id===t.id))||(this.pendingRequests.push([n,r]),await this.sendAcknowledgeResponse(n,r),await VD.intercept({message:n,connectionInfo:r,appMetadataManager:this.appMetadataManager,interceptorCallback:e}))}else{const n=t;if(n.type===jM.Disconnect)return this.disconnect(n.senderId);this.pendingRequests.some((e=>e[0].id===t.id))||(this.pendingRequests.push([n,r]),"1"!==n.version&&await this.sendAcknowledgeResponse(n,r),await VD.intercept({message:n,connectionInfo:r,appMetadataManager:this.appMetadataManager,interceptorCallback:e}))}},this._connect()}async getRegisterPushChallenge(e,t,r=QM){const n=(await uj.get(`${r}/challenge`)).data,i=EM(["Tezos Signed Message: ",n.id,n.timestamp,t,e].join(" "));return{challenge:n,payloadToSign:"0501"+i.length.toString(16).padStart(8,"0")+i}}async registerPush(e,t,r,n,i,o,a=QM){const s=await this.storage.get(UM.PUSH_TOKENS),c=s.find((e=>e.publicKey===n&&e.backendUrl===r));if(c)return c;const l=(await uj.post(`${a}/register`,{name:this.name,challenge:e,accountPublicKey:n,signature:t,backendUrl:r,protocolIdentifier:i,deviceId:o})).data,u={publicKey:n,backendUrl:r,accessToken:l.accessToken,managementToken:l.managementToken};return s.push(u),await this.storage.set(UM.PUSH_TOKENS,s),u}async _connect(){const e=await this.transport;e.connectionStatus===zM.NOT_CONNECTED&&(await e.connect(),e.addListener((async(e,t)=>{if("string"===typeof e){const r=await(new wL).deserialize(e);this.handleResponse(r,t)}})).catch((e=>GD.log("_connect",e))),this._isConnected.resolve(!0))}async respond(e){GD.log("RESPONSE",e);const t=this.pendingRequests.find((t=>t[0].id===e.id));if(!t)throw new Error("No matching request found!");this.pendingRequests=this.pendingRequests.filter((t=>t[0].id!==e.id)),await WD.intercept({senderId:await uL(await this.beaconId),request:t[0],message:e,ownAppMetadata:await this.getOwnAppMetadata(),permissionManager:this.permissionManager,appMetadataManager:this.appMetadataManager,interceptorCallback:async e=>{await this.respondToMessage(e,t[1])}})}async getAppMetadataList(){return this.appMetadataManager.getAppMetadataList()}async getAppMetadata(e){return this.appMetadataManager.getAppMetadata(e)}async removeAppMetadata(e){return this.appMetadataManager.removeAppMetadata(e)}async removeAllAppMetadata(){return this.appMetadataManager.removeAllAppMetadata()}async getPermissions(){return this.permissionManager.getPermissions()}async getPermission(e){return this.permissionManager.getPermission(e)}async removePermission(e){return this.permissionManager.removePermission(e)}async removeAllPermissions(){return this.permissionManager.removeAllPermissions()}async getPeerInfo(e){const t=await uL(e.publicKey);return e instanceof ZM?new YM(e.id,e.name,e.publicKey,e.version,t):e instanceof HM?new VM(e.id,e.name,e.publicKey,e.version,e.relayServer,t):e instanceof JM?new JM(e.id,e.name,e.publicKey,e.version,t,e.uri):{...e,senderId:t}}async addPeer(e,t=!0){return(await this.transport).addPeer(await this.getPeerInfo(e),t)}async removePeer(e,t=!1){const r=(await this.transport).removePeer(e);return await this.removePermissionsForPeers([e]),t&&await this.sendDisconnectToPeer(e),r}async removeAllPeers(e=!1){const t=await(await this.transport).getPeers(),r=(await this.transport).removeAllPeers();if(await this.removePermissionsForPeers(t),e){const e=t.map((e=>this.sendDisconnectToPeer(e)));await Promise.all(e)}return r}async removePermissionsForPeers(e){const t=await this.permissionManager.getPermissions(),r=e.map((e=>e.senderId)),n=t.filter((e=>r.includes(e.appMetadata.senderId))).map((e=>e.accountIdentifier));await this.permissionManager.removePermissions(n)}async sendAcknowledgeResponse(e,t){const r={id:e.id,type:jM.Acknowledge};await WD.intercept({senderId:await uL(await this.beaconId),request:e,message:r,ownAppMetadata:await this.getOwnAppMetadata(),permissionManager:this.permissionManager,appMetadataManager:this.appMetadataManager,interceptorCallback:async e=>{await this.respondToMessage(e,t)}})}async respondToMessage(e,t){const r=await(new wL).serialize(e);if(t){const e=(await this.getPeers()).find((e=>e.publicKey===t.id));await(await this.transport).send(r,e)}else await(await this.transport).send(r)}async disconnect(e){const t=await this.transport,r=(await t.getPeers()).find((t=>t.senderId===e));r&&await this.removePeer(r)}}function YD(e){const{theme:t}=ii(),r=fP();return(0,n.useMemo)((()=>function(e,t){const r=r=>{var n;return{...t,...r,position:IA(null!=(n=null==r?void 0:r.position)?n:null==t?void 0:t.position,e)}},n=e=>{const t=r(e),n=XA(t);return GA.notify(n,t)};return n.update=(e,t)=>{GA.update(e,r(t))},n.promise=(e,t)=>{const r=n({...t.loading,status:"loading",duration:null});e.then((e=>n.update(r,{status:"success",duration:5e3,...se(t.success,e)}))).catch((e=>n.update(r,{status:"error",duration:5e3,...se(t.error,e)})))},n.closeAll=GA.closeAll,n.close=GA.close,n.isActive=GA.isActive,n}(t.direction,{...r,...e})),[e,t.direction,r])}var XD={initial:({offsetX:e,offsetY:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{opacity:0,x:e,y:t,transition:null!=(o=null==r?void 0:r.exit)?o:uI(cI.exit,i),transitionEnd:null==n?void 0:n.exit}},enter:({transition:e,transitionEnd:t,delay:r})=>{var n;return{opacity:1,x:0,y:0,transition:null!=(n=null==e?void 0:e.enter)?n:lI(cI.enter,r),transitionEnd:null==t?void 0:t.enter}},exit:({offsetY:e,offsetX:t,transition:r,transitionEnd:n,reverse:i,delay:o})=>{var a;const s={x:t,y:e};return{opacity:0,transition:null!=(a=null==r?void 0:r.exit)?a:uI(cI.exit,o),...i?{...s,transitionEnd:null==n?void 0:n.exit}:{transitionEnd:{...s,...null==n?void 0:n.exit}}}}},JD={initial:"initial",animate:"enter",exit:"exit",variants:XD},QD=(0,n.forwardRef)((function(e,t){const{unmountOnExit:r,in:n,reverse:i=!0,className:o,offsetX:a=0,offsetY:s=8,transition:c,transitionEnd:l,delay:u,...d}=e,h=!r||n&&r,f=n||r?"enter":"exit",p={offsetX:a,offsetY:s,reverse:i,transition:c,transitionEnd:l,delay:u};return(0,Yn.jsx)(iP,{custom:p,children:h&&(0,Yn.jsx)(CA.div,{ref:t,className:ie("chakra-offset-slide",o),custom:p,...JD,animate:f,...d})})}));QD.displayName="SlideFade";var ez={exit:({reverse:e,initialScale:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{opacity:0,...e?{scale:t,transitionEnd:null==n?void 0:n.exit}:{transitionEnd:{scale:t,...null==n?void 0:n.exit}},transition:null!=(o=null==r?void 0:r.exit)?o:uI(cI.exit,i)}},enter:({transitionEnd:e,transition:t,delay:r})=>{var n;return{opacity:1,scale:1,transition:null!=(n=null==t?void 0:t.enter)?n:lI(cI.enter,r),transitionEnd:null==e?void 0:e.enter}}},tz={initial:"exit",animate:"enter",exit:"exit",variants:ez},rz=(0,n.forwardRef)((function(e,t){const{unmountOnExit:r,in:n,reverse:i=!0,initialScale:o=.95,className:a,transition:s,transitionEnd:c,delay:l,...u}=e,d=!r||n&&r,h=n||r?"enter":"exit",f={initialScale:o,reverse:i,transition:s,transitionEnd:c,delay:l};return(0,Yn.jsx)(iP,{custom:f,children:d&&(0,Yn.jsx)(CA.div,{ref:t,className:ie("chakra-offset-slide",a),...tz,animate:h,custom:f,...u})})}));rz.displayName="ScaleFade";var nz={slideInBottom:{...JD,custom:{offsetY:16,reverse:!0}},slideInRight:{...JD,custom:{offsetX:16,reverse:!0}},slideInTop:{...JD,custom:{offsetY:-16,reverse:!0}},slideInLeft:{...JD,custom:{offsetX:-16,reverse:!0}},scale:{...tz,custom:{initialScale:.95,reverse:!0}},none:{}},iz=Zn(CA.section),oz=e=>nz[e||"none"],az=(0,n.forwardRef)(((e,t)=>{const{preset:r,motionProps:n=oz(r),...i}=e;return(0,Yn.jsx)(iz,{ref:t,...n,...i})}));function sz(){return sz=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0})).sort(zz)},Uz=["button:enabled","select:enabled","textarea:enabled","input:enabled","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]","[tabindex]","[contenteditable]","[autofocus]"].join(","),Fz="".concat(Uz,", [data-focus-guard]"),$z=function(e,t){return Sz((e.shadowRoot||e).children).reduce((function(e,r){return e.concat(r.matches(t?Fz:Uz)?[r]:[],$z(r))}),[])},Hz=function(e,t){return e.reduce((function(e,r){var n,i=$z(r,t),o=(n=[]).concat.apply(n,i.map((function(e){return function(e,t){var r;return e instanceof HTMLIFrameElement&&(null===(r=e.contentDocument)||void 0===r?void 0:r.body)?Hz([e.contentDocument.body],t):[e]}(e,t)})));return e.concat(o,r.parentNode?Sz(r.parentNode.querySelectorAll(Uz)).filter((function(e){return e===r})):[])}),[])},Vz=function(e,t){return Sz(e).filter((function(e){return Tz(t,e)})).filter((function(e){return function(e){return!((Rz(e)||function(e){return"BUTTON"===e.tagName}(e))&&("hidden"===e.type||e.disabled))}(e)}))},qz=function(e,t){return void 0===t&&(t=new Map),Sz(e).filter((function(e){return Cz(t,e)}))},Kz=function(e,t,r){return Bz(Vz(Hz(e,r),t),!0,r)},Wz=function(e,t){return Bz(Vz(Hz(e),t),!1)},Gz=function(e,t){return Vz(function(e){var t=e.querySelectorAll("[".concat("data-autofocus-inside","]"));return Sz(t).map((function(e){return Hz([e])})).reduce((function(e,t){return e.concat(t)}),[])}(e),t)},Zz=function(e,t){return e.shadowRoot?Zz(e.shadowRoot,t):!(void 0===Object.getPrototypeOf(e).contains||!Object.getPrototypeOf(e).contains.call(e,t))||Sz(e.children).some((function(e){var r;if(e instanceof HTMLIFrameElement){var n=null===(r=e.contentDocument)||void 0===r?void 0:r.body;return!!n&&Zz(n,t)}return Zz(e,t)}))},Yz=function(e){if(void 0===e&&(e=document),e&&e.activeElement){var t=e.activeElement;return t.shadowRoot?Yz(t.shadowRoot):t instanceof HTMLIFrameElement&&function(e){try{return e()}catch(t){return}}((function(){return t.contentWindow.document}))?Yz(t.contentWindow.document):t}},Xz=function(e){return e.parentNode?Xz(e.parentNode):e},Jz=function(e){return kz(e).filter(Boolean).reduce((function(e,t){var r=t.getAttribute(cz);return e.push.apply(e,r?function(e){for(var t=new Set,r=e.length,n=0;n0&&t.add(i),(o&Node.DOCUMENT_POSITION_CONTAINS)>0&&t.add(n)}return e.filter((function(e,r){return!t.has(r)}))}(Sz(Xz(t).querySelectorAll("[".concat(cz,'="').concat(r,'"]:not([').concat(lz,'="disabled"])')))):[t]),e}),[])},Qz=function(e,t){return void 0===t&&(t=Yz(Ez(e).ownerDocument)),!(!t||t.dataset&&t.dataset.focusGuard)&&Jz(e).some((function(e){return Zz(e,t)||function(e,t){return Boolean(Sz(e.querySelectorAll("iframe")).some((function(e){return function(e,t){return e===t}(e,t)})))}(e,t)}))},eB=function(e,t){return Iz(e)&&e.name?function(e,t){return t.filter(Iz).filter((function(t){return t.name===e.name})).filter((function(e){return e.checked}))[0]||e}(e,t):e},tB=function(e){return e[0]&&e.length>1?eB(e[0],e):e[0]},rB=function(e,t){return e.length>1?e.indexOf(eB(e[t],e)):t},nB="NEW_FOCUS",iB=function(e,t,r,n){var i=e.length,o=e[0],a=e[i-1],s=Lz(r);if(!(r&&e.indexOf(r)>=0)){var c=void 0!==r?t.indexOf(r):-1,l=n?t.indexOf(n):c,u=n?e.indexOf(n):-1,d=c-l,h=t.indexOf(o),f=t.indexOf(a),p=function(e){var t=new Set;return e.forEach((function(r){return t.add(eB(r,e))})),e.filter((function(e){return t.has(e)}))}(t),m=(void 0!==r?p.indexOf(r):-1)-(n?p.indexOf(n):c),g=rB(e,0),v=rB(e,i-1);return-1===c||-1===u?nB:!d&&u>=0?u:c<=h&&s&&Math.abs(d)>1?v:c>=f&&s&&Math.abs(d)>1?g:d&&Math.abs(m)>1?u:c<=h?v:c>f?g:d?Math.abs(d)>1?u:(i+u+d)%i:void 0}},oB=function(e,t,r){var n,i=e.map((function(e){return e.node})),o=qz(i.filter((n=r,function(e){var t,r=null===(t=jz(e))||void 0===t?void 0:t.autofocus;return e.autofocus||void 0!==r&&"false"!==r||n.indexOf(e)>=0})));return o&&o.length?tB(o):tB(qz(t))},aB=function(e,t){return void 0===t&&(t=[]),t.push(e),e.parentNode&&aB(e.parentNode.host||e.parentNode,t),t},sB=function(e,t){for(var r=aB(e),n=aB(t),i=0;i=0)return o}return!1},cB=function(e,t,r){var n=kz(e),i=kz(t),o=n[0],a=!1;return i.filter(Boolean).forEach((function(e){a=sB(a||e,e)||a,r.filter(Boolean).forEach((function(e){var t=sB(o,e);t&&(a=!a||Zz(t,a)?t:sB(t,a))}))})),a},lB=function(e,t){var r=Yz(kz(e).length>0?document:Ez(e).ownerDocument),n=Jz(e).filter(Nz),i=cB(r||e,e,n),o=new Map,a=Wz(n,o),s=Kz(n,o).filter((function(e){var t=e.node;return Nz(t)}));if(s[0]||(s=a)[0]){var c=Wz([i],o).map((function(e){return e.node})),l=function(e,t){var r=new Map;return t.forEach((function(e){return r.set(e.node,e)})),e.map((function(e){return r.get(e)})).filter(Dz)}(c,s),u=l.map((function(e){return e.node})),d=iB(u,c,r,t);if(d===nB){var h=oB(a,u,function(e,t){return e.reduce((function(e,r){return e.concat(Gz(r,t))}),[])}(n,o));return h?{node:h}:void console.warn("focus-lock: cannot find any node to move focus into")}return void 0===d?d:l[d]}},uB=0,dB=!1,hB=function(e,t,r){void 0===r&&(r={});var n,i,o=lB(e,t);if(!dB&&o){if(uB>2)return console.error("FocusLock: focus-fighting detected. Only one focus management system could be active. See https://github.com/theKashey/focus-lock/#focus-fighting"),dB=!0,void setTimeout((function(){dB=!1}),1);uB++,n=o.node,i=r.focusOptions,"focus"in n&&n.focus(i),"contentWindow"in n&&n.contentWindow&&n.contentWindow.focus(),uB--}};function fB(e){setTimeout(e,1)}var pB=function(){return document&&document.activeElement===document.body||function(e){void 0===e&&(e=document);var t=Yz(e);return!!t&&Sz(e.querySelectorAll("[".concat("data-no-focus-lock","]"))).some((function(e){return Zz(e,t)}))}()},mB=null,gB=null,vB=null,yB=!1,bB=function(){return!0};function wB(e,t,r,n){var i=null,o=e;do{var a=n[o];if(a.guard)a.node.dataset.focusAutoGuard&&(i=a);else{if(!a.lockItem)break;if(o!==e)return;i=null}}while((o+=r)!==t);i&&(i.node.tabIndex=0)}var xB=function(e){return e&&"current"in e?e.current:e},_B=function e(t,r,n){return r&&(r.host===t&&(!r.activeElement||n.contains(r.activeElement))||r.parentNode&&e(t,r.parentNode,n))},SB=function(){var e,t=!1;if(mB){var r=mB,n=r.observed,i=r.persistentFocus,o=r.autoFocus,a=r.shards,s=r.crossFrame,c=r.focusOptions,l=n||vB&&vB.portaledElement,u=document&&document.activeElement;if(l){var d=[l].concat(a.map(xB).filter(Boolean));if(u&&!function(e){return(mB.whiteList||bB)(e)}(u)||(i||(s?Boolean(yB):"meanwhile"===yB)||!pB()||!gB&&o)&&(l&&!(Qz(d)||u&&function(e,t){return t.some((function(t){return _B(e,t,t)}))}(u,d)||(e=u,vB&&vB.portaledElement===e))&&(document&&!gB&&u&&!o?(u.blur&&u.blur(),document.body.focus()):(t=hB(d,gB,{focusOptions:c}),vB={})),yB=!1,gB=document&&document.activeElement),document){var h=document&&document.activeElement,f=function(e){var t=Jz(e).filter(Nz),r=cB(e,e,t),n=new Map,i=Kz([r],n,!0),o=Kz(t,n).filter((function(e){var t=e.node;return Nz(t)})).map((function(e){return e.node}));return i.map((function(e){var t=e.node;return{node:t,index:e.index,lockItem:o.indexOf(t)>=0,guard:Lz(t)}}))}(d),p=f.map((function(e){return e.node})).indexOf(h);p>-1&&(f.filter((function(e){var t=e.guard,r=e.node;return t&&r.dataset.focusAutoGuard})).forEach((function(e){return e.node.removeAttribute("tabIndex")})),wB(p,f.length,1,f),wB(p,-1,-1,f))}}}return t},kB=function(e){SB()&&e&&(e.stopPropagation(),e.preventDefault())},EB=function(){return fB(SB)},AB=function(e){var t=e.target,r=e.currentTarget;r.contains(t)||(vB={observerNode:r,portaledElement:t})},PB=function(){yB="just",fB((function(){yB="meanwhile"}))};hz.assignSyncMedium(AB),fz.assignMedium(EB),pz.assignMedium((function(e){return e({moveFocusInside:hB,focusInside:Qz})}));const OB=_z((function(e){return e.filter((function(e){return!e.disabled}))}),(function(e){var t=e.slice(-1)[0];t&&!mB&&(document.addEventListener("focusin",kB),document.addEventListener("focusout",EB),window.addEventListener("blur",PB));var r=mB,n=r&&t&&t.id===r.id;mB=t,r&&!n&&(r.onDeactivation(),e.filter((function(e){return e.id===r.id})).length||r.returnFocus(!t)),t?(gB=null,n&&r.observed===t.observed||t.onActivation(),SB(),fB(SB)):(document.removeEventListener("focusin",kB),document.removeEventListener("focusout",EB),window.removeEventListener("blur",PB),gB=null)}))((function(){return null}));var TB=n.forwardRef((function(e,t){return n.createElement(yz,sz({sideCar:OB,ref:t},e))})),CB=yz.propTypes||{};CB.sideCar,function(e,t){if(null==e)return{};var r,n,i={},o=Object.keys(e);for(n=0;n=0||(i[r]=e[r])}(CB,["sideCar"]);TB.propTypes={};const jB=TB;function RB(e){return null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function IB(e){var t;if(!RB(e))return!1;return e instanceof(null!=(t=e.ownerDocument.defaultView)?t:window).HTMLElement}function MB(e){return RB(e)?e.ownerDocument:document}var LB=e=>e.hasAttribute("tabindex"),NB=e=>LB(e)&&-1===e.tabIndex;function DB(e){return!(!e.parentElement||!DB(e.parentElement))||e.hidden}function zB(e){if(!IB(e)||DB(e)||function(e){return!0===Boolean(e.getAttribute("disabled"))||!0===Boolean(e.getAttribute("aria-disabled"))}(e))return!1;const{localName:t}=e;if(["input","select","textarea","button"].indexOf(t)>=0)return!0;const r={a:()=>e.hasAttribute("href"),audio:()=>e.hasAttribute("controls"),video:()=>e.hasAttribute("controls")};return t in r?r[t]():!!function(e){const t=e.getAttribute("contenteditable");return"false"!==t&&null!=t}(e)||LB(e)}var BB,UB=["input:not(:disabled):not([disabled])","select:not(:disabled):not([disabled])","textarea:not(:disabled):not([disabled])","embed","iframe","object","a[href]","area[href]","button:not(:disabled):not([disabled])","[tabindex]","audio[controls]","video[controls]","*[tabindex]:not([aria-disabled])","*[contenteditable]"].join(),FB=e=>e.offsetWidth>0&&e.offsetHeight>0;function $B(e){const t=Array.from(e.querySelectorAll(UB));return t.unshift(e),t.filter((e=>zB(e)&&FB(e)))}var HB=null!=(BB=jB.default)?BB:jB,VB=e=>{const{initialFocusRef:t,finalFocusRef:r,contentRef:i,restoreFocus:o,children:a,isDisabled:s,autoFocus:c,persistentFocus:l,lockFocusAcrossFrames:u}=e,d=(0,n.useCallback)((()=>{if(null==t?void 0:t.current)t.current.focus();else if(null==i?void 0:i.current){0===$B(i.current).length&&requestAnimationFrame((()=>{var e;null==(e=i.current)||e.focus()}))}}),[t,i]),h=(0,n.useCallback)((()=>{var e;null==(e=null==r?void 0:r.current)||e.focus()}),[r]),f=o&&!r;return(0,Yn.jsx)(HB,{crossFrame:u,persistentFocus:l,autoFocus:c,disabled:s,onActivation:d,onDeactivation:h,returnFocus:f,children:a})};VB.displayName="FocusLock";function qB(e){const{autoFocus:t,trapFocus:r,dialogRef:i,initialFocusRef:o,blockScrollOnMount:a,allowPinchZoom:s,finalFocusRef:c,returnFocusOnClose:l,preserveScrollBarGap:u,lockFocusAcrossFrames:d,isOpen:h}=eI(),[f,p]=vb();(0,n.useEffect)((()=>{!f&&p&&setTimeout(p)}),[f,p]);const m=FR(i,h);return(0,Yn.jsx)(VB,{autoFocus:t,isDisabled:!r,initialFocusRef:o,finalFocusRef:c,restoreFocus:l,contentRef:i,lockFocusAcrossFrames:d,children:(0,Yn.jsx)(hM,{removeScrollBar:!u,allowPinchZoom:s,enabled:1===m&&a,forwardProps:!0,children:e.children})})}var KB=ne(((e,t)=>{const{className:r,children:n,containerProps:i,motionProps:o,...a}=e,{getDialogProps:s,getDialogContainerProps:c}=eI(),l=s(a,t),u=c(i),d=ie("chakra-modal__content",r),h=JR(),f={display:"flex",flexDirection:"column",position:"relative",width:"100%",outline:0,...h.dialog},p={display:"flex",width:"100vw",height:"$100vh",position:"fixed",left:0,top:0,...h.dialogContainer},{motionPreset:m}=eI();return(0,Yn.jsx)(qB,{children:(0,Yn.jsx)(Zn.div,{...u,className:"chakra-modal__content-container",tabIndex:-1,__css:p,children:(0,Yn.jsx)(az,{preset:m,motionProps:o,className:d,...l,__css:f,children:n})})})}));KB.displayName="ModalContent";var WB=ne(((e,t)=>{const{className:r,...i}=e,{headerId:o,setHeaderMounted:a}=eI();(0,n.useEffect)((()=>(a(!0),()=>a(!1))),[a]);const s=ie("chakra-modal__header",r),c={flex:0,...JR().header};return(0,Yn.jsx)(Zn.header,{ref:t,className:s,id:o,...i,__css:c})}));function GB(e){const t=Object.assign({},e);for(let r in t)void 0===t[r]&&delete t[r];return t}WB.displayName="ModalHeader";var ZB=ne((function(e,t){const r=ci("Text",e),{className:n,align:i,decoration:o,casing:a,...s}=Qt(e),c=GB({textAlign:e.align,textDecoration:e.decoration,textTransform:e.casing});return(0,Yn.jsx)(Zn.p,{ref:t,className:ie("chakra-text",e.className),...c,...s,__css:r})}));ZB.displayName="Text";var YB=ne(((e,t)=>{const{onClick:r,className:n,...i}=e,{onClose:o}=eI(),a=ie("chakra-modal__close-btn",n),s=JR();return(0,Yn.jsx)(WA,{ref:t,__css:s.closeButton,className:a,onClick:de(r,(e=>{e.stopPropagation(),o()})),...i})}));YB.displayName="ModalCloseButton";var XB=ne(((e,t)=>{const{className:r,...i}=e,{bodyId:o,setBodyMounted:a}=eI();(0,n.useEffect)((()=>(a(!0),()=>a(!1))),[a]);const s=ie("chakra-modal__body",r),c=JR();return(0,Yn.jsx)(Zn.div,{ref:t,className:s,id:o,...i,__css:c.body})}));XB.displayName="ModalBody";Object.freeze(["base","sm","md","lg","xl","2xl"]);function JB(e,t){return Array.isArray(e)?e.map((e=>null===e?null:t(e))):oe(e)?Object.keys(e).reduce(((r,n)=>(r[n]=t(e[n]),r)),{}):null!=e?t(e):null}var QB=ne((function(e,t){const{ratio:r=4/3,children:i,className:o,...a}=e,s=n.Children.only(i),c=ie("chakra-aspect-ratio",o);return(0,Yn.jsx)(Zn.div,{ref:t,position:"relative",className:c,_before:{height:0,content:'""',display:"block",paddingBottom:JB(r,(e=>1/e*100+"%"))},__css:{"& > *:not(style)":{overflow:"hidden",position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:"flex",justifyContent:"center",alignItems:"center",width:"100%",height:"100%"},"& > img, & > video":{objectFit:"cover"}},...a,children:s})}));QB.displayName="AspectRatio";var eU=Object.defineProperty,tU=(e,t,r)=>(((e,t,r)=>{t in e?eU(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r);function rU(e){return e.sort(((e,t)=>{const r=e.compareDocumentPosition(t);if(r&Node.DOCUMENT_POSITION_FOLLOWING||r&Node.DOCUMENT_POSITION_CONTAINED_BY)return-1;if(r&Node.DOCUMENT_POSITION_PRECEDING||r&Node.DOCUMENT_POSITION_CONTAINS)return 1;if(r&Node.DOCUMENT_POSITION_DISCONNECTED||r&Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC)throw Error("Cannot sort the given nodes.");return 0}))}function nU(e,t,r){let n=e+1;return r&&n>=t&&(n=0),n}function iU(e,t,r){let n=e-1;return r&&n<0&&(n=t),n}var oU="undefined"!==typeof window?n.useLayoutEffect:n.useEffect,aU=e=>e,sU=class{constructor(){tU(this,"descendants",new Map),tU(this,"register",(e=>{var t;if(null!=e)return"object"==typeof(t=e)&&"nodeType"in t&&t.nodeType===Node.ELEMENT_NODE?this.registerNode(e):t=>{this.registerNode(t,e)}})),tU(this,"unregister",(e=>{this.descendants.delete(e);const t=rU(Array.from(this.descendants.keys()));this.assignIndex(t)})),tU(this,"destroy",(()=>{this.descendants.clear()})),tU(this,"assignIndex",(e=>{this.descendants.forEach((t=>{const r=e.indexOf(t.node);t.index=r,t.node.dataset.index=t.index.toString()}))})),tU(this,"count",(()=>this.descendants.size)),tU(this,"enabledCount",(()=>this.enabledValues().length)),tU(this,"values",(()=>Array.from(this.descendants.values()).sort(((e,t)=>e.index-t.index)))),tU(this,"enabledValues",(()=>this.values().filter((e=>!e.disabled)))),tU(this,"item",(e=>{if(0!==this.count())return this.values()[e]})),tU(this,"enabledItem",(e=>{if(0!==this.enabledCount())return this.enabledValues()[e]})),tU(this,"first",(()=>this.item(0))),tU(this,"firstEnabled",(()=>this.enabledItem(0))),tU(this,"last",(()=>this.item(this.descendants.size-1))),tU(this,"lastEnabled",(()=>{const e=this.enabledValues().length-1;return this.enabledItem(e)})),tU(this,"indexOf",(e=>{var t,r;return e&&null!=(r=null==(t=this.descendants.get(e))?void 0:t.index)?r:-1})),tU(this,"enabledIndexOf",(e=>null==e?-1:this.enabledValues().findIndex((t=>t.node.isSameNode(e))))),tU(this,"next",((e,t=!0)=>{const r=nU(e,this.count(),t);return this.item(r)})),tU(this,"nextEnabled",((e,t=!0)=>{const r=this.item(e);if(!r)return;const n=nU(this.enabledIndexOf(r.node),this.enabledCount(),t);return this.enabledItem(n)})),tU(this,"prev",((e,t=!0)=>{const r=iU(e,this.count()-1,t);return this.item(r)})),tU(this,"prevEnabled",((e,t=!0)=>{const r=this.item(e);if(!r)return;const n=iU(this.enabledIndexOf(r.node),this.enabledCount()-1,t);return this.enabledItem(n)})),tU(this,"registerNode",((e,t)=>{if(!e||this.descendants.has(e))return;const r=rU(Array.from(this.descendants.keys()).concat(e));(null==t?void 0:t.disabled)&&(t.disabled=!!t.disabled);const n={node:e,index:-1,...t};this.descendants.set(e,n),this.assignIndex(r)}))}};var[cU,lU]=di({name:"DescendantsProvider",errorMessage:"useDescendantsContext must be used within DescendantsProvider"});function uU(){return[aU(cU),()=>aU(lU()),()=>function(){const e=(0,n.useRef)(new sU);return oU((()=>()=>e.current.destroy())),e.current}(),e=>function(e){const t=lU(),[r,i]=(0,n.useState)(-1),o=(0,n.useRef)(null);oU((()=>()=>{o.current&&t.unregister(o.current)}),[]),oU((()=>{if(!o.current)return;const e=Number(o.current.dataset.index);r==e||Number.isNaN(e)||i(e)}));const a=aU(e?t.register(e):t.register);return{descendants:t,index:r,enabledIndex:t.enabledIndexOf(o.current),register:xi(a,o)}}(e)]}var[dU,hU]=di({name:"AccordionStylesContext",hookName:"useAccordionStyles",providerName:""}),[fU,pU]=di({name:"AccordionItemContext",hookName:"useAccordionItemContext",providerName:""}),[mU,gU,vU,yU]=uU();function bU(e){const{value:t,defaultValue:r,onChange:i,shouldUpdate:o=((e,t)=>e!==t)}=e,a=pb(i),s=pb(o),[c,l]=(0,n.useState)(r),u=void 0!==t,d=u?t:c,h=pb((e=>{const t="function"===typeof e?e(d):e;s(d,t)&&(u||l(t),a(t))}),[u,a,d,s]);return[d,h]}function wU(e){const{onChange:t,defaultIndex:r,index:i,allowMultiple:o,allowToggle:a,...s}=e;!function(e){const t=e.index||e.defaultIndex,r=null!=t&&!Array.isArray(t)&&e.allowMultiple;ae({condition:!!r,message:`If 'allowMultiple' is passed, then 'index' or 'defaultIndex' must be an array. You passed: ${typeof t},`})}(e),function(e){ae({condition:!(!e.allowMultiple||!e.allowToggle),message:"If 'allowMultiple' is passed, 'allowToggle' will be ignored. Either remove 'allowToggle' or 'allowMultiple' depending on whether you want multiple accordions visible or not"})}(e);const c=vU(),[l,u]=(0,n.useState)(-1);(0,n.useEffect)((()=>()=>{u(-1)}),[]);const[d,h]=bU({value:i,defaultValue:()=>o?null!=r?r:[]:null!=r?r:-1,onChange:t});return{index:d,setIndex:h,htmlProps:s,getAccordionItemProps:e=>{let t=!1;null!==e&&(t=Array.isArray(d)?d.includes(e):d===e);return{isOpen:t,onChange:t=>{if(null!==e)if(o&&Array.isArray(d)){const r=t?d.concat(e):d.filter((t=>t!==e));h(r)}else t?h(e):a&&h(-1)}}},focusedIndex:l,setFocusedIndex:u,descendants:c}}var[xU,_U]=di({name:"AccordionContext",hookName:"useAccordionContext",providerName:"Accordion"});function SU(e){const{isDisabled:t,isFocusable:r,id:i,...o}=e,{getAccordionItemProps:a,setFocusedIndex:s}=_U(),c=(0,n.useRef)(null),l=(0,n.useId)(),u=null!=i?i:l,d=`accordion-button-${u}`,h=`accordion-panel-${u}`;!function(e){ae({condition:!(!e.isFocusable||e.isDisabled),message:"Using only 'isFocusable', this prop is reserved for situations where you pass 'isDisabled' but you still want the element to receive focus (A11y). Either remove it or pass 'isDisabled' as well.\n "})}(e);const{register:f,index:p,descendants:m}=yU({disabled:t&&!r}),{isOpen:g,onChange:v}=a(-1===p?null:p);!function(e){ae({condition:e.isOpen&&!!e.isDisabled,message:"Cannot open a disabled accordion item"})}({isOpen:g,isDisabled:t});const y=(0,n.useCallback)((()=>{null==v||v(!g),s(p)}),[p,s,g,v]),b=(0,n.useCallback)((e=>{const t={ArrowDown:()=>{const e=m.nextEnabled(p);null==e||e.node.focus()},ArrowUp:()=>{const e=m.prevEnabled(p);null==e||e.node.focus()},Home:()=>{const e=m.firstEnabled();null==e||e.node.focus()},End:()=>{const e=m.lastEnabled();null==e||e.node.focus()}},r=t[e.key];r&&(e.preventDefault(),r(e))}),[m,p]),w=(0,n.useCallback)((()=>{s(p)}),[s,p]),x=(0,n.useCallback)((function(e={},r=null){return{...e,type:"button",ref:xi(f,c,r),id:d,disabled:!!t,"aria-expanded":!!g,"aria-controls":h,onClick:de(e.onClick,y),onFocus:de(e.onFocus,w),onKeyDown:de(e.onKeyDown,b)}}),[d,t,g,y,w,b,h,f]),_=(0,n.useCallback)((function(e={},t=null){return{...e,ref:t,role:"region",id:h,"aria-labelledby":d,hidden:!g}}),[d,g,h]);return{isOpen:g,isDisabled:t,isFocusable:r,onOpen:()=>{null==v||v(!0)},onClose:()=>{null==v||v(!1)},getButtonProps:x,getPanelProps:_,htmlProps:o}}var kU=ne((function({children:e,reduceMotion:t,...r},i){const o=li("Accordion",r),a=Qt(r),{htmlProps:s,descendants:c,...l}=wU(a),u=(0,n.useMemo)((()=>({...l,reduceMotion:!!t})),[l,t]);return(0,Yn.jsx)(mU,{value:c,children:(0,Yn.jsx)(xU,{value:u,children:(0,Yn.jsx)(dU,{value:o,children:(0,Yn.jsx)(Zn.div,{ref:i,...s,className:ie("chakra-accordion",r.className),__css:o.root,children:e})})})})}));kU.displayName="Accordion";var EU=ne((function(e,t){const{children:r,className:i}=e,{htmlProps:o,...a}=SU(e),s={...hU().container,overflowAnchor:"none"},c=(0,n.useMemo)((()=>a),[a]);return(0,Yn.jsx)(fU,{value:c,children:(0,Yn.jsx)(Zn.div,{ref:t,...o,className:ie("chakra-accordion__item",i),__css:s,children:"function"===typeof r?r({isExpanded:!!a.isOpen,isDisabled:!!a.isDisabled}):r})})}));EU.displayName="AccordionItem";var AU=ne((function(e,t){const{getButtonProps:r}=pU(),n=r(e,t),i={display:"flex",alignItems:"center",width:"100%",outline:0,...hU().button};return(0,Yn.jsx)(Zn.button,{...n,className:ie("chakra-accordion__button",e.className),__css:i})}));function PU(e){const{isOpen:t,isDisabled:r}=pU(),{reduceMotion:n}=_U(),i=ie("chakra-accordion__icon",e.className),o={opacity:r?.4:1,transform:t?"rotate(-180deg)":void 0,transition:n?void 0:"transform 0.2s",transformOrigin:"center",...hU().icon};return(0,Yn.jsx)(LA,{viewBox:"0 0 24 24","aria-hidden":!0,className:i,__css:o,...e,children:(0,Yn.jsx)("path",{fill:"currentColor",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"})})}AU.displayName="AccordionButton",PU.displayName="AccordionIcon";var OU=e=>null!=e&&parseInt(e.toString(),10)>0,TU={exit:{height:{duration:.2,ease:rI.ease},opacity:{duration:.3,ease:rI.ease}},enter:{height:{duration:.3,ease:rI.ease},opacity:{duration:.4,ease:rI.ease}}},CU={exit:({animateOpacity:e,startingHeight:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{...e&&{opacity:OU(t)?1:0},height:t,transitionEnd:null==n?void 0:n.exit,transition:null!=(o=null==r?void 0:r.exit)?o:uI(TU.exit,i)}},enter:({animateOpacity:e,endingHeight:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{...e&&{opacity:1},height:t,transitionEnd:null==n?void 0:n.enter,transition:null!=(o=null==r?void 0:r.enter)?o:lI(TU.enter,i)}}},jU=(0,n.forwardRef)(((e,t)=>{const{in:r,unmountOnExit:i,animateOpacity:o=!0,startingHeight:a=0,endingHeight:s="auto",style:c,className:l,transition:u,transitionEnd:d,...h}=e,[f,p]=(0,n.useState)(!1);(0,n.useEffect)((()=>{const e=setTimeout((()=>{p(!0)}));return()=>clearTimeout(e)}),[]),ae({condition:Number(a)>0&&!!i,message:"startingHeight and unmountOnExit are mutually exclusive. You can't use them together"});const m=parseFloat(a.toString())>0,g={startingHeight:a,endingHeight:s,animateOpacity:o,transition:f?u:{enter:{duration:0}},transitionEnd:{enter:null==d?void 0:d.enter,exit:i?null==d?void 0:d.exit:{...null==d?void 0:d.exit,display:m?"block":"none"}}},v=!i||r,y=r||i?"enter":"exit";return(0,Yn.jsx)(iP,{initial:!1,custom:g,children:v&&(0,Yn.jsx)(CA.div,{ref:t,...h,className:ie("chakra-collapse",l),style:{overflow:"hidden",display:"block",...c},custom:g,variants:CU,initial:!!i&&"exit",animate:y,exit:"exit"})})}));jU.displayName="Collapse";var RU=ne((function(e,t){const{className:r,motionProps:n,...i}=e,{reduceMotion:o}=_U(),{getPanelProps:a,isOpen:s}=pU(),c=a(i,t),l=ie("chakra-accordion__panel",r),u=hU();o||delete c.hidden;const d=(0,Yn.jsx)(Zn.div,{...c,__css:u.panel,className:l});return o?d:(0,Yn.jsx)(jU,{in:s,...n,children:d})}));RU.displayName="AccordionPanel";var[IU,MU]=di({name:"FormControlStylesContext",errorMessage:"useFormControlStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),[LU,NU]=di({strict:!1,name:"FormControlContext"});var DU=ne((function(e,t){const r=li("Form",e),i=Qt(e),{getRootProps:o,htmlProps:a,...s}=function(e){const{id:t,isRequired:r,isInvalid:i,isDisabled:o,isReadOnly:a,...s}=e,c=(0,n.useId)(),l=t||`field-${c}`,u=`${l}-label`,d=`${l}-feedback`,h=`${l}-helptext`,[f,p]=(0,n.useState)(!1),[m,g]=(0,n.useState)(!1),[v,y]=(0,n.useState)(!1),b=(0,n.useCallback)(((e={},t=null)=>({id:h,...e,ref:xi(t,(e=>{e&&g(!0)}))})),[h]),w=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,"data-focus":le(v),"data-disabled":le(o),"data-invalid":le(i),"data-readonly":le(a),id:void 0!==e.id?e.id:u,htmlFor:void 0!==e.htmlFor?e.htmlFor:l})),[l,o,v,i,a,u]),x=(0,n.useCallback)(((e={},t=null)=>({id:d,...e,ref:xi(t,(e=>{e&&p(!0)})),"aria-live":"polite"})),[d]),_=(0,n.useCallback)(((e={},t=null)=>({...e,...s,ref:t,role:"group","data-focus":le(v),"data-disabled":le(o),"data-invalid":le(i),"data-readonly":le(a)})),[s,o,v,i,a]),S=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,role:"presentation","aria-hidden":!0,children:e.children||"*"})),[]);return{isRequired:!!r,isInvalid:!!i,isReadOnly:!!a,isDisabled:!!o,isFocused:!!v,onFocus:()=>y(!0),onBlur:()=>y(!1),hasFeedbackText:f,setHasFeedbackText:p,hasHelpText:m,setHasHelpText:g,id:l,labelId:u,feedbackId:d,helpTextId:h,htmlProps:s,getHelpTextProps:b,getErrorMessageProps:x,getRootProps:_,getLabelProps:w,getRequiredIndicatorProps:S}}(i),c=ie("chakra-form-control",e.className);return(0,Yn.jsx)(LU,{value:s,children:(0,Yn.jsx)(IU,{value:r,children:(0,Yn.jsx)(Zn.div,{...o({},t),className:c,__css:r.container})})})}));DU.displayName="FormControl";var zU=ne((function(e,t){const r=NU(),n=MU(),i=ie("chakra-form__helper-text",e.className);return(0,Yn.jsx)(Zn.div,{...null==r?void 0:r.getHelpTextProps(e,t),__css:n.helperText,className:i})}));zU.displayName="FormHelperText";var[BU,UU]=di({name:"FormErrorStylesContext",errorMessage:"useFormErrorStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),FU=ne(((e,t)=>{const r=li("FormError",e),n=Qt(e),i=NU();return(null==i?void 0:i.isInvalid)?(0,Yn.jsx)(BU,{value:r,children:(0,Yn.jsx)(Zn.div,{...null==i?void 0:i.getErrorMessageProps(n,t),className:ie("chakra-form__error-message",e.className),__css:{display:"flex",alignItems:"center",...r.text}})}):null}));FU.displayName="FormErrorMessage";var $U=ne(((e,t)=>{const r=UU(),n=NU();if(!(null==n?void 0:n.isInvalid))return null;const i=ie("chakra-form__error-icon",e.className);return(0,Yn.jsx)(LA,{ref:t,"aria-hidden":!0,...e,__css:r.icon,className:i,children:(0,Yn.jsx)("path",{fill:"currentColor",d:"M11.983,0a12.206,12.206,0,0,0-8.51,3.653A11.8,11.8,0,0,0,0,12.207,11.779,11.779,0,0,0,11.8,24h.214A12.111,12.111,0,0,0,24,11.791h0A11.766,11.766,0,0,0,11.983,0ZM10.5,16.542a1.476,1.476,0,0,1,1.449-1.53h.027a1.527,1.527,0,0,1,1.523,1.47,1.475,1.475,0,0,1-1.449,1.53h-.027A1.529,1.529,0,0,1,10.5,16.542ZM11,12.5v-6a1,1,0,0,1,2,0v6a1,1,0,1,1-2,0Z"})})}));$U.displayName="FormErrorIcon";var HU=ne(((e,t)=>{const{className:r,...n}=e,i=ie("chakra-modal__footer",r),o={display:"flex",alignItems:"center",justifyContent:"flex-end",...JR().footer};return(0,Yn.jsx)(Zn.footer,{ref:t,...n,__css:o,className:i})}));HU.displayName="ModalFooter";var VU=e=>"checkbox"===e.type,qU=e=>e instanceof Date,KU=e=>null==e;const WU=e=>"object"===typeof e;var GU=e=>!KU(e)&&!Array.isArray(e)&&WU(e)&&!qU(e),ZU=e=>GU(e)&&e.target?VU(e.target)?e.target.checked:e.target.value:e,YU=(e,t)=>e.has((e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e)(t)),XU=e=>{const t=e.constructor&&e.constructor.prototype;return GU(t)&&t.hasOwnProperty("isPrototypeOf")},JU="undefined"!==typeof window&&"undefined"!==typeof window.HTMLElement&&"undefined"!==typeof document;function QU(e){let t;const r=Array.isArray(e);if(e instanceof Date)t=new Date(e);else if(e instanceof Set)t=new Set(e);else{if(JU&&(e instanceof Blob||e instanceof FileList)||!r&&!GU(e))return e;if(t=r?[]:{},r||XU(e))for(const r in e)e.hasOwnProperty(r)&&(t[r]=QU(e[r]));else t=e}return t}var eF=e=>Array.isArray(e)?e.filter(Boolean):[],tF=e=>void 0===e,rF=(e,t,r)=>{if(!t||!GU(e))return r;const n=eF(t.split(/[,[\].]+?/)).reduce(((e,t)=>KU(e)?e:e[t]),e);return tF(n)||n===e?tF(e[t])?r:e[t]:n},nF=e=>"boolean"===typeof e;const iF={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},oF={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},aF="max",sF="min",cF="maxLength",lF="minLength",uF="pattern",dF="required",hF="validate",fF=n.createContext(null),pF=()=>n.useContext(fF),mF=e=>{const{children:t,...r}=e;return n.createElement(fF.Provider,{value:r},t)};var gF=(e,t,r,n=!0)=>{const i={defaultValues:t._defaultValues};for(const o in e)Object.defineProperty(i,o,{get:()=>{const i=o;return t._proxyFormState[i]!==oF.all&&(t._proxyFormState[i]=!n||oF.all),r&&(r[i]=!0),e[i]}});return i},vF=e=>GU(e)&&!Object.keys(e).length,yF=(e,t,r,n)=>{r(e);const{name:i,...o}=e;return vF(o)||Object.keys(o).length>=Object.keys(t).length||Object.keys(o).find((e=>t[e]===(!n||oF.all)))},bF=e=>Array.isArray(e)?e:[e];function wF(e){const t=n.useRef(e);t.current=e,n.useEffect((()=>{const r=!e.disabled&&t.current.subject&&t.current.subject.subscribe({next:t.current.next});return()=>{r&&r.unsubscribe()}}),[e.disabled])}var xF=e=>"string"===typeof e,_F=(e,t,r,n,i)=>xF(e)?(n&&t.watch.add(e),rF(r,e,i)):Array.isArray(e)?e.map((e=>(n&&t.watch.add(e),rF(r,e)))):(n&&(t.watchAll=!0),r);var SF=e=>/^\w*$/.test(e),kF=e=>eF(e.replace(/["|']|\]/g,"").split(/\.|\[/));function EF(e,t,r){let n=-1;const i=SF(t)?[t]:kF(t),o=i.length,a=o-1;for(;++nt?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[n]:i||!0}}:{};const PF=(e,t,r)=>{for(const n of r||Object.keys(e)){const r=rF(e,n);if(r){const{_f:e,...n}=r;if(e&&t(e.name)){if(e.ref.focus){e.ref.focus();break}if(e.refs&&e.refs[0].focus){e.refs[0].focus();break}}else GU(n)&&PF(n,t)}}};var OF=()=>{const e="undefined"===typeof performance?Date.now():1e3*performance.now();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{const r=(16*Math.random()+e)%16|0;return("x"==t?r:3&r|8).toString(16)}))},TF=(e,t,r={})=>r.shouldFocus||tF(r.shouldFocus)?r.focusName||`${e}.${tF(r.focusIndex)?t:r.focusIndex}.`:"",CF=e=>({isOnSubmit:!e||e===oF.onSubmit,isOnBlur:e===oF.onBlur,isOnChange:e===oF.onChange,isOnAll:e===oF.all,isOnTouch:e===oF.onTouched}),jF=(e,t,r)=>!r&&(t.watchAll||t.watch.has(e)||[...t.watch].some((t=>e.startsWith(t)&&/^\.\w+/.test(e.slice(t.length))))),RF=(e,t,r)=>{const n=eF(rF(e,r));return EF(n,"root",t[r]),EF(e,r,n),e},IF=e=>"file"===e.type,MF=e=>"function"===typeof e,LF=e=>{if(!JU)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},NF=e=>xF(e),DF=e=>"radio"===e.type,zF=e=>e instanceof RegExp;const BF={value:!1,isValid:!1},UF={value:!0,isValid:!0};var FF=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter((e=>e&&e.checked&&!e.disabled)).map((e=>e.value));return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!tF(e[0].attributes.value)?tF(e[0].value)||""===e[0].value?UF:{value:e[0].value,isValid:!0}:UF:BF}return BF};const $F={isValid:!1,value:null};var HF=e=>Array.isArray(e)?e.reduce(((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e),$F):$F;function VF(e,t,r="validate"){if(NF(e)||Array.isArray(e)&&e.every(NF)||nF(e)&&!e)return{type:r,message:NF(e)?e:"",ref:t}}var qF=e=>GU(e)&&!zF(e)?e:{value:e,message:""},KF=async(e,t,r,n,i)=>{const{ref:o,refs:a,required:s,maxLength:c,minLength:l,min:u,max:d,pattern:h,validate:f,name:p,valueAsNumber:m,mount:g,disabled:v}=e._f,y=rF(t,p);if(!g||v)return{};const b=a?a[0]:o,w=e=>{n&&b.reportValidity&&(b.setCustomValidity(nF(e)?"":e||""),b.reportValidity())},x={},_=DF(o),S=VU(o),k=_||S,E=(m||IF(o))&&tF(o.value)&&tF(y)||LF(o)&&""===o.value||""===y||Array.isArray(y)&&!y.length,A=AF.bind(null,p,r,x),P=(e,t,r,n=cF,i=lF)=>{const a=e?t:r;x[p]={type:e?n:i,message:a,ref:o,...A(e?n:i,a)}};if(i?!Array.isArray(y)||!y.length:s&&(!k&&(E||KU(y))||nF(y)&&!y||S&&!FF(a).isValid||_&&!HF(a).isValid)){const{value:e,message:t}=NF(s)?{value:!!s,message:s}:qF(s);if(e&&(x[p]={type:dF,message:t,ref:b,...A(dF,t)},!r))return w(t),x}if(!E&&(!KU(u)||!KU(d))){let e,t;const n=qF(d),i=qF(u);if(KU(y)||isNaN(y)){const r=o.valueAsDate||new Date(y),a=e=>new Date((new Date).toDateString()+" "+e),s="time"==o.type,c="week"==o.type;xF(n.value)&&y&&(e=s?a(y)>a(n.value):c?y>n.value:r>new Date(n.value)),xF(i.value)&&y&&(t=s?a(y)n.value),KU(i.value)||(t=r+e.value,i=!KU(t.value)&&y.length<+t.value;if((n||i)&&(P(n,e.message,t.message),!r))return w(x[p].message),x}if(h&&!E&&xF(y)){const{value:e,message:t}=qF(h);if(zF(e)&&!y.match(e)&&(x[p]={type:uF,message:t,ref:o,...A(uF,t)},!r))return w(t),x}if(f)if(MF(f)){const e=VF(await f(y,t),b);if(e&&(x[p]={...e,...A(hF,e.message)},!r))return w(e.message),x}else if(GU(f)){let e={};for(const n in f){if(!vF(e)&&!r)break;const i=VF(await f[n](y,t),b,n);i&&(e={...i,...A(n,i.message)},w(i.message),r&&(x[p]=e))}if(!vF(e)&&(x[p]={ref:b,...e},!r))return x}return w(!0),x};function WF(e,t){return[...e,...bF(t)]}var GF=e=>Array.isArray(e)?e.map((()=>{})):void 0;function ZF(e,t,r){return[...e.slice(0,t),...bF(r),...e.slice(t)]}var YF=(e,t,r)=>Array.isArray(e)?(tF(e[r])&&(e[r]=void 0),e.splice(r,0,e.splice(t,1)[0]),e):[];function XF(e,t){return[...bF(t),...bF(e)]}var JF=(e,t)=>tF(t)?[]:function(e,t){let r=0;const n=[...e];for(const i of t)n.splice(i-r,1),r++;return eF(n).length?n:[]}(e,bF(t).sort(((e,t)=>e-t))),QF=(e,t,r)=>{e[t]=[e[r],e[r]=e[t]][0]};function e$(e,t){const r=Array.isArray(t)?t:SF(t)?[t]:kF(t),n=1===r.length?e:function(e,t){const r=t.slice(0,-1).length;let n=0;for(;n(e[t]=r,e);function r$(){let e=[];return{get observers(){return e},next:t=>{for(const r of e)r.next&&r.next(t)},subscribe:t=>(e.push(t),{unsubscribe:()=>{e=e.filter((e=>e!==t))}}),unsubscribe:()=>{e=[]}}}var n$=e=>KU(e)||!WU(e);function i$(e,t){if(n$(e)||n$(t))return e===t;if(qU(e)&&qU(t))return e.getTime()===t.getTime();const r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;for(const i of r){const r=e[i];if(!n.includes(i))return!1;if("ref"!==i){const e=t[i];if(qU(r)&&qU(e)||GU(r)&&GU(e)||Array.isArray(r)&&Array.isArray(e)?!i$(r,e):r!==e)return!1}}return!0}var o$=e=>"select-multiple"===e.type,a$=e=>DF(e)||VU(e),s$=e=>LF(e)&&e.isConnected,c$=e=>{for(const t in e)if(MF(e[t]))return!0;return!1};function l$(e,t={}){const r=Array.isArray(e);if(GU(e)||r)for(const n in e)Array.isArray(e[n])||GU(e[n])&&!c$(e[n])?(t[n]=Array.isArray(e[n])?[]:{},l$(e[n],t[n])):KU(e[n])||(t[n]=!0);return t}function u$(e,t,r){const n=Array.isArray(e);if(GU(e)||n)for(const i in e)Array.isArray(e[i])||GU(e[i])&&!c$(e[i])?tF(t)||n$(r[i])?r[i]=Array.isArray(e[i])?l$(e[i],[]):{...l$(e[i])}:u$(e[i],KU(t)?{}:t[i],r[i]):r[i]=!i$(e[i],t[i]);return r}var d$=(e,t)=>u$(e,t,l$(t)),h$=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:n})=>tF(e)?e:t?""===e?NaN:e?+e:e:r&&xF(e)?new Date(e):n?n(e):e;function f$(e){const t=e.ref;if(!(e.refs?e.refs.every((e=>e.disabled)):t.disabled))return IF(t)?t.files:DF(t)?HF(e.refs).value:o$(t)?[...t.selectedOptions].map((({value:e})=>e)):VU(t)?FF(e.refs).value:h$(tF(t.value)?e.ref.value:t.value,e)}var p$=(e,t,r,n)=>{const i={};for(const o of e){const e=rF(t,o);e&&EF(i,o,e._f)}return{criteriaMode:r,names:[...e],fields:i,shouldUseNativeValidation:n}},m$=e=>tF(e)?e:zF(e)?e.source:GU(e)?zF(e.value)?e.value.source:e.value:e,g$=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);function v$(e,t,r){const n=rF(e,r);if(n||SF(r))return{error:n,name:r};const i=r.split(".");for(;i.length;){const n=i.join("."),o=rF(t,n),a=rF(e,n);if(o&&!Array.isArray(o)&&r!==n)return{name:r};if(a&&a.type)return{name:n,error:a};i.pop()}return{name:r}}var y$=(e,t,r,n,i)=>!i.isOnAll&&(!r&&i.isOnTouch?!(t||e):(r?n.isOnBlur:i.isOnBlur)?!e:!(r?n.isOnChange:i.isOnChange)||e),b$=(e,t)=>!eF(rF(e,t)).length&&e$(e,t);const w$={mode:oF.onSubmit,reValidateMode:oF.onChange,shouldFocusError:!0};function x$(e={},t){let r,n={...w$,...e},i={submitCount:0,isDirty:!1,isLoading:MF(n.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},errors:{}},o={},a=(GU(n.defaultValues)||GU(n.values))&&QU(n.defaultValues||n.values)||{},s=n.shouldUnregister?{}:QU(a),c={action:!1,mount:!1,watch:!1},l={mount:new Set,unMount:new Set,array:new Set,watch:new Set},u=0;const d={isDirty:!1,dirtyFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},h={values:r$(),array:r$(),state:r$()},f=e.resetOptions&&e.resetOptions.keepDirtyValues,p=CF(n.mode),m=CF(n.reValidateMode),g=n.criteriaMode===oF.all,v=async e=>{if(d.isValid||e){const e=n.resolver?vF((await _()).errors):await S(o,!0);e!==i.isValid&&h.state.next({isValid:e})}},y=e=>d.isValidating&&h.state.next({isValidating:e}),b=(e,t,r,n)=>{const i=rF(o,e);if(i){const o=rF(s,e,tF(r)?rF(a,e):r);tF(o)||n&&n.defaultChecked||t?EF(s,e,t?o:f$(i._f)):A(e,o),c.mount&&v()}},w=(e,t,r,n,o)=>{let s=!1,c=!1;const l={name:e};if(!r||n){d.isDirty&&(c=i.isDirty,i.isDirty=l.isDirty=k(),s=c!==l.isDirty);const r=i$(rF(a,e),t);c=rF(i.dirtyFields,e),r?e$(i.dirtyFields,e):EF(i.dirtyFields,e,!0),l.dirtyFields=i.dirtyFields,s=s||d.dirtyFields&&c!==!r}if(r){const t=rF(i.touchedFields,e);t||(EF(i.touchedFields,e,r),l.touchedFields=i.touchedFields,s=s||d.touchedFields&&t!==r)}return s&&o&&h.state.next(l),s?l:{}},x=(t,n,o,a)=>{const s=rF(i.errors,t),c=d.isValid&&nF(n)&&i.isValid!==n;var l;if(e.delayError&&o?(l=()=>((e,t)=>{EF(i.errors,e,t),h.state.next({errors:i.errors})})(t,o),r=e=>{clearTimeout(u),u=setTimeout(l,e)},r(e.delayError)):(clearTimeout(u),r=null,o?EF(i.errors,t,o):e$(i.errors,t)),(o?!i$(s,o):s)||!vF(a)||c){const e={...a,...c&&nF(n)?{isValid:n}:{},errors:i.errors,name:t};i={...i,...e},h.state.next(e)}y(!1)},_=async e=>n.resolver(s,n.context,p$(e||l.mount,o,n.criteriaMode,n.shouldUseNativeValidation)),S=async(e,t,r={valid:!0})=>{for(const o in e){const a=e[o];if(a){const{_f:e,...o}=a;if(e){const o=l.array.has(e.name),c=await KF(a,s,g,n.shouldUseNativeValidation&&!t,o);if(c[e.name]&&(r.valid=!1,t))break;!t&&(rF(c,e.name)?o?RF(i.errors,c,e.name):EF(i.errors,e.name,c[e.name]):e$(i.errors,e.name))}o&&await S(o,t,r)}}return r.valid},k=(e,t)=>(e&&t&&EF(s,e,t),!i$(j(),a)),E=(e,t,r)=>_F(e,l,{...c.mount?s:tF(t)?a:xF(e)?{[e]:t}:t},r,t),A=(e,t,r={})=>{const n=rF(o,e);let i=t;if(n){const r=n._f;r&&(!r.disabled&&EF(s,e,h$(t,r)),i=LF(r.ref)&&KU(t)?"":t,o$(r.ref)?[...r.ref.options].forEach((e=>e.selected=i.includes(e.value))):r.refs?VU(r.ref)?r.refs.length>1?r.refs.forEach((e=>(!e.defaultChecked||!e.disabled)&&(e.checked=Array.isArray(i)?!!i.find((t=>t===e.value)):i===e.value))):r.refs[0]&&(r.refs[0].checked=!!i):r.refs.forEach((e=>e.checked=e.value===i)):IF(r.ref)?r.ref.value="":(r.ref.value=i,r.ref.type||h.values.next({name:e,values:{...s}})))}(r.shouldDirty||r.shouldTouch)&&w(e,i,r.shouldTouch,r.shouldDirty,!0),r.shouldValidate&&C(e)},P=(e,t,r)=>{for(const n in t){const i=t[n],a=`${e}.${n}`,s=rF(o,a);!l.array.has(e)&&n$(i)&&(!s||s._f)||qU(i)?A(a,i,r):P(a,i,r)}},O=(e,r,n={})=>{const u=rF(o,e),f=l.array.has(e),p=QU(r);EF(s,e,p),f?(h.array.next({name:e,values:{...s}}),(d.isDirty||d.dirtyFields)&&n.shouldDirty&&h.state.next({name:e,dirtyFields:d$(a,s),isDirty:k(e,p)})):!u||u._f||KU(p)?A(e,p,n):P(e,p,n),jF(e,l)&&h.state.next({...i}),h.values.next({name:e,values:{...s}}),!c.mount&&t()},T=async e=>{const t=e.target;let a=t.name,c=!0;const u=rF(o,a);if(u){let f,b;const k=t.type?f$(u._f):ZU(e),E=e.type===iF.BLUR||e.type===iF.FOCUS_OUT,A=!g$(u._f)&&!n.resolver&&!rF(i.errors,a)&&!u._f.deps||y$(E,rF(i.touchedFields,a),i.isSubmitted,m,p),P=jF(a,l,E);EF(s,a,k),E?(u._f.onBlur&&u._f.onBlur(e),r&&r(0)):u._f.onChange&&u._f.onChange(e);const O=w(a,k,E,!1),T=!vF(O)||P;if(!E&&h.values.next({name:a,type:e.type,values:{...s}}),A)return d.isValid&&v(),T&&h.state.next({name:a,...P?{}:O});if(!E&&P&&h.state.next({...i}),y(!0),n.resolver){const{errors:e}=await _([a]),t=v$(i.errors,o,a),r=v$(e,o,t.name||a);f=r.error,a=r.name,b=vF(e)}else f=(await KF(u,s,g,n.shouldUseNativeValidation))[a],c=Number.isNaN(k)||k===rF(s,a,k),c&&(f?b=!1:d.isValid&&(b=await S(o,!0)));c&&(u._f.deps&&C(u._f.deps),x(a,b,f,O))}},C=async(e,t={})=>{let r,a;const s=bF(e);if(y(!0),n.resolver){const t=await(async e=>{const{errors:t}=await _(e);if(e)for(const r of e){const e=rF(t,r);e?EF(i.errors,r,e):e$(i.errors,r)}else i.errors=t;return t})(tF(e)?e:s);r=vF(t),a=e?!s.some((e=>rF(t,e))):r}else e?(a=(await Promise.all(s.map((async e=>{const t=rF(o,e);return await S(t&&t._f?{[e]:t}:t)})))).every(Boolean),(a||i.isValid)&&v()):a=r=await S(o);return h.state.next({...!xF(e)||d.isValid&&r!==i.isValid?{}:{name:e},...n.resolver||!e?{isValid:r}:{},errors:i.errors,isValidating:!1}),t.shouldFocus&&!a&&PF(o,(e=>e&&rF(i.errors,e)),e?s:l.mount),a},j=e=>{const t={...a,...c.mount?s:{}};return tF(e)?t:xF(e)?rF(t,e):e.map((e=>rF(t,e)))},R=(e,t)=>({invalid:!!rF((t||i).errors,e),isDirty:!!rF((t||i).dirtyFields,e),isTouched:!!rF((t||i).touchedFields,e),error:rF((t||i).errors,e)}),I=(e,t,r)=>{const n=(rF(o,e,{_f:{}})._f||{}).ref;EF(i.errors,e,{...t,ref:n}),h.state.next({name:e,errors:i.errors,isValid:!1}),r&&r.shouldFocus&&n&&n.focus&&n.focus()},M=(e,t={})=>{for(const r of e?bF(e):l.mount)l.mount.delete(r),l.array.delete(r),t.keepValue||(e$(o,r),e$(s,r)),!t.keepError&&e$(i.errors,r),!t.keepDirty&&e$(i.dirtyFields,r),!t.keepTouched&&e$(i.touchedFields,r),!n.shouldUnregister&&!t.keepDefaultValue&&e$(a,r);h.values.next({values:{...s}}),h.state.next({...i,...t.keepDirty?{isDirty:k()}:{}}),!t.keepIsValid&&v()},L=({disabled:e,name:t,field:r,fields:n})=>{if(nF(e)){const i=e?void 0:rF(s,t,f$(r?r._f:rF(n,t)._f));EF(s,t,i),w(t,i,!1,!1,!0)}},N=(e,t={})=>{let r=rF(o,e);const i=nF(t.disabled);return EF(o,e,{...r||{},_f:{...r&&r._f?r._f:{ref:{name:e}},name:e,mount:!0,...t}}),l.mount.add(e),r?L({field:r,disabled:t.disabled,name:e}):b(e,!0,t.value),{...i?{disabled:t.disabled}:{},...n.progressive?{required:!!t.required,min:m$(t.min),max:m$(t.max),minLength:m$(t.minLength),maxLength:m$(t.maxLength),pattern:m$(t.pattern)}:{},name:e,onChange:T,onBlur:T,ref:i=>{if(i){N(e,t),r=rF(o,e);const n=tF(i.value)&&i.querySelectorAll&&i.querySelectorAll("input,select,textarea")[0]||i,s=a$(n),c=r._f.refs||[];if(s?c.find((e=>e===n)):n===r._f.ref)return;EF(o,e,{_f:{...r._f,...s?{refs:[...c.filter(s$),n,...Array.isArray(rF(a,e))?[{}]:[]],ref:{type:n.type,name:e}}:{ref:n}}}),b(e,!1,void 0,n)}else r=rF(o,e,{}),r._f&&(r._f.mount=!1),(n.shouldUnregister||t.shouldUnregister)&&(!YU(l.array,e)||!c.action)&&l.unMount.add(e)}}},D=()=>n.shouldFocusError&&PF(o,(e=>e&&rF(i.errors,e)),l.mount),z=(e,t)=>async r=>{r&&(r.preventDefault&&r.preventDefault(),r.persist&&r.persist());let a=QU(s);if(h.state.next({isSubmitting:!0}),n.resolver){const{errors:e,values:t}=await _();i.errors=e,a=t}else await S(o);e$(i.errors,"root"),vF(i.errors)?(h.state.next({errors:{}}),await e(a,r)):(t&&await t({...i.errors},r),D(),setTimeout(D)),h.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:vF(i.errors),submitCount:i.submitCount+1,errors:i.errors})},B=(r,n={})=>{const u=r?QU(r):a,p=QU(u),m=r&&!vF(r)?p:a;if(n.keepDefaultValues||(a=u),!n.keepValues){if(n.keepDirtyValues||f)for(const e of l.mount)rF(i.dirtyFields,e)?EF(m,e,rF(s,e)):O(e,rF(m,e));else{if(JU&&tF(r))for(const e of l.mount){const t=rF(o,e);if(t&&t._f){const e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(LF(e)){const t=e.closest("form");if(t){t.reset();break}}}}o={}}s=e.shouldUnregister?n.keepDefaultValues?QU(a):{}:QU(m),h.array.next({values:{...m}}),h.values.next({values:{...m}})}l={mount:new Set,unMount:new Set,array:new Set,watch:new Set,watchAll:!1,focus:""},!c.mount&&t(),c.mount=!d.isValid||!!n.keepIsValid,c.watch=!!e.shouldUnregister,h.state.next({submitCount:n.keepSubmitCount?i.submitCount:0,isDirty:n.keepDirty?i.isDirty:!(!n.keepDefaultValues||i$(r,a)),isSubmitted:!!n.keepIsSubmitted&&i.isSubmitted,dirtyFields:n.keepDirtyValues?i.dirtyFields:n.keepDefaultValues&&r?d$(a,r):{},touchedFields:n.keepTouched?i.touchedFields:{},errors:n.keepErrors?i.errors:{},isSubmitSuccessful:!!n.keepIsSubmitSuccessful&&i.isSubmitSuccessful,isSubmitting:!1})},U=(e,t)=>B(MF(e)?e(s):e,t);return{control:{register:N,unregister:M,getFieldState:R,handleSubmit:z,setError:I,_executeSchema:_,_getWatch:E,_getDirty:k,_updateValid:v,_removeUnmounted:()=>{for(const e of l.unMount){const t=rF(o,e);t&&(t._f.refs?t._f.refs.every((e=>!s$(e))):!s$(t._f.ref))&&M(e)}l.unMount=new Set},_updateFieldArray:(e,t=[],r,n,l=!0,u=!0)=>{if(n&&r){if(c.action=!0,u&&Array.isArray(rF(o,e))){const t=r(rF(o,e),n.argA,n.argB);l&&EF(o,e,t)}if(u&&Array.isArray(rF(i.errors,e))){const t=r(rF(i.errors,e),n.argA,n.argB);l&&EF(i.errors,e,t),b$(i.errors,e)}if(d.touchedFields&&u&&Array.isArray(rF(i.touchedFields,e))){const t=r(rF(i.touchedFields,e),n.argA,n.argB);l&&EF(i.touchedFields,e,t)}d.dirtyFields&&(i.dirtyFields=d$(a,s)),h.state.next({name:e,isDirty:k(e,t),dirtyFields:i.dirtyFields,errors:i.errors,isValid:i.isValid})}else EF(s,e,t)},_updateDisabledField:L,_getFieldArray:t=>eF(rF(c.mount?s:a,t,e.shouldUnregister?rF(a,t,[]):[])),_reset:B,_resetDefaultValues:()=>MF(n.defaultValues)&&n.defaultValues().then((e=>{U(e,n.resetOptions),h.state.next({isLoading:!1})})),_updateFormState:e=>{i={...i,...e}},_subjects:h,_proxyFormState:d,get _fields(){return o},get _formValues(){return s},get _state(){return c},set _state(e){c=e},get _defaultValues(){return a},get _names(){return l},set _names(e){l=e},get _formState(){return i},set _formState(e){i=e},get _options(){return n},set _options(e){n={...n,...e}}},trigger:C,register:N,handleSubmit:z,watch:(e,t)=>MF(e)?h.values.subscribe({next:r=>e(E(void 0,t),r)}):E(e,t,!0),setValue:O,getValues:j,reset:U,resetField:(e,t={})=>{rF(o,e)&&(tF(t.defaultValue)?O(e,rF(a,e)):(O(e,t.defaultValue),EF(a,e,t.defaultValue)),t.keepTouched||e$(i.touchedFields,e),t.keepDirty||(e$(i.dirtyFields,e),i.isDirty=t.defaultValue?k(e,rF(a,e)):k()),t.keepError||(e$(i.errors,e),d.isValid&&v()),h.state.next({...i}))},clearErrors:e=>{e&&bF(e).forEach((e=>e$(i.errors,e))),h.state.next({errors:e?i.errors:{}})},unregister:M,setError:I,setFocus:(e,t={})=>{const r=rF(o,e),n=r&&r._f;if(n){const e=n.refs?n.refs[0]:n.ref;e.focus&&(e.focus(),t.shouldSelect&&e.select())}},getFieldState:R}}function _$(e={}){const t=n.useRef(),r=n.useRef(),[i,o]=n.useState({isDirty:!1,isValidating:!1,isLoading:MF(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},errors:{},defaultValues:MF(e.defaultValues)?void 0:e.defaultValues});t.current||(t.current={...x$(e,(()=>o((e=>({...e}))))),formState:i});const a=t.current.control;return a._options=e,wF({subject:a._subjects.state,next:e=>{yF(e,a._proxyFormState,a._updateFormState,!0)&&o({...a._formState})}}),n.useEffect((()=>{e.values&&!i$(e.values,r.current)?(a._reset(e.values,a._options.resetOptions),r.current=e.values):a._resetDefaultValues()}),[e.values,a]),n.useEffect((()=>{a._state.mount||(a._updateValid(),a._state.mount=!0),a._state.watch&&(a._state.watch=!1,a._subjects.state.next({...a._formState})),a._removeUnmounted()})),t.current.formState=gF(i,a),t.current}var S$,[k$,E$]=ah({name:`${S$="Card"}StylesContext`,errorMessage:`useStyles: "styles" is undefined. Seems you forgot to wrap the components in "<${S$} />" `}),A$=ne((function(e,t){const{className:r,children:n,direction:i="column",justify:o,align:a,...s}=Qt(e),c=li("Card",e);return(0,Yn.jsx)(Zn.div,{ref:t,className:ie("chakra-card",r),__css:{display:"flex",flexDirection:i,justifyContent:o,alignItems:a,position:"relative",minWidth:0,wordWrap:"break-word",...c.container},...s,children:(0,Yn.jsx)(k$,{value:c,children:n})})})),P$=ne((function(e,t){const{className:r,...n}=e,i=E$();return(0,Yn.jsx)(Zn.div,{ref:t,className:ie("chakra-card__body",r),__css:i.body,...n})}));const O$=({value:e,space:t=2})=>(0,Yn.jsx)(A$,{background:EP.gray[700],borderRadius:"5px",children:(0,Yn.jsx)(P$,{children:(0,Yn.jsx)("pre",{style:{whiteSpace:"pre-wrap",fontSize:"12px",lineHeight:"18px"},children:JSON.stringify(e,null,t)})})});var T$=ne((function(e,t){var r;const n=ci("FormLabel",e),i=Qt(e),{className:o,children:a,requiredIndicator:s=(0,Yn.jsx)(C$,{}),optionalIndicator:c=null,...l}=i,u=NU(),d=null!=(r=null==u?void 0:u.getLabelProps(l,t))?r:{ref:t,...l};return(0,Yn.jsxs)(Zn.label,{...d,className:ie("chakra-form__label",i.className),__css:{display:"block",textAlign:"start",...n},children:[a,(null==u?void 0:u.isRequired)?s:c]})}));T$.displayName="FormLabel";var C$=ne((function(e,t){const r=NU(),n=MU();if(!(null==r?void 0:r.isRequired))return null;const i=ie("chakra-form__required-indicator",e.className);return(0,Yn.jsx)(Zn.span,{...null==r?void 0:r.getRequiredIndicatorProps(e,t),__css:n.requiredIndicator,className:i})}));function j$(e){return n.Children.toArray(e).filter((e=>(0,n.isValidElement)(e)))}C$.displayName="RequiredIndicator";var[R$,I$]=di({name:"InputGroupStylesContext",errorMessage:"useInputGroupStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),M$=ne((function(e,t){const r=li("Input",e),{children:i,className:o,...a}=Qt(e),s=ie("chakra-input__group",o),c={},l=j$(i),u=r.field;l.forEach((e=>{var t,n;r&&(u&&"InputLeftElement"===e.type.id&&(c.paddingStart=null!=(t=u.height)?t:u.h),u&&"InputRightElement"===e.type.id&&(c.paddingEnd=null!=(n=u.height)?n:u.h),"InputRightAddon"===e.type.id&&(c.borderEndRadius=0),"InputLeftAddon"===e.type.id&&(c.borderStartRadius=0))}));const d=l.map((t=>{var r,i;const o=GB({size:(null==(r=t.props)?void 0:r.size)||e.size,variant:(null==(i=t.props)?void 0:i.variant)||e.variant});return"Input"!==t.type.id?(0,n.cloneElement)(t,o):(0,n.cloneElement)(t,Object.assign(o,c,t.props))}));return(0,Yn.jsx)(Zn.div,{className:s,ref:t,__css:{width:"100%",display:"flex",position:"relative",isolation:"isolate",...r.group},"data-group":!0,...a,children:(0,Yn.jsx)(R$,{value:r,children:d})})}));function L$(e){const{isDisabled:t,isInvalid:r,isReadOnly:n,isRequired:i,...o}=N$(e);return{...o,disabled:t,readOnly:n,required:i,"aria-invalid":ue(r),"aria-required":ue(i),"aria-readonly":ue(n)}}function N$(e){var t,r,n;const i=NU(),{id:o,disabled:a,readOnly:s,required:c,isRequired:l,isInvalid:u,isReadOnly:d,isDisabled:h,onFocus:f,onBlur:p,...m}=e,g=e["aria-describedby"]?[e["aria-describedby"]]:[];return(null==i?void 0:i.hasFeedbackText)&&(null==i?void 0:i.isInvalid)&&g.push(i.feedbackId),(null==i?void 0:i.hasHelpText)&&g.push(i.helpTextId),{...m,"aria-describedby":g.join(" ")||void 0,id:null!=o?o:null==i?void 0:i.id,isDisabled:null!=(t=null!=a?a:h)?t:null==i?void 0:i.isDisabled,isReadOnly:null!=(r=null!=s?s:d)?r:null==i?void 0:i.isReadOnly,isRequired:null!=(n=null!=c?c:l)?n:null==i?void 0:i.isRequired,isInvalid:null!=u?u:null==i?void 0:i.isInvalid,onFocus:de(null==i?void 0:i.onFocus,f),onBlur:de(null==i?void 0:i.onBlur,p)}}M$.displayName="InputGroup";var D$=ne((function(e,t){const{htmlSize:r,...n}=e,i=li("Input",n),o=L$(Qt(n)),a=ie("chakra-input",e.className);return(0,Yn.jsx)(Zn.input,{size:r,...o,__css:i.field,ref:t,className:a})}));D$.displayName="Input",D$.id="Input";var z$=Zn("div",{baseStyle:{display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",top:"0",zIndex:2}}),B$=ne((function(e,t){var r,n;const{placement:i="left",...o}=e,a=I$(),s=a.field,c={["left"===i?"insetStart":"insetEnd"]:"0",width:null!=(r=null==s?void 0:s.height)?r:null==s?void 0:s.h,height:null!=(n=null==s?void 0:s.height)?n:null==s?void 0:s.h,fontSize:null==s?void 0:s.fontSize,...a.element};return(0,Yn.jsx)(z$,{ref:t,__css:c,...o})}));B$.id="InputElement",B$.displayName="InputElement";var U$=ne((function(e,t){const{className:r,...n}=e,i=ie("chakra-input__left-element",r);return(0,Yn.jsx)(B$,{ref:t,placement:"left",className:i,...n})}));U$.id="InputLeftElement",U$.displayName="InputLeftElement";var F$=ne((function(e,t){const{className:r,...n}=e,i=ie("chakra-input__right-element",r);return(0,Yn.jsx)(B$,{ref:t,placement:"right",className:i,...n})}));F$.id="InputRightElement",F$.displayName="InputRightElement";var[$$,H$]=di({name:"ListStylesContext",errorMessage:"useListStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),V$=ne((function(e,t){const r=li("List",e),{children:n,styleType:i="none",stylePosition:o,spacing:a,...s}=Qt(e),c=j$(n),l=a?{"& > *:not(style) ~ *:not(style)":{mt:a}}:{};return(0,Yn.jsx)($$,{value:r,children:(0,Yn.jsx)(Zn.ul,{ref:t,listStyleType:i,listStylePosition:o,role:"list",__css:{...r.container,...l},...s,children:c})})}));V$.displayName="List";var q$=ne(((e,t)=>{const{as:r,...n}=e;return(0,Yn.jsx)(V$,{ref:t,as:"ol",styleType:"decimal",marginStart:"1em",...n})}));q$.displayName="OrderedList";var K$=ne((function(e,t){const{as:r,...n}=e;return(0,Yn.jsx)(V$,{ref:t,as:"ul",styleType:"initial",marginStart:"1em",...n})}));K$.displayName="UnorderedList";var W$=ne((function(e,t){const r=H$();return(0,Yn.jsx)(Zn.li,{ref:t,...e,__css:r.item})}));W$.displayName="ListItem";var G$=ne((function(e,t){const r=H$();return(0,Yn.jsx)(LA,{ref:t,role:"presentation",...e,__css:r.icon})}));G$.displayName="ListIcon";var Z$={exit:{scale:.85,opacity:0,transition:{opacity:{duration:.15,easings:"easeInOut"},scale:{duration:.2,easings:"easeInOut"}}},enter:{scale:1,opacity:1,transition:{opacity:{easings:"easeOut",duration:.2},scale:{duration:.2,ease:[.175,.885,.4,1.1]}}}};function Y$(e){return["html","body","#document"].includes(e.localName)?e.ownerDocument.body:IB(e)&&function(e){const t=e.ownerDocument.defaultView||window,{overflow:r,overflowX:n,overflowY:i}=t.getComputedStyle(e);return/auto|scroll|overlay|hidden/.test(r+i+n)}(e)?e:Y$(function(e){return"html"===e.localName?e:e.assignedSlot||e.parentElement||e.ownerDocument.documentElement}(e))}var X$=(e,t)=>({var:e,varRef:t?`var(${e}, ${t})`:`var(${e})`}),J$={arrowShadowColor:X$("--popper-arrow-shadow-color"),arrowSize:X$("--popper-arrow-size","8px"),arrowSizeHalf:X$("--popper-arrow-size-half"),arrowBg:X$("--popper-arrow-bg"),transformOrigin:X$("--popper-transform-origin"),arrowOffset:X$("--popper-arrow-offset")};var Q$={top:"bottom center","top-start":"bottom left","top-end":"bottom right",bottom:"top center","bottom-start":"top left","bottom-end":"top right",left:"right center","left-start":"right top","left-end":"right bottom",right:"left center","right-start":"left top","right-end":"left bottom"},eH={scroll:!0,resize:!0};function tH(e){let t;return t="object"===typeof e?{enabled:!0,options:{...eH,...e}}:{enabled:e,options:eH},t}var rH={name:"matchWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:({state:e})=>{e.styles.popper.width=`${e.rects.reference.width}px`},effect:({state:e})=>()=>{const t=e.elements.reference;e.elements.popper.style.width=`${t.offsetWidth}px`}},nH={name:"transformOrigin",enabled:!0,phase:"write",fn:({state:e})=>{iH(e)},effect:({state:e})=>()=>{iH(e)}},iH=e=>{var t;e.elements.popper.style.setProperty(J$.transformOrigin.var,(t=e.placement,Q$[t]))},oH={name:"positionArrow",enabled:!0,phase:"afterWrite",fn:({state:e})=>{aH(e)}},aH=e=>{var t;if(!e.placement)return;const r=sH(e.placement);if((null==(t=e.elements)?void 0:t.arrow)&&r){Object.assign(e.elements.arrow.style,{[r.property]:r.value,width:J$.arrowSize.varRef,height:J$.arrowSize.varRef,zIndex:-1});const t={[J$.arrowSizeHalf.var]:`calc(${J$.arrowSize.varRef} / 2 - 1px)`,[J$.arrowOffset.var]:`calc(${J$.arrowSizeHalf.varRef} * -1)`};for(const r in t)e.elements.arrow.style.setProperty(r,t[r])}},sH=e=>e.startsWith("top")?{property:"bottom",value:J$.arrowOffset.varRef}:e.startsWith("bottom")?{property:"top",value:J$.arrowOffset.varRef}:e.startsWith("left")?{property:"right",value:J$.arrowOffset.varRef}:e.startsWith("right")?{property:"left",value:J$.arrowOffset.varRef}:void 0,cH={name:"innerArrow",enabled:!0,phase:"main",requires:["arrow"],fn:({state:e})=>{lH(e)},effect:({state:e})=>()=>{lH(e)}},lH=e=>{if(!e.elements.arrow)return;const t=e.elements.arrow.querySelector("[data-popper-arrow-inner]");if(!t)return;const r=(n=e.placement).includes("top")?"1px 1px 0px 0 var(--popper-arrow-shadow-color)":n.includes("bottom")?"-1px -1px 0px 0 var(--popper-arrow-shadow-color)":n.includes("right")?"-1px 1px 0px 0 var(--popper-arrow-shadow-color)":n.includes("left")?"1px -1px 0px 0 var(--popper-arrow-shadow-color)":void 0;var n;r&&t.style.setProperty("--popper-arrow-default-shadow",r),Object.assign(t.style,{transform:"rotate(45deg)",background:J$.arrowBg.varRef,top:0,left:0,width:"100%",height:"100%",position:"absolute",zIndex:"inherit",boxShadow:"var(--popper-arrow-shadow, var(--popper-arrow-default-shadow))"})},uH={"start-start":{ltr:"left-start",rtl:"right-start"},"start-end":{ltr:"left-end",rtl:"right-end"},"end-start":{ltr:"right-start",rtl:"left-start"},"end-end":{ltr:"right-end",rtl:"left-end"},start:{ltr:"left",rtl:"right"},end:{ltr:"right",rtl:"left"}},dH={"auto-start":"auto-end","auto-end":"auto-start","top-start":"top-end","top-end":"top-start","bottom-start":"bottom-end","bottom-end":"bottom-start"};function hH(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function fH(e){return e instanceof hH(e).Element||e instanceof Element}function pH(e){return e instanceof hH(e).HTMLElement||e instanceof HTMLElement}function mH(e){return"undefined"!==typeof ShadowRoot&&(e instanceof hH(e).ShadowRoot||e instanceof ShadowRoot)}var gH=Math.max,vH=Math.min,yH=Math.round;function bH(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}function wH(){return!/^((?!chrome|android).)*safari/i.test(bH())}function xH(e,t,r){void 0===t&&(t=!1),void 0===r&&(r=!1);var n=e.getBoundingClientRect(),i=1,o=1;t&&pH(e)&&(i=e.offsetWidth>0&&yH(n.width)/e.offsetWidth||1,o=e.offsetHeight>0&&yH(n.height)/e.offsetHeight||1);var a=(fH(e)?hH(e):window).visualViewport,s=!wH()&&r,c=(n.left+(s&&a?a.offsetLeft:0))/i,l=(n.top+(s&&a?a.offsetTop:0))/o,u=n.width/i,d=n.height/o;return{width:u,height:d,top:l,right:c+u,bottom:l+d,left:c,x:c,y:l}}function _H(e){var t=hH(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function SH(e){return e?(e.nodeName||"").toLowerCase():null}function kH(e){return((fH(e)?e.ownerDocument:e.document)||window.document).documentElement}function EH(e){return xH(kH(e)).left+_H(e).scrollLeft}function AH(e){return hH(e).getComputedStyle(e)}function PH(e){var t=AH(e),r=t.overflow,n=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(r+i+n)}function OH(e,t,r){void 0===r&&(r=!1);var n=pH(t),i=pH(t)&&function(e){var t=e.getBoundingClientRect(),r=yH(t.width)/e.offsetWidth||1,n=yH(t.height)/e.offsetHeight||1;return 1!==r||1!==n}(t),o=kH(t),a=xH(e,i,r),s={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(n||!n&&!r)&&(("body"!==SH(t)||PH(o))&&(s=function(e){return e!==hH(e)&&pH(e)?{scrollLeft:(t=e).scrollLeft,scrollTop:t.scrollTop}:_H(e);var t}(t)),pH(t)?((c=xH(t,!0)).x+=t.clientLeft,c.y+=t.clientTop):o&&(c.x=EH(o))),{x:a.left+s.scrollLeft-c.x,y:a.top+s.scrollTop-c.y,width:a.width,height:a.height}}function TH(e){var t=xH(e),r=e.offsetWidth,n=e.offsetHeight;return Math.abs(t.width-r)<=1&&(r=t.width),Math.abs(t.height-n)<=1&&(n=t.height),{x:e.offsetLeft,y:e.offsetTop,width:r,height:n}}function CH(e){return"html"===SH(e)?e:e.assignedSlot||e.parentNode||(mH(e)?e.host:null)||kH(e)}function jH(e){return["html","body","#document"].indexOf(SH(e))>=0?e.ownerDocument.body:pH(e)&&PH(e)?e:jH(CH(e))}function RH(e,t){var r;void 0===t&&(t=[]);var n=jH(e),i=n===(null==(r=e.ownerDocument)?void 0:r.body),o=hH(n),a=i?[o].concat(o.visualViewport||[],PH(n)?n:[]):n,s=t.concat(a);return i?s:s.concat(RH(CH(a)))}function IH(e){return["table","td","th"].indexOf(SH(e))>=0}function MH(e){return pH(e)&&"fixed"!==AH(e).position?e.offsetParent:null}function LH(e){for(var t=hH(e),r=MH(e);r&&IH(r)&&"static"===AH(r).position;)r=MH(r);return r&&("html"===SH(r)||"body"===SH(r)&&"static"===AH(r).position)?t:r||function(e){var t=/firefox/i.test(bH());if(/Trident/i.test(bH())&&pH(e)&&"fixed"===AH(e).position)return null;var r=CH(e);for(mH(r)&&(r=r.host);pH(r)&&["html","body"].indexOf(SH(r))<0;){var n=AH(r);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||t&&"filter"===n.willChange||t&&n.filter&&"none"!==n.filter)return r;r=r.parentNode}return null}(e)||t}var NH="top",DH="bottom",zH="right",BH="left",UH="auto",FH=[NH,DH,zH,BH],$H="start",HH="end",VH="clippingParents",qH="viewport",KH="popper",WH="reference",GH=FH.reduce((function(e,t){return e.concat([t+"-"+$H,t+"-"+HH])}),[]),ZH=[].concat(FH,[UH]).reduce((function(e,t){return e.concat([t,t+"-"+$H,t+"-"+HH])}),[]),YH=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function XH(e){var t=new Map,r=new Set,n=[];function i(e){r.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!r.has(e)){var n=t.get(e);n&&i(n)}})),n.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){r.has(e.name)||i(e)})),n}function JH(e){var t;return function(){return t||(t=new Promise((function(r){Promise.resolve().then((function(){t=void 0,r(e())}))}))),t}}var QH={placement:"bottom",modifiers:[],strategy:"absolute"};function eV(){for(var e=arguments.length,t=new Array(e),r=0;r=0?"x":"y"}function sV(e){var t,r=e.reference,n=e.element,i=e.placement,o=i?iV(i):null,a=i?oV(i):null,s=r.x+r.width/2-n.width/2,c=r.y+r.height/2-n.height/2;switch(o){case NH:t={x:s,y:r.y-n.height};break;case DH:t={x:s,y:r.y+r.height};break;case zH:t={x:r.x+r.width,y:c};break;case BH:t={x:r.x-n.width,y:c};break;default:t={x:r.x,y:r.y}}var l=o?aV(o):null;if(null!=l){var u="y"===l?"height":"width";switch(a){case $H:t[l]=t[l]-(r[u]/2-n[u]/2);break;case HH:t[l]=t[l]+(r[u]/2-n[u]/2)}}return t}const cV={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,r=e.name;t.modifiersData[r]=sV({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}};var lV={top:"auto",right:"auto",bottom:"auto",left:"auto"};function uV(e){var t,r=e.popper,n=e.popperRect,i=e.placement,o=e.variation,a=e.offsets,s=e.position,c=e.gpuAcceleration,l=e.adaptive,u=e.roundOffsets,d=e.isFixed,h=a.x,f=void 0===h?0:h,p=a.y,m=void 0===p?0:p,g="function"===typeof u?u({x:f,y:m}):{x:f,y:m};f=g.x,m=g.y;var v=a.hasOwnProperty("x"),y=a.hasOwnProperty("y"),b=BH,w=NH,x=window;if(l){var _=LH(r),S="clientHeight",k="clientWidth";if(_===hH(r)&&"static"!==AH(_=kH(r)).position&&"absolute"===s&&(S="scrollHeight",k="scrollWidth"),i===NH||(i===BH||i===zH)&&o===HH)w=DH,m-=(d&&_===x&&x.visualViewport?x.visualViewport.height:_[S])-n.height,m*=c?1:-1;if(i===BH||(i===NH||i===DH)&&o===HH)b=zH,f-=(d&&_===x&&x.visualViewport?x.visualViewport.width:_[k])-n.width,f*=c?1:-1}var E,A=Object.assign({position:s},l&&lV),P=!0===u?function(e,t){var r=e.x,n=e.y,i=t.devicePixelRatio||1;return{x:yH(r*i)/i||0,y:yH(n*i)/i||0}}({x:f,y:m},hH(r)):{x:f,y:m};return f=P.x,m=P.y,c?Object.assign({},A,((E={})[w]=y?"0":"",E[b]=v?"0":"",E.transform=(x.devicePixelRatio||1)<=1?"translate("+f+"px, "+m+"px)":"translate3d("+f+"px, "+m+"px, 0)",E)):Object.assign({},A,((t={})[w]=y?m+"px":"",t[b]=v?f+"px":"",t.transform="",t))}const dV={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,r=e.options,n=r.gpuAcceleration,i=void 0===n||n,o=r.adaptive,a=void 0===o||o,s=r.roundOffsets,c=void 0===s||s,l={placement:iV(t.placement),variation:oV(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,uV(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:c})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,uV(Object.assign({},l,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};const hV={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var r=t.styles[e]||{},n=t.attributes[e]||{},i=t.elements[e];pH(i)&&SH(i)&&(Object.assign(i.style,r),Object.keys(n).forEach((function(e){var t=n[e];!1===t?i.removeAttribute(e):i.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,r={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,r.popper),t.styles=r,t.elements.arrow&&Object.assign(t.elements.arrow.style,r.arrow),function(){Object.keys(t.elements).forEach((function(e){var n=t.elements[e],i=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:r[e]).reduce((function(e,t){return e[t]="",e}),{});pH(n)&&SH(n)&&(Object.assign(n.style,o),Object.keys(i).forEach((function(e){n.removeAttribute(e)})))}))}},requires:["computeStyles"]};const fV={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,r=e.options,n=e.name,i=r.offset,o=void 0===i?[0,0]:i,a=ZH.reduce((function(e,r){return e[r]=function(e,t,r){var n=iV(e),i=[BH,NH].indexOf(n)>=0?-1:1,o="function"===typeof r?r(Object.assign({},t,{placement:e})):r,a=o[0],s=o[1];return a=a||0,s=(s||0)*i,[BH,zH].indexOf(n)>=0?{x:s,y:a}:{x:a,y:s}}(r,t.rects,o),e}),{}),s=a[t.placement],c=s.x,l=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[n]=a}};var pV={left:"right",right:"left",bottom:"top",top:"bottom"};function mV(e){return e.replace(/left|right|bottom|top/g,(function(e){return pV[e]}))}var gV={start:"end",end:"start"};function vV(e){return e.replace(/start|end/g,(function(e){return gV[e]}))}function yV(e,t){var r=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(r&&mH(r)){var n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function bV(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function wV(e,t,r){return t===qH?bV(function(e,t){var r=hH(e),n=kH(e),i=r.visualViewport,o=n.clientWidth,a=n.clientHeight,s=0,c=0;if(i){o=i.width,a=i.height;var l=wH();(l||!l&&"fixed"===t)&&(s=i.offsetLeft,c=i.offsetTop)}return{width:o,height:a,x:s+EH(e),y:c}}(e,r)):fH(t)?function(e,t){var r=xH(e,!1,"fixed"===t);return r.top=r.top+e.clientTop,r.left=r.left+e.clientLeft,r.bottom=r.top+e.clientHeight,r.right=r.left+e.clientWidth,r.width=e.clientWidth,r.height=e.clientHeight,r.x=r.left,r.y=r.top,r}(t,r):bV(function(e){var t,r=kH(e),n=_H(e),i=null==(t=e.ownerDocument)?void 0:t.body,o=gH(r.scrollWidth,r.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),a=gH(r.scrollHeight,r.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),s=-n.scrollLeft+EH(e),c=-n.scrollTop;return"rtl"===AH(i||r).direction&&(s+=gH(r.clientWidth,i?i.clientWidth:0)-o),{width:o,height:a,x:s,y:c}}(kH(e)))}function xV(e,t,r,n){var i="clippingParents"===t?function(e){var t=RH(CH(e)),r=["absolute","fixed"].indexOf(AH(e).position)>=0&&pH(e)?LH(e):e;return fH(r)?t.filter((function(e){return fH(e)&&yV(e,r)&&"body"!==SH(e)})):[]}(e):[].concat(t),o=[].concat(i,[r]),a=o[0],s=o.reduce((function(t,r){var i=wV(e,r,n);return t.top=gH(i.top,t.top),t.right=vH(i.right,t.right),t.bottom=vH(i.bottom,t.bottom),t.left=gH(i.left,t.left),t}),wV(e,a,n));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function _V(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function SV(e,t){return t.reduce((function(t,r){return t[r]=e,t}),{})}function kV(e,t){void 0===t&&(t={});var r=t,n=r.placement,i=void 0===n?e.placement:n,o=r.strategy,a=void 0===o?e.strategy:o,s=r.boundary,c=void 0===s?VH:s,l=r.rootBoundary,u=void 0===l?qH:l,d=r.elementContext,h=void 0===d?KH:d,f=r.altBoundary,p=void 0!==f&&f,m=r.padding,g=void 0===m?0:m,v=_V("number"!==typeof g?g:SV(g,FH)),y=h===KH?WH:KH,b=e.rects.popper,w=e.elements[p?y:h],x=xV(fH(w)?w:w.contextElement||kH(e.elements.popper),c,u,a),_=xH(e.elements.reference),S=sV({reference:_,element:b,strategy:"absolute",placement:i}),k=bV(Object.assign({},b,S)),E=h===KH?k:_,A={top:x.top-E.top+v.top,bottom:E.bottom-x.bottom+v.bottom,left:x.left-E.left+v.left,right:E.right-x.right+v.right},P=e.modifiersData.offset;if(h===KH&&P){var O=P[i];Object.keys(A).forEach((function(e){var t=[zH,DH].indexOf(e)>=0?1:-1,r=[NH,DH].indexOf(e)>=0?"y":"x";A[e]+=O[r]*t}))}return A}const EV={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,r=e.options,n=e.name;if(!t.modifiersData[n]._skip){for(var i=r.mainAxis,o=void 0===i||i,a=r.altAxis,s=void 0===a||a,c=r.fallbackPlacements,l=r.padding,u=r.boundary,d=r.rootBoundary,h=r.altBoundary,f=r.flipVariations,p=void 0===f||f,m=r.allowedAutoPlacements,g=t.options.placement,v=iV(g),y=c||(v===g||!p?[mV(g)]:function(e){if(iV(e)===UH)return[];var t=mV(e);return[vV(e),t,vV(t)]}(g)),b=[g].concat(y).reduce((function(e,r){return e.concat(iV(r)===UH?function(e,t){void 0===t&&(t={});var r=t,n=r.placement,i=r.boundary,o=r.rootBoundary,a=r.padding,s=r.flipVariations,c=r.allowedAutoPlacements,l=void 0===c?ZH:c,u=oV(n),d=u?s?GH:GH.filter((function(e){return oV(e)===u})):FH,h=d.filter((function(e){return l.indexOf(e)>=0}));0===h.length&&(h=d);var f=h.reduce((function(t,r){return t[r]=kV(e,{placement:r,boundary:i,rootBoundary:o,padding:a})[iV(r)],t}),{});return Object.keys(f).sort((function(e,t){return f[e]-f[t]}))}(t,{placement:r,boundary:u,rootBoundary:d,padding:l,flipVariations:p,allowedAutoPlacements:m}):r)}),[]),w=t.rects.reference,x=t.rects.popper,_=new Map,S=!0,k=b[0],E=0;E=0,C=T?"width":"height",j=kV(t,{placement:A,boundary:u,rootBoundary:d,altBoundary:h,padding:l}),R=T?O?zH:BH:O?DH:NH;w[C]>x[C]&&(R=mV(R));var I=mV(R),M=[];if(o&&M.push(j[P]<=0),s&&M.push(j[R]<=0,j[I]<=0),M.every((function(e){return e}))){k=A,S=!1;break}_.set(A,M)}if(S)for(var L=function(e){var t=b.find((function(t){var r=_.get(t);if(r)return r.slice(0,e).every((function(e){return e}))}));if(t)return k=t,"break"},N=p?3:1;N>0;N--){if("break"===L(N))break}t.placement!==k&&(t.modifiersData[n]._skip=!0,t.placement=k,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function AV(e,t,r){return gH(e,vH(t,r))}const PV={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,r=e.options,n=e.name,i=r.mainAxis,o=void 0===i||i,a=r.altAxis,s=void 0!==a&&a,c=r.boundary,l=r.rootBoundary,u=r.altBoundary,d=r.padding,h=r.tether,f=void 0===h||h,p=r.tetherOffset,m=void 0===p?0:p,g=kV(t,{boundary:c,rootBoundary:l,padding:d,altBoundary:u}),v=iV(t.placement),y=oV(t.placement),b=!y,w=aV(v),x="x"===w?"y":"x",_=t.modifiersData.popperOffsets,S=t.rects.reference,k=t.rects.popper,E="function"===typeof m?m(Object.assign({},t.rects,{placement:t.placement})):m,A="number"===typeof E?{mainAxis:E,altAxis:E}:Object.assign({mainAxis:0,altAxis:0},E),P=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,O={x:0,y:0};if(_){if(o){var T,C="y"===w?NH:BH,j="y"===w?DH:zH,R="y"===w?"height":"width",I=_[w],M=I+g[C],L=I-g[j],N=f?-k[R]/2:0,D=y===$H?S[R]:k[R],z=y===$H?-k[R]:-S[R],B=t.elements.arrow,U=f&&B?TH(B):{width:0,height:0},F=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},$=F[C],H=F[j],V=AV(0,S[R],U[R]),q=b?S[R]/2-N-V-$-A.mainAxis:D-V-$-A.mainAxis,K=b?-S[R]/2+N+V+H+A.mainAxis:z+V+H+A.mainAxis,W=t.elements.arrow&&LH(t.elements.arrow),G=W?"y"===w?W.clientTop||0:W.clientLeft||0:0,Z=null!=(T=null==P?void 0:P[w])?T:0,Y=I+K-Z,X=AV(f?vH(M,I+q-Z-G):M,I,f?gH(L,Y):L);_[w]=X,O[w]=X-I}if(s){var J,Q="x"===w?NH:BH,ee="x"===w?DH:zH,te=_[x],re="y"===x?"height":"width",ne=te+g[Q],ie=te-g[ee],oe=-1!==[NH,BH].indexOf(v),ae=null!=(J=null==P?void 0:P[x])?J:0,se=oe?ne:te-S[re]-k[re]-ae+A.altAxis,ce=oe?te+S[re]+k[re]-ae-A.altAxis:ie,le=f&&oe?function(e,t,r){var n=AV(e,t,r);return n>r?r:n}(se,te,ce):AV(f?se:ne,te,f?ce:ie);_[x]=le,O[x]=le-te}t.modifiersData[n]=O}},requiresIfExists:["offset"]};const OV={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,r=e.state,n=e.name,i=e.options,o=r.elements.arrow,a=r.modifiersData.popperOffsets,s=iV(r.placement),c=aV(s),l=[BH,zH].indexOf(s)>=0?"height":"width";if(o&&a){var u=function(e,t){return _V("number"!==typeof(e="function"===typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:SV(e,FH))}(i.padding,r),d=TH(o),h="y"===c?NH:BH,f="y"===c?DH:zH,p=r.rects.reference[l]+r.rects.reference[c]-a[c]-r.rects.popper[l],m=a[c]-r.rects.reference[c],g=LH(o),v=g?"y"===c?g.clientHeight||0:g.clientWidth||0:0,y=p/2-m/2,b=u[h],w=v-d[l]-u[f],x=v/2-d[l]/2+y,_=AV(b,x,w),S=c;r.modifiersData[n]=((t={})[S]=_,t.centerOffset=_-x,t)}},effect:function(e){var t=e.state,r=e.options.element,n=void 0===r?"[data-popper-arrow]":r;null!=n&&("string"!==typeof n||(n=t.elements.popper.querySelector(n)))&&yV(t.elements.popper,n)&&(t.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function TV(e,t,r){return void 0===r&&(r={x:0,y:0}),{top:e.top-t.height-r.y,right:e.right-t.width+r.x,bottom:e.bottom-t.height+r.y,left:e.left-t.width-r.x}}function CV(e){return[NH,zH,DH,BH].some((function(t){return e[t]>=0}))}const jV={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,r=e.name,n=t.rects.reference,i=t.rects.popper,o=t.modifiersData.preventOverflow,a=kV(t,{elementContext:"reference"}),s=kV(t,{altBoundary:!0}),c=TV(a,n),l=TV(s,i,o),u=CV(c),d=CV(l);t.modifiersData[r]={referenceClippingOffsets:c,popperEscapeOffsets:l,isReferenceHidden:u,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":d})}};var RV=tV({defaultModifiers:[nV,cV,dV,hV,fV,EV,PV,OV,jV]});function IV(e={}){const{enabled:t=!0,modifiers:r,placement:i="bottom",strategy:o="absolute",arrowPadding:a=8,eventListeners:s=!0,offset:c,gutter:l=8,flip:u=!0,boundary:d="clippingParents",preventOverflow:h=!0,matchWidth:f,direction:p="ltr"}=e,m=(0,n.useRef)(null),g=(0,n.useRef)(null),v=(0,n.useRef)(null),y=function(e,t="ltr"){var r,n;const i=(null==(r=uH[e])?void 0:r[t])||e;return"ltr"===t?i:null!=(n=dH[e])?n:i}(i,p),b=(0,n.useRef)((()=>{})),w=(0,n.useCallback)((()=>{var e;t&&m.current&&g.current&&(null==(e=b.current)||e.call(b),v.current=RV(m.current,g.current,{placement:y,modifiers:[cH,oH,nH,{...rH,enabled:!!f},{name:"eventListeners",...tH(s)},{name:"arrow",options:{padding:a}},{name:"offset",options:{offset:null!=c?c:[0,l]}},{name:"flip",enabled:!!u,options:{padding:8}},{name:"preventOverflow",enabled:!!h,options:{boundary:d}},...null!=r?r:[]],strategy:o}),v.current.forceUpdate(),b.current=v.current.destroy)}),[y,t,r,f,s,a,c,l,u,h,d,o]);(0,n.useEffect)((()=>()=>{var e;m.current||g.current||(null==(e=v.current)||e.destroy(),v.current=null)}),[]);const x=(0,n.useCallback)((e=>{m.current=e,w()}),[w]),_=(0,n.useCallback)(((e={},t=null)=>({...e,ref:xi(x,t)})),[x]),S=(0,n.useCallback)((e=>{g.current=e,w()}),[w]),k=(0,n.useCallback)(((e={},t=null)=>({...e,ref:xi(S,t),style:{...e.style,position:o,minWidth:f?void 0:"max-content",inset:"0 auto auto 0"}})),[o,S,f]),E=(0,n.useCallback)(((e={},t=null)=>{const{size:r,shadowColor:n,bg:i,style:o,...a}=e;return{...a,ref:t,"data-popper-arrow":"",style:MV(e)}}),[]),A=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,"data-popper-arrow-inner":""})),[]);return{update(){var e;null==(e=v.current)||e.update()},forceUpdate(){var e;null==(e=v.current)||e.forceUpdate()},transformOrigin:J$.transformOrigin.varRef,referenceRef:x,popperRef:S,getPopperProps:k,getArrowProps:E,getArrowInnerProps:A,getReferenceProps:_}}function MV(e){const{size:t,shadowColor:r,bg:n,style:i}=e,o={...i,position:"absolute"};return t&&(o["--popper-arrow-size"]=t),r&&(o["--popper-arrow-shadow-color"]=r),n&&(o["--popper-arrow-bg"]=n),o}function LV(e={}){const{onClose:t,onOpen:r,isOpen:i,id:o}=e,a=pb(r),s=pb(t),[c,l]=(0,n.useState)(e.defaultIsOpen||!1),u=void 0!==i?i:c,d=void 0!==i,h=(0,n.useId)(),f=null!=o?o:`disclosure-${h}`,p=(0,n.useCallback)((()=>{d||l(!1),null==s||s()}),[d,s]),m=(0,n.useCallback)((()=>{d||l(!0),null==a||a()}),[d,a]),g=(0,n.useCallback)((()=>{u?p():m()}),[u,m,p]);return{isOpen:u,onOpen:m,onClose:p,onToggle:g,isControlled:d,getButtonProps:function(e={}){return{...e,"aria-expanded":u,"aria-controls":f,onClick(t){var r;null==(r=e.onClick)||r.call(e,t),g()}}},getDisclosureProps:function(e={}){return{...e,hidden:!u,id:f}}}}function NV(e,t,r,i){const o=pb(r);return(0,n.useEffect)((()=>{const n="function"===typeof e?e():null!=e?e:document;if(r&&n)return n.addEventListener(t,o,i),()=>{n.removeEventListener(t,o,i)}}),[t,e,i,o,r]),()=>{const r="function"===typeof e?e():null!=e?e:document;null==r||r.removeEventListener(t,o,i)}}var DV=e=>{var t;return(null==(t=e.current)?void 0:t.ownerDocument)||document},zV=e=>{var t,r;return(null==(r=null==(t=e.current)?void 0:t.ownerDocument)?void 0:r.defaultView)||window};function BV(e={}){const{openDelay:t=0,closeDelay:r=0,closeOnClick:i=!0,closeOnMouseDown:o,closeOnScroll:a,closeOnPointerDown:s=o,closeOnEsc:c=!0,onOpen:l,onClose:u,placement:d,id:h,isOpen:f,defaultIsOpen:p,arrowSize:m=10,arrowShadowColor:g,arrowPadding:v,modifiers:y,isDisabled:b,gutter:w,offset:x,direction:_,...S}=e,{isOpen:k,onOpen:E,onClose:A}=LV({isOpen:f,defaultIsOpen:p,onOpen:l,onClose:u}),{referenceRef:P,getPopperProps:O,getArrowInnerProps:T,getArrowProps:C}=IV({enabled:k,placement:d,arrowPadding:v,modifiers:y,gutter:w,offset:x,direction:_}),j=(0,n.useId)(),R=`tooltip-${null!=h?h:j}`,I=(0,n.useRef)(null),M=(0,n.useRef)(),L=(0,n.useCallback)((()=>{M.current&&(clearTimeout(M.current),M.current=void 0)}),[]),N=(0,n.useRef)(),D=(0,n.useCallback)((()=>{N.current&&(clearTimeout(N.current),N.current=void 0)}),[]),z=(0,n.useCallback)((()=>{D(),A()}),[A,D]),B=function(e,t){return(0,n.useEffect)((()=>{const r=DV(e);return r.addEventListener(UV,t),()=>r.removeEventListener(UV,t)}),[t,e]),()=>{const t=DV(e),r=zV(e);t.dispatchEvent(new r.CustomEvent(UV))}}(I,z),U=(0,n.useCallback)((()=>{if(!b&&!M.current){k&&B();const e=zV(I);M.current=e.setTimeout(E,t)}}),[B,b,k,E,t]),F=(0,n.useCallback)((()=>{L();const e=zV(I);N.current=e.setTimeout(z,r)}),[r,z,L]),$=(0,n.useCallback)((()=>{k&&i&&F()}),[i,F,k]),H=(0,n.useCallback)((()=>{k&&s&&F()}),[s,F,k]),V=(0,n.useCallback)((e=>{k&&"Escape"===e.key&&F()}),[k,F]);NV((()=>DV(I)),"keydown",c?V:void 0),NV((()=>{if(!a)return null;const e=I.current;if(!e)return null;const t=Y$(e);return"body"===t.localName?zV(I):t}),"scroll",(()=>{k&&a&&z()}),{passive:!0,capture:!0}),(0,n.useEffect)((()=>{b&&(L(),k&&A())}),[b,k,A,L]),(0,n.useEffect)((()=>()=>{L(),D()}),[L,D]),NV((()=>I.current),"pointerleave",F);const q=(0,n.useCallback)(((e={},t=null)=>{const r={...e,ref:xi(I,t,P),onPointerEnter:de(e.onPointerEnter,(e=>{"touch"!==e.pointerType&&U()})),onClick:de(e.onClick,$),onPointerDown:de(e.onPointerDown,H),onFocus:de(e.onFocus,U),onBlur:de(e.onBlur,F),"aria-describedby":k?R:void 0};return r}),[U,F,H,k,R,$,P]),K=(0,n.useCallback)(((e={},t=null)=>O({...e,style:{...e.style,[J$.arrowSize.var]:m?`${m}px`:void 0,[J$.arrowShadowColor.var]:g}},t)),[O,m,g]),W=(0,n.useCallback)(((e={},t=null)=>{const r={...e.style,position:"relative",transformOrigin:J$.transformOrigin.varRef};return{ref:t,...S,...e,id:R,role:"tooltip",style:r}}),[S,R]);return{isOpen:k,show:U,hide:F,getTriggerProps:q,getTooltipProps:W,getTooltipPositionerProps:K,getArrowProps:C,getArrowInnerProps:T}}var UV="chakra-ui:close-tooltip";var FV=Zn(CA.div),$V=ne(((e,t)=>{var r,i;const o=ci("Tooltip",e),a=Qt(e),s=ni(),{children:c,label:l,shouldWrapChildren:u,"aria-label":d,hasArrow:h,bg:f,portalProps:p,background:m,backgroundColor:g,bgColor:v,motionProps:y,...b}=a,w=null!=(i=null!=(r=null!=m?m:g)?r:f)?i:v;if(w){o.bg=w;const e=function(e,t,r){var n,i,o;return null!=(o=null==(i=null==(n=e.__cssMap)?void 0:n[`${t}.${r}`])?void 0:i.varRef)?o:r}(s,"colors",w);o[J$.arrowBg.var]=e}const x=BV({...b,direction:s.direction});let _;if("string"===typeof c||u)_=(0,Yn.jsx)(Zn.span,{display:"inline-block",tabIndex:0,...x.getTriggerProps(),children:c});else{const e=n.Children.only(c);_=(0,n.cloneElement)(e,x.getTriggerProps(e.props,e.ref))}const S=!!d,k=x.getTooltipProps({},t),E=S?function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(k,["role","id"]):k,A=function(e,t){const r={};for(const n of t)n in e&&(r[n]=e[n]);return r}(k,["role","id"]);return l?(0,Yn.jsxs)(Yn.Fragment,{children:[_,(0,Yn.jsx)(iP,{children:x.isOpen&&(0,Yn.jsx)(dP,{...p,children:(0,Yn.jsx)(Zn.div,{...x.getTooltipPositionerProps(),__css:{zIndex:o.zIndex,pointerEvents:"none"},children:(0,Yn.jsxs)(FV,{variants:Z$,initial:"exit",animate:"enter",exit:"exit",...y,...E,__css:o,children:[l,S&&(0,Yn.jsx)(Zn.span,{srOnly:!0,...A,children:d}),h&&(0,Yn.jsx)(Zn.div,{"data-popper-arrow":!0,className:"chakra-tooltip__arrow-wrapper",children:(0,Yn.jsx)(Zn.div,{"data-popper-arrow-inner":!0,className:"chakra-tooltip__arrow",__css:{bg:o.bg}})})]})})})})]}):(0,Yn.jsx)(Yn.Fragment,{children:c})}));$V.displayName="Tooltip";var HV=r(9685),VV=r.n(HV),qV=r(9378),KV=r.n(qV);const WV="default"in KV()?KV().default:KV(),GV=({address:e,identiconSize:t,...r})=>(0,Yn.jsx)(ei,{sx:{canvas:{borderRadius:"4px"}},zIndex:10,background:"white",borderRadius:"4px","data-testid":"identicon",...r,children:(0,Yn.jsx)(WV,{background:"white",size:t,string:e,style:{borderRadius:4}})}),ZV={stroke:EP.gray[400],borderRadius:"4px",p:"5px",bg:EP.gray[500]},YV=({addressKind:e,size:t="sm",identiconSize:r=20})=>{let n;switch(t){case"sm":n="30px";break;case"md":n="38.5px";break;case"lg":n="45.5px"}switch(e.type){case"secret_key":case"mnemonic":return(0,Yn.jsx)(GV,{width:n,height:n,padding:"5px",address:e.pkh,identiconSize:r});case"social":return(0,Yn.jsx)(fR,{width:n,height:n,...ZV,background:"white"});case"ledger":return(0,Yn.jsx)(eR,{width:n,height:n,...ZV,color:EP.gray[400]});case"multisig":return(0,Yn.jsx)(qj,{width:n,height:n,...ZV});case"contact":return(0,Yn.jsx)(xj,{width:n,height:n,...ZV});case"unknown":return(0,Yn.jsx)(wR,{width:n,height:n,...ZV});case"baker":{const t=`https://services.tzkt.io/v1/avatars/${e.pkh}`;return(0,Yn.jsx)(QB,{width:"30px",height:"30px",marginRight:"8px","data-testid":"baker-icon",ratio:1,children:(0,Yn.jsx)(vR,{src:t})})}}};var XV=r(8614),JV=r(4200),QV=r(1787),eq=r(4516),tq=r(292),rq=r.n(tq);function nq(e,t,r,n){return new(r||(r=Promise))((function(i,o){function a(e){try{c(n.next(e))}catch(t){o(t)}}function s(e){try{c(n.throw(e))}catch(t){o(t)}}function c(e){e.done?i(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(a,s)}c((n=n.apply(e,t||[])).next())}))}"function"===typeof SuppressedError&&SuppressedError;class iq{constructor(e,t,r){this.key=e;const n=e.substring(0,t?5:4);if(!Ys(n))throw new ds(`${hc(Zs.NO_PREFIX_MATCHED)} expecting either '${Fs.EDESK}' or '${Fs.EDSK}'.`);if(this._key=r(yc(this.key,Ks[n])),this._publicKey=this._key.slice(32),!this._key)throw new ds("unable to decode");this.isInit=this.init()}init(){return nq(this,void 0,void 0,(function*(){if(64!==this._key.length){const{publicKey:e,secretKey:t}=(0,Ka._w)(new Uint8Array(this._key));this._publicKey=e,this._key=t}return!0}))}sign(e,t){return nq(this,void 0,void 0,(function*(){yield this.isInit;const r=(0,Ka.Xx)(new Uint8Array(this._key),new Uint8Array(t)),n=qs()(r),i=e+kc(n);return{bytes:e,sig:vc(r,Ks.sig),prefixSig:vc(r,Ks.edsig),sbytes:i}}))}publicKey(){return nq(this,void 0,void 0,(function*(){return yield this.isInit,vc(this._publicKey,Ks.edpk)}))}publicKeyHash(){return nq(this,void 0,void 0,(function*(){return yield this.isInit,vc((0,Wa.hash)(new Uint8Array(this._publicKey),20),Ks.tz1)}))}secretKey(){return nq(this,void 0,void 0,(function*(){yield this.isInit;let e=this._key;const{secretKey:t}=(0,Ka._w)(new Uint8Array(e).slice(0,32));return e=qs()(t),vc(e,Ks.edsk)}))}}const oq={p256:{pk:Ks.p2pk,sk:Ks.p2sk,pkh:Ks.tz3,sig:Ks.p2sig},secp256k1:{pk:Ks.sppk,sk:Ks.spsk,pkh:Ks.tz2,sig:Ks.spsig}};class aq{constructor(e,t,r,n){this.curve=e,this.key=t;const i=t.substring(0,r?5:4);if(!Ys(i))throw new ds(hc(Zs.NO_PREFIX_MATCHED)+` expecting one of the following prefix '${Fs.SPSK}', '${Fs.SPESK}', '${Fs.P2SK}' or '${Fs.P2ESK}'.`);this._key=n(yc(this.key,Ks[i]));const o=new(Hs().ec)(this.curve).keyFromPrivate(this._key),a=o.getPublic().getY().toArray(),s=(a.length<32?a[a.length-1]:a[31])%2?3:2,c=new Array(32).fill(0);this._publicKey=qs()(new Uint8Array([s].concat(c.concat(o.getPublic().getX().toArray()).slice(-32))))}sign(e,t){return nq(this,void 0,void 0,(function*(){const r=new(Hs().ec)(this.curve).keyFromPrivate(this._key).sign(t,{canonical:!0}),n=r.r.toString("hex",64)+r.s.toString("hex",64),i=e+n;return{bytes:e,sig:vc(n,Ks.sig),prefixSig:vc(n,oq[this.curve].sig),sbytes:i}}))}publicKey(){return nq(this,void 0,void 0,(function*(){return vc(this._publicKey,oq[this.curve].pk)}))}publicKeyHash(){return nq(this,void 0,void 0,(function*(){return vc((0,Wa.hash)(new Uint8Array(this._publicKey),20),oq[this.curve].pkh)}))}secretKey(){return nq(this,void 0,void 0,(function*(){return vc(this._key,oq[this.curve].sk)}))}}const sq=aq.bind(null,"p256"),cq=aq.bind(null,"secp256k1");function lq(e){const t=[];for(let r=0;r64)throw new fq(o.length);if(!Object.prototype.hasOwnProperty.call(gq,r))throw new hq(`Unsupported curve "${r}" expecting either "p256" or "secp256k1"`);const a=new $s.ec(r);if(256!==(null===(n=a.n)||void 0===n?void 0:n.bitLength()))throw new dq(`Invalid curve "${r}" with bit size "${null===(i=a.n)||void 0===i?void 0:i.bitLength()}" expecting bit size "256"`);const s=(new TextEncoder).encode(gq[r]);let c=null,l=new Uint8Array,u=0;for(;0===u;){const e=new QV.zU(eq.SHA512,s).update(o).digest();c=new(rq())(e.subarray(0,32)),l=e.subarray(32),c.isZero()||c.cmp(a.n)>=0?o=e:u++}const d=a.keyPair({});return d.priv=c,new e(d,l)}derive(t){const r=new Uint8Array(37);0!==(t&yq)?r.set(this.keyPair.getPrivate().toArray(),1):r.set(this.keyPair.getPublic().encodeCompressed(),0),new DataView(r.buffer).setUint32(33,t);let n=new(rq())(0),i=new Uint8Array,o=0;for(;0===o;){const e=new QV.zU(eq.SHA512,this.chainCode).update(r).digest();n=new(rq())(e.subarray(0,32)),i=e.subarray(32),this.keyPair.ec.n&&n.cmp(this.keyPair.ec.n)<0&&(n=n.add(this.keyPair.getPrivate()).mod(this.keyPair.ec.n),n.isZero()||o++),r.set(i,1),r[0]=1}const a=this.keyPair.ec.keyPair({});return a.priv=n,new e(a,i)}derivePath(e){let t=this;for(const r of e)t=t.derive(r);return t}bytes(){if(!this.keyPair.priv)throw new ds("missing private key");const e=this.keyPair.priv.toArray(),t=new Uint8Array(32);return t.set(e,t.length-e.length),t}};const yq=2147483648;class bq extends Array{static from(e){return super.from(e).map((e=>e>>>0))}static fromString(e){if(0===e.length)return new bq;let t=e.split("/");const r=[];"m"===t[0]&&(t=t.slice(1));for(let n of t){if(0===n.length)throw new ss(e,": Invalid BIP32 path");let t=0;const i=n[n.length-1];"'"!==i&&"h"!==i&&"H"!==i||(t=yq,n=n.slice(0,n.length-1));const o=(parseInt(n,10)|t)>>>0;r.push(o)}return bq.from(r)}}class wq{constructor(e,t){this.priv=e,this.chainCode=t}static fromSeed(e){const t="string"===typeof e?lq(e):e;if(t.length<16||t.length>64)throw new fq(t.length);const r=(new TextEncoder).encode("ed25519 seed"),n=new QV.zU(eq.SHA512,r).update(t).digest();return new wq((0,Ka._w)(n.subarray(0,32)).secretKey,n.subarray(32))}seed(){return this.priv.subarray(0,32)}derive(e){if(0===(e&yq))throw new ss(e.toString(),": Non-hardened derivation path.");const t=new Uint8Array(37);t.set(this.seed(),1),new DataView(t.buffer).setUint32(33,e);const r=new QV.zU(eq.SHA512,this.chainCode).update(t).digest();return new wq((0,Ka._w)(r.subarray(0,32)).secretKey,r.subarray(32))}derivePath(e){let t=this;for(const r of e)t=t.derive(r);return t}}class xq{static fromFundraiser(e,t,r){if(!JV._I(r))throw new uq(r);const n=vc(JV.Z1(r,`${e}${t}`).slice(0,32),Ks.edsk2);return new xq(n)}static fromSecretKey(e,t){return nq(this,void 0,void 0,(function*(){return new xq(e,t)}))}static fromMnemonic({mnemonic:e,password:t="",derivationPath:r="44'/1729'/0'/0'",curve:n="ed25519"}){if(!JV._I(e))throw new uq(e);const i=((e,t,r)=>{const n=bq.fromString(t);let i;switch(r){case"ed25519":return i=wq.fromSeed(e).derivePath(n),vc(i.seed().slice(0,32),Ks.edsk2);case"secp256k1":case"p256":{const t="secp256k1"===r?Ks.spsk:Ks.p2sk;let i=vq.fromSeed(e,r);return i=i.derivePath(n),vc(new Uint8Array(i.keyPair.getPrivate().toArray()),t)}case"bip25519":throw new pq;default:throw new hq(`Unsupported curve "${r}" expecting one of the following "ed25519", "secp256k1", "p256"`)}})(JV.Z1(e,t),r,n);return new xq(i)}constructor(e,t){const r="e"===e.substring(2,3);let n=e=>e;if(r){if(!t)throw new mq("No passphrase provided to decrypt encrypted key");n=e=>{const r=qs()(e.slice(0,8)),n=e.slice(8),i=XV.pbkdf2Sync(t,r,32768,32,"sha512");return(0,wM.openSecretBox)(new Uint8Array(i),new Uint8Array(24),new Uint8Array(n))}}switch(e.substring(0,4)){case"edes":case"edsk":this._key=new iq(e,r,n);break;case"spsk":case"spes":this._key=new cq(e,r,n);break;case"p2sk":case"p2es":this._key=new sq(e,r,n);break;default:throw new ds(`${hc(Zs.NO_PREFIX_MATCHED)} expecting one of the following '${Fs.EDESK}', '${Fs.EDSK}', '${Fs.SPSK}', '${Fs.SPESK}', '${Fs.P2SK}' or '${Fs.P2ESK}'.`)}}sign(e,t){return nq(this,void 0,void 0,(function*(){let r=_c(e);"undefined"!==typeof t&&(r=Sc(t,r));const n=(0,Wa.hash)(r,32);return this._key.sign(e,n)}))}publicKey(){return nq(this,void 0,void 0,(function*(){return this._key.publicKey()}))}publicKeyHash(){return nq(this,void 0,void 0,(function*(){return this._key.publicKeyHash()}))}secretKey(){return nq(this,void 0,void 0,(function*(){return this._key.secretKey()}))}}const _q="44'/1729'/?'/0'",Sq={label:"Default - m/44'/1729'/?'/0'",value:_q},kq=[Sq,{label:"m/44'/1729'/0'/?'",value:"44'/1729'/0'/?'"},{label:"m/44'/1729'/?'/0'/0'",value:"44'/1729'/?'/0'/0'"},{label:"m/44'/1729'/0'/0'/?'",value:"44'/1729'/0'/0'/?'"}],Eq=(e,t)=>e.replace("?",t.toString()),Aq=(e,t,r,n,i,o)=>({curve:"ed25519",derivationPath:r,derivationPathPattern:n,pk:e,address:Yu(t),seedFingerPrint:i,label:o,type:"mnemonic"}),Pq=()=>TR((e=>e.contacts)),Oq=()=>{const e=Pq();return{addressExistsInContacts:t=>t in e,nameExistsInContacts:t=>Md(e,t)}},Tq=()=>{const e=Pq();return t=>t in e?e[t].name:void 0},Cq=()=>TR((e=>e.accounts.seedPhrases)),jq=()=>TR((e=>e.accounts.items)),Rq=()=>{const e=jq();return t=>e.find((e=>e.address.pkh===t))},Iq=()=>{const e=jq(),t=TR((e=>e.multisigs.items));return[...e,...t]},Mq=()=>{const e=Iq().map((e=>e.label)),t=Object.values(Pq()).map((e=>e.name));return r=>![...e,...t].includes(r)},Lq=()=>{const e=Mq();return(t,r=1)=>{const n=[];for(let i=1;n.length{const e=Iq();return t=>e.find((e=>e.address.pkh===t))},Dq=()=>{const e=Nq();return t=>{const r=e(t);if(!r)throw new Error(`You do not own account:${t}`);return r}},zq=e=>Iq().map((e=>e.address.pkh)).includes(e),Bq=()=>{const e=(()=>{const e=jq();return t=>{const r=e.filter((e=>t.signers.some((t=>t.pkh===e.address.pkh))));return 0===r.length&&console.warn("Wallet doesn't own any signers for multisig contract "+t.address.pkh),r}})();return t=>{switch(t.type){case"ledger":case"mnemonic":case"social":case"secret_key":return[t];case"multisig":return e(t)}}},Uq=()=>{const e=Bq(),t=K5();return r=>(0,Va.maxBy)(e(r),(e=>t(e.address.pkh)||"0"))};var Fq=r(4062),$q=r.n(Fq);const Hq={},Vq={},qq=(e,t)=>{Vq[e]=t},Kq=e=>{class t extends Error{constructor(r,n,i){if(super(r||e,i),Object.setPrototypeOf(this,t.prototype),this.name=e,n)for(const e in n)this[e]=n[e];if(i&&function(e){return"object"===typeof e}(i)&&"cause"in i&&!("cause"in this)){const e=i.cause;this.cause=e,"stack"in e&&(this.stack=this.stack+"\nCAUSE: "+e.stack)}}}return Hq[e]=t,t};Kq("AccountNameRequired"),Kq("AccountNotSupported"),Kq("AmountRequired"),Kq("BluetoothRequired"),Kq("BtcUnmatchedApp"),Kq("CantOpenDevice"),Kq("CashAddrNotSupported"),Kq("ClaimRewardsFeesWarning"),Kq("CurrencyNotSupported"),Kq("DeviceAppVerifyNotSupported"),Kq("DeviceGenuineSocketEarlyClose"),Kq("DeviceNotGenuine"),Kq("DeviceOnDashboardExpected"),Kq("DeviceOnDashboardUnexpected"),Kq("DeviceInOSUExpected"),Kq("DeviceHalted"),Kq("DeviceNameInvalid"),Kq("DeviceSocketFail"),Kq("DeviceSocketNoBulkStatus"),Kq("DeviceSocketNoBulkStatus"),Kq("UnresponsiveDeviceError");const Wq=Kq("DisconnectedDevice"),Gq=Kq("DisconnectedDeviceDuringOperation"),Zq=(Kq("DeviceExtractOnboardingStateError"),Kq("DeviceOnboardingStatePollingError"),Kq("EnpointConfig"),Kq("EthAppPleaseEnableContractData"),Kq("FeeEstimationFailed"),Kq("FirmwareNotRecognized"),Kq("HardResetFail"),Kq("InvalidXRPTag"),Kq("InvalidAddress"),Kq("InvalidNonce"),Kq("InvalidAddressBecauseDestinationIsAlsoSource"),Kq("LatestMCUInstalledError"),Kq("UnknownMCU"),Kq("LedgerAPIError"),Kq("LedgerAPIErrorWithMessage"),Kq("LedgerAPINotAvailable"),Kq("ManagerAppAlreadyInstalled"),Kq("ManagerAppRelyOnBTC"),Kq("ManagerAppDepInstallRequired"),Kq("ManagerAppDepUninstallRequired"),Kq("ManagerDeviceLocked"),Kq("ManagerFirmwareNotEnoughSpace"),Kq("ManagerNotEnoughSpace"),Kq("ManagerUninstallBTCDep"),Kq("NetworkDown"),Kq("NetworkError"),Kq("NoAddressesFound"),Kq("NotEnoughBalance"),Kq("NotEnoughBalanceToDelegate"),Kq("NotEnoughBalanceInParentAccount"),Kq("NotEnoughSpendableBalance"),Kq("NotEnoughBalanceBecauseDestinationNotCreated"),Kq("NoAccessToCamera"),Kq("NotEnoughGas"),Kq("NotEnoughGasSwap"),Kq("NotSupportedLegacyAddress"),Kq("GasLessThanEstimate"),Kq("PriorityFeeTooLow"),Kq("PriorityFeeTooHigh"),Kq("PriorityFeeHigherThanMaxFee"),Kq("MaxFeeTooLow"),Kq("PasswordsDontMatch"),Kq("PasswordIncorrect"),Kq("RecommendSubAccountsToEmpty"),Kq("RecommendUndelegation"),Kq("TimeoutTagged"),Kq("UnexpectedBootloader"),Kq("MCUNotGenuineToDashboard"),Kq("RecipientRequired"),Kq("UnavailableTezosOriginatedAccountReceive"),Kq("UnavailableTezosOriginatedAccountSend"),Kq("UpdateFetchFileFail"),Kq("UpdateIncorrectHash"),Kq("UpdateIncorrectSig"),Kq("UpdateYourApp"),Kq("UserRefusedDeviceNameChange"),Kq("UserRefusedAddress"),Kq("UserRefusedFirmwareUpdate"),Kq("UserRefusedAllowManager"),Kq("UserRefusedOnDevice"),Kq("ExpertModeRequired"),Kq("TransportOpenUserCancelled")),Yq=Kq("TransportInterfaceNotAvailable"),Xq=Kq("TransportRaceCondition"),Jq=Kq("TransportWebUSBGestureRequired");Kq("TransactionHasBeenValidatedError"),Kq("TransportExchangeTimeoutError"),Kq("DeviceShouldStayInApp"),Kq("WebsocketConnectionError"),Kq("WebsocketConnectionFailed"),Kq("WrongDeviceForAccount"),Kq("WrongAppForCurrency"),Kq("ETHAddressNonEIP"),Kq("CantScanQRCode"),Kq("FeeNotLoaded"),Kq("FeeNotLoadedSwap"),Kq("FeeRequired"),Kq("FeeTooHigh"),Kq("PendingOperation"),Kq("SyncError"),Kq("PairingFailed"),Kq("PeerRemovedPairing"),Kq("GenuineCheckFailed"),Kq("LedgerAPI4xx"),Kq("LedgerAPI5xx"),Kq("FirmwareOrAppUpdateRequired"),Kq("ReplacementTransactionUnderpriced"),Kq("OpReturnSizeLimit"),Kq("DustLimit"),Kq("LanguageNotFound"),Kq("NoDBPathGiven"),Kq("DBWrongPassword"),Kq("DBNotReset");var Qq;!function(e){e.Unknown="Unknown",e.LocationServicesDisabled="LocationServicesDisabled",e.LocationServicesUnauthorized="LocationServicesUnauthorized",e.BluetoothScanStartFailed="BluetoothScanStartFailed"}(Qq||(Qq={}));class eK extends Error{constructor(e,t){const r="TransportError";super(e||r),this.name=r,this.message=e,this.stack=new Error(e).stack,this.id=t}}qq("TransportError",(e=>new eK(e.message,e.id)));const tK={ACCESS_CONDITION_NOT_FULFILLED:38916,ALGORITHM_NOT_SUPPORTED:38020,CLA_NOT_SUPPORTED:28160,CODE_BLOCKED:38976,CODE_NOT_INITIALIZED:38914,COMMAND_INCOMPATIBLE_FILE_STRUCTURE:27009,CONDITIONS_OF_USE_NOT_SATISFIED:27013,CONTRADICTION_INVALIDATION:38928,CONTRADICTION_SECRET_CODE_STATUS:38920,CUSTOM_IMAGE_BOOTLOADER:26159,CUSTOM_IMAGE_EMPTY:26158,FILE_ALREADY_EXISTS:27273,FILE_NOT_FOUND:37892,GP_AUTH_FAILED:25344,HALTED:28586,INCONSISTENT_FILE:37896,INCORRECT_DATA:27264,INCORRECT_LENGTH:26368,INCORRECT_P1_P2:27392,INS_NOT_SUPPORTED:27904,DEVICE_NOT_ONBOARDED:27911,DEVICE_NOT_ONBOARDED_2:26129,INVALID_KCV:38021,INVALID_OFFSET:37890,LICENSING:28482,LOCKED_DEVICE:21781,MAX_VALUE_REACHED:38992,MEMORY_PROBLEM:37440,MISSING_CRITICAL_PARAMETER:26624,NO_EF_SELECTED:37888,NOT_ENOUGH_MEMORY_SPACE:27268,OK:36864,PIN_REMAINING_ATTEMPTS:25536,REFERENCED_DATA_NOT_FOUND:27272,SECURITY_STATUS_NOT_SATISFIED:27010,TECHNICAL_PROBLEM:28416,UNKNOWN_APDU:27906,USER_REFUSED_ON_DEVICE:21761,NOT_ENOUGH_SPACE:20738};class rK extends Error{constructor(e,{canBeMappedToChildError:t=!0}={}){const r=Object.keys(tK).find((t=>tK[t]===e))||"UNKNOWN_ERROR",n=function(e){switch(e){case 26368:return"Incorrect length";case 26624:return"Missing critical parameter";case 27010:return"Security not satisfied (dongle locked or have invalid access rights)";case 27013:return"Condition of use not satisfied (denied by the user?)";case 27264:return"Invalid data received";case 27392:return"Invalid parameter received";case 21781:return"Locked device"}if(28416<=e&&e<=28671)return"Internal error, please report"}(e)||r,i=`Ledger device: ${n} (0x${e.toString(16)})`;if(super(i),this.name="TransportStatusError",this.statusCode=e,this.statusText=r,t&&e===tK.LOCKED_DEVICE)return new nK(i)}}class nK extends rK{constructor(e){super(tK.LOCKED_DEVICE,{canBeMappedToChildError:!1}),e&&(this.message=e),this.name="LockedDeviceError"}}qq("TransportStatusError",(e=>new rK(e.statusCode)));let iK=0;const oK=[],aK=(e,t,r)=>{const n={type:e,id:String(++iK),date:new Date};t&&(n.message=t),r&&(n.data=r),lK(n)};class sK{constructor(e,t){this.type=e,this.context=t}trace(e,t){(({type:e,message:t,data:r,context:n})=>{const i={type:e,id:String(++iK),date:new Date};t&&(i.message=t),r&&(i.data=r),n&&(i.context=n),lK(i)})({type:this.type,message:e,data:t,context:this.context})}getContext(){return this.context}setContext(e){this.context=e}updateContext(e){this.context=Object.assign(Object.assign({},this.context),e)}getType(){return this.type}setType(e){this.type=e}withType(e){return new sK(e,this.context)}withContext(e){return new sK(this.type,e)}withUpdatedContext(e){return new sK(this.type,Object.assign(Object.assign({},this.context),e))}}const cK=e=>(oK.push(e),()=>{const t=oK.indexOf(e);-1!==t&&(oK[t]=oK[oK.length-1],oK.pop())});function lK(e){for(let r=0;rdK(this,void 0,void 0,(function*(){const s=this.tracer.withUpdatedContext({function:"send"});if(i.length>=256)throw s.trace("data.length exceeded 256 bytes limit",{dataLength:i.length}),new eK("data.length exceed 256 bytes limit. Got: "+i.length,"DataLengthTooBig");s.trace("Starting an exchange",{abortTimeoutMs:a});const c=yield this.exchange(uK.concat([uK.from([e,t,r,n]),uK.from([i.length]),i]),{abortTimeoutMs:a});s.trace("Received response from exchange");const l=c.readUInt16BE(c.length-2);if(!o.some((e=>e===l)))throw new rK(l);return c})),this._appAPIlock=null,this.tracer=new sK(null!==t&&void 0!==t?t:"transport",e)}exchange(e,{abortTimeoutMs:t}={}){throw new Error("exchange not implemented")}exchangeBulk(e,t){let r=!1;return(()=>dK(this,void 0,void 0,(function*(){if(!r)for(const n of e){const e=yield this.exchange(n);if(r)return;const i=e.readUInt16BE(e.length-2);if(i!==tK.OK)throw new rK(i);t.next(e)}})))().then((()=>!r&&t.complete()),(e=>!r&&t.error(e))),{unsubscribe:()=>{r=!0}}}setScrambleKey(e){}close(){return Promise.resolve()}on(e,t){this._events.on(e,t)}off(e,t){this._events.removeListener(e,t)}emit(e,...t){this._events.emit(e,...t)}setDebugMode(){console.warn("setDebugMode is deprecated. use @ledgerhq/logs instead. No logs are emitted in this anymore.")}setExchangeTimeout(e){this.exchangeTimeout=e}setExchangeUnresponsiveTimeout(e){this.unresponsiveTimeout=e}static create(e=3e3,t){return new Promise(((r,n)=>{let i=!1;const o=this.listen({next:t=>{i=!0,o&&o.unsubscribe(),a&&clearTimeout(a),this.open(t.descriptor,e).then(r,n)},error:e=>{a&&clearTimeout(a),n(e)},complete:()=>{a&&clearTimeout(a),i||n(new eK(this.ErrorMessage_NoDeviceFound,"NoDeviceFound"))}}),a=t?setTimeout((()=>{o.unsubscribe(),n(new eK(this.ErrorMessage_ListenTimeout,"ListenTimeout"))}),t):null}))}exchangeAtomicImpl(e){return dK(this,void 0,void 0,(function*(){const t=this.tracer.withUpdatedContext({function:"exchangeAtomicImpl"});if(t.trace("Starting an atomic APDU exchange",{unresponsiveTimeout:this.unresponsiveTimeout}),this.exchangeBusyPromise)throw t.trace("Atomic exchange is already busy"),new Xq("An action was already pending on the Ledger device. Please deny or reconnect.");let r;const n=new Promise((e=>{r=e}));this.exchangeBusyPromise=n;let i=!1;const o=setTimeout((()=>{t.trace('Timeout reached, emitting Transport event "unresponsive"',{unresponsiveTimeout:this.unresponsiveTimeout}),i=!0,this.emit("unresponsive")}),this.unresponsiveTimeout);try{const r=yield e();return i&&(t.trace("Device was unresponsive, emitting responsive"),this.emit("responsive")),r}finally{t.trace("Finalize, clearing busy guard"),clearTimeout(o),r&&r(),this.exchangeBusyPromise=null}}))}decorateAppAPIMethods(e,t,r){for(const n of t)e[n]=this.decorateAppAPIMethod(n,e[n],e,r)}decorateAppAPIMethod(e,t,r,n){return(...i)=>dK(this,void 0,void 0,(function*(){const{_appAPIlock:o}=this;if(o)return Promise.reject(new eK("Ledger Device is busy (lock "+o+")","TransportLocked"));try{return this._appAPIlock=e,this.setScrambleKey(n),yield t.apply(r,i)}finally{this._appAPIlock=null}}))}setTraceContext(e){this.tracer=this.tracer.withContext(e)}updateTraceContext(e){this.tracer.updateContext(e)}getTraceContext(){return this.tracer.getContext()}}hK.ErrorMessage_ListenTimeout="No Ledger device found (timeout)",hK.ErrorMessage_NoDeviceFound="No Ledger device found";const fK=hK;var pK=r(4872).Buffer;function mK(e){const t=pK.alloc(2);return t.writeUInt16BE(e,0),t}const gK={data:pK.alloc(0),dataLength:0,sequence:0},vK=(e,t)=>({makeBlocks(r){let n=pK.concat([mK(r.length),r]);const i=t-5,o=Math.ceil(n.length/i);n=pK.concat([n,pK.alloc(o*i-n.length+1).fill(0)]);const a=[];for(let t=0;ti&&(n=n.slice(0,i)),{data:n,dataLength:i,sequence:o}},getReducedResult(e){if(e&&e.dataLength===e.data.length)return e.data}});var yK=r(5353),bK=r.n(yK);var wK;!function(e){e.blue="blue",e.nanoS="nanoS",e.nanoSP="nanoSP",e.nanoX="nanoX",e.stax="stax"}(wK||(wK={}));const xK={[wK.blue]:{id:wK.blue,productName:"Ledger\xa0Blue",productIdMM:0,legacyUsbProductId:0,usbOnly:!0,memorySize:491520,masks:[822083584,822149120],getBlockSize:e=>4096},[wK.nanoS]:{id:wK.nanoS,productName:"Ledger\xa0Nano\xa0S",productIdMM:16,legacyUsbProductId:1,usbOnly:!0,memorySize:327680,masks:[823132160],getBlockSize:e=>{var t;return bK().lt(null!==(t=bK().coerce(e))&&void 0!==t?t:"","2.0.0")?4096:2048}},[wK.nanoSP]:{id:wK.nanoSP,productName:"Ledger Nano S Plus",productIdMM:80,legacyUsbProductId:5,usbOnly:!0,memorySize:1572864,masks:[856686592],getBlockSize:e=>32},[wK.nanoX]:{id:wK.nanoX,productName:"Ledger\xa0Nano\xa0X",productIdMM:64,legacyUsbProductId:4,usbOnly:!1,memorySize:2097152,masks:[855638016],getBlockSize:e=>4096,bluetoothSpec:[{serviceUuid:"13d63400-2c97-0004-0000-4c6564676572",notifyUuid:"13d63400-2c97-0004-0001-4c6564676572",writeUuid:"13d63400-2c97-0004-0002-4c6564676572",writeCmdUuid:"13d63400-2c97-0004-0003-4c6564676572"}]},[wK.stax]:{id:wK.stax,productName:"Ledger\xa0Stax",productIdMM:96,legacyUsbProductId:6,usbOnly:!1,memorySize:1572864,masks:[857735168],getBlockSize:e=>32,bluetoothSpec:[{serviceUuid:"13d63400-2c97-6004-0000-4c6564676572",notifyUuid:"13d63400-2c97-6004-0001-4c6564676572",writeUuid:"13d63400-2c97-6004-0002-4c6564676572",writeCmdUuid:"13d63400-2c97-6004-0003-4c6564676572"}]}},_K=(wK.blue,wK.nanoS,wK.nanoSP,wK.nanoX,wK.stax,Object.values(xK)),SK=11415,kK=e=>{const t=_K.find((t=>t.legacyUsbProductId===e));if(t)return t;const r=e>>8,n=_K.find((e=>e.productIdMM===r));return n},EK=[],AK={};for(const r in xK){const e=xK[r],{bluetoothSpec:t}=e;if(t)for(let r=0;re.vendorId===SK))}))}var jK=r(4872).Buffer,RK=function(e,t,r,n){return new(r||(r=Promise))((function(i,o){function a(e){try{c(n.next(e))}catch(t){o(t)}}function s(e){try{c(n.throw(e))}catch(t){o(t)}}function c(e){e.done?i(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(a,s)}c((n=n.apply(e,t||[])).next())}))};class IK extends fK{constructor(e,t){super(),this.channel=Math.floor(65535*Math.random()),this.packetSize=64,this._disconnectEmitted=!1,this._emitDisconnect=e=>{this._disconnectEmitted||(this._disconnectEmitted=!0,this.emit("disconnect",e))},this.device=e,this.interfaceNumber=t,this.deviceModel=kK(e.productId)}static request(){return RK(this,void 0,void 0,(function*(){const e=yield TK();return IK.open(e)}))}static openConnected(){return RK(this,void 0,void 0,(function*(){const e=yield CK();return 0===e.length?null:IK.open(e[0])}))}static open(e){return RK(this,void 0,void 0,(function*(){yield e.open(),null===e.configuration&&(yield e.selectConfiguration(1)),yield LK(e);const t=e.configurations[0].interfaces.find((({alternates:e})=>e.some((e=>255===e.interfaceClass))));if(!t)throw new Yq("No WebUSB interface found for your Ledger device. Please upgrade firmware or contact techsupport.");const r=t.interfaceNumber;try{yield e.claimInterface(r)}catch(o){throw yield e.close(),new Yq(o.message)}const n=new IK(e,r),i=t=>{e===t.device&&(navigator.usb.removeEventListener("disconnect",i),n._emitDisconnect(new Wq))};return navigator.usb.addEventListener("disconnect",i),n}))}close(){return RK(this,void 0,void 0,(function*(){yield this.exchangeBusyPromise,yield this.device.releaseInterface(this.interfaceNumber),yield LK(this.device),yield this.device.close()}))}exchange(e){return RK(this,void 0,void 0,(function*(){const t=yield this.exchangeAtomicImpl((()=>RK(this,void 0,void 0,(function*(){const{channel:t,packetSize:r}=this;aK("apdu","=> "+e.toString("hex"));const n=vK(t,r),i=n.makeBlocks(e);for(let e=0;e{if(e&&e.message&&e.message.includes("disconnected"))throw this._emitDisconnect(e),new Gq(e.message);throw e}));return t}))}setScrambleKey(){}}IK.isSupported=()=>Promise.resolve(!!navigator&&!!navigator.usb&&"function"===typeof navigator.usb.getDevices),IK.list=CK,IK.listen=e=>{let t=!1;return function(){return PK(this,void 0,void 0,(function*(){const e=yield CK();return e.length>0?e[0]:TK()}))}().then((r=>{if(!t){const t=kK(r.productId);e.next({type:"add",descriptor:r,deviceModel:t}),e.complete()}}),(t=>{window.DOMException&&t instanceof window.DOMException&&18===t.code?e.error(new Jq(t.message)):e.error(new Zq(t.message))})),{unsubscribe:function(){t=!0}}};const MK=IK;function LK(e){return RK(this,void 0,void 0,(function*(){try{yield e.reset()}catch(fde){console.warn(fde)}}))}var NK=r(4872).Buffer;function DK(e,t,r,n){return new(r||(r=Promise))((function(i,o){function a(e){try{c(n.next(e))}catch(t){o(t)}}function s(e){try{c(n.throw(e))}catch(t){o(t)}}function c(e){e.done?i(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(a,s)}c((n=n.apply(e,t||[])).next())}))}"function"===typeof SuppressedError&&SuppressedError;function zK(e){const t=[];e.split("/").forEach((e=>{let r=parseInt(e,10);Number.isNaN(r)||(e.length>1&&"'"===e[e.length-1]&&(r+=2147483648),t.push(r))}));const r=NK.alloc(1+4*t.length);return r[0]=t.length,t.forEach(((e,t)=>{r.writeUInt32BE(e,1+4*t)})),r}function BK(e,t){const r=NK.alloc(32);r.fill(0);let n=t[e],i=e+1;return n>32&&(i+=n-32,n=32),t.copy(r,32-n,i,i+n),{buffer:r,idxValueStart:i,length:n}}class UK extends Ja{constructor(e){super(),this.message=e,this.name="InvalidLedgerResponseError"}}class FK extends Ja{constructor(e){super(),this.cause=e,this.name="PublicKeyRetrievalError",this.message="Unable to retrieve Public Key from Ledger"}}class $K extends Ja{constructor(){super(),this.name="PublicKeyHashRetrievalError",this.message="Unable to retrieve Public Key Hash from Ledger"}}class HK extends Qa{constructor(e){super(),this.derivationType=e,this.name="InvalidDerivationTypeError",this.message=`Invalid derivation type ${e} expecting one of the following: DerivationType.ED25519, DerivationType.SECP256K1, DerivationType.P256 or DerivationType.BIP32_ED25519`}}var VK;!function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256",e[e.BIP32_ED25519=3]="BIP32_ED25519"}(VK||(VK={}));class qK{constructor(e,t="44'/1729'/0'/0'",r=!0,n=VK.ED25519){if(this.transport=e,this.path=t,this.prompt=r,this.derivationType=n,this.CLA=128,this.INS_GET_PUBLIC_KEY=2,this.INS_PROMPT_PUBLIC_KEY=3,this.INS_SIGN=4,this.FIRST_MESSAGE_SEQUENCE=0,this.LAST_MESSAGE_SEQUENCE=129,this.OTHER_MESSAGE_SEQUENCE=1,this.transport.setScrambleKey("XTZ"),!t.startsWith("44'/1729'"))throw new ss(t,`${hc(Zs.NO_PREFIX_MATCHED)} expecting prefix "44'/1729'".`);if(!Object.values(VK).includes(n))throw new HK(n.toString())}publicKeyHash(){return DK(this,void 0,void 0,(function*(){if(this._publicKeyHash||(yield this.publicKey()),this._publicKeyHash)return this._publicKeyHash;throw new $K}))}publicKey(){return DK(this,void 0,void 0,(function*(){if(this._publicKey)return this._publicKey;const e=yield this.getLedgerPublicKey(),t=e[0],r=function(e,t){return 0===t||3===t?e=e.slice(1):(e[0]=2+(1&e[64]),e=e.slice(0,33)),e}(e.slice(1,1+t),this.derivationType),n=this.getPrefixes(),i=vc(r,n.prefPk),o=vc((0,Wa.hash)(r,20),n.prefPkh);return this._publicKey=i,this._publicKeyHash=o,i}))}getLedgerPublicKey(){return DK(this,void 0,void 0,(function*(){try{let e=this.INS_PROMPT_PUBLIC_KEY;!1===this.prompt&&(e=this.INS_GET_PUBLIC_KEY);return yield this.transport.send(this.CLA,e,this.FIRST_MESSAGE_SEQUENCE,this.derivationType,zK(this.path))}catch(e){throw new FK(e)}}))}secretKey(){return DK(this,void 0,void 0,(function*(){throw new bs("Secret key cannot be exposed")}))}sign(e,t){return DK(this,void 0,void 0,(function*(){const r=function(e,t){let r=e;"undefined"!==typeof t&&(r=NK.from(t).toString("hex").concat(e));return r}(e,t),n=NK.from(r,"hex");let i=[];i.push(zK(this.path)),i=function(e,t){let r=0;for(;r!==t.length;){const n=r+230>=t.length?t.length-r:230,i=NK.alloc(n);t.copy(i,0,r,r+n),e.push(i),r+=n}return e}(i,n);const o=yield this.signWithLedger(i);let a;if(this.derivationType===VK.ED25519||this.derivationType===VK.BIP32_ED25519)a=o.slice(0,o.length-2).toString("hex");else{if(!function(e){let t=!0;49!==e[0]&&48!==e[0]&&(t=!1),e[1]+4!==e.length&&(t=!1),2!==e[2]&&(t=!1);const r=e[3];2!==e[4+r]&&(t=!1);const n=5+r;return n+1+e[n]+2!==e.length&&(t=!1),t}(o))throw new UK("Invalid signature return by ledger unable to parse the response");const e=BK(3,o),t=BK(e.idxValueStart+e.length+1,o);a=NK.concat([e.buffer,t.buffer]).toString("hex")}return{bytes:e,sig:vc(a,Ks[Fs.SIG]),prefixSig:vc(a,this.getPrefixes().prefSig),sbytes:e+a}}))}signWithLedger(e){return DK(this,void 0,void 0,(function*(){let t=yield this.transport.send(this.CLA,this.INS_SIGN,this.FIRST_MESSAGE_SEQUENCE,this.derivationType,e[0]);for(let r=1;r{t.push(encodeURIComponent(n)+"="+encodeURIComponent(e))}));continue}t.push(encodeURIComponent(n)+"="+encodeURIComponent(r))}const r=t.join("&");return r?`?${r}`:""}createRequest({url:e,method:t,timeout:r=this.timeout,query:n,headers:i={},json:o=!0},a){return GK(this,void 0,void 0,(function*(){const s=e+this.serialize(n);i["Content-Type"]||(i["Content-Type"]="application/json");const c=new AbortController,l=setTimeout((()=>c.abort()),r);try{const e=yield QK(s,{method:t,headers:i,body:JSON.stringify(a),signal:c.signal});if("undefined"===typeof e)throw new Error("Response is undefined");if(e.status>=400){const t=yield e.text();throw new YK(`Http error response: (${e.status}) ${t}`,e.status,e.statusText,t,s)}return o?e.json():e.text()}catch(u){throw u instanceof Error&&"AbortError"===u.name?new XK(r,s):u instanceof YK?u:new ZK(String(t),s,u)}finally{clearTimeout(l)}}))}}function tW(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i{const r=e[t];let i;if("undefined"!==typeof r){if(Array.isArray(r))return i=oW(r),void(n[t]=i);i=new Us(r),n[t]=i}})),n}!function(e){e.GET_BAKING_RIGHTS="getBakingRights",e.GET_BALLOTS="getBallots",e.GET_BALLOT_LIST="getBallotList",e.GET_BIG_MAP_KEY="getBigMapKey",e.GET_BIG_MAP_EXPR="getBigMapExpr",e.GET_BLOCK_HASH="getBlockHash",e.GET_BLOCK="getBlock",e.GET_BLOCK_HEADER="getBlockHeader",e.GET_BLOCK_METADATA="getBlockMetadata",e.GET_BALANCE="getBalance",e.GET_CHAIN_ID="getChainId",e.GET_CONSTANTS="getConstants",e.GET_CONTRACT="getContract",e.GET_CURRENT_PERIOD="getCurrentPeriod",e.GET_CURRENT_PROPOSAL="getCurrentProposal",e.GET_CURRENT_QUORUM="getCurrentQuorum",e.GET_DELEGATE="getDelegate",e.GET_DELEGATES="getDelegates",e.GET_VOTING_INFO="getVotingInfo",e.GET_ENDORSING_RIGHTS="getEndorsingRights",e.GET_ENTRYPOINTS="getEntrypoints",e.GET_LIVE_BLOCKS="getLiveBlocks",e.GET_MANAGER_KEY="getManagerKey",e.GET_NORMALIZED_SCRIPT="getNormalizedScript",e.GET_PROPOSALS="getProposals",e.GET_PROTOCOLS="getProtocols",e.GET_SAPLING_DIFF_BY_CONTRACT="getSaplingDiffByContract",e.GET_SAPLING_DIFF_BY_ID="getSaplingDiffById",e.GET_SCRIPT="getScript",e.GET_STORAGE="getStorage",e.GET_SUCCESSOR_PERIOD="getSuccessorPeriod",e.GET_TX_ROLLUP_INBOX="getTxRollupInbox",e.GET_TX_ROLLUP_STATE="getTxRollupState",e.GET_VOTES_LISTINGS="getVotesListings",e.PACK_DATA="packData",e.GET_STORAGE_USED_SPACE="getStorageUsedSpace",e.GET_STORAGE_PAID_SPACE="getStoragePaidSpace",e.GET_TICKET_BALANCE="getTicketBalance",e.GET_ALL_TICKET_BALANCES="getAllTicketBalances",e.GET_PENDING_OPERATIONS="getPendingOperations",e.GET_ORIGINATION_PROOF="getOriginationProof"}(iW||(iW={}));var aW,sW,cW,lW,uW,dW,hW,fW,pW,mW;!function(e){e.TOO_LARGE="too large"}(aW||(aW={})),function(e){e.BAKING_REWARDS="baking rewards",e.REWARDS="rewards",e.FEES="fees",e.DEPOSITS="deposits",e.LEGACY_REWARDS="legacy_rewards",e.LEGACY_FEES="legacy_fees",e.LEGACY_DEPOSITS="legacy_deposits",e.BLOCK_FEES="block fees",e.NONCE_REVELATION_REWARDS="nonce revelation rewards",e.DOUBLE_SIGNING_EVIDENCE_REWARDS="double signing evidence rewards",e.ENDORSING_REWARDS="endorsing rewards",e.BAKING_BONUSES="baking bonuses",e.STORAGE_FEES="storage fees",e.PUNISHMENTS="punishments",e.LOST_ENDORSING_REWARDS="lost endorsing rewards",e.SUBSIDY="subsidy",e.BURNED="burned",e.COMMITMENT="commitment",e.BOOTSTRAP="bootstrap",e.INVOICE="invoice",e.MINTED="minted",e.TX_ROLLUP_REJECTION_REWARDS="tx_rollup_rejection_rewards",e.TX_ROLLUP_REJECTION_PUNISHMENTS="tx_rollup_rejection_punishments",e.BONDS="bonds"}(sW||(sW={})),function(e){e.WASM2="wasm_2_0_0",e.ARITH="arith"}(cW||(cW={})),function(e){e.START="start",e.MOVE="move"}(lW||(lW={})),function(e){e.INBOX_PROOF="inbox_proof",e.REVEAL_PROOF="reveal_proof",e.FIRST_INPUT="first_input"}(uW||(uW={})),function(e){e.RAW_DATA_PROOF="raw_data_proof",e.METADATA_PROOF="metadata_proof",e.DAL_PAGE_PROOF="dal_page_proof"}(dW||(dW={})),function(e){e.ONGOING="ongoing",e.ENDED="ended"}(hW||(hW={})),function(e){e.LOSER="loser",e.DRAW="draw"}(fW||(fW={})),function(e){e.CONFLICT_RESOLVED="conflict_resolved",e.TIMEOUT="timeout"}(pW||(pW={})),function(e){e.ORIGINATION="origination",e.DELEGATION="delegation",e.REVEAL="reveal",e.TRANSACTION="transaction",e.ACTIVATION="activate_account",e.ENDORSEMENT="endorsement",e.PREENDORSEMENT="preendorsement",e.SET_DEPOSITS_LIMIT="set_deposits_limit",e.DOUBLE_PREENDORSEMENT_EVIDENCE="double_preendorsement_evidence",e.ENDORSEMENT_WITH_SLOT="endorsement_with_slot",e.SEED_NONCE_REVELATION="seed_nonce_revelation",e.DOUBLE_ENDORSEMENT_EVIDENCE="double_endorsement_evidence",e.DOUBLE_BAKING_EVIDENCE="double_baking_evidence",e.PROPOSALS="proposals",e.BALLOT="ballot",e.FAILING_NOOP="failing_noop",e.REGISTER_GLOBAL_CONSTANT="register_global_constant",e.TX_ROLLUP_ORIGINATION="tx_rollup_origination",e.TX_ROLLUP_SUBMIT_BATCH="tx_rollup_submit_batch",e.TX_ROLLUP_COMMIT="tx_rollup_commit",e.TX_ROLLUP_RETURN_BOND="tx_rollup_return_bond",e.TX_ROLLUP_FINALIZE_COMMITMENT="tx_rollup_finalize_commitment",e.TX_ROLLUP_REMOVE_COMMITMENT="tx_rollup_remove_commitment",e.TX_ROLLUP_REJECTION="tx_rollup_rejection",e.TX_ROLLUP_DISPATCH_TICKETS="tx_rollup_dispatch_tickets",e.TRANSFER_TICKET="transfer_ticket",e.INCREASE_PAID_STORAGE="increase_paid_storage",e.UPDATE_CONSENSUS_KEY="update_consensus_key",e.DRAIN_DELEGATE="drain_delegate",e.VDF_REVELATION="vdf_revelation",e.EVENT="event",e.TICKET_UPDATES="ticket_updates",e.SMART_ROLLUP_ORIGINATE="smart_rollup_originate",e.SMART_ROLLUP_ADD_MESSAGES="smart_rollup_add_messages",e.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE="smart_rollup_execute_outbox_message",e.SMART_ROLLUP_PUBLISH="smart_rollup_publish",e.SMART_ROLLUP_CEMENT="smart_rollup_cement",e.SMART_ROLLUP_RECOVER_BOND="smart_rollup_recover_bond",e.SMART_ROLLUP_REFUTE="smart_rollup_refute",e.SMART_ROLLUP_TIMEOUT="smart_rollup_timeout"}(mW||(mW={}));class gW{constructor(e,t="main",r=new eW){this.url=e,this.chain=t,this.httpBackend=r}createURL(e){let t=this.url;for(;t.endsWith("/");)t=t.slice(0,-1);return`${t}${e}`}validateAddress(e){const t=oc(e);if(t!==Zs.VALID)throw new is(e,hc(t))}validateContract(e){const t=sc(e);if(t!==Zs.VALID)throw new fs(e,hc(t))}getBlockHash({block:e}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/hash`),method:"GET"})}))}getLiveBlocks({block:e}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/live_blocks`),method:"GET"})}))}getBalance(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){this.validateAddress(e);const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/balance`),method:"GET"});return new Us(r)}))}getStorage(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage`),method:"GET"})}))}getScript(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/script`),method:"GET"})}))}getNormalizedScript(e,t={unparsing_mode:"Readable"},{block:r}=nW){return rW(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/contracts/${e}/script/normalized`),method:"POST"},t)}))}getContract(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){this.validateAddress(e);const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}`),method:"GET"});return Object.assign(Object.assign({},r),{balance:new Us(r.balance)})}))}getManagerKey(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return this.validateAddress(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/manager_key`),method:"GET"})}))}getDelegate(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){let r;this.validateAddress(e);try{r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/delegate`),method:"GET"})}catch(n){if(!(n instanceof YK&&n.status===KK.NOT_FOUND))throw n;r=null}return r}))}getBigMapKey(e,t,{block:r}=nW){return rW(this,void 0,void 0,(function*(){return this.validateAddress(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/contracts/${e}/big_map_get`),method:"POST"},t)}))}getBigMapExpr(e,t,{block:r}=nW){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/big_maps/${e}/${t}`),method:"GET"})}))}getDelegates(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){this.validateAddress(e);const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/delegates/${e}`),method:"GET"}),n=oW(r,["balance","full_balance","current_frozen_deposits","frozen_deposits","frozen_balance","frozen_deposits_limit","staking_balance","delegated_balance","voting_power"]);return Object.assign(Object.assign(Object.assign({},r),n),{frozen_balance_by_cycle:r.frozen_balance_by_cycle?r.frozen_balance_by_cycle.map((e=>{var{deposit:t,deposits:r,fees:n,rewards:i}=e,o=tW(e,["deposit","deposits","fees","rewards"]);const a=oW({deposit:t,deposits:r,fees:n,rewards:i},["deposit","deposits","fees","rewards"]);return Object.assign(Object.assign({},o),{deposit:a.deposit,deposits:a.deposits,fees:a.fees,rewards:a.rewards})})):void 0})}))}getVotingInfo(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return this.validateAddress(e),yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/delegates/${e}/voting_info`),method:"GET"})}))}getConstants({block:e}=nW){return rW(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/context/constants`),method:"GET"}),r=oW(t,["time_between_blocks","hard_gas_limit_per_operation","hard_gas_limit_per_block","proof_of_work_threshold","tokens_per_roll","seed_nonce_revelation_tip","block_security_deposit","endorsement_security_deposit","block_reward","endorsement_reward","cost_per_byte","hard_storage_limit_per_operation","test_chain_duration","baking_reward_per_endorsement","delay_per_missing_endorsement","minimal_block_delay","liquidity_baking_subsidy","cache_layout","baking_reward_fixed_portion","baking_reward_bonus_per_slot","endorsing_reward_per_slot","double_baking_punishment","delay_increment_per_round","tx_rollup_commitment_bond","vdf_difficulty","sc_rollup_stake_amount","minimal_stake"]);return Object.assign(Object.assign({},t),r)}))}getBlock({block:e}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}`),method:"GET"})}))}getBlockHeader({block:e}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/header`),method:"GET"})}))}getBlockMetadata({block:e}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/metadata`),method:"GET"})}))}getBakingRights(e={},{block:t}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/baking_rights`),method:"GET",query:e})}))}getEndorsingRights(e={},{block:t}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/endorsing_rights`),method:"GET",query:e})}))}getBallotList({block:e}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/ballot_list`),method:"GET"})}))}getBallots({block:e}=nW){return rW(this,void 0,void 0,(function*(){return oW(yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/ballots`),method:"GET"}),["yay","nay","pass"])}))}getCurrentProposal({block:e}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_proposal`),method:"GET"})}))}getCurrentQuorum({block:e}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_quorum`),method:"GET"})}))}getVotesListings({block:e}=nW){return rW(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/listings`),method:"GET"});return t.map((e=>(e.voting_power&&(e.voting_power=new Us(e.voting_power)),e))),t}))}getProposals({block:e}=nW){return rW(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/proposals`),method:"GET"});return t.map((e=>e[1]=new Us(e[1]))),t}))}forgeOperations(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/forge/operations`),method:"POST"},e)}))}injectOperation(e){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL("/injection/operation"),method:"POST"},e)}))}preapplyOperations(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/preapply/operations`),method:"POST"},e)}))}getEntrypoints(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){this.validateContract(e);return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/entrypoints`),method:"GET"})}))}runOperation(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/run_operation`),method:"POST"},e)}))}simulateOperation(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/simulate_operation`),method:"POST"},e)}))}runCode(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/run_code`),method:"POST"},e)}))}runScriptView(e,t){var{unparsing_mode:r="Readable"}=e,n=tW(e,["unparsing_mode"]),i=(void 0===t?nW:t).block;return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${i}/helpers/scripts/run_script_view`),method:"POST"},Object.assign({unparsing_mode:r},n))}))}runView(e,t){var{unparsing_mode:r="Readable"}=e,n=tW(e,["unparsing_mode"]),i=(void 0===t?nW:t).block;return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${i}/helpers/scripts/run_view`),method:"POST"},Object.assign({unparsing_mode:r},n))}))}getChainId(){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/chain_id`),method:"GET"})}))}packData(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/pack_data`),method:"POST"},e),{gas:n}=r,i=tW(r,["gas"]);let o=n;const a=new Us(n||"");return a.isNaN()||(o=a),Object.assign({gas:o},i)}))}getRpcUrl(){return this.url}getCurrentPeriod({block:e}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_period`),method:"GET"})}))}getSuccessorPeriod({block:e}=nW){return rW(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/successor_period`),method:"GET"})}))}getSaplingDiffById(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/sapling/${e}/get_diff`),method:"GET"})}))}getSaplingDiffByContract(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/single_sapling_get_diff`),method:"GET"})}))}getProtocols({block:e}=nW){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/protocols`),method:"GET"})}))}getTxRollupState(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/tx_rollup/${e}/state`),method:"GET"})}))}getTxRollupInbox(e,t,{block:r}=nW){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/tx_rollup/${e}/inbox/${t}`),method:"GET"})}))}getStorageUsedSpace(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage/used_space`),method:"GET"})}))}getStoragePaidSpace(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage/paid_space`),method:"GET"})}))}getTicketBalance(e,t,{block:r}=nW){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/contracts/${e}/ticket_balance`),method:"POST"},t)}))}getAllTicketBalances(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/all_ticket_balances`),method:"GET"})}))}getPendingOperations(e={}){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/mempool/pending_operations`),method:"GET",query:e})}))}getOriginationProof(e,{block:t}=nW){return rW(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/smart_rollups/all/origination_proof`),method:"POST"},e)}))}}function vW(e){return"function"===typeof e}function yW(e){var t=e((function(e){Error.call(e),e.stack=(new Error).stack}));return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var bW=yW((function(e){return function(t){e(this),this.message=t?t.length+" errors occurred during unsubscription:\n"+t.map((function(e,t){return t+1+") "+e.toString()})).join("\n "):"",this.name="UnsubscriptionError",this.errors=t}}));function wW(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var xW=function(){function e(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var e,t,r,n,i;if(!this.closed){this.closed=!0;var o=this._parentage;if(o)if(this._parentage=null,Array.isArray(o))try{for(var a=_I(o),s=a.next();!s.done;s=a.next()){s.value.remove(this)}}catch(f){e={error:f}}finally{try{s&&!s.done&&(t=a.return)&&t.call(a)}finally{if(e)throw e.error}}else o.remove(this);var c=this.initialTeardown;if(vW(c))try{c()}catch(p){i=p instanceof bW?p.errors:[p]}var l=this._finalizers;if(l){this._finalizers=null;try{for(var u=_I(l),d=u.next();!d.done;d=u.next()){var h=d.value;try{kW(h)}catch(fde){i=null!==i&&void 0!==i?i:[],fde instanceof bW?i=kI(kI([],SI(i)),SI(fde.errors)):i.push(fde)}}}catch(m){r={error:m}}finally{try{d&&!d.done&&(n=u.return)&&n.call(u)}finally{if(r)throw r.error}}}if(i)throw new bW(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)kW(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=null!==(r=this._finalizers)&&void 0!==r?r:[]).push(t)}},e.prototype._hasParent=function(e){var t=this._parentage;return t===e||Array.isArray(t)&&t.includes(e)},e.prototype._addParent=function(e){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(e),t):t?[t,e]:e},e.prototype._removeParent=function(e){var t=this._parentage;t===e?this._parentage=null:Array.isArray(t)&&wW(t,e)},e.prototype.remove=function(t){var r=this._finalizers;r&&wW(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}(),_W=xW.EMPTY;function SW(e){return e instanceof xW||e&&"closed"in e&&vW(e.remove)&&vW(e.add)&&vW(e.unsubscribe)}function kW(e){vW(e)?e():e.unsubscribe()}var EW={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},AW={setTimeout:function(e,t){for(var r=[],n=2;n0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(t){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,t)},t.prototype._subscribe=function(e){return this._throwIfClosed(),this._checkFinalizedStatuses(e),this._innerSubscribe(e)},t.prototype._innerSubscribe=function(e){var t=this,r=this,n=r.hasError,i=r.isStopped,o=r.observers;return n||i?_W:(this.currentObservers=null,o.push(e),new xW((function(){t.currentObservers=null,wW(o,e)})))},t.prototype._checkFinalizedStatuses=function(e){var t=this,r=t.hasError,n=t.thrownError,i=t.isStopped;r?e.error(n):i&&e.complete()},t.prototype.asObservable=function(){var e=new VW;return e.source=this,e},t.create=function(e,t){return new GW(e,t)},t}(VW),GW=function(e){function t(t,r){var n=e.call(this)||this;return n.destination=t,n.source=r,n}return vI(t,e),t.prototype.next=function(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===r||r.call(t,e)},t.prototype.error=function(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===r||r.call(t,e)},t.prototype.complete=function(){var e,t;null===(t=null===(e=this.destination)||void 0===e?void 0:e.complete)||void 0===t||t.call(e)},t.prototype._subscribe=function(e){var t,r;return null!==(r=null===(t=this.source)||void 0===t?void 0:t.subscribe(e))&&void 0!==r?r:_W},t}(WW),ZW={now:function(){return(ZW.delegate||Date).now()},delegate:void 0},YW=function(e){function t(t,r,n){void 0===t&&(t=1/0),void 0===r&&(r=1/0),void 0===n&&(n=ZW);var i=e.call(this)||this;return i._bufferSize=t,i._windowTime=r,i._timestampProvider=n,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=r===1/0,i._bufferSize=Math.max(1,t),i._windowTime=Math.max(1,r),i}return vI(t,e),t.prototype.next=function(t){var r=this,n=r.isStopped,i=r._buffer,o=r._infiniteTimeWindow,a=r._timestampProvider,s=r._windowTime;n||(i.push(t),!o&&i.push(a.now()+s)),this._trimBuffer(),e.prototype.next.call(this,t)},t.prototype._subscribe=function(e){this._throwIfClosed(),this._trimBuffer();for(var t=this._innerSubscribe(e),r=this._infiniteTimeWindow,n=this._buffer.slice(),i=0;i0&&d(i)}),void 0,void 0,(function(){(null===o||void 0===o?void 0:o.closed)||null===o||void 0===o||o.unsubscribe(),s=null}))),!l&&d(null!=n?"number"===typeof n?n:+n-c.now():i)}))}function QG(e){throw new XG(e)}function eZ(e,t){return vW(t)?DG(e,t,1):DG(e,1)}function tZ(){for(var e=[],t=0;t0&&(t=new DW({next:function(e){return m.next(e)},error:function(e){u=!0,d(),n=iZ(h,i,e),m.error(e)},complete:function(){l=!0,d(),n=iZ(h,a),m.complete()}}),cG(e).subscribe(t))}))(e)}}function iZ(e,t){for(var r=[],n=2;n=2;return function(n){return n.pipe(e?aZ((function(t,r){return e(t,r,n)})):$W,(o=1)<=0?function(){return dG}:yG((function(e,t){var r=0;e.subscribe(bG(t,(function(e){++r<=o&&(t.next(e),o<=r&&t.complete())})))})),r?function(e){return yG((function(t,r){var n=!1;t.subscribe(bG(r,(function(e){n=!0,r.next(e)}),(function(){n||r.next(e),r.complete()})))}))}(t):(void 0===(i=function(){return new sZ})&&(i=cZ),yG((function(e,t){var r=!1;e.subscribe(bG(t,(function(e){r=!0,t.next(e)}),(function(){return r?t.complete():t.error(i())})))}))));var i,o}}function uZ(e){return yG((function(t,r){var n,i=null,o=!1;i=t.subscribe(bG(r,void 0,void 0,(function(a){n=cG(e(a,uZ(e)(t))),i?(i.unsubscribe(),i=null,n.subscribe(r)):o=!0}))),o&&(i.unsubscribe(),i=null,n.subscribe(r))}))}function dZ(e,t){return void 0===t&&(t=$W),e=null!==e&&void 0!==e?e:hZ,yG((function(r,n){var i,o=!0;r.subscribe(bG(n,(function(r){var a=t(r);!o&&e(i,a)||(o=!1,i=a,n.next(r))})))}))}function hZ(e,t){return e===t}function fZ(e){var t;void 0===e&&(e=1/0);var r=(t=e&&"object"===typeof e?e:{count:e}).count,n=void 0===r?1/0:r,i=t.delay,o=t.resetOnSuccess,a=void 0!==o&&o;return n<=0?$W:yG((function(e,t){var r,o=0,s=function(){var c=!1;r=e.subscribe(bG(t,(function(e){a&&(o=0),t.next(e)}),void 0,(function(e){if(o++{r.set(t,e[t])})),r}typecheckKey(e){this.keySchema&&this.keySchema.Typecheck(e)}typecheckValue(e){this.valueSchema&&this.valueSchema.Typecheck(e)}assertTypecheckValue(e){try{this.typecheckValue(e)}catch(t){throw new AZ(e,this.valueSchema,"value",t)}}assertTypecheckKey(e){try{this.typecheckKey(e)}catch(t){throw new AZ(e,this.keySchema,"key",t)}}serializeDeterministically(e){return _Z()(e)}*keys(){for(const[e]of this.entries())yield e}*values(){for(const[,e]of this.entries())yield e}*entries(){for(const e of this.valueMap.keys())yield[this.keyMap.get(e),this.valueMap.get(e)]}get(e){this.assertTypecheckKey(e);const t=this.serializeDeterministically(e);return this.valueMap.get(t)}set(e,t){this.assertTypecheckKey(e),this.assertTypecheckValue(t);const r=this.serializeDeterministically(e);this.keyMap.set(r,e),this.valueMap.set(r,t)}delete(e){this.assertTypecheckKey(e),this.keyMap.delete(this.serializeDeterministically(e)),this.valueMap.delete(this.serializeDeterministically(e))}has(e){this.assertTypecheckKey(e);const t=this.serializeDeterministically(e);return this.keyMap.has(t)&&this.valueMap.has(t)}clear(){this.keyMap.clear(),this.valueMap.clear()}get size(){return this.keyMap.size}forEach(e){for(const[t,r]of this.entries())e(r,t,this)}}wZ=EZ;class OZ extends Ja{constructor(e,t,r){super(),this.value=e,this.token=t,this.name="TokenValidationError";const n=this.token.annot(),i=n?`[${n}] `:"";this.message=`${i}${r}`}}class TZ{constructor(e,t,r){this.val=e,this.idx=t,this.fac=r,this.createToken=this.fac}typeWithoutAnnotations(){const e=t=>{if("object"===typeof t){if(Array.isArray(t)){return t.map((t=>e(t)))}const r=t;return r.args?{prim:r.prim,args:r.args.map((t=>e(t)))}:{prim:r.prim}}return t};return(t=this.val).args?{prim:t.prim,args:t.args.map((t=>e(t)))}:{prim:t.prim};var t}annot(){return(Array.isArray(this.val.annots)&&this.val.annots.length>0?this.val.annots[0]:String(this.idx)).replace(/(%|:)(_Liq_entry_)?/,"")}hasAnnotations(){return Array.isArray(this.val.annots)&&this.val.annots.length}get tokenVal(){return this.val}ExtractSignature(){return[[this.ExtractSchema()]]}}class CZ extends TZ{compare(e,t){return e===t?0:ethis.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(t.get(e))]})))}EncodeObject(e,t){const r=this.objLitToMichelsonMap(e);return this.validate(r),t&&t[RZ.prim]?t[RZ.prim](r,this.val):Array.from(r.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(r.get(e))]})))}Execute(e,t){if(t&&t[RZ.prim])return t[RZ.prim](e,this.val);if(Array.isArray(e)){const t=new PZ(this.val);return e.forEach((e=>{t.set(this.KeySchema.ToKey(e.args[0]),this.ValueSchema.Execute(e.args[1]))})),t}if("int"in e)return e.int;throw new jZ(e,this,`Big map is expecting either an array (Athens) or an object with an int property (Babylon). Got ${JSON.stringify(e)}`)}findAndReturnTokens(e,t){return RZ.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),this.ValueSchema.findAndReturnTokens(e,t),t}}RZ.prim="big_map";class IZ extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="OrValidationError"}}class MZ extends CZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Encode(e){const t=e[e.length-1],r=this.createToken(this.val.args[0],this.idx);let n=1;r instanceof MZ&&(n=Object.keys(r.ExtractSchema()).length);const i=this.createToken(this.val.args[1],this.idx+n);if(String(r.annot())!==String(t)||r instanceof MZ){if(String(i.annot())!==String(t)||i instanceof MZ){if(r instanceof MZ){const t=r.Encode(e);if(t)return{prim:"Left",args:[t]}}if(i instanceof MZ){const t=i.Encode(e);if(t)return{prim:"Right",args:[t]}}return null}return e.pop(),{prim:"Right",args:[i.Encode(e)]}}return e.pop(),{prim:"Left",args:[r.Encode(e)]}}ExtractSignature(){const e=this.createToken(this.val.args[0],this.idx);let t=1;e instanceof MZ&&(t=Object.keys(e.ExtractSchema()).length);const r=this.createToken(this.val.args[1],this.idx+t),n=[];if(e instanceof MZ)n.push(...e.ExtractSignature());else for(const i of e.ExtractSignature())n.push([e.annot(),...i]);if(r instanceof MZ)n.push(...r.ExtractSignature());else for(const i of r.ExtractSignature())n.push([r.annot(),...i]);return n}EncodeObject(e,t){this.validateJavascriptObject(e);const r=Object.keys(e)[0],n=this.createToken(this.val.args[0],this.idx);let i=1;n instanceof MZ&&(i=Object.keys(n.ExtractSchema()).length);const o=this.createToken(this.val.args[1],this.idx+i);if(String(n.annot())!==String(r)||n instanceof MZ){if(String(o.annot())!==String(r)||o instanceof MZ){if(n instanceof MZ){const r=n.EncodeObject(e,t);if(r)return{prim:"Left",args:[r]}}if(o instanceof MZ){const r=o.EncodeObject(e,t);if(r)return{prim:"Right",args:[r]}}return null}return{prim:"Right",args:[o.EncodeObject(e[r],t)]}}return{prim:"Left",args:[n.EncodeObject(e[r],t)]}}validateJavascriptObject(e){if("object"!==typeof e||Array.isArray(e)||null===e||1!==Object.keys(e).length)throw new IZ(e,this,`EncodeObject expects an object with a single key but got: ${JSON.stringify(e)}`)}Execute(e,t){const r=this.createToken(this.val.args[0],this.idx);let n=1;r instanceof MZ&&(n=Object.keys(r.ExtractSchema()).length);const i=this.createToken(this.val.args[1],this.idx+n);if("Right"===e.prim)return i instanceof MZ?i.Execute(e.args[0],t):{[i.annot()]:i.Execute(e.args[0],t)};if("Left"===e.prim)return r instanceof MZ?r.Execute(e.args[0],t):{[r.annot()]:r.Execute(e.args[0],t)};throw new IZ(e,this,`Was expecting Left or Right prim but got: ${JSON.stringify(e.prim)}`)}traversal(e,t,r){const n=this.createToken(this.val.args[0],this.idx);let i,o=1;n instanceof MZ?(i=e(n),o=Object.keys(n.ExtractSchema()).length):i={[n.annot()]:e(n)};const a=this.createToken(this.val.args[1],this.idx+o);let s;s=a instanceof MZ?t(a):{[a.annot()]:t(a)};return r(i,s)}ExtractSchema(){return this.traversal((e=>e.ExtractSchema()),(e=>e.ExtractSchema()),((e,t)=>Object.assign(Object.assign({},e),t)))}generateSchema(){return{__michelsonType:MZ.prim,schema:this.traversal((e=>e instanceof MZ?e.generateSchema().schema:e.generateSchema()),(e=>e instanceof MZ?e.generateSchema().schema:e.generateSchema()),((e,t)=>Object.assign(Object.assign({},e),t)))}}findToken(e){const t=this.createToken(this.val.args[0],this.idx);let r=1;t instanceof MZ&&(r=Object.keys(t.ExtractSchema()).length);const n=this.createToken(this.val.args[1],this.idx+r);if(String(t.annot())===String(e)&&!(t instanceof MZ)&&t instanceof CZ)return t;if(String(n.annot())===String(e)&&!(n instanceof MZ)&&n instanceof CZ)return n;if(t instanceof MZ){const r=t.findToken(e);if(r)return r}if(n instanceof MZ){const t=n.findToken(e);if(t)return t}return null}compare(e,t){const r=Object.keys(e)[0];if(r!==Object.keys(t)[0]){return JSON.stringify(this.EncodeObject(e))r.findAndReturnTokens(e,t)),(r=>r.findAndReturnTokens(e,t)),((e,t)=>Object.assign(Object.assign({},e),t))),t}}MZ.prim="or";class LZ extends Ja{constructor(e){super(e),this.message=e,this.name="TokenArgumentValidationError"}}class NZ extends Ja{constructor(e,t){super(),this.val1=e,this.val2=t,this.name="TokenComparisonError",this.message=`Tokens ${JSON.stringify(e)} and ${JSON.stringify(t)} are not comparable`}}function DZ(e,t=zZ.prim){if(Array.isArray(e))return DZ({prim:t,args:e},t);if(void 0===e.args)throw new LZ(`The value ${JSON.stringify(e)} is an invalid PairToken with no arguments, a pair must have two or more arguments.`);return e.args.length>2?[e.args[0],{prim:t,args:e.args.slice(1)}]:[e.args[0],e.args[1]]}class zZ extends CZ{constructor(e,t,r){super(Array.isArray(e)?{prim:zZ.prim,args:e}:e.prim?e:{prim:zZ.prim,args:e},t,r)}args(){return DZ(this.val)}tokens(){let e=0;return this.args().map((t=>{const r=this.createToken(t,this.idx+e);return r instanceof zZ?e+=Object.keys(r.ExtractSchema()).length:e++,r}))}Encode(e){return{prim:"Pair",args:this.tokens().map((t=>t.Encode(e)))}}ExtractSignature(){const e=this.args(),t=this.createToken(e[0],this.idx);let r=1;t instanceof MZ&&(r=Object.keys(t.ExtractSchema()).length);const n=this.createToken(e[1],this.idx+r),i=[];for(const o of t.ExtractSignature())for(const e of n.ExtractSignature())i.push([...o,...e]);return i}ToBigMapKey(e){return{key:this.EncodeObject(e),type:this.typeWithoutAnnotations()}}ToKey(e){return this.Execute(e)}EncodeObject(e,t){const[r,n]=this.tokens();let i,o;return i=r instanceof zZ&&!r.hasAnnotations()?e:e[r.annot()],o=n instanceof zZ&&!n.hasAnnotations()?e:e[n.annot()],{prim:"Pair",args:[r.EncodeObject(i,t),n.EncodeObject(o,t)]}}traversal(e,t){const r=this.args(),n=this.createToken(r[0],this.idx);let i,o=1;n instanceof zZ&&!n.hasAnnotations()?(i=e(n),n instanceof zZ&&(o=Object.keys(n.ExtractSchema()).length)):i={[n.annot()]:e(n)};const a=this.createToken(r[1],this.idx+o);let s;s=a instanceof zZ&&!a.hasAnnotations()?t(a):{[a.annot()]:t(a)};return Object.assign(Object.assign({},i),s)}Execute(e,t){const r=DZ(e,"Pair");return this.traversal((e=>e.Execute(r[0],t)),(e=>e.Execute(r[1],t)))}ExtractSchema(){return this.traversal((e=>e.ExtractSchema()),(e=>e.ExtractSchema()))}generateSchema(){return{__michelsonType:zZ.prim,schema:this.traversal((e=>e instanceof zZ&&!e.hasAnnotations()?e.generateSchema().schema:e.generateSchema()),(e=>e instanceof zZ&&!e.hasAnnotations()?e.generateSchema().schema:e.generateSchema()))}}compare(e,t){const[r,n]=this.tokens(),i=(e,t)=>e instanceof zZ&&!e.hasAnnotations()?t:t[e.annot()];if(r instanceof CZ&&n instanceof CZ){const o=r.compare(i(r,e),i(r,t));return 0===o?n.compare(i(n,e),i(n,t)):o}throw new NZ(e,t)}findAndReturnTokens(e,t){return zZ.prim===e&&t.push(this),this.tokens().map((r=>r.findAndReturnTokens(e,t))),t}}zZ.prim="pair";class BZ extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="NatValidationError"}}class UZ extends CZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){return new Us(e[Object.keys(e)[0]])}Encode(e){const t=e.pop();return this.validate(t),{int:new Us(t).toFixed()}}validate(e){const t=new Us(e);if(t.isNaN())throw new BZ(e,this,`Value is not a number: ${JSON.stringify(e)}`);if(t.isNegative())throw new BZ(e,this,`Value cannot be negative: ${JSON.stringify(e)}`)}EncodeObject(e,t){return this.validate(e),t&&t[UZ.prim]?t[UZ.prim](e):{int:new Us(e).toFixed()}}ExtractSchema(){return UZ.prim}generateSchema(){return{__michelsonType:UZ.prim,schema:UZ.prim}}ToBigMapKey(e){return{key:{int:String(e)},type:{prim:UZ.prim}}}ToKey({int:e}){return new Us(e)}compare(e,t){const r=Number(e),n=Number(t);return r===n?0:re.startsWith("tz"),n=r(e),i=r(t);return n&&!i?-1:i&&!n?1:super.compare(e,t)}findAndReturnTokens(e,t){return HZ.prim===e&&t.push(this),t}}HZ.prim="address";class VZ extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="MapValidationError"}}class qZ extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get ValueSchema(){return this.createToken(this.val.args[1],0)}get KeySchema(){return this.createToken(this.val.args[0],0)}validate(e){if(!PZ.isMichelsonMap(e))throw new VZ(e,this,`Value ${JSON.stringify(e)} is not a valid MichelsonMap`)}Execute(e,t){const r=new PZ(this.val);return e.forEach((e=>{r.set(this.KeySchema.ToKey(e.args[0]),this.ValueSchema.Execute(e.args[1],t))})),r}objLitToMichelsonMap(e){return e instanceof PZ?e:"object"===typeof e?0===Object.keys(e).length?new PZ:PZ.fromLiteral(e):e}Encode(e){const t=this.objLitToMichelsonMap(e.pop());return this.validate(t),Array.from(t.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(t.get(e))]})))}EncodeObject(e,t){const r=this.objLitToMichelsonMap(e);return this.validate(r),t&&t[qZ.prim]?t[qZ.prim](r):Array.from(r.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(r.get(e))]})))}ExtractSchema(){return{map:{key:this.KeySchema.ExtractSchema(),value:this.ValueSchema.ExtractSchema()}}}generateSchema(){return{__michelsonType:qZ.prim,schema:{key:this.KeySchema.generateSchema(),value:this.ValueSchema.generateSchema()}}}findAndReturnTokens(e,t){return qZ.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),this.ValueSchema.findAndReturnTokens(e,t),t}}qZ.prim="map";class KZ extends CZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){return"true"===String(e.prim).toLowerCase()}Encode(e){return{prim:e.pop()?"True":"False"}}EncodeObject(e,t){return t&&t[KZ.prim]?t[KZ.prim](e):{prim:e?"True":"False"}}ExtractSchema(){return KZ.prim}generateSchema(){return{__michelsonType:KZ.prim,schema:KZ.prim}}ToBigMapKey(e){return{key:this.EncodeObject(e),type:{prim:KZ.prim}}}ToKey(e){return this.EncodeObject(e)}compare(e,t){return e&&t||!e&&!t?0:e?1:-1}findAndReturnTokens(e,t){return KZ.prim===e&&t.push(this),t}}KZ.prim="bool";class WZ extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="TxRollupL2AddressValidationError"}}class GZ extends CZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}ToBigMapKey(e){return{key:{bytes:function(e){const t=Xa().decode(e);return kc(t.slice(3,42))}(e)},type:{prim:"bytes"}}}validate(e){if(oc(e)!==Zs.VALID)throw new WZ(e,this,`tx_rollup_l2_address is not valid: ${JSON.stringify(e)}`)}Encode(e){const t=e.pop();if(!t)throw new WZ(t,this,`arg missing to encode: this -> "${JSON.stringify(t)}"`);return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[GZ.prim]?t[GZ.prim](e):{string:e}}Execute(e){if(e.string)return e.string;if(!e.bytes)throw new WZ(e,this,`value cannot be missing string and byte value. must have one ${JSON.stringify(e)}`);return wc(e.bytes)}ExtractSchema(){return GZ.prim}generateSchema(){return{__michelsonType:GZ.prim,schema:GZ.prim}}ToKey({bytes:e,string:t}){if(t)return t;if(!e)throw new WZ(e,this,`value cannot be missing string and byte value. must have one: bytes = ${JSON.stringify(e)}`);return wc(e)}findAndReturnTokens(e,t){return GZ.prim===e&&t.push(this),t}}GZ.prim="tx_rollup_l2_address";class ZZ extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ContractValidationError"}}class YZ extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(oc(e)!==Zs.VALID)throw new ZZ(e,this,`Value ${JSON.stringify(e)} is not a valid contract address.`);return null}Execute(e){if(e.string)return e.string;if(!e.bytes)throw new ZZ(e,this,`Value ${JSON.stringify(e)} is not a valid contract address. must contain bytes or string.`);return bc(e.bytes)}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[YZ.prim]?t[YZ.prim](e):{string:e}}ExtractSchema(){return YZ.prim}generateSchema(){const e=this.createToken(this.val.args[0],0);return{__michelsonType:YZ.prim,schema:{parameter:this.val.args[0]?e.generateSchema():{}}}}findAndReturnTokens(e,t){return YZ.prim===e&&t.push(this),t}}YZ.prim="contract";class XZ extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ListValidationError"}}class JZ extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get valueSchema(){return this.createToken(this.val.args[0],this.idx)}validate(e){if(!Array.isArray(e))throw new XZ(e,this,`Value ${JSON.stringify(e)} is not a valid array`)}Encode(e){const t=e.pop();this.validate(t);const r=this.createToken(this.val.args[0],0);return t.reduce(((e,t)=>[...e,r.EncodeObject(t)]),[])}Execute(e,t){const r=this.createToken(this.val.args[0],0);return this.validate(e),e.reduce(((e,n)=>[...e,r.Execute(n,t)]),[])}EncodeObject(e,t){const r=this.createToken(this.val.args[0],0);return this.validate(e),t&&t[JZ.prim]?t[JZ.prim](e):e.reduce(((e,t)=>[...e,r.EncodeObject(t)]),[])}ExtractSchema(){return{[JZ.prim]:this.valueSchema.ExtractSchema()}}generateSchema(){return{__michelsonType:JZ.prim,schema:this.valueSchema.generateSchema()}}findAndReturnTokens(e,t){return JZ.prim===e&&t.push(this),this.createToken(this.val.args[0],this.idx).findAndReturnTokens(e,t),t}}JZ.prim="list";class QZ extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="MutezValidationError"}}class eY extends CZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){return new Us(e[Object.keys(e)[0]])}ExtractSchema(){return eY.prim}generateSchema(){return{__michelsonType:eY.prim,schema:eY.prim}}validate(e){if(new Us(e).isNaN())throw new QZ(e,this,`Value is not a number: ${e}`)}Encode(e){const t=e.pop();return this.validate(t),{int:String(t).toString()}}EncodeObject(e,t){return this.validate(e),t&&t[eY.prim]?t[eY.prim](e):{int:String(e).toString()}}ToBigMapKey(e){return{key:{int:String(e)},type:{prim:eY.prim}}}ToKey({int:e}){return e}compare(e,t){const r=Number(e),n=Number(t);return r===n?0:rthis.KeySchema.compare(e,t))).reduce(((e,t)=>[...e,this.KeySchema.EncodeObject(t)]),[])}Execute(e,t){return e.reduce(((e,r)=>[...e,this.KeySchema.Execute(r,t)]),[])}EncodeObject(e,t){return this.validate(e),t&&t[vY.prim]?t[vY.prim](e):e.sort(((e,t)=>this.KeySchema.compare(e,t))).reduce(((e,t)=>[...e,this.KeySchema.EncodeObject(t)]),[])}ExtractSchema(){return vY.prim}generateSchema(){return{__michelsonType:vY.prim,schema:this.KeySchema.generateSchema()}}findAndReturnTokens(e,t){return vY.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),t}}vY.prim="set";class yY extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ChainIDValidationError"}}class bY extends CZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(ac(e)!==Zs.VALID)throw new yY(e,this,`Value ${JSON.stringify(e)} is not a valid ChainID`)}Execute(e){return e[Object.keys(e)[0]]}ExtractSchema(){return bY.prim}generateSchema(){return{__michelsonType:bY.prim,schema:bY.prim}}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[bY.prim]?t[bY.prim](e):{string:e}}ToKey({string:e}){return e}ToBigMapKey(e){return{key:{string:e},type:{prim:bY.prim}}}findAndReturnTokens(e,t){return bY.prim===e&&t.push(this),t}}bY.prim="chain_id";class wY extends Ja{constructor(){super(),this.name="TicketEncodeError",this.message="Tickets cannot be sent to the blockchain; they are created on-chain"}}const xY={prim:"contract"},_Y={prim:"int"};class SY extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get valueToken(){return this.createToken(this.val.args[0],this.idx)}Encode(e){throw new wY}EncodeObject(e,t){if(t&&t[SY.prim])return t[SY.prim](e,this.val);throw new wY}Execute(e,t){if(t&&t[SY.prim])return t[SY.prim](e,this.val);const r=this.createToken(xY,this.idx),n=this.valueToken,i=this.createToken(_Y,this.idx);return void 0===e.args[2]&&void 0!==e.args[1].args?{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1].args[0],t),amount:i.Execute(e.args[1].args[1],t)}:{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1],t),amount:i.Execute(e.args[2],t)}}ExtractSchema(){return{ticketer:YZ.prim,value:this.valueToken.ExtractSchema(),amount:aY.prim}}generateSchema(){return{__michelsonType:SY.prim,schema:{value:this.valueToken.generateSchema(),ticketer:{__michelsonType:YZ.prim,schema:YZ.prim},amount:{__michelsonType:aY.prim,schema:aY.prim}}}}findAndReturnTokens(e,t){return SY.prim===e&&t.push(this),this.valueToken.findAndReturnTokens(e,t),t}}SY.prim="ticket";class kY extends Ja{constructor(){super(),this.name="TicketDeprecatedEncodeError",this.message="Ticket_deprecated cannot be sent to the blockchain; they are created on-chain"}}const EY={prim:"contract"},AY={prim:"int"};class PY extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get valueToken(){return this.createToken(this.val.args[0],this.idx)}Encode(e){throw new kY}EncodeObject(e,t){if(t&&t[PY.prim])return t[PY.prim](e,this.val);throw new kY}Execute(e,t){if(t&&t[PY.prim])return t[PY.prim](e,this.val);const r=this.createToken(EY,this.idx),n=this.valueToken,i=this.createToken(AY,this.idx);return void 0===e.args[2]&&void 0!==e.args[1].args?{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1].args[0],t),amount:i.Execute(e.args[1].args[1],t)}:{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1],t),amount:i.Execute(e.args[2],t)}}ExtractSchema(){return{ticketer:YZ.prim,value:this.valueToken.ExtractSchema(),amount:aY.prim}}generateSchema(){return{__michelsonType:PY.prim,schema:{value:this.valueToken.generateSchema(),ticketer:{__michelsonType:YZ.prim,schema:YZ.prim},amount:{__michelsonType:aY.prim,schema:aY.prim}}}}findAndReturnTokens(e,t){return PY.prim===e&&t.push(this),this.valueToken.findAndReturnTokens(e,t),t}}PY.prim="ticket_deprecated";class OY extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="NeverTokenError"}}class TY extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Encode(e){const t=e.pop();throw new OY(t,this,`Assigning a value to the type never is forbidden. Trying to assign ${JSON.stringify(t)}.`)}EncodeObject(e,t){if(t&&t[TY.prim])return t[TY.prim](e);throw new OY(e,this,`Assigning a value to the type never is forbidden. Trying to assign ${JSON.stringify(e)}.`)}Execute(e){throw new OY(e,this,`There is no literal value for the type never. Trying to execute ${JSON.stringify(e)}.`)}ExtractSchema(){return TY.prim}generateSchema(){return{__michelsonType:TY.prim,schema:TY.prim}}findAndReturnTokens(e,t){return TY.prim===e&&t.push(this),t}}TY.prim="never";class CY extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="SaplingStateValidationError"}}class jY extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}isValid(e){return"object"===typeof e&&0===Object.keys(e).length}Execute(e,t){if(t&&t[jY.prim])return t[jY.prim](e,this.val);if("int"in e)return e.int;throw new CY(e,this,`Sapling state is expecting an object with an int property. Got ${JSON.stringify(e)}`)}Encode(e){const t=e.pop();if(this.isValid(t))return[];throw new CY(t,this,`Invalid sapling_state. Received: ${JSON.stringify(t)} while expecting: {}`)}EncodeObject(e,t){if(t&&t[jY.prim])return t[jY.prim](e);if(this.isValid(e))return[];throw new CY(e,this,`Invalid sapling_state. Received: ${JSON.stringify(e)} while expecting: {}`)}ExtractSchema(){return{[jY.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:jY.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return jY.prim===e&&t.push(this),t}}jY.prim="sapling_state";class RY extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="SaplingTransactionValidationError"}}class IY extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){throw new RY(e,this,`There is no literal value for the sapling_transaction type. Got: ${JSON.stringify(e)}.`)}validateBytes(e){const t=/^(0x|0X)?([0-9a-fA-F]*$)/.exec(e);if(t&&t[2].length%2===0)return t[2];throw new RY(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?SZ.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.validateBytes(this.convertUint8ArrayToHexString(t)),{bytes:String(t).toString()}}EncodeObject(e,t){return e=this.validateBytes(this.convertUint8ArrayToHexString(e)),t&&t[IY.prim]?t[IY.prim](e):{bytes:String(e).toString()}}ExtractSchema(){return{[IY.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:IY.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return IY.prim===e&&t.push(this),t}}IY.prim="sapling_transaction";class MY extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="SaplingTransactionDeprecatedValidationError"}}class LY extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){throw new MY(e,this,`There is no literal value for the sapling_transaction_deprecated type. Got: ${JSON.stringify(e)}.`)}validateBytes(e){const t=/^(0x|0X)?([0-9a-fA-F]*$)/.exec(e);if(t&&t[2].length%2===0)return t[2];throw new MY(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?SZ.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.validateBytes(this.convertUint8ArrayToHexString(t)),{bytes:String(t).toString()}}EncodeObject(e,t){return e=this.validateBytes(this.convertUint8ArrayToHexString(e)),t&&t[LY.prim]?t[LY.prim](e):{bytes:String(e).toString()}}ExtractSchema(){return{[LY.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:LY.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return LY.prim===e&&t.push(this),t}}LY.prim="sapling_transaction_deprecated";class NY extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="Bls12381frValidationError"}}class DY extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new NY(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?SZ.from(e).toString("hex"):e}Encode(e){let t=e.pop();return"number"===typeof t?{int:t.toString()}:(t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t})}EncodeObject(e,t){return t&&t[DY.prim]?t[DY.prim](e):"number"===typeof e?{int:e.toString()}:(e=this.convertUint8ArrayToHexString(e),this.validate(e),{bytes:e})}Execute(e){return e.bytes}ExtractSchema(){return DY.prim}generateSchema(){return{__michelsonType:DY.prim,schema:DY.prim}}findAndReturnTokens(e,t){return DY.prim===e&&t.push(this),t}}DY.prim="bls12_381_fr";class zY extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="Bls12381g1ValidationError"}}class BY extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new zY(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?SZ.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[BY.prim]?t[BY.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return BY.prim}generateSchema(){return{__michelsonType:BY.prim,schema:BY.prim}}findAndReturnTokens(e,t){return BY.prim===e&&t.push(this),t}}BY.prim="bls12_381_g1";class UY extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="Bls12381g2ValidationError"}}class FY extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new UY(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?SZ.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[FY.prim]?t[FY.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return FY.prim}generateSchema(){return{__michelsonType:FY.prim,schema:FY.prim}}findAndReturnTokens(e,t){return FY.prim===e&&t.push(this),t}}FY.prim="bls12_381_g2";class $Y extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ChestValidationError"}}class HY extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!=0)throw new $Y(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?SZ.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[HY.prim]?t[HY.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return HY.prim}generateSchema(){return{__michelsonType:HY.prim,schema:HY.prim}}findAndReturnTokens(e,t){return HY.prim===e&&t.push(this),t}}HY.prim="chest";class VY extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ChestKeyValidationError"}}class qY extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new VY(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?SZ.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[qY.prim]?t[qY.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return qY.prim}generateSchema(){return{__michelsonType:qY.prim,schema:qY.prim}}findAndReturnTokens(e,t){return qY.prim===e&&t.push(this),t}}qY.prim="chest_key";class KY extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="GlobalConstantEncodingError"}}class WY extends OZ{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="GlobalConstantDecodingError"}}class GY extends TZ{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e,t){if(t&&t[GY.prim])return t[GY.prim](e,this.val);throw new WY(e,this,`Unable to decode a value represented by a global constants. Please provide an expanded script to the Michelson-Encoder or semantics for the decoding. The following global constant hash was encountered: ${this.val.args[0].string}.`)}Encode(e){throw new KY(e,this,`Unable to encode a script containing global constants. Please provide an expanded script to the Michelson-Encoder. The following global constant hash was encountered: ${this.val.args[0].string}.`)}EncodeObject(e,t){if(t&&t[GY.prim])return t[GY.prim](e);throw new KY(e,this,`Unable to encode a script containing global constants. Please provide an expanded script to the Michelson-Encoder. The following global constant hash was encountered: ${this.val.args[0].string}.`)}ExtractSchema(){return GY.prim}generateSchema(){return{__michelsonType:GY.prim,schema:{hash:this.val.args[0].string}}}findAndReturnTokens(e,t){return GY.prim===e&&t.push(this),t}}GY.prim="constant";const ZY=[zZ,UZ,FZ,RZ,HZ,GZ,qZ,KZ,MZ,YZ,JZ,eY,rY,nY,iY,aY,sY,lY,dY,fY,pY,mY,vY,bY,SY,PY,TY,jY,IY,LY,DY,BY,FY,HY,qY,GY];class YY extends Ja{constructor(e,t){super(e),this.message=e,this.data=t,this.name="Invalid token error"}}function XY(e,t){if(Array.isArray(e))return new zZ(e,t,XY);const r=ZY.find((t=>t.prim===e.prim));if(!r)throw new YY(`Malformed data: ${JSON.stringify(e)}. Expected a value with a valid prim property`,e);return new r(e,t,XY)}class JY extends us{constructor(e,t,r,n){super(e,t,r,n),this.viewName=e,this.sigs=t,this.args=r,this.cause=n,this.name="ParameterEncodingError",this.message=`Could not encode parameter ${JSON.stringify(r)} received for name "${e}" expecting one of the following signatures ${JSON.stringify(t)}`}}class QY extends Ja{constructor(e,t){super(),this.script=e,this.reason=t,this.name="InvalidScriptError";let r="Invalid on-chain view found in the following script.";t&&(r+=` Reason: ${t}.`),r+=`Script: ${JSON.stringify(e)}`,this.message=r}}class eX extends Ja{constructor(e,t){super(),this.script=e,this.reason=t,this.name="InvalidRpcResponseError";let r="Invalid RPC response passed as argument(s).";t&&(r+=` Reason: ${t}.`),r+=` Received: ${JSON.stringify(e)}`,this.message=r}}class tX extends Ja{constructor(e){super(e),this.message=e,this.name="InvalidBigMapSchemaError"}}class rX extends Ja{constructor(e,t){super(e),this.message=e,this.value=t,this.name="InvalidBigMapDiffError"}}class nX extends Ja{constructor(e,t,r,n){super(),this.details=t,this.schema=r,this.value=n,this.name="BigMapEncodingError",this.message=`Unable to encode the big map ${e}. Schema is: ${JSON.stringify(r)}. The ${e} is: ${JSON.stringify(n)}. Error details: ${t}`}}class iX extends Ja{constructor(e,t,r,n,i){super(),this.details=t,this.schema=r,this.value=n,this.semantics=i,this.name="StorageEncodingError",this.message=`Unable to encode ${e}. The schema is: ${JSON.stringify(r)}, the value is: ${JSON.stringify(n)}.${i?`And the semantic is: ${JSON.stringify(i)}`:""}. Error details: ${t}`}}class oX extends Ja{constructor(e){super(e),this.message=e,this.name="MissingArgumentError"}}var aX;const sX=Symbol.for("taquito-schema-type-symbol");function cX(e,t=zZ.prim){var r,n;if(Array.isArray(e))return cX({prim:t,args:e},t);const i=e;return i.prim===t&&i.args&&i.args.length>2?Object.assign(Object.assign({},i),{args:[null===(r=i.args)||void 0===r?void 0:r[0],{prim:t,args:null===(n=i.args)||void 0===n?void 0:n.slice(1)}]}):i}function lX(e,t){if(void 0===e||void 0===t)return e===t;const r=cX(e),n=cX(t);return r.prim===n.prim&&(void 0===r.args&&void 0===n.args||void 0!==r.args&&void 0!==n.args&&r.args.length===n.args.length&&r.args.every(((e,t)=>{var r,i;return lX(e,null!==(i=null===(r=n.args)||void 0===r?void 0:r[t])&&void 0!==i?i:{})})))&&(void 0===r.annots&&void 0===n.annots||void 0!==r.annots&&void 0!==n.annots&&r.annots.length===n.annots.length&&r.annots.every(((e,t)=>{var r;return e===(null===(r=n.annots)||void 0===r?void 0:r[t])})))}class uX{static isSchema(e){return e&&!0===e[sX]}static fromRPCResponse(e){if(!e)throw new eX(e,"the RPC response is empty");if(!e.script)throw new eX(e,"the RPC response has no script");if(!Array.isArray(e.script.code))throw new eX(e,"The response.script.code should be an array");let t=e.script.code;for(;1===t.length&&Array.isArray(t[0]);)t=t[0];const r=t.find((e=>"prim"in e&&"storage"===e.prim));if(!r||!Array.isArray(r.args))throw new eX(e,'The response.script.code has an element of type {prim: "storage"}, but its args is not an array');return new uX(r.args[0])}isExpressionExtended(e){return"prim"in e&&Array.isArray(e.args)}constructor(e){if(this.val=e,this[aX]=!0,this.root=XY(e,0),this.root instanceof RZ)this.bigMap=this.root;else if(this.isExpressionExtended(e)&&"pair"===e.prim){const t=e.args[0];this.isExpressionExtended(t)&&"big_map"===t.prim&&(this.bigMap=new RZ(t,0,XY))}}removeTopLevelAnnotation(e){return(this.root instanceof zZ||this.root instanceof MZ)&&this.root.hasAnnotations()&&"object"===typeof e&&1===Object.keys(e).length?e[Object.keys(e)[0]]:e}Execute(e,t){const r=this.root.Execute(e,t);return this.removeTopLevelAnnotation(r)}Typecheck(e){this.root instanceof RZ&&Number.isInteger(Number(e))||this.root instanceof SY&&e.ticketer&&e.value&&e.amount||this.root instanceof PY&&e.ticketer&&e.value&&e.amount||this.root instanceof qZ&&this.root.ValueSchema instanceof RZ||this.root.EncodeObject(e)}ExecuteOnBigMapDiff(e,t){if(!this.bigMap)throw new tX("Big map schema is undefined");if(!Array.isArray(e))throw new rX(`Big map diff must be an array, got: ${JSON.stringify(e)}`,e);const r=e.map((({key:e,value:t})=>({args:[e,t]})));return this.bigMap.Execute(r,t)}ExecuteOnBigMapValue(e,t){if(!this.bigMap)throw new tX("Big map schema is undefined");return this.bigMap.ValueSchema.Execute(e,t)}EncodeBigMapKey(e){if(!this.bigMap)throw new tX("Big map schema is undefined");try{return this.bigMap.KeySchema.ToBigMapKey(e)}catch(t){throw new nX("key",t,this.bigMap.KeySchema,e)}}Encode(e,t){try{return this.root.EncodeObject(e,t)}catch(r){if(r instanceof OZ)throw r;throw new iX("storage object",r,this.root,e,t)}}ExtractSchema(){return this.removeTopLevelAnnotation(this.root.ExtractSchema())}generateSchema(){return this.removeTopLevelAnnotation(this.root.generateSchema())}ComputeState(e,t){if(!this.bigMap)throw new tX("Big map schema is undefined");const r=e.reduce(((e,t)=>Object.assign(Object.assign({},e),this.ExecuteOnBigMapDiff(t.contents[0].metadata.operation_result.big_map_diff))),{});return Object.assign(Object.assign({},this.Execute(t)),{[this.bigMap.annot()]:r})}FindFirstInTopLevelPair(e,t){return this.findValue(this.root.val,e,t)}findValue(e,t,r){if(lX(r,e))return t;if(Array.isArray(e)||"pair"===e.prim){const n=cX(e),i=cX(t,"Pair");if(void 0===n.args||void 0===i.args)throw new oX("Tokens have no arguments");if(n.args[0])return this.findValue(n.args[0],i.args[0],r)||this.findValue(n.args[1],i.args[1],r)}}findToken(e){return this.root.findAndReturnTokens(e,[])}}aX=sX;class dX{static fromRPCResponse(e){if(!e)throw new eX(e,"the RPC response is empty");if(!e.script)throw new eX(e,"the RPC response has no script");if(!Array.isArray(e.script.code))throw new eX(e,"The response.script.code should be an array");const t=e.script.code.find((e=>"prim"in e&&"parameter"===e.prim));if(!t)throw new eX(e,'The response.script.code should have an element of type {prim: "parameter"}');if(!Array.isArray(t.args))throw new eX(e,'The response.script.code has an element of type {prim: "parameter"}, but its args is not an array');return new dX(t.args[0])}get isMultipleEntryPoint(){return this.root instanceof MZ||this.root instanceof nY&&this.root.subToken()instanceof MZ}get hasAnnotation(){return!this.isMultipleEntryPoint||"0"!==Object.keys(this.ExtractSchema())[0]}constructor(e){this.root=XY(e,0)}Execute(e,t){return this.root.Execute(e,t)}Encode(...e){try{return this.root.Encode(e.reverse())}catch(t){if(t instanceof OZ)throw t;throw new JY("Unable to encode parameter",this.root,e,t)}}EncodeObject(e,t){try{return this.root.EncodeObject(e,t)}catch(r){if(r instanceof OZ)throw r;throw new JY("Unable to encode parameter object",this.root,e,r)}}ExtractSchema(){return this.root.ExtractSchema()}generateSchema(){return this.root.generateSchema()}ExtractSignatures(){return this.root.ExtractSignature()}}class hX{static fromRPCResponse(e){const t=[],r=e&&e.script&&Array.isArray(e.script.code)&&e.script.code.filter((e=>"view"===e.prim));return r&&r.forEach((e=>{t.push(new hX(e.args))})),t}constructor(e){if(!e)throw new QY(e,"the args are not defined");if(4!==e.length)throw new QY(e,"there should be exactly 4 arguments");if(!("string"in e[0])||!e[0].string)throw new QY(e,"The first argument should be a string, representing the view name. It should be in the form: { string: 'viewName' }");this.viewName=e[0].string,this.viewArgsType=e[1],this.viewReturnType=e[2],this.instructions=e[3],this.rootArgsType=XY(this.viewArgsType,0),this.rootReturnType=XY(this.viewReturnType,0)}encodeViewArgs(e){try{return this.rootArgsType.EncodeObject(e)}catch(t){throw new JY(this.viewName,void 0,e,t)}}decodeViewResult(e,t){return this.rootReturnType.Execute(e,t)}extractArgsSchema(){return this.rootArgsType.ExtractSchema()}extractResultSchema(){return this.rootReturnType.ExtractSchema()}}class fX{constructor(e,t){this.tag=e,this.type=t}static fromMichelineValue(e){var t,r;return new fX(null===(t=e.annots)||void 0===t?void 0:t[0],null===(r=e.args)||void 0===r?void 0:r[0])}static fromRPCResponse(e){const t=[];return e.script.code.forEach((e=>{"prim"in e&&"code"===e.prim&&"args"in e&&e.args&&t.push(...fX.extractEventsRecursively(e.args))})),fX.removeDuplicates(t)}static removeDuplicates(e){const t=[];return e.forEach((e=>{const r=t.findIndex((t=>t.tag===e.tag&&lX(t.type,e.type)));-1===r&&t.push(e)})),t}static extractEventsRecursively(e){return Array.isArray(e)?e.flatMap((e=>fX.extractEventsRecursively(e))):"prim"in e?"EMIT"===e.prim?[fX.fromMichelineValue(e)]:"args"in e&&e.args?e.args.flatMap((e=>fX.extractEventsRecursively(e))):[]:[]}}const pX=Symbol(),mX=Symbol("source_reference");class gX extends Ja{constructor(e,t,r){super(),this.src=e,this.idx=t,this.message=r,this.name="ScanError"}}var vX;!function(e){e[e.Comment=0]="Comment",e[e.Number=1]="Number",e[e.String=2]="String",e[e.Bytes=3]="Bytes",e[e.Ident=4]="Ident"}(vX||(vX={}));const yX=new RegExp("\\s"),bX=new RegExp("[:@%_A-Za-z]"),wX=new RegExp("[@%_\\.A-Za-z0-9]"),xX=new RegExp("[0-9]"),_X=new RegExp("[0-9a-fA-F]");function*SX(e,t=!1){let r=0;for(;r1&&"0x"===e.substring(r,r+2)){for(r+=2;r1&&"/*"===e.substring(r,r+2)){for(r+=2;r1&&"*/"===e.substring(r,r+2));)r++;if(r===e.length)throw new gX(e,r,"Unterminated C style comment");r+=2,t&&(yield{t:vX.Comment,v:e.slice(i,r),first:i,last:r})}else{if("("!==n&&")"!==n&&"{"!==n&&"}"!==n&&";"!==n)throw new gX(e,r,`Invalid character at offset ${r}: \`${n}'`);r++,yield{t:n,v:n,first:i,last:r}}}}const kX=Symbol("ref_contract");var EX;!function(e){e.Ps9mPmXa="Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P",e.PtCJ7pwo="PtCJ7pwoxe8JasnHY8YonnLYjcVHmhiARPJvqcC6VfHT5s8k8sY",e.PsYLVpVv="PsYLVpVvgbLhAhoqAkMFUo6gudkJ9weNXhUYCiLDzcUpFpkk8Wt",e.PsddFKi3="PsddFKi32cMJ2qPjf43Qv5GDWLDPZb3T3bF6fLKiF5HtvHNU7aP",e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdoTez="PtEdoTezd3RHSC31mpxxo1npxFjoWWcFgQtxapi51Z8TLu6v6Uq",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangzH="PtHangzHogokSuiMHemCuowEavgYTP8J5qQ9fQS793MHYFpCY3r",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.PsiThaCa="PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakarta="PtJakartaiDz69SfDDLXJSiuZqTSeSKRDbKVZC8MNzJnvRjvnGw",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(EX||(EX={}));const AX=EX.Psithaca2,PX={Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P:0,PtCJ7pwoxe8JasnHY8YonnLYjcVHmhiARPJvqcC6VfHT5s8k8sY:1,PsYLVpVvgbLhAhoqAkMFUo6gudkJ9weNXhUYCiLDzcUpFpkk8Wt:2,PsddFKi32cMJ2qPjf43Qv5GDWLDPZb3T3bF6fLKiF5HtvHNU7aP:3,Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd:4,PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU:5,PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS:5,PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb:6,PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo:7,PtEdoTezd3RHSC31mpxxo1npxFjoWWcFgQtxapi51Z8TLu6v6Uq:8,PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA:8,PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i:9,PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV:10,PtHangzHogokSuiMHemCuowEavgYTP8J5qQ9fQS793MHYFpCY3r:11,PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx:11,PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP:12,Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A:12,PtJakartaiDz69SfDDLXJSiuZqTSeSKRDbKVZC8MNzJnvRjvnGw:13,PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY:13,PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg:14,PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW:15,PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc:16,PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1:16,PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf:17,ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK:18};function OX(e,t){return PX[e][e+1,t])),i+=s,o+=l;break}case"I":o!==r.length&&(a[1]=r[o++]);break;default:throw new TX(e,`${e.prim}: unexpected character: ${l}`)}return{r:n(s,c,[0,a]),n:i,an:o}}function MX(e,t,r,n){const i=t[0];switch(i){case"A":return t.length>1?[{prim:"DUP"},{prim:"DIP",args:[[{prim:"CAR",annots:["@%%"]},MX(e,t.slice(1),[],n)]]},{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:["%@","%@",...r]}]:n.a;case"D":return t.length>1?[{prim:"DUP"},{prim:"DIP",args:[[{prim:"CDR",annots:["@%%"]},MX(e,t.slice(1),[],n)]]},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@","%@",...r]}]:n.d;default:throw new TX(e,`${e.prim}: unexpected character: ${i}`)}}function LX(e,t){let r=e.length;for(;r>0&&e[r-1]===t;)r--;return e.slice(0,r)}function NX(e){const t=[],r=[];if(void 0!==e)for(const n of e)(0!==n.length&&"%"===n[0]?t:r).push(n);return{fields:t,rest:r}}function DX({prim:e,annots:t,args:r}){return Object.assign(Object.assign({prim:e},t&&{annots:t}),r&&{args:r})}const zX=/^P[PAI]{3,}R$/,BX=/^UNP[PAI]{2,}R$/,UX=/^C[AD]{2,}R$/,FX=/^SET_C[AD]+R$/,$X=/^MAP_C[AD]+R$/,HX=/^DI{2,}P$/,VX=/^DU+P$/;class qX extends Ja{constructor(e,t){super(),this.token=e,this.message=t,this.name="MichelineParseError"}}class KX extends Ja{constructor(e,t){super(),this.node=e,this.message=t,this.name="JSONParseError"}}const WX=new qX(null,"Unexpected EOF");function GX(e){return e.t===vX.Ident&&("@"===e.v[0]||"%"===e.v[0]||":"===e.v[0])}const ZX=new RegExp("^-?[0-9]+$"),YX=new RegExp("^([0-9a-fA-F]{2})*$");class XX{constructor(e){this.opt=e}expand(e){var t,r,n;if(void 0!==(null===(t=this.opt)||void 0===t?void 0:t.expandGlobalConstant)&&"constant"===e.prim){const t=function(e,t){return void 0!==e.args&&1===e.args.length&&"string"in e.args[0]&&e.args[0].string in t?t[e.args[0].string]:e}(e,this.opt.expandGlobalConstant);return t!==e&&(t[mX]=Object.assign(Object.assign({},e[mX]||{first:0,last:0}),{globalConstant:e})),t}if(void 0===(null===(r=this.opt)||void 0===r?void 0:r.expandMacros)||(null===(n=this.opt)||void 0===n?void 0:n.expandMacros)){const t=function(e,t){const r=(null===t||void 0===t?void 0:t.protocol)||AX;function n(e){return void 0!==e?[{prim:"RENAME",annots:e}]:[]}switch(e.prim){case"CMPEQ":case"CMPNEQ":case"CMPLT":case"CMPGT":case"CMPLE":case"CMPGE":if(CX(e,0))return[{prim:"COMPARE"},DX({prim:e.prim.slice(3),annots:e.annots})];break;case"IFEQ":case"IFNEQ":case"IFLT":case"IFGT":case"IFLE":case"IFGE":if(CX(e,2))return[{prim:e.prim.slice(2)},DX({prim:"IF",annots:e.annots,args:e.args})];break;case"IFCMPEQ":case"IFCMPNEQ":case"IFCMPLT":case"IFCMPGT":case"IFCMPLE":case"IFCMPGE":if(CX(e,2))return[{prim:"COMPARE"},{prim:e.prim.slice(5)},DX({prim:"IF",annots:e.annots,args:e.args})];break;case"FAIL":if(CX(e,0)&&jX(e))return[{prim:"UNIT"},{prim:"FAILWITH"}];break;case"ASSERT":if(CX(e,0)&&jX(e))return[{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_EQ":case"ASSERT_NEQ":case"ASSERT_LT":case"ASSERT_GT":case"ASSERT_LE":case"ASSERT_GE":if(CX(e,0)&&jX(e))return[{prim:e.prim.slice(7)},{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_CMPEQ":case"ASSERT_CMPNEQ":case"ASSERT_CMPLT":case"ASSERT_CMPGT":case"ASSERT_CMPLE":case"ASSERT_CMPGE":if(CX(e,0)&&jX(e))return[[{prim:"COMPARE"},{prim:e.prim.slice(10)}],{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_NONE":if(CX(e,0)&&jX(e))return[{prim:"IF_NONE",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_SOME":if(CX(e,0))return[{prim:"IF_NONE",args:[[[{prim:"UNIT"},{prim:"FAILWITH"}]],n(e.annots)]}];break;case"ASSERT_LEFT":if(CX(e,0))return[{prim:"IF_LEFT",args:[n(e.annots),[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_RIGHT":if(CX(e,0))return[{prim:"IF_LEFT",args:[[[{prim:"UNIT"},{prim:"FAILWITH"}]],n(e.annots)]}];break;case"IF_SOME":if(CX(e,2))return[DX({prim:"IF_NONE",annots:e.annots,args:[e.args[1],e.args[0]]})];break;case"IF_RIGHT":if(CX(e,2))return[DX({prim:"IF_LEFT",annots:e.annots,args:[e.args[1],e.args[0]]})];break;case"CAR":case"CDR":if(void 0===e.args)return e;if(CX(e,1)&&RX(e,e.args[0])){const t=parseInt(e.args[0].int,10);return DX({prim:"GET",args:[{int:"CAR"===e.prim?String(2*t+1):String(2*t)}],annots:e.annots})}}if(zX.test(e.prim)&&CX(e,0)){const{fields:t,rest:r}=NX(e.annots),{r:n}=IX(e,e.prim.slice(1),t,((e,t,r)=>[...e||[],...t||[],r]));return n.map((([e,t],i)=>{const o=[...LX(t,null).map((e=>null===e?"%":e)),...0===e&&i===n.length-1?r:[]],a=DX({prim:"PAIR",annots:0!==o.length?o:void 0});return 0===e?a:{prim:"DIP",args:1===e?[[a]]:[{int:String(e)},[a]]}}))}if(BX.test(e.prim)){if(OX(r,EX.PtEdo2Zk)&&CX(e,0)){const{r:t}=IX(e,e.prim.slice(3),e.annots||[],((e,t,r)=>[r,...t||[],...e||[]]));return t.map((([e,t])=>{const r=[{prim:"DUP"},DX({prim:"CAR",annots:null!==t[0]?[t[0]]:void 0}),{prim:"DIP",args:[[DX({prim:"CDR",annots:null!==t[1]?[t[1]]:void 0})]]}];return 0===e?r:{prim:"DIP",args:1===e?[[r]]:[{int:String(e)},[r]]}}))}if("UNPAIR"===e.prim)return e;if(CX(e,0)){const{r:t}=IX(e,e.prim.slice(3),[],((e,t,r)=>[r,...t||[],...e||[]]));return t.map((([e])=>{const t=DX({prim:"UNPAIR"});return 0===e?t:{prim:"DIP",args:1===e?[[t]]:[{int:String(e)},[t]]}}))}}if(UX.test(e.prim)&&CX(e,0)){const t=[...e.prim.slice(1,e.prim.length-1)];return t.map(((r,n)=>{const i=n===t.length-1?e.annots:void 0;switch(r){case"A":return DX({prim:"CAR",annots:i});case"D":return DX({prim:"CDR",annots:i});default:throw new TX(e,`unexpected character: ${r}`)}}))}if(FX.test(e.prim)&&CX(e,0)){const{fields:t,rest:r}=NX(e.annots);if(t.length>1)throw new TX(e,`unexpected annotation on macro ${e.prim}: ${t}`);const n=0!==t.length?{a:[{prim:"DUP"},{prim:"CAR",annots:t},{prim:"DROP"},{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:[t[0],"%@"]}],d:[{prim:"DUP"},{prim:"CDR",annots:t},{prim:"DROP"},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@",t[0]]}]}:{a:[{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:["%","%@"]}],d:[{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@","%"]}]};return MX(e,e.prim.slice(5,e.prim.length-1),r,n)}if($X.test(e.prim)&&CX(e,1)){const{fields:t}=NX(e.annots);if(t.length>1)throw new TX(e,`unexpected annotation on macro ${e.prim}: ${t}`);const r={a:[{prim:"DUP"},{prim:"CDR",annots:["@%%"]},{prim:"DIP",args:[[DX({prim:"CAR",annots:0!==t.length?["@"+t[0].slice(1)]:void 0}),e.args[0]]]},{prim:"SWAP"},{prim:"PAIR",annots:[0!==t.length?t[0]:"%","%@"]}],d:[{prim:"DUP"},DX({prim:"CDR",annots:0!==t.length?["@"+t[0].slice(1)]:void 0}),e.args[0],{prim:"SWAP"},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@",0!==t.length?t[0]:"%"]}]};return MX(e,e.prim.slice(5,e.prim.length-1),[],r)}if(HX.test(e.prim)&&CX(e,1)){let t=0;for(;"I"===e.prim[1+t];)t++;return DX({prim:"DIP",args:[{int:String(t)},e.args[0]]})}if(VX.test(e.prim)){let t=0;for(;"U"===e.prim[1+t];)t++;if(OX(r,EX.PtEdo2Zk)){if(1===t){if(void 0===e.args)return e;CX(e,1)&&RX(e,e.args[0])&&(t=parseInt(e.args[0].int,10))}else CX(e,0);return 1===t?[DX({prim:"DUP",annots:e.annots})]:2===t?[{prim:"DIP",args:[[DX({prim:"DUP",annots:e.annots})]]},{prim:"SWAP"}]:[{prim:"DIP",args:[{int:String(t-1)},[DX({prim:"DUP",annots:e.annots})]]},{prim:"DIG",args:[{int:String(t)}]}]}if(1===t)return e;if(CX(e,0))return DX({prim:"DUP",args:[{int:String(t)}],annots:e.annots})}return e}(e,this.opt);return t!==e&&(t[mX]=Object.assign(Object.assign({},e[mX]||{first:0,last:0}),{macro:e})),t}return e}parseListExpr(e,t){var r;const n={first:t.first,last:t.last},i="("===t.t;let o;if(i){if(o=e.next(),o.done)throw WX;n.last=o.value.last}else o={value:t};if(o.value.t!==vX.Ident)throw new qX(o.value,`not an identifier: ${o.value.v}`);const a={prim:o.value.v,[mX]:n};for(;;){const t=e.next();if(t.done){if(i)throw WX;break}if(")"===t.value.t){if(!i)throw new qX(t.value,"unexpected closing bracket");n.last=t.value.last;break}if(GX(t.value))a.annots=a.annots||[],a.annots.push(t.value.v),n.last=t.value.last;else{a.args=a.args||[];const i=this.parseExpr(e,t.value);n.last=(null===(r=i[mX])||void 0===r?void 0:r.last)||n.last,a.args.push(i)}}return this.expand(a)}parseArgs(e,t){var r;const n={first:t.first,last:t.last},i={prim:t.v,[mX]:n};for(;;){const t=e.next();if(t.done||"}"===t.value.t||";"===t.value.t)return[i,t];if(GX(t.value))n.last=t.value.last,i.annots=i.annots||[],i.annots.push(t.value.v);else{const o=this.parseExpr(e,t.value);n.last=(null===(r=o[mX])||void 0===r?void 0:r.last)||n.last,i.args=i.args||[],i.args.push(o)}}}parseSequenceExpr(e,t){var r,n;const i={first:t.first,last:t.last},o=[];o[mX]=i;const a="{"===t.t;let s="{"===t.t?null:{value:t};for(;;){if(null===s&&(s=e.next(),s.done||(i.last=s.value.last)),s.done){if(a)throw WX;return o}if("}"===s.value.t){if(a)return o;throw new qX(s.value,"unexpected closing bracket")}if(s.value.t===vX.Ident){const[t,n]=this.parseArgs(e,s.value);i.last=(null===(r=t[mX])||void 0===r?void 0:r.last)||i.last,o.push(this.expand(t)),s=n}else{const t=this.parseExpr(e,s.value);i.last=(null===(n=t[mX])||void 0===n?void 0:n.last)||i.last,o.push(t),s=null}null===s&&(s=e.next(),s.done||(i.last=s.value.last)),s.done||";"!==s.value.t||(s=null)}}parseExpr(e,t){switch(t.t){case vX.Ident:return this.expand({prim:t.v,[mX]:{first:t.first,last:t.last}});case vX.Number:return{int:t.v,[mX]:{first:t.first,last:t.last}};case vX.String:return{string:JSON.parse(t.v),[mX]:{first:t.first,last:t.last}};case vX.Bytes:return{bytes:t.v.slice(2),[mX]:{first:t.first,last:t.last}};case"{":return this.parseSequenceExpr(e,t);default:return this.parseListExpr(e,t)}}parseSequence(e){if("string"!==typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=SX(e),r=t.next();return r.done?null:this.parseSequenceExpr(t,r.value)}parseList(e){if("string"!==typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=SX(e),r=t.next();return r.done?null:this.parseListExpr(t,r.value)}parseMichelineExpression(e){if("string"!==typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=SX(e),r=t.next();return r.done?null:this.parseExpr(t,r.value)}parseScript(e){return this.parseSequence(e)}parseData(e){return this.parseList(e)}parseJSON(e){if("object"!==typeof e)throw new TypeError(`object type was expected, got ${typeof e} instead`);if(Array.isArray(e)){const t=[];for(const r of e){if(null===r||"object"!==typeof r)throw new KX(r,`unexpected sequence element: ${r}`);t.push(this.parseJSON(r))}return t}if("prim"in e){const t=e;if("string"===typeof t.prim&&(void 0===t.annots||Array.isArray(t.annots))&&(void 0===t.args||Array.isArray(t.args))){const e={prim:t.prim};if(void 0!==t.annots){for(const e of t.annots)if("string"!==typeof e)throw new KX(e,`string expected: ${e}`);e.annots=t.annots}if(void 0!==t.args){e.args=[];for(const r of t.args){if(null===r||"object"!==typeof r)throw new KX(r,`unexpected argument: ${r}`);e.args.push(this.parseJSON(r))}}return this.expand(e)}throw new KX(e,`malformed prim expression: ${e}`)}if("string"in e){if("string"===typeof e.string)return{string:e.string};throw new KX(e,`malformed string literal: ${e}`)}if("int"in e){if("string"===typeof e.int&&ZX.test(e.int))return{int:e.int};throw new KX(e,`malformed int literal: ${e}`)}if("bytes"in e){if("string"===typeof e.bytes&&YX.test(e.bytes))return{bytes:e.bytes};throw new KX(e,`malformed bytes literal: ${e}`)}throw new KX(e,`unexpected object: ${e}`)}}const JX=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],QX=[1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998];class eJ extends Ja{constructor(e){super(),this.message=e,this.name="Base58DecodingError"}}function tJ(e){const t=(e.length+9)%64,r=0===t?0:64-t;if(e.length>268435455)throw new ls("",`: Invalid length ${e.length} is too big -- SHA-256.`);const n=e.length<<3,i=[...e,128,...new Array(r).fill(0),0,0,0,0,n>>24&255,n>>16&255,n>>8&255,255&n];function o(e,t){return e>>>t|e<<32-t}const a=[...JX],s=new Array(64),c=new Array(8);for(let u=0;u>>3,r=o(s[t-2],17)^o(s[t-2],19)^s[t-2]>>>10;s[t]=(0|r)+s[t-7]+e+s[t-16]|0,t++}for(let r=0;r<8;r++)c[r]=a[r];for(let r=0;r<64;r++){const e=o(c[0],2)^o(c[0],13)^o(c[0],22),t=o(c[4],6)^o(c[4],11)^o(c[4],25),n=c[7]+t+(c[4]&c[5]^~c[4]&c[6])+QX[r]+s[r]|0,i=e+(c[0]&c[1]^c[0]&c[2]^c[1]&c[2])|0;c[7]=c[6],c[6]=c[5],c[5]=c[4],c[4]=c[3]+n|0,c[3]=c[2],c[2]=c[1],c[1]=c[0],c[0]=n+i|0}for(let r=0;r<8;r++)a[r]=a[r]+c[r]|0}const l=[];for(const u of a)l.push(u>>24&255),l.push(u>>16&255),l.push(u>>8&255),l.push(255&u);return l}const rJ=[0,1,2,3,4,5,6,7,8,-1,-1,-1,-1,-1,-1,-1,9,10,11,12,13,14,15,16,-1,17,18,19,20,21,-1,22,23,24,25,26,27,28,29,30,31,32,-1,-1,-1,-1,-1,-1,33,34,35,36,37,38,39,40,41,42,43,-1,44,45,46,47,48,49,50,51,52,53,54,55,56,57];function nJ(e,t){const r=e.charCodeAt(t)-49;if(r>=rJ.length||-1===rJ[r])throw new eJ(`Unexpected character at position ${t}: ${e[t]}`);return rJ[r]}function iJ(e){const t=function(e){const t=[];let r=0;for(;r0;)t.push(0);return t.reverse()}(e);if(t.length<4)throw new eJ(`Data is too short ${t.length}`);const r=t.slice(0,t.length-4),n=t.slice(t.length-4),i=tJ(tJ(r));if(n[0]!==i[0]||n[1]!==i[1]||n[2]!==i[2]||n[3]!==i[3])throw new eJ("Invalid checksum");return r}class oJ extends Qa{constructor(e){super(),this.message=e,this.name="InvalidMichelsonError"}}class aJ extends Qa{constructor(e){super(),this.message=e,this.name="InvalidTypeExpressionError"}}class sJ extends Qa{constructor(e){super(),this.message=e,this.name="InvalidDataExpressionError"}}class cJ extends Qa{constructor(e){super(),this.entrypoint=e,this.name="InvalidEntrypointError",this.message=`Contract has no entrypoint named: "${e}"`}}class lJ extends Ja{constructor(e){super(),this.message=e,this.name="LongIntegerError"}}class uJ extends Ja{constructor(e,t){super(),this.val=e,this.message=t,this.name="MichelsonError"}}class dJ extends uJ{constructor(e,t,r){super(e,t),this.val=e,this.message=t,this.name="MichelsonTypeError",void 0!==r&&(this.data=r)}}class hJ{append(e){let t=0;for(;0!==e||t57)throw new lJ(`unexpected character in integer constant "${e[t]}"`);this.append(r-48)}}else e<0?(this.neg=!0,this.append(-e)):this.append(e)}cmp(e){if(this.neg!==e.neg)return(e.neg?1:0)-(this.neg?1:0);{let t=0;if(this.buf.length!==e.buf.length)t=this.buf.length=0&&this.buf[r]===e.buf[r];)r--;t=r<0?0:this.buf[r]=0}catch(Dn){return!1}}const gJ=/^(@%|@%%|%@|[@:%]([_0-9a-zA-Z][_0-9a-zA-Z.%@]*)?)$/;function vJ(e,t){if(Array.isArray(e))return{};let r,n,i;if(void 0!==e.annots)for(const o of e.annots)if(0!==o.length){if(!gJ.test(o)||!(null===t||void 0===t?void 0:t.specialVar)&&("@%"===o||"@%%"===o)||!(null===t||void 0===t?void 0:t.specialFields)&&"%@"===o)throw new uJ(e,`${e.prim}: unexpected annotation: ${o}`);switch(o[0]){case"%":((null===t||void 0===t?void 0:t.emptyFields)||o.length>1)&&(r=r||[],r.push(o));break;case":":o.length>1&&(n=n||[],n.push(o));break;case"@":((null===t||void 0===t?void 0:t.emptyVar)||o.length>1)&&(i=i||[],i.push(o))}}return{f:r,t:n,v:i}}const yJ={BlockHash:[32,[1,52]],OperationHash:[32,[5,116]],OperationListHash:[32,[133,233]],OperationListListHash:[32,[29,159,109]],ProtocolHash:[32,[2,170]],ContextHash:[32,[79,199]],ED25519PublicKeyHash:[20,[6,161,159]],SECP256K1PublicKeyHash:[20,[6,161,161]],P256PublicKeyHash:[20,[6,161,164]],ContractHash:[20,[2,90,121]],CryptoboxPublicKeyHash:[16,[153,103]],ED25519Seed:[32,[13,15,58,7]],ED25519PublicKey:[32,[13,15,37,217]],SECP256K1SecretKey:[32,[17,162,224,201]],P256SecretKey:[32,[16,81,238,189]],ED25519EncryptedSeed:[56,[7,90,60,179,41]],SECP256K1EncryptedSecretKey:[56,[9,237,241,174,150]],P256EncryptedSecretKey:[56,[9,48,57,115,171]],SECP256K1PublicKey:[33,[3,254,226,86]],P256PublicKey:[33,[3,178,139,127]],SECP256K1Scalar:[33,[38,248,136]],SECP256K1Element:[33,[5,92,0]],ED25519SecretKey:[64,[43,246,78,7]],ED25519Signature:[64,[9,245,205,134,18]],SECP256K1Signature:[64,[13,115,101,19,63]],P256Signature:[64,[54,240,44,52]],GenericSignature:[64,[4,130,43]],ChainID:[4,[87,82,0]],RollupAddress:[20,[1,128,120,31]],TxRollupL2Address:[20,[6,161,166]]};function bJ(e,...t){const r=iJ(e);for(const n of t){const[e,t]=yJ[n];if(r.length===e+t.length){let e=0;for(;e0?zJ(e,1):zJ(e,0);break;default:throw new CJ(e,"instruction expected")}}return!0}function UJ(e){if(MJ(e))if(Array.isArray(e)||"pair"===e.prim||"or"===e.prim||"option"===e.prim)ZJ(e,(e=>UJ(e)));else if(!Object.prototype.hasOwnProperty.call(OJ,e.prim))throw new CJ(e,`${e.prim}: type is not comparable`);return!0}function FJ(e){if(MJ(e)&&jJ(e)){if(!Object.prototype.hasOwnProperty.call(TJ,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim||"ticket"===e.prim)throw new CJ(e,`${e.prim}: type can't be used inside PACK/UNPACK instructions`);ZJ(e,(e=>FJ(e)))}return!0}function $J(e){if(MJ(e)&&jJ(e)){if(!Object.prototype.hasOwnProperty.call(TJ,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim||"ticket"===e.prim||"contract"===e.prim)throw new CJ(e,`${e.prim}: type can't be pushed`);ZJ(e,(e=>$J(e)))}return!0}function HJ(e){if(MJ(e)&&jJ(e)){if(!Object.prototype.hasOwnProperty.call(TJ,e.prim)||"operation"===e.prim||"contract"===e.prim)throw new CJ(e,`${e.prim}: type can't be used as part of a storage`);ZJ(e,(e=>HJ(e)))}return!0}function VJ(e){if(MJ(e)&&jJ(e)){if(!Object.prototype.hasOwnProperty.call(TJ,e.prim)||"operation"===e.prim)throw new CJ(e,`${e.prim}: type can't be used as part of a parameter`);ZJ(e,(e=>VJ(e)))}return!0}function qJ(e){if(MJ(e)&&jJ(e)){if(!Object.prototype.hasOwnProperty.call(TJ,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim)throw new CJ(e,`${e.prim}: type can't be used inside a big_map`);ZJ(e,(e=>qJ(e)))}return!0}const KJ=new RegExp("^[a-zA-Z0-9_.%@]*$");function WJ(e){if(e.string.length>EJ)throw new CJ(e,`view name too long: ${e.string}`);if(!KJ.test(e.string))throw new CJ(e,`invalid character(s) in view name: ${e.string}`)}function GJ(e){if(MJ(e)&&jJ(e)){if(!Object.prototype.hasOwnProperty.call(TJ,e.prim))throw new CJ(e,"type expected");ZJ(e,(e=>GJ(e)))}return!0}function ZJ(e,t){if(Array.isArray(e)||"pair"===e.prim){const r=Array.isArray(e)?e:e.args;if(void 0===r||r.length<2)throw new CJ(e,"at least 2 arguments expected");return r.forEach((e=>{MJ(e)&&t(e)})),!0}switch(e.prim){case"option":case"list":zJ(e,1)&&MJ(e.args[0])&&t(e.args[0]);break;case"contract":zJ(e,1)&&VJ(e.args[0]);break;case"or":zJ(e,2)&&MJ(e.args[0])&&MJ(e.args[1])&&(t(e.args[0]),t(e.args[1]));break;case"lambda":zJ(e,2)&&(GJ(e.args[0]),GJ(e.args[1]));break;case"set":zJ(e,1)&&UJ(e.args[0]);break;case"map":zJ(e,2)&&MJ(e.args[0])&&MJ(e.args[1])&&(UJ(e.args[0]),t(e.args[1]));break;case"big_map":zJ(e,2)&&MJ(e.args[0])&&MJ(e.args[1])&&(UJ(e.args[0]),qJ(e.args[1]),t(e.args[1]));break;case"ticket":zJ(e,1)&&MJ(e.args[0])&&UJ(e.args[0]);break;case"sapling_state":case"sapling_transaction":zJ(e,1)&&NJ(e.args[0]);break;default:zJ(e,0)}return!0}function YJ(e){if("int"in e||"string"in e||"bytes"in e)return!0;if(Array.isArray(e)){let t=0;for(const r of e)jJ(r)&&"Elt"===r.prim?(zJ(r,2)&&(YJ(r.args[0]),YJ(r.args[1])),t++):YJ(r);if(0!==t&&t!==e.length)throw new CJ(e,"data entries and map elements can't be intermixed");return!0}if(!jJ(e))throw new CJ(e,"data entry expected");switch(e.prim){case"Unit":case"True":case"False":case"None":zJ(e,0);break;case"Pair":if(void 0===e.args||e.args.length<2)throw new CJ(e,"at least 2 arguments expected");for(const t of e.args)YJ(t);break;case"Left":case"Right":case"Some":zJ(e,1)&&YJ(e.args[0]);break;case"Lambda_rec":e.args&&BJ(e.args);break;default:if(!Object.prototype.hasOwnProperty.call(PJ,e.prim))throw new CJ(e,"data entry or instruction expected");BJ(e)}return!0}function XJ(e){if(IJ(e)){const t={},r={};for(const n of e)if(RJ(n)){if("view"!==n.prim){if(n.prim in t)throw new CJ(e,`duplicate contract section: ${n.prim}`);t[n.prim]=!0}switch(n.prim){case"code":zJ(n,1)&&IJ(n.args[0])&&BJ(n.args[0]);break;case"parameter":if(zJ(n,1)&&VJ(n.args[0]),n.annots)throw new CJ(n,"Annotation must be part of the parameter type");break;case"storage":zJ(n,1)&&HJ(n.args[0]);break;case"view":if(zJ(n,4)){if(DJ(n.args[0])){const t=n.args[0];if(t.string in r)throw new CJ(e,`duplicate view name: ${t.string}`);r[t.string]=!0,WJ(t)}$J(n.args[1]),$J(n.args[2]),IJ(n.args[3])&&BJ(n.args[3])}break;default:throw new CJ(e,`unexpected contract section: ${n.prim}`)}}}return!0}function JJ(e){return Object.prototype.hasOwnProperty.call(PJ,e.prim)}function QJ(e){if(!Array.isArray(e))return!1;for(const t of e)if("prim"in t){if(JJ(t))throw new uJ(e,`Instruction outside of a lambda: ${JSON.stringify(e)}`);if("Elt"===t.prim)throw new uJ(e,`Elt item outside of a map literal: ${JSON.stringify(e)}`)}return!0}"function"===typeof SuppressedError&&SuppressedError;const eQ=["parameter","storage","code","False","Elt","Left","None","Pair","Right","Some","True","Unit","PACK","UNPACK","BLAKE2B","SHA256","SHA512","ABS","ADD","AMOUNT","AND","BALANCE","CAR","CDR","CHECK_SIGNATURE","COMPARE","CONCAT","CONS","CREATE_ACCOUNT","CREATE_CONTRACT","IMPLICIT_ACCOUNT","DIP","DROP","DUP","EDIV","EMPTY_MAP","EMPTY_SET","EQ","EXEC","FAILWITH","GE","GET","GT","HASH_KEY","IF","IF_CONS","IF_LEFT","IF_NONE","INT","LAMBDA","LE","LEFT","LOOP","LSL","LSR","LT","MAP","MEM","MUL","NEG","NEQ","NIL","NONE","NOT","NOW","OR","PAIR","PUSH","RIGHT","SIZE","SOME","SOURCE","SENDER","SELF","STEPS_TO_QUOTA","SUB","SWAP","TRANSFER_TOKENS","SET_DELEGATE","UNIT","UPDATE","XOR","ITER","LOOP_LEFT","ADDRESS","CONTRACT","ISNAT","CAST","RENAME","bool","contract","int","key","key_hash","lambda","list","map","big_map","nat","option","or","pair","set","signature","string","bytes","mutez","timestamp","unit","operation","address","SLICE","DIG","DUG","EMPTY_BIG_MAP","APPLY","chain_id","CHAIN_ID","LEVEL","SELF_ADDRESS","never","NEVER","UNPAIR","VOTING_POWER","TOTAL_VOTING_POWER","KECCAK","SHA3","PAIRING_CHECK","bls12_381_g1","bls12_381_g2","bls12_381_fr","sapling_state","sapling_transaction_deprecated","SAPLING_EMPTY_STATE","SAPLING_VERIFY_UPDATE","ticket","TICKET_DEPRECATED","READ_TICKET","SPLIT_TICKET","JOIN_TICKETS","GET_AND_UPDATE","chest","chest_key","OPEN_CHEST","VIEW","view","constant","SUB_MUTEZ","tx_rollup_l2_address","MIN_BLOCK_TIME","sapling_transaction","EMIT","Lambda_rec","LAMBDA_REC","TICKET","BYTES","NAT"];Object.assign({},...eQ.map(((e,t)=>({[e]:t}))));var tQ;!function(e){e[e.Int=0]="Int",e[e.String=1]="String",e[e.Sequence=2]="Sequence",e[e.Prim0=3]="Prim0",e[e.Prim0Annot=4]="Prim0Annot",e[e.Prim1=5]="Prim1",e[e.Prim1Annot=6]="Prim1Annot",e[e.Prim2=7]="Prim2",e[e.Prim2Annot=8]="Prim2Annot",e[e.Prim=9]="Prim",e[e.Bytes=10]="Bytes"}(tQ||(tQ={}));const rQ=new Error("bounds out of range");class nQ{constructor(e,t=0,r=e.length){this.buffer=e,this.idx=t,this.cap=r}get length(){return this.cap-this.idx}readBytes(e){if(this.cap-this.idx>>0}readUint16(){if(this.cap-this.idx<2)throw rQ;return(this.buffer[this.idx++]<<8|this.buffer[this.idx++])>>>0}readUint32(){if(this.cap-this.idx<4)throw rQ;return(this.buffer[this.idx++]<<24|this.buffer[this.idx++]<<16|this.buffer[this.idx++]<<8|this.buffer[this.idx++])>>>0}readInt8(){if(this.cap-this.idx<1)throw rQ;return this.buffer[this.idx++]<<24>>24}readInt16(){if(this.cap-this.idx<2)throw rQ;return(this.buffer[this.idx++]<<8|this.buffer[this.idx++])<<16>>16}readInt32(){if(this.cap-this.idx<4)throw rQ;return this.buffer[this.idx++]<<24|this.buffer[this.idx++]<<16|this.buffer[this.idx++]<<8|this.buffer[this.idx++]}}var iQ,oQ,aQ;function sQ(e){let t;const r=e.readUint8();switch(r){case oQ.ED25519:t="ED25519PublicKeyHash";break;case oQ.SECP256K1:t="SECP256K1PublicKeyHash";break;case oQ.P256:t="P256PublicKeyHash";break;default:throw new Error(`unknown public key hash tag: ${r}`)}return{type:t,hash:e.readBytes(20)}}function cQ(e){let t;const r=e.readUint8();switch(r){case iQ.Implicit:t=sQ(e);break;case iQ.Originated:t={type:"ContractHash",hash:e.readBytes(20)},e.readBytes(1);break;default:throw new Error(`unknown address tag: ${r}`)}if(0!==e.length){const r=new TextDecoder;t.entryPoint=r.decode(new Uint8Array(e.readBytes(e.length)))}return t}function lQ(e){let t,r;const n=e.readUint8();switch(n){case aQ.ED25519:r="ED25519PublicKey",t=32;break;case aQ.SECP256K1:r="SECP256K1PublicKey",t=33;break;case aQ.P256:r="P256PublicKey",t=33;break;default:throw new Error(`unknown public key tag: ${n}`)}return{type:r,publicKey:e.readBytes(t)}}!function(e){e[e.Implicit=0]="Implicit",e[e.Originated=1]="Originated"}(iQ||(iQ={})),function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256"}(oQ||(oQ={})),function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256"}(aQ||(aQ={}));class uQ extends uJ{constructor(e,t,r){super(e,r),this.val=e,this.stackState=t,this.message=r,this.name="MichelsonInstructionError"}}function dQ(e){return Array.isArray(e)?"pair":e.prim}function hQ(e){return"prim"in e?e.args:e}function fQ(e,t,r=!1){if(dQ(e)!==dQ(t))throw new dJ(e,`types mismatch: ${dQ(e)} != ${dQ(t)}`,void 0);const n=[vJ(e),vJ(t)];if(n[0].t&&n[1].t&&n[0].t[0]!==n[1].t[0])throw new dJ(e,`${dQ(e)}: type names mismatch: ${n[0].t[0]} != ${n[1].t[0]}`,void 0);if(r&&n[0].f&&n[1].f&&n[0].f[0]!==n[1].f[0])throw new dJ(e,`${dQ(e)}: field names mismatch: ${n[0].f[0]} != ${n[1].f}`,void 0);if(xJ(e)){const r=wJ("pair",e),n=wJ("pair",t);return fQ(r.args[0],n.args[0],!0),void fQ(r.args[1],n.args[1],!0)}switch(e.prim){case"option":case"list":case"contract":case"set":case"ticket":fQ(e.args[0],t.args[0]);break;case"or":fQ(e.args[0],t.args[0],!0),fQ(e.args[1],t.args[1],!0);break;case"lambda":case"map":case"big_map":fQ(e.args[0],t.args[0]),fQ(e.args[1],t.args[1]);break;case"sapling_state":case"sapling_transaction":if(parseInt(e.args[0].int,10)!==parseInt(t.args[0].int,10))throw new dJ(e,`${dQ(e)}: type argument mismatch: ${e.args[0].int} != ${t.args[0].int}`,void 0)}}function pQ(e,t){if(e.length!==t.length)throw new dJ(e,`stack length mismatch: ${e.length} != ${t.length}`,void 0);for(let r=0;r1)throw new dJ(e,`${e.prim}: at most one type annotation allowed: ${e.annots}`,void 0);if(t){if(((null===(n=o.f)||void 0===n?void 0:n.length)||0)>1)throw new dJ(e,`${e.prim}: at most one field annotation allowed: ${e.annots}`,void 0)}else if(((null===(i=o.f)||void 0===i?void 0:i.length)||0)>0)throw new dJ(e,`${e.prim}: field annotations aren't allowed: ${e.annots}`,void 0)}if(xJ(e)){const t=hQ(e);for(const e of t)mQ(e,!0)}else switch(e.prim){case"option":case"list":case"contract":case"set":mQ(e.args[0]);break;case"or":for(const t of e.args)mQ(t,!0);break;case"lambda":case"map":case"big_map":mQ(e.args[0]),mQ(e.args[1])}}function gQ(e){if(!Array.isArray(e))return!1;for(const t of e)if(!(Array.isArray(t)&&gQ(t)||"prim"in t&&JJ(t)))return!1;return!0}function vQ(e,t,r){if(xJ(t)){if(_J(e)){QJ(e);const n=wJ("Pair",e),i=wJ("pair",t);return vQ(n.args[0],i.args[0],r),void vQ(n.args[1],i.args[1],r)}throw new dJ(t,`pair expected: ${JSON.stringify(e)}`,e)}switch(t.prim){case"int":if("int"in e&&pJ(e.int))return;throw new dJ(t,`integer value expected: ${JSON.stringify(e)}`,e);case"nat":case"mutez":if("int"in e&&mJ(e.int))return;throw new dJ(t,`natural value expected: ${JSON.stringify(e)}`,e);case"string":if("string"in e)return;throw new dJ(t,`string value expected: ${JSON.stringify(e)}`,e);case"bytes":case"bls12_381_g1":case"bls12_381_g2":if("bytes"in e&&null!==fJ(e.bytes))return;throw new dJ(t,`bytes value expected: ${JSON.stringify(e)}`,e);case"bool":if("prim"in e&&("True"===e.prim||"False"===e.prim))return;throw new dJ(t,`boolean value expected: ${JSON.stringify(e)}`,e);case"key_hash":if("string"in e&&null!==bJ(e.string,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash"))return;if("bytes"in e)try{return void function(e){const t=fJ(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);sQ(new nQ(new Uint8Array(t)))}(e)}catch(fde){}throw new dJ(t,`key hash expected: ${JSON.stringify(e)}`,e);case"timestamp":if(("string"in e||"int"in e)&&null!==kJ(e))return;throw new dJ(t,`timestamp expected: ${JSON.stringify(e)}`,e);case"address":if("string"in e){let t=e.string;const r=e.string.indexOf("%");if(r>=0&&(t=e.string.slice(0,r)),null!==bJ(t,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash","ContractHash","TxRollupL2Address","RollupAddress"))return}else if("bytes"in e)try{return void function(e){const t=fJ(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);cQ(new nQ(new Uint8Array(t)))}(e)}catch(fde){}throw new dJ(t,`address expected: ${JSON.stringify(e)}`,e);case"key":if("string"in e&&null!==bJ(e.string,"ED25519PublicKey","SECP256K1PublicKey","P256PublicKey"))return;if("bytes"in e)try{return void function(e){const t=fJ(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);lQ(new nQ(new Uint8Array(t)))}(e)}catch(fde){}throw new dJ(t,`public key expected: ${JSON.stringify(e)}`,e);case"unit":if("prim"in e&&"Unit"===e.prim)return;throw new dJ(t,`unit value expected: ${JSON.stringify(e)}`,e);case"signature":if("bytes"in e||"string"in e&&null!==bJ(e.string,"ED25519Signature","SECP256K1Signature","P256Signature","GenericSignature"))return;throw new dJ(t,`signature expected: ${JSON.stringify(e)}`,e);case"chain_id":if("bytes"in e||"string"in e){if(null!==("string"in e?iJ(e.string):fJ(e.bytes)))return}throw new dJ(t,`chain id expected: ${JSON.stringify(e)}`,e);case"option":if("prim"in e){if("None"===e.prim)return;if("Some"===e.prim)return void vQ(e.args[0],t.args[0],r)}throw new dJ(t,`option expected: ${JSON.stringify(e)}`,e);case"list":case"set":if(QJ(e)){for(const n of e)vQ(n,t.args[0],r);return}throw new dJ(t,`${t.prim} expected: ${JSON.stringify(e)}`,e);case"or":if("prim"in e){if("Left"===e.prim)return void vQ(e.args[0],t.args[0],r);if("Right"===e.prim)return void vQ(e.args[0],t.args[1],r)}throw new dJ(t,`union (or) expected: ${JSON.stringify(e)}`,e);case"lambda":if(gQ(e)){const n=yQ(e,[t.args[0]],r);if("failed"in n)throw new dJ(t,`function is failed with error type: ${n.failed}`,e);if(1!==n.length)throw new dJ(t,"function must return a value",e);return void fQ(t.args[1],n[0])}throw new dJ(t,`function expected: ${JSON.stringify(e)}`,e);case"map":case"big_map":if(Array.isArray(e)){for(const n of e){if(!("prim"in n)||"Elt"!==n.prim)throw new dJ(t,`map elements expected: ${JSON.stringify(e)}`,e);vQ(n.args[0],t.args[0],r),vQ(n.args[1],t.args[1],r)}return}throw new dJ(t,`${t.prim} expected: ${JSON.stringify(e)}`,e);case"bls12_381_fr":if("int"in e&&pJ(e.int)||"bytes"in e&&null!==fJ(e.bytes))return;throw new dJ(t,`BLS12-381 element expected: ${JSON.stringify(e)}`,e);case"sapling_state":if(Array.isArray(e))return;throw new dJ(t,`sapling state expected: ${JSON.stringify(e)}`,e);case"ticket":return void vQ(e,{prim:"pair",args:[{prim:"address"},t.args[0],{prim:"nat"}]},r);default:throw new dJ(t,`type ${dQ(t)} don't have Michelson literal representation`,e)}}function yQ(e,t,r){const n=(null===r||void 0===r?void 0:r.protocol)||AX;if(Array.isArray(e))return function(e,t,r){let n=t,i=t,o=0;for(const a of e){const e=yQ(a,i,r);if(n=e,"failed"in e)break;i=e,o++}if("failed"in n&&0==n.level&&(!("prim"in n.failed)||"never"!==n.failed.prim)&&o!==e.length-1)throw new uQ(e,n,"FAIL must appear in a tail position");if(void 0!==(null===r||void 0===r?void 0:r.traceCallback)){const i={op:e,in:t,out:n};r.traceCallback(i)}return"failed"in n?{failed:n.failed,level:n.level+1}:n}(e,t,r);const i=e;function o(e,...r){if(t.length{try{return e(...r)}catch(fde){throw fde instanceof uJ?new uQ(i,t,fde.message):fde}}}function s(e){return r=>{try{return e(r)}catch(fde){throw fde instanceof uJ?new uQ(i,t,fde.message):fde}}}const c=a(vJ),l=a(pQ),u=a(fQ),d=s(UJ),h=s(FJ),f=s(HJ),p=s($J),m=s(qJ);function g(e,r){const n=c(i,Object.assign(Object.assign({},r),{emptyFields:void 0!==e.f&&e.f>1,emptyVar:void 0!==e.v&&e.v>1})),o=(e,r,n)=>{if(e&&e.length>(r||0))throw new uQ(i,t,`${i.prim}: at most ${r||0} ${n} annotations allowed`)};return o(n.f,e.f,"field"),o(n.t,e.t,"type"),o(n.v,e.v,"variable"),n}function v(e,t){const r=e,n=Array.isArray(r)?{prim:"pair",args:r}:r,i=c(n),o=void 0!==t.v||void 0!==t.t||void 0!==t.f?[...(null===t.v?i.v:t.v)||[],...(null===t.t?i.t:t.t)||[],...(null===t.f?i.f:t.f)||[]]:void 0,a=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i["@"+(e.v?e.v[0].slice(1)+".":"")+t];function k(e,t){return"failed"in e||"failed"in t?"failed"in e?t:e:(l(e,t),e)}const E=(e=>{var i,a,s,E,A;switch(e.prim){case"DUP":{const r=e.args?parseInt(e.args[0].int,10):1;if(0===r)throw new uQ(e,t,"DUP 0 is forbidden");const n=o(r-1,null)[0];if("ticket"===dQ(n))throw new uQ(e,t,"ticket can't be DUPed");return[n,...t]}case"SWAP":{const e=o(0,null,null);return g({}),[e[1],e[0],...t.slice(2)]}case"SOME":return[v({prim:"option",args:[o(0,null)[0]]},g({t:1,v:1})),...t.slice(1)];case"UNIT":return[v({prim:"unit"},g({v:1,t:1})),...t];case"PAIR":{const r=e.args?parseInt(e.args[0].int,10):2;if(r<2)throw new uQ(e,t,`PAIR ${r} is forbidden`);const n=o(0,...new Array(r).fill(null)),i=g({f:r,t:1,v:1},{specialFields:!0}),a=e=>{const t=e.lastIndexOf(".");return e.slice(t>0?t+1:1)},s=n.map(((e,t)=>{var r;const n=c(e);return v(e,{v:null,t:null,f:i.f&&i.f.length>t&&"%"!==i.f[t]?"%@"===i.f[t]?n.v?["%"+a((null===(r=n.v)||void 0===r?void 0:r[0])||"")]:void 0:[i.f[t]]:void 0})}));return[v({prim:"pair",args:s},{t:i.t,v:i.v}),...t.slice(r)]}case"UNPAIR":{const r=e.args?parseInt(e.args[0].int,10):2;if(r<2)throw new uQ(e,t,`UNPAIR ${r} is forbidden`);const n=o(0,["pair"])[0],i=g({f:2,v:2},{specialVar:!0});return[...w(n,r).map(((e,t)=>b(n,e,i,t,0===t?"car":"cdr"))),...t.slice(1)]}case"CAR":case"CDR":{const r=wJ("pair",o(0,["pair"])[0]);return[b(r,r.args["CAR"===e.prim?0:1],g({f:1,v:1},{specialVar:!0}),0,e.prim.toLocaleLowerCase()),...t.slice(1)]}case"CONS":{const e=o(0,null,["list"]);return u(e[0],e[1].args[0]),[y({prim:"list",args:[e[1].args[0]]}),...t.slice(2)]}case"SIZE":return o(0,["string","list","set","map","bytes"]),[y({prim:"nat"}),...t.slice(1)];case"MEM":{const e=o(0,null,["set","map","big_map"]);return d(e[0]),u(e[0],e[1].args[0]),[y({prim:"bool"}),...t.slice(2)]}case"GET":if(e.args){const r=parseInt(e.args[0].int,10);return[y(x(o(0,["pair"])[0],r)),...t.slice(1)]}{const e=o(0,null,["map","big_map"]);return d(e[0]),u(e[0],e[1].args[0]),[y({prim:"option",args:[e[1].args[1]]}),...t.slice(2)]}case"UPDATE":if(e.args){const r=parseInt(e.args[0].int,10),n=o(0,null,["pair"]);return[y(_(n[1],n[0],r)),...t.slice(2)]}{const e=o(0,null,["bool","option"]);if(d(e[0]),"bool"===e[1].prim){const r=o(2,["set"]);return u(e[0],r[0].args[0]),[y({prim:"set",args:[v(e[0],{t:null})]}),...t.slice(3)]}const r=o(2,["map","big_map"]);return u(e[0],r[0].args[0]),"map"===r[0].prim?[y({prim:"map",args:[v(e[0],{t:null}),v(e[1].args[0],{t:null})]}),...t.slice(3)]:(m(e[1].args[0]),[y({prim:"big_map",args:[v(e[0],{t:null}),v(e[1].args[0],{t:null})]}),...t.slice(3)])}case"GET_AND_UPDATE":{const e=g({v:2}),r=o(0,null,["option"],["map","big_map"]);d(r[0]),u(r[0],r[2].args[0]),u(r[1].args[0],r[2].args[1]);const n=null===(i=e.v)||void 0===i?void 0:i.map((e=>"@"!==e?[e]:void 0));return"map"===r[2].prim?[v({prim:"option",args:[r[2].args[1]]},{v:null===n||void 0===n?void 0:n[0]}),v({prim:"map",args:[v(r[0],{t:null}),v(r[1].args[0],{t:null})]},{v:null===n||void 0===n?void 0:n[1]}),...t.slice(3)]:(m(r[1].args[0]),[v({prim:"option",args:[r[2].args[1]]},{v:null===n||void 0===n?void 0:n[0]}),v({prim:"big_map",args:[v(r[0],{t:null}),v(r[1].args[0],{t:null})]},{v:null===n||void 0===n?void 0:n[1]}),...t.slice(3)])}case"EXEC":{const e=o(0,null,["lambda"]);return u(e[0],e[1].args[0]),[y(e[1].args[1]),...t.slice(2)]}case"APPLY":{const r=o(0,null,["lambda"]);if(f(r[0]),p(r[0]),!xJ(r[1].args[0]))throw new uQ(e,t,`${e.prim}: function's argument must be a pair: ${dQ(r[1].args[0])}`);const n=r[1].args[0];return u(r[0],hQ(n)[0]),[y({prim:"lambda",args:[hQ(n)[1],r[1].args[1]]}),...t.slice(2)]}case"FAILWITH":{const e=o(0,null)[0];return OX(n,EX.PtEdo2Zk)||h(e),{failed:e,level:0}}case"NEVER":return o(0,["never"]),{failed:{prim:"never"},level:0};case"RENAME":return[y(o(0,null)[0]),...t.slice(1)];case"CONCAT":{const r=o(0,["string","list","bytes"]);if("list"===r[0].prim){if("string"!==dQ(r[0].args[0])&&"bytes"!==dQ(r[0].args[0]))throw new uQ(e,t,`${e.prim}: can't concatenate list of ${dQ(r[0].args[0])}'s`);return[y(r[0].args[0]),...t.slice(1)]}const n=o(1,["string","bytes"]);if(r[0].prim!==n[0].prim)throw new uQ(e,t,`${e.prim}: can't concatenate ${r[0].prim} with ${n[0].prim}`);return[y(n[0]),...t.slice(2)]}case"SLICE":return[y({prim:"option",args:[o(0,["nat"],["nat"],["string","bytes"])[2]]},"@slice"),...t.slice(3)];case"PACK":{const e=o(0,null)[0];return h(e),[y({prim:"bytes"},"@packed"),...t.slice(1)]}case"ADD":{const r=o(0,["nat","int","timestamp","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"],["nat","int","timestamp","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"]);if("nat"===r[0].prim&&"int"===r[1].prim||"int"===r[0].prim&&"nat"===r[1].prim)return[y({prim:"int"}),...t.slice(2)];if("int"===r[0].prim&&"timestamp"===r[1].prim||"timestamp"===r[0].prim&&"int"===r[1].prim)return[y({prim:"timestamp"}),...t.slice(2)];if(("int"===r[0].prim||"nat"===r[0].prim||"mutez"===r[0].prim||"bls12_381_g1"===r[0].prim||"bls12_381_g2"===r[0].prim||"bls12_381_fr"===r[0].prim)&&r[0].prim===r[1].prim)return[y(r[0]),...t.slice(2)];throw new uQ(e,t,`${e.prim}: can't add ${r[0].prim} to ${r[1].prim}`)}case"SUB":{const r=OX(n,EX.PsiThaCa)?o(0,["nat","int","timestamp","mutez"],["nat","int","timestamp","mutez"]):o(0,["nat","int","timestamp"],["nat","int","timestamp"]);if(("nat"===r[0].prim||"int"===r[0].prim)&&("nat"===r[1].prim||"int"===r[1].prim)||"timestamp"===r[0].prim&&"timestamp"===r[1].prim)return[y({prim:"int"}),...t.slice(2)];if("timestamp"===r[0].prim&&"int"===r[1].prim)return[y({prim:"timestamp"}),...t.slice(2)];if("mutez"===r[0].prim&&"mutez"===r[1].prim)return[y({prim:"mutez"}),...t.slice(2)];throw new uQ(e,t,`${e.prim}: can't subtract ${r[0].prim} from ${r[1].prim}`)}case"SUB_MUTEZ":return o(0,["mutez"],["mutez"]),[y({prim:"option",args:[{prim:"mutez"}]}),...t.slice(2)];case"MUL":{const r=o(0,["nat","int","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"],["nat","int","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"]);if("nat"===r[0].prim&&"int"===r[1].prim||"int"===r[0].prim&&"nat"===r[1].prim)return[y({prim:"int"}),...t.slice(2)];if("nat"===r[0].prim&&"mutez"===r[1].prim||"mutez"===r[0].prim&&"nat"===r[1].prim)return[y({prim:"mutez"}),...t.slice(2)];if(("bls12_381_g1"===r[0].prim||"bls12_381_g2"===r[0].prim||"bls12_381_fr"===r[0].prim)&&"bls12_381_fr"===r[1].prim||("nat"===r[0].prim||"int"===r[0].prim)&&r[0].prim===r[1].prim)return[y(r[0]),...t.slice(2)];if(("nat"===r[0].prim||"int"===r[0].prim)&&"bls12_381_fr"===r[1].prim||("nat"===r[1].prim||"int"===r[1].prim)&&"bls12_381_fr"===r[0].prim)return[y({prim:"bls12_381_fr"}),...t.slice(2)];throw new uQ(e,t,`${e.prim}: can't multiply ${r[0].prim} by ${r[1].prim}`)}case"EDIV":{const r=(e,t)=>({prim:"option",args:[{prim:"pair",args:[{prim:e},{prim:t}]}]}),n=o(0,["nat","int","mutez"],["nat","int","mutez"]);if("nat"===n[0].prim&&"nat"===n[1].prim)return[y(r("nat","nat")),...t.slice(2)];if(!("nat"!==n[0].prim&&"int"!==n[0].prim||"nat"!==n[1].prim&&"int"!==n[1].prim))return[y(r("int","nat")),...t.slice(2)];if("mutez"===n[0].prim&&"nat"===n[1].prim)return[y(r("mutez","mutez")),...t.slice(2)];if("mutez"===n[0].prim&&"mutez"===n[1].prim)return[y(r("nat","mutez")),...t.slice(2)];throw new uQ(e,t,`${e.prim}: can't euclideally divide ${n[0].prim} by ${n[1].prim}`)}case"ABS":return o(0,["int"]),[y({prim:"nat"}),...t.slice(1)];case"ISNAT":return o(0,["int"]),[y({prim:"option",args:[{prim:"nat"}]}),...t.slice(1)];case"INT":return o(0,["nat","bls12_381_fr","bytes"]),[y({prim:"int"}),...t.slice(1)];case"BYTES":return o(0,["nat","int"]),[y({prim:"bytes"}),...t.slice(1)];case"NAT":return o(0,["bytes"]),[y({prim:"nat"}),...t.slice(1)];case"NEG":{const e=o(0,["nat","int","bls12_381_g1","bls12_381_g2","bls12_381_fr"])[0];return"nat"===e.prim||"int"===e.prim?[y({prim:"int"}),...t.slice(1)]:[y(e),...t.slice(1)]}case"LSL":case"LSR":return o(0,["nat","bytes"],["nat","bytes"]),[y({prim:"nat"}),...t.slice(2)];case"OR":case"XOR":{const r=o(0,["nat","bytes","bool"],["nat","bytes","bool"]);if(r[0].prim!==r[1].prim)throw new uQ(e,t,`${e.prim}: both arguments must be of the same type: ${r[0].prim}, ${r[1].prim}`);return[y(r[1]),...t.slice(2)]}case"AND":{const r=o(0,["nat","bytes","bool","int"],["nat","bytes","bool"]);if(("int"!==r[0].prim||"nat"!==r[1].prim)&&r[0].prim!==r[1].prim)throw new uQ(e,t,`${e.prim}: both arguments must be of the same type: ${r[0].prim}, ${r[1].prim}`);return[y(r[1]),...t.slice(2)]}case"NOT":return"bool"===o(0,["nat","bytes","bool","int"])[0].prim?[y({prim:"bool"}),...t.slice(1)]:[y({prim:"int"}),...t.slice(1)];case"COMPARE":{const e=o(0,null,null);return d(e[0]),d(e[1]),[y({prim:"int"}),...t.slice(2)]}case"EQ":case"NEQ":case"LT":case"GT":case"LE":case"GE":return o(0,["int"]),[y({prim:"bool"}),...t.slice(1)];case"SELF":{if(void 0===(null===r||void 0===r?void 0:r.contract))throw new uQ(e,t,`${e.prim}: contract required`);const n=g({f:1,v:1}),i=xQ(r.contract,null===(a=n.f)||void 0===a?void 0:a[0]);if(null===i)throw new uQ(e,t,`${e.prim}: contract has no entrypoint ${i}`);return[v({prim:"contract",args:[i]},{v:n.v?n.v:["@self"]}),...t]}case"TRANSFER_TOKENS":{const e=o(0,null,["mutez"],["contract"]);return u(e[0],e[2].args[0]),[y({prim:"operation"}),...t.slice(3)]}case"SET_DELEGATE":{const r=o(0,["option"])[0];if("key_hash"!==dQ(r.args[0]))throw new uQ(e,t,`${e.prim}: key hash expected: ${dQ(r.args[0])}`);return[y({prim:"operation"}),...t.slice(1)]}case"IMPLICIT_ACCOUNT":return o(0,["key_hash"]),[y({prim:"contract",args:[{prim:"unit"}]}),...t.slice(1)];case"NOW":return[y({prim:"timestamp"},"@now"),...t];case"AMOUNT":return[y({prim:"mutez"},"@amount"),...t];case"BALANCE":return[y({prim:"mutez"},"@balance"),...t];case"CHECK_SIGNATURE":return o(0,["key"],["signature"],["bytes"]),[y({prim:"bool"}),...t.slice(3)];case"BLAKE2B":case"SHA256":case"SHA512":case"KECCAK":case"SHA3":return o(0,["bytes"]),[y({prim:"bytes"}),...t.slice(1)];case"HASH_KEY":return o(0,["key"]),[y({prim:"key_hash"}),...t.slice(1)];case"SOURCE":return[y({prim:"address"},"@source"),...t];case"SENDER":return[y({prim:"address"},"@sender"),...t];case"ADDRESS":{const e=o(0,["contract"])[0],r=g({v:1});return[v({prim:"address",[kX]:e},{v:r.v?r.v:S(c(e),"address")}),...t.slice(1)]}case"SELF_ADDRESS":{const e={prim:"address"};return void 0!==(null===r||void 0===r?void 0:r.contract)&&(e[kX]={prim:"contract",args:[bQ(r.contract,"parameter").args[0]]}),[y(e,"@address"),...t]}case"CHAIN_ID":return[y({prim:"chain_id"}),...t];case"DROP":{g({});const r=void 0!==e.args?parseInt(e.args[0].int,10):1;return o(r-1,null),t.slice(r)}case"DIG":{g({});const r=parseInt(e.args[0].int,10);return[o(r,null)[0],...t.slice(0,r),...t.slice(r+1)]}case"DUG":{g({});const r=parseInt(e.args[0].int,10);return[...t.slice(1,r+1),o(0,null)[0],...t.slice(r+1)]}case"NONE":return mQ(e.args[0]),[v({prim:"option",args:[e.args[0]]},g({t:1,v:1})),...t];case"LEFT":case"RIGHT":{const r=o(0,null)[0],n=g({f:2,t:1,v:1},{specialFields:!0}),i=c(r),a=[v(r,{t:null,v:null,f:n.f&&n.f.length>0&&"%"!==n.f[0]?"%@"===n.f[0]?i.v?["%"+i.v[0].slice(1)]:void 0:n.f:void 0}),v(e.args[0],{t:null,f:n.f&&n.f.length>1&&"%"!==n.f[1]?n.f:void 0})];return[v({prim:"or",args:"LEFT"===e.prim?a:[a[1],a[0]]},{t:n.t,v:n.v}),...t.slice(1)]}case"NIL":return mQ(e.args[0]),[v({prim:"list",args:[e.args[0]]},g({t:1,v:1})),...t];case"UNPACK":return o(0,["bytes"]),mQ(e.args[0]),[y({prim:"option",args:[e.args[0]]},"@unpacked"),...t.slice(1)];case"CONTRACT":{const r=o(0,["address"])[0];mQ(e.args[0]);const n=g({v:1,f:1}),i=r[kX];if(void 0!==i){const r=xQ(i,null===(s=n.f)||void 0===s?void 0:s[0]);if(null===r)throw new uQ(e,t,`${e.prim}: contract has no entrypoint ${r}`);u(r,e.args[0])}return[v({prim:"option",args:[{prim:"contract",args:[e.args[0]]}]},{v:n.v?n.v:S(c(r),"contract")}),...t.slice(1)]}case"CAST":{g({});const r=o(0,null)[0];return mQ(e.args[0]),u(e.args[0],r),[e.args[0],...t.slice(1)]}case"IF_NONE":{g({});const n=o(0,["option"])[0],i=t.slice(1);return k(yQ(e.args[0],i,r),yQ(e.args[1],[v(n.args[0],{t:null,v:S(c(n),"some")}),...i],r))}case"IF_LEFT":{g({});const n=o(0,["or"])[0],i=c(n),a=c(n.args[0]),s=c(n.args[1]),l=t.slice(1);return k(yQ(e.args[0],[v(n.args[0],{t:null,v:S(i,a.f?a.f[0].slice(1):"left")}),...l],r),yQ(e.args[1],[v(n.args[1],{t:null,v:S(i,s.f?s.f[0].slice(1):"right")}),...l],r))}case"IF_CONS":{g({});const n=o(0,["list"])[0],i=c(n),a=t.slice(1);return k(yQ(e.args[0],[v(n.args[0],{t:null,v:S(i,"hd")}),v(n,{t:null,v:S(i,"tl")}),...a],r),yQ(e.args[1],a,r))}case"IF":{g({}),o(0,["bool"]);const n=t.slice(1);return k(yQ(e.args[0],n,r),yQ(e.args[1],n,r))}case"MAP":{const n=o(0,["list","map","option"])[0],i=t.slice(1),a="map"===n.prim?{prim:"pair",args:n.args}:n.args[0],s=yQ(e.args[0],[v(a,{t:null,v:S(c(n),"elt")}),...i],r);if("failed"in s){if(!("prim"in s.failed)||"never"!==s.failed.prim)throw new uQ(e,t,`${e.prim}: FAIL is not allowed in MAP`);return{failed:s.failed,level:s.level+1}}if(s.length<1)throw new uQ(e,t,`${e.prim}: function must return a value`);return l(s.slice(1),i),"list"===n.prim?[y({prim:"list",args:[s[0]]}),...i]:"map"===n.prim?[y({prim:"map",args:[n.args[0],s[0]]}),...i]:[y({prim:"option",args:[s[0]]}),...i]}case"ITER":{g({});const n=o(0,["set","list","map"])[0],i=t.slice(1),a="map"===n.prim?{prim:"pair",args:n.args}:n.args[0],s=yQ(e.args[0],[v(a,{t:null,v:S(c(n),"elt")}),...i],r);return"failed"in s?{failed:s.failed,level:s.level+1}:(l(s,i),i)}case"LOOP":{g({}),o(0,["bool"]);const n=t.slice(1),i=yQ(e.args[0],n,r);return"failed"in i?{failed:i.failed,level:i.level+1}:(l(i,[{prim:"bool"},...n]),n)}case"LOOP_LEFT":{g({});const n=o(0,["or"])[0],i=t.slice(1),a=yQ(e.args[0],[v(n.args[0],{t:null,v:S(c(n),"left")}),...i],r);return"failed"in a?{failed:a.failed,level:a.level+1}:(l(a,[n,...i]),[v(n.args[1],{t:null,v:g({v:1}).v}),...i])}case"DIP":{g({});const n=2===e.args.length?parseInt(e.args[0].int,10):1;o(n-1,null);const i=t.slice(0,n),a=t.slice(n),s=2===e.args.length?yQ(e.args[1],a,r):yQ(e.args[0],a,r);return"failed"in s?{failed:s.failed,level:s.level+1}:[...i,...s]}case"CREATE_CONTRACT":{const r=g({v:2}),n=o(0,["option"],["mutez"],null);if("key_hash"!==dQ(n[0].args[0]))throw new uQ(e,t,`${e.prim}: key hash expected: ${dQ(n[0].args[0])}`);f(n[2])&&(SQ(e.args[0]),fQ(bQ(e.args[0],"storage").args[0],n[2]));const i=null===(E=r.v)||void 0===E?void 0:E.map((e=>"@"!==e?[e]:void 0));return[v({prim:"operation"},{v:null===i||void 0===i?void 0:i[0]}),v({prim:"address",[kX]:{prim:"contract",args:[bQ(e.args[0],"parameter").args[0]]}},{v:null===i||void 0===i?void 0:i[1]}),...t.slice(3)]}case"PUSH":return mQ(e.args[0]),vQ(e.args[1],e.args[0],Object.assign(Object.assign({},r),{contract:void 0})),[y(e.args[0]),...t];case"EMPTY_SET":return mQ(e.args[0]),d(e.args[0]),[v({prim:"set",args:e.args},g({t:1,v:1})),...t];case"EMPTY_MAP":return mQ(e.args[0]),d(e.args[0]),mQ(e.args[1]),[v({prim:"map",args:e.args},g({t:1,v:1})),...t];case"EMPTY_BIG_MAP":return mQ(e.args[0]),d(e.args[0]),mQ(e.args[1]),m(e.args[0]),[v({prim:"big_map",args:e.args},g({t:1,v:1})),...t];case"LAMBDA_REC":case"LAMBDA":{mQ(e.args[0]),mQ(e.args[1]);const n=[e.args[0]];"LAMBDA_REC"===e.prim&&n.push({prim:"lambda",args:[e.args[0],e.args[1]]});const i=yQ(e.args[2],n,Object.assign(Object.assign({},r),{contract:void 0}));if("failed"in i)return{failed:i.failed,level:i.level+1};if(1!==i.length)throw new uQ(e,t,`${e.prim}: function must return a value`);return u(e.args[1],i[0]),[y({prim:"lambda",args:[e.args[0],e.args[1]]}),...t]}case"LEVEL":return[y({prim:"nat"},"@level"),...t];case"TOTAL_VOTING_POWER":case"MIN_BLOCK_TIME":return[y({prim:"nat"}),...t];case"VOTING_POWER":return o(0,["key_hash"]),[y({prim:"nat"}),...t.slice(1)];case"TICKET":{const e=o(0,null,["nat"])[0];return d(e),OX(n,EX.PtLimaPtL)?[v({prim:"ticket",args:[e]},g({t:1,v:1})),...t.slice(2)]:[y({prim:"option",args:[v({prim:"ticket",args:[e]},g({t:1,v:1}))]}),...t.slice(2)]}case"JOIN_TICKETS":{const r=wJ("pair",o(0,["pair"])[0]);if("ticket"!==dQ(r.args[0]))throw new uQ(e,t,`${e.prim}: ticket expected: ${dQ(r.args[0])}`);return u(r.args[0],r.args[1]),[y({prim:"option",args:[v(r.args[0],{t:null})]}),...t.slice(1)]}case"SPLIT_TICKET":{const r=o(0,["ticket"],["pair"]),n=wJ("pair",r[1]);if("nat"!==dQ(n.args[0]))throw new uQ(e,t,`${e.prim}: nat expected: ${dQ(n.args[0])}`);return u(n.args[0],n.args[1]),[y({prim:"option",args:[{prim:"pair",args:[v(r[0],{t:null}),v(r[0],{t:null})]}]}),...t.slice(2)]}case"READ_TICKET":{const e=g({v:2}),r=o(0,["ticket"])[0],n=null===(A=e.v)||void 0===A?void 0:A.map((e=>"@"!==e?[e]:void 0));return[v({prim:"pair",args:[{prim:"address"},v(r.args[0],{t:null}),{prim:"nat"}]},{v:null===n||void 0===n?void 0:n[0]}),v(r,{v:null===n||void 0===n?void 0:n[1],t:null}),...t.slice(1)]}case"PAIRING_CHECK":{const r=o(0,["list"])[0].args[0];if(!xJ(r))throw new uQ(e,t,`${e.prim}: pair expected: ${dQ(r)}`);const n=wJ("pair",r);if("bls12_381_g1"!==dQ(n.args[0]))throw new uQ(e,t,`${e.prim}: bls12_381_g1 expected: ${dQ(n.args[0])}`);if("bls12_381_g2"!==dQ(n.args[1]))throw new uQ(e,t,`${e.prim}: bls12_381_g2 expected: ${dQ(n.args[1])}`);return[y({prim:"bool"}),...t.slice(1)]}case"SAPLING_EMPTY_STATE":return[v({prim:"sapling_state",args:[e.args[0]]},g({v:1,t:1})),...t];case"SAPLING_VERIFY_UPDATE":{const r=o(0,["sapling_transaction"],["sapling_state"]);if(parseInt(r[0].args[0].int,10)!==parseInt(r[1].args[0].int,10))throw new uQ(e,t,`${e.prim}: sapling memo size mismatch: ${r[0].args[0].int} != ${r[1].args[0].int}`);return OX(n,EX.PtJakarta)?[y({prim:"option",args:[{prim:"pair",args:[{prim:"int"},v(r[1],{t:null})]}]}),...t.slice(2)]:[y({prim:"option",args:[{prim:"pair",args:[{prim:"bytes"},{prim:"pair",args:[{prim:"int"},v(r[1],{t:null})]}]}]}),...t.slice(2)]}case"OPEN_CHEST":return o(0,["chest_key"],["chest"],["nat"]),[y({prim:"or",args:[{prim:"bytes"},{prim:"bool"}]}),...t.slice(3)];case"VIEW":{const r=o(0,null,["address"]);return p(r[0]),[y({prim:"option",args:[e.args[1]]}),...t.slice(2)]}case"EMIT":{const r=g({f:1,t:1});if(e.args){const n=o(0,null);return u(n[0],e.args[0]),[v({prim:"operation"},r),...t.slice(1)]}return[v({prim:"operation"},r),...t.slice(1)]}default:throw new uJ(e,`unexpected instruction: ${e.prim}`)}})(i);if(void 0!==(null===r||void 0===r?void 0:r.traceCallback)){const e={op:i,in:t,out:E};r.traceCallback(e)}return E}function bQ(e,t){for(const r of e)if(r.prim===t)return r;throw new uJ(e,`missing contract section: ${t}`)}function wQ(e){if(Array.isArray(e))for(const t of e)if("prim"in t&&("parameter"===t.prim||"storage"===t.prim||"code"===t.prim))return!0;return!1}function xQ(e,t){t=t||"%default";const r=_Q(e).find((e=>e[0]===t));return void 0!==r?r[1]:"%default"===t?wQ(e)?bQ(e,"parameter").args[0]:e:null}function _Q(e){if(wQ(e)){const t=bQ(e,"parameter"),r=_Q(t.args[0]),n=vJ(t);return n.f?[[n.f[0],t.args[0]],...r]:r}if(function(e){return Array.isArray(e)||"or"===e.prim}(e)){const t=hQ(e),r=e=>{const r=vJ(t[e]);if("or"===dQ(t[e])){const n=_Q(t[e]);return r.f?[[r.f[0],t[e]],...n]:n}return r.f?[[r.f[0],t[e]]]:[]};return[...r(0),...r(1)]}return[]}function SQ(e,t){const r=(r,n,i,o)=>{mQ(r,!0),mQ(n);const a=yQ(o,[{prim:"pair",args:[Object.assign(Object.assign({},r),{annots:["@parameter"]}),Object.assign(Object.assign({},n),{annots:["@storage"]})]}],Object.assign(Object.assign({},t),{contract:e}));if("failed"in a)return a;try{pQ(a,[i])}catch(fde){throw fde instanceof uJ?new uQ(o,a,fde.message):fde}return a},n=bQ(e,"parameter").args[0],i=bQ(e,"storage").args[0],o=r(n,i,{prim:"pair",args:[{prim:"list",args:[{prim:"operation"}]},i]},bQ(e,"code").args[0]);for(const a of Object.values(function(e){const t={};for(const r of e)"view"===r.prim&&(t[r.args[0].string]=r);return t}(e)))r(a.args[1],i,a.args[2],a.args[3]);return o}function kQ(e,t,r){mQ(t),vQ(e,t,r||null)}class EQ{constructor(e,t){this.contract=e,this.ctx=Object.assign({contract:e},t),this.output=SQ(e,this.ctx)}static parse(e,t){const r=new XX(t),n="string"===typeof e?r.parseScript(e):r.parseJSON(e);if(null===n)throw new oJ("empty Michelson");if(XJ(n))return new EQ(n,t)}static parseTypeExpression(e,t){const r=new XX(t),n="string"===typeof e?r.parseScript(e):r.parseJSON(e);if(null===n)throw new aJ("empty type expression");if(GJ(n))return mQ(n),n}static parseDataExpression(e,t){const r=new XX(t),n="string"===typeof e?r.parseScript(e):r.parseJSON(e);if(null===n)throw new sJ("empty data expression");if(YJ(n))return n;throw void 0}section(e){return bQ(this.contract,e)}entryPoints(){return _Q(this.contract)}entryPoint(e){return xQ(this.contract,e)}assertDataValid(e,t){kQ(e,t,this.ctx)}isDataValid(e,t){return function(e,t,r){try{return kQ(e,t,r),!0}catch(Dn){return!1}}(e,t,this.ctx)}assertParameterValid(e,t){const r=this.entryPoint(e||void 0);if(null===r)throw new cJ(null===e||void 0===e?void 0:e.toString());this.assertDataValid(t,r)}isParameterValid(e,t){try{return this.assertParameterValid(e,t),!0}catch(Dn){return!1}}functionType(e,t){return function(e,t,r){for(const n of t)mQ(n);if(void 0!==(null===r||void 0===r?void 0:r.contract))for(const n of["parameter","storage"])mQ(bQ(r.contract,n).args[0]);return yQ(e,t,r||null)}(e,t,this.ctx)}}new EQ([{prim:"parameter",args:[{prim:"unit"}]},{prim:"storage",args:[{prim:"unit"}]},{prim:"code",args:[[{prim:"CAR"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PAIR"}]]}]);var AQ=r(4872).Buffer;const PQ=e=>e.reduce(((e,t)=>e+t.toString(16).padStart(2,"0")),""),OQ=(e,t=8)=>e.toString(16).padStart(t,"0");var TQ;!function(e){e.SECRET="secret",e.RAW="raw",e.TZ1="tz1",e.BRANCH="branch",e.ZARITH="zarith",e.PUBLIC_KEY="public_key",e.PKH="pkh",e.DELEGATE="delegate",e.SCRIPT="script",e.BALLOT_STATEMENT="ballotStmt",e.PROPOSAL="proposal",e.PROPOSAL_ARR="proposalArr",e.INT32="int32",e.INT16="int16",e.PARAMETERS="parameters",e.ADDRESS="address",e.SMART_CONTRACT_ADDRESS="smart_contract_address",e.SMART_ROLLUP_ADDRESS="smart_rollup_address",e.SMART_ROLLUP_COMMITMENT_HASH="smart_rollup_commitment_hash",e.VALUE="value",e.PADDED_BYTES="padded_bytes",e.SMART_ROLLUP_MESSAGE="smart_rollup_message",e.MANAGER="manager",e.BLOCK_PAYLOAD_HASH="blockPayloadHash",e.ENTRYPOINT="entrypoint",e.OPERATION="operation",e.OP_ACTIVATE_ACCOUNT="activate_account",e.OP_DELEGATION="delegation",e.OP_TRANSACTION="transaction",e.OP_ORIGINATION="origination",e.OP_BALLOT="ballot",e.OP_FAILING_NOOP="failing_noop",e.OP_ENDORSEMENT="endorsement",e.OP_SEED_NONCE_REVELATION="seed_nonce_revelation",e.OP_REVEAL="reveal",e.OP_PROPOSALS="proposals",e.OP_REGISTER_GLOBAL_CONSTANT="register_global_constant",e.OP_TRANSFER_TICKET="transfer_ticket",e.OP_TX_ROLLUP_ORIGINATION="tx_rollup_origination",e.OP_TX_ROLLUP_SUBMIT_BATCH="tx_rollup_submit_batch",e.BURN_LIMIT="burn_limit",e.TX_ROLLUP_ORIGINATION_PARAM="tx_rollup_origination_param",e.TX_ROLLUP_ID="tx_rollup_id",e.TX_ROLLUP_BATCH_CONTENT="tx_rollup_batch_content",e.OP_INCREASE_PAID_STORAGE="increase_paid_storage",e.OP_UPDATE_CONSENSUS_KEY="update_consensus_key",e.OP_DRAIN_DELEGATE="drain_delegate",e.DEPOSITS_LIMIT="deposits_limit",e.OP_SET_DEPOSITS_LIMIT="set_deposits_limit",e.OP_SMART_ROLLUP_ORIGINATE="smart_rollup_originate",e.PVM_KIND="pvm_kind",e.OP_SMART_ROLLUP_ADD_MESSAGES="smart_rollup_add_messages",e.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE="smart_rollup_execute_outbox_message"}(TQ||(TQ={}));const CQ={"00":"parameter","01":"storage","02":"code","03":"False","04":"Elt","05":"Left","06":"None","07":"Pair","08":"Right","09":"Some","0a":"True","0b":"Unit","0c":"PACK","0d":"UNPACK","0e":"BLAKE2B","0f":"SHA256",10:"SHA512",11:"ABS",12:"ADD",13:"AMOUNT",14:"AND",15:"BALANCE",16:"CAR",17:"CDR",18:"CHECK_SIGNATURE",19:"COMPARE","1a":"CONCAT","1b":"CONS","1c":"CREATE_ACCOUNT","1d":"CREATE_CONTRACT","1e":"IMPLICIT_ACCOUNT","1f":"DIP",20:"DROP",21:"DUP",22:"EDIV",23:"EMPTY_MAP",24:"EMPTY_SET",25:"EQ",26:"EXEC",27:"FAILWITH",28:"GE",29:"GET","2a":"GT","2b":"HASH_KEY","2c":"IF","2d":"IF_CONS","2e":"IF_LEFT","2f":"IF_NONE",30:"INT",31:"LAMBDA",32:"LE",33:"LEFT",34:"LOOP",35:"LSL",36:"LSR",37:"LT",38:"MAP",39:"MEM","3a":"MUL","3b":"NEG","3c":"NEQ","3d":"NIL","3e":"NONE","3f":"NOT",40:"NOW",41:"OR",42:"PAIR",43:"PUSH",44:"RIGHT",45:"SIZE",46:"SOME",47:"SOURCE",48:"SENDER",49:"SELF","4a":"STEPS_TO_QUOTA","4b":"SUB","4c":"SWAP","4d":"TRANSFER_TOKENS","4e":"SET_DELEGATE","4f":"UNIT",50:"UPDATE",51:"XOR",52:"ITER",53:"LOOP_LEFT",54:"ADDRESS",55:"CONTRACT",56:"ISNAT",57:"CAST",58:"RENAME",59:"bool","5a":"contract","5b":"int","5c":"key","5d":"key_hash","5e":"lambda","5f":"list",60:"map",61:"big_map",62:"nat",63:"option",64:"or",65:"pair",66:"set",67:"signature",68:"string",69:"bytes","6a":"mutez","6b":"timestamp","6c":"unit","6d":"operation","6e":"address","6f":"SLICE",70:"DIG",71:"DUG",72:"EMPTY_BIG_MAP",73:"APPLY",74:"chain_id",75:"CHAIN_ID",76:"LEVEL",77:"SELF_ADDRESS",78:"never",79:"NEVER","7a":"UNPAIR","7b":"VOTING_POWER","7c":"TOTAL_VOTING_POWER","7d":"KECCAK","7e":"SHA3","7f":"PAIRING_CHECK",80:"bls12_381_g1",81:"bls12_381_g2",82:"bls12_381_fr",83:"sapling_state",84:"sapling_transaction_deprecated",85:"SAPLING_EMPTY_STATE",86:"SAPLING_VERIFY_UPDATE",87:"ticket",88:"TICKET_DEPRECATED",89:"READ_TICKET","8a":"SPLIT_TICKET","8b":"JOIN_TICKETS","8c":"GET_AND_UPDATE","8d":"chest","8e":"chest_key","8f":"OPEN_CHEST",90:"VIEW",91:"view",92:"constant",93:"SUB_MUTEZ",94:"tx_rollup_l2_address",95:"MIN_BLOCK_TIME",96:"sapling_transaction",97:"EMIT",98:"Lambda_rec",99:"LAMBDA_REC","9a":"TICKET","9b":"BYTES","9c":"NAT"},jQ=(()=>{const e={};return Object.keys(CQ).forEach((t=>{e[CQ[t]]=t})),e})(),RQ={4:"activate_account",107:"reveal",110:"delegation",108:"transaction",109:"origination",6:"ballot",21:"endorsement",1:"seed_nonce_revelation",5:"proposals",111:"register_global_constant",150:"tx_rollup_origination",151:"tx_rollup_submit_batch",158:"transfer_ticket",112:"set_deposits_limit",113:"increase_paid_storage",114:"update_consensus_key",9:"drain_delegate",200:"smart_rollup_originate",201:"smart_rollup_add_messages",206:"smart_rollup_execute_outbox_message",17:"failing_noop"},IQ=(()=>{const e={};return Object.keys(RQ).forEach((t=>{const r="string"===typeof t?parseInt(t,10):t;e[RQ[r]]=OQ(r,2)})),e})(),MQ={"00":"default","01":"root","02":"do","03":"set_delegate","04":"remove_delegate","05":"deposit"},LQ=(()=>{const e={};return Object.keys(MQ).forEach((t=>{e[MQ[t]]=t})),e})();class NQ extends Qa{constructor(e,t){super(),this.operation=e,this.errorDetail=t,this.name="InvalidOperationSchemaError",this.message="Invalid operation content recevied",t&&(this.message+=` ${t}.`)}}class DQ extends Qa{constructor(e){super(),this.entrypoint=e,this.name="OversizedEntryPointError",this.message=`Invalid entrypoint length "${e.length}", maximum length is "31".`}}class zQ extends Qa{constructor(e){super(),this.ballotValue=e,this.name="InvalidBallotValueError",this.message=`Invalid ballot value "${e}" expecting one of the following: "yay", "nay", "pass".`}}class BQ extends Qa{constructor(e){super(),this.ballotValue=e,this.name="DecodeBallotValueError",this.message=`Invalid ballot value "${e}", cannot be decoded.`}}class UQ extends Qa{constructor(e){super(),this.value=e,this.name="UnexpectedMichelsonValueError",this.message=`Invalid Michelson value "${e}", unalbe to encode.`}}class FQ extends Qa{constructor(e){super(),this.message=e,this.name="OperationDecodingError"}}class $Q extends Qa{constructor(e){super(),this.message=e,this.name="OperationEncodingError"}}class HQ extends Qa{constructor(e){super(),this.op=e,this.name="UnsupportedOperationError",this.message=`Unsupported operation "${e}", can submit an issue on our github for feature request.`}}class VQ extends Qa{constructor(e){super(),this.pvm=e,this.name="UnsupportedPvmKindError",this.message=`Invalid Pvm kind "${e}" expecting either "arith" or "wasm_2_0_0".`}}class qQ extends Qa{constructor(e){super(),this.pvm=e,this.name="DecodePvmKindError",this.message=`Invalid Pvm kind "${e}", cannot be decoded.`}}class KQ extends Qa{constructor(e,t){super(),this.address=e,this.errorDetail=t,this.name="InvalidSmartRollupAddress",this.message=`Invalid smart rollup address "${e}"`,t&&(this.message+=` ${t}.`)}}class WQ extends Qa{constructor(e,t){super(),this.hash=e,this.errorDetail=t,this.name="InvalidSmartRollupCommitmentHashError",this.message=`Invalid smart rollup commitment hash "${e}"`,t&&(this.message+=` ${t}.`)}}class GQ{static fromHexString(e){const t=e.toLowerCase();if(/^(([a-f]|\d){2})*$/.test(t)){const e=new Uint8Array((t.match(/([a-z]|\d){2}/g)||[]).map((e=>parseInt(e,16))));return new GQ(e)}throw new cs(t)}constructor(e,t=0){this.arr=e,this.offset=t}consume(e){const t=this.arr.subarray(this.offset,this.offset+e);return this.offset+=e,t}get(e){return this.arr[this.offset+e]}length(){return this.arr.length-this.offset}slice(e,t){return new GQ(this.arr.slice(e,t))}}const ZQ=e=>{if(Array.isArray(e)){const t=e.map((e=>ZQ(e))).join(""),r=t.length/2;return`02${OQ(r)}${t}`}if((e=>"prim"in e)(e))return i0(e);if((e=>"bytes"in e&&"string"===typeof e.bytes)(e))return JQ(e);if((e=>"string"in e&&"string"===typeof e.string)(e))return e0(e);if((e=>"int"in e&&"string"===typeof e.int)(e))return r0(e);throw new UQ(JSON.stringify(e))},YQ=e=>{const t=e.consume(1);switch(t[0]){case 10:return QQ(e);case 1:return t0(e);case 0:return n0(e);case 2:{const t=new GQ(XQ(e)),r=[];for(;t.length()>0;)r.push(YQ(t));return r}default:return o0(e,t)}},XQ=(e,t=4)=>{const r=e.consume(t),n=parseInt(AQ.from(r).toString("hex"),16);return e.consume(n)},JQ=e=>{if(!/^([A-Fa-f0-9]{2})*$/.test(e.bytes))throw new cs(e.bytes);const t=e.bytes.length/2;return`0a${OQ(t)}${e.bytes}`},QQ=e=>{const t=XQ(e);return{bytes:AQ.from(t).toString("hex")}},e0=e=>{const t=AQ.from(e.string,"utf8").toString("hex"),r=t.length/2;return`01${OQ(r)}${t}`},t0=e=>{const t=XQ(e);return{string:AQ.from(t).toString("utf8")}},r0=({int:e})=>{const t=new Bs(e,10),r="-"===t.toString(2)[0]?"1":"0",n=t.toString(2).replace(/-/g,""),i=n.length<=6?6:(n.length-6)%7?n.length+7-(n.length-6)%7:n.length,o=n.padStart(i,"0").match(/\d{6,7}/g).reverse();o[0]=r+o[0];const a=o.map(((e,t)=>parseInt((t===o.length-1?"0":"1")+e,2).toString(16).padStart(2,"0")));return`00${a.join("")}`},n0=e=>{let t=e.consume(1)[0];const r=[];for(;128&t;)r.push(t),t=e.consume(1)[0];r.push(t);const n=!!(64&r[0]);r[0]=127&r[0];const i=r.map(((e,t)=>e.toString(2).slice(0===t?-6:-7).padStart(0===t?6:7,"0"))).reverse();let o=new Bs(i.join(""),2);return n&&(o=o.times(-1)),{int:o.toFixed()}},i0=e=>{const t=+Array.isArray(e.annots),r=Array.isArray(e.args)?e.args.length:0,n=OQ(Math.min(2*r+t+3,9),2),i=jQ[e.prim];let o=(e.args||[]).map((e=>ZQ(e))).join("");const a=Array.isArray(e.annots)?c0(e.annots):"";return"LAMBDA"!==e.prim&&"LAMBDA_REC"!==e.prim||!r||(o=OQ(o.length/2)+o+OQ(0)),("pair"===e.prim||"Pair"===e.prim)&&r>2&&(o=""===a?OQ(o.length/2)+o+OQ(0):OQ(o.length/2)+o),"view"===e.prim&&e.args&&(o=OQ(o.length/2)+o+OQ(0)),`${n}${i}${o}${a}`},o0=(e,t)=>{const r=(t[0]-3)%2===1;let n=Math.floor((t[0]-3)/2);const i=e.consume(1)[0].toString(16).padStart(2,"0"),o={prim:CQ[i]};if("LAMBDA"!==CQ[i]&&"LAMBDA_REC"!==CQ[i]||e.consume(4),"view"===CQ[i])return 0!=n?a0(e,o):o;let a,s;("pair"===CQ[i]||"Pair"===CQ[i])&&n>2&&(a=s0(e),n=0,s=l0(e));const c=new Array(n).fill(0).map((()=>YQ(e)));return"LAMBDA"!==CQ[i]&&"LAMBDA_REC"!==CQ[i]||e.consume(4),a?o.args=a:c.length&&(o.args=c),s&&""!==s[0]?o.annots=s:r&&(o.annots=l0(e)),o},a0=(e,t)=>(e.consume(4),t.args=new Array(4).fill(0).map((()=>YQ(e))),e.consume(4),t),s0=e=>{const t=new GQ(XQ(e)),r=[];for(;t.length()>0;)r.push(YQ(t));return r},c0=e=>{const t=e.map((e=>AQ.from(e,"utf8").toString("hex"))).join("20"),r=t.length/2;return`${OQ(r)}${t}`},l0=e=>{const t=e.consume(4),r=parseInt(AQ.from(t).toString("hex"),16),n=e.consume(r);return AQ.from(n).toString("hex").split("20").map((e=>AQ.from(e,"hex").toString("utf8")))},u0=e=>t=>kc(AQ.from(yc(t,Ks[e]))),d0=e=>t=>vc(t.consume(Ws[e]),Ks[e]),h0=d0(Fs.TZ1),f0=d0(Fs.B),p0=e=>{const t=e.consume(1);return 0===t[0]?d0(Fs.TZ1)(e):1===t[0]?d0(Fs.TZ2)(e):2===t[0]?d0(Fs.TZ3)(e):void 0},m0=u0(Fs.B),g0=u0(Fs.TZ1),v0=e=>e?"ff":"00",y0=e=>u0(Fs.P)(e),b0=e=>d0(Fs.P)(e),w0=e=>{switch(e.substring(0,3)){case Fs.TZ1:return"00"+u0(Fs.TZ1)(e);case Fs.TZ2:return"01"+u0(Fs.TZ2)(e);case Fs.TZ3:return"02"+u0(Fs.TZ3)(e);case Fs.TZ4:return"03"+u0(Fs.TZ4)(e);default:throw new ms(e,hc(Zs.NO_PREFIX_MATCHED)+` expecting one for the following "${Fs.TZ1}", "${Fs.TZ2}", "${Fs.TZ3}" or "${Fs.TZ4}".`)}},x0=e=>{const t=[];let r=new Us(e,10);if(r.isNaN())throw new TypeError(`Invalid zarith number ${e}`);for(;;){if(r.lt(128)){r.lt(16)&&t.push("0"),t.push(r.toString(16));break}{let e=r.mod(128);r=r.minus(e),r=r.dividedBy(128),e=e.plus(128),t.push(e.toString(16))}}return t.join("")},_0=e=>{let t=0;for(;t=0;n-=1){const t=127&e.get(n);r=r.multipliedBy(128),r=r.plus(t)}return e.consume(t+1),new Us(r).toString()},S0=u0(Fs.VH),k0=d0(Fs.VH),E0=u0(Fs.TXR1),A0=d0(Fs.TXR1),P0={branch:TQ.BRANCH,contents:[TQ.OPERATION]},O0={pkh:TQ.TZ1,secret:TQ.SECRET},T0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,public_key:TQ.PUBLIC_KEY},C0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,delegate:TQ.DELEGATE},j0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,amount:TQ.ZARITH,destination:TQ.ADDRESS,parameters:TQ.PARAMETERS},R0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,balance:TQ.ZARITH,delegate:TQ.DELEGATE,script:TQ.SCRIPT},I0={source:TQ.PKH,period:TQ.INT32,proposal:TQ.PROPOSAL,ballot:TQ.BALLOT_STATEMENT},M0={slot:TQ.INT16,level:TQ.INT32,round:TQ.INT32,block_payload_hash:TQ.BLOCK_PAYLOAD_HASH},L0={level:TQ.INT32,nonce:TQ.RAW},N0={source:TQ.PKH,period:TQ.INT32,proposals:TQ.PROPOSAL_ARR},D0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,value:TQ.VALUE},z0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,ticket_contents:TQ.VALUE,ticket_ty:TQ.VALUE,ticket_ticketer:TQ.ADDRESS,ticket_amount:TQ.ZARITH,destination:TQ.ADDRESS,entrypoint:TQ.ENTRYPOINT},B0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,tx_rollup_origination:TQ.TX_ROLLUP_ORIGINATION_PARAM},U0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,rollup:TQ.TX_ROLLUP_ID,content:TQ.TX_ROLLUP_BATCH_CONTENT,burn_limit:TQ.BURN_LIMIT},F0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,amount:TQ.ZARITH,destination:TQ.SMART_CONTRACT_ADDRESS},$0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,pk:TQ.PUBLIC_KEY},H0={consensus_key:TQ.PKH,delegate:TQ.PKH,destination:TQ.PKH},V0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,limit:TQ.DEPOSITS_LIMIT},q0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,pvm_kind:TQ.PVM_KIND,kernel:TQ.PADDED_BYTES,origination_proof:TQ.PADDED_BYTES,parameters_ty:TQ.VALUE},K0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,message:TQ.SMART_ROLLUP_MESSAGE},W0={source:TQ.PKH,fee:TQ.ZARITH,counter:TQ.ZARITH,gas_limit:TQ.ZARITH,storage_limit:TQ.ZARITH,rollup:TQ.SMART_ROLLUP_ADDRESS,cemented_commitment:TQ.SMART_ROLLUP_COMMITMENT_HASH,output_proof:TQ.PADDED_BYTES},G0={arbitrary:TQ.PADDED_BYTES},Z0=e=>t=>r=>Object.keys(t).reduce(((n,i)=>{const o=t[i];if(r&&Array.isArray(o)){const t=e[o[0]],a=r[i];if(!Array.isArray(a))throw new $Q(`Invalid operation value "${JSON.stringify(a)}" of key "${i}, expected value to be Array.`);return n+a.reduce(((e,r)=>e+t(r)),"")}return n+(0,e[o])(r[i])}),""),Y0=e=>t=>r=>Object.keys(t).reduce(((n,i)=>{const o=t[i];if(Array.isArray(o)){const t=e[o[0]],a=[],s=r.length();for(;r.length()>0;)if(a.push(t(r)),s===r.length())throw new FQ("Unable to decode value");return Object.assign(Object.assign({},n),{[i]:a})}{const t=(0,e[o])(r);return"undefined"!==typeof t?Object.assign(Object.assign({},n),{[i]:t}):Object.assign({},n)}}),{}),X0={[TQ.SECRET]:e=>PQ(e.consume(20)),[TQ.RAW]:e=>PQ(e.consume(32)),[TQ.TZ1]:h0,[TQ.BRANCH]:f0,[TQ.ZARITH]:_0,[TQ.PUBLIC_KEY]:e=>{switch(e.consume(1)[0]){case 0:return d0(Fs.EDPK)(e);case 1:return d0(Fs.SPPK)(e);case 2:return d0(Fs.P2PK)(e);default:throw new hs(e.toString(),hc(Zs.NO_PREFIX_MATCHED))}},[TQ.PKH]:p0,[TQ.DELEGATE]:e=>{const t=(e=>255===e.consume(1)[0])(e);if(t)return p0(e)},[TQ.INT32]:e=>{const t=e.consume(4);let r=0;for(let n=0;n{const t=XQ(e),r=XQ(e);return{code:YQ(new GQ(t)),storage:YQ(new GQ(r))}},[TQ.BALLOT_STATEMENT]:e=>{const t=e.consume(1);switch(t[0]){case 0:return"yay";case 1:return"nay";case 2:return"pass";default:throw new BQ(t[0].toString())}},[TQ.PROPOSAL]:b0,[TQ.PROPOSAL_ARR]:e=>{const t=[];for(e.consume(4);e.length()>0;)t.push(b0(e));return t},[TQ.PARAMETERS]:e=>{if(0!==e.consume(1)[0]){const t=(e=>{const t=OQ(e.consume(1)[0],2);if(t in MQ)return MQ[t];{const t=XQ(e,1),r=AQ.from(t).toString("utf8");if(r.length>31)throw new DQ(r);return r}})(e),r=XQ(e);return{entrypoint:t,value:YQ(new GQ(r))}}},[TQ.ADDRESS]:e=>{switch(e.consume(1)[0]){case 0:return p0(e);case 1:{const t=d0(Fs.KT1)(e);return e.consume(1),t}default:throw new is(e.toString(),": Unable to decode.")}},[TQ.SMART_ROLLUP_ADDRESS]:e=>{const t=d0(Fs.SR1)(e);if(t.substring(0,3)!==Fs.SR1)throw new KQ(t,hc(Zs.NO_PREFIX_MATCHED)+` expecting prefix '${Fs.SR1}'.`);return t},[TQ.SMART_CONTRACT_ADDRESS]:e=>{if(1===e.consume(1)[0]){const t=d0(Fs.KT1)(e);return e.consume(1),t}throw new fs(e.toString(),hc(Zs.NO_PREFIX_MATCHED))},[TQ.SMART_ROLLUP_COMMITMENT_HASH]:e=>{const t=d0(Fs.SRC1)(e);if(t.substring(0,4)!==Fs.SRC1)throw new WQ(t,hc(Zs.NO_PREFIX_MATCHED)+` expecting prefix '${Fs.SRC1}'`);return t},[TQ.VALUE]:e=>{const t=XQ(e);return YQ(new GQ(t))},[TQ.INT16]:e=>{const t=e.consume(2);let r=0;for(let n=0;n{const t=XQ(e);return AQ.from(t).toString("utf8")},[TQ.TX_ROLLUP_ORIGINATION_PARAM]:e=>({}),[TQ.TX_ROLLUP_ID]:A0,[TQ.TX_ROLLUP_BATCH_CONTENT]:e=>{const t=XQ(e);return AQ.from(t).toString("hex")},[TQ.BURN_LIMIT]:e=>{const t=e.consume(1);if("00"!==AQ.from(t).toString("hex"))return _0(e)},[TQ.DEPOSITS_LIMIT]:e=>{const t=e.consume(1);if("00"!==AQ.from(t).toString("hex"))return _0(e)},[TQ.PVM_KIND]:e=>{const t=e.consume(1);switch(t[0]){case 0:return"arith";case 1:return"wasm_2_0_0";default:throw new qQ(t[0].toString())}},[TQ.PADDED_BYTES]:e=>{const t=XQ(e);return AQ.from(t).toString("hex")},[TQ.SMART_ROLLUP_MESSAGE]:e=>{const t=XQ(e),r=((e,t=4)=>{const r=[];let n=e;for(;n.length();){const e=n.consume(t),i=parseInt(AQ.from(e).toString("hex"),16);r.push(n.consume(i)),n=n.slice(i+t)}return r})(new GQ(t));return r.map((e=>AQ.from(e).toString("hex")))}};X0[TQ.OPERATION]=(e=>t=>{const r=t.consume(1),n=RQ[r[0]];if(void 0===n)throw new HQ(r[0].toString());const i=e[n](t);if("object"!==typeof i)throw new FQ("Invalid operation, cannot be decoded.");return Object.assign({kind:n},i)})(X0),X0[TQ.OP_ACTIVATE_ACCOUNT]=e=>Y0(X0)(O0)(e),X0[TQ.OP_FAILING_NOOP]=e=>Y0(X0)(G0)(e),X0[TQ.OP_DELEGATION]=e=>Y0(X0)(C0)(e),X0[TQ.OP_TRANSACTION]=e=>Y0(X0)(j0)(e),X0[TQ.OP_ORIGINATION]=e=>Y0(X0)(R0)(e),X0[TQ.OP_BALLOT]=e=>Y0(X0)(I0)(e),X0[TQ.OP_ENDORSEMENT]=e=>Y0(X0)(M0)(e),X0[TQ.OP_SEED_NONCE_REVELATION]=e=>Y0(X0)(L0)(e),X0[TQ.OP_PROPOSALS]=e=>Y0(X0)(N0)(e),X0[TQ.OP_REVEAL]=e=>Y0(X0)(T0)(e),X0[TQ.OP_REGISTER_GLOBAL_CONSTANT]=e=>Y0(X0)(D0)(e),X0[TQ.OP_TRANSFER_TICKET]=e=>Y0(X0)(z0)(e),X0[TQ.OP_TX_ROLLUP_ORIGINATION]=e=>Y0(X0)(B0)(e),X0[TQ.OP_TX_ROLLUP_SUBMIT_BATCH]=e=>Y0(X0)(U0)(e),X0[TQ.OP_INCREASE_PAID_STORAGE]=e=>Y0(X0)(F0)(e),X0[TQ.OP_UPDATE_CONSENSUS_KEY]=e=>Y0(X0)($0)(e),X0[TQ.OP_DRAIN_DELEGATE]=e=>Y0(X0)(H0)(e),X0[TQ.OP_SMART_ROLLUP_ORIGINATE]=e=>Y0(X0)(q0)(e),X0[TQ.OP_SMART_ROLLUP_ADD_MESSAGES]=e=>Y0(X0)(K0)(e),X0[TQ.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE]=e=>Y0(X0)(W0)(e),X0[TQ.MANAGER]=Y0(X0)(P0),X0[TQ.OP_SET_DEPOSITS_LIMIT]=e=>Y0(X0)(V0)(e);const J0={[TQ.SECRET]:e=>e,[TQ.RAW]:e=>e,[TQ.TZ1]:g0,[TQ.BRANCH]:m0,[TQ.ZARITH]:x0,[TQ.PUBLIC_KEY]:e=>{switch(e.substring(0,4)){case Fs.EDPK:return"00"+u0(Fs.EDPK)(e);case Fs.SPPK:return"01"+u0(Fs.SPPK)(e);case Fs.P2PK:return"02"+u0(Fs.P2PK)(e);default:throw new hs(e,hc(Zs.NO_PREFIX_MATCHED)+` expecting one of the following '${Fs.EDPK}', '${Fs.SPPK}', '${Fs.P2PK}' or '${Fs.BLPK}'.`)}},[TQ.PKH]:w0,[TQ.DELEGATE]:e=>e?v0(!0)+w0(e):v0(!1),[TQ.SCRIPT]:e=>{const t=ZQ(e.code),r=ZQ(e.storage);return`${OQ(t.length/2,8)}${t}${OQ(r.length/2,8)}${r}`},[TQ.BALLOT_STATEMENT]:e=>{switch(e){case"yay":return"00";case"nay":return"01";case"pass":return"02";default:throw new zQ(e)}},[TQ.PROPOSAL]:y0,[TQ.PROPOSAL_ARR]:e=>OQ(32*e.length)+e.map((e=>y0(e))).join(""),[TQ.INT32]:e=>{const t=parseInt(String(e),10),r=[];for(let n=0;n<4;n++){const e=8*(4-(n+1));r.push((t&255<>e)}return AQ.from(r).toString("hex")},[TQ.PARAMETERS]:e=>{if(!e||"default"===e.entrypoint&&"prim"in e.value&&"Unit"===e.value.prim)return"00";const t=(e=>{if(e in LQ)return`${LQ[e]}`;if(e.length>31)throw new DQ(e);return`ff${ZQ({string:e}).slice(8)}`})(e.entrypoint),r=ZQ(e.value);return`ff${t}${(r.length/2).toString(16).padStart(8,"0")}${r}`},[TQ.ADDRESS]:e=>{switch(e.substring(0,3)){case Fs.TZ1:case Fs.TZ2:case Fs.TZ3:case Fs.TZ4:return"00"+w0(e);case Fs.KT1:return"01"+u0(Fs.KT1)(e)+"00";default:throw new is(e,hc(Zs.NO_PREFIX_MATCHED)+` expecting one of the following prefix '${Fs.TZ1}', ${Fs.TZ2}', '${Fs.TZ3}', '${Fs.TZ4}' or '${Fs.KT1}'.`)}},[TQ.SMART_ROLLUP_ADDRESS]:e=>{if(e.substring(0,3)!==Fs.SR1)throw new KQ(e,hc(Zs.NO_PREFIX_MATCHED)+` expecting prefix '${Fs.SR1}'.`);return u0(Fs.SR1)(e)},[TQ.SMART_CONTRACT_ADDRESS]:e=>{if(e.substring(0,3)===Fs.KT1)return"01"+u0(Fs.KT1)(e)+"00";throw new fs(e,hc(Zs.NO_PREFIX_MATCHED)+` expecting prefix '${Fs.KT1}'.`)},[TQ.SMART_ROLLUP_COMMITMENT_HASH]:e=>{if(e.substring(0,4)===Fs.SRC1)return u0(Fs.SRC1)(e);throw new WQ(e,hc(Zs.NO_PREFIX_MATCHED)+` expecting prefix '${Fs.SRC1}'`)},[TQ.VALUE]:e=>{const t=ZQ(e);return`${OQ(t.length/2)}${t}`},[TQ.INT16]:e=>{const t=parseInt(String(e),10),r=[];for(let n=0;n<2;n++){const e=8*(2-(n+1));r.push((t&255<>e)}return AQ.from(r).toString("hex")},[TQ.BLOCK_PAYLOAD_HASH]:S0,[TQ.ENTRYPOINT]:e=>`${ZQ({string:e}).slice(2)}`,[TQ.TX_ROLLUP_ORIGINATION_PARAM]:e=>"",[TQ.TX_ROLLUP_ID]:E0,[TQ.TX_ROLLUP_BATCH_CONTENT]:e=>`${OQ(e.length/2)}${e}`,[TQ.BURN_LIMIT]:e=>e?`ff${x0(e)}`:"00",[TQ.DEPOSITS_LIMIT]:e=>e?`ff${x0(e)}`:"00",[TQ.PVM_KIND]:e=>{switch(e){case"arith":return"00";case"wasm_2_0_0":return"01";default:throw new VQ(e)}},[TQ.PADDED_BYTES]:(e,t=8)=>`${OQ(e.length/2,t)}${e}`,[TQ.SMART_ROLLUP_MESSAGE]:e=>{const t=e.reduce(((e,t)=>e+`${OQ(t.length/2)}${t}`),"");return`${OQ(t.length/2)}${t}`}};J0[TQ.OPERATION]=(e=>t=>{if(!(t.kind in e)||!(t.kind in IQ))throw new vs(t.kind);return IQ[t.kind]+e[t.kind](t)})(J0),J0[TQ.OP_ACTIVATE_ACCOUNT]=e=>Z0(J0)(O0)(e),J0[TQ.OP_DELEGATION]=e=>Z0(J0)(C0)(e),J0[TQ.OP_TRANSACTION]=e=>Z0(J0)(j0)(e),J0[TQ.OP_ORIGINATION]=e=>Z0(J0)(R0)(e),J0[TQ.OP_BALLOT]=e=>Z0(J0)(I0)(e),J0[TQ.OP_ENDORSEMENT]=e=>Z0(J0)(M0)(e),J0[TQ.OP_SEED_NONCE_REVELATION]=e=>Z0(J0)(L0)(e),J0[TQ.OP_PROPOSALS]=e=>Z0(J0)(N0)(e),J0[TQ.OP_REVEAL]=e=>Z0(J0)(T0)(e),J0[TQ.OP_REGISTER_GLOBAL_CONSTANT]=e=>Z0(J0)(D0)(e),J0[TQ.OP_TRANSFER_TICKET]=e=>Z0(J0)(z0)(e),J0[TQ.OP_TX_ROLLUP_ORIGINATION]=e=>Z0(J0)(B0)(e),J0[TQ.OP_TX_ROLLUP_SUBMIT_BATCH]=e=>Z0(J0)(U0)(e),J0[TQ.OP_INCREASE_PAID_STORAGE]=e=>Z0(J0)(F0)(e),J0[TQ.OP_UPDATE_CONSENSUS_KEY]=e=>Z0(J0)($0)(e),J0[TQ.OP_DRAIN_DELEGATE]=e=>Z0(J0)(H0)(e),J0[TQ.OP_SMART_ROLLUP_ORIGINATE]=e=>Z0(J0)(q0)(e),J0[TQ.OP_SMART_ROLLUP_ADD_MESSAGES]=e=>Z0(J0)(K0)(e),J0[TQ.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE]=e=>Z0(J0)(W0)(e),J0[TQ.MANAGER]=Z0(J0)(P0),J0[TQ.OP_SET_DEPOSITS_LIMIT]=e=>Z0(J0)(V0)(e),J0[TQ.OP_FAILING_NOOP]=e=>Z0(J0)(G0)(e);const Q0={activate_account:O0,reveal:T0,delegation:C0,transaction:j0,origination:R0,ballot:I0,endorsement:M0,seed_nonce_revelation:L0,proposals:N0,register_global_constant:D0,transfer_ticket:z0,tx_rollup_origination:B0,tx_rollup_submit_batch:U0,increase_paid_storage:F0,update_consensus_key:$0,drain_delegate:H0,set_deposits_limit:V0,smart_rollup_originate:q0,smart_rollup_add_messages:K0,smart_rollup_execute_outbox_message:W0,failing_noop:G0},e1=e=>{const t=e.kind,r=Object.keys(e),n=(i="kind",r.filter((e=>e!==i)));var i;const o=Object.keys(Q0[t]);return a=n,o.filter((e=>!a.includes(e)));var a};var t1;!function(e){e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(t1||(t1={}));const r1=t1.PtMumbai2;class n1{constructor(e=r1){var t;this.protocolHash=e,this.codec=(t=TQ.MANAGER,this.protocolHash,{encoder:J0[t],decoder:e=>{const r=GQ.fromHexString(e);return X0[t](r)}})}forge(e){const t=function(e){return Xs(e,nc)}(e.branch);if(t!==Zs.VALID)throw new os(e.branch,hc(t));for(const i of e.contents){if(r=i.kind,!Object.keys(Q0).includes(r))throw new vs(i.kind);const e=e1(i);if(1===e.length){if("delegation"===i.kind&&"delegate"===e[0])continue;if("origination"===i.kind&&"delegate"===e[0])continue;if("transaction"===i.kind&&"parameters"===e[0])continue;if("set_deposits_limit"===i.kind&&"limit"===e[0])continue;if("tx_rollup_submit_batch"===i.kind&&"burn_limit"===e[0])continue;throw new NQ(i,`missing properties "${e.join(", ")}"`)}if(e.length>1)throw new NQ(i,`missing properties "${e.join(", ")}"`)}var r;const n=this.codec.encoder(e).toLowerCase();return Promise.resolve(n)}parse(e){return Promise.resolve(this.codec.decoder(e))}}new n1;function i1(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i(e.on("data",(e=>{t.next(e)})),e.on("error",(e=>{t.error(e)})),e.on("close",(()=>{t.complete()})),()=>{e.close()})))}const h1=10600,f1=10600,p1=10600,m1=1e3,g1=1e3,v1=2e3,y1=2e3,b1=1257,w1=1e4,x1=1e4,_1=374,S1=0,k1=257,E1=257,A1=0;var P1;!function(e){e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.PsiThaCa="PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(P1||(P1={}));P1.Pt24m4xi,P1.PsBABY5H,P1.PsBabyM1,P1.PsCARTHA,P1.PsDELPH1,P1.PtEdo2Zk,P1.PsFLorena,P1.PtGRANADs,P1.PtHangz2,P1.PsiThaCa,P1.Psithaca2,P1.PtJakart2,P1.PtKathman,P1.PtLimaPtL,P1.PtMumbai2,P1.PtNairobi,P1.ProtoALpha;var O1;!function(e){e.MAINNET="NetXdQprcVkpaWU",e.CARTHAGENET="NetXjD3HPJJjmcd",e.DELPHINET="NetXm8tYqnMWky1",e.EDONET="NetXSgo1ZT2DRUG",e.FLORENCENET="NetXxkAx4woPLyu",e.GRANADANET="NetXz969SFaFn8k",e.HANGZHOUNET="NetXZSsxBpMQeAT",e.ITHACANET="NetXbhmtAbMukLc",e.ITHACANET2="NetXnHfVqm9iesp",e.JAKARTANET2="NetXLH1uAxK7CCh",e.KATHMANDUNET="NetXazhm4yetmff",e.LIMANET="NetXizpkH94bocH",e.MUMBAINET="NetXQw6nWSnrJ5t",e.MUMBAINET2="NetXgbcrNtXD2yA",e.NAIROBINET="NetXyuzvDo2Ugzb"}(O1||(O1={}));const T1=e=>Math.round(11*C1(e)/10),C1=e=>{switch(e.substring(0,3)){case"tz1":return m1;case"tz2":return g1;case"tz3":return v1;case"tz4":return y1;default:throw new Error(`Cannot estimate reveal gas limit for ${e}`)}};class j1 extends Qa{constructor(e,t,r){super(),this.smartContractMethodName=e,this.sigs=t,this.invalidParams=r,this.name="InvalidParameterError",this.message=`${e} Received ${r.length} arguments while expecting one of the following signatures (${JSON.stringify(t)})`}}class R1 extends Qa{constructor(e){super(),this.source=e,this.name="InvalidDelegationSource",this.message=`Since Babylon delegation source can no longer be a contract address ${e}. Please use the smart contract abstraction to set your delegate.`}}class I1 extends Qa{constructor(e,t){super(),this.message=e,this.data=t,this.name="InvalidCodeParameter"}}class M1 extends Qa{constructor(e,t){super(),this.message=e,this.data=t,this.name="InvalidInitParameter"}}class L1 extends es{constructor(e,t,r,n){super(),this.message=e,this.viewName=t,this.failWith=r,this.cause=n,this.name="ViewSimulationError"}}const N1=e=>{try{JSON.parse(e)}catch(t){return!1}return!0};class D1 extends Qa{constructor(e){super(),this.info=e,this.name="InvalidViewSimulationContext",this.message=`${e} Please configure the context of the view execution in the executeView method.`}}class z1 extends es{constructor(e){super(),this.message=e,this.name="RevealOperationError"}}class B1 extends Qa{constructor(e){super(),this.message=e,this.name}}class U1 extends Qa{constructor(e){super(),this.message=e,this.name="InvalidBalanceError"}}const F1=({code:e,init:t,balance:r="0",delegate:n,storage:i,fee:o=w1,gasLimit:a=f1,storageLimit:s=k1,mutez:c=!1})=>o1(void 0,void 0,void 0,(function*(){if(void 0!==i&&void 0!==t)throw new B1("Storage and Init cannot be set a the same time. Please either use storage or init but not both.");if(!Array.isArray(e))throw new I1("Wrong code parameter type, expected an array",e);let l;if(void 0!==i){const t=e.find((e=>"prim"in e&&"storage"===e.prim));if(void 0===(null===t||void 0===t?void 0:t.args))throw new I1("The storage section is missing from the script",e);l=new uX(t.args[0]).Encode(i)}else{if(void 0===t||"object"!==typeof t)throw new M1("Wrong init parameter type, expected JSON Michelson",t);l=t}const u={code:e,storage:l};if(isNaN(Number(r)))throw new U1(`Invalid Balance "${r}", cannot be converted to a number`);const d={kind:mW.ORIGINATION,fee:o,gas_limit:a,storage_limit:s,balance:c?r.toString():gc("tz","mutez",r).toString(),script:u};return n&&(d.delegate=n),d})),$1=({to:e,amount:t,parameter:r,fee:n=x1,gasLimit:i=p1,storageLimit:o=E1,mutez:a=!1})=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.TRANSACTION,fee:n,gas_limit:i,storage_limit:o,amount:a?t.toString():gc("tz","mutez",t).toString(),destination:e,parameters:r}})),H1=({delegate:e,source:t,fee:r=b1,gasLimit:n=h1,storageLimit:i=S1})=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.DELEGATION,source:t,fee:r,gas_limit:n,storage_limit:i,delegate:e}})),V1=({fee:e=_1,gasLimit:t,storageLimit:r=A1},n,i)=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.REVEAL,fee:e,public_key:i,source:n,gas_limit:null!==t&&void 0!==t?t:T1(n),storage_limit:r}})),q1=({value:e,source:t,fee:r,gasLimit:n,storageLimit:i})=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.REGISTER_GLOBAL_CONSTANT,value:e,fee:r,gas_limit:n,storage_limit:i,source:t}})),K1=({ticketContents:e,ticketTy:t,ticketTicketer:r,ticketAmount:n,destination:i,entrypoint:o,source:a,fee:s,gasLimit:c,storageLimit:l})=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.TRANSFER_TICKET,fee:s,gas_limit:c,storage_limit:l,source:a,ticket_contents:e,ticket_ty:t,ticket_ticketer:r,ticket_amount:n,destination:i,entrypoint:o}})),W1=({source:e,fee:t,gasLimit:r,storageLimit:n,amount:i,destination:o})=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.INCREASE_PAID_STORAGE,source:e,fee:t,gas_limit:r,storage_limit:n,amount:i,destination:o}})),G1=({source:e,fee:t,gasLimit:r,storageLimit:n,message:i})=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.SMART_ROLLUP_ADD_MESSAGES,source:e,fee:t,gas_limit:r,storage_limit:n,message:i}})),Z1=({source:e,fee:t,gasLimit:r,storageLimit:n,pvmKind:i,kernel:o,originationProof:a,parametersType:s})=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.SMART_ROLLUP_ORIGINATE,source:e,fee:t,gas_limit:r,storage_limit:n,pvm_kind:i,kernel:o,origination_proof:a,parameters_ty:s}})),Y1=(e,t)=>Object.assign(Object.assign({},e),{kind:t}),X1=(e,t)=>{if(Array.isArray(e)){const r=e.find((e=>e.kind===t));if(r&&J1(r,t))return r}},J1=(e,t)=>e.kind===t,Q1=e=>-1!==["transaction","delegation","origination","reveal","register_global_constant","increase_paid_storage","tx_rollup_origination","tx_rollup_submit_batch","transfer_ticket","update_consensus_key","smart_rollup_add_messages","smart_rollup_originate"].indexOf(e.kind),e2=e=>-1!==["transaction","delegation","origination","register_global_constant","increase_paid_storage","tx_rollup_origination","tx_rollup_submit_batch","transfer_ticket","update_consensus_key","smart_rollup_add_messages","smart_rollup_originate"].indexOf(e.kind),t2=e=>"metadata"in e,r2=e=>t2(e)&&"operation_result"in e.metadata;class n2 extends es{constructor(e,t){super(),this.errors=e,this.errorDetails=t,this.name="TezosOperationError";const r=e[e.length-1];this.id=r.id,this.kind=r.kind,this.message=`(${this.kind}) ${this.id}`,(e=>"with"in e)(r)&&(r.with.string?this.message=r.with.string:r.with.int?this.message=r.with.int:this.message=JSON.stringify(r.with))}}class i2 extends Error{constructor(e){super(),this.result=e,this.name="TezosPreapplyFailureError",this.message="Preapply returned an unexpected result"}}const o2=e=>{const t=Array.isArray(e)?e:[e],r=[];for(let n=0;nr.push(e.result))))}return r},a2=(e,t="failed")=>{const r=Array.isArray(e)?e:[e];let n=[];for(let o=0;onew XW(e).pipe(JG({each:1e3*e.timeout,with:()=>JW((()=>new u2("Confirmation polling timed out")))})))),YG((()=>uG((()=>d1(this.context.stream.subscribeBlock("head")))).pipe(YG((e=>{var t,r;const n=null!==(r=null===(t=this.lastHead)||void 0===t?void 0:t.header.level)&&void 0!==r?r:e.header.level-1;return hG(n+1,e.header.level-n-1).pipe(eZ((e=>this.context.readProvider.getBlock(e))),tZ(e))})),rZ((e=>this.lastHead=e))))),oZ({refCount:!0})),this.confirmed$=this.currentHead$.pipe(RG((e=>{for(let t=3;t>=0;t--)e.operations[t].forEach((t=>{t.hash===this.hash&&(this._foundAt=e.header.level)}));if(e.header.level-this._foundAt>=0)return this._foundAt})),aZ((e=>void 0!==e)),lZ(),oZ()),this._foundAt=Number.POSITIVE_INFINITY,dc(this.hash)!==Zs.VALID)throw new gs(this.hash);this.confirmed$.pipe(lZ(),uZ((()=>AG(dG)))).subscribe()}get revealOperation(){return Array.isArray(this.results)&&this.results.find((e=>"reveal"===e.kind))}get revealStatus(){return this.revealOperation?this.revealOperation.metadata.operation_result.status:"unknown"}get status(){return this.results.map((e=>r2(e)?e.metadata.operation_result.status:"unknown"))[0]||"unknown"}confirmation(e,t){return o1(this,void 0,void 0,(function*(){if("undefined"!==typeof e&&e<1)throw new l2(e);const{defaultConfirmationCount:r,confirmationPollingTimeoutSecond:n}=this.context.config;this._pollingConfig$.next({timeout:t||n});const i=void 0!==e?e:r;return new Promise(((e,t)=>{this.confirmed$.pipe(YG((()=>this.currentHead$)),aZ((e=>e.header.level-this._foundAt>=i-1)),lZ()).subscribe((t=>{e(this._foundAt+(i-1))}),t)}))}))}}class f2 extends h2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}sumProp(e,t){return e.reduce(((e,r)=>t in r?Number(r[t])+e:e),0)}getOriginatedContractAddresses(){const e=this.results.filter((e=>"origination"===e.kind));let t=[];for(const r of e)r.metadata.operation_result.originated_contracts&&(t=[...t,...r.metadata.operation_result.originated_contracts]);return t}get status(){return this.results.filter((e=>-1!==F2.indexOf(e.kind))).map((e=>{if(r2(e)){return e.metadata.operation_result.status}return"unknown"}))[0]||"unknown"}get fee(){return this.sumProp(this.params,"fee")}get gasLimit(){return this.sumProp(this.params,"gas_limit")}get storageLimit(){return this.sumProp(this.params,"storage_limit")}get consumedGas(){return Us.config({DECIMAL_PLACES:0,ROUNDING_MODE:Us.ROUND_UP}),new Us(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(o2({contents:this.results}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(o2({contents:this.results}),"paid_storage_size_diff"))}get errors(){return a2({contents:this.results})}}class p2{get rpc(){return this.context.rpc}get signer(){return this.context.signer}constructor(e){this.context=e}forge({opOb:{branch:e,contents:t,protocol:r},counter:n}){return o1(this,void 0,void 0,(function*(){return{opbytes:yield this.context.forger.forge({branch:e,contents:t}),opOb:{branch:e,contents:t,protocol:r},counter:n}}))}estimate(e,t){var{fee:r,gasLimit:n,storageLimit:i}=e,o=i1(e,["fee","gasLimit","storageLimit"]);return o1(this,void 0,void 0,(function*(){let e=r,a=n,s=i;if(e&&e%1!==0)throw new c2(`Fee value must not be a decimal: ${e}`);if(a&&a%1!==0)throw new c2(`Gas Limit value must not be a decimal: ${a}`);if(s&&s%1!==0)throw new c2(`Storage Limit value must not be a decimal: ${s}`);if(void 0===r||void 0===n||void 0===i){const c=yield t(Object.assign({fee:r,gasLimit:n,storageLimit:i},o));null!==e&&void 0!==e||(e=c.suggestedFeeMutez),null!==a&&void 0!==a||(a=c.gasLimit),null!==s&&void 0!==s||(s=c.storageLimit)}return{fee:e,gasLimit:a,storageLimit:s}}))}getRPCOp(e){return o1(this,void 0,void 0,(function*(){switch(e.kind){case mW.TRANSACTION:return $1(Object.assign({},e));case mW.ORIGINATION:return F1(yield this.context.parser.prepareCodeOrigination(Object.assign({},e)));case mW.DELEGATION:return H1(Object.assign({},e));case mW.REGISTER_GLOBAL_CONSTANT:return q1(Object.assign({},e));case mW.INCREASE_PAID_STORAGE:return W1(Object.assign({},e));case mW.TRANSFER_TICKET:return K1(Object.assign({},e));case mW.SMART_ROLLUP_ADD_MESSAGES:return G1(Object.assign({},e));case mW.SMART_ROLLUP_ORIGINATE:return Z1(Object.assign({},e));default:throw new vs(e.kind)}}))}runOperation(e){return o1(this,void 0,void 0,(function*(){return{opResponse:yield this.rpc.runOperation(e),op:e,context:this.context.clone()}}))}simulate(e){return o1(this,void 0,void 0,(function*(){return{opResponse:yield this.rpc.simulateOperation(e),op:e,context:this.context.clone()}}))}isRevealOpNeeded(e,t){return o1(this,void 0,void 0,(function*(){return!(!(yield this.isAccountRevealRequired(t))||!this.isRevealRequiredForOpType(e))}))}isAccountRevealRequired(e){return o1(this,void 0,void 0,(function*(){return!(yield this.context.readProvider.isAccountRevealed(e,"head"))}))}isRevealRequiredForOpType(e){let t=!1;for(const r of e)e2(r)&&(t=!0);return t}signAndInject(e){return o1(this,void 0,void 0,(function*(){const t=yield this.signer.sign(e.opbytes,new Uint8Array([3]));e.opbytes=t.sbytes,e.opOb.signature=t.prefixSig;const r=[],n=yield this.rpc.preapplyOperations([e.opOb]);if(!Array.isArray(n))throw new i2(n);for(let e=0;eo1(this,void 0,void 0,(function*(){return e}))));case mW.ORIGINATION:return this.walletProvider.mapOriginateParamsToWalletParams((()=>o1(this,void 0,void 0,(function*(){return this.context.parser.prepareCodeOrigination(Object.assign({},e))}))));case mW.DELEGATION:return this.walletProvider.mapDelegateParamsToWalletParams((()=>o1(this,void 0,void 0,(function*(){return e}))));case mW.INCREASE_PAID_STORAGE:return this.walletProvider.mapIncreasePaidStorageWalletParams((()=>o1(this,void 0,void 0,(function*(){return e}))));default:throw new vs(JSON.stringify(e.kind))}}))}with(e){for(const t of e)switch(t.kind){case mW.TRANSACTION:this.withTransfer(t);break;case mW.ORIGINATION:this.withOrigination(t);break;case mW.DELEGATION:this.withDelegation(t);break;case mW.INCREASE_PAID_STORAGE:this.withIncreasePaidStorage(t);break;default:throw new vs(JSON.stringify(t.kind))}return this}send(){return o1(this,void 0,void 0,(function*(){const e=[];for(const r of this.operations)e.push(yield this.mapOperation(r));const t=yield this.walletProvider.sendOperations(e);return this.context.operationFactory.createBatchOperation(t)}))}}class g2{constructor(e){this.context=e,this.walletCommand=e=>({send:e})}get walletProvider(){return this.context.walletProvider}pkh({forceRefetch:e}={}){return o1(this,void 0,void 0,(function*(){return this._pkh&&!e||(this._pkh=yield this.walletProvider.getPKH()),this._pkh}))}originate(e){return this.walletCommand((()=>o1(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapOriginateParamsToWalletParams((()=>this.context.parser.prepareCodeOrigination(Object.assign({},e)))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createOriginationOperation(r)}))))}setDelegate(e){var t;const r=oc(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&r!==Zs.VALID)throw new is(e.delegate,hc(r));return this.walletCommand((()=>o1(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapDelegateParamsToWalletParams((()=>o1(this,void 0,void 0,(function*(){return e})))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createDelegationOperation(r)}))))}signFailingNoop(e){return o1(this,void 0,void 0,(function*(){const t={kind:mW.FAILING_NOOP,arbitrary:e.arbitrary},r=yield this.context.readProvider.getBlockHash(e.basedOnBlock),n=yield this.context.forger.forge({branch:r,contents:[t]});return{signature:yield this.walletProvider.sign(n,Uint8Array.from([3])),bytes:n,signedContent:{branch:r,contents:[{kind:mW.FAILING_NOOP,arbitrary:e.arbitrary}]}}}))}registerDelegate(){return this.walletCommand((()=>o1(this,void 0,void 0,(function*(){const e=yield this.walletProvider.mapDelegateParamsToWalletParams((()=>o1(this,void 0,void 0,(function*(){return{delegate:yield this.pkh()}})))),t=yield this.walletProvider.sendOperations([e]);return this.context.operationFactory.createDelegationOperation(t)}))))}transfer(e){const t=oc(e.to);if(t!==Zs.VALID)throw new is(e.to,hc(t));return this.walletCommand((()=>o1(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapTransferParamsToWalletParams((()=>o1(this,void 0,void 0,(function*(){return e})))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createTransactionOperation(r)}))))}increasePaidStorage(e){const t=oc(e.destination);if(t!==Zs.VALID)throw new is(e.destination,hc(t));return this.walletCommand((()=>o1(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapIncreasePaidStorageWalletParams((()=>o1(this,void 0,void 0,(function*(){return e})))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createIncreasePaidStorageOperation(r)}))))}batch(e){const t=new m2(this.walletProvider,this.context);return Array.isArray(e)&&t.with(e),t}at(e,t=(e=>e)){return o1(this,void 0,void 0,(function*(){const r=sc(e);if(r!==Zs.VALID)throw new fs(e,hc(r));const n=this.context.withExtensions().rpc,i=this.context.withExtensions().readProvider,o=yield i.getScript(e,"head"),a=yield i.getEntrypoints(e),s=new C2(e,o,this,this.context.contract,a,n,i);return t(s,this.context)}))}getPK(){return this.walletProvider.getPK()}}class v2 extends ts{constructor(){super(),this.name="ConfirmationUndefinedError",this.message="Default confirmation count can not be undefined"}}class y2 extends ns{constructor(e){super(),this.message=e,this.name="ObservableError"}}class b2{operationResults(){return o1(this,void 0,void 0,(function*(){return this._operationResult.pipe(lZ()).toPromise()}))}receipt(){return o1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new y2("Unable to get operation results");return((e,{ALLOCATION_BURN:t,ORIGINATION_BURN:r}={ALLOCATION_BURN:257,ORIGINATION_BURN:257})=>{Us.config({DECIMAL_PLACES:0,ROUNDING_MODE:Us.ROUND_UP});const n=o2({contents:e});let i=new Us(0),o=new Us(0),a=new Us(0),s=new Us(0),c=new Us(0),l=new Us(0);return n.forEach((e=>{a=a.plus(e.fee||0),s=s.plus(Array.isArray(e.originated_contracts)?e.originated_contracts.length*r:0),c=c.plus("allocated_destination_contract"in e?t:0),i=i.plus(e.consumed_milligas||0),l=l.plus("paid_storage_size_diff"in e&&Number(e.paid_storage_size_diff)||0)})),o=o.plus(c).plus(s).plus(l),{totalFee:a,totalMilliGas:i,totalGas:i.dividedBy(1e3),totalStorage:o,totalAllocationBurn:c,totalOriginationBurn:s,totalPaidStorageDiff:l,totalStorageBurn:new Us(o.multipliedBy(250))}})(e)}))}constructor(e,t,r){if(this.opHash=e,this.context=t,this._newHead$=r,this._operationResult=new YW(1),this._includedInBlock=new YW(1),this._included=!1,this.newHead$=this._newHead$.pipe(YG((e=>{var t,r;const n=null!==(r=null===(t=this.lastHead)||void 0===t?void 0:t.header.level)&&void 0!==r?r:e.header.level-1;return hG(n+1,e.header.level-n-1).pipe(eZ((e=>this.context.readProvider.getBlock(e))),tZ(e))})),rZ((e=>this.lastHead=e)),nZ({connector:()=>new YW(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1})),this.confirmed$=this.newHead$.pipe(RG((e=>{for(const t of e.operations)for(const r of t)if(r.hash===this.opHash)return this._included=!0,this._includedInBlock.next(e),this._operationResult.next(r.contents),e})),aZ((e=>"undefined"!==typeof e)),lZ(),nZ({connector:()=>new YW(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1})),dc(this.opHash)!==Zs.VALID)throw new gs(this.opHash);this.confirmed$.pipe(lZ(),uZ((()=>AG(void 0)))).subscribe()}getCurrentConfirmation(){return o1(this,void 0,void 0,(function*(){return this._included?LG([this._includedInBlock,EG(this.context.readProvider.getBlock("head"))]).pipe(RG((([e,t])=>t.header.level-e.header.level+1)),lZ()).toPromise():0}))}isInCurrentBranch(e="head"){return o1(this,void 0,void 0,(function*(){if(!this._included)return!0;const t=yield this.context.readProvider.getBlockLevel(e),r=yield this._includedInBlock.pipe(lZ()).toPromise();if(!r)throw new y2("Inclusion block is undefined");const n=t-r.header.level;if(n<=0)return!0;const i=Math.min(r.header.level+n,r.header.level+60);return new Set(yield this.context.readProvider.getLiveBlocks(i)).has(r.hash)}))}confirmationObservable(e){if("undefined"!==typeof e&&e<1)throw new l2(e);const{defaultConfirmationCount:t}=this.context.config,r=void 0!==e?e:t;if(void 0===r)throw new v2;return LG([this._includedInBlock,this.newHead$]).pipe(dZ((([,e],[,t])=>e.hash===t.hash)),RG((([e,t])=>({block:t,expectedConfirmation:r,currentConfirmation:t.header.level-e.header.level+1,completed:t.header.level-e.header.level>=r-1,isInCurrentBranch:()=>this.isInCurrentBranch(t.hash)}))),(n=({completed:e})=>!e,void 0===(i=!0)&&(i=!1),yG((function(e,t){var r=0;e.subscribe(bG(t,(function(e){var o=n(e,r++);(o||i)&&t.next(e),!o&&t.complete()})))}))));var n,i}confirmation(e){return this.confirmationObservable(e).toPromise()}}class w2 extends b2{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}revealOperation(){return o1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new y2("operationResult returned undefined");return e.find((e=>e.kind===mW.REVEAL))}))}transactionOperation(){return o1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new y2("operationResult returned undefined");return e.find((e=>e.kind===mW.TRANSACTION))}))}status(){return o1(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.transactionOperation();return e?e.metadata.operation_result.status:"unknown"}))}}class x2 extends b2{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}originationOperation(){return o1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return X1(e,mW.ORIGINATION);throw new y2("Unable to fetch operation result")}))}revealOperation(){return o1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return X1(e,mW.REVEAL);throw new y2("Unable to fetch operation result")}))}status(){return o1(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.originationOperation();return e?e.metadata.operation_result.status:"unknown"}))}contract(){return o1(this,void 0,void 0,(function*(){const e=yield this.originationOperation(),t=((null===e||void 0===e?void 0:e.metadata.operation_result.originated_contracts)||[])[0];return this.context.wallet.at(t)}))}}class _2 extends b2{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}revealOperation(){return o1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===mW.REVEAL));throw new y2("Unable to fetch operation result")}))}delegationOperation(){return o1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===mW.DELEGATION));throw new y2("Unable to fetch operation result")}))}status(){return o1(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.delegationOperation();return e?e.metadata.operation_result.status:"unknown"}))}}class S2{constructor(e){this.context=e}getPKH(){return o1(this,void 0,void 0,(function*(){return this.context.signer.publicKeyHash()}))}mapTransferParamsToWalletParams(e){return o1(this,void 0,void 0,(function*(){return Y1(yield e(),mW.TRANSACTION)}))}mapOriginateParamsToWalletParams(e){return o1(this,void 0,void 0,(function*(){return Y1(yield e(),mW.ORIGINATION)}))}mapDelegateParamsToWalletParams(e){return o1(this,void 0,void 0,(function*(){return Y1(yield e(),mW.DELEGATION)}))}mapIncreasePaidStorageWalletParams(e){return o1(this,void 0,void 0,(function*(){return Y1(yield e(),mW.INCREASE_PAID_STORAGE)}))}sendOperations(e){return o1(this,void 0,void 0,(function*(){return(yield this.context.batch.batch(e).send()).hash}))}sign(e,t){return o1(this,void 0,void 0,(function*(){const{prefixSig:r}=yield this.context.signer.sign(e,t);return r}))}getPK(){return this.context.signer.publicKey()}}class k2{constructor(e,t,r,n,i="unit",o=!0,a=!1){this.provider=e,this.address=t,this.parameterSchema=r,this.name=n,this.args=i,this.isMultipleEntrypoint=o,this.isAnonymous=a}getSignature(){return this.isAnonymous?this.parameterSchema.ExtractSchema()[this.name]:this.parameterSchema.ExtractSchema()}send(e={}){return this.provider instanceof g2?this.provider.transfer(this.toTransferParams(e)).send():this.provider.transfer(this.toTransferParams(e))}toTransferParams({fee:e,gasLimit:t,storageLimit:r,source:n,amount:i=0,mutez:o=!1}={}){return{to:this.address,amount:i,fee:e,mutez:o,source:n,gasLimit:t,storageLimit:r,parameter:{entrypoint:this.isMultipleEntrypoint?this.name:O2,value:this.isAnonymous?this.parameterSchema.EncodeObject({[this.name]:this.args}):this.parameterSchema.EncodeObject(this.args)}}}}class E2{constructor(e,t,r,n,i,o=!0,a=!1){this.provider=e,this.address=t,this.parameterSchema=r,this.name=n,this.args=i,this.isMultipleEntrypoint=o,this.isAnonymous=a}validateArgs(e,t,r){const n=t.ExtractSignatures();if(!n.find((t=>t.length===e.length)))throw new j1(r,n,e)}get schema(){return this.isAnonymous?this.parameterSchema.ExtractSchema()[this.name]:this.parameterSchema.ExtractSchema()}getSignature(){if(!this.isAnonymous){const e=this.parameterSchema.ExtractSignatures();return 1==e.length?e[0]:e}{const e=this.parameterSchema.ExtractSignatures().find((e=>e[0]===this.name));if(e)return e.shift(),e}}send(e={}){return this.provider instanceof g2?this.provider.transfer(this.toTransferParams(e)).send():this.provider.transfer(this.toTransferParams(e))}toTransferParams({fee:e,gasLimit:t,storageLimit:r,source:n,amount:i=0,mutez:o=!1}={}){return{to:this.address,amount:i,fee:e,mutez:o,source:n,gasLimit:t,storageLimit:r,parameter:{entrypoint:this.isMultipleEntrypoint?this.name:O2,value:this.isAnonymous?this.parameterSchema.Encode(this.name,...this.args):this.parameterSchema.Encode(...this.args)}}}}class A2{constructor(e,t,r,n,i,o="Unit"){this._rpc=e,this._readProvider=t,this._contractAddress=r,this._smartContractViewSchema=n,this._contractStorageType=i,this._args=o}getSignature(){return{parameter:this._smartContractViewSchema.extractArgsSchema(),result:this._smartContractViewSchema.extractResultSchema()}}executeView(e){return o1(this,void 0,void 0,(function*(){this.verifyContextExecution(e);const t=yield this._readProvider.getChainId(),r=this.transformArgsToMichelson(),n={contract:this._contractAddress,view:this._smartContractViewSchema.viewName,input:r,chain_id:t,source:e.viewCaller};return e.source&&(n.payer=e.source),this.executeViewAndDecodeResult(n)}))}verifyContextExecution(e){if(e.source&&oc(e.source)!==Zs.VALID)throw new D1(`The source account who initialized the view execution is invalid: ${e.source}.`);if(!e.viewCaller||oc(e.viewCaller)!==Zs.VALID)throw new D1(`The contract which is the caller of view is invalid: ${e.viewCaller}.`)}transformArgsToMichelson(){try{return this._smartContractViewSchema.encodeViewArgs(this._args)}catch(e){throw new us(this._smartContractViewSchema.viewName,this.getSignature(),this._args,e)}}adaptViewCodeToContext(e,t,r){const n={BALANCE:[{prim:"PUSH",args:[{prim:"mutez"},{int:r}]}],SENDER:[{prim:"PUSH",args:[{prim:"address"},{string:t}]}],SELF_ADDRESS:[{prim:"PUSH",args:[{prim:"address"},{string:this._contractAddress}]}],AMOUNT:[{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]}]};return e.forEach(((i,o)=>{i.prim in n&&(e[o]=Object(n)[i.prim]),i.args&&0!==i.args.length?this.adaptViewCodeToContext(i.args,t,r):Array.isArray(i)&&this.adaptViewCodeToContext(i,t,r)})),e}executeViewAndDecodeResult(e){return o1(this,void 0,void 0,(function*(){let t;try{t=(yield this._rpc.runScriptView(e)).data}catch(r){const e=(e=>{if(N1(e.body)){const t=JSON.parse(e.body);if(Array.isArray(t)&&"with"in t[t.length-1])return t[t.length-1].with}})(r);throw e?new L1(`The simulation of the on-chain view named ${this._smartContractViewSchema.viewName} failed with: ${JSON.stringify(e)}`,this._smartContractViewSchema.viewName,e,r):r}return this._smartContractViewSchema.decodeViewResult(t)}))}}class P2{constructor(e,t){this.provider=e,this.contractAddress=t}createContractMethodFlatParams(e,t,r,n=!0,i=!1){return new E2(this.provider,this.contractAddress,e,t,r,n,i)}createContractMethodObjectParam(e,t,r,n=!0,i=!1){return new k2(this.provider,this.contractAddress,e,t,r,n,i)}createContractViewObjectParam(e,t,r,n,i){return new A2(e,t,this.contractAddress,r,n,i)}}const O2="default";class T2{constructor(e,t,r,n,i,o,a){this.currentContract=e,this.name=t,this.callbackParametersSchema=r,this.parameterSchema=n,this.args=i,this.rpc=o,this.readProvider=a}read(e){return o1(this,void 0,void 0,(function*(){const t=ac(null!==e&&void 0!==e?e:"");if(sc(null!==e&&void 0!==e?e:"")==Zs.VALID)throw new ys("Since version 12, the lambda view no longer depends on a lambda contract. The read method no longer accepts a contract address as a parameter.");if(e&&t!==Zs.VALID)throw new ps(e,hc(t));const r=this.parameterSchema.Encode(...this.args),n=yield this.rpc.runView({contract:this.currentContract.address,entrypoint:this.name,input:r,chain_id:e||(yield this.readProvider.getChainId())});return this.callbackParametersSchema.Execute(n.data)}))}}class C2{constructor(e,t,r,n,i,o,a){this.address=e,this.script=t,this.storageProvider=n,this.entrypoints=i,this.rpc=o,this.readProvider=a,this.methods={},this.methodsObject={},this.views={},this.contractViews={},this.contractMethodFactory=new P2(r,e),this.schema=uX.fromRPCResponse({script:this.script}),this.parameterSchema=dX.fromRPCResponse({script:this.script}),this.viewSchema=hX.fromRPCResponse({script:this.script}),0!==this.viewSchema.length&&this._initializeOnChainViews(this,o,this.readProvider,this.viewSchema),this.eventSchema=fX.fromRPCResponse({script:this.script}),this._initializeMethods(this,this.entrypoints.entrypoints,this.rpc,this.readProvider)}_initializeMethods(e,t,r,n){const i=this.parameterSchema,o=Object.keys(t);if(i.isMultipleEntryPoint){o.forEach((i=>{const o=new dX(t[i]);if(this.methods[i]=function(...t){return e.contractMethodFactory.createContractMethodFlatParams(o,i,t)},this.methodsObject[i]=function(t){return e.contractMethodFactory.createContractMethodObjectParam(o,i,t)},(e=>{let t=!1;if("prim"in e&&"pair"===e.prim&&e.args){const r=e.args[e.args.length-1];"prim"in r&&"contract"===r.prim&&(t=!0)}return t})(t[i])){const o=function(...o){const a=t[i].args[0],s=new dX(a),c=t[i].args[1].args[0],l=new dX(c);return((e,t,r)=>{const n=t.ExtractSignatures();if(!n.find((t=>t.length===e.length)))throw new j1(r,n,e)})(o,s,i),new T2(e,i,l,s,o,r,n)};this.views[i]=o}}));const a=Object.keys(i.ExtractSchema()).filter((e=>-1===Object.keys(t).indexOf(e)));a.forEach((t=>{this.methods[t]=function(...r){return e.contractMethodFactory.createContractMethodFlatParams(i,t,r,!1,!0)},this.methodsObject[t]=function(r){return e.contractMethodFactory.createContractMethodObjectParam(i,t,r,!1,!0)}}))}else{const t=this.parameterSchema;this.methods[O2]=function(...r){return e.contractMethodFactory.createContractMethodFlatParams(t,O2,r,!1)},this.methodsObject[O2]=function(r){return e.contractMethodFactory.createContractMethodObjectParam(t,O2,r,!1)}}}_initializeOnChainViews(e,t,r,n){const i=this.schema.val;n.forEach((n=>{this.contractViews[n.viewName]=function(o){return e.contractMethodFactory.createContractViewObjectParam(t,r,n,i,o)}}))}storage(){return this.storageProvider.getStorage(this.address,this.schema)}bigMap(e){return this.storageProvider.getBigMapKey(this.address,e,this.schema)}}const j2=e=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"key_hash"},{string:e}]},{prim:"SOME"},{prim:"SET_DELEGATE"},{prim:"CONS"}],R2=()=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"NONE",args:[{prim:"key_hash"}]},{prim:"SET_DELEGATE"},{prim:"CONS"}],I2=(e,t)=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"key_hash"},{string:e}]},{prim:"IMPLICIT_ACCOUNT"},{prim:"PUSH",args:[{prim:"mutez"},{int:`${t}`}]},{prim:"UNIT"},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}],M2=(e,t)=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"address"},{string:e}]},{prim:"CONTRACT",args:[{prim:"unit"}]},{prim:"IF_NONE",args:[[{prim:"UNIT"},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"mutez"},{int:`${t}`}]},{prim:"UNIT"},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}];class L2{constructor(e,t){this.id=e,this.provider=t}getSaplingDiff(e){return o1(this,void 0,void 0,(function*(){return this.provider.getSaplingDiffByID(this.id.toString(),e)}))}getId(){return this.id.toString()}}class N2{constructor(e,t,r){this.id=e,this.schema=t,this.provider=r}get(e,t){return o1(this,void 0,void 0,(function*(){try{return yield this.provider.getBigMapKeyByID(this.id.toString(),e,this.schema,t)}catch(r){if(r instanceof YK&&r.status===KK.NOT_FOUND)return;throw r}}))}getMultipleValues(e,t,r=5){return o1(this,void 0,void 0,(function*(){return this.provider.getBigMapKeysByID(this.id.toString(),e,this.schema,t,r)}))}toJSON(){return this.id.toString()}toString(){return this.id.toString()}}const D2=e=>({big_map:(t,r)=>{if(t&&"int"in t&&void 0!==t.int){const n=new uX(r);return new N2(new Us(t.int),n,e)}return{}},sapling_state:t=>t&&"int"in t&&void 0!==t.int?new L2(new Us(t.int),e):{}});var z2;const B2=(e,t)=>{var r,n,i;return{fee:null!==(r=e.fee)&&void 0!==r?r:t.fee,gasLimit:null!==(n=e.gasLimit)&&void 0!==n?n:t.gasLimit,storageLimit:null!==(i=e.storageLimit)&&void 0!==i?i:t.storageLimit}};class U2 extends p2{constructor(e){super(e),this.context=e,z2.set(this,void 0),s1(this,z2,{},"f")}getBlockHash(e){return o1(this,void 0,void 0,(function*(){return this.context.readProvider.getBlockHash(null!==e&&void 0!==e?e:"head~2")}))}getProtocolHash(){return o1(this,void 0,void 0,(function*(){return this.context.readProvider.getNextProtocol("head")}))}getHeadCounter(e){var t;return o1(this,void 0,void 0,(function*(){return null!==(t=this.context.readProvider.getCounter(e,"head"))&&void 0!==t?t:"0"}))}adjustGasForBatchOperation(e,t,r){return Us.min(t,e.div(r+1))}getAccountLimits(e,t,r){return o1(this,void 0,void 0,(function*(){const n=yield this.context.readProvider.getBalance(e,"head"),{hard_gas_limit_per_operation:i,hard_gas_limit_per_block:o,hard_storage_limit_per_operation:a,cost_per_byte:s}=t;return{fee:0,gasLimit:r?Math.floor(this.adjustGasForBatchOperation(o,i,r).toNumber()):i.toNumber(),storageLimit:Math.floor(Us.min(n.dividedBy(s),a).toNumber())}}))}getFee(e,t,r){(!a1(this,z2,"f")[t]||a1(this,z2,"f")[t]{switch(e.kind){case mW.ACTIVATION:case mW.DRAIN_DELEGATE:return Object.assign({},e);case mW.ORIGINATION:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{balance:"undefined"!==typeof e.balance?`${e.balance}`:"0"}),this.getSource(e,r,n)),this.getFee(e,r,t));case mW.TRANSACTION:{const i=Object.assign(Object.assign(Object.assign(Object.assign({},e),{amount:"undefined"!==typeof e.amount?`${e.amount}`:"0"}),this.getSource(e,r,n)),this.getFee(e,r,t));if(i.source.toLowerCase().startsWith("kt1"))throw new ys(`KT1 addresses are not supported as source since ${P1.PsBabyM1}`);return i}case mW.REVEAL:case mW.DELEGATION:case mW.REGISTER_GLOBAL_CONSTANT:case mW.UPDATE_CONSENSUS_KEY:case mW.SMART_ROLLUP_ADD_MESSAGES:case mW.SMART_ROLLUP_ORIGINATE:return Object.assign(Object.assign(Object.assign({},e),this.getSource(e,r,n)),this.getFee(e,r,t));case mW.TRANSFER_TICKET:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{ticket_amount:`${e.ticket_amount}`}),this.getSource(e,r,n)),this.getFee(e,r,t));case mW.INCREASE_PAID_STORAGE:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{amount:`${e.amount}`}),this.getSource(e,r,n)),this.getFee(e,r,t));case mW.BALLOT:case mW.PROPOSALS:if(void 0===i)throw new d2("Failed to get the current voting period index");return Object.assign(Object.assign({},e),{period:null===i||void 0===i?void 0:i.voting_period.index});default:throw new vs(e.kind)}}))}activate({pkh:e,secret:t}){return o1(this,void 0,void 0,(function*(){const r=yield(({pkh:e,secret:t})=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.ACTIVATION,pkh:e,secret:t}})))({pkh:e,secret:t}),n=this.convertIntoArray(r),i=yield this.getBlockHash(),o=yield this.getProtocolHash();s1(this,z2,{},"f");const a=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:i,contents:this.constructOpContents(n,a,e),protocol:o},counter:a}}))}reveal({fee:e,gasLimit:t,storageLimit:r}){return o1(this,void 0,void 0,(function*(){const{pkh:n,publicKey:i}=yield this.getKeys();if(!i)throw new ws(n);const o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(n,o),s=B2({fee:e,storageLimit:r,gasLimit:t},a),c=yield V1({fee:s.fee,gasLimit:s.gasLimit,storageLimit:s.storageLimit},n,i),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();s1(this,z2,{},"f");const h=parseInt(yield this.getHeadCounter(n),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,n),protocol:d},counter:h}}))}originate(e,t){var{fee:r,storageLimit:n,gasLimit:i}=e,o=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),a=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getAccountLimits(e,a),c=yield F1(yield this.context.parser.prepareCodeOrigination(Object.assign(Object.assign({},o),B2({fee:r,storageLimit:n,gasLimit:i},s)))),l=yield this.addRevealOperationIfNeeded(c,e),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();s1(this,z2,{},"f");const f=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,e,t),protocol:h},counter:f}}))}transaction(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(e,o),s=yield $1(Object.assign(Object.assign({},i),B2({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();s1(this,z2,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}delegation(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(e,o),s=yield H1(Object.assign(Object.assign({},i),B2({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();s1(this,z2,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}registerDelegate({fee:e,storageLimit:t,gasLimit:r},n){return o1(this,void 0,void 0,(function*(){const{pkh:i}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(i,o),s=B2({fee:e,storageLimit:t,gasLimit:r},a),c=yield(({fee:e=b1,gasLimit:t=h1,storageLimit:r=S1},n)=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.DELEGATION,fee:e,gas_limit:t,storage_limit:r,delegate:n}})))({fee:s.fee,storageLimit:s.storageLimit,gasLimit:s.gasLimit},i),l=yield this.addRevealOperationIfNeeded(c,i),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();s1(this,z2,{},"f");const f=parseInt(yield this.getHeadCounter(i),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,i,n),protocol:h},counter:f}}))}registerGlobalConstant(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(e,o),s=yield q1(Object.assign(Object.assign({},i),B2({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();s1(this,z2,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}updateConsensusKey(e,t){var{fee:r,storageLimit:n,gasLimit:i}=e,o=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),a=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getAccountLimits(e,a),c=yield(({source:e,fee:t,gasLimit:r,storageLimit:n,pk:i})=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.UPDATE_CONSENSUS_KEY,source:e,fee:t,gas_limit:r,storage_limit:n,pk:i}})))(Object.assign(Object.assign({},o),B2({fee:r,storageLimit:n,gasLimit:i},s))),l=yield this.addRevealOperationIfNeeded(c,e),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();s1(this,z2,{},"f");const f=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,e,t),protocol:h},counter:f}}))}increasePaidStorage(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(e,o),s=yield W1(Object.assign(Object.assign({},i),B2({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();s1(this,z2,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}ballot(e){return o1(this,void 0,void 0,(function*(){const{pkh:t}=yield this.getKeys(),r=yield(({source:e,proposal:t,ballot:r})=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.BALLOT,source:e,proposal:t,ballot:r}})))(Object.assign({},e)),n=this.convertIntoArray(r),i=yield this.getBlockHash(),o=yield this.getProtocolHash();s1(this,z2,{},"f");const a=parseInt(yield this.getHeadCounter(t),10);let s;try{s=yield this.rpc.getCurrentPeriod()}catch(c){throw new d2("Failed to get the current voting period index")}return{opOb:{branch:i,contents:this.constructOpContents(n,a,t,void 0,s),protocol:o},counter:a}}))}proposals(e){return o1(this,void 0,void 0,(function*(){const{pkh:t}=yield this.getKeys(),r=yield(({source:e,proposals:t})=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.PROPOSALS,source:e,proposals:t}})))(Object.assign({},e)),n=this.convertIntoArray(r),i=yield this.getBlockHash(),o=yield this.getProtocolHash();s1(this,z2,{},"f");const a=parseInt(yield this.getHeadCounter(t),10);let s;try{s=yield this.rpc.getCurrentPeriod()}catch(c){throw new d2("Failed to get the current voting period index")}return{opOb:{branch:i,contents:this.constructOpContents(n,a,t,void 0,s),protocol:o},counter:a}}))}drainDelegate(e,t){return o1(this,void 0,void 0,(function*(){const{pkh:r}=yield this.getKeys(),n=yield(({consensus_key:e,delegate:t,destination:r})=>o1(void 0,void 0,void 0,(function*(){return{kind:mW.DRAIN_DELEGATE,consensus_key:e,delegate:t,destination:r}})))(Object.assign({},e)),i=this.convertIntoArray(n),o=yield this.getBlockHash(),a=yield this.getProtocolHash();s1(this,z2,{},"f");const s=parseInt(yield this.getHeadCounter(r),10);return{opOb:{branch:o,contents:this.constructOpContents(i,s,r,t),protocol:a},counter:s}}))}transferTicket(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(e,o),s=yield K1(Object.assign(Object.assign({},i),B2({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();s1(this,z2,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}smartRollupAddMessages(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(e,o),s=yield G1(Object.assign(Object.assign({},i),B2({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();s1(this,z2,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}smartRollupOriginate(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.rpc.getOriginationProof({kind:i.pvmKind,kernel:i.kernel}),a=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getAccountLimits(e,a),c=yield Z1(Object.assign(Object.assign(Object.assign({},B2({fee:t,storageLimit:r,gasLimit:n},s)),i),{originationProof:o})),l=yield this.addRevealOperationIfNeeded(c,e),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();s1(this,z2,{},"f");const f=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,e,i.source),protocol:h},counter:f}}))}batch(e,t){return o1(this,void 0,void 0,(function*(){const{pkh:r,publicKey:n}=yield this.getKeys(),i=yield this.context.readProvider.getProtocolConstants("head"),o=yield this.getAccountLimits(r,i,e.length),a=yield this.isRevealOpNeeded(e,r),s=[];if(t)for(const d of e)if(Q1(d)){const e=t.shift(),r=B2(d,{fee:e.suggestedFeeMutez,storageLimit:e.storageLimit,gasLimit:e.gasLimit});s.push(yield this.getRPCOp(Object.assign(Object.assign({},d),r)))}else s.push(Object.assign({},d));else for(const t of e)if(Q1(t)){const e=B2(t,o);s.push(yield this.getRPCOp(Object.assign(Object.assign({},t),e)))}else s.push(Object.assign({},t));if(a){if(!n)throw new ws(r);s.unshift(yield V1({fee:_1,storageLimit:A1,gasLimit:T1(r)},r,n))}const c=yield this.getBlockHash(),l=yield this.getProtocolHash();s1(this,z2,{},"f");const u=parseInt(yield this.getHeadCounter(r),10);return{opOb:{branch:c,contents:this.constructOpContents(s,u,r),protocol:l},counter:u}}))}contractCall(e){var t,r,n;return o1(this,void 0,void 0,(function*(){const i=yield this.getBlockHash(),o=yield this.getProtocolHash(),{pkh:a}=yield this.getKeys();s1(this,z2,{},"f");const s=parseInt(yield this.getHeadCounter(a),10),c=e.toTransferParams(),l=yield this.context.readProvider.getProtocolConstants("head"),u=yield this.getAccountLimits(a,l),d=B2({fee:c.fee,storageLimit:c.storageLimit,gasLimit:c.gasLimit},u),h={kind:mW.TRANSACTION,fee:null!==(t=c.fee)&&void 0!==t?t:d.fee,gas_limit:null!==(r=c.gasLimit)&&void 0!==r?r:d.gasLimit,storage_limit:null!==(n=c.storageLimit)&&void 0!==n?n:d.storageLimit,amount:String(c.amount),destination:c.to,parameters:c.parameter},f=yield this.addRevealOperationIfNeeded(h,a),p=this.convertIntoArray(f);return{opOb:{branch:i,contents:this.constructOpContents(p,s,a),protocol:o},counter:s}}))}toPreapply(e){return o1(this,void 0,void 0,(function*(){const{opOb:{contents:t,branch:r,protocol:n}}=e,i=this.toForge(e),o=yield this.context.forger.forge(i);return[{contents:t,branch:r,protocol:n,signature:(yield this.context.signer.sign(o,new Uint8Array([3]))).prefixSig}]}))}toForge({opOb:{contents:e,branch:t}}){return{branch:t,contents:e}}}z2=new WeakMap;const F2=[mW.ACTIVATION,mW.ORIGINATION,mW.TRANSACTION,mW.DELEGATION];class $2 extends p2{constructor(e,t){super(e),this.estimator=t,this.operations=[],this.prepare=new U2(this.context)}withTransfer(e){const t=oc(e.to);if(e.amount<0)throw new as(e.amount.toString());if(t!==Zs.VALID)throw new is(e.to,hc(t));return this.operations.push(Object.assign({kind:mW.TRANSACTION},e)),this}withTransferTicket(e){const t=oc(e.destination);if(t!==Zs.VALID)throw new is(e.destination,hc(t));return this.operations.push(Object.assign({kind:mW.TRANSFER_TICKET},e)),this}withContractCall(e,t={}){return this.withTransfer(e.toTransferParams(t))}withDelegation(e){var t;const r=oc(e.source);if(e.source&&r!==Zs.VALID)throw new is(e.source,hc(r));const n=oc(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&n!==Zs.VALID)throw new is(e.delegate,hc(n));return this.operations.push(Object.assign({kind:mW.DELEGATION},e)),this}withActivation({pkh:e,secret:t}){const r=cc(e);if(r!==Zs.VALID)throw new ms(e,hc(r));return this.operations.push({kind:mW.ACTIVATION,pkh:e,secret:t}),this}withOrigination(e){return this.operations.push(Object.assign({kind:mW.ORIGINATION},e)),this}withRegisterGlobalConstant(e){return this.operations.push(Object.assign({kind:mW.REGISTER_GLOBAL_CONSTANT},e)),this}withIncreasePaidStorage(e){return this.operations.push(Object.assign({kind:mW.INCREASE_PAID_STORAGE},e)),this}withSmartRollupAddMessages(e){return this.operations.push(Object.assign({kind:mW.SMART_ROLLUP_ADD_MESSAGES},e)),this}withSmartRollupOriginate(e){return this.operations.push(Object.assign({kind:mW.SMART_ROLLUP_ORIGINATE},e)),this}getRPCOp(e){return o1(this,void 0,void 0,(function*(){switch(e.kind){case mW.TRANSACTION:return $1(Object.assign({},e));case mW.ORIGINATION:return F1(yield this.context.parser.prepareCodeOrigination(Object.assign({},e)));case mW.DELEGATION:return H1(Object.assign({},e));case mW.REGISTER_GLOBAL_CONSTANT:return q1(Object.assign({},e));case mW.INCREASE_PAID_STORAGE:return W1(Object.assign({},e));case mW.TRANSFER_TICKET:return K1(Object.assign({},e));case mW.SMART_ROLLUP_ADD_MESSAGES:return G1(Object.assign({},e));case mW.SMART_ROLLUP_ORIGINATE:return Z1(Object.assign({},e));default:throw new vs(JSON.stringify(e.kind))}}))}with(e){for(const t of e)switch(t.kind){case mW.TRANSACTION:this.withTransfer(t);break;case mW.ORIGINATION:this.withOrigination(t);break;case mW.DELEGATION:this.withDelegation(t);break;case mW.ACTIVATION:this.withActivation(t);break;case mW.REGISTER_GLOBAL_CONSTANT:this.withRegisterGlobalConstant(t);break;case mW.INCREASE_PAID_STORAGE:this.withIncreasePaidStorage(t);break;case mW.TRANSFER_TICKET:this.withTransferTicket(t);break;case mW.SMART_ROLLUP_ADD_MESSAGES:this.withSmartRollupAddMessages(t);break;case mW.SMART_ROLLUP_ORIGINATE:this.withSmartRollupOriginate(t);break;default:throw new vs(JSON.stringify(t.kind))}return this}send(e){return o1(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=e&&e.source||t,n=yield this.estimator.batch(this.operations);n.length!==this.operations.length&&n.shift();const i=yield this.prepare.batch(this.operations,n),o=yield this.forge(i),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new f2(a,i.opOb.contents,r,c,l,s)}))}}class H2{constructor(e,t){this.context=e,this.estimator=t}batch(e){const t=new $2(this.context,this.estimator);return Array.isArray(e)&&t.with(e),t}}class V2 extends b2{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t,this.getOriginatedContractAddresses=()=>o1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e){const t=e.filter((e=>"origination"===e.kind));let r=[];for(const e of t)e.metadata.operation_result.originated_contracts&&(r=[...r,...e.metadata.operation_result.originated_contracts]);return r}throw new y2("Unable to fetch operation results")}))}revealOperation(){return o1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===mW.REVEAL));throw new y2("Unable to fetch operation results")}))}status(){return o1(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.operationResults();if(e)return e.filter((e=>-1!==F2.indexOf(e.kind))).map((e=>{if(r2(e)){return e.metadata.operation_result.status}return"unknown"}))[0]||"unknown";throw new y2("Unable to fetch operation results")}))}}class q2 extends b2{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}revealOperation(){return o1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===mW.REVEAL));throw new y2("Unable to fetch operation result")}))}increasePaidStorageOperation(){return o1(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===mW.INCREASE_PAID_STORAGE));throw new y2("Unable to fetch operation result")}))}status(){return o1(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.increasePaidStorageOperation();return e?e.metadata.operation_result.status:"unknown"}))}}const K2=(e,t,r)=>{return e.pipe((n=1e3*t.config.confirmationPollingTimeoutSecond,function(e){return new XW(null).pipe(JG({each:n,with:()=>JW((()=>new u2("Confirmation polling timed out")))}),DG((()=>e)))}),nZ({connector:()=>new YW(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1}));var n};class W2{constructor(e){this.context=e,this.sharedHeadObs=uG((()=>d1(this.context.stream.subscribeBlock("head"))))}createNewHeadObservable(){return o1(this,void 0,void 0,(function*(){return K2(this.sharedHeadObs,this.context)}))}createPastBlockWalker(e,t=1){return EG(this.context.readProvider.getBlock(e)).pipe(YG((e=>1===t?AG(e):hG(e.header.level,t-1).pipe(function(){for(var e=[],t=0;to1(this,void 0,void 0,(function*(){return this.context.readProvider.getBlock("number"===typeof e?e:e.header.level)}))))))))}createHeadObservableFromConfig({blockIdentifier:e}){return o1(this,void 0,void 0,(function*(){const t=[];return e&&t.push(this.createPastBlockWalker(e)),t.push(yield this.createNewHeadObservable()),BG(...t)}))}createOperation(e,t={}){return o1(this,void 0,void 0,(function*(){return new b2(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createBatchOperation(e,t={}){return o1(this,void 0,void 0,(function*(){return new V2(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createTransactionOperation(e,t={}){return o1(this,void 0,void 0,(function*(){return new w2(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createDelegationOperation(e,t={}){return o1(this,void 0,void 0,(function*(){return new _2(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createOriginationOperation(e,t={}){return o1(this,void 0,void 0,(function*(){return new x2(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createIncreasePaidStorageOperation(e,t={}){return o1(this,void 0,void 0,(function*(){return new q2(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}}class G2 extends p2{constructor(e){super(e),this.prepare=new U2(this.context)}getBalance(e){return o1(this,void 0,void 0,(function*(){const t=oc(e);if(t!==Zs.VALID)throw new is(e,hc(t));return this.context.readProvider.getBalance(e,"head")}))}getDelegate(e){return o1(this,void 0,void 0,(function*(){const t=oc(e);if(t!==Zs.VALID)throw new is(e,hc(t));return this.context.readProvider.getDelegate(e,"head")}))}activate(e,t){return o1(this,void 0,void 0,(function*(){const r=cc(e);if(r!==Zs.VALID)throw new ms(e,hc(r));const n=yield this.prepare.activate({pkh:e,secret:t}),i=yield this.forge(n),o=`${i.opbytes}00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000`;return new h2(yield this.rpc.injectOperation(o),Object.assign(Object.assign({},i),{opbytes:o}),[],this.context.clone())}))}}const Z2=100;class Y2{constructor(e,t,r,n,i=100){this._milligasLimit=e,this._storageLimit=t,this.opSize=r,this.minimalFeePerStorageByteMutez=n,this.baseFeeMutez=i}get burnFeeMutez(){return this.roundUp(Number(this.storageLimit)*Number(this.minimalFeePerStorageByteMutez))}get storageLimit(){const e=Math.max(Number(this._storageLimit),0);return e>0?e:0}get gasLimit(){return this.roundUp(Number(this._milligasLimit)/1e3+100)}get operationFeeMutez(){return.1*(Number(this._milligasLimit)/1e3+100)+1*Number(this.opSize)}roundUp(e){return Math.ceil(Number(e))}get minimalFeeMutez(){return this.roundUp(Z2+this.operationFeeMutez)}get suggestedFeeMutez(){return this.roundUp(this.operationFeeMutez+200)}get usingBaseFeeMutez(){return Math.max(Number(this.baseFeeMutez),Z2)+this.roundUp(this.operationFeeMutez)}get totalCost(){return this.minimalFeeMutez+this.burnFeeMutez}get consumedMilligas(){return Number(this._milligasLimit)}static createEstimateInstanceFromProperties(e){let t,r=0,n=0,i=0,o=0;return e.forEach((e=>{r+=e.milligasLimit,n+=e.storageLimit,i+=e.opSize,o=Math.max(e.minimalFeePerStorageByteMutez,o),e.baseFeeMutez&&(t=t?t+e.baseFeeMutez:e.baseFeeMutez)})),new Y2(r,n,i,o,t)}static createArrayEstimateInstancesFromProperties(e){return e.map((e=>new Y2(e.milligasLimit,e.storageLimit,e.opSize,e.minimalFeePerStorageByteMutez,e.baseFeeMutez)))}}class X2 extends Ja{constructor(){super(),this.name="RevealEstimateError",this.message="Public key is unknown, unable to estimate the reveal operation in Wallet API."}}class J2 extends p2{constructor(){super(...arguments),this.ALLOCATION_STORAGE=257,this.ORIGINATION_STORAGE=257,this.OP_SIZE_REVEAL=128,this.prepare=new U2(this.context)}getKeys(){return o1(this,void 0,void 0,(function*(){const e=this.context.isAnySignerConfigured();return{publicKeyHash:e?yield this.signer.publicKeyHash():yield this.context.walletProvider.getPKH(),publicKey:e?yield this.signer.publicKey():void 0}}))}getEstimationPropertiesFromOperationContent(e,t,r){const n=o2({contents:[e]});let i=0,o=0;return n.forEach((e=>{o+="originated_contracts"in e&&"undefined"!==typeof e.originated_contracts?e.originated_contracts.length*this.ORIGINATION_STORAGE:0,o+="allocated_destination_contract"in e?this.ALLOCATION_STORAGE:0,i+=Number(e.consumed_milligas)||0,o+="paid_storage_size_diff"in e&&Number(e.paid_storage_size_diff)||0,o+="storage_size"in e&&"global_address"in e&&Number(e.storage_size)||0,o+="genesis_commitment_hash"in e?Number(e.size):0})),Q1(e)?{milligasLimit:i||0,storageLimit:Number(o||0),opSize:t,minimalFeePerStorageByteMutez:r.toNumber()}:{milligasLimit:0,storageLimit:0,opSize:t,minimalFeePerStorageByteMutez:r.toNumber(),baseFeeMutez:0}}calculateEstimates(e,t){return o1(this,void 0,void 0,(function*(){const{opbytes:r,opOb:{branch:n,contents:i}}=yield this.forge(e),o={operation:{branch:n,contents:i},chain_id:yield this.context.readProvider.getChainId()},{opResponse:a}=yield this.simulate(o),{cost_per_byte:s}=t,c=[...a2(a,"backtracked"),...a2(a)];if(c.length)throw new n2(c,"Error occurred during estimation");let l=1;return Array.isArray(e.opOb.contents)&&e.opOb.contents.length>1&&(l="reveal"===a.contents[0].kind?e.opOb.contents.length-1:e.opOb.contents.length),a.contents.map((e=>this.getEstimationPropertiesFromOperationContent(e,"reveal"===e.kind?this.OP_SIZE_REVEAL/2:r.length/2/l,s)))}))}originate(e){return o1(this,void 0,void 0,(function*(){const t=yield this.prepare.originate(e),r=yield this.context.readProvider.getProtocolConstants("head"),n=yield this.calculateEstimates(t,r);return"reveal"===t.opOb.contents[0].kind&&n.shift(),Y2.createEstimateInstanceFromProperties(n)}))}transfer(e){var t,{fee:r,storageLimit:n,gasLimit:i}=e,o=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){const e=oc(o.to);if(e!==Zs.VALID)throw new is(o.to,hc(e));const a=oc(null!==(t=o.source)&&void 0!==t?t:"");if(o.source&&a!==Zs.VALID)throw new is(o.source,hc(a));if(o.amount<0)throw new as(o.amount.toString());const s=yield this.prepare.transaction(Object.assign({fee:r,storageLimit:n,gasLimit:i},o)),c=yield this.context.readProvider.getProtocolConstants("head"),l=yield this.calculateEstimates(s,c);return"reveal"===s.opOb.contents[0].kind&&l.shift(),Y2.createEstimateInstanceFromProperties(l)}))}transferTicket(e){var t,{fee:r,storageLimit:n,gasLimit:i}=e,o=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){const e=oc(o.destination);if(e!==Zs.VALID)throw new is(o.destination,hc(e));const a=oc(null!==(t=o.source)&&void 0!==t?t:"");if(o.source&&a!==Zs.VALID)throw new is(o.source,hc(a));const s=yield this.context.readProvider.getProtocolConstants("head"),c=yield this.prepare.transferTicket(Object.assign({fee:r,storageLimit:n,gasLimit:i},o)),l=yield this.calculateEstimates(c,s);return"reveal"===c.opOb.contents[0].kind&&l.shift(),Y2.createEstimateInstanceFromProperties(l)}))}setDelegate(e){var t,{fee:r,gasLimit:n,storageLimit:i}=e,o=i1(e,["fee","gasLimit","storageLimit"]);return o1(this,void 0,void 0,(function*(){const e=oc(o.source);if(o.source&&e!==Zs.VALID)throw new is(o.source,hc(e));const a=oc(null!==(t=o.delegate)&&void 0!==t?t:"");if(o.delegate&&a!==Zs.VALID)throw new is(o.delegate,hc(a));const s=yield this.prepare.delegation(Object.assign({fee:r,storageLimit:i,gasLimit:n},o)),c=yield this.context.readProvider.getProtocolConstants("head"),l=yield this.calculateEstimates(s,c);return"reveal"===s.opOb.contents[0].kind&&l.shift(),Y2.createEstimateInstanceFromProperties(l)}))}batch(e){return o1(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.batch(e),n=yield this.calculateEstimates(r,t);return Y2.createArrayEstimateInstancesFromProperties(n)}))}registerDelegate(e,t){var{fee:r,storageLimit:n,gasLimit:i}=e,o=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){const e=(yield this.getKeys()).publicKeyHash,a=yield this.context.readProvider.getProtocolConstants("head"),s=t||e,c=yield this.prepare.registerDelegate(Object.assign({fee:r,storageLimit:n,gasLimit:i},o),s),l=yield this.calculateEstimates(c,a);return"reveal"===c.opOb.contents[0].kind&&l.shift(),Y2.createEstimateInstanceFromProperties(l)}))}reveal(e){return o1(this,void 0,void 0,(function*(){const{publicKeyHash:t,publicKey:r}=yield this.getKeys();if(!r)throw new X2;if(yield this.isAccountRevealRequired(t)){const t=yield this.context.readProvider.getProtocolConstants("head"),r=e?yield this.prepare.reveal(e):yield this.prepare.reveal({}),n=yield this.calculateEstimates(r,t);return Y2.createEstimateInstanceFromProperties(n)}}))}registerGlobalConstant(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){const e=yield this.prepare.registerGlobalConstant(Object.assign({fee:t,storageLimit:r,gasLimit:n},i)),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.calculateEstimates(e,o);return"reveal"===e.opOb.contents[0].kind&&a.shift(),Y2.createEstimateInstanceFromProperties(a)}))}increasePaidStorage(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=i1(e,["fee","storageLimit","gasLimit"]);return o1(this,void 0,void 0,(function*(){if(i.amount<0)throw new as(i.amount.toString());const e=yield this.context.readProvider.getProtocolConstants("head"),o=yield this.prepare.increasePaidStorage(Object.assign({fee:t,storageLimit:r,gasLimit:n},i)),a=yield this.calculateEstimates(o,e);return"reveal"===o.opOb.contents[0].kind&&a.shift(),Y2.createEstimateInstanceFromProperties(a)}))}updateConsensusKey(e){return o1(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.updateConsensusKey(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&n.shift(),Y2.createEstimateInstanceFromProperties(n)}))}smartRollupAddMessages(e){return o1(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.smartRollupAddMessages(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&n.shift(),Y2.createEstimateInstanceFromProperties(n)}))}smartRollupOriginate(e){return o1(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.smartRollupOriginate(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&n.shift(),Y2.createEstimateInstanceFromProperties(n)}))}contractCall(e){return o1(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.contractCall(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&n.shift(),Y2.createEstimateInstanceFromProperties(n)}))}}class Q2 extends h2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"delegation"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get delegate(){return this.params.delegate}get isRegisterOperation(){return this.delegate===this.source}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return Bs.config({DECIMAL_PLACES:0,ROUNDING_MODE:Bs.ROUND_UP}),this.consumedMilliGas?new Bs(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class e3 extends h2{constructor(e,t,r,n,i,o){super(e,r,n,i),this.params=t,this.contractProvider=o;const a=this.operationResults&&this.operationResults.originated_contracts;Array.isArray(a)&&(this.contractAddress=a[0])}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"origination"===e.kind)),t=e&&r2(e)&&e.metadata.operation_result;return t||void 0}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return Bs.config({DECIMAL_PLACES:0,ROUNDING_MODE:Bs.ROUND_UP}),this.consumedMilliGas?new Bs(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get storageDiff(){const e=this.operationResults&&this.operationResults.paid_storage_size_diff;return e||void 0}get storageSize(){const e=this.operationResults&&this.operationResults.storage_size;return e||void 0}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}contract(e,t){return o1(this,void 0,void 0,(function*(){if(!this.contractAddress)throw new s2("No contract was originated in this operation");return yield this.confirmation(e,t),this.contractProvider.at(this.contractAddress)}))}}class t3 extends h2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r,this.globalConstantHash=this.operationResults&&this.operationResults.global_address}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"register_global_constant"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get registeredExpression(){return this.params.value}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}get consumedGas(){return Bs.config({DECIMAL_PLACES:0,ROUNDING_MODE:Bs.ROUND_UP}),this.consumedMilliGas?new Bs(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}}class r3 extends h2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"reveal"===e.kind));return e?[e]:[]}get status(){const e=this.operationResults[0];return e?e.metadata.operation_result.status:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get publicKey(){return this.params.public_key}sumProp(e,t){return e.reduce(((e,r)=>t in r?Number(r[t])+e:e),0)}get consumedGas(){return Bs.config({DECIMAL_PLACES:0,ROUNDING_MODE:Bs.ROUND_UP}),new Bs(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(o2({contents:this.operationResults}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(o2({contents:this.operationResults}),"paid_storage_size_diff"))}get storageSize(){return String(this.sumProp(o2({contents:this.operationResults}),"storage_size"))}get errors(){return a2({contents:this.operationResults})}}class n3 extends h2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"transaction"===e.kind));return e?[e]:[]}get status(){const e=this.operationResults[0];return e?e.metadata.operation_result.status:"unknown"}get amount(){return new Us(this.params.amount)}get destination(){return this.params.destination}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}sumProp(e,t){return e.reduce(((e,r)=>t in r?Number(r[t])+e:e),0)}get consumedGas(){return Us.config({DECIMAL_PLACES:0,ROUNDING_MODE:Us.ROUND_UP}),new Us(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(o2({contents:this.operationResults}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(o2({contents:this.operationResults}),"paid_storage_size_diff"))}get storageSize(){return String(this.sumProp(o2({contents:this.operationResults}),"storage_size"))}get errors(){return a2({contents:this.operationResults})}}class i3 extends h2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"ballot"===e.kind));return e||void 0}get period(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.period}get proposal(){return this.params.proposal}get ballot(){return this.params.ballot}}class o3 extends h2{constructor(e,t,r,n,i){super(e,r,n,i),this.params=t}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"drain_delegate"===e.kind)),t=e&&e.metadata&&e.metadata.balance_updates;return t||void 0}get consensusKey(){return this.params.consensus_key}get delegate(){return this.params.delegate}get destination(){return this.params.destination}}class a3 extends h2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>e.kind===mW.TRANSFER_TICKET)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return Bs.config({DECIMAL_PLACES:0,ROUNDING_MODE:Bs.ROUND_UP}),this.consumedMilliGas?new Bs(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}}class s3 extends h2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"increase_paid_storage"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get amount(){return this.params.amount}get destination(){return this.params.destination}}class c3 extends h2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"proposals"===e.kind));return e||void 0}get proposals(){return this.params.proposals}get period(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.period}}class l3 extends h2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"update_consensus_key"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get pk(){return this.params.pk}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class u3 extends h2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"smart_rollup_add_messages"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get message(){return this.params.message}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class d3 extends h2{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>e.kind===mW.SMART_ROLLUP_ORIGINATE)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get pvmKind(){return this.params.pvm_kind}get kernel(){return this.params.kernel}get originationProof(){return this.params.origination_proof}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class h3 extends p2{constructor(e,t){super(e),this.estimator=t,this.contractProviderTypeSymbol=Symbol.for("taquito-contract-provider-type-symbol"),this.prepare=new U2(this.context)}getStorage(e,t){return o1(this,void 0,void 0,(function*(){const r=sc(e);if(r!==Zs.VALID)throw new fs(e,hc(r));const n=yield this.context.readProvider.getScript(e,"head");let i;return t||(t=n),i=uX.isSchema(t)?t:uX.fromRPCResponse({script:t}),i.Execute(n.storage,D2(this))}))}getBigMapKey(e,t,r){return o1(this,void 0,void 0,(function*(){const n=sc(e);if(n!==Zs.VALID)throw new fs(e,hc(n));let i;r||(r=(yield this.rpc.getContract(e)).script),i=uX.isSchema(r)?r:uX.fromRPCResponse({script:r});const o=i.EncodeBigMapKey(t),a=yield this.rpc.getBigMapKey(e,o);return i.ExecuteOnBigMapValue(a)}))}getBigMapKeyByID(e,t,r,n){return o1(this,void 0,void 0,(function*(){const{key:i,type:o}=r.EncodeBigMapKey(t),{packed:a}=yield this.context.packer.packData({data:i,type:o}),s=function(e){return vc(Za().blake2b(_c(e),void 0,32),Ks.expr)}(a),c=n?yield this.context.readProvider.getBigMapValue({id:e.toString(),expr:s},n):yield this.context.readProvider.getBigMapValue({id:e.toString(),expr:s},"head");return r.ExecuteOnBigMapValue(c,D2(this))}))}getBigMapKeysByID(e,t,r,n,i=5){return o1(this,void 0,void 0,(function*(){const o=yield this.getBlockForRequest(t,n),a=new PZ;let s=0,c=[];for(;sthis.getBigMapValueOrUndefined(t,e,r,o)));c=[...c,...yield Promise.all(n)],s+=i}for(let e=0;ee.kind===mW.ORIGINATION)),i=yield this.forge(r),{hash:o,context:a,forgedBytes:s,opResponse:c}=yield this.signAndInject(i);return new e3(o,n,s,c,a,this)}))}setDelegate(e){var t;return o1(this,void 0,void 0,(function*(){const r=oc(e.source);if(e.source&&r!==Zs.VALID)throw new is(e.source,hc(r));const n=oc(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&n!==Zs.VALID)throw new is(e.delegate,hc(n));if(/kt1/i.test(e.source))throw new R1(e.source);const i=yield this.signer.publicKeyHash(),o=e.source||i,a=yield this.estimate(e,this.estimator.setDelegate.bind(this.estimator)),s=yield this.prepare.delegation(Object.assign(Object.assign({},e),a)),c=s.opOb.contents.find((e=>e.kind===mW.DELEGATION)),l=yield this.forge(s),{hash:u,context:d,forgedBytes:h,opResponse:f}=yield this.signAndInject(l);return new Q2(u,c,o,h,f,d)}))}registerDelegate(e){return o1(this,void 0,void 0,(function*(){const t=yield this.estimate(e,this.estimator.registerDelegate.bind(this.estimator)),r=yield this.signer.publicKeyHash(),n=yield this.prepare.registerDelegate(Object.assign(Object.assign({},e),t)),i=n.opOb.contents.find((e=>e.kind===mW.DELEGATION)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new Q2(a,i,r,c,l,s)}))}transfer(e){var t;return o1(this,void 0,void 0,(function*(){const r=oc(e.to);if(r!==Zs.VALID)throw new is(e.to,hc(r));const n=oc(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&n!==Zs.VALID)throw new is(e.source,hc(n));if(e.amount<0)throw new as(e.amount.toString());const i=yield this.signer.publicKeyHash(),o=yield this.estimate(e,this.estimator.transfer.bind(this.estimator)),a=e.source||i,s=yield this.prepare.transaction(Object.assign(Object.assign({},e),o)),c=s.opOb.contents.find((e=>e.kind===mW.TRANSACTION)),l=yield this.forge(s),{hash:u,context:d,forgedBytes:h,opResponse:f}=yield this.signAndInject(l);return new n3(u,c,a,h,f,d)}))}transferTicket(e){var t,r;return o1(this,void 0,void 0,(function*(){const n=oc(e.destination);if(n!==Zs.VALID)throw new is(e.destination,hc(n));const i=oc(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&i!==Zs.VALID)throw new is(e.source,hc(i));const o=yield this.signer.publicKeyHash(),a=null!==(r=e.source)&&void 0!==r?r:o,s=yield this.estimate(e,this.estimator.transferTicket.bind(this.estimator)),c=yield this.prepare.transferTicket(Object.assign(Object.assign({},e),s)),l=c.opOb.contents.find((e=>e.kind===mW.TRANSFER_TICKET)),u=yield this.forge(c),{hash:d,context:h,forgedBytes:f,opResponse:p}=yield this.signAndInject(u);return new a3(d,l,a,f,p,h)}))}reveal(e){return o1(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimator.reveal(e);if(r){const n=yield this.estimate(e,(()=>o1(this,void 0,void 0,(function*(){return r})))),i=yield this.prepare.reveal(Object.assign(Object.assign({},e),n)),o=i.opOb.contents.find((e=>e.kind===mW.REVEAL)),a=yield this.forge(i),{hash:s,context:c,forgedBytes:l,opResponse:u}=yield this.signAndInject(a);return new r3(s,o,t,l,u,c)}throw new z1(`The publicKeyHash '${t}' has already been revealed.`)}))}registerGlobalConstant(e){return o1(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.registerGlobalConstant.bind(this.estimator)),n=yield this.prepare.registerGlobalConstant(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===mW.REGISTER_GLOBAL_CONSTANT)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new t3(a,i,t,c,l,s)}))}increasePaidStorage(e){return o1(this,void 0,void 0,(function*(){if(e.amount<0)throw new as(e.amount.toString());const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.increasePaidStorage.bind(this.estimator)),n=yield this.prepare.increasePaidStorage(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===mW.INCREASE_PAID_STORAGE)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new s3(a,i,t,c,l,s)}))}drainDelegate(e){return o1(this,void 0,void 0,(function*(){const t=yield this.prepare.drainDelegate(e),r=t.opOb.contents.find((e=>e.kind===mW.DRAIN_DELEGATE)),n=yield this.forge(t),{hash:i,context:o,forgedBytes:a,opResponse:s}=yield this.signAndInject(n);return new o3(i,r,a,s,o)}))}ballot(e){var t,r;return o1(this,void 0,void 0,(function*(){const n=yield this.signer.publicKeyHash(),i=oc(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&i!==Zs.VALID)throw new is(e.source,hc(i));const o=null!==(r=e.source)&&void 0!==r?r:n,a=yield this.prepare.ballot(Object.assign(Object.assign({},e),{source:o})),s=a.opOb.contents.find((e=>e.kind===mW.BALLOT)),c=yield this.forge(a),{hash:l,context:u,forgedBytes:d,opResponse:h}=yield this.signAndInject(c);return new i3(l,s,n,d,h,u)}))}proposals(e){var t,r;return o1(this,void 0,void 0,(function*(){const n=yield this.signer.publicKeyHash(),i=oc(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&i!==Zs.VALID)throw new is(e.source,hc(i));const o=null!==(r=e.source)&&void 0!==r?r:n,a=yield this.prepare.proposals(Object.assign(Object.assign({},e),{source:o})),s=a.opOb.contents.find((e=>e.kind===mW.PROPOSALS)),c=yield this.forge(a),{hash:l,context:u,forgedBytes:d,opResponse:h}=yield this.signAndInject(c);return new c3(l,s,n,d,h,u)}))}updateConsensusKey(e){return o1(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.updateConsensusKey.bind(this.estimator)),n=yield this.prepare.updateConsensusKey(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===mW.UPDATE_CONSENSUS_KEY)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new l3(a,i,t,c,l,s)}))}smartRollupAddMessages(e){return o1(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.smartRollupAddMessages.bind(this.estimator)),n=yield this.prepare.smartRollupAddMessages(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===mW.SMART_ROLLUP_ADD_MESSAGES)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new u3(a,i,t,c,l,s)}))}smartRollupOriginate(e){return o1(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.smartRollupOriginate.bind(this.estimator)),n=yield this.rpc.getOriginationProof({kind:e.pvmKind,kernel:e.kernel}),i=Object.assign(Object.assign({},e),{originationProof:n}),o=yield this.prepare.smartRollupOriginate(Object.assign(Object.assign({},i),r)),a=o.opOb.contents.find((e=>e.kind===mW.SMART_ROLLUP_ORIGINATE)),s=yield this.forge(o),{hash:c,context:l,forgedBytes:u,opResponse:d}=yield this.signAndInject(s);return new d3(c,a,t,u,d,l)}))}failingNoop(e){return o1(this,void 0,void 0,(function*(){const t={kind:mW.FAILING_NOOP,arbitrary:e.arbitrary},r=yield this.context.readProvider.getBlockHash(e.basedOnBlock),n=yield this.context.forger.forge({branch:r,contents:[t]}),{prefixSig:i}=yield this.signer.sign(n,new Uint8Array([3]));return{signature:i,bytes:n,signedContent:{branch:r,contents:[{kind:mW.FAILING_NOOP,arbitrary:e.arbitrary}]}}}))}at(e,t=(e=>e)){return o1(this,void 0,void 0,(function*(){const r=sc(e);if(r!==Zs.VALID)throw new fs(e,hc(r));const n=this.context.withExtensions().rpc,i=this.context.withExtensions().readProvider,o=yield i.getScript(e,"head"),a=yield i.getEntrypoints(e),s=new C2(e,o,this,this,a,n,i);return t(s,this.context)}))}batch(e){const t=new $2(this.context,this.estimator);return Array.isArray(e)&&t.with(e),t}}class f3{constructor(e){this.context=e}getNextProto(){return o1(this,void 0,void 0,(function*(){if(!this.context.proto){const e=yield this.context.readProvider.getNextProtocol("head");this.context.proto=e}return this.context.proto}))}parseScript(e){return o1(this,void 0,void 0,(function*(){return new XX({protocol:yield this.getNextProto()}).parseScript(e)}))}parseMichelineExpression(e){return o1(this,void 0,void 0,(function*(){return new XX({protocol:yield this.getNextProto()}).parseMichelineExpression(e)}))}parseJSON(e){return o1(this,void 0,void 0,(function*(){return new XX({protocol:yield this.getNextProto()}).parseJSON(e)}))}prepareCodeOrigination(e){return o1(this,void 0,void 0,(function*(){const t=e;if(t.code=yield this.formatCodeParam(e.code),e.init)t.init=yield this.formatInitParam(e.init);else if(e.storage){const r=t.code.find((e=>"prim"in e&&"storage"===e.prim));if(!(null===r||void 0===r?void 0:r.args))throw new I1("The storage section is missing from the script",e.code);const n=new uX(r.args[0]),i=yield this.findGlobalConstantsHashAndValue(n);if(0!==Object.keys(i).length){const n=new XX({expandGlobalConstant:i}).parseJSON(r.args[0]),o=new uX(n);t.init=o.Encode(e.storage)}else t.init=n.Encode(e.storage);delete t.storage}return t}))}formatCodeParam(e){return o1(this,void 0,void 0,(function*(){let t;if("string"===typeof e){const r=yield this.parseScript(e);if(null===r)throw new I1("Unable to parse",e);t=r}else{const r=yield this.parseJSON(e),n=["parameter","storage","code"];t=r.sort(((e,t)=>n.indexOf(e.prim)-n.indexOf(t.prim)))}return t}))}formatInitParam(e){return o1(this,void 0,void 0,(function*(){let t;if("string"===typeof e){const r=yield this.parseMichelineExpression(e);if(null===r)throw new M1("Invalid init parameter",e);t=r}else t=yield this.parseJSON(e);return t}))}findGlobalConstantsHashAndValue(e){return o1(this,void 0,void 0,(function*(){const t=e.findToken("constant"),r={};if(0!==t.length)for(const e of t){const t=e.tokenVal.args;if(t){const e=t[0];if(e.string){const t=e.string,n=yield this.context.globalConstantsProvider.getGlobalConstantByHash(t);Object.assign(r,{[t]:n})}}}return r}))}}class p3{constructor(e){this.context=e}packData(e){return o1(this,void 0,void 0,(function*(){return this.context.rpc.packData(e)}))}}class m3 extends ts{constructor(){super(),this.name="UnconfiguredGlobalConstantsProviderError",this.message="No global constants provider has been configured. Please configure one by calling setGlobalConstantsProvider({globalConstantsProvider}) on your TezosToolkit instance."}}class g3{getGlobalConstantByHash(e){return o1(this,void 0,void 0,(function*(){throw new m3}))}}class v3{constructor(e){this.rpc=e}getBalance(e,t){return o1(this,void 0,void 0,(function*(){return this.rpc.getBalance(e,{block:String(t)})}))}getDelegate(e,t){return o1(this,void 0,void 0,(function*(){return this.rpc.getDelegate(e,{block:String(t)})}))}getNextProtocol(e){return o1(this,void 0,void 0,(function*(){return(yield this.rpc.getProtocols({block:String(e)})).next_protocol}))}getProtocolConstants(e){return o1(this,void 0,void 0,(function*(){const{time_between_blocks:t,minimal_block_delay:r,hard_gas_limit_per_operation:n,hard_gas_limit_per_block:i,hard_storage_limit_per_operation:o,cost_per_byte:a,tx_rollup_origination_size:s,smart_rollup_origination_size:c}=yield this.rpc.getConstants({block:String(e)});return{time_between_blocks:t,minimal_block_delay:r,hard_gas_limit_per_operation:n,hard_gas_limit_per_block:i,hard_storage_limit_per_operation:o,cost_per_byte:a,tx_rollup_origination_size:s,smart_rollup_origination_size:c}}))}getScript(e,t){return o1(this,void 0,void 0,(function*(){const{script:r}=yield this.rpc.getContract(e,{block:String(t)});return r}))}getStorage(e,t){return o1(this,void 0,void 0,(function*(){return this.rpc.getStorage(e,{block:String(t)})}))}getBlockHash(e){return o1(this,void 0,void 0,(function*(){const{hash:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getBlockLevel(e){return o1(this,void 0,void 0,(function*(){const{level:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getCounter(e,t){return o1(this,void 0,void 0,(function*(){const{counter:r}=yield this.rpc.getContract(e,{block:String(t)});return r||"0"}))}getBlockTimestamp(e){return o1(this,void 0,void 0,(function*(){const{timestamp:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getBigMapValue(e,t){return o1(this,void 0,void 0,(function*(){return this.rpc.getBigMapExpr(e.id,e.expr,{block:String(t)})}))}getSaplingDiffById(e,t){return o1(this,void 0,void 0,(function*(){return this.rpc.getSaplingDiffById(e.id,{block:String(t)})}))}getSaplingDiffByContract(e,t){return o1(this,void 0,void 0,(function*(){return this.rpc.getSaplingDiffByContract(e,{block:String(t)})}))}getEntrypoints(e){return o1(this,void 0,void 0,(function*(){return this.rpc.getEntrypoints(e)}))}getChainId(){return o1(this,void 0,void 0,(function*(){return this.rpc.getChainId()}))}isAccountRevealed(e,t){return o1(this,void 0,void 0,(function*(){const r=yield this.rpc.getManagerKey(e,{block:String(t)});return r&&"object"===typeof r?!!r.key:!!r}))}getBlock(e){return o1(this,void 0,void 0,(function*(){return this.rpc.getBlock({block:String(e)})}))}getLiveBlocks(e){return this.rpc.getLiveBlocks({block:String(e)})}}class y3 extends Qa{constructor(e){super(),this.type=e,this.name="UnsupportedEventError",this.message=`Unsupported event type "${e}" expecting one of the "data", "error", or "close".`}}class b3 extends Qa{constructor(e){super(),this.invalidExpression=e,this.name="InvalidFilterExpressionError",this.message="Invalid filter expression expecting the object to contain either and/or property"}}const w3=(e,t)=>"opHash"in t?((e,t)=>e.hash===t.opHash)(e,t):"source"in t?((e,t)=>{switch(e.kind){case"endorsement":return"metadata"in e&&e.metadata.delegate===t.source;case"activate_account":return"metadata"in e&&e.pkh===t.source;default:return"source"in e&&e.source===t.source}})(e,t):"kind"in t?((e,t)=>"kind"in e&&e.kind===t.kind)(e,t):"destination"in t&&((e,t)=>{switch(e.kind){case"delegation":return e.delegate===t.destination;case"origination":if("metadata"in e&&"operation_result"in e.metadata&&"originated_contracts"in e.metadata.operation_result&&Array.isArray(e.metadata.operation_result.originated_contracts))return e.metadata.operation_result.originated_contracts.some((e=>e===t.destination));break;case"transaction":return e.destination===t.destination;default:return!1}})(e,t),x3=(e,t)=>{const r=[];return Array.isArray(t)?r.push(...t):r.push(t),r.every((t=>"and"in t||"or"in t?((e,t)=>{if(Array.isArray(t.and))return t.and.every((t=>x3(e,t)));if(Array.isArray(t.or))return t.or.some((t=>x3(e,t)));throw new b3(t)})(e,t):w3(e,t)))};class _3{constructor(e,t=!1,r=fZ()){var n;this.shouldRetry=t,this.operatorFunction=r,this.errorListeners=[],this.messageListeners=[],this.closeListeners=[],this.completed$=new WW,e.pipe((n=this.completed$,yG((function(e,t){cG(n).subscribe(bG(t,(function(){return t.complete()}),OW)),!t.closed&&e.subscribe(t)}))),rZ((e=>{this.call(this.messageListeners,e)}),(e=>{this.call(this.errorListeners,e)}),(()=>{this.call(this.closeListeners)})),this.shouldRetry?r:rZ(),uZ((()=>UG))).subscribe()}call(e,t){for(const n of e)try{n(t)}catch(r){console.error(r)}}remove(e,t){const r=e.indexOf(t);-1!==r&&e.splice(r,1)}on(e,t){switch(e){case"data":this.messageListeners.push(t);break;case"error":this.errorListeners.push(t);break;case"close":this.closeListeners.push(t);break;default:throw new y3(e)}}off(e,t){switch(e){case"data":this.remove(this.messageListeners,t);break;case"error":this.remove(this.errorListeners,t);break;case"close":this.remove(this.closeListeners,t);break;default:throw new y3(e)}}close(){this.completed$.next()}}const S3={shouldObservableSubscriptionRetry:!1,observableSubscriptionRetryFunction:fZ()},k3=e=>eZ((t=>new VW((r=>{for(const s of t.operations)for(const c of s)for(const s of c.contents){const l=s.metadata.internal_operation_results;if(l)for(const s of l)n=s,i=null===e||void 0===e?void 0:e.address,o=null===e||void 0===e?void 0:e.tag,a=null===e||void 0===e?void 0:e.excludeFailedOperations,"event"!==n.kind||o&&n.tag!==o||i&&n.source!==i||a&&"applied"!==n.result.status||r.next(Object.assign({opHash:c.hash,blockHash:t.hash,level:t.header.level},s))}var n,i,o,a;r.complete()}))));class E3{constructor(e,t={}){this.context=e,this._config$=new XW(Object.assign(Object.assign({},S3),t)),this.timer$=this._config$.pipe(pZ("pollingIntervalMilliseconds"),YG((e=>e?ZG(0,e):EG(this.getConfirmationPollingInterval()).pipe(YG((e=>ZG(0,e))))))),this.newBlock$=this.timer$.pipe(YG((()=>(e=>EG(e.rpc.getBlock()).pipe(lZ()))(this.context))),function(e,t){return dZ((function(r,n){return t?t(r[e],n[e]):r[e]===n[e]}))}("hash"),bZ(),mZ())}get config(){return this._config$.getValue()}getConfirmationPollingInterval(){return o1(this,void 0,void 0,(function*(){if(!this.config.pollingIntervalMilliseconds){const t=5e3,r=1e3;try{const e=yield this.context.readProvider.getProtocolConstants("head"),n=(e.minimal_block_delay?e.minimal_block_delay.multipliedBy(1e3):e.time_between_blocks?e.time_between_blocks[0].multipliedBy(1e3):new Us(t)).dividedBy(3);this.config.pollingIntervalMilliseconds=0===n.toNumber()?r:n.toNumber()}catch(e){return t}}return this.config.pollingIntervalMilliseconds}))}subscribeBlock(e){return new _3(this.newBlock$,this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribe(e){return new _3(this.newBlock$.pipe(pZ("hash")),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribeOperation(e){return new _3(this.newBlock$.pipe((e=>eZ((t=>new VW((r=>{for(const n of t.operations)for(const t of n)for(const n of t.contents)x3(Object.assign({hash:t.hash},n),e)&&r.next(Object.assign({hash:t.hash},n));r.complete()})))))(e)),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribeEvent(e){return new _3(this.newBlock$.pipe(k3(e)),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}}class A3{constructor(e){this.context=e}getNextProto(){return o1(this,void 0,void 0,(function*(){if(!this.context.proto){const e=yield this.context.readProvider.getNextProtocol("head");this.context.proto=e}return this.context.proto}))}forge({branch:e,contents:t}){return o1(this,void 0,void 0,(function*(){return new n1(yield this.getNextProto()).forge({branch:e,contents:t})}))}}const P3={defaultConfirmationCount:1,confirmationPollingTimeoutSecond:180};class O3{constructor(e,t=new u1,r,n=new XW(Object.assign({},P3)),i,o,a,s,c,l,u,d){this._rpc=e,this._signer=t,this._proto=r,this._config=n,this.providerDecorator=[],this.tz=new G2(this),this.estimate=new J2(this),this.contract=new h3(this,this.estimate),this.prepare=new U2(this),this.batch=new H2(this,this.estimate),this.wallet=new g2(this),this.withExtensions=()=>{let e=this.clone();return this.providerDecorator.forEach((t=>{e=t(e)})),e},"string"===typeof this._rpc?this._rpcClient=new gW(this._rpc):this._rpcClient=this._rpc,this._forger=i||new A3(this),this._injector=o||new c1(this),this.operationFactory=new W2(this),this._walletProvider=s||new S2(this),this._parser=c||new f3(this),this._packer=a||new p3(this),this._globalConstantsProvider=l||new g3,this._readProvider=u||new v3(this._rpcClient),this._stream=d||new E3(this)}get config(){return this._config.getValue()}set config(e){this._config.next(Object.assign({},e))}setPartialConfig(e){this._config.next(Object.assign(Object.assign({},this._config.getValue()),e))}get rpc(){return this._rpcClient}set rpc(e){this._rpcClient=e}get injector(){return this._injector}set injector(e){this._injector=e}get forger(){return this._forger}set forger(e){this._forger=e}get signer(){return this._signer}set signer(e){this._signer=e}get walletProvider(){return this._walletProvider}set walletProvider(e){this._walletProvider=e}set proto(e){this._proto=e}get proto(){return this._proto}get parser(){return this._parser}set parser(e){this._parser=e}get packer(){return this._packer}set packer(e){this._packer=e}get globalConstantsProvider(){return this._globalConstantsProvider}set globalConstantsProvider(e){this._globalConstantsProvider=e}get readProvider(){return this._readProvider}set readProvider(e){this._readProvider=e}get stream(){return this._stream}set stream(e){this._stream=e}isAnyProtocolActive(e=[]){return o1(this,void 0,void 0,(function*(){if(this._proto)return e.includes(this._proto);{const t=yield this.readProvider.getNextProtocol("head");return e.includes(t)}}))}isAnySignerConfigured(){return!(this.signer instanceof u1)}clone(){return new O3(this.rpc,this.signer,this.proto,this._config,this.forger,this._injector,this.packer,this._walletProvider,this._parser,this._globalConstantsProvider,this._readProvider,this._stream)}registerProviderDecorator(e){this.providerDecorator.push(e)}}const T3={commitHash:"ff6c3b619e314a09bb0aa65d711ef9eaf81a0ee9",version:"17.5.0"};class C3{constructor(e){this._rpc=e,this._options={},this.format=gc,"string"===typeof this._rpc?this._rpcClient=new gW(this._rpc):this._rpcClient=this._rpc,this._context=new O3(e),this._wallet=new g2(this._context),this.setProvider({rpc:this._rpcClient}),this.batch=this._context.batch.batch.bind(this._context.batch)}setProvider({rpc:e,stream:t,signer:r,protocol:n,config:i,forger:o,wallet:a,packer:s,globalConstantsProvider:c,readProvider:l,parserProvider:u,injectorProvider:d}){this.setRpcProvider(e),this.setStreamProvider(t),this.setSignerProvider(r),this.setForgerProvider(o),this.setWalletProvider(a),this.setPackerProvider(s),this.setGlobalConstantsProvider(c),this.setReadProvider(l),this.setParserProvider(u),this.setInjectorProvider(d),this._context.proto=n,i&&this._context.setPartialConfig(i)}setSignerProvider(e){this._options.signer||"undefined"!==typeof e?"undefined"!==typeof e&&(this._context.signer=e,this._options.signer=e):(this._context.signer=new u1,this._options.signer=e)}setRpcProvider(e){"string"===typeof e?this._rpcClient=new gW(e):void 0===e||(this._rpcClient=e),this._options.rpc=this._rpcClient,this._context.rpc=this._rpcClient}setForgerProvider(e){if("undefined"!==typeof e)this._options.forger=e,this._context.forger=e;else if(void 0===this._options.forger){const e=this.getFactory(A3)();this._options.forger=e,this._context.forger=e}}setStreamProvider(e){if("string"===typeof e){const t=new E3(new O3(new gW(e)));this._options.stream=t,this._context.stream=t}else if("undefined"!==typeof e)this._options.stream=e,this._context.stream=e;else if(void 0===this._options.stream){const e=this.getFactory(E3)();this._options.stream=e,this._context.stream=e}}setWalletProvider(e){if(this._options.wallet||"undefined"!==typeof e)"undefined"!==typeof e&&(this._options.wallet=e,this._context.walletProvider=e);else{const e=this.getFactory(S2)();this._options.wallet=e,this._context.walletProvider=e}}setPackerProvider(e){if(this._options.packer||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.packer=e,this._options.packer=e);else{const e=this.getFactory(p3)();this._context.packer=e,this._options.packer=e}}setGlobalConstantsProvider(e){if(this._options.globalConstantsProvider||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.globalConstantsProvider=e,this._options.globalConstantsProvider=e);else{const e=new g3;this._context.globalConstantsProvider=e,this._options.globalConstantsProvider=e}}setReadProvider(e){const t=e||new v3(this._context.rpc);this._options.readProvider=t,this._context.readProvider=t}setParserProvider(e){if(this._options.parserProvider||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.parser=e,this._options.parserProvider=e);else{const e=new f3(this._context);this._context.parser=e,this._options.parserProvider=e}}setInjectorProvider(e){if(this._options.injectorProvider||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.injector=e,this._options.injectorProvider=e);else{const e=new c1(this._context);this._context.injector=e,this._options.injectorProvider=e}}get tz(){return this._context.tz}get contract(){return this._context.contract}get prepare(){return this._context.prepare}get wallet(){return this._wallet}get operation(){return this._context.operationFactory}get estimate(){return this._context.estimate}get stream(){return this._context.stream}get rpc(){return this._context.rpc}get signer(){return this._context.signer}get globalConstants(){return this._context.globalConstantsProvider}addExtension(e){Array.isArray(e)?e.forEach((e=>e.configureContext(this._context))):e.configureContext(this._context)}getFactory(e){return(...t)=>new e(this._context,...t)}getVersionInfo(){return T3}}class j3{constructor(e,t){this.pk=void 0,this.pkh=void 0,this.pk=e,this.pkh=t}async publicKey(){return this.pk}async publicKeyHash(){return this.pkh}async sign(){throw new Error("`sign` method not available")}async secretKey(){throw new Error("empty secret key")}}const R3={args:[{args:[{annots:["%from_"],prim:"address"},{annots:["%txs"],args:[{args:[{annots:["%to_"],prim:"address"},{args:[{annots:["%token_id"],prim:"nat"},{annots:["%amount"],prim:"nat"}],prim:"pair"}],prim:"pair"}],prim:"list"}],prim:"pair"}],prim:"list"},I3={args:[{annots:[":from"],prim:"address"},{args:[{annots:[":to"],prim:"address"},{annots:[":value"],prim:"nat"}],prim:"pair"}],prim:"pair"},M3=(e,t,r)=>[...L3,{prim:"PUSH",args:[{prim:"address"},{string:e.contract.pkh+"%"+r.entrypoint}]},{prim:"CONTRACT",args:[t]},[{prim:"IF_NONE",args:[[{prim:"UNIT"},{prim:"FAILWITH"}],[]]}],{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"PUSH",args:[t,r.value]},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}],L3=[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]}],N3=e=>(0,Va.isEqual)(e.slice(0,2),L3)?e.slice(2):e,D3=e=>{const t=e.map((e=>(e=>{switch(e.type){case"tez":switch(e.recipient.type){case"implicit":return I2(e.recipient.pkh,Number(e.amount));case"contract":return M2(e.recipient.pkh,Number(e.amount))}case"fa1.2":return M3(e,I3,K3(e));case"fa2":return M3(e,R3,W3(e));case"delegation":return j2(e.recipient.pkh);case"undelegation":return R2();case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}})(e))).flatMap(N3);return[...L3,...t]},z3=(e,t,r)=>U3(e,t,{int:r}),B3=(e,t)=>{const r=D3(t);return U3(e,"propose",r)},U3=(e,t,r,n="0")=>({type:"contract_call",contract:e,entrypoint:t,args:r,amount:n}),F3=async(e,t)=>{try{const r=`${t.tzktApiUrl}/v1/accounts/${e}`,{data:{type:n}}=await uj.get(r);return"empty"!==n}catch(r){throw new Error(`Error fetching account from tzkt ${r.message}`)}},$3=async e=>{const t=(new TextEncoder).encode(e),r=await crypto.subtle.digest("SHA-256",t),n=Array.from(new Uint8Array(r)).map((e=>e.toString(16).padStart(2,"0"))).join("").slice(0,8);return n},H3=async e=>{switch(e.type){case"social":case"mnemonic":case"secret_key":return new xq(e.secretKey);case"ledger":{const t=await MK.list();for(let e=0;e{switch(e){case"ed25519":return VK.ED25519;case"secp256k1":return VK.SECP256K1;case"p256":return VK.P256;case"bip25519":throw new Error("bip25519 is not supported in Tezos")}})(e.account.curve))}case"fake":return new j3(e.signer.pk,e.signer.address.pkh)}},V3=async e=>{const t=new C3(e.network.rpcUrl),r=await H3(e);return t.setSignerProvider(r),t},q3=async e=>{const t=new xq(e);return{pk:await t.publicKey(),pkh:await t.publicKeyHash()}},K3=({sender:e,recipient:t,amount:r})=>({entrypoint:"transfer",value:{prim:"Pair",args:[{string:e.pkh},{prim:"Pair",args:[{string:t.pkh},{int:r}]}]}}),W3=({sender:e,recipient:t,tokenId:r,amount:n})=>({entrypoint:"transfer",value:[{prim:"Pair",args:[{string:e.pkh},[{prim:"Pair",args:[{string:t.pkh},{prim:"Pair",args:[{int:r},{int:n}]}]}]]}]}),G3=e=>{switch(e.type){case"tez":return{kind:mW.TRANSACTION,to:e.recipient.pkh,amount:parseInt(e.amount),mutez:!0};case"contract_call":return{kind:mW.TRANSACTION,to:e.contract.pkh,amount:parseInt(e.amount),mutez:!0,parameter:{entrypoint:e.entrypoint,value:e.args}};case"delegation":return{kind:mW.DELEGATION,source:e.sender.pkh,delegate:e.recipient.pkh};case"undelegation":return{kind:mW.DELEGATION,source:e.sender.pkh,delegate:void 0};case"fa1.2":return{kind:mW.TRANSACTION,amount:0,to:e.contract.pkh,parameter:K3(e)};case"fa2":return{kind:mW.TRANSACTION,amount:0,to:e.contract.pkh,parameter:W3(e)};case"contract_origination":return{kind:mW.ORIGINATION,...e}}},Z3=({type:e,operations:t,sender:r})=>("implicit"===e?t:[B3(r.address,t)]).map(G3),Y3=Z3,X3=async(e,t)=>{const r=await V3({type:"fake",signer:e.signer,network:t});try{const t=await r.estimate.batch(Z3(e));return n=t.map((e=>Math.max(e.suggestedFeeMutez,e.totalCost).toString())),n.reduce(((e,t)=>e.plus(t)),new Us(0))}catch(fde){if(!await F3(e.signer.address.pkh,t))throw new Error(`Signer address is not revealed on the ${t.name}.`);throw new Error(J3(fde))}var n},J3=e=>{let t="";return e.message.includes("subtraction_underflow")?t="Insufficient balance, please make sure you have enough funds.":e.message.includes("contract.non_existing_contract")&&(t="Contract does not exist, please check if the correct network is selected."),t||e};class Q3{constructor(e){this.queue=void 0,this.maxConcurrent=void 0,this.count=void 0,this.queue=[],this.maxConcurrent=e,this.count=0}get canAcquire(){return this.countthis.queue.push(e)))}release(){const e=this.queue.shift();e?setTimeout(e,0):this.count--}}const e5="_default";const t5=[encodeURIComponent,encodeURIComponent];encodeURIComponent,encodeURI;function r5(e,t=","){return(r,...n)=>r.reduce(((r,i,o)=>`${r}${i}${((r,n)=>{const i=e[n%e.length];if("undefined"===typeof r)return"";if("object"===typeof r)return Array.isArray(r)?r.map(i).join(t):Object.entries(r).reduce(((e,t)=>[...e,...t]),[]).map(i).join(t);return i(String(r))})(n[o],o)}`),"")}function n5(e=","){return(t,r=t5)=>Object.entries(t).filter((([,e])=>void 0!==e)).map((([t,n])=>r5(r,e)`${t}=${n}`)).join("&")}function i5(...e){const t=e.filter(Boolean).join("&");return t&&`?${t}`}function o5(e,t=t5){const r=r5(t);return Object.entries(e).filter((([,e])=>void 0!==e)).map((([e,n])=>Array.isArray(n)?n.map((t=>r`${e}=${t}`)).join("&"):"object"===typeof n?o5(n,t):r`${e}=${n}`)).join("&")}const a5=n5();n5("|"),n5("%20");const s5=[200,201,202,204];async function c5(e){const t=await e;if(s5.some((e=>e==t.status)))return t.data;throw new l5(t.status,t.data)}class l5 extends Error{status;data;constructor(e,t){super(`Error: ${e}`),this.status=e,this.data=t}}const u5={jsonParameter:(e,t)=>{if(!t)return{};const r={};return Object.entries(t).forEach((([t,n])=>{if(!(n instanceof Object))throw new Error(`Expected ${e} value to be object, received ${typeof n}`);const{jsonPath:i,jsonValue:o}=n;if(void 0===o||null===o)throw new Error(`Expected jsonValue in ${e} -> ${t}, found: ${o}`);const a=[e,i,t].filter((e=>void 0!==e)).join(".");r[a]=o})),r},queryParameter:(e,t)=>{if(!t)return{};const r={};return Object.entries(t).forEach((([t,n])=>{r[`${e}.${t}`]=n})),r},anyofParameter:(e,t)=>{if(!t)return{};const{fields:r}=t;if(!(t=>{if(!Array.isArray(t))throw new Error(`Expected ${e} fields to be Array. Received ${typeof t}.`);return t.forEach((t=>{if("string"!==typeof t)throw new Error(`Expected ${e} fields to be strings. Received ${typeof t}`)})),!0})(r))return{};const n={},i=r.join(".");if(t.value){n[`${e}.${i}`]=t.value}for(const o of["in","eq","null"])if(t[o]){return n[`${e}.${i}.${o}`]=Array.isArray(t[o])?t[o].join(","):t[o],n}return n}},d5=u5,h5=function(e){async function t(e,t){const n=await r(e,t);let i;try{i=await n.text()}catch(fde){}return{status:n.status,headers:n.headers,contentType:n.headers.get("content-type"),data:i}}async function r(t,r={}){const{baseUrl:n,headers:i,fetch:o,...a}={...e,...r},s=function(...e){return e.filter(Boolean).map(((e,t)=>0===t?e:e.replace(/^\/+/,""))).map(((e,t,r)=>t===r.length-1?e:e.replace(/\/+$/,""))).join("/")}(n,t);var c;return await(o||fetch)(s,{...a,headers:(c={...e.headers,...i},c&&JSON.parse(JSON.stringify(c)))})}return{ok:c5,fetchText:t,fetchJson:async function(e,r={}){const{status:n,headers:i,contentType:o,data:a}=await t(e,{...r,headers:{Accept:"application/json",...r.headers}});return!!o&&o.includes("json")?{status:n,headers:i,data:a?JSON.parse(a):null}:{status:n,headers:i,data:a}},fetchBlob:async function(e,t={}){const n=await r(e,t);let i;try{i=await n.blob()}catch(fde){}return{status:n.status,headers:n.headers,data:i}},json:({body:e,headers:t,...r})=>({...r,...null!=e&&{body:JSON.stringify(e)},headers:{...t,"Content-Type":"application/json"}}),form:({body:e,headers:t,...r})=>({...r,...null!=e&&{body:a5(e)},headers:{...t,"Content-Type":"application/x-www-form-urlencoded"}}),multipart({body:t,...r}){if(null==t)return r;const n=new(e.formDataConstructor||r.formDataConstructor||FormData);return Object.entries(t).forEach((([e,t])=>{n.append(e,t)})),{...r,body:n}}}}({baseUrl:"https://api.tzkt.io"});function f5({id:e,level:t,timestamp:r,tokenId:n,tokenContract:i,tokenTokenId:o,tokenStandard:a,tokenMetadata:s,tokenHasFilters:c,anyof:l,$from:u,to:d,amount:h,transactionId:f,originationId:p,migrationId:m,indexedAt:g,sort:v,offset:y,limit:b,select:w}={},x){return h5.ok(h5.fetchJson(`/v1/tokens/transfers${i5(o5({"token.HasFilters":c,limit:b,...d5.queryParameter("id",e),...d5.queryParameter("level",t),...d5.queryParameter("timestamp",r),...d5.queryParameter("token.id",n),...d5.queryParameter("token.contract",i),...d5.queryParameter("token.tokenId",o),...d5.queryParameter("token.standard",a),...d5.jsonParameter("token.metadata",s),...d5.anyofParameter("anyof",l),...d5.queryParameter("from",u),...d5.queryParameter("to",d),...d5.queryParameter("amount",h),...d5.queryParameter("transactionId",f),...d5.queryParameter("originationId",p),...d5.queryParameter("migrationId",m),...d5.queryParameter("indexedAt",g),...d5.queryParameter("sort",v),...d5.queryParameter("offset",y),...d5.queryParameter("select",w)}))}`,{...x}))}var p5=r(7786),m5=r.n(p5);const g5=new class{constructor(e=1){this.semaphoreInstances=void 0,this.maxConcurrent=void 0,this.semaphoreInstances={},this.maxConcurrent=e}hasSemaphoreInstance(e=e5){return Boolean(this.semaphoreInstances[e])}getSemaphoreInstance(e=e5){return this.hasSemaphoreInstance(e)||(this.semaphoreInstances[e]=new Q3(this.maxConcurrent)),this.semaphoreInstances[e]}tidy(e=e5){this.hasSemaphoreInstance(e)&&0==this.getSemaphoreInstance(e).count&&delete this.semaphoreInstances[e]}canAcquire(e=e5){return this.getSemaphoreInstance(e).canAcquire}acquire(e=e5){return this.getSemaphoreInstance(e).acquire()}release(e=e5){this.getSemaphoreInstance(e).release(),this.tidy(e)}count(e=e5){return this.hasSemaphoreInstance(e)?this.getSemaphoreInstance(e).count:0}hasTasks(e=e5){return this.count(e)>0}async request(e,t=e5){try{return await this.acquire(t),await e()}finally{this.release(t)}}async requestIfAvailable(e,t=e5){return this.canAcquire(t)?this.request(e,t):null}}(10),v5=e=>g5.acquire().then((()=>m5()(e,{retries:3,minTimeout:100}))).finally((()=>g5.release())),y5=async(e,t)=>v5((()=>function({id:e,address:t,$type:r,kind:n,delegate:i,balance:o,staked:a,lastActivity:s,select:c,sort:l,offset:u,limit:d}={},h){return h5.ok(h5.fetchJson(`/v1/accounts${i5(o5({limit:d,...d5.queryParameter("id",e),...d5.queryParameter("address",t),...d5.queryParameter("type",r),...d5.queryParameter("kind",n),...d5.queryParameter("delegate",i),...d5.queryParameter("balance",o),...d5.queryParameter("staked",a),...d5.queryParameter("lastActivity",s),...d5.queryParameter("select",c),...d5.queryParameter("sort",l),...d5.queryParameter("offset",u)}))}`,{...h}))}({address:{in:[e.join(",")]},select:{fields:["address,balance,delegationLevel"]}},{baseUrl:t.tzktApiUrl}))),b5=async(e,t)=>v5((()=>function({id:e,account:t,tokenId:r,tokenContract:n,tokenTokenId:i,tokenStandard:o,tokenMetadata:a,tokenHasFilters:s,balance:c,firstLevel:l,firstTime:u,lastLevel:d,lastTime:h,indexedAt:f,sort:p,offset:m,limit:g,select:v}={},y){return h5.ok(h5.fetchJson(`/v1/tokens/balances${i5(o5({"token.HasFilters":s,limit:g,...d5.queryParameter("id",e),...d5.queryParameter("account",t),...d5.queryParameter("token.id",r),...d5.queryParameter("token.contract",n),...d5.queryParameter("token.tokenId",i),...d5.queryParameter("token.standard",o),...d5.jsonParameter("token.metadata",a),...d5.queryParameter("balance",c),...d5.queryParameter("firstLevel",l),...d5.queryParameter("firstTime",u),...d5.queryParameter("lastLevel",d),...d5.queryParameter("lastTime",h),...d5.queryParameter("indexedAt",f),...d5.queryParameter("sort",p),...d5.queryParameter("offset",m),...d5.queryParameter("select",v)}))}`,{...y}))}({account:{in:[e.join(",")]},balance:{gt:"0"},limit:1e4},{baseUrl:t.tzktApiUrl}))),w5=async(e,t,r)=>v5((()=>function({anyof:e,initiator:t,sender:r,prevDelegate:n,newDelegate:i,level:o,timestamp:a,senderCodeHash:s,status:c,select:l,sort:u,offset:d,limit:h,quote:f}={},p){return h5.ok(h5.fetchJson(`/v1/operations/delegations${i5(o5({limit:h,quote:f,...d5.anyofParameter("anyof",e),...d5.queryParameter("initiator",t),...d5.queryParameter("sender",r),...d5.queryParameter("prevDelegate",n),...d5.queryParameter("newDelegate",i),...d5.queryParameter("level",o),...d5.queryParameter("timestamp",a),...d5.queryParameter("senderCodeHash",s),...d5.queryParameter("status",c),...d5.queryParameter("select",l),...d5.queryParameter("sort",u),...d5.queryParameter("offset",d)}))}`,{...p}))}({sender:{in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl}))),x5=async(e,t,r)=>v5((()=>function({anyof:e,initiator:t,sender:r,target:n,amount:i,id:o,level:a,timestamp:s,senderCodeHash:c,targetCodeHash:l,codeHash:u,entrypoint:d,parameter:h,hasInternals:f,status:p,select:m,sort:g,offset:v,limit:y,micheline:b,quote:w}={},x){return h5.ok(h5.fetchJson(`/v1/operations/transactions${i5(o5({limit:y,micheline:b,quote:w,...d5.anyofParameter("anyof",e),...d5.queryParameter("initiator",t),...d5.queryParameter("sender",r),...d5.queryParameter("target",n),...d5.queryParameter("amount",i),...d5.queryParameter("id",o),...d5.queryParameter("level",a),...d5.queryParameter("timestamp",s),...d5.queryParameter("senderCodeHash",c),...d5.queryParameter("targetCodeHash",l),...d5.queryParameter("codeHash",u),...d5.queryParameter("entrypoint",d),...d5.jsonParameter("parameter",h),...d5.queryParameter("hasInternals",f),...d5.queryParameter("status",p),...d5.queryParameter("select",m),...d5.queryParameter("sort",g),...d5.queryParameter("offset",v)}))}`,{...x}))}({anyof:{fields:["sender","target","initiator"],in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl}))),_5=async(e,t,r)=>v5((()=>function({anyof:e,initiator:t,sender:r,contractManager:n,contractDelegate:i,originatedContract:o,id:a,typeHash:s,codeHash:c,level:l,timestamp:u,senderCodeHash:d,anyCodeHash:h,status:f,select:p,sort:m,offset:g,limit:v,micheline:y,quote:b}={},w){return h5.ok(h5.fetchJson(`/v1/operations/originations${i5(o5({limit:v,micheline:y,quote:b,...d5.anyofParameter("anyof",e),...d5.queryParameter("initiator",t),...d5.queryParameter("sender",r),...d5.queryParameter("contractManager",n),...d5.queryParameter("contractDelegate",i),...d5.queryParameter("originatedContract",o),...d5.queryParameter("id",a),...d5.queryParameter("typeHash",s),...d5.queryParameter("codeHash",c),...d5.queryParameter("level",l),...d5.queryParameter("timestamp",u),...d5.queryParameter("senderCodeHash",d),...d5.queryParameter("anyCodeHash",h),...d5.queryParameter("status",f),...d5.queryParameter("select",p),...d5.queryParameter("sort",m),...d5.queryParameter("offset",g)}))}`,{...w}))}({sender:{in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl}))),S5=async(e,t,r)=>v5((async()=>(await f5({anyof:{fields:["from","to"],in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl})).map((e=>({...e,type:"token_transfer"}))))),k5=async e=>v5((async()=>{return await(t={baseUrl:e.tzktApiUrl},h5.ok(h5.fetchJson("/v1/blocks/count",{...t})));var t})),E5=async e=>v5((()=>function({active:e,lastActivity:t,select:r,sort:n,offset:i,limit:o}={},a){return h5.ok(h5.fetchJson(`/v1/delegates${i5(o5({limit:o,...d5.queryParameter("active",e),...d5.queryParameter("lastActivity",t),...d5.queryParameter("select",r),...d5.queryParameter("sort",n),...d5.queryParameter("offset",i)}))}`,{...a}))}({sort:{desc:"stakingBalance"},active:{eq:!0},limit:1e4,select:{fields:["address,alias,stakingBalance"]}},{baseUrl:e.tzktApiUrl}))),A5=async(e,t)=>{const r=Y3(e);return t.wallet.batch(r).send()},P5=async(e,t)=>{const r=xq.fromMnemonic({mnemonic:e,derivationPath:t,curve:"ed25519"});return{pkh:await r.publicKeyHash(),pk:await r.publicKey()}},O5=()=>{const e=Lq();return async(t,r,n,i)=>{const o=await(async(e,t,r)=>{const n=[];let i=0,o=await P5(e,Eq(t,i));do{n.push(o),i+=1,o=await P5(e,Eq(t,i))}while(await F3(o.pkh,r));return n})(t,n,r),a=await $3(t),s=e(i,o.length);return o.map((({pk:e,pkh:t},r)=>Aq(e,t,Eq(n,r),n,a,s[r])))}},T5=()=>{const e=TR((e=>e.accounts.seedPhrases)),t=TR((e=>e.accounts.secretKeys));return async(r,n)=>{if("secret_key"===r.type){const e=t[r.address.pkh];if(!e)throw new Error(`Missing secret key for account ${r.address.pkh}`);return Ic(e,n)}{const t=e[r.seedFingerPrint];if(!t)throw new Error(`Missing seedphrase for account ${r.address.pkh}`);return((e,t,r)=>xq.fromMnemonic({mnemonic:e,derivationPath:t,curve:r}).secretKey())(await Ic(t,n),r.derivationPath,r.curve)}}},C5=()=>TR((e=>e.networks.current)),j5=()=>TR((e=>e.networks.available)),R5=()=>{const e=j5(),t=to();return r=>{const n=e.find((e=>e.name===r));n&&t(qd.setCurrent(n))}},I5=()=>{const e=C5(),t=TR((t=>t.tokens[e.name]));return(e,r)=>(0,Va.get)(t,[e,r])},M5=(e,t)=>e.length>t?e.slice(0,t-3)+"...":e,L5=e=>gc("tz","mutez",e),N5=e=>gc("mutez","tz",e),D5=e=>{const t=Us(N5(e)).toNumber();return`${new Intl.NumberFormat("en-US",{minimumFractionDigits:6,maximumFractionDigits:6}).format(t)} \ua729`},z5=e=>`${e.slice(0,5)}...${e.slice(-5)}`,B5=e=>{const t=TR((e=>e.assets.blockLevel));return null!==t?t-e>=2:null},U5=()=>{const e=H5(),t=TR((e=>e.assets.balances.tokens)),r=Object.keys(t);return(0,Va.fromPairs)(r.map((t=>[t,e(t)])))},F5=()=>{const e=I5(),t=TR((e=>e.assets.balances.tokens));return r=>{const n=t[r]||[];return(0,Va.compact)(n.map((({contract:t,tokenId:r,...n})=>{const i=e(t,r);return i&&{...i,...n}})))}},$5=()=>{const e=(()=>{const e=F5();return t=>e(t).filter((e=>"fa1.2"===e.type))})(),t=(()=>{const e=F5();return t=>e(t).filter((e=>"fa2"===e.type))})();return r=>[...e(r),...t(r)]},H5=()=>{const e=F5();return t=>e(t).filter((e=>"nft"===e.type))},V5=()=>{const e=TR((e=>e.assets.conversionRate));return t=>null===e?null:new Bs(t).multipliedBy(e).decimalPlaces(2,Bs.ROUND_UP)},q5=()=>{const e=TR((e=>e.assets.balances.mutez)),t=V5(),r=(e=>{const t=(0,Va.compact)(Object.values(e));return 0===t.length?null:t.reduce(((e,t)=>e.plus(t)),new Us(0))})(e);if(null==r)return null;const n=t(N5(r));return{mutez:r.toFixed(),usd:n}},K5=()=>{const e=TR((e=>e.assets.balances.mutez));return t=>e[t]},W5=()=>TR((e=>e.assets.bakers)),G5=e=>{const t=Z5(e),r=Y5(e),n=X5(e);return t||r||n||{pkh:e.pkh,type:"unknown",label:null}},Z5=({pkh:e})=>{const t=Nq()(e);return t?{type:t.type,pkh:e,label:t.label}:null},Y5=({pkh:e})=>{const t=(()=>{const e=W5();return t=>e.find((e=>e.address===t))})(),r=t(e);return r?{pkh:e,type:"baker",label:r.name}:null},X5=({pkh:e})=>{const t=Tq()(e);return t?{pkh:e,type:"contact",label:t}:null},J5=({number:e,size:t="md"})=>{const r="md"===t?"md":"lg",n="md"===t?"sm":"md",{integer:i,decimal:o}=(e=>{const[t,r]=e.split(".");return{integer:t,decimal:r}})(e);return(0,Yn.jsxs)(Xn,{alignItems:"end","data-testid":"pretty-number",children:[(0,Yn.jsx)(ui,{size:r,children:i}),o&&(0,Yn.jsxs)(ui,{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",size:n,children:[".",o]})]})},Q5=({address:e,size:t,...r})=>{const n=K5()(e);if(!n)return null;const i=D5(n);return(0,Yn.jsx)(ei,{overflow:"hidden",textAlign:"right","data-testid":"account-balance",...r,children:(0,Yn.jsx)(J5,{number:i,size:t})})},e6=({address:e,...t})=>{const r=G5(e);return(0,Yn.jsx)($V,{background:EP.white,hasArrow:!0,label:r.label,placement:"left",children:(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",width:"400px",padding:"9px 10px",background:EP.gray[800],borderRadius:"4px","data-testid":"address-tile",...t,children:[(0,Yn.jsxs)(Xn,{alignItems:"center",children:[(0,Yn.jsx)(YV,{addressKind:r}),"unknown"===r.type?(0,Yn.jsx)(ZB,{marginLeft:"10px",color:EP.gray[300],size:"sm",children:e.pkh}):(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(ei,{overflow:"hidden",width:"102px",marginLeft:"12px",whiteSpace:"nowrap",children:(0,Yn.jsx)(ui,{overflow:"hidden",textOverflow:"ellipsis",size:"sm",children:r.label})}),(0,Yn.jsx)(ZB,{width:"89px",marginLeft:"10px",color:EP.gray[300],size:"xs",children:z5(r.pkh)})]})]}),(0,Yn.jsx)(Q5,{overflow:"hidden",textAlign:"right",address:e.pkh})]})})},t6=({contacts:e,onChange:t})=>0===e.length?null:(0,Yn.jsx)(K$,{position:"absolute",zIndex:2,overflowY:"auto",width:"100%",maxHeight:300,marginTop:"8px",marginLeft:0,background:EP.gray[700],border:"1px solid",borderColor:EP.gray[500],borderRadius:"8px","data-testid":"suggestions-list",listStyleType:"none",children:e.map(((r,n)=>(0,Yn.jsx)(ei,{children:(0,Yn.jsx)(W$,{marginBottom:n===e.length-1?"5px":0,padding:"5px 15px 0 5px",onMouseDown:()=>{t(r.name)},children:(0,Yn.jsx)(e6,{width:"370px",height:"40px",padding:"10px 8px 10px 5px",background:EP.gray[700],borderRadius:"4px",_hover:{background:EP.gray[500]},cursor:"pointer",address:qu(r.pkh)})})},r.pkh)))}),r6=(e,t)=>{if(""===e)return t;return t.filter((t=>t.name.toLowerCase().includes(e.trim().toLowerCase())))},n6=({contacts:e,isDisabled:t,isLoading:r=!1,allowUnknown:i,inputName:o,onUpdate:a,validate:s,label:c,keepValid:l,style:u,size:d})=>{const{register:h,setValue:f,formState:{defaultValues:p},getValues:m}=pF(),g=f,v=(0,n.useId)(),[y,b]=(0,n.useState)((()=>{var t;if(l||!p)return"";const r=(0,Va.get)(p,o);return r?(null===(t=e.find((e=>e.pkh===r)))||void 0===t?void 0:t.name)||r:""})),[w,x]=(0,n.useState)(!0),[_,S]=(0,n.useState)(r6("",e)),k=m(o),E=t=>{b(t),S(r6(t,e));const r=e.find((e=>e.name===t||e.pkh===t));let n;if(void 0!==r)n=r.pkh,x(!0);else if(i&&Ku(t))n=t;else{if(l)return;n=""}g(o,n,{shouldValidate:!0}),a&&a(n)};let A="raw_input";r?A="selected_tile":t?A="disabled_tile":k&&(A="selected_tile");const P=()=>{E(""),x(!1)};return(0,Yn.jsxs)(ei,{"data-testid":`address-autocomplete-${o}`,children:[(0,Yn.jsx)(T$,{htmlFor:v,children:c}),"disabled_tile"===A&&(0,Yn.jsx)(e6,{address:qu(k)}),"selected_tile"===A&&(0,Yn.jsx)(ei,{height:"48px",background:EP.gray[800],border:"1px solid",borderColor:EP.gray[500],borderRadius:"4px","data-testid":`selected-address-tile-${k}`,onClick:P,paddingY:0,children:(0,Yn.jsxs)(Jn,{justifyContent:"space-between",cursor:"pointer","data-testid":"clear-selected-button",children:[(0,Yn.jsx)(e6,{width:"short"===d?"338px":"365px",paddingTop:"8px",background:"transparent",address:qu(k)}),l?(0,Yn.jsx)(yj,{marginRight:"12px","data-testid":"chevron-icon"}):(0,Yn.jsx)(i6,{marginRight:"14px"})]})}),"raw_input"===A&&(0,Yn.jsxs)(M$,{children:[(0,Yn.jsx)(D$,{...u,"aria-label":o,autoComplete:"off",id:v,onBlur:e=>{if(e.preventDefault(),x(!0),l&&k!==e.target.value)return E(k);E(e.target.value)},onChange:e=>E(e.target.value),onFocus:()=>x(!1),placeholder:"Enter address or contact name",value:y}),(0,Yn.jsx)(F$,{children:y?(0,Yn.jsx)(i6,{marginRight:"0px",onClick:P}):(0,Yn.jsx)(yj,{"data-testid":"chevron-icon"})})]}),(0,Yn.jsx)(D$,{...h(o,{required:"Invalid address or contact name",validate:s}),marginBottom:0,"data-testid":`real-address-input-${o}`,name:o,type:"hidden"}),!w&&(0,Yn.jsx)(t6,{contacts:_,onChange:E})]})},i6=e=>(0,Yn.jsx)(PR,{marginRight:"16px",stroke:EP.gray[450],cursor:"pointer","data-testid":"clear-input-button",...e}),o6=e=>{const t=Object.values(Pq()),r=Iq().map((e=>({name:e.label,pkh:e.address.pkh})));return(0,Yn.jsx)(n6,{...e,contacts:t.concat(r)})},a6=e=>{const t=jq().map((e=>({name:e.label,pkh:e.address.pkh})));return(0,Yn.jsx)(n6,{...e,contacts:t})},s6=e=>{const t=Iq().map((e=>({name:e.label,pkh:e.address.pkh})));return(0,Yn.jsx)(n6,{...e,contacts:t})},c6=e=>{const t=W5().map((e=>({name:e.name,pkh:e.address})));return(0,Yn.jsx)(n6,{...e,contacts:t})},l6=e=>{const t=Bq()(e.account).map((e=>({name:e.label,pkh:e.address.pkh})));return(0,Yn.jsx)(n6,{allowUnknown:!1,contacts:t,isDisabled:1===t.length,...e})},u6=({request:e,onSuccess:t})=>{const r=(()=>{const e=to();return(t,r,n)=>e(Id.actions.addConnection({dAppId:t,accountPkh:r,networkType:n}))})(),n=jq(),i=_$({mode:"onBlur"}),{getValues:o,formState:{errors:a,isValid:s}}=i;return(0,Yn.jsxs)(KB,{children:[(0,Yn.jsxs)(WB,{marginBottom:"24px",children:[(0,Yn.jsx)(Xn,{alignItems:"center",justifyContent:"center",children:"Permission Request"}),(0,Yn.jsxs)(ZB,{marginTop:"10px",color:EP.gray[400],textAlign:"center",size:"sm",children:[e.appMetadata.name," is requesting permission to sign this operation."]}),(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"center",marginTop:"10px",children:[(0,Yn.jsx)(ui,{marginRight:"4px",color:EP.gray[450],size:"sm",children:"Network:"}),(0,Yn.jsx)(ZB,{color:EP.gray[400],size:"sm",children:e.network.type})]})]}),(0,Yn.jsx)(YB,{}),(0,Yn.jsxs)(XB,{"data-testid":"beacon-request-body",children:[e.appMetadata.icon&&(0,Yn.jsxs)(Xn,{alignItems:"center",marginTop:"16px",padding:"15px",borderRadius:"4px",backgroundColor:EP.gray[800],children:[(0,Yn.jsx)(QB,{width:"60px",marginRight:"12px",ratio:1,children:(0,Yn.jsx)(vR,{borderRadius:"4px",src:e.appMetadata.icon})}),(0,Yn.jsx)(ui,{size:"sm",children:e.appMetadata.name})]}),(0,Yn.jsx)(kU,{marginTop:"16px",allowToggle:!0,children:(0,Yn.jsxs)(EU,{background:EP.gray[800],border:"none",borderRadius:"8px",children:[(0,Yn.jsxs)(AU,{children:[(0,Yn.jsx)(ui,{flex:"1",textAlign:"left",marginY:"10px",size:"md",children:"Request Payload"}),(0,Yn.jsx)(PU,{})]}),(0,Yn.jsx)(RU,{children:(0,Yn.jsx)(O$,{value:e})})]})}),(0,Yn.jsx)(mF,{...i,children:(0,Yn.jsxs)(DU,{marginTop:"24px",isInvalid:!!a.address,children:[(0,Yn.jsx)(a6,{allowUnknown:!1,inputName:"address",label:"Select Account"}),a.address&&(0,Yn.jsx)(FU,{children:a.address.message})]})})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(Si,{width:"100%",isDisabled:!s,onClick:i=>(async()=>{const i=n.find((e=>e.address.pkh===o().address));if(!i)throw new Error("No account selected");const a={type:jM.PermissionResponse,network:{type:e.network.type},scopes:e.scopes,id:e.id,publicKey:i.pk,walletType:"implicit"};await Bte.respond(a),r(e.senderId,i.address.pkh,e.network.type),t()})(),size:"lg",children:"Grant"})})]})};var d6=ne(((e,t)=>{const{icon:r,children:i,isRound:o,"aria-label":a,...s}=e,c=r||i,l=(0,n.isValidElement)(c)?(0,n.cloneElement)(c,{"aria-hidden":!0,focusable:!1}):null;return(0,Yn.jsx)(Si,{padding:"0",borderRadius:o?"full":void 0,ref:t,"aria-label":a,...s,children:l})}));function h6(e){return Xj({tag:"svg",attr:{version:"1.1",x:"0px",y:"0px",viewBox:"0 0 48 48",enableBackground:"new 0 0 48 48"},child:[{tag:"path",attr:{fill:"#FFC107",d:"M43.611,20.083H42V20H24v8h11.303c-1.649,4.657-6.08,8-11.303,8c-6.627,0-12-5.373-12-12\r\n\tc0-6.627,5.373-12,12-12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657C34.046,6.053,29.268,4,24,4C12.955,4,4,12.955,4,24\r\n\tc0,11.045,8.955,20,20,20c11.045,0,20-8.955,20-20C44,22.659,43.862,21.35,43.611,20.083z"}},{tag:"path",attr:{fill:"#FF3D00",d:"M6.306,14.691l6.571,4.819C14.655,15.108,18.961,12,24,12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657\r\n\tC34.046,6.053,29.268,4,24,4C16.318,4,9.656,8.337,6.306,14.691z"}},{tag:"path",attr:{fill:"#4CAF50",d:"M24,44c5.166,0,9.86-1.977,13.409-5.192l-6.19-5.238C29.211,35.091,26.715,36,24,36\r\n\tc-5.202,0-9.619-3.317-11.283-7.946l-6.522,5.025C9.505,39.556,16.227,44,24,44z"}},{tag:"path",attr:{fill:"#1976D2",d:"M43.611,20.083H42V20H24v8h11.303c-0.792,2.237-2.231,4.166-4.087,5.571\r\n\tc0.001-0.001,0.002-0.001,0.003-0.002l6.19,5.238C36.971,39.205,44,34,44,24C44,22.659,43.862,21.35,43.611,20.083z"}}]})(e)}function f6(e){return f6="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f6(e)}function p6(e){var t=function(e,t){if("object"!==f6(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==f6(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===f6(t)?t:String(t)}function m6(e,t,r){return(t=p6(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}d6.displayName="IconButton";var g6=r(4579),v6=r.n(g6),y6=r(8634),b6=r.n(y6);function w6(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function x6(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};const r={mode:"cors",headers:{}};(arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}).useAPIKey&&(r.headers=x6(x6({},r.headers),j6()));const n=v6()(r,t,{method:"GET"}),i=await C6(e,n);if(i.ok)return i.json();throw R6(i),i},M6=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const i={mode:"cors",headers:{"Content-Type":"application/json; charset=utf-8"}};n.useAPIKey&&(i.headers=x6(x6({},i.headers),j6()));const o=v6()(i,r,{method:"POST"});return n.isUrlEncodedData?(o.body=t,"application/json; charset=utf-8"===o.headers["Content-Type"]&&delete o.headers["Content-Type"]):o.body=JSON.stringify(t),((e,t)=>{const r=new Promise(((t,r)=>{const n=setTimeout((()=>{clearTimeout(n),r(new Error(`Timed out in ${e}ms`))}),e)}));return Promise.race([t,r])})(n.timeout||6e4,C6(e,o).then((e=>{if(n.logTracingHeader&&function(e){_6.info(`Request tracing with traceID=${e.headers.get("x-web3-correlation-id")}`)}(e),e.ok)return e.json();throw R6(e),e})))},L6=(e,t)=>({jsonrpc:"2.0",method:e,id:10,params:t});function N6(e,t){if(null==e)return{};var r,n,i=function(e,t){if(null==e)return{};var r,n,i={},o=Object.keys(e);for(n=0;n=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var D6=r(3521),z6=r.n(D6);Promise.resolve(!1),Promise.resolve(!0);var B6=Promise.resolve();function U6(e,t){return e||(e=0),new Promise((function(r){return setTimeout((function(){return r(t)}),e)}))}function F6(){return Math.random().toString(36).substring(2)}var $6=0,H6=0;function V6(){var e=(new Date).getTime();return e===$6?1e3*e+ ++H6:($6=e,H6=0,1e3*e)}var q6=b6().getLogger("broadcast-channel");q6.setLevel("error");const K6={create:function(e){var t={messagesCallback:null,bc:new BroadcastChannel(e),subFns:[]};return t.bc.onmessage=function(e){t.messagesCallback&&t.messagesCallback(e.data)},t},close:function(e){e.bc.close(),e.subFns=[]},onMessage:function(e,t){e.messagesCallback=t},postMessage:function(e,t){try{return e.bc.postMessage(t,!1),B6}catch(fde){return Promise.reject(fde)}},canBeUsed:function(e){if("undefined"===typeof window)return!1;if(!e.support3PC)return!1;if("function"===typeof BroadcastChannel){if(BroadcastChannel._pubkey)throw new Error("BroadcastChannel: Do not overwrite window.BroadcastChannel with this module, this is not a polyfill");return!0}return!1},type:"native",averageResponseTime:function(){return 150},microSeconds:V6};var W6=function(){function e(e){this.ttl=e,this.map=new Map,this._to=!1}return e.prototype.has=function(e){return this.map.has(e)},e.prototype.add=function(e){var t=this;this.map.set(e,G6()),this._to||(this._to=!0,setTimeout((function(){t._to=!1,function(e){var t=G6()-e.ttl,r=e.map[Symbol.iterator]();for(;;){var n=r.next().value;if(!n)return;var i=n[0];if(!(n[1]0&&void 0!==arguments[0]?arguments[0]:{},t=JSON.parse(JSON.stringify(e));return"undefined"===typeof t.support3PC&&(t.support3PC=function(){if("undefined"===typeof navigator)return!1;var e=z6().parse(navigator.userAgent);q6.info(JSON.stringify(e),"current browser info");var t=!0;return navigator.brave&&(t=!1),e.engine.name!==z6().ENGINE_MAP.WebKit&&e.engine.name!==z6().ENGINE_MAP.Gecko||(t=!1),t}()),"undefined"===typeof t.webWorkerSupport&&(t.webWorkerSupport=!0),t.idb||(t.idb={}),t.idb.ttl||(t.idb.ttl=45e3),t.idb.fallbackInterval||(t.idb.fallbackInterval=150),e.idb&&"function"===typeof e.idb.onclose&&(t.idb.onclose=e.idb.onclose),t.localstorage||(t.localstorage={}),t.localstorage.removeTimeout||(t.localstorage.removeTimeout=6e4),t.server||(t.server={}),t.server.url||(t.server.url="https://broadcast-server.tor.us"),t.server.removeTimeout||(t.server.removeTimeout=3e5),e.methods&&(t.methods=e.methods),t}var Y6="pubkey.broadcast-channel-0-",X6="messages",J6={durability:"relaxed"};function Q6(){if("undefined"!==typeof indexedDB)return indexedDB;if("undefined"!==typeof window){if("undefined"!==typeof window.mozIndexedDB)return window.mozIndexedDB;if("undefined"!==typeof window.webkitIndexedDB)return window.webkitIndexedDB;if("undefined"!==typeof window.msIndexedDB)return window.msIndexedDB}return!1}function e4(e){e.commit&&e.commit()}function t4(e,t){var r=e.transaction(X6,"readonly",J6),n=r.objectStore(X6),i=[],o=IDBKeyRange.bound(t+1,1/0);if(n.getAll){var a=n.getAll(o);return new Promise((function(e,t){a.onerror=function(e){return t(e)},a.onsuccess=function(t){e(t.target.result)}}))}return new Promise((function(e,a){var s=function(){try{return o=IDBKeyRange.bound(t+1,1/0),n.openCursor(o)}catch(e){return n.openCursor()}}();s.onerror=function(e){return a(e)},s.onsuccess=function(n){var o=n.target.result;o?o.value.ide.lastCursorId&&(e.lastCursorId=t.id),t})).filter((function(t){return function(e,t){return e.uuid!==t.uuid&&!t.eMIs.has(e.id)&&!(e.data.time{g4[m4[e]]=e}));const v4={type:"error",data:"parser error"},y4="function"===typeof Blob||"undefined"!==typeof Blob&&"[object BlobConstructor]"===Object.prototype.toString.call(Blob),b4="function"===typeof ArrayBuffer,w4=e=>"function"===typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer instanceof ArrayBuffer,x4=({type:e,data:t},r,n)=>y4&&t instanceof Blob?r?n(t):_4(t,n):b4&&(t instanceof ArrayBuffer||w4(t))?r?n(t):_4(new Blob([t]),n):n(m4[e]+(t||"")),_4=(e,t)=>{const r=new FileReader;return r.onload=function(){const e=r.result.split(",")[1];t("b"+(e||""))},r.readAsDataURL(e)};function S4(e){return e instanceof Uint8Array?e:e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}let k4;function E4(e,t){return y4&&e.data instanceof Blob?e.data.arrayBuffer().then(S4).then(t):b4&&(e.data instanceof ArrayBuffer||w4(e.data))?t(S4(e.data)):void x4(e,!1,(e=>{k4||(k4=new TextEncoder),t(k4.encode(e))}))}const A4="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",P4="undefined"===typeof Uint8Array?[]:new Uint8Array(256);for(let r=0;r<64;r++)P4[A4.charCodeAt(r)]=r;const O4="function"===typeof ArrayBuffer,T4=(e,t)=>{if("string"!==typeof e)return{type:"message",data:j4(e,t)};const r=e.charAt(0);if("b"===r)return{type:"message",data:C4(e.substring(1),t)};return g4[r]?e.length>1?{type:g4[r],data:e.substring(1)}:{type:g4[r]}:v4},C4=(e,t)=>{if(O4){const r=(e=>{let t,r,n,i,o,a=.75*e.length,s=e.length,c=0;"="===e[e.length-1]&&(a--,"="===e[e.length-2]&&a--);const l=new ArrayBuffer(a),u=new Uint8Array(l);for(t=0;t>4,u[c++]=(15&n)<<4|i>>2,u[c++]=(3&i)<<6|63&o;return l})(e);return j4(r,t)}return{base64:!0,data:e}},j4=(e,t)=>"blob"===t?e instanceof Blob?e:new Blob([e]):e instanceof ArrayBuffer?e:e.buffer,R4=String.fromCharCode(30);let I4;function M4(e){if(e)return function(e){for(var t in M4.prototype)e[t]=M4.prototype[t];return e}(e)}M4.prototype.on=M4.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},M4.prototype.once=function(e,t){function r(){this.off(e,r),t.apply(this,arguments)}return r.fn=t,this.on(e,r),this},M4.prototype.off=M4.prototype.removeListener=M4.prototype.removeAllListeners=M4.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var r,n=this._callbacks["$"+e];if(!n)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var i=0;i(e.hasOwnProperty(r)&&(t[r]=e[r]),t)),{})}const D4=L4.setTimeout,z4=L4.clearTimeout;function B4(e,t){t.useNativeTimers?(e.setTimeoutFn=D4.bind(L4),e.clearTimeoutFn=z4.bind(L4)):(e.setTimeoutFn=L4.setTimeout.bind(L4),e.clearTimeoutFn=L4.clearTimeout.bind(L4))}class U4 extends Error{constructor(e,t,r){super(e),this.description=t,this.context=r,this.type="TransportError"}}class F4 extends M4{constructor(e){super(),this.writable=!1,B4(this,e),this.opts=e,this.query=e.query,this.socket=e.socket}onError(e,t,r){return super.emitReserved("error",new U4(e,t,r)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return"opening"!==this.readyState&&"open"!==this.readyState||(this.doClose(),this.onClose()),this}send(e){"open"===this.readyState&&this.write(e)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(e){const t=T4(e,this.socket.binaryType);this.onPacket(t)}onPacket(e){super.emitReserved("packet",e)}onClose(e){this.readyState="closed",super.emitReserved("close",e)}pause(e){}createUri(e,t={}){return e+"://"+this._hostname()+this._port()+this.opts.path+this._query(t)}_hostname(){const e=this.opts.hostname;return-1===e.indexOf(":")?e:"["+e+"]"}_port(){return this.opts.port&&(this.opts.secure&&Number(443!==this.opts.port)||!this.opts.secure&&80!==Number(this.opts.port))?":"+this.opts.port:""}_query(e){const t=function(e){let t="";for(let r in e)e.hasOwnProperty(r)&&(t.length&&(t+="&"),t+=encodeURIComponent(r)+"="+encodeURIComponent(e[r]));return t}(e);return t.length?"?"+t:""}}const $4="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),H4=64,V4={};let q4,K4=0,W4=0;function G4(e){let t="";do{t=$4[e%H4]+t,e=Math.floor(e/H4)}while(e>0);return t}function Z4(){const e=G4(+new Date);return e!==q4?(K4=0,q4=e):e+"."+G4(K4++)}for(;W4{var e;3===r.readyState&&(null===(e=this.opts.cookieJar)||void 0===e||e.parseCookies(r)),4===r.readyState&&(200===r.status||1223===r.status?this.onLoad():this.setTimeoutFn((()=>{this.onError("number"===typeof r.status?r.status:0)}),0))},r.send(this.data)}catch(n){return void this.setTimeoutFn((()=>{this.onError(n)}),0)}"undefined"!==typeof document&&(this.index=t8.requestsCount++,t8.requests[this.index]=this)}onError(e){this.emitReserved("error",e,this.xhr),this.cleanup(!0)}cleanup(e){if("undefined"!==typeof this.xhr&&null!==this.xhr){if(this.xhr.onreadystatechange=Q4,e)try{this.xhr.abort()}catch(t){}"undefined"!==typeof document&&delete t8.requests[this.index],this.xhr=null}}onLoad(){const e=this.xhr.responseText;null!==e&&(this.emitReserved("data",e),this.emitReserved("success"),this.cleanup())}abort(){this.cleanup()}}if(t8.requestsCount=0,t8.requests={},"undefined"!==typeof document)if("function"===typeof attachEvent)attachEvent("onunload",r8);else if("function"===typeof addEventListener){addEventListener("onpagehide"in L4?"pagehide":"unload",r8,!1)}function r8(){for(let e in t8.requests)t8.requests.hasOwnProperty(e)&&t8.requests[e].abort()}const n8="function"===typeof Promise&&"function"===typeof Promise.resolve?e=>Promise.resolve().then(e):(e,t)=>t(e,0),i8=L4.WebSocket||L4.MozWebSocket;r(4872).Buffer;const o8="undefined"!==typeof navigator&&"string"===typeof navigator.product&&"reactnative"===navigator.product.toLowerCase();function a8(e,t){return"message"===e.type&&"string"!==typeof e.data&&t[0]>=48&&t[0]<=54}const s8={websocket:class extends F4{constructor(e){super(e),this.supportsBinary=!e.forceBase64}get name(){return"websocket"}doOpen(){if(!this.check())return;const e=this.uri(),t=this.opts.protocols,r=o8?{}:N4(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(r.headers=this.opts.extraHeaders);try{this.ws=o8?new i8(e,t,r):t?new i8(e,t):new i8(e)}catch(fde){return this.emitReserved("error",fde)}this.ws.binaryType=this.socket.binaryType||"arraybuffer",this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t{try{this.ws.send(e)}catch(t){}n&&n8((()=>{this.writable=!0,this.emitReserved("drain")}),this.setTimeoutFn)}))}}doClose(){"undefined"!==typeof this.ws&&(this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=Z4()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}check(){return!!i8}},webtransport:class extends F4{get name(){return"webtransport"}doOpen(){"function"===typeof WebTransport&&(this.transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name]),this.transport.closed.then((()=>{this.onClose()})).catch((e=>{this.onError("webtransport error",e)})),this.transport.ready.then((()=>{this.transport.createBidirectionalStream().then((e=>{const t=e.readable.getReader();let r;this.writer=e.writable.getWriter();const n=()=>{t.read().then((({done:e,value:t})=>{e||(r||1!==t.byteLength||54!==t[0]?(this.onPacket(function(e,t,r){I4||(I4=new TextDecoder);const n=t||e[0]<48||e[0]>54;return T4(n?e:I4.decode(e),r)}(t,r,"arraybuffer")),r=!1):r=!0,n())})).catch((e=>{}))};n();const i=this.query.sid?`0{"sid":"${this.query.sid}"}`:"0";this.writer.write((new TextEncoder).encode(i)).then((()=>this.onOpen()))}))})))}write(e){this.writable=!1;for(let t=0;t{a8(r,e)&&this.writer.write(Uint8Array.of(54)),this.writer.write(e).then((()=>{n&&n8((()=>{this.writable=!0,this.emitReserved("drain")}),this.setTimeoutFn)}))}))}}doClose(){var e;null===(e=this.transport)||void 0===e||e.close()}},polling:class extends F4{constructor(e){if(super(e),this.polling=!1,"undefined"!==typeof location){const t="https:"===location.protocol;let r=location.port;r||(r=t?"443":"80"),this.xd="undefined"!==typeof location&&e.hostname!==location.hostname||r!==e.port}const t=e&&e.forceBase64;this.supportsBinary=e8&&!t,this.opts.withCredentials&&(this.cookieJar=void 0)}get name(){return"polling"}doOpen(){this.poll()}pause(e){this.readyState="pausing";const t=()=>{this.readyState="paused",e()};if(this.polling||!this.writable){let e=0;this.polling&&(e++,this.once("pollComplete",(function(){--e||t()}))),this.writable||(e++,this.once("drain",(function(){--e||t()})))}else t()}poll(){this.polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){((e,t)=>{const r=e.split(R4),n=[];for(let i=0;i{if("opening"===this.readyState&&"open"===e.type&&this.onOpen(),"close"===e.type)return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(e)})),"closed"!==this.readyState&&(this.polling=!1,this.emitReserved("pollComplete"),"open"===this.readyState&&this.poll())}doClose(){const e=()=>{this.write([{type:"close"}])};"open"===this.readyState?e():this.once("open",e)}write(e){this.writable=!1,((e,t)=>{const r=e.length,n=new Array(r);let i=0;e.forEach(((e,o)=>{x4(e,!1,(e=>{n[o]=e,++i===r&&t(n.join(R4))}))}))})(e,(e=>{this.doWrite(e,(()=>{this.writable=!0,this.emitReserved("drain")}))}))}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return!1!==this.opts.timestampRequests&&(t[this.opts.timestampParam]=Z4()),this.supportsBinary||t.sid||(t.b64=1),this.createUri(e,t)}request(e={}){return Object.assign(e,{xd:this.xd,cookieJar:this.cookieJar},this.opts),new t8(this.uri(),e)}doWrite(e,t){const r=this.request({method:"POST",data:e});r.on("success",t),r.on("error",((e,t)=>{this.onError("xhr post error",e,t)}))}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",((e,t)=>{this.onError("xhr poll error",e,t)})),this.pollXhr=e}}},c8=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,l8=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function u8(e){const t=e,r=e.indexOf("["),n=e.indexOf("]");-1!=r&&-1!=n&&(e=e.substring(0,r)+e.substring(r,n).replace(/:/g,";")+e.substring(n,e.length));let i=c8.exec(e||""),o={},a=14;for(;a--;)o[l8[a]]=i[a]||"";return-1!=r&&-1!=n&&(o.source=t,o.host=o.host.substring(1,o.host.length-1).replace(/;/g,":"),o.authority=o.authority.replace("[","").replace("]","").replace(/;/g,":"),o.ipv6uri=!0),o.pathNames=function(e,t){const r=/\/{2,9}/g,n=t.replace(r,"/").split("/");"/"!=t.slice(0,1)&&0!==t.length||n.splice(0,1);"/"==t.slice(-1)&&n.splice(n.length-1,1);return n}(0,o.path),o.queryKey=function(e,t){const r={};return t.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,(function(e,t,n){t&&(r[t]=n)})),r}(0,o.query),o}class d8 extends M4{constructor(e,t={}){super(),this.writeBuffer=[],e&&"object"===typeof e&&(t=e,e=null),e?(e=u8(e),t.hostname=e.host,t.secure="https"===e.protocol||"wss"===e.protocol,t.port=e.port,e.query&&(t.query=e.query)):t.host&&(t.hostname=u8(t.host).host),B4(this,t),this.secure=null!=t.secure?t.secure:"undefined"!==typeof location&&"https:"===location.protocol,t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||("undefined"!==typeof location?location.hostname:"localhost"),this.port=t.port||("undefined"!==typeof location&&location.port?location.port:this.secure?"443":"80"),this.transports=t.transports||["polling","websocket","webtransport"],this.writeBuffer=[],this.prevBufferLen=0,this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),"string"===typeof this.opts.query&&(this.opts.query=function(e){let t={},r=e.split("&");for(let n=0,i=r.length;n{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this.beforeunloadEventListener,!1)),"localhost"!==this.hostname&&(this.offlineEventListener=()=>{this.onClose("transport close",{description:"network connection lost"})},addEventListener("offline",this.offlineEventListener,!1))),this.open()}createTransport(e){const t=Object.assign({},this.opts.query);t.EIO=4,t.transport=e,this.id&&(t.sid=this.id);const r=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new s8[e](r)}open(){let e;if(this.opts.rememberUpgrade&&d8.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket"))e="websocket";else{if(0===this.transports.length)return void this.setTimeoutFn((()=>{this.emitReserved("error","No transports available")}),0);e=this.transports[0]}this.readyState="opening";try{e=this.createTransport(e)}catch(t){return this.transports.shift(),void this.open()}e.open(),this.setTransport(e)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",(e=>this.onClose("transport close",e)))}probe(e){let t=this.createTransport(e),r=!1;d8.priorWebsocketSuccess=!1;const n=()=>{r||(t.send([{type:"ping",data:"probe"}]),t.once("packet",(e=>{if(!r)if("pong"===e.type&&"probe"===e.data){if(this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;d8.priorWebsocketSuccess="websocket"===t.name,this.transport.pause((()=>{r||"closed"!==this.readyState&&(l(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())}))}else{const e=new Error("probe error");e.transport=t.name,this.emitReserved("upgradeError",e)}})))};function i(){r||(r=!0,l(),t.close(),t=null)}const o=e=>{const r=new Error("probe error: "+e);r.transport=t.name,i(),this.emitReserved("upgradeError",r)};function a(){o("transport closed")}function s(){o("socket closed")}function c(e){t&&e.name!==t.name&&i()}const l=()=>{t.removeListener("open",n),t.removeListener("error",o),t.removeListener("close",a),this.off("close",s),this.off("upgrading",c)};t.once("open",n),t.once("error",o),t.once("close",a),this.once("close",s),this.once("upgrading",c),-1!==this.upgrades.indexOf("webtransport")&&"webtransport"!==e?this.setTimeoutFn((()=>{r||t.open()}),200):t.open()}onOpen(){if(this.readyState="open",d8.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush(),"open"===this.readyState&&this.opts.upgrade){let e=0;const t=this.upgrades.length;for(;e{this.onClose("ping timeout")}),this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}onDrain(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()}flush(){if("closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this.getWritablePackets();this.transport.send(e),this.prevBufferLen=e.length,this.emitReserved("flush")}}getWritablePackets(){if(!(this.maxPayload&&"polling"===this.transport.name&&this.writeBuffer.length>1))return this.writeBuffer;let e=1;for(let r=0;r=57344?r+=3:(n++,r+=4);return r}(t):Math.ceil(1.33*(t.byteLength||t.size))),r>0&&e>this.maxPayload)return this.writeBuffer.slice(0,r);e+=2}var t;return this.writeBuffer}write(e,t,r){return this.sendPacket("message",e,t,r),this}send(e,t,r){return this.sendPacket("message",e,t,r),this}sendPacket(e,t,r,n){if("function"===typeof t&&(n=t,t=void 0),"function"===typeof r&&(n=r,r=null),"closing"===this.readyState||"closed"===this.readyState)return;(r=r||{}).compress=!1!==r.compress;const i={type:e,data:t,options:r};this.emitReserved("packetCreate",i),this.writeBuffer.push(i),n&&this.once("flush",n),this.flush()}close(){const e=()=>{this.onClose("forced close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},r=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return"opening"!==this.readyState&&"open"!==this.readyState||(this.readyState="closing",this.writeBuffer.length?this.once("drain",(()=>{this.upgrading?r():e()})):this.upgrading?r():e()),this}onError(e){d8.priorWebsocketSuccess=!1,this.emitReserved("error",e),this.onClose("transport error",e)}onClose(e,t){"opening"!==this.readyState&&"open"!==this.readyState&&"closing"!==this.readyState||(this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),"function"===typeof removeEventListener&&(removeEventListener("beforeunload",this.beforeunloadEventListener,!1),removeEventListener("offline",this.offlineEventListener,!1)),this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this.prevBufferLen=0)}filterUpgrades(e){const t=[];let r=0;const n=e.length;for(;r"function"===typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e.buffer instanceof ArrayBuffer,p8=Object.prototype.toString,m8="function"===typeof Blob||"undefined"!==typeof Blob&&"[object BlobConstructor]"===p8.call(Blob),g8="function"===typeof File||"undefined"!==typeof File&&"[object FileConstructor]"===p8.call(File);function v8(e){return h8&&(e instanceof ArrayBuffer||f8(e))||m8&&e instanceof Blob||g8&&e instanceof File}function y8(e,t){if(!e||"object"!==typeof e)return!1;if(Array.isArray(e)){for(let t=0,r=e.length;t=0&&e.num{delete this.acks[e];for(let t=0;t{this.io.clearTimeoutFn(i),t.apply(this,[null,...e])}}emitWithAck(e,...t){const r=void 0!==this.flags.timeout||void 0!==this._opts.ackTimeout;return new Promise(((n,i)=>{t.push(((e,t)=>r?e?i(e):n(t):n(e))),this.emit(e,...t)}))}_addToQueue(e){let t;"function"===typeof e[e.length-1]&&(t=e.pop());const r={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push(((e,...n)=>{if(r!==this._queue[0])return;return null!==e?r.tryCount>this._opts.retries&&(this._queue.shift(),t&&t(e)):(this._queue.shift(),t&&t(null,...n)),r.pending=!1,this._drainQueue()})),this._queue.push(r),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||0===this._queue.length)return;const t=this._queue[0];t.pending&&!e||(t.pending=!0,t.tryCount++,this.flags=t.flags,this.emit.apply(this,t.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){"function"==typeof this.auth?this.auth((e=>{this._sendConnectPacket(e)})):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:E8.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t)}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case E8.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case E8.EVENT:case E8.BINARY_EVENT:this.onevent(e);break;case E8.ACK:case E8.BINARY_ACK:this.onack(e);break;case E8.DISCONNECT:this.ondisconnect();break;case E8.CONNECT_ERROR:this.destroy();const t=new Error(e.data.message);t.data=e.data.data,this.emitReserved("connect_error",t)}}onevent(e){const t=e.data||[];null!=e.id&&t.push(this.ack(e.id)),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const r of t)r.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&"string"===typeof e[e.length-1]&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let r=!1;return function(...n){r||(r=!0,t.packet({type:E8.ACK,id:e,data:n}))}}onack(e){const t=this.acks[e.id];"function"===typeof t&&(t.apply(this,e.data),delete this.acks[e.id])}onconnect(e,t){this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach((e=>this.emitEvent(e))),this.receiveBuffer=[],this.sendBuffer.forEach((e=>{this.notifyOutgoingListeners(e),this.packet(e)})),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach((e=>e())),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:E8.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let r=0;r0&&e.jitter<=1?e.jitter:0,this.attempts=0}I8.prototype.duration=function(){var e=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var t=Math.random(),r=Math.floor(t*this.jitter*e);e=0==(1&Math.floor(10*t))?e-r:e+r}return 0|Math.min(e,this.max)},I8.prototype.reset=function(){this.attempts=0},I8.prototype.setMin=function(e){this.ms=e},I8.prototype.setMax=function(e){this.max=e},I8.prototype.setJitter=function(e){this.jitter=e};class M8 extends M4{constructor(e,r){var n;super(),this.nsps={},this.subs=[],e&&"object"===typeof e&&(r=e,e=void 0),(r=r||{}).path=r.path||"/socket.io",this.opts=r,B4(this,r),this.reconnection(!1!==r.reconnection),this.reconnectionAttempts(r.reconnectionAttempts||1/0),this.reconnectionDelay(r.reconnectionDelay||1e3),this.reconnectionDelayMax(r.reconnectionDelayMax||5e3),this.randomizationFactor(null!==(n=r.randomizationFactor)&&void 0!==n?n:.5),this.backoff=new I8({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(null==r.timeout?2e4:r.timeout),this._readyState="closed",this.uri=e;const i=r.parser||t;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=!1!==r.autoConnect,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,this):this._reconnection}reconnectionAttempts(e){return void 0===e?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return void 0===e?this._reconnectionDelay:(this._reconnectionDelay=e,null===(t=this.backoff)||void 0===t||t.setMin(e),this)}randomizationFactor(e){var t;return void 0===e?this._randomizationFactor:(this._randomizationFactor=e,null===(t=this.backoff)||void 0===t||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return void 0===e?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,null===(t=this.backoff)||void 0===t||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&0===this.backoff.attempts&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new d8(this.uri,this.opts);const t=this.engine,r=this;this._readyState="opening",this.skipReconnect=!1;const n=C8(t,"open",(function(){r.onopen(),e&&e()})),i=t=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",t),e?e(t):this.maybeReconnectOnOpen()},o=C8(t,"error",i);if(!1!==this._timeout){const e=this._timeout,r=this.setTimeoutFn((()=>{n(),i(new Error("timeout")),t.close()}),e);this.opts.autoUnref&&r.unref(),this.subs.push((()=>{this.clearTimeoutFn(r)}))}return this.subs.push(n),this.subs.push(o),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(C8(e,"ping",this.onping.bind(this)),C8(e,"data",this.ondata.bind(this)),C8(e,"error",this.onerror.bind(this)),C8(e,"close",this.onclose.bind(this)),C8(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(t){this.onclose("parse error",t)}}ondecoded(e){n8((()=>{this.emitReserved("packet",e)}),this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,t){let r=this.nsps[e];return r?this._autoConnect&&!r.active&&r.connect():(r=new R8(this,e,t),this.nsps[e]=r),r}_destroy(e){const t=Object.keys(this.nsps);for(const r of t){if(this.nsps[r].active)return}this._close()}_packet(e){const t=this.encoder.encode(e);for(let r=0;re())),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close"),this.engine&&this.engine.close()}disconnect(){return this._close()}onclose(e,t){this.cleanup(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();this._reconnecting=!0;const r=this.setTimeoutFn((()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),e.skipReconnect||e.open((t=>{t?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",t)):e.onreconnect()})))}),t);this.opts.autoUnref&&r.unref(),this.subs.push((()=>{this.clearTimeoutFn(r)}))}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const L8={};function N8(e,t){"object"===typeof e&&(t=e,e=void 0);const r=function(e,t="",r){let n=e;r=r||"undefined"!==typeof location&&location,null==e&&(e=r.protocol+"//"+r.host),"string"===typeof e&&("/"===e.charAt(0)&&(e="/"===e.charAt(1)?r.protocol+e:r.host+e),/^(https?|wss?):\/\//.test(e)||(e="undefined"!==typeof r?r.protocol+"//"+e:"https://"+e),n=u8(e)),n.port||(/^(http|ws)$/.test(n.protocol)?n.port="80":/^(http|ws)s$/.test(n.protocol)&&(n.port="443")),n.path=n.path||"/";const i=-1!==n.host.indexOf(":")?"["+n.host+"]":n.host;return n.id=n.protocol+"://"+i+":"+n.port+t,n.href=n.protocol+"://"+i+(r&&r.port===n.port?"":":"+n.port),n}(e,(t=t||{}).path||"/socket.io"),n=r.source,i=r.id,o=r.path,a=L8[i]&&o in L8[i].nsps;let s;return t.forceNew||t["force new connection"]||!1===t.multiplex||a?s=new M8(n,t):(L8[i]||(L8[i]=new M8(n,t)),s=L8[i]),r.query&&!t.query&&(t.query=r.queryKey),s.socket(r.path,t)}Object.assign(N8,{Manager:M8,Socket:R8,io:N8,connect:N8});var D8=r(8247),z8=r.n(D8),B8=r(4872).Buffer;const U8=new $s.ec("secp256k1"),F8=r.g.crypto||r.g.msCrypto||{},$8=F8.subtle||F8.webkitSubtle,H8=B8.from("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141","hex"),V8=B8.alloc(32,0);function q8(e,t){if(!e)throw new Error(t||"Assertion failed")}function K8(e){return!!function(e){return B8.isBuffer(e)&&32===e.length}(e)&&(e.compare(V8)>0&&e.compare(H8)<0)}function W8(e){const t=new Uint8Array(e);return"undefined"===typeof F8.getRandomValues?B8.from(z8().randomBytes(e)):(F8.getRandomValues(t),B8.from(t))}async function G8(e){if($8){const t=await $8.digest("SHA-512",e);return new Uint8Array(t)}const t=z8().createHash("sha512").update(e).digest();return new Uint8Array(t)}function Z8(e){return async function(t,r,n){if($8){const i={name:"AES-CBC"},o=await $8.importKey("raw",r,i,!1,[e]),a={name:"AES-CBC",iv:t},s=await $8[e](a,o,n);return B8.from(new Uint8Array(s))}if("encrypt"===e){const e=z8().createCipheriv("aes-256-cbc",r,t),i=e.update(n),o=e.final();return B8.concat([i,o])}if("decrypt"===e){const e=z8().createDecipheriv("aes-256-cbc",r,t),i=e.update(n),o=e.final();return B8.concat([i,o])}throw new Error(`Unsupported operation: ${e}`)}}const Y8=Z8("encrypt"),X8=Z8("decrypt");async function J8(e,t){if($8){const r={name:"HMAC",hash:{name:"SHA-256"}},n=await $8.importKey("raw",new Uint8Array(e),r,!1,["sign","verify"]),i=await $8.sign("HMAC",n,t);return B8.from(new Uint8Array(i))}const r=z8().createHmac("sha256",B8.from(e));r.update(t);return r.digest()}const Q8=function(){let e=W8(32);for(;!K8(e);)e=W8(32);return e},e9=function(e){return q8(32===e.length,"Bad private key"),q8(K8(e),"Bad private key"),B8.from(U8.keyFromPrivate(e).getPublic("array"))},t9=async function(e,t){return q8(32===e.length,"Bad private key"),q8(K8(e),"Bad private key"),q8(t.length>0,"Message should not be empty"),q8(t.length<=32,"Message is too long"),B8.from(U8.sign(t,e,{canonical:!0}).toDER())},r9=async function(e,t){q8(B8.isBuffer(e),"Bad private key"),q8(B8.isBuffer(t),"Bad public key"),q8(32===e.length,"Bad private key"),q8(K8(e),"Bad private key"),q8(65===t.length||33===t.length,"Bad public key"),65===t.length&&q8(4===t[0],"Bad public key"),33===t.length&&q8(2===t[0]||3===t[0],"Bad public key");const r=U8.keyFromPrivate(e),n=U8.keyFromPublic(t),i=r.derive(n.getPublic());return B8.from(i.toArray())},n9=async function(e,t){q8(B8.isBuffer(e),"Bad private key"),q8(B8.isBuffer(t),"Bad public key"),q8(32===e.length,"Bad private key"),q8(K8(e),"Bad private key"),q8(65===t.length||33===t.length,"Bad public key"),65===t.length&&q8(4===t[0],"Bad public key"),33===t.length&&q8(2===t[0]||3===t[0],"Bad public key");const r=U8.keyFromPrivate(e),n=U8.keyFromPublic(t),i=r.derive(n.getPublic());return B8.from(i.toString(16,64),"hex")},i9=async function(e,t,r){let n=(r=r||{}).ephemPrivateKey||W8(32);for(;!K8(n);)n=r.ephemPrivateKey||W8(32);const i=e9(n),o=await r9(n,e),a=await G8(o),s=r.iv||W8(16),c=a.slice(0,32),l=a.slice(32),u=await Y8(s,B8.from(c),t),d=B8.concat([s,i,u]);return{iv:s,ephemPublicKey:i,ciphertext:u,mac:await J8(B8.from(l),d)}},o9=async function(e,t,r){const n=null!==r&&void 0!==r&&r,i=n?n9:r9,o=await i(e,t.ephemPublicKey),a=await G8(o),s=a.slice(0,32),c=a.slice(32),l=B8.concat([t.iv,t.ephemPublicKey,t.ciphertext]),u=await async function(e,t,r){return function(e,t){if(e.length!==t.length)return!1;let r=0;for(let n=0;n0||e._addEL.internal.length>0}function N9(e,t,r){e._addEL[t].push(r),function(e){if(!e._iL&&L9(e)){var t=function(t){e._addEL[t.type].forEach((function(r){var n=1e5,i=r.time-n;(t.time>=i||"server"===e.method.type)&&r.fn(t.data)}))},r=e.method.microSeconds();e._prepP?e._prepP.then((function(){e._iL=!0,e.method.onMessage(e._state,t,r)})):(e._iL=!0,e.method.onMessage(e._state,t,r))}}(e)}function D9(e,t,r){e._addEL[t]=e._addEL[t].filter((function(e){return e!==r})),function(e){if(e._iL&&!L9(e)){e._iL=!1;var t=e.method.microSeconds();e.method.onMessage(e._state,null,t)}}(e)}function z9(e){this.message=e}I9._pubkey=!0,I9.prototype={postMessage:function(e){if(this.closed)throw new Error("BroadcastChannel.postMessage(): Cannot post message after channel has closed "+JSON.stringify(e));return M9(this,"message",e)},postInternal:function(e){return M9(this,"internal",e)},set onmessage(e){var t={time:this.method.microSeconds(),fn:e};D9(this,"message",this._onML),e&&"function"===typeof e?(this._onML=t,N9(this,"message",t)):this._onML=null},addEventListener:function(e,t){N9(this,e,{time:this.method.microSeconds(),fn:t})},removeEventListener:function(e,t){D9(this,e,this._addEL[e].find((function(e){return e.fn===t})))},close:function(){var e=this;if(!this.closed){j9.delete(this),this.closed=!0;var t=this._prepP?this._prepP:B6;return this._onML=null,this._addEL.message=[],t.then((function(){return Promise.all(Array.from(e._uMP))})).then((function(){return Promise.all(e._befC.map((function(e){return e()})))})).then((function(){return e.method.close(e._state)}))}},get type(){return this.method.type},get isClosed(){return this.closed}},z9.prototype=new Error,z9.prototype.name="InvalidCharacterError";var B9="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(e){var t=String(e).replace(/=+$/,"");if(t.length%4==1)throw new z9("'atob' failed: The string to be decoded is not correctly encoded.");for(var r,n,i=0,o=0,a="";n=t.charAt(o++);~n&&(r=i%4?64*r+n:n,i++%4)?a+=String.fromCharCode(255&r>>(-2*i&6)):0)n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(n);return a};function U9(e){this.message=e}U9.prototype=new Error,U9.prototype.name="InvalidTokenError";const F9=function(e,t){if("string"!=typeof e)throw new U9("Invalid token specified");var r=!0===(t=t||{}).header?0:1;try{return JSON.parse(function(e){var t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw"Illegal base64url string!"}try{return function(e){return decodeURIComponent(B9(e).replace(/(.)/g,(function(e,t){var r=t.charCodeAt(0).toString(16).toUpperCase();return r.length<2&&(r="0"+r),"%"+r})))}(t)}catch(e){return B9(t)}}(e.split(".")[r]))}catch(e){throw new U9("Invalid token specified: "+e.message)}},$9={MAINNET:"mainnet",TESTNET:"testnet",CYAN:"cyan",AQUA:"aqua",CELESTE:"celeste"},H9={SAPPHIRE_DEVNET:"sapphire_devnet",SAPPHIRE_TESTNET:"sapphire_testnet",SAPPHIRE_MAINNET:"sapphire_mainnet"},V9=[$9.AQUA,$9.CELESTE,$9.CYAN],q9={[$9.AQUA]:{migrationCompleted:!1,networkIdentifier:"aqua",networkMigratedTo:H9.SAPPHIRE_MAINNET},[$9.CELESTE]:{migrationCompleted:!1,networkIdentifier:"celeste",networkMigratedTo:H9.SAPPHIRE_MAINNET},[$9.CYAN]:{migrationCompleted:!1,networkIdentifier:"cyan",networkMigratedTo:H9.SAPPHIRE_MAINNET},[$9.MAINNET]:{migrationCompleted:!1,networkIdentifier:"mainnet",networkMigratedTo:H9.SAPPHIRE_MAINNET},[$9.TESTNET]:{migrationCompleted:!0,networkIdentifier:"teal",networkMigratedTo:H9.SAPPHIRE_TESTNET}},K9={[$9.MAINNET]:"https://signer.tor.us",[$9.TESTNET]:"https://signer.tor.us",[$9.CYAN]:"https://signer-polygon.tor.us",[$9.AQUA]:"https://signer-polygon.tor.us",[$9.CELESTE]:"https://signer-polygon.tor.us"},W9={[H9.SAPPHIRE_DEVNET]:["https://sapphire-dev-2-1.authnetwork.dev","https://sapphire-dev-2-2.authnetwork.dev","https://sapphire-dev-2-3.authnetwork.dev","https://sapphire-dev-2-4.authnetwork.dev","https://sapphire-dev-2-5.authnetwork.dev"],[H9.SAPPHIRE_TESTNET]:["https://sapphire-dev-2-1.authnetwork.dev","https://sapphire-dev-2-2.authnetwork.dev","https://sapphire-dev-2-3.authnetwork.dev","https://sapphire-dev-2-4.authnetwork.dev","https://sapphire-dev-2-5.authnetwork.dev"],[H9.SAPPHIRE_MAINNET]:["https://sapphire-1.auth.network","https://sapphire-2.auth.network","https://sapphire-3.auth.network","https://sapphire-4.auth.network","https://sapphire-5.auth.network"]},G9=(e,t)=>{const r=W9[e];if(!r||0===r.length)throw new Error(`Unsupported network: ${e}`);const n=q9[t];return r.map((e=>n&&n.networkIdentifier?`${e}/sss/${n.networkIdentifier}/jrpc`:`${e}/sss/jrpc`))},Z9=(e,t)=>{const r=W9[e];if(!r||0===r.length)throw new Error(`Unsupported network: ${e}`);const n=q9[t];return r.map((e=>n&&n.networkIdentifier?`${e}/rss/${n.networkIdentifier}`:`${e}/rss`))},Y9=(e,t)=>{const r=W9[e];if(!r||0===r.length)throw new Error(`Unsupported network: ${e}`);const n=q9[t];return r.map((e=>n&&n.networkIdentifier?`${e}/tss/${n.networkIdentifier}`:`${e}/tss`))},X9={currentEpoch:"19",torusNodeEndpoints:["https://torus-19.torusnode.com/jrpc","https://torus-node.ens.domains/jrpc","https://torus-node.matic.network/jrpc","https://torus.zilliqa.network/jrpc","https://torus-mainnet.cosmos.network/jrpc","https://torus2.etherscan.com/jrpc","https://torus-node-v2.skalelabs.com/jrpc","https://torus-node.binancex.dev/jrpc","https://torusnode.ont.io/jrpc"],torusIndexes:[1,2,3,4,5,6,7,8,9],torusNodePub:[{X:"bbe83c64177c3775550e6ba6ac2bc059f6847d644c9e4894e42c60d7974d8c2b",Y:"82b49a7caf70def38cdad2740af45c1e4f969650105c5019a29bb18b21a9acb5"},{X:"c208cac4ef9a47d386097a9c915b28e9cb89213abee8d26a17198ee261201b0d",Y:"c7db2fe4631109f40833de9dc78d07e35706549ee48fa557b33e4e75e1047873"},{X:"ca1766bb426d4ca5582818a0c5439d560ea64f5baa060793ab29dd3d0ceacfe",Y:"d46c1d08c40e1306e1bca328c2287b8268166b11a1ba4b8442ea2ad0c5e32152"},{X:"c3934dd2f6f4b3d2e1e398cc501e143c1e1a381b52feb6d1525af34d16253768",Y:"71f5141a5035799099f5ea3e241e66946bc55dc857ac3bd7d6fcdb8dcd3eeeef"},{X:"22e66f1929631d00bf026227581597f085fd94fd952fc0dca9f0833398b5c064",Y:"6088b3912e10a1e9d50355a609c10db7d188f16a2e2fd7357e51bf4f6a74f0a1"},{X:"9dc9fa410f3ce9eb70df70cdea00a49f2c4cc7a31c08c0dab5f863ed35ff5139",Y:"627a291cb87a75c61da3f65d6818e1e05e360217179817ed27e8c73bca7ec122"},{X:"118b9fc07e97b096d899b9f6658463ce6a8caa64038e37fc969df4e6023dd8c6",Y:"baf9fa4e51770f4796ea165dd03a769b8606681a38954a0a92c4cbffd6609ce9"},{X:"8a6d8b925da15a273dec3d8f8395ec35cd6878f274b2b180e4e106999db64043",Y:"96f67f870c157743da0b1eb84d89bf30500d74dc84c11f501ee1cb013acc8c46"},{X:"39cecb62e863729f572f7dfc46c24867981bf04bb405fed0df39e33984bfade5",Y:"61c2364434012e68a2be2e9952805037e52629d7762fafc8e10e9fb5bad8f790"}]},J9={[H9.SAPPHIRE_MAINNET]:[{X:"e0925898fee0e9e941fdca7ee88deec99939ae9407e923535c4d4a3a3ff8b052",Y:"54b9fea924e3f3e40791f9987f4234ae4222412d65b74068032fa5d8b63375c1"},{X:"9124cf1e280aab32ba50dffd2de81cecabc13d82d2c1fe9de82f3b3523f9b637",Y:"fca939a1ceb42ce745c55b21ef094f543b457630cb63a94ef4f1afeee2b1f107"},{X:"555f681a63d469cc6c3a58a97e29ebd277425f0e6159708e7c7bf05f18f89476",Y:"606f2bcc0884fa5b64366fc3e8362e4939841b56acd60d5f4553cf36b891ac4e"},{X:"2b5f58d8e340f1ab922e89b3a69a68930edfe51364644a456335e179bc130128",Y:"4b4daa05939426e3cbe7d08f0e773d2bf36f64c00d04620ee6df2a7af4d2247"},{X:"3ecbb6a68afe72cf34ec6c0a12b5cb78a0d2e83ba402983b6adbc5f36219861a",Y:"dc1031c5cc8f0472bd521a62a64ebca9e163902c247bf05937daf4ae835091e4"}],[H9.SAPPHIRE_TESTNET]:[{X:"f74389b0a4c8d10d2a687ae575f69b20f412d41ab7f1fe6b358aa14871327247",Y:"54e3a73098ed9bced3ef8821736e9794f9264a1420c0c7ad15d2fa617ba35ef7"},{X:"bc38813a6873e526087918507c78fc3a61624670ee851ecfb4f3bef55d027b5a",Y:"ac4b21229f662a0aefdfdac21cf17c3261a392c74a8790db218b34e3e4c1d56a"},{X:"b56541684ea5fa40c8337b7688d502f0e9e092098962ad344c34e94f06d293fb",Y:"759a998cef79d389082f9a75061a29190eec0cac99b8c25ddcf6b58569dad55c"},{X:"7bcb058d4c6ffc6ba4bfdfd93d141af35a66338a62c7c27cdad2ae3f8289b767",Y:"336ab1935e41ed4719e162587f0ab55518db4207a1eb36cc72303f1b86689d2b"},{X:"bf12a136ef94399ea098f926f04e26a4ec4ac70f69cce274e8893704c4951773",Y:"bdd44828020f52ce510e026338216ada184a6867eb4e19fb4c2d495d4a7e15e4"}],[H9.SAPPHIRE_DEVNET]:[{X:"f74389b0a4c8d10d2a687ae575f69b20f412d41ab7f1fe6b358aa14871327247",Y:"54e3a73098ed9bced3ef8821736e9794f9264a1420c0c7ad15d2fa617ba35ef7"},{X:"bc38813a6873e526087918507c78fc3a61624670ee851ecfb4f3bef55d027b5a",Y:"ac4b21229f662a0aefdfdac21cf17c3261a392c74a8790db218b34e3e4c1d56a"},{X:"b56541684ea5fa40c8337b7688d502f0e9e092098962ad344c34e94f06d293fb",Y:"759a998cef79d389082f9a75061a29190eec0cac99b8c25ddcf6b58569dad55c"},{X:"7bcb058d4c6ffc6ba4bfdfd93d141af35a66338a62c7c27cdad2ae3f8289b767",Y:"336ab1935e41ed4719e162587f0ab55518db4207a1eb36cc72303f1b86689d2b"},{X:"bf12a136ef94399ea098f926f04e26a4ec4ac70f69cce274e8893704c4951773",Y:"bdd44828020f52ce510e026338216ada184a6867eb4e19fb4c2d495d4a7e15e4"}]},Q9=(e,t)=>({currentEpoch:"1",torusNodeEndpoints:G9(e,t),torusNodeSSSEndpoints:G9(e,t),torusNodeRSSEndpoints:Z9(e,t),torusNodeTSSEndpoints:Y9(e,t),torusIndexes:[1,2,3,4,5],torusNodePub:J9[e]});const e7=b6().getLogger("fnd");class t7{constructor(){let{network:e=H9.SAPPHIRE_MAINNET,fndServerEndpoint:t,enableLogging:r=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m6(this,"fndServerEndpoint","https://fnd.tor.us/node-details"),m6(this,"_currentEpoch","1"),m6(this,"_torusNodeEndpoints",[]),m6(this,"_torusNodeRSSEndpoints",[]),m6(this,"_torusNodeSSSEndpoints",[]),m6(this,"_torusNodeTSSEndpoints",[]),m6(this,"_torusNodePub",[]),m6(this,"_torusIndexes",[]),m6(this,"updated",void 0),m6(this,"network",void 0),this.network=e,this.updated=!1,t&&(this.fndServerEndpoint=t),r?e7.enableAll():e7.disableAll()}get _nodeDetails(){return{currentEpoch:this._currentEpoch,torusNodeEndpoints:this._torusNodeEndpoints,torusNodeSSSEndpoints:this._torusNodeSSSEndpoints,torusNodeRSSEndpoints:this._torusNodeRSSEndpoints,torusNodeTSSEndpoints:this._torusNodeTSSEndpoints,torusNodePub:this._torusNodePub,torusIndexes:this._torusIndexes,updated:this.updated}}async getNodeDetails(e){let{verifier:t,verifierId:r}=e;try{if(this.updated&&!V9.includes(this.network))return this._nodeDetails;try{const{nodeDetails:e}=await I6(`${this.fndServerEndpoint}?network=${this.network}&verifier=${t}&verifierId=${r}`);return this.setNodeDetails(e),this._nodeDetails}catch(n){e7.error("Failed to fetch node details from server, using local.",n)}const e=function(e){if(Object.values(H9).includes(e))return Q9(e);if(Object.values($9).includes(e)){const t=q9[e];if(t.migrationCompleted)return Q9(t.networkMigratedTo,e);if(e===$9.MAINNET)return X9}}(this.network);if(!e)throw new Error("Failed to fetch node details");return this.setNodeDetails(e),this._nodeDetails}catch(n){throw e7.error("Failed to fetch node details",n),n}}setNodeDetails(e){const{currentEpoch:t,torusNodeEndpoints:r,torusNodeSSSEndpoints:n,torusNodeRSSEndpoints:i,torusNodeTSSEndpoints:o,torusNodePub:a,torusIndexes:s}=e;this._torusNodeEndpoints=r,this._torusNodeSSSEndpoints=n||[],this._torusNodeRSSEndpoints=i||[],this._torusNodeTSSEndpoints=o||[],this._torusNodePub=a,this._torusIndexes=s,this._currentEpoch=t,this.updated=!0}}var r7=r(4203),n7=r.n(r7),i7=r(4872).Buffer;const o7="GetPubKeyOrKeyAssign",a7="CommitmentRequest",s7="ImportShare",c7="GetShareOrKeyAssign",l7="https://metadata.tor.us",u7=(e,t)=>{let r=e;if("number"===typeof r&&(r=Array.from({length:r},((e,t)=>t))),t>r.length||t<=0)return[];if(t===r.length)return[r];if(1===t)return r.reduce(((e,t)=>[...e,[t]]),[]);const n=[];let i=[];for(let o=0;o<=r.length-t+1;o+=1){i=u7(r.slice(o+1),t-1);for(let e=0;e{const r={};for(let n=0;n=8?o+=t[a].toUpperCase():o+=t[a];return o}function v7(e,t){const r=e.keyFromPrivate(t.toString("hex",64),"hex").getPublic().encode("hex",!1).slice(2);p7.info(r,"public key");return g7(`0x${m7(i7.from(r,"hex")).slice(26)}`)}function y7(e,t,r){const n=e.keyFromPublic({x:t.toString("hex",64),y:r.toString("hex",64)}),i=n.getPublic().encode("hex",!1).slice(2);p7.info(n.getPublic().encode("hex",!1),"public key");return g7(`0x${m7(i7.from(i,"hex")).slice(26)}`)}p7.disableAll();class b7{constructor(e,t,r){m6(this,"x",void 0),m6(this,"y",void 0),m6(this,"ecCurve",void 0),this.x=new(n7())(e,"hex"),this.y=new(n7())(t,"hex"),this.ecCurve=r}encode(e){switch(e){case"arr":return i7.concat([i7.from("0x04","hex"),i7.from(this.x.toString("hex"),"hex"),i7.from(this.y.toString("hex"),"hex")]);case"elliptic-compressed":{const e=this.ecCurve.keyFromPublic({x:this.x.toString("hex",64),y:this.y.toString("hex",64)},"hex");return i7.from(e.getPublic(!0,"hex"))}default:throw new Error("encoding doesn't exist in Point")}}}class w7{constructor(e,t){m6(this,"share",void 0),m6(this,"shareIndex",void 0),this.share=new(n7())(t,"hex"),this.shareIndex=new(n7())(e,"hex")}static fromJSON(e){const{share:t,shareIndex:r}=e;return new w7(r,t)}toJSON(){return{share:this.share.toString("hex"),shareIndex:this.shareIndex.toString("hex")}}}class x7{constructor(e,t){m6(this,"polynomial",void 0),m6(this,"ecCurve",void 0),this.polynomial=e,this.ecCurve=t}getThreshold(){return this.polynomial.length}polyEval(e){const t=new(n7())(e,"hex");let r=new(n7())(t),n=new(n7())(0);n=n.add(this.polynomial[0]);for(let i=1;i"number"===typeof e?new(n7())(e):e instanceof n7()?e:"string"===typeof e?new(n7())(e,"hex"):e)),r={};for(let n=0;ne.eq(t)))?_7(e):t}const S7=e=>Array.from({length:e},(()=>new(n7())(0))),k7=(e,t,r)=>{let n=S7(r.length);const i=((e,t,r)=>{let n=new(n7())(1);const i=r[t].x;for(let o=r.length-1;o>=0;o-=1)if(t!==o){let t=new(n7())(i);t=t.sub(r[o].x),t=t.umod(e.curve.n),n=n.mul(t),n=n.umod(e.curve.n)}return n})(e,t,r);if(0===i.cmp(new(n7())(0)))throw new Error("Denominator for interpolationPoly is 0");n[0]=i.invm(e.curve.n);for(let o=0;o=0;a-=1){i[a+1]=i[a+1].add(n[a]).umod(e.curve.n);let t=new(n7())(r[o].x);t=t.mul(n[a]).umod(e.curve.n),i[a]=i[a].sub(t).umod(e.curve.n)}n=i}}return n},E7=(e,t)=>{const r=(e=>{const t=[...e];return t.sort(((e,t)=>e.x.cmp(t.x))),t})(t),n=S7(r.length);for(let i=0;it)throw new Error("deterministicShares in generateRandomPolynomial should be less or equal than degree to ensure an element of randomness");const o={};n.forEach((t=>{o[t.shareIndex.toString("hex",64)]=new b7(t.shareIndex,t.share,e)}));for(let a=0;a2&&void 0!==arguments[2]?arguments[2]:{};try{const n=await M6(`${e}/get`,t,r,{useAPIKey:!0});return n&&n.message?new(n7())(n.message,16):new(n7())(0)}catch(n){return b6().error("get metadata error",n),new(n7())(0)}}async function R7(e,t,r,n,i,o){let a;const s=arguments.length>6&&void 0!==arguments[6]&&arguments[6]?"getNonce":"getOrSetNonce";return a=o?function(e,t,r,n){const i=e.keyFromPrivate(n.toString("hex",64)),o={data:r,timestamp:new(n7())(~~(t+Date.now()/1e3)).toString(16)},a=i.sign(m7(i7.from(c9()(o),"utf8")).slice(2));return{pub_key_X:i.getPublic().getX().toString("hex",64),pub_key_Y:i.getPublic().getY().toString("hex",64),set_data:o,signature:i7.from(a.r.toString(16,64)+a.s.toString(16,64)+new(n7())("").toString(16,2),"hex").toString("base64")}}(t,r,s,o):{pub_key_X:n,pub_key_Y:i,set_data:{data:s}},M6(`${e}/get_or_set_nonce`,a,void 0,{useAPIKey:!0})}async function I7(e,t,r,n,i,o){return R7(e,t,r,n,i,o,!0)}const M7={logRequestTracing:!1};class L7 extends Error{constructor(e){let{errors:t,responses:r,predicate:n}=e;super("Unable to resolve enough promises."),m6(this,"errors",void 0),m6(this,"responses",void 0),m6(this,"predicate",void 0),this.errors=t,this.responses=r,this.predicate=n}get message(){return`${super.message}. ${this.errors.length} errors: ${this.errors.map((e=>e.message||e)).join(", ")} and ${this.responses.length} responses: ${JSON.stringify(this.responses)}`}toString(){return this.message}}const N7=(e,t)=>new Promise(((r,n)=>{let i=0;const o={resolved:!1},a=new Array(e.length).fill(void 0),s=new Array(e.length).fill(void 0);let c;return e.forEach(((l,u)=>l.then((e=>{s[u]=e})).catch((e=>{a[u]=e})).finally((()=>{if(!o.resolved)return t(s.slice(0),o).then((e=>{o.resolved=!0,r(e)})).catch((e=>{c=e})).finally((()=>{if(i+=1,i===e.length){const e=Object.values(s.reduce(((e,t)=>{if(t){var r;const{id:i,error:o}=t;(null===o||void 0===o||null===(r=o.data)||void 0===r?void 0:r.length)>0&&(o.data.startsWith("Error occurred while verifying params")?e[i]=(n=o.data).charAt(0).toUpperCase()+n.slice(1):e[i]=o.data)}var n;return e}),{}));if(e.length>0){const t=e.length>1?`\n${e.map((e=>`\u2022 ${e}`)).join("\n")}`:e[0];n(new Error(t))}else{var t;n(new L7({errors:a,responses:s,predicate:(null===(t=c)||void 0===t?void 0:t.message)||c}))}}}))}))))}));function D7(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function z7(e){for(var t=1;t0){if(h.length!==c.length)throw new Error("Invalid imported shares length");w=!0}for(let x=0;x{p7.error("commitment error",e)}));p.push(e)}return N7(p,(e=>{const t=e.filter((e=>!(!e||"object"!==typeof e)&&!e.error));if(h.length>0&&t.length===c.length)return Promise.resolve(e);if(0===h.length&&t.length>=1+~~(3*c.length/4)){if(t.find((e=>{var t;return!(!e||"1"!==(null===(t=e.result)||void 0===t?void 0:t.nodeindex))})))return Promise.resolve(e)}return Promise.reject(new Error(`invalid ${JSON.stringify(e)}`))})).then((e=>{const t=[],r=[];for(let i=0;ip7.error("share req",e)));t.push(n)}else{const e=M6(c[i],L6(c7,{encrypted:"yes",use_temp:!0,item:[z7(z7({},u),{},{idtoken:d,nodesignatures:r,verifieridentifier:l},f)],one_key_flow:!0}),null,{logTracingHeader:M7.logRequestTracing}).catch((e=>p7.error("share req",e)));t.push(e)}}let n;return N7(t,(async(e,t)=>{const r=e.filter((e=>!(!e||"object"!==typeof e)&&!e.error)),o=e.map((e=>{if(e&&e.result&&e.result.keys[0].public_key){if(!n&&!u.extended_verifier_id){var t,r;(null===(t=e.result.keys[0].nonce_data)||void 0===t||null===(r=t.pubNonce)||void 0===r?void 0:r.x)&&(n=e.result.keys[0].nonce_data)}return e.result.keys[0].public_key}})),s=d7(o,1+~~(c.length/2));if(!s)throw new Error("invalid result from nodes, threshold number of public key results are not matching");if(!n&&!u.extended_verifier_id&&!q9[a])throw new Error(`invalid metadata result from nodes, nonce metadata is empty for verifier: ${l} and verifierId: ${u.verifier_id}`);const d=h.length>0?c.length:1+~~(c.length/2);if(r.length>=d&&s&&(n||u.extended_verifier_id||q9[a])){const e=[],o=[],a=[],l=[],d=[];for(let t=0;t0)u&&null!==(f=u[0])&&void 0!==f&&f.ephemPublicKey?o.push(C7(u[0],c[0],m).catch((e=>p7.debug("session sig decryption",e)))):o.push(Promise.resolve(i7.from(c[0],"hex")));else o.push(Promise.resolve(void 0));if((null===i||void 0===i?void 0:i.length)>0)s&&null!==(p=s[0])&&void 0!==p&&p.ephemPublicKey?a.push(C7(s[0],i[0],m).catch((e=>p7.debug("session token sig decryption",e)))):a.push(Promise.resolve(i7.from(i[0],"base64")));else a.push(Promise.resolve(void 0));if((null===d||void 0===d?void 0:d.length)>0){const t=n.result.keys[0];l.push(new(n7())(t.node_index)),t.share_metadata&&e.push(C7(t.share_metadata,i7.from(t.share,"base64").toString("binary").padStart(64,"0"),m).catch((e=>p7.debug("share decryption",e))))}else l.push(void 0),e.push(Promise.resolve(void 0))}const h=await Promise.all(e.concat(o).concat(a)),g=h.slice(0,e.length),v=h.slice(e.length,e.length+o.length),y=h.slice(e.length+o.length,h.length),b=v.filter((e=>!!e)),w=1+~~(c.length/2);if(!u.extended_verifier_id&&b.length!!e));if(!u.extended_verifier_id&&x.length{e?d.push({token:e.toString("base64"),signature:v[t].toString("hex"),node_pubx:r[t].result.node_pubx,node_puby:r[t].result.node_puby}):d.push(void 0)})),t.resolved)return;const _=g.reduce(((e,t,r)=>(t&&e.push({index:l[r],value:new(n7())(t)}),e)),[]),S=u7(_.length,1+~~(c.length/2));let k=null;for(let t=0;te.includes(r))),n=r.map((e=>e.value)),o=r.map((e=>e.index)),a=A7(i,n,o);if(!a)continue;const c=e9(i7.from(a.toString(16,64),"hex")).toString("hex"),l=c.slice(2,66),u=c.slice(66);if(0===new(n7())(l,16).cmp(new(n7())(s.X,16))&&0===new(n7())(u,16).cmp(new(n7())(s.Y,16))){k=a;break}}if(void 0===k||null===k)throw new Error("could not derive private key");return{privateKey:k,sessionTokenData:d,thresholdNonceData:n,nodeIndexes:l}}throw new Error("Invalid")}))})).then((async e=>{var o;const{privateKey:s,sessionTokenData:c,thresholdNonceData:l,nodeIndexes:d}=e;let h=l;if(!s)throw new Error("Invalid private key returned");const f=s,p=e9(i7.from(f.toString(16,64),"hex")).toString("hex"),g=p.slice(2,66),v=p.slice(66);let y,b,w=new(n7())(null!==(o=h)&&void 0!==o&&o.nonce?h.nonce.padStart(64,"0"):"0","hex"),x="v1";if(u.extended_verifier_id)x="v2",y=i.keyFromPublic({x:g,y:v}).getPublic();else if(q9[a])if(n)h=await I7(t,i,r,g,v,f),w=new(n7())(h.nonce||"0",16),b={X:h.pubNonce.x,Y:h.pubNonce.y},x=h.typeOfUser,"v2"===x&&(y=i.keyFromPublic({x:g,y:v}).getPublic().add(i.keyFromPublic({x:h.pubNonce.x,y:h.pubNonce.y}).getPublic()));else{x="v1",w=await j7(t,{pub_key_X:g,pub_key_Y:v});const e=f.add(w).umod(i.curve.n);y=i.keyFromPrivate(e.toString(16,64),"hex").getPublic()}else x="v2",y=i.keyFromPublic({x:g,y:v}).getPublic().add(i.keyFromPublic({x:h.pubNonce.x,y:h.pubNonce.y}).getPublic()),b={X:h.pubNonce.x,Y:h.pubNonce.y};const _=v7(i,f),S=y7(i,y.getX(),y.getY());p7.debug("> torus.js/retrieveShares",{finalEvmAddress:S});let k="";if("v1"===x||"v2"===x&&w.gt(new(n7())(0))){k=f.add(w).umod(i.curve.n).toString("hex",64)}let E=!1;return"v1"===x?E=null:"v2"===x&&(E=w.eq(new(n7())("0"))),{finalKeyData:{evmAddress:S,X:y.getX().toString(16,64),Y:y.getY().toString(16,64),privKey:k},oAuthKeyData:{evmAddress:_,X:g,Y:v,privKey:f.toString("hex",64).padStart(64,"0")},sessionData:{sessionTokenData:c,sessionAuthKey:m.toString("hex").padStart(64,"0")},metadata:{pubNonce:b,nonce:w,typeOfUser:x,upgraded:E},nodesData:{nodeIndexes:d.map((e=>e.toNumber()))}}}))}const U7=async(e,t,r)=>{const n=e.map((e=>M6(e,L6("VerifierLookupRequest",{verifier:t,verifier_id:r.toString()})).catch((e=>p7.error("lookup request failed",e)))));return N7(n,(t=>{const r=t.filter((e=>e)),n=d7(r.map((e=>e&&e.error)),1+~~(e.length/2)),i=d7(r.map((e=>e&&e.result)),1+~~(e.length/2));return i||n?Promise.resolve({keyResult:i,errorResult:n}):Promise.reject(new Error(`invalid results ${JSON.stringify(t)}`))}))},F7=async e=>{let t,r,{endpoints:n,torusNodePubs:i,lastPoint:o,firstPoint:a,verifier:s,verifierId:c,signerHost:l,network:u,clientId:d}=e;if(void 0===o?(t=Math.floor(Math.random()*n.length),p7.info("keyassign",t,n[t]),r=t):t=o%n.length,t===a)throw new Error("Looped through all");void 0!==a&&(r=a);const h=L6("KeyAssign",{verifier:s,verifier_id:c.toString()});try{const e=await M6(l,h,{headers:{pubKeyX:i[t].X,pubKeyY:i[t].Y,network:u,clientId:d}},{useAPIKey:!0});return await M6(n[t],z7(z7({},h),e),{headers:{"Content-Type":"application/json; charset=utf-8"}})}catch(f){p7.error(f.status,f.message,f,"key assign error");const e=["Timed out","Failed to fetch","cancelled","NetworkError when attempting to fetch resource.","TypeError: Failed to fetch","TypeError: cancelled","TypeError: NetworkError when attempting to fetch resource."];if(502===(null===f||void 0===f?void 0:f.status)||504===(null===f||void 0===f?void 0:f.status)||401===(null===f||void 0===f?void 0:f.status)||e.includes(f.message)||e.some((e=>f.message.includes(e)))||f.message&&f.message.includes("reason: getaddrinfo EAI_AGAIN"))return F7({endpoints:n,torusNodePubs:i,lastPoint:t+1,firstPoint:r,verifier:s,verifierId:c,signerHost:l,network:u,clientId:d});throw new Error(`Sorry, the Torus Network that powers Web3Auth is currently very busy.\n We will generate your key in time. Pls try again later. \n\n ${f.message||""}`)}};function $7(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function H7(e){for(var t=1;t0&&void 0!==arguments[0])||arguments[0]?(p7.enableAll(),M7.logRequestTracing=!0):p7.disableAll()}static setAPIKey(e){T6(e)}static setEmbedHost(e){O6(e)}static isGetOrSetNonceError(e){return e instanceof f7}static getPostboxKey(e){return"v1"===e.metadata.typeOfUser&&e.finalKeyData.privKey||e.oAuthKeyData.privKey}async retrieveShares(e,t,r,n,i){let o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{};return this.isLegacyNetwork?this.legacyRetrieveShares(e,t,r,n,i,o):B7({legacyMetadataHost:this.legacyMetadataHost,serverTimeOffset:this.serverTimeOffset,enableOneKey:this.enableOneKey,ecCurve:this.ec,allowHost:this.allowHost,network:this.network,clientId:this.clientId,endpoints:e,verifier:r,verifierParams:n,idToken:i,importedShares:[],extraParams:o})}async getPublicAddress(e,t,r){let{verifier:n,verifierId:i,extendedVerifierId:o}=r;return this.isLegacyNetwork?this.getLegacyPublicAddress(e,t,{verifier:n,verifierId:i},this.enableOneKey):this.getNewPublicAddress(e,{verifier:n,verifierId:i,extendedVerifierId:o},this.enableOneKey)}async importPrivateKey(e,t,r,n,i,o,a){let s=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{};if(this.isLegacyNetwork)throw new Error("This function is not supported on legacy networks");if(e.length!==t.length)throw new Error("length of endpoints array must be same as length of nodeIndexes array");const c=1+~~(e.length/2)-1,l=[],u=this.ec.keyFromPrivate(a.padStart(64,"0"),"hex");for(const x of t)l.push(new(n7())(x));const d=u.getPrivate(),h=new(n7())(Q8()),f=d.sub(h).umod(this.ec.curve.n),p=this.ec.keyFromPrivate(f.toString("hex").padStart(64,"0")).getPublic(),m=P7(this.ec,c,f).generateShares(l),g=this.generateNonceMetadataParams("getOrSetNonce",f,h),v=i7.from(c9()(g.set_data),"utf8").toString("base64"),y=[],b=[];for(let x=0;x5&&void 0!==arguments[5]?arguments[5]:{};const a=[];await I6(this.allowHost,{headers:{verifier:r,verifierId:n.verifier_id,network:this.network,clientId:this.clientId}},{useAPIKey:!0});const s=Q8(),c=e9(s).toString("hex"),l=c.slice(2,66),u=c.slice(66),d=m7(i7.from(i,"utf8"));for(let h=0;h{p7.error("commitment",e)}));a.push(t)}return N7(a,(t=>{const r=t.filter((e=>!(!e||"object"!==typeof e)&&!e.error));return r.length>=3*~~(e.length/4)+1?Promise.resolve(t):Promise.reject(new Error(`invalid ${JSON.stringify(t)}`))})).then((a=>{const c=[],l=[];for(let e=0;ep7.error("share req",e)));c.push(a)}return N7(c,(async(r,n)=>{const i=r.filter((e=>e)),o=d7(r.map((e=>e&&e.result&&e.result.keys[0].PublicKey)),1+~~(e.length/2));if(i.length>=1+~~(e.length/2)&&o){const i=[],l=[];for(let e=0;e0){n.result.keys.sort(((e,t)=>new(n7())(e.Index,16).cmp(new(n7())(t.Index,16))));const e=n.result.keys[0];if(e.Metadata){const t={ephemPublicKey:i7.from(e.Metadata.ephemPublicKey,"hex"),iv:i7.from(e.Metadata.iv,"hex"),mac:i7.from(e.Metadata.mac,"hex")};i.push(o9(s,H7(H7({},t),{},{ciphertext:i7.from(i7.from(e.Share,"base64").toString("binary").padStart(64,"0"),"hex")})).catch((e=>p7.debug("share decryption",e))))}else i.push(Promise.resolve(i7.from(e.Share.padStart(64,"0"),"hex")))}else i.push(Promise.resolve(void 0));l.push(new(n7())(t[e],16))}const u=await Promise.all(i);if(n.resolved)return;const d=u.reduce(((e,t,r)=>(t&&e.push({index:l[r],value:new(n7())(t)}),e)),[]),h=u7(d.length,1+~~(e.length/2));let f=null;for(let e=0;et.includes(r))),n=r.map((e=>e.value)),i=r.map((e=>e.index)),a=A7(this.ec,n,i);if(!a)continue;const s=e9(i7.from(a.toString(16,64),"hex")).toString("hex"),c=s.slice(2,66),l=s.slice(66);if(0===new(n7())(c,16).cmp(new(n7())(o.X,16))&&0===new(n7())(l,16).cmp(new(n7())(o.Y,16))){f=a;break}}if(void 0===f||null===f)throw new Error("could not derive private key");return f}throw new Error("invalid")}))})).then((async e=>{const t=e;if(!t)throw new Error("Invalid private key returned");const r=e9(i7.from(t.toString(16,64),"hex")).toString("hex"),n=r.slice(2,66),i=r.slice(66);let o,a,s,c="v1";if(this.enableOneKey){const e=await I7(this.legacyMetadataHost,this.ec,this.serverTimeOffset,n,i,t);o=new(n7())(e.nonce||"0",16),c=e.typeOfUser,"v2"===e.typeOfUser&&(a=this.ec.keyFromPublic({x:n,y:i}).getPublic().add(this.ec.keyFromPublic({x:e.pubNonce.x,y:e.pubNonce.y}).getPublic()),s={X:e.pubNonce.x,Y:e.pubNonce.y})}else{o=await j7(this.legacyMetadataHost,{pub_key_X:n,pub_key_Y:i});const e=t.add(o).umod(this.ec.curve.n);a=this.ec.keyFromPrivate(e.toString("hex"),"hex").getPublic()}const l=v7(this.ec,t),u=y7(this.ec,a.getX(),a.getY());p7.debug("> torus.js/retrieveShares",{finalEvmAddress:u});let d="";if("v1"===c||"v2"===c&&o.gt(new(n7())(0))){d=t.add(o).umod(this.ec.curve.n).toString("hex",64).padStart(64,"0")}let h=!1;return"v1"===c?h=null:"v2"===c&&(h=o.eq(new(n7())("0"))),{finalKeyData:{evmAddress:u,X:a?a.getX().toString(16,64):"",Y:a?a.getY().toString(16,64):"",privKey:d},oAuthKeyData:{evmAddress:l,X:n,Y:i,privKey:t.toString("hex",64).padStart(64,"0")},sessionData:{sessionTokenData:[],sessionAuthKey:""},metadata:{pubNonce:s,nonce:o,typeOfUser:c,upgraded:h},nodesData:{nodeIndexes:[]}}}))}async getLegacyPublicAddress(e,t,r,n){let i,{verifier:o,verifierId:a}=r;p7.debug("> torus.js/getPublicAddress",{endpoints:e,torusNodePubs:t,verifier:o,verifierId:a});let s=!1;const{keyResult:c,errorResult:l}=await U7(e,o,a)||{};if(l&&JSON.stringify(l).includes("Verifier not supported"))throw new Error("Verifier not supported. Check if you: \n\n 1. Are on the right network (Torus testnet/mainnet) \n\n 2. Have setup a verifier on dashboard.web3auth.io?");if(l&&JSON.stringify(l).includes("Verifier + VerifierID has not yet been assigned")){await F7({endpoints:e,torusNodePubs:t,lastPoint:void 0,firstPoint:void 0,verifier:o,verifierId:a,signerHost:this.signerHost,network:this.network,clientId:this.clientId});const r=await((e,t,r,n)=>new Promise(((i,o)=>{setTimeout((()=>{U7(e,t,r).then(i).catch(o)}),n)})))(e,o,a,1e3);i=null===r||void 0===r?void 0:r.keyResult,s=!0}else{if(!c)throw new Error(`node results do not match at first lookup ${JSON.stringify(c||{})}, ${JSON.stringify(l||{})}`);i=c}if(p7.debug("> torus.js/getPublicAddress",{finalKeyResult:i,isNewKey:s}),i)return this.formatLegacyPublicKeyData({finalKeyResult:i,isNewKey:s,enableOneKey:n});throw new Error(`node results do not match at final lookup ${JSON.stringify(c||{})}, ${JSON.stringify(l||{})}`)}generateNonceMetadataParams(e,t,r){const n=this.ec.keyFromPrivate(t.toString("hex",64)),i={operation:e,timestamp:new(n7())(~~(this.serverTimeOffset+Date.now()/1e3)).toString(16)};r&&(i.data=r.toString("hex",64));const o=n.sign(m7(i7.from(c9()(i),"utf8")).slice(2));return{pub_key_X:n.getPublic().getX().toString("hex",64),pub_key_Y:n.getPublic().getY().toString("hex",64),set_data:i,signature:i7.from(o.r.toString(16,64)+o.s.toString(16,64)+new(n7())("").toString(16,2),"hex").toString("base64")}}async getNewPublicAddress(e,t,r){let{verifier:n,verifierId:i,extendedVerifierId:o}=t;p7.debug("> torus.js/getPublicAddress",{endpoints:e,verifier:n,verifierId:i});const a=await(async e=>{const{endpoints:t,network:r,verifier:n,verifierId:i,extendedVerifierId:o}=e,a=t.map((e=>M6(e,L6(o7,{verifier:n,verifier_id:i.toString(),extended_verifier_id:o,one_key_flow:!0,fetch_node_index:!0}),null,{logTracingHeader:M7.logRequestTracing}).catch((e=>p7.error(`${o7} request failed`,e)))));let s;const c=[],l=await N7(a,(e=>{const a=e.filter((e=>{if(e&&!e.error){var t,r,n;if(!s)(null===(t=e.result)||void 0===t||null===(r=t.keys[0].nonce_data)||void 0===r||null===(n=r.pubNonce)||void 0===n?void 0:n.x)&&(s=e.result.keys[0].nonce_data);return e}return!1})),l=d7(a.map((e=>e&&e.error)),1+~~(t.length/2)),u=d7(a.map((e=>e&&(e=>{const t={keys:[],is_new_key:e.is_new_key};return e&&e.keys&&e.keys.length>0&&(t.keys=e.keys.map((e=>({pub_key_X:e.pub_key_X,pub_key_Y:e.pub_key_Y,address:e.address})))),t})(e.result))),1+~~(t.length/2));return u&&(s||o||q9[r])||l?(u&&e.forEach((e=>{if(e&&e.result){const t=parseInt(e.result.node_index);t&&c.push(t)}})),Promise.resolve({keyResult:u,nodeIndexes:c,errorResult:l,nonceResult:s})):Promise.reject(new Error(`invalid public key result: ${JSON.stringify(e)} and nonce result:${JSON.stringify(s||{})} for verifier: ${n}, verifierId: ${i} and extendedVerifierId: ${o} `))}));return l})({endpoints:e,network:this.network,verifier:n,verifierId:i,extendedVerifierId:o}),{errorResult:s,keyResult:c,nodeIndexes:l=[]}=a,{nonceResult:u}=a;if(s&&JSON.stringify(s).toLowerCase().includes("verifier not supported"))throw new Error("Verifier not supported. Check if you: \n\n 1. Are on the right network (Torus testnet/mainnet) \n\n 2. Have setup a verifier on dashboard.web3auth.io?");if(s)throw new Error(`node results do not match at first lookup ${JSON.stringify(c||{})}, ${JSON.stringify(s||{})}`);if(p7.debug("> torus.js/getPublicAddress",{keyResult:c}),null===c||void 0===c||!c.keys)throw new Error(`node results do not match at final lookup ${JSON.stringify(c||{})}, ${JSON.stringify(s||{})}`);if(!u&&!o&&!q9[this.network])throw new f7("metadata nonce is missing in share response");const{pub_key_X:d,pub_key_Y:h}=c.keys[0];let f;const p=new(n7())((null===u||void 0===u?void 0:u.nonce)||"0",16);let m,g;if(o)g=this.ec.keyFromPublic({x:d,y:h}).getPublic(),m=g;else{if(q9[this.network])return this.formatLegacyPublicKeyData({isNewKey:c.is_new_key,enableOneKey:r,finalKeyResult:{keys:c.keys}});{const e=u;m=this.ec.keyFromPublic({x:d,y:h}).getPublic(),g=this.ec.keyFromPublic({x:d,y:h}).getPublic().add(this.ec.keyFromPublic({x:e.pubNonce.x,y:e.pubNonce.y}).getPublic()),f={X:e.pubNonce.x,Y:e.pubNonce.y}}}if(!m)throw new Error("Unable to derive oAuthPubKey");const v=m.getX().toString(16,64),y=m.getY().toString(16,64),b=y7(this.ec,m.getX(),m.getY());if(p7.debug("> torus.js/getPublicAddress, oAuthKeyData",{X:v,Y:y,oAuthAddress:b,nonce:null===p||void 0===p?void 0:p.toString(16),pubNonce:f}),!g)throw new Error("Unable to derive finalPubKey");const w=g?g.getX().toString(16,64):"",x=g?g.getY().toString(16,64):"";return{oAuthKeyData:{evmAddress:b,X:v,Y:y},finalKeyData:{evmAddress:g?y7(this.ec,g.getX(),g.getY()):"",X:w,Y:x},metadata:{pubNonce:f,nonce:p,upgraded:(null===u||void 0===u?void 0:u.upgraded)||!1,typeOfUser:"v2"},nodesData:{nodeIndexes:l}}}async formatLegacyPublicKeyData(e){var t,r;const{finalKeyResult:n,enableOneKey:i,isNewKey:o}=e,{pub_key_X:a,pub_key_Y:s}=n.keys[0];let c,l,u,d,h;const f=this.ec.keyFromPublic({x:a,y:s}).getPublic();if(i){try{c=await R7(this.legacyMetadataHost,this.ec,this.serverTimeOffset,a,s,void 0,!o),l=new(n7())(c.nonce||"0",16),d=c.typeOfUser}catch{throw new f7}if("v1"===c.typeOfUser)u=this.ec.keyFromPublic({x:a,y:s}).getPublic().add(this.ec.keyFromPrivate(l.toString(16)).getPublic());else{if("v2"!==c.typeOfUser)throw new Error("getOrSetNonce should always return typeOfUser.");u=this.ec.keyFromPublic({x:a,y:s}).getPublic().add(this.ec.keyFromPublic({x:c.pubNonce.x,y:c.pubNonce.y}).getPublic()),h={X:c.pubNonce.x,Y:c.pubNonce.y}}}else d="v1",l=await j7(this.legacyMetadataHost,{pub_key_X:a,pub_key_Y:s}),u=this.ec.keyFromPublic({x:a,y:s}).getPublic().add(this.ec.keyFromPrivate(l.toString(16)).getPublic());if(!f)throw new Error("Unable to derive oAuthPubKey");const p=f.getX().toString(16,64),m=f.getY().toString(16,64),g=y7(this.ec,f.getX(),f.getY());if(p7.debug("> torus.js/getPublicAddress, oAuthKeyData",{X:p,Y:m,oAuthAddress:g,nonce:null===(t=l)||void 0===t?void 0:t.toString(16),pubNonce:h}),"v2"===d&&!u)throw new Error("Unable to derive finalPubKey");const v=u?u.getX().toString(16,64):"",y=u?u.getY().toString(16,64):"";return{oAuthKeyData:{evmAddress:g,X:p,Y:m},finalKeyData:{evmAddress:u?y7(this.ec,u.getX(),u.getY()):"",X:v,Y:y},metadata:{pubNonce:h,nonce:l,upgraded:(null===(r=c)||void 0===r?void 0:r.upgraded)||!1,typeOfUser:d},nodesData:{nodeIndexes:[]}}}}var q7=r(5505),K7=r(4872).Buffer;function W7(e){return K7.from((0,l9.wn)(e))}const G7=new $s.ec("secp256k1");function Z7(e){return{iv:K7.from(e.iv,"hex"),ephemPublicKey:K7.from(e.ephemPublicKey,"hex"),ciphertext:K7.from(e.ciphertext,"hex"),mac:K7.from(e.mac,"hex")}}function Y7(e){return{iv:K7.from(e.iv).toString("hex"),ephemPublicKey:K7.from(e.ephemPublicKey).toString("hex"),ciphertext:K7.from(e.ciphertext).toString("hex"),mac:K7.from(e.mac).toString("hex")}}async function X7(e,t){const r=JSON.stringify(t),n=K7.from(r,"utf-8"),i=Y7(await i9(e9(K7.from(e,"hex")),n));return JSON.stringify(i)}async function J7(e,t){const r=Z7(JSON.parse(t)),n=G7.keyFromPrivate(e),i=(await o9(K7.from(n.getPrivate().toString("hex",64),"hex"),r)).toString("utf-8");return JSON.parse(i)}var Q7=r(4872).Buffer;const eee="google",tee="facebook",ree="reddit",nee="discord",iee="twitch",oee="apple",aee="github",see="linkedin",cee="twitter",lee="weibo",uee="line",dee="email_password",hee="passwordless",fee="jwt",pee="webauthn",mee="single_id_verifier",gee={POPUP:"popup",REDIRECT:"redirect"},vee="localStorage",yee="server",bee="triggerLogin",wee="triggerAggregateLogin",xee="triggerHybridAggregateLogin",_ee="fetchNodeDetails",See="pubAddressLookup",kee="fetchShares";var Eee=b6().getLogger("customauth");const Aee={[oee]:"apple",[aee]:"github",[see]:"linkedin",[cee]:"twitter",[lee]:"weibo",[uee]:"line",[dee]:"Username-Password-Authentication",[hee]:"email"},Pee=e=>e.href.endsWith("/")?e.href:`${e.href}/`,Oee={webWorkerSupport:!1};function Tee(e,t){return t?e:e.toLowerCase()}const Cee=function(e,t,r){let n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];const{name:i,sub:o}=e;if(r)return Tee(e[r],n);switch(t){case hee:case dee:return Tee(i,n);case lee:case aee:case cee:case oee:case see:case uee:case fee:return Tee(o,n);default:throw new Error("Invalid login type")}},jee=(e,t)=>{const r=e.split("&").reduce(((e,t)=>{const[r,n]=t.split("=");return e[r]=n,e}),{});Eee.info(r,t);let n={},i="";return Object.keys(r).length>0&&r.state?(n=JSON.parse(atob(decodeURIComponent(decodeURIComponent(r.state))))||{},i=r.error_description||r.error||i):Object.keys(t).length>0&&t.state&&(n=JSON.parse(atob(decodeURIComponent(decodeURIComponent(t.state))))||{},t.error&&(i=t.error)),{error:i,instanceParameters:n,hashParameters:r}};function Ree(e){const{baseURL:t,query:r,hash:n}=e,i=new URL(t);if(r&&Object.keys(r).forEach((e=>{i.searchParams.append(e,r[e])})),n){const e=new URL(Ree({baseURL:t,query:n})).searchParams.toString();i.hash=e}return i.toString()}const Iee=e=>{try{return new URL(decodeURIComponent(e))}catch(t){throw new Error(`${(null===t||void 0===t?void 0:t.message)||""}, Note: Your jwt domain: (i.e ${e}) must have http:// or https:// prefix`)}};function Mee(e){return e!==tee&&e!==uee||!function(){const e=z6().getParser(navigator.userAgent).getPlatform();return e.type===z6().PLATFORMS_MAP.tablet||e.type===z6().PLATFORMS_MAP.mobile}()?1e4:6e4}class Lee extends Fq.EventEmitter{constructor(e){let{url:t,target:r,features:n,timeout:i=3e4}=e;super(),m6(this,"url",void 0),m6(this,"target",void 0),m6(this,"features",void 0),m6(this,"window",void 0),m6(this,"windowTimer",void 0),m6(this,"iClosedWindow",void 0),m6(this,"timeout",void 0),this.url=t,this.target=r||"_blank",this.features=n||function(){const e=void 0!==window.screenLeft?window.screenLeft:window.screenX,t=void 0!==window.screenTop?window.screenTop:window.screenY,r=window.innerWidth?window.innerWidth:document.documentElement.clientWidth?document.documentElement.clientWidth:window.screen.width,n=window.innerHeight?window.innerHeight:document.documentElement.clientHeight?document.documentElement.clientHeight:window.screen.height,i=Math.abs((r-1200)/2/1+e);return`titlebar=0,toolbar=0,status=0,location=0,menubar=0,height=700,width=1200,top=${Math.abs((n-700)/2/1+t)},left=${i}`}(),this.window=void 0,this.windowTimer=void 0,this.iClosedWindow=!1,this.timeout=i,this._setupTimer()}_setupTimer(){this.window&&(this.windowTimer=Number(setInterval((()=>{this.window&&this.window.closed&&(clearInterval(this.windowTimer),setTimeout((()=>{this.iClosedWindow||this.emit("close"),this.iClosedWindow=!1,this.window=void 0}),this.timeout)),void 0===this.window&&clearInterval(this.windowTimer)}),500)))}open(){var e;return this.window=window.open(this.url.href,this.target,this.features),null!==(e=this.window)&&void 0!==e&&e.focus&&this.window.focus(),Promise.resolve()}close(){this.iClosedWindow=!0,this.window&&this.window.close()}redirect(e){e?window.location.replace(this.url.href):window.location.href=this.url.href}}const Nee=["access_token","id_token"];function Dee(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function zee(e){for(var t=1;t{let n;const i=async t=>{try{const{error:i,data:o}=t,a=o||{},{instanceParams:s,hashParams:{access_token:c,id_token:l}}=a,u=N6(a.hashParams,Nee);if(i)return Eee.error(t),void r(new Error(`Error: ${i}. Info: ${JSON.stringify(t.data||{})}`));t.data&&s.verifier===this.verifier&&(Eee.info(t.data),!this.redirectToOpener&&n&&await n.postMessage({success:!0}),e(zee(zee({accessToken:c,idToken:l||""},u),{},{state:s})))}catch(i){Eee.error(i),r(i)}};if(this.redirectToOpener){const e=async r=>{if(!r.data)return;const n=r.data;n.channel===`redirect_channel_${this.nonce}`&&(window.removeEventListener("message",e),i(n),t.close())};window.addEventListener("message",e)}else n=new I9(`redirect_channel_${this.nonce}`,Oee),n.addEventListener("message",(async e=>{await i(e),n.close(),t.close()}));t.open(),t.once("close",(()=>{n&&n.close(),r(new Error("user closed popup"))}))})):(t.redirect(e.locationReplaceOnRedirect),null)}}class Uee extends Bee{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),m6(this,"clientId",void 0),m6(this,"verifier",void 0),m6(this,"redirect_uri",void 0),m6(this,"typeOfLogin",void 0),m6(this,"uxMode",void 0),m6(this,"redirectToOpener",void 0),m6(this,"jwtParams",void 0),m6(this,"customState",void 0),m6(this,"RESPONSE_TYPE","token"),m6(this,"SCOPE","identify email"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://discord.com/api/oauth2/authorize"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=v6()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await I6("https://discord.com/api/users/@me",{headers:{Authorization:`Bearer ${t}`}}),{id:n,avatar:i,email:o="",username:a="",discriminator:s=""}=r;return{profileImage:null===i?`https://cdn.discordapp.com/embed/avatars/${Number(s)%5}.png`:`https://cdn.discordapp.com/avatars/${n}/${i}.png?size=2048`,name:`${a}#${s}`,email:o,verifierId:n,verifier:this.verifier,typeOfLogin:this.typeOfLogin}}}class Fee extends Bee{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),m6(this,"clientId",void 0),m6(this,"verifier",void 0),m6(this,"redirect_uri",void 0),m6(this,"typeOfLogin",void 0),m6(this,"uxMode",void 0),m6(this,"redirectToOpener",void 0),m6(this,"jwtParams",void 0),m6(this,"customState",void 0),m6(this,"RESPONSE_TYPE","token"),m6(this,"SCOPE","public_profile email"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://www.facebook.com/v15.0/dialog/oauth"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=v6()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await I6("https://graph.facebook.com/me?fields=name,email,picture.type(large)",{headers:{Authorization:`Bearer ${t}`}}),{name:n="",id:i,picture:o,email:a=""}=r;return{email:a,name:n,profileImage:o.data.url||"",verifier:this.verifier,verifierId:i,typeOfLogin:this.typeOfLogin}}}class $ee extends Bee{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),m6(this,"clientId",void 0),m6(this,"verifier",void 0),m6(this,"redirect_uri",void 0),m6(this,"typeOfLogin",void 0),m6(this,"uxMode",void 0),m6(this,"redirectToOpener",void 0),m6(this,"jwtParams",void 0),m6(this,"customState",void 0),m6(this,"RESPONSE_TYPE","token id_token"),m6(this,"SCOPE","profile email openid"),m6(this,"PROMPT","consent select_account"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://accounts.google.com/o/oauth2/v2/auth"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=v6()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,prompt:this.PROMPT,redirect_uri:this.redirect_uri,scope:this.SCOPE,nonce:this.nonce},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await I6("https://www.googleapis.com/userinfo/v2/me",{headers:{Authorization:`Bearer ${t}`}}),{picture:n="",email:i="",name:o=""}=r;return{email:i,name:o,profileImage:n,verifier:this.verifier,verifierId:i.toLowerCase(),typeOfLogin:this.typeOfLogin}}}let Hee=class extends Bee{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),m6(this,"clientId",void 0),m6(this,"verifier",void 0),m6(this,"redirect_uri",void 0),m6(this,"typeOfLogin",void 0),m6(this,"uxMode",void 0),m6(this,"redirectToOpener",void 0),m6(this,"jwtParams",void 0),m6(this,"customState",void 0),m6(this,"SCOPE","openid profile email"),m6(this,"RESPONSE_TYPE","token id_token"),m6(this,"PROMPT","login"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const{domain:e}=this.jwtParams,t=Iee(e);t.pathname+=t.pathname.endsWith("/")?"authorize":"/authorize";const r=JSON.parse(JSON.stringify(this.jwtParams));delete r.domain;const n=v6()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,prompt:this.PROMPT,redirect_uri:this.redirect_uri,scope:this.SCOPE,connection:Aee[this.typeOfLogin],nonce:this.nonce},r);Object.keys(n).forEach((e=>{n[e]&&t.searchParams.append(e,n[e])})),this.finalURL=t}async getUserInfo(e){const{idToken:t,accessToken:r}=e,{domain:n,verifierIdField:i,isVerifierIdCaseSensitive:o,user_info_route:a="userinfo"}=this.jwtParams;if(r)try{const e=new URL(n),t=await I6(`${Pee(e)}${a}`,{headers:{Authorization:`Bearer ${r}`}}),{picture:s,name:c,email:l}=t;return{email:l,name:c,profileImage:s,verifierId:Cee(t,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}catch(s){b6().warn(s,"Unable to get userinfo from endpoint")}if(t){const e=F9(t),{name:r,email:n,picture:a}=e;return{profileImage:a,name:r,email:n,verifierId:Cee(e,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}throw new Error("Access/id token not available")}};class Vee extends Bee{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),m6(this,"clientId",void 0),m6(this,"verifier",void 0),m6(this,"redirect_uri",void 0),m6(this,"typeOfLogin",void 0),m6(this,"uxMode",void 0),m6(this,"redirectToOpener",void 0),m6(this,"jwtParams",void 0),m6(this,"customState",void 0),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=JSON.parse(JSON.stringify(this.jwtParams));delete e.domain;const t=v6()({state:this.state,client_id:this.clientId,nonce:this.nonce},e);this.finalURL=new URL(Ree({baseURL:this.redirect_uri,query:null,hash:t}))}async getUserInfo(e){const{idToken:t,accessToken:r}=e,{domain:n,verifierIdField:i,isVerifierIdCaseSensitive:o,user_info_route:a="userinfo"}=this.jwtParams;if(r)try{const e=new URL(n),t=await I6(`${Pee(e)}${a}`,{headers:{Authorization:`Bearer ${r}`}}),{picture:s,name:c,email:l}=t;return{email:l,name:c,profileImage:s,verifierId:Cee(t,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}catch(s){b6().warn(s,"Unable to get userinfo from endpoint")}if(t){const e=F9(t),{name:r,email:n,picture:a}=e;return{profileImage:a,name:r,email:n,verifierId:Cee(e,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}throw new Error("Access/id token not available")}handleLoginWindow(e){const{id_token:t,access_token:r}=this.jwtParams,n=new Lee({url:this.finalURL,features:e.popupFeatures});return this.uxMode!==gee.REDIRECT?Promise.resolve({state:{},idToken:t,accessToken:r}):(n.redirect(e.locationReplaceOnRedirect),null)}}const qee=["access_token","id_token"];function Kee(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Wee(e){for(var t=1;t{if(this.redirectToOpener)return void t(new Error("Cannot use redirect to opener for passwordless"));const r=r=>{try{const{error:n,data:i}=r,o=i||{},{instanceParams:a,hashParams:{access_token:s,id_token:c}}=o,l=N6(o.hashParams,qee);if(n)return Eee.error(r.error),void t(new Error(n));r.data&&a.verifier===this.verifier&&(Eee.info(r.data),e(Wee(Wee({accessToken:s,idToken:c||""},l),{},{state:a})))}catch(n){Eee.error(n),t(n)}},n=new I9(`redirect_channel_${this.nonce}`,Oee);n.addEventListener("message",(async e=>{r(e),n.close()}));try{const{connection:e="email",login_hint:r}=this.jwtParams,n=v6()({client_id:this.clientId,connection:e,email:"email"===e?r:void 0,phone_number:"sms"===e?r:void 0,send:"link",authParams:{scope:this.SCOPE,state:this.state,response_type:this.RESPONSE_TYPE,redirect_uri:this.redirect_uri,nonce:this.nonce,prompt:this.PROMPT}},{authParams:this.jwtParams});M6(this.finalURL.href,JSON.parse(JSON.stringify(n))).then((e=>{Eee.info("posted",e)})).catch((e=>{Eee.error(e),t(e)}))}catch(i){Eee.error(i),t(i)}}))}}class Zee extends Bee{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),m6(this,"clientId",void 0),m6(this,"verifier",void 0),m6(this,"redirect_uri",void 0),m6(this,"typeOfLogin",void 0),m6(this,"uxMode",void 0),m6(this,"redirectToOpener",void 0),m6(this,"jwtParams",void 0),m6(this,"customState",void 0),m6(this,"RESPONSE_TYPE","token"),m6(this,"SCOPE","identity"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://www.reddit.com/api/v1/authorize"+(window.innerWidth<600?".compact":"")),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=v6()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await I6("https://oauth.reddit.com/api/v1/me",{headers:{Authorization:`Bearer ${t}`}}),{icon_img:n="",name:i=""}=r;return{email:"",name:i,profileImage:n.split("?").length>0?n.split("?")[0]:n,verifier:this.verifier,verifierId:i.toLowerCase(),typeOfLogin:this.typeOfLogin}}}class Yee extends Bee{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),m6(this,"clientId",void 0),m6(this,"verifier",void 0),m6(this,"redirect_uri",void 0),m6(this,"typeOfLogin",void 0),m6(this,"uxMode",void 0),m6(this,"redirectToOpener",void 0),m6(this,"jwtParams",void 0),m6(this,"customState",void 0),m6(this,"RESPONSE_TYPE","token"),m6(this,"SCOPE","user:read:email"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://id.twitch.tv/oauth2/authorize"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=v6()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE,force_verify:!0},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await I6("https://api.twitch.tv/helix/users",{headers:{Authorization:`Bearer ${t}`,"Client-ID":this.clientId}}),[{profile_image_url:n="",display_name:i="",email:o="",id:a}]=r.data||[];return{profileImage:n,name:i,email:o,verifierId:a,verifier:this.verifier,typeOfLogin:this.typeOfLogin}}}const Xee="https://api.webauthn.openlogin.com";class Jee extends Bee{constructor(e,t,r,n,i,o,a,s,c){super(e,t,r,n,i,o,a,s),m6(this,"clientId",void 0),m6(this,"verifier",void 0),m6(this,"redirect_uri",void 0),m6(this,"typeOfLogin",void 0),m6(this,"uxMode",void 0),m6(this,"redirectToOpener",void 0),m6(this,"jwtParams",void 0),m6(this,"customState",void 0),m6(this,"registerOnly",void 0),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.registerOnly=c,this.setFinalUrl()}setFinalUrl(){const{webauthnURL:e}=this.customState||{},t=e?new URL(e):new URL("https://webauthn.openlogin.com"),r=JSON.parse(JSON.stringify(this.jwtParams||{})),n=v6()({register_only:!!this.registerOnly,state:this.state,client_id:this.clientId,redirect_uri:this.redirect_uri},r);Object.keys(n).forEach((e=>{n[e]&&t.searchParams.append(e,n[e])})),this.finalURL=t}async getUserInfo(e){const{idToken:t,ref:r,extraParamsPassed:n,extraParams:i}=e;let o,a,s,c,l,u,d,h,f;if("true"===n){Eee.debug("extraParamsPassed is true, using extraParams passed through hashParams");try{({verifier_id:o,signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}=JSON.parse(atob(i)))}catch(p){Eee.warn("unable to parse extraParams",p),({verifier_id:o,signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}=await I6(`${Xee}/signature/fetch/${t}`))}}else Eee.debug("extraParamsPassed is false, using extraParams passed through bridge server"),({verifier_id:o,signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}=await I6(`${Xee}/signature/fetch/${t}`));if(a!==t)throw new Error("idtoken should be equal to signature");return{email:"",name:"WebAuthn Login",profileImage:"",verifier:this.verifier,verifierId:o,typeOfLogin:this.typeOfLogin,ref:r,registerOnly:this.registerOnly,extraVerifierParams:{signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}}}}const Qee=e=>{let{clientId:t,redirect_uri:r,typeOfLogin:n,verifier:i,jwtParams:o,redirectToOpener:a,uxMode:s,customState:c,registerOnly:l}=e;if(!i||!n||!t)throw new Error("Invalid params");const{domain:u,login_hint:d,id_token:h,access_token:f}=o||{};switch(n){case eee:return new $ee(t,i,r,n,s,a,o,c);case tee:return new Fee(t,i,r,n,s,a,o,c);case iee:return new Yee(t,i,r,n,s,a,o,c);case ree:return new Zee(t,i,r,n,s,a,o,c);case nee:return new Uee(t,i,r,n,s,a,o,c);case hee:if(!u||!d)throw new Error("Invalid params");return new Gee(t,i,r,n,s,a,o,c);case oee:case aee:case see:case cee:case lee:case uee:case dee:case fee:if(h||f)return new Vee(t,i,r,n,s,a,o,c);if(!u)throw new Error("Invalid params");return new Hee(t,i,r,n,s,a,o,c);case pee:return new Jee(t,i,r,n,s,a,o,c,l);default:throw new Error("Invalid login type")}};class ete{constructor(e){m6(this,"sentry",null),this.sentry=e}startTransaction(e){if(this.sentry)return this.sentry.startTransaction(e)}finishTransaction(e){e&&e.finish()}}class tte{constructor(e){m6(this,"currentStorageMethod",vee),m6(this,"isInitialized",!1),m6(this,"storageServerUrl","https://broadcast-server.tor.us"),this.storageServerUrl=e}init(){const e=function(){var e;const t=z6().parse(navigator.userAgent);Eee.info(JSON.stringify(t),"current browser info");let r=!0;return null!==(e=navigator)&&void 0!==e&&e.brave&&(r=!1),t.engine.name!==z6().ENGINE_MAP.WebKit&&t.engine.name!==z6().ENGINE_MAP.Gecko||(r=!1),r}(),t=function(e){let t;try{t=window[e];const r="__storage_test__";return t.setItem(r,r),t.removeItem(r),!0}catch(r){return r&&(22===r.code||1014===r.code||"QuotaExceededError"===r.name||"NS_ERROR_DOM_QUOTA_REACHED"===r.name)&&t&&0!==t.length}}(vee);this.currentStorageMethod=e&&t?vee:yee,this.isInitialized=!0}async storeLoginDetails(e,t){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");if(this.currentStorageMethod===yee){const r=W7(Q7.from(t,"utf8")),n=r.toString("hex"),i=e9(r).toString("hex"),o=await X7(n,e),a=(await t9(r,W7(Q7.from(o,"utf8")))).toString("hex");await M6(`${this.storageServerUrl}/store/set`,{key:i,data:o,signature:a})}else window.localStorage.setItem(`torus_login_${t}`,JSON.stringify(e))}async retrieveLoginDetails(e){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");if(this.currentStorageMethod===yee){const t=W7(Q7.from(e,"utf8")),n=t.toString("hex"),i=e9(t).toString("hex");try{const e=await I6(`${this.storageServerUrl}/store/get?key=${i}`);if(e.message){return await J7(n,e.message)}}catch(r){if(404!==r.status)throw r;Eee.warn(r,"Session likely expired")}}const t=window.localStorage.getItem(`torus_login_${e}`);return JSON.parse(t||"{}")}clearLoginDetailsStorage(e){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");this.currentStorageMethod===vee&&window.localStorage.removeItem(`torus_login_${e}`)}clearOrphanedLoginDetails(){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");if(this.currentStorageMethod===vee){Object.keys(window.localStorage).forEach((e=>{e.startsWith("torus_login_")&&window.localStorage.removeItem(e)}))}}}const rte=["access_token","id_token"],nte=["access_token","id_token"],ite=["access_token","id_token"],ote=["args","method"];function ate(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ste(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{};if(this.storageHelper.init(),t)this.isInitialized=!0;else{if(!e){if(!(await fetch(`${this.config.baseUrl}sw.js`,{cache:"reload"})).ok)throw new Error("Service worker is not being served. Please serve it");try{return await(n=this.config.baseUrl,new Promise(((e,t)=>{const r=`${n}sw.js`;"serviceWorker"in window.navigator?(0,q7.z)(r,{ready(){Eee.info("App is being served from cache by a service worker.\n For more details, visit https://goo.gl/AFskqB"),e(void 0)},registered(){Eee.info("Service worker has been registered."),e(void 0)},cached(){Eee.info("Content has been cached for offline use."),e(void 0)},updatefound(){Eee.info("New content is downloading.")},updated(){Eee.info("New content is available; please refresh.")},offline(){Eee.info("No internet connection found. App is running in offline mode."),t(new Error("App is offline"))},error(e){Eee.error("Error during service worker registration:",e),t(e)}}):t(new Error("Service workers are not supported"))}))),void(this.isInitialized=!0)}catch(i){Eee.warn(i)}}var n;if(!r)return(()=>{var e,t;return(null===(e=window)||void 0===e||null===(t=e.navigator)||void 0===t?void 0:t.userAgent.toLowerCase().indexOf("firefox"))>-1||!1})()?void(this.isInitialized=!0):void await this.handlePrefetchRedirectUri();this.isInitialized=!0}}async triggerLogin(e){const{verifier:t,typeOfLogin:r,clientId:n,jwtParams:i,hash:o,queryParameters:a,customState:s,registerOnly:c}=e;if(Eee.info("Verifier: ",t),!this.isInitialized)throw new Error("Not initialized yet");if(c&&r!==pee)throw new Error("registerOnly flag can only be passed for webauthn");const l=Qee({typeOfLogin:r,clientId:n,verifier:t,redirect_uri:this.config.redirect_uri,redirectToOpener:this.config.redirectToOpener,jwtParams:i,uxMode:this.config.uxMode,customState:s,registerOnly:c});let u;if(o&&a){const{error:e,hashParameters:t,instanceParameters:r}=jee(o,a);if(e)throw new Error(e);const{access_token:n,id_token:i}=t;u=ste(ste({accessToken:n,idToken:i},N6(t,rte)),{},{state:r})}else if(this.storageHelper.clearOrphanedLoginDetails(),this.config.uxMode===gee.REDIRECT&&await this.storageHelper.storeLoginDetails({method:bee,args:e},l.nonce),u=await l.handleLoginWindow({locationReplaceOnRedirect:this.config.locationReplaceOnRedirect,popupFeatures:this.config.popupFeatures}),this.config.uxMode===gee.REDIRECT)return null;const d=await l.getUserInfo(u);if(c){const e=this.sentryHandler.startTransaction({name:_ee}),r=await this.nodeDetailManager.getNodeDetails({verifier:t,verifierId:d.verifierId});this.sentryHandler.finishTransaction(e);const n=this.sentryHandler.startTransaction({name:See}),i=await this.torus.getPublicAddress(r.torusNodeEndpoints,r.torusNodePub,{verifier:t,verifierId:d.verifierId});this.sentryHandler.finishTransaction(n);const o={userInfo:ste(ste({},d),u)};return ste(ste(ste({},o),i),{},{finalKeyData:ste(ste({},i.finalKeyData),{},{privKey:void 0}),oAuthKeyData:ste(ste({},i.finalKeyData),{},{privKey:void 0}),metadata:ste(ste({},i.metadata),{},{nonce:void 0}),sessionData:void 0})}return ste(ste({},await this.getTorusKey(t,d.verifierId,{verifier_id:d.verifierId},u.idToken||u.accessToken,d.extraVerifierParams)),{},{userInfo:ste(ste({},d),u)})}async triggerAggregateLogin(e){const{aggregateVerifierType:t,verifierIdentifier:r,subVerifierDetailsArray:n}=e;if(!this.isInitialized)throw new Error("Not initialized yet");if(!t||!r||!Array.isArray(n))throw new Error("Invalid params");if(t===mee&&1!==n.length)throw new Error("Single id verifier can only have one sub verifier");const i=[],o=[];for(const h of n){const{clientId:t,typeOfLogin:r,verifier:n,jwtParams:a,hash:s,queryParameters:c,customState:l}=h,u=Qee({typeOfLogin:r,clientId:t,verifier:n,redirect_uri:this.config.redirect_uri,redirectToOpener:this.config.redirectToOpener,jwtParams:a,uxMode:this.config.uxMode,customState:l});let d;if(s&&c){const{error:e,hashParameters:t,instanceParameters:r}=jee(s,c);if(e)throw new Error(e);const{access_token:n,id_token:i}=t;d=ste(ste({accessToken:n,idToken:i},N6(t,nte)),{},{state:r})}else if(this.storageHelper.clearOrphanedLoginDetails(),this.config.uxMode===gee.REDIRECT&&await this.storageHelper.storeLoginDetails({method:wee,args:e},u.nonce),d=await u.handleLoginWindow({locationReplaceOnRedirect:this.config.locationReplaceOnRedirect,popupFeatures:this.config.popupFeatures}),this.config.uxMode===gee.REDIRECT)return null;i.push(u.getUserInfo(d)),o.push(d)}const a=(await Promise.all(i)).map((e=>ste(ste({},e),{},{aggregateVerifier:r}))),s={verify_params:[],sub_verifier_ids:[],verifier_id:""},c=[];let l="",u={};for(let h=0;hste(ste({},e),o[t])))})}async triggerHybridAggregateLogin(e){const{singleLogin:t,aggregateLoginParams:r}=e;if(!this.isInitialized)throw new Error("Not initialized yet");if(!r.aggregateVerifierType||!r.verifierIdentifier||!Array.isArray(r.subVerifierDetailsArray))throw new Error("Invalid params");if(r.aggregateVerifierType===mee&&1!==r.subVerifierDetailsArray.length)throw new Error("Single id verifier can only have one sub verifier");const{typeOfLogin:n,clientId:i,verifier:o,jwtParams:a,hash:s,queryParameters:c,customState:l}=t,u=Qee({typeOfLogin:n,clientId:i,verifier:o,redirect_uri:this.config.redirect_uri,redirectToOpener:this.config.redirectToOpener,jwtParams:a,uxMode:this.config.uxMode,customState:l});let d;if(s&&c){const{error:e,hashParameters:t,instanceParameters:r}=jee(s,c);if(e)throw new Error(e);const{access_token:n,id_token:i}=t;d=ste(ste({accessToken:n,idToken:i},N6(t,ite)),{},{state:r})}else if(this.storageHelper.clearOrphanedLoginDetails(),this.config.uxMode===gee.REDIRECT&&await this.storageHelper.storeLoginDetails({method:xee,args:e},u.nonce),d=await u.handleLoginWindow({locationReplaceOnRedirect:this.config.locationReplaceOnRedirect,popupFeatures:this.config.popupFeatures}),this.config.uxMode===gee.REDIRECT)return null;const h=await u.getUserInfo(d),f=this.getTorusKey(o,h.verifierId,{verifier_id:h.verifierId},d.idToken||d.accessToken,h.extraVerifierParams),{verifierIdentifier:p,subVerifierDetailsArray:m}=r,g={verify_params:[],sub_verifier_ids:[],verifier_id:""},v=[];let y="";for(let S=0;S0&&void 0!==arguments[0]?arguments[0]:{};await this.init({skipInit:!0});const r=new URL(window.location.href),n=r.hash.substring(1),i={};if(r.searchParams.forEach(((e,t)=>{i[t]=e})),e){const e=window.location.origin+window.location.pathname;window.history.replaceState(ste(ste({},window.history.state),{},{as:e,url:e}),"",e)}if(!n&&0===Object.keys(i).length)throw new Error("Unable to fetch result from OAuth login");const{error:o,instanceParameters:a,hashParameters:s}=jee(n,i),{instanceId:c}=a;Eee.info(c,"instanceId");const l=await this.storageHelper.retrieveLoginDetails(c),{args:u,method:d}=l,h=N6(l,ote);if(Eee.info(u,d),t&&this.storageHelper.clearLoginDetailsStorage(c),o)return{error:o,state:a||{},method:d,result:{},hashParameters:s,args:u};let f;try{if(d===bee){const e=u;e.hash=n,e.queryParameters=i,f=await this.triggerLogin(e)}else if(d===wee){const e=u;e.subVerifierDetailsArray.forEach((e=>{e.hash=n,e.queryParameters=i})),f=await this.triggerAggregateLogin(e)}else if(d===xee){const e=u;e.singleLogin.hash=n,e.singleLogin.queryParameters=i,f=await this.triggerHybridAggregateLogin(e)}}catch(fde){return Eee.error(fde),ste({error:`Could not get result from torus nodes \n ${(null===fde||void 0===fde?void 0:fde.message)||""}`,state:a||{},method:d,result:{},hashParameters:s,args:u},h)}return ste(f?{method:d,result:f,state:a||{},hashParameters:s,args:u}:{error:"Unsupported method type",state:a||{},method:d,result:{},hashParameters:s,args:u},h)}async handlePrefetchRedirectUri(){return document?new Promise(((e,t)=>{const r=document.createElement("link");r.href=this.config.redirect_uri,window.location.origin!==new URL(this.config.redirect_uri).origin&&(r.crossOrigin="anonymous"),r.type="text/html",r.rel="prefetch";const n=()=>{this.isInitialized=!0,e()};try{r.relList&&r.relList.supports&&r.relList.supports("prefetch")?(r.onload=n,r.onerror=()=>{t(new Error(`Please serve redirect.html present in serviceworker folder of this package on ${this.config.redirect_uri}`))},document.head.appendChild(r)):n()}catch(fde){n()}})):Promise.resolve()}}const lte=(e,t,r)=>Promise.race([e(),new Promise(((e,n)=>setTimeout((()=>{n(new Error(r||"The operation has timed out"))}),t)))]),ute=async()=>lte((async()=>{const e=new cte({web3AuthClientId:"BBHmFdLXgGDzSiizRVMWtyL_7Dsoxu5B8zep2Pns8sGELslgXDbktJewVDVDDBlknEKkMCtzISLjJtxk60SK2-g",baseUrl:"https://umamiwallet.com/auth/v2/",redirectPathName:"redirect.html",redirectToOpener:!0,uxMode:"popup",network:"mainnet"});await e.init({skipSw:!0});const t=await e.triggerAggregateLogin({verifierIdentifier:"tezos-google",aggregateVerifierType:"single_id_verifier",subVerifierDetailsArray:[{clientId:"1070572364808-d31nlkneam5ee6dr0tu28fjjbsdkfta5.apps.googleusercontent.com",typeOfLogin:"google",verifier:"umami"}]});return{secretKey:vc(t.finalKeyData.privKey||t.oAuthKeyData.privKey,Ks[Fs.SPSK]),email:t.userInfo[0].email}}),6e4),dte=e=>{let t="Something went wrong";"object"===typeof e&&"message"in e?t=e.message:"string"===typeof e&&(t=e);let r="";return"object"===typeof e&&"stack"in e&&(r=e.stack),{timestamp:(new Date).toISOString(),description:t,stacktrace:r}},hte=()=>{const[e,t]=(0,n.useState)(!1),r=YD(),i=OR(),o=async(n,o)=>{if(!e){t(!0);try{return await n()}catch(a){const e=dte(a);throw r({description:e.description,status:"error",..."function"===typeof o?o(a):o}),i(Bd.actions.add(e)),a}finally{t(!1)}}};return{isLoading:e,handleAsyncAction:async(e,t)=>o(e,t).catch((()=>{})),handleAsyncActionUnsafe:o}},fte=({onAuth:e})=>{const{isLoading:t,handleAsyncAction:r}=hte();return(0,Yn.jsx)(d6,{width:"48px",background:"white",borderRadius:"full",_disabled:{bg:EP.gray[900]},"aria-label":"Google SSO","data-testid":"google-auth-button",icon:(0,Yn.jsx)(h6,{size:"24px"}),isLoading:t,onClick:async()=>r((async()=>{const{secretKey:t,email:r}=await ute();return e(t,r)}),{title:"Social login failed"}),size:"lg",variant:"outline"})},pte=({children:e,...t})=>(0,Yn.jsxs)(FU,{color:EP.orange,fontSize:"12px",...t,children:[(0,Yn.jsx)(LA,{as:Tj,marginRight:"6px"}),e]}),mte=({inputName:e,label:t="Password",placeholder:r="Enter your password",required:i="Password is required",validate:o,...a})=>{const{register:s}=pF(),[c,l]=(0,n.useState)(!1);return(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(T$,{children:t}),(0,Yn.jsxs)(M$,{marginTop:"12px",children:[(0,Yn.jsx)(D$,{"aria-label":t,autoComplete:"off",placeholder:r,type:c?"text":"password",...s(e,{required:i,minLength:{value:i?8:0,message:"Your password must be at least 8 characters long"},validate:o}),...a}),(0,Yn.jsx)(F$,{children:(0,Yn.jsx)(Si,{onClick:()=>l((e=>!e)),tabIndex:-1,variant:"unstyled",children:c?(0,Yn.jsx)(Ij,{"data-testid":"eye-slash-icon"}):(0,Yn.jsx)(Rj,{width:"16.5px","data-testid":"eye-icon"})})})]})]})},gte=({signer:e,onSubmit:t,isLoading:r,isDisabled:n,text:i})=>{const o=_$({mode:"onBlur",defaultValues:{password:""}}),{handleSubmit:a,formState:{errors:s,isValid:c}}=o,l=C5(),u=T5(),d=YD(),{isLoading:h,handleAsyncAction:f}=hte(),p=h||r,m=n||!c,g=async({password:r})=>f((async()=>{const n=await u(e,r);return t(await V3({type:"mnemonic",secretKey:n,network:l}))})),v=async({password:r})=>f((async()=>{const n=await u(e,r);return t(await V3({type:"secret_key",secretKey:n,network:l}))})),y=async()=>f((async()=>{const{secretKey:e}=await ute();t(await V3({type:"social",secretKey:e,network:l}))})),b=async()=>f((async()=>(d({description:"Please open the Tezos app on your Ledger and approve the operation",status:"info",duration:6e4,isClosable:!0}),t(await V3({type:"ledger",account:e,network:l})))));switch(e.type){case"secret_key":case"mnemonic":return(0,Yn.jsx)(ei,{width:"100%",children:(0,Yn.jsxs)(mF,{...o,children:[(0,Yn.jsxs)(DU,{isInvalid:!!s.password,marginY:"16px",children:[(0,Yn.jsx)(mte,{"data-testid":"password",inputName:"password"}),s.password&&(0,Yn.jsx)(pte,{children:s.password.message})]}),(0,Yn.jsx)(Si,{width:"100%",marginTop:"8px",isDisabled:m,isLoading:p,onClick:a("mnemonic"===e.type?g:v),size:"lg",type:"submit",children:i||"Submit Transaction"})]})});case"social":return(0,Yn.jsx)(Si,{width:"100%",isDisabled:m,isLoading:p,onClick:y,size:"lg",children:i||"Sign with Google"});case"ledger":return(0,Yn.jsx)(Si,{width:"100%",isDisabled:m,isLoading:p,onClick:b,size:"lg",children:i||"Sign with Ledger"})}},vte=({request:e,onSuccess:t})=>{const r=Rq()(e.sourceAddress),n=YD();if(!r)return(0,Yn.jsx)("div",{children:'"unknown account"'});return(0,Yn.jsxs)(KB,{children:[(0,Yn.jsxs)(WB,{children:["Sign payload Request from ",e.appMetadata.name]}),(0,Yn.jsx)(YB,{}),(0,Yn.jsx)(XB,{children:e.payload}),(0,Yn.jsx)(HU,{justifyContent:"center",display:"flex",children:(0,Yn.jsx)(gte,{onSubmit:async r=>{const i=await r.signer.sign(e.payload),o={type:jM.SignPayloadResponse,id:e.id,signingType:e.signingType,signature:i.prefixSig};await Bte.respond(o),n({description:"Successfully submitted Beacon operation",status:"success"}),t()},signer:r})})]})},yte=e=>(0,Yn.jsx)(LA,{width:"14px",height:"14px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 14 14",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M13 1L7 7M13 1V4.375M13 1H9.625M12.25 7.375V10.6C12.25 11.4401 12.25 11.8601 12.0865 12.181C11.9427 12.4632 11.7132 12.6927 11.431 12.8365C11.1101 13 10.6901 13 9.85 13H3.4C2.55992 13 2.13988 13 1.81901 12.8365C1.53677 12.6927 1.3073 12.4632 1.16349 12.181C1 11.8601 1 11.4401 1 10.6V4.15C1 3.30992 1 2.88988 1.16349 2.56901C1.3073 2.28677 1.53677 2.0573 1.81901 1.91349C2.13988 1.75 2.55992 1.75 3.4 1.75H6.625",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),bte=({hash:e})=>{const t=`${C5().tzktExplorerUrl}/${e}`,{onClose:r}=(0,n.useContext)(fM),i=VO();return(0,Yn.jsxs)(KB,{paddingY:"20px",children:[(0,Yn.jsx)(YB,{}),(0,Yn.jsx)(WB,{textAlign:"center",children:(0,Yn.jsx)(ui,{children:"Operation Submitted"})}),(0,Yn.jsx)(XB,{children:(0,Yn.jsx)(Xn,{justifyContent:"center",marginTop:"10px",children:(0,Yn.jsx)(ZB,{color:"text.dark",textAlign:"center",size:"sm",children:"You can follow this operation's progress in the Operations section. It may take up to 30 seconds to appear."})})}),(0,Yn.jsxs)(HU,{justifyContent:"center",flexDirection:"column",width:"100%",children:[(0,Yn.jsx)(Si,{width:"100%",onClick:()=>{r(),i("/operations")},size:"lg",children:"See all Operations"}),(0,Yn.jsx)(vT,{rel:"noopener noreferrer",target:"_blank",to:t,children:(0,Yn.jsx)(Xn,{alignItems:"center",marginTop:"24px",children:(0,Yn.jsxs)(Si,{variant:"CTAWithIcon",children:[(0,Yn.jsx)(ZB,{marginRight:"4px",children:"View in Tzkt"}),(0,Yn.jsx)(yte,{stroke:"currentcolor"})]})})})]})]})},wte=(e,t)=>{const{onClose:r}=(0,n.useContext)(fM),[i,o]=(0,n.useState)(null),a=C5(),{isLoading:s,handleAsyncAction:c}=hte(),{openWith:l}=(0,n.useContext)(fM),u=_$({mode:"onBlur",defaultValues:{signer:e.signer.address.pkh,sender:e.sender.address.pkh}});(0,n.useEffect)((()=>{c((async()=>{const t=await X3(e,a);o(t)}),(e=>(r(),{title:"Error",description:`Error while processing beacon request: ${e.message}`,status:"error"})))}),[a,e]);return{fee:i,form:u,isSigning:s,onSign:async r=>c((async()=>{const{opHash:n}=await A5(e,r);l((0,Yn.jsx)(bte,{hash:n})),t(n)}))}},xte=({mutezAmount:e})=>(0,Yn.jsxs)(Xn,{alignItems:"center",height:"60px",padding:"15px",background:EP.gray[800],borderRadius:"4px",children:[(0,Yn.jsx)(pR,{marginRight:"12px"}),(0,Yn.jsx)(Xn,{alignItems:"end",children:(0,Yn.jsx)(J5,{number:D5(e)})})]}),_te=({fee:e})=>(0,Yn.jsxs)(Xn,{alignItems:"center",children:[(0,Yn.jsx)(ui,{marginRight:"4px",color:EP.gray[450],size:"sm",children:"Fee:"}),(0,Yn.jsx)(ZB,{color:EP.gray[400],"data-testid":"fee",size:"sm",children:D5(e)})]}),Ste=Zn(WB,{baseStyle:{padding:0,paddingBottom:"32px",textAlign:"center"}}),kte=({title:e="Send",subTitle:t="Send one or insert into batch"})=>(0,Yn.jsxs)(Ste,{children:[(0,Yn.jsx)(ui,{size:"2xl",children:e}),(0,Yn.jsx)(ZB,{color:EP.gray[400],textAlign:"center",size:"sm",children:t}),(0,Yn.jsx)(YB,{})]});function Ete(e){const{viewBox:t="0 0 24 24",d:r,displayName:i,defaultProps:o={}}=e,a=n.Children.toArray(e.path),s=ne(((e,n)=>(0,Yn.jsx)(LA,{ref:n,viewBox:t,...o,...e,children:a.length?a:(0,Yn.jsx)("path",{fill:"currentColor",d:r})})));return s.displayName=i,s}var Ate=Ete({d:"M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z",displayName:"ArrowBackIcon"});const Pte=({onClick:e})=>(0,Yn.jsx)(d6,{...FP,"aria-label":"Back",icon:(0,Yn.jsx)(Ate,{width:"24px",height:"20px"}),onClick:e,size:"sm",variant:"ghost"}),Ote=(e,t)=>{let r;switch(e){case"implicit":r="batch"===t?"Submit":"Confirm";break;case"proposal":r="Propose"}switch(t){case"single":return`${r} Transaction`;case"batch":return`${r} Batch`}},Tte=e=>{switch(e.type){case"ledger":case"social":return;case"mnemonic":case"secret_key":return"Enter your password to confirm this transaction."}},Cte=({goBack:e,mode:t,operationsType:r,signer:n})=>(0,Yn.jsxs)(Ste,{children:[e&&(0,Yn.jsx)(Pte,{onClick:e}),(0,Yn.jsx)(ui,{size:"2xl",children:Ote(r,t)}),(0,Yn.jsx)(ZB,{color:EP.gray[400],textAlign:"center",size:"sm",children:Tte(n)}),(0,Yn.jsx)(YB,{})]}),jte=({operation:e,onBeaconSuccess:t})=>{const{amount:r,contract:n,entrypoint:i,args:o}=e.operations[0],{isSigning:a,form:s,onSign:c,fee:l}=wte(e,t);return l?(0,Yn.jsx)(mF,{...s,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(Cte,{mode:"single",operationsType:e.type,signer:e.signer}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(xte,{mutezAmount:r}),(0,Yn.jsx)(Xn,{alignItems:"center",justifyContent:"end",marginTop:"12px",children:(0,Yn.jsx)(_te,{fee:l})}),(0,Yn.jsx)(T$,{marginTop:"24px",children:"From "}),(0,Yn.jsx)(e6,{address:e.sender.address}),(0,Yn.jsx)(T$,{marginTop:"24px",children:"To "}),(0,Yn.jsx)(e6,{address:n}),(0,Yn.jsx)(T$,{marginTop:"24px",children:"Parameter"}),(0,Yn.jsx)(kU,{allowToggle:!0,children:(0,Yn.jsxs)(EU,{background:EP.gray[800],border:"none",borderRadius:"8px",children:[(0,Yn.jsxs)(AU,{children:[(0,Yn.jsx)(ei,{flex:"1",textAlign:"left",children:"JSON"}),(0,Yn.jsx)(PU,{})]}),(0,Yn.jsx)(RU,{children:(0,Yn.jsx)(O$,{value:{entrypoint:i,values:o}})})]})})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(gte,{isLoading:a,onSubmit:c,signer:e.signer,text:Ote(e.type,"single")})})]})})}):null},Rte=({operation:e,onBeaconSuccess:t})=>{const{recipient:r}=e.operations[0],{isSigning:n,form:i,onSign:o,fee:a}=wte(e,t);return a?(0,Yn.jsx)(mF,{...i,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(Cte,{mode:"single",operationsType:e.type,signer:e.signer}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(T$,{children:"From"}),(0,Yn.jsx)(e6,{address:e.signer.address}),(0,Yn.jsx)(Xn,{alignItems:"center",justifyContent:"end",marginTop:"12px",marginBottom:"24px",paddingX:"4px",children:(0,Yn.jsx)(Xn,{alignItems:"center",children:(0,Yn.jsx)(_te,{fee:a})})}),(0,Yn.jsx)(T$,{children:"To"}),(0,Yn.jsx)(e6,{address:r})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(gte,{isLoading:n,onSubmit:o,signer:e.signer,text:Ote(e.type,"single")})})]})})}):null},Ite=({operation:e,onBeaconSuccess:t})=>{const{amount:r,recipient:n}=e.operations[0],{isSigning:i,form:o,onSign:a,fee:s}=wte(e,t);return s?(0,Yn.jsx)(mF,{...o,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(Cte,{mode:"single",operationsType:e.type,signer:e.signer}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(xte,{mutezAmount:r}),(0,Yn.jsx)(Xn,{alignItems:"center",justifyContent:"end",marginTop:"12px",children:(0,Yn.jsx)(_te,{fee:s})}),(0,Yn.jsx)(T$,{marginTop:"24px",children:"From "}),(0,Yn.jsx)(e6,{address:e.sender.address}),(0,Yn.jsx)(T$,{marginTop:"24px",children:"To "}),(0,Yn.jsx)(e6,{address:n})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(gte,{isLoading:i,onSubmit:a,signer:e.signer,text:Ote(e.type,"single")})})]})})}):null},Mte=({operation:e,onBeaconSuccess:t})=>{const{isSigning:r,form:n,onSign:i,fee:o}=wte(e,t);return o?(0,Yn.jsx)(mF,{...n,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(Cte,{mode:"single",operationsType:e.type,signer:e.signer}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(T$,{children:"From"}),(0,Yn.jsx)(e6,{address:e.signer.address}),(0,Yn.jsx)(Xn,{alignItems:"center",justifyContent:"end",marginTop:"12px",paddingX:"4px",children:(0,Yn.jsx)(_te,{fee:o})})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(gte,{isLoading:r,onSubmit:i,signer:e.signer,text:Ote(e.type,"single")})})]})})}):null},Lte=({operation:e,onBeaconSuccess:t})=>{switch(e.operations[0].type){case"tez":return(0,Yn.jsx)(Ite,{onBeaconSuccess:t,operation:e});case"contract_call":return(0,Yn.jsx)(jte,{onBeaconSuccess:t,operation:e});case"delegation":return(0,Yn.jsx)(Rte,{onBeaconSuccess:t,operation:e});case"undelegation":return(0,Yn.jsx)(Mte,{onBeaconSuccess:t,operation:e});case"fa1.2":case"fa2":case"contract_origination":throw new Error("Unsupported operation type")}},Nte=({message:e,onClose:t})=>{const r=Rq(),n=YD();switch(e.type){case jM.PermissionRequest:return(0,Yn.jsx)(u6,{onSuccess:t,request:e});case jM.SignPayloadRequest:return(0,Yn.jsx)(vte,{onSuccess:t,request:e});case jM.OperationRequest:{const o=r(e.sourceAddress);if(!o)return(0,Yn.jsxs)(ei,{children:["Account not in this wallet ",e.sourceAddress]});try{const r=Dte(e,o),i=async r=>{const i={type:jM.OperationResponse,id:e.id,transactionHash:r};try{await Bte.respond(i)}catch(o){console.warn("Failed to parse Beacon request",o),n({description:`Failed to confirm Beacon operation: ${o.message}`})}finally{t()}};return(0,Yn.jsx)(Lte,{onBeaconSuccess:i,operation:r})}catch(i){return(0,Yn.jsxs)(ei,{children:["Error handling operation request: ",i.message]})}}default:return(0,Yn.jsxs)("div",{children:["Unsupported request: ",e.type]})}},Dte=({operationDetails:e},t)=>{if(0===e.length)throw new Error("Empty operation details!");if(e.length>1)throw new Error("Batch operation is not supported");const r=e[0],n=((e,t)=>{switch(e.kind){case MM.TRANSACTION:{const{destination:t,amount:r,parameters:n}=e;return Wu(t)&&n?{type:"contract_call",amount:r,contract:Zu(t),entrypoint:n.entrypoint,args:n.value}:{type:"tez",amount:r,recipient:Yu(e.destination)}}case MM.DELEGATION:{const{delegate:r}=e;return r?{type:"delegation",sender:t.address,recipient:Yu(r)}:{type:"undelegation",sender:t.address}}default:return null}})(e[0],t);if(!n)throw new Error(`Unsupported operation: ${r.kind}`);return{type:"implicit",operations:[n],sender:t,signer:t}},zte=Hu.object({id:Hu.string(),type:Hu.string(),name:Hu.string(),publicKey:Hu.string(),version:Hu.string(),icon:Hu.string().optional(),relayServer:Hu.string().optional()}).parse,Bte=new ZD({name:"Umami",iconUrl:"",appUrl:"https://umamiwallet.com/"}),Ute="beaconPeers",Fte=()=>{const e=(0,Oi.useQueryClient)();return()=>e.refetchQueries(Ute)},$te=()=>{const e=Fte(),t=(()=>{const e=to();return t=>e(Id.actions.removeConnection({dAppId:t}))})();return r=>Bte.removePeer(r).then((()=>t(r.senderId))).then(e)},Hte=()=>{const e=Fte(),t=YD();return r=>{(new wL).deserialize(r).then(zte).then((t=>{Bte.addPeer(t).then(e)})).catch((e=>{t({description:"Beacon sync code in the clipboard is invalid. Please copy a beacon sync code from the dApp",status:"error"}),console.error(e)}))}},Vte=({children:e})=>{const{openWith:t,onClose:r}=(0,n.useContext)(fM);return(0,n.useEffect)((()=>{Bte.init().then((()=>{Bte.connect((e=>{t((0,Yn.jsx)(Nte,{message:e,onClose:r}))}))})).catch(console.error)}),[r,t]),(0,Yn.jsx)(Yn.Fragment,{children:e})},qte=1963879877,Kte=-1890025422,Wte=e=>({address:Zu(e.address),threshold:Number(e.storage.threshold),signers:e.storage.signers.map(Yu),pendingOperationsBigmapId:e.storage.pending_ops}),Gte=async(e,t)=>v5((async()=>{const r=await(e=>v5((async()=>{try{const t=`${e.tzktApiUrl}/v1/contracts?typeHash=1963879877&codeHash=-1890025422&includeStorage=true&limit=10000`,{data:r}=await uj.get(t);return r}catch(t){throw new Error(`Error fetching same contracts from tzkt: ${t.message}`)}})))(t);return r.filter((({storage:{signers:t}})=>{if(!(0,Va.every)(t,Gu))return!1;const r=t.filter((t=>e.has(t)));return r.length>0})).map(Wte)})),Zte=e=>{const{bigmap:t,key:r,value:n}=e;if(null===r||null===n)throw new Error("parseMultisigOperation failed");return{id:r,bigmapId:t,rawActions:n.actions,approvals:n.approvals.map(Yu)}},Yte=async(e,t)=>0===e.length?[]:v5((async()=>{const r=e.map((e=>e.pendingOperationsBigmapId)),n=await((e,t)=>0===e.length?Promise.resolve([]):v5((async()=>{const r=`${t.tzktApiUrl}/v1/bigmaps/keys?active=true&bigmap.in=${e.join(",")}&limit=10000`,{data:n}=await uj.get(r);return n})))(r,t);return(0,Va.compact)(n.map(Zte))})),Xte=async(e,t,r)=>{const n=await Yte(r,t);e($d.setPendingOperations(n.flat()))},Jte=async(e,t,r)=>{const n=await y5(r,t);e(Ed.updateTezBalance(n.flat()))},Qte=async(e,t,r)=>{const n=await b5(r,t),i=n.flat().map((({token:e,lastLevel:t})=>({...e,lastLevel:t})));e(Gd.addTokens({network:t,tokens:i})),e(Ed.updateTokenBalance(n.flat()))},ere=async e=>{const t=await(async()=>{const{data:{data:{priceUsd:e}}}=await uj.get("https://api.coincap.io/v2/assets/tezos");return null!==e&&void 0!==e?e:null})();e(Ed.updateConversionRate({rate:t}))},tre=()=>{const e=OR(),t=jq(),r=TR((e=>e.assets.refetchTrigger)),i=C5(),o=(0,Oi.useQueryClient)(),a=YD(),s=t.map((e=>e.address.pkh)),c=(0,Oi.useQuery)("allAssets",{queryFn:()=>(async(e,t,r)=>{try{e(Ed.setIsLoading(!0));const n=await Gte(new Set(r),t);e($d.setMultisigs(n));const i=[...r,...n.map((e=>e.address.pkh))];await Promise.all([Xte(e,t,n),Jte(e,t,i),Qte(e,t,i)]),e(Ed.setLastTimeUpdated((new Date).toUTCString()))}finally{e(Ed.setIsLoading(!1))}})(e,i,s),onError:t=>{e(Bd.actions.add(dte(t))),a({description:`Data fetching error: ${t.message}`,status:"error",isClosable:!0})},retry:!1,refetchInterval:15e3,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),l=(0,Oi.useQuery)("conversionRate",{queryFn:()=>ere(e),refetchInterval:3e5,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),u=(0,Oi.useQuery)("blockNumber",{queryFn:()=>(async(e,t)=>{const r=await k5(t);e(Ed.updateBlockLevel(r))})(e,i),retry:!1,refetchInterval:15e3,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),d=(0,Oi.useQuery)("bakers",{queryFn:()=>(async(e,t)=>{const r=(await E5(t)).map((({address:e,alias:t,stakingBalance:r})=>({address:e,stakingBalance:r,name:null!==t&&void 0!==t?t:"Unknown baker"})));e(Ed.updateBakers(r))})(e,i),retry:!1,refetchInterval:72e5,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),h=(0,n.useRef)(l),f=(0,n.useRef)(u),p=(0,n.useRef)(c),m=(0,n.useRef)(d);(0,n.useEffect)((()=>{o.cancelQueries({queryKey:"allAssets"}),o.cancelQueries({queryKey:"conversionRate"}),o.cancelQueries({queryKey:"blockNumber"}),o.cancelQueries({queryKey:"bakers"}),h.current.refetch(),f.current.refetch(),p.current.refetch(),m.current.refetch()}),[i,r,o])},rre=()=>{const e=YD(),t=Hte(),r=(0,n.useRef)(t),i=(0,n.useRef)(e),o=(e,t)=>{const n=t.replace(":///","://");if(n.startsWith("umami://auth/")){const e=(e=>{const t=e.replace("umami://auth/",""),r=new URLSearchParams(t),n={instanceParams:{insanceId:r.get("instanceId"),verifier:r.get("verifier"),typeOfLogin:r.get("typeOfLogin"),redirectToOpener:r.get("redirectToOpener")},hashParams:{state:r.get("state"),access_token:r.get("access_token"),token_type:r.get("token_type"),expires_in:r.get("expires_in"),scope:r.get("scope"),id_token:r.get("id_token"),authuser:r.get("authuser"),hd:r.get("hd"),prompt:r.get("prompt")}};return{channel:r.get("channel"),data:n,error:r.get("error")}})(n);window.postMessage(e)}else if(n.startsWith("umami://?type=tzip10&data=")){const e=new URL(n).searchParams.get("data");e?r.current(e):i.current({title:"Linkhandler",description:"Data Payload missing"})}else i.current({title:"Linkhandler",description:"Unsupported link type"})};(0,n.useEffect)((()=>{const e=window;return e&&e.electronAPI&&e.electronAPI.onDeeplink(o),()=>{}}),[])};var nre=ne(((e,t)=>{var r;const{overflow:n,overflowX:i,className:o,...a}=e;return(0,Yn.jsx)(Zn.div,{ref:t,className:ie("chakra-table__container",o),...a,__css:{display:"block",whiteSpace:"nowrap",WebkitOverflowScrolling:"touch",overflowX:null!=(r=null!=n?n:i)?r:"auto",overflowY:"hidden",maxWidth:"100%"}})})),[ire,ore]=di({name:"TableStylesContext",errorMessage:"useTableStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),are=ne(((e,t)=>{const r=li("Table",e),{className:n,layout:i,...o}=Qt(e);return(0,Yn.jsx)(ire,{value:r,children:(0,Yn.jsx)(Zn.table,{ref:t,__css:{tableLayout:i,...r.table},className:ie("chakra-table",n),...o})})}));are.displayName="Table";var sre=ne(((e,t)=>{const r=ore();return(0,Yn.jsx)(Zn.tbody,{...e,ref:t,__css:r.tbody})})),cre=ne(((e,t)=>{const r=ore();return(0,Yn.jsx)(Zn.tr,{...e,ref:t,__css:r.tr})})),lre=ne((({isNumeric:e,...t},r)=>{const n=ore();return(0,Yn.jsx)(Zn.td,{...t,ref:r,__css:n.td,"data-is-numeric":e})}));function ure(e){return Xj({tag:"svg",attr:{fill:"currentColor",viewBox:"0 0 16 16"},child:[{tag:"path",attr:{d:"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"}},{tag:"path",attr:{d:"M10.97 4.97a.235.235 0 0 0-.02.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-1.071-1.05z"}}]})(e)}function dre(e){return Xj({tag:"svg",attr:{fill:"currentColor",viewBox:"0 0 16 16"},child:[{tag:"path",attr:{d:"M3 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3z"}}]})(e)}function hre(e){return Xj({tag:"svg",attr:{viewBox:"0 0 15 15",fill:"none"},child:[{tag:"path",attr:{fillRule:"evenodd",clipRule:"evenodd",d:"M7.49991 0.877045C3.84222 0.877045 0.877075 3.84219 0.877075 7.49988C0.877075 11.1575 3.84222 14.1227 7.49991 14.1227C11.1576 14.1227 14.1227 11.1575 14.1227 7.49988C14.1227 3.84219 11.1576 0.877045 7.49991 0.877045ZM1.82708 7.49988C1.82708 4.36686 4.36689 1.82704 7.49991 1.82704C10.6329 1.82704 13.1727 4.36686 13.1727 7.49988C13.1727 10.6329 10.6329 13.1727 7.49991 13.1727C4.36689 13.1727 1.82708 10.6329 1.82708 7.49988ZM10.1589 5.53774C10.3178 5.31191 10.2636 5.00001 10.0378 4.84109C9.81194 4.68217 9.50004 4.73642 9.34112 4.96225L6.51977 8.97154L5.35681 7.78706C5.16334 7.59002 4.84677 7.58711 4.64973 7.78058C4.45268 7.97404 4.44978 8.29061 4.64325 8.48765L6.22658 10.1003C6.33054 10.2062 6.47617 10.2604 6.62407 10.2483C6.77197 10.2363 6.90686 10.1591 6.99226 10.0377L10.1589 5.53774Z",fill:"currentColor"}}]})(e)}function fre(e){return Xj({tag:"svg",attr:{viewBox:"0 0 15 15",fill:"none"},child:[{tag:"path",attr:{fillRule:"evenodd",clipRule:"evenodd",d:"M12.8536 2.85355C13.0488 2.65829 13.0488 2.34171 12.8536 2.14645C12.6583 1.95118 12.3417 1.95118 12.1464 2.14645L7.5 6.79289L2.85355 2.14645C2.65829 1.95118 2.34171 1.95118 2.14645 2.14645C1.95118 2.34171 1.95118 2.65829 2.14645 2.85355L6.79289 7.5L2.14645 12.1464C1.95118 12.3417 1.95118 12.6583 2.14645 12.8536C2.34171 13.0488 2.65829 13.0488 2.85355 12.8536L7.5 8.20711L12.1464 12.8536C12.3417 13.0488 12.6583 13.0488 12.8536 12.8536C13.0488 12.6583 13.0488 12.3417 12.8536 12.1464L8.20711 7.5L12.8536 2.85355Z",fill:"currentColor"}}]})(e)}const pre="TOAST_ID",mre=({pkh:e,formatAddress:t=!0,copyable:r=!0,iconColor:n=EP.gray[600],...i})=>(0,Yn.jsx)(gre,{copyValue:r?e:void 0,displayText:t?z5(e):e,iconColor:n,toastMessage:"Address copied to clipboard",...i}),gre=({displayText:e,copyValue:t,toastMessage:r,iconColor:n,...i})=>{const o=YD();return(0,Yn.jsxs)(Xn,{alignItems:"center",...i,children:[(0,Yn.jsx)(ZB,{marginRight:"6px",color:EP.gray[400],size:"sm",children:e}),t&&(0,Yn.jsx)(Bj,{stroke:EP.gray[450],_hover:{stroke:EP.green},cursor:"pointer",onClick:()=>(async()=>{t&&(await navigator.clipboard.writeText(t),r&&!o.isActive(pre)&&o({id:pre,render:()=>(0,Yn.jsx)(vre,{message:r,onClose:()=>{o.close(pre)}})}))})()})]})},vre=({message:e,onClose:t})=>(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",padding:2,borderRadius:"4px",backgroundColor:"white",children:[(0,Yn.jsxs)(Xn,{alignItems:"center",children:[(0,Yn.jsx)(LA,{as:ure,margin:1,color:EP.green}),(0,Yn.jsx)(ZB,{color:"black",children:e})]}),(0,Yn.jsx)(LA,{as:fre,color:"black",_hover:{color:EP.gray[600]},cursor:"pointer",onClick:t})]}),yre=({title:e,buttonText:t,contact:r})=>{const i=OR(),o=Nq(),{isOpen:a,onClose:s}=(0,n.useContext)(fM),{handleSubmit:c,formState:{isValid:l,errors:u},register:d,reset:h,getValues:f}=_$({mode:"onBlur",defaultValues:r}),p=void 0!==r,m=Iq(),{nameExistsInContacts:g,addressExistsInContacts:v}=Oq(),y=(0,n.useRef)(h);return(0,n.useEffect)((()=>{a&&y.current(r)}),[a,r]),(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{onSubmit:c((({name:e,pkh:t})=>{var r;r={name:e.trim(),pkh:t},o(r.pkh)||(i(Dd.upsert(r)),s()),h()})),children:[(0,Yn.jsx)(WB,{textAlign:"center",children:e}),(0,Yn.jsx)(YB,{}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsxs)(DU,{isInvalid:!!u.name,marginY:5,children:[(0,Yn.jsx)(T$,{children:"Name"}),(0,Yn.jsx)(D$,{type:"text",...d("name",{required:"Name is required",validate:e=>m.map((e=>e.label)).includes(e)?"Name already used in accounts":!g(e.trim())||"Name already registered"}),placeholder:"Enter contact's name"}),u.name&&(0,Yn.jsx)(pte,{children:u.name.message})]}),(0,Yn.jsxs)(DU,{isInvalid:!!u.pkh,marginY:5,children:[(0,Yn.jsx)(T$,{children:"Address"}),(0,Yn.jsx)(D$,{type:"text",...d("pkh",{required:"Address is required",validate:e=>Ku(e)?p?f("name")!==r.name:o(e)?"Address already used in accounts":!v(e)||"Address already registered":"Invalid address"}),disabled:p,placeholder:"Enter contact\u2019s tz address",value:null===r||void 0===r?void 0:r.pkh,variant:p?"filled":void 0}),u.pkh&&(0,Yn.jsx)(pte,{children:u.pkh.message})]})]}),(0,Yn.jsx)(HU,{padding:"16px 0 0 0",children:(0,Yn.jsx)(ei,{width:"100%",children:(0,Yn.jsx)(Si,{width:"100%",marginBottom:2,isDisabled:!l,size:"lg",type:"submit",children:t})})})]})})},bre=({contact:e})=>{const t=OR(),{onClose:r}=(0,n.useContext)(fM);return(0,Yn.jsxs)(KB,{children:[(0,Yn.jsx)(WB,{textAlign:"center",children:"Delete Contact"}),(0,Yn.jsx)(YB,{}),(0,Yn.jsx)(XB,{children:(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",flexDirection:"column",children:[(0,Yn.jsx)(ZB,{color:EP.gray[400],size:"sm",children:"Are you sure you want to remove this contact?"}),(0,Yn.jsxs)(ei,{marginTop:5,children:[(0,Yn.jsx)(ui,{marginBottom:3,textAlign:"center",size:"md",children:e.name}),(0,Yn.jsx)(mre,{pkh:e.pkh})]})]})}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(ei,{width:"100%",children:(0,Yn.jsx)(Si,{width:"100%",marginBottom:2,onClick:()=>{t(Dd.remove(e.pkh)),r()},variant:"warning",children:"Delete"})})})]})};var wre=ne((function(e,t){const{borderLeftWidth:r,borderBottomWidth:n,borderTopWidth:i,borderRightWidth:o,borderWidth:a,borderStyle:s,borderColor:c,...l}=ci("Divider",e),{className:u,orientation:d="horizontal",__css:h,...f}=Qt(e),p={vertical:{borderLeftWidth:r||o||a||"1px",height:"100%"},horizontal:{borderBottomWidth:n||i||a||"1px",width:"100%"}};return(0,Yn.jsx)(Zn.hr,{ref:t,"aria-orientation":d,...f,__css:{...l,border:"0",borderColor:c,borderStyle:s,...p[d],...h},className:ie("chakra-divider",u)})}));function xre(e){const{isOpen:t,ref:r}=e,[i,o]=(0,n.useState)(t),[a,s]=(0,n.useState)(!1);(0,n.useEffect)((()=>{a||(o(t),s(!0))}),[t,a,i]),NV((()=>r.current),"animationend",(()=>{o(t)}));return{present:!(!t&&!i),onComplete(){var e;const t=function(e){var t,r;return null!=(r=null==(t=MB(e))?void 0:t.defaultView)?r:window}(r.current),n=new t.CustomEvent("animationend",{bubbles:!0});null==(e=r.current)||e.dispatchEvent(n)}}}wre.displayName="Divider";var _re=()=>"undefined"!==typeof window;var Sre=e=>_re()&&e.test(function(){var e;const t=navigator.userAgentData;return null!=(e=null==t?void 0:t.platform)?e:navigator.platform}()),kre=()=>Sre(/mac|iphone|ipad|ipod/i)&&(e=>_re()&&e.test(navigator.vendor))(/apple/i);function Ere(e){const t=e.current;if(!t)return!1;const r=function(e){return MB(e).activeElement}(t);return!!r&&(!t.contains(r)&&!(!((n=r)&&IB(n)&&zB(n))||NB(n)));var n}function Are(e,t){const{shouldFocus:r,visible:n,focusRef:i}=t,o=r&&!n;mb((()=>{if(!o)return;if(Ere(e))return;const t=(null==i?void 0:i.current)||e.current;let r;return t?(r=requestAnimationFrame((()=>{t.focus({preventScroll:!0})})),()=>{cancelAnimationFrame(r)}):void 0}),[o,e,i])}var Pre={preventScroll:!0,shouldFocus:!1};function Ore(e){const{wasSelected:t,enabled:r,isSelected:n,mode:i="unmount"}=e;return!r||(!!n||!("keepMounted"!==i||!t))}var Tre={click:"click",hover:"hover"};function Cre(e={}){const{closeOnBlur:t=!0,closeOnEsc:r=!0,initialFocusRef:i,id:o,returnFocusOnClose:a=!0,autoFocus:s=!0,arrowSize:c,arrowShadowColor:l,trigger:u=Tre.click,openDelay:d=200,closeDelay:h=200,isLazy:f,lazyBehavior:p="unmount",computePositionOnMount:m,...g}=e,{isOpen:v,onClose:y,onOpen:b,onToggle:w}=LV(e),x=(0,n.useRef)(null),_=(0,n.useRef)(null),S=(0,n.useRef)(null),k=(0,n.useRef)(!1),E=(0,n.useRef)(!1);v&&(E.current=!0);const[A,P]=(0,n.useState)(!1),[O,T]=(0,n.useState)(!1),C=(0,n.useId)(),j=null!=o?o:C,[R,I,M,L]=["popover-trigger","popover-content","popover-header","popover-body"].map((e=>`${e}-${j}`)),{referenceRef:N,getArrowProps:D,getPopperProps:z,getArrowInnerProps:B,forceUpdate:U}=IV({...g,enabled:v||!!m}),F=xre({isOpen:v,ref:S});!function(e){const{ref:t,elements:r,enabled:n}=e,i=()=>{var e,r;return null!=(r=null==(e=t.current)?void 0:e.ownerDocument)?r:document};NV(i,"pointerdown",(e=>{if(!kre()||!n)return;const o=e.target,a=(null!=r?r:[t]).some((e=>{const t="current"in e?e.current:e;return(null==t?void 0:t.contains(o))||t===o}));i().activeElement!==o&&a&&(e.preventDefault(),o.focus())}))}({enabled:v,ref:_}),Are(S,{focusRef:_,visible:v,shouldFocus:a&&u===Tre.click}),function(e,t=Pre){const{focusRef:r,preventScroll:i,shouldFocus:o,visible:a}=t,s="current"in e?e.current:e,c=o&&a,l=(0,n.useRef)(c),u=(0,n.useRef)(a);yh((()=>{!u.current&&a&&(l.current=c),u.current=a}),[a,c]);const d=(0,n.useCallback)((()=>{if(a&&s&&l.current&&(l.current=!1,!s.contains(document.activeElement)))if(null==r?void 0:r.current)requestAnimationFrame((()=>{var e;null==(e=r.current)||e.focus({preventScroll:i})}));else{const e=$B(s);e.length>0&&requestAnimationFrame((()=>{e[0].focus({preventScroll:i})}))}}),[a,i,s,r]);mb((()=>{d()}),[d]),NV(s,"transitionend",d)}(S,{focusRef:i,visible:v,shouldFocus:s&&u===Tre.click});const $=Ore({wasSelected:E.current,enabled:f,mode:p,isSelected:F.present}),H=(0,n.useCallback)(((e={},n=null)=>{const i={...e,style:{...e.style,transformOrigin:J$.transformOrigin.varRef,[J$.arrowSize.var]:c?`${c}px`:void 0,[J$.arrowShadowColor.var]:l},ref:xi(S,n),children:$?e.children:null,id:I,tabIndex:-1,role:"dialog",onKeyDown:de(e.onKeyDown,(e=>{r&&"Escape"===e.key&&y()})),onBlur:de(e.onBlur,(e=>{const r=Rre(e),n=jre(S.current,r),i=jre(_.current,r);v&&t&&(!n&&!i)&&y()})),"aria-labelledby":A?M:void 0,"aria-describedby":O?L:void 0};return u===Tre.hover&&(i.role="tooltip",i.onMouseEnter=de(e.onMouseEnter,(()=>{k.current=!0})),i.onMouseLeave=de(e.onMouseLeave,(e=>{null!==e.nativeEvent.relatedTarget&&(k.current=!1,setTimeout((()=>y()),h))}))),i}),[$,I,A,M,O,L,u,r,y,v,t,h,l,c]),V=(0,n.useCallback)(((e={},t=null)=>z({...e,style:{visibility:v?"visible":"hidden",...e.style}},t)),[v,z]),q=(0,n.useCallback)(((e,t=null)=>({...e,ref:xi(t,x,N)})),[x,N]),K=(0,n.useRef)(),W=(0,n.useRef)(),G=(0,n.useCallback)((e=>{null==x.current&&N(e)}),[N]),Z=(0,n.useCallback)(((e={},r=null)=>{const n={...e,ref:xi(_,r,G),id:R,"aria-haspopup":"dialog","aria-expanded":v,"aria-controls":I};return u===Tre.click&&(n.onClick=de(e.onClick,w)),u===Tre.hover&&(n.onFocus=de(e.onFocus,(()=>{void 0===K.current&&b()})),n.onBlur=de(e.onBlur,(e=>{const r=Rre(e),n=!jre(S.current,r);v&&t&&n&&y()})),n.onKeyDown=de(e.onKeyDown,(e=>{"Escape"===e.key&&y()})),n.onMouseEnter=de(e.onMouseEnter,(()=>{k.current=!0,K.current=window.setTimeout((()=>b()),d)})),n.onMouseLeave=de(e.onMouseLeave,(()=>{k.current=!1,K.current&&(clearTimeout(K.current),K.current=void 0),W.current=window.setTimeout((()=>{!1===k.current&&y()}),h)}))),n}),[R,v,I,u,G,w,b,t,y,d,h]);(0,n.useEffect)((()=>()=>{K.current&&clearTimeout(K.current),W.current&&clearTimeout(W.current)}),[]);const Y=(0,n.useCallback)(((e={},t=null)=>({...e,id:M,ref:xi(t,(e=>{P(!!e)}))})),[M]),X=(0,n.useCallback)(((e={},t=null)=>({...e,id:L,ref:xi(t,(e=>{T(!!e)}))})),[L]);return{forceUpdate:U,isOpen:v,onAnimationComplete:F.onComplete,onClose:y,getAnchorProps:q,getArrowProps:D,getArrowInnerProps:B,getPopoverPositionerProps:V,getPopoverProps:H,getTriggerProps:Z,getHeaderProps:Y,getBodyProps:X}}function jre(e,t){return e===t||(null==e?void 0:e.contains(t))}function Rre(e){var t;const r=e.currentTarget.ownerDocument.activeElement;return null!=(t=e.relatedTarget)?t:r}var[Ire,Mre]=di({name:"PopoverContext",errorMessage:"usePopoverContext: `context` is undefined. Seems you forgot to wrap all popover components within ``"}),[Lre,Nre]=di({name:"PopoverStylesContext",errorMessage:"usePopoverStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "});function Dre(e){const t=li("Popover",e),{children:r,...n}=Qt(e),i=Cre({...n,direction:ni().direction});return(0,Yn.jsx)(Ire,{value:i,children:(0,Yn.jsx)(Lre,{value:t,children:se(r,{isOpen:i.isOpen,onClose:i.onClose,forceUpdate:i.forceUpdate})})})}function zre(e){const t=n.Children.only(e.children),{getTriggerProps:r}=Mre();return(0,n.cloneElement)(t,r(t.props,t.ref))}function Bre(e){if(e)return{enter:{...e.enter,visibility:"visible"},exit:{...e.exit,transitionEnd:{visibility:"hidden"}}}}Dre.displayName="Popover",zre.displayName="PopoverTrigger";var Ure={exit:{opacity:0,scale:.95,transition:{duration:.1,ease:[.4,0,1,1]}},enter:{scale:1,opacity:1,transition:{duration:.15,ease:[0,0,.2,1]}}},Fre=Zn(CA.section),$re=ne((function(e,t){const{variants:r=Ure,...n}=e,{isOpen:i}=Mre();return(0,Yn.jsx)(Fre,{ref:t,variants:Bre(r),initial:!1,animate:i?"enter":"exit",...n})}));$re.displayName="PopoverTransition";var Hre=ne((function(e,t){const{rootProps:r,motionProps:n,...i}=e,{getPopoverProps:o,getPopoverPositionerProps:a,onAnimationComplete:s}=Mre(),c=Nre(),l={position:"relative",display:"flex",flexDirection:"column",...c.content};return(0,Yn.jsx)(Zn.div,{...a(r),__css:c.popper,className:"chakra-popover__popper",children:(0,Yn.jsx)($re,{...n,...o(i,t),onAnimationComplete:he(s,i.onAnimationComplete),className:ie("chakra-popover__content",e.className),__css:l})})}));Hre.displayName="PopoverContent";var Vre=ne((function(e,t){const{getBodyProps:r}=Mre(),n=Nre();return(0,Yn.jsx)(Zn.div,{...r(e,t),className:ie("chakra-popover__body",e.className),__css:n.body})}));Vre.displayName="PopoverBody";const qre=e=>{const{onOpen:t,onClose:r,isOpen:n}=DR();return(0,Yn.jsxs)(Dre,{isOpen:n,onClose:r,onOpen:t,placement:"bottom-start",children:[(0,Yn.jsx)(zre,{children:(0,Yn.jsx)(Si,{minWidth:"24px",height:"24px",padding:"0",background:n?EP.green:EP.gray[500],border:"none",borderRadius:"full",_hover:{bg:n?EP.green:EP.gray[450]},"data-testid":"popover-cta",variant:"unstyled",children:(0,Yn.jsx)(Jn,{children:(0,Yn.jsx)(LA,{as:dre,display:"inline",color:EP.white})})})}),(0,Yn.jsx)(Hre,{width:"100px",background:EP.gray[700],children:(0,Yn.jsx)(Vre,{borderRadius:"lg",children:e.children})})]})},Kre=({onRename:e,onRemove:t})=>(0,Yn.jsx)(Xn,{alignItems:"center",children:(0,Yn.jsx)(qre,{children:(0,Yn.jsxs)(ei,{paddingY:"0",children:[(0,Yn.jsx)(Si,{height:t?"24px":"28px",onClick:e,variant:"popover",children:(0,Yn.jsxs)(Xn,{alignItems:"center",children:[(0,Yn.jsx)(ZB,{marginRight:"4px",children:"Rename"}),(0,Yn.jsx)(sR,{stroke:"inherit"})]})}),t&&(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(wre,{marginY:"4px"}),(0,Yn.jsx)(Si,{"data-testid":"popover-remove",onClick:t,variant:"popover",children:(0,Yn.jsxs)(Xn,{alignItems:"center",children:[(0,Yn.jsx)(ZB,{marginRight:"4px",children:"Remove"}),(0,Yn.jsx)(bR,{stroke:"inherit"})]})})]})]})})}),Wre=({onClick:e,...t})=>(0,Yn.jsxs)(Si,{width:"60px",onClick:e,variant:"specialCTA",...t,children:[(0,Yn.jsx)(aR,{stroke:"currentcolor"}),(0,Yn.jsx)(ZB,{marginLeft:"4px",children:"Send"})]}),Gre=({sender:e,operationType:t,isLoading:r,reEstimate:n})=>{switch(t){case"proposal":return(0,Yn.jsx)(DU,{marginTop:"24px","data-testid":"signer-selector",children:(0,Yn.jsx)(l6,{account:e,inputName:"signer",isLoading:r,keepValid:!0,label:"Select Proposer",onUpdate:n})});case"implicit":return null}},Zre=(e,t,r)=>{switch(e.type){case"ledger":case"mnemonic":case"social":case"secret_key":if(e.address.pkh!==t.address.pkh)throw new Error("Sender and Signer must be the same");return{type:"implicit",operations:r,signer:e,sender:e};case"multisig":return{type:"proposal",operations:r,sender:e,signer:t}}},Yre=()=>{const e=OR(),t=C5();return r=>e(jd.clear({pkh:r.address.pkh,network:t}))},Xre=({isLoading:e,isValid:t,onSingleSubmit:r,onAddToBatch:n,showPreview:i=!0})=>(0,Yn.jsx)(Yn.Fragment,{children:(0,Yn.jsxs)(ei,{width:"100%",children:[i&&(0,Yn.jsx)(Si,{width:"100%",marginBottom:"16px",isDisabled:!t,isLoading:e,onClick:r,size:"lg",type:"submit",children:"Preview"}),(0,Yn.jsx)(Si,{width:"100%",isDisabled:!t,isLoading:e,onClick:n,size:"lg",type:"submit",variant:"tertiary",children:"Insert Into Batch"})]})}),Jre=({sender:e,form:t})=>t||(e?{sender:e.address.pkh}:{}),Qre=(e,t,r)=>{const[i,o]=(0,n.useState)(!1),a=(()=>{const e=Rq();return t=>e(t)})(),[s,c]=(0,n.useState)(e),[l,u]=(0,n.useState)(t),d=C5(),h=Yre(),{isLoading:f,handleAsyncAction:p,handleAsyncActionUnsafe:m}=hte(),{openWith:g}=(0,n.useContext)(fM),v=_$({mode:"onBlur",defaultValues:{signer:l.signer.address.pkh,sender:l.sender.address.pkh}}),y=v.watch("signer");return{fee:s,estimationFailed:i,operations:l,isLoading:f,form:v,signer:a(y),reEstimate:async e=>m((async()=>{const t={...l,signer:a(e)};c(await X3(l,d)),u(t),o(!1)}),{isClosable:!0,duration:null}).catch((()=>o(!0))),onSign:async e=>p((async()=>{const t=await A5(l,e);return"batch"===r&&h(l.sender),g((0,Yn.jsx)(bte,{hash:t.opHash})),t})),handleAsyncAction:p}},ene=e=>{const t=Dq(),r=Uq();return n=>{const i=t(n.sender);return Zre(i,r(i),[e(n)])}},tne=e=>{e<0&&(console.warn("Decimals cannot be negative"),e=0);return`${0===e?"":"0."+(0,Va.repeat)("0",e-1)}1`},rne=e=>t=>{if(t.includes(".")){if(t.split(".")[1].length>e)return`Please enter a value with up to ${e} decimal places`}return!0},nne=e=>{const{mode:t,operations:r,fee:n}=e,{fee:i,operations:o,estimationFailed:a,isLoading:s,form:c,signer:l,reEstimate:u,onSign:d}=Qre(n,r,t),{amount:h,recipient:f}=o.operations[0];return(0,Yn.jsx)(mF,{...c,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(Cte,{...e,operationsType:o.type,signer:o.signer}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(xte,{mutezAmount:h}),(0,Yn.jsx)(Xn,{alignItems:"center",justifyContent:"end",marginTop:"12px",children:(0,Yn.jsx)(_te,{fee:i})}),(0,Yn.jsx)(T$,{marginTop:"24px",children:"From "}),(0,Yn.jsx)(e6,{address:o.sender.address}),(0,Yn.jsx)(T$,{marginTop:"24px",children:"To "}),(0,Yn.jsx)(e6,{address:f}),(0,Yn.jsx)(Gre,{isLoading:s,operationType:o.type,reEstimate:u,sender:o.sender})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(gte,{isDisabled:a,isLoading:s,onSubmit:d,signer:l,text:Ote(o.type,t)})})]})})})},ine=(e,t)=>async r=>{await X3(e,t),r(jd.add({operations:e,network:t}))},one=({SignPage:e,signPageExtraData:t,FormPage:r,defaultFormPageProps:i,toOperation:o})=>{const{openWith:a}=(0,n.useContext)(fM),s=ene(o),c=C5();return async n=>{const o=s(n);a((0,Yn.jsx)(e,{data:t,fee:await X3(o,c),goBack:()=>{a((0,Yn.jsx)(r,{...i,form:n}))},mode:"single",operations:o}))}},ane=e=>{const{onClose:t}=(0,n.useContext)(fM),r=C5(),i=ene(e),o=OR(),a=YD();return async e=>{const n=i(e);await o(ine(n,r)),a({description:"Transaction added to batch!",status:"success"}),t()}},sne=e=>{const{handleAsyncAction:t,isLoading:r}=hte();return{onFormSubmitActionHandlers:e.map((e=>async r=>t((()=>e(r))))),isLoading:r}},cne=({showPreview:e=!0,...t})=>{const r=one({SignPage:nne,signPageExtraData:void 0,FormPage:cne,defaultFormPageProps:t,toOperation:lne}),n=ane(lne),{onFormSubmitActionHandlers:[i,o],isLoading:a}=sne([r,n]),s=_$({mode:"onBlur",defaultValues:Jre(t)}),{formState:{isValid:c,errors:l},register:u,handleSubmit:d}=s;return(0,Yn.jsx)(mF,{...s,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(kte,{}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsxs)(DU,{isInvalid:!!l.prettyAmount,children:[(0,Yn.jsx)(T$,{children:"Amount"}),(0,Yn.jsxs)(M$,{children:[(0,Yn.jsx)(D$,{isDisabled:a,step:tne(6),type:"number",...u("prettyAmount",{required:"Amount is required",validate:rne(6)}),placeholder:"0.000000"}),(0,Yn.jsx)(F$,{children:"\ua729"})]}),l.prettyAmount&&(0,Yn.jsx)(pte,{"data-testid":"amount-error",children:l.prettyAmount.message})]}),(0,Yn.jsxs)(DU,{marginTop:"24px",isInvalid:!!l.sender,children:[(0,Yn.jsx)(s6,{allowUnknown:!1,inputName:"sender",isDisabled:!!t.sender,label:"From"}),l.sender&&(0,Yn.jsx)(pte,{"data-testid":"from-error",children:l.sender.message})]}),(0,Yn.jsxs)(DU,{marginTop:"24px",isInvalid:!!l.recipient,children:[(0,Yn.jsx)(o6,{allowUnknown:!0,inputName:"recipient",label:"To"}),l.recipient&&(0,Yn.jsx)(pte,{"data-testid":"recipient-error",children:l.recipient.message})]})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(Xre,{isLoading:a,isValid:c,onAddToBatch:d(o),onSingleSubmit:d(i),showPreview:e})})]})})})},lne=e=>({type:"tez",amount:L5(e.prettyAmount).toFixed(),recipient:qu(e.recipient)}),une=({contacts:e})=>{const{openWith:t}=(0,n.useContext)(fM);return(0,Yn.jsx)(ei,{overflow:"auto",background:EP.gray[900],borderRadius:"8px",paddingX:"30px",children:(0,Yn.jsx)(nre,{overflowX:"unset",overflowY:"unset",children:(0,Yn.jsx)(are,{children:(0,Yn.jsx)(sre,{children:e.map(((r,n)=>{const i=n===e.length-1?"transparent":EP.gray[700];return(0,Yn.jsxs)(cre,{"data-testid":"contact-row",children:[(0,Yn.jsx)(lre,{borderColor:i,"data-testid":"contact-row-name",paddingX:"0",children:(0,Yn.jsxs)(Xn,{alignItems:"center",children:[(0,Yn.jsx)(ei,{width:"150px",marginRight:"40px",children:(0,Yn.jsx)(ZB,{overflow:"hidden",fontWeight:600,whiteSpace:"nowrap",textOverflow:"ellipsis",children:r.name})}),(0,Yn.jsx)(mre,{justifyContent:"space-between","data-testid":"contact-row-pkh",formatAddress:!1,iconColor:EP.gray[400],pkh:r.pkh})]})}),(0,Yn.jsx)(lre,{borderColor:i,paddingX:"0",children:(0,Yn.jsxs)(Xn,{justifyContent:"end",children:[(0,Yn.jsx)(Wre,{marginRight:"20px",onClick:()=>t((0,Yn.jsx)(cne,{form:{sender:"",recipient:r.pkh,prettyAmount:""}}))}),(0,Yn.jsx)(Kre,{onRemove:()=>{t((0,Yn.jsx)(bre,{contact:r}))},onRename:()=>{t((0,Yn.jsx)(yre,{buttonText:"Update",contact:r,title:"Edit contact"}))}})]})})]},r.pkh)}))})})})})};function dne(e,t={}){const{ssr:r=!0,fallback:i}=t,{getWindow:o}=function({defer:e}={}){const[,t]=(0,n.useReducer)((e=>e+1),0);return yh((()=>{e&&t()}),[e]),(0,n.useContext)(_h)}(),a=Array.isArray(e)?e:[e];let s=Array.isArray(i)?i:[i];s=s.filter((e=>null!=e));const[c,l]=(0,n.useState)((()=>a.map(((e,t)=>({media:e,matches:r?!!s[t]:o().matchMedia(e).matches})))));return(0,n.useEffect)((()=>{const e=o();l(a.map((t=>({media:t,matches:e.matchMedia(t).matches}))));const t=a.map((t=>e.matchMedia(t))),r=e=>{l((t=>t.slice().map((t=>t.media===e.media?{...t,matches:e.matches}:t))))};return t.forEach((e=>{"function"===typeof e.addListener?e.addListener(r):e.addEventListener("change",r)})),()=>{t.forEach((e=>{"function"===typeof e.removeListener?e.removeListener(r):e.removeEventListener("change",r)}))}}),[o]),c.map((e=>e.matches))}function hne(e){return e?Math[e]:Math.trunc}Math.pow(10,8);const fne=6048e5,pne=864e5,mne=43200;function gne(e){const t=Object.prototype.toString.call(e);return e instanceof Date||"object"===typeof e&&"[object Date]"===t?new e.constructor(+e):"number"===typeof e||"[object Number]"===t||"string"===typeof e||"[object String]"===t?new Date(e):new Date(NaN)}function vne(e,t){return gne(e).getTime()-gne(t).getTime()}function yne(e,t,r){const n=vne(e,t)/6e4;return hne(r?.roundingMethod)(n)}function bne(e,t){const r=gne(e),n=gne(t),i=r.getTime()-n.getTime();return i<0?-1:i>0?1:i}function wne(e,t){const r=gne(e),n=gne(t);return 12*(r.getFullYear()-n.getFullYear())+(r.getMonth()-n.getMonth())}function xne(e){const t=gne(e);return t.setHours(23,59,59,999),t}function _ne(e){const t=gne(e),r=t.getMonth();return t.setFullYear(t.getFullYear(),r+1,0),t.setHours(23,59,59,999),t}function Sne(e){const t=gne(e);return+xne(t)===+_ne(t)}function kne(e,t){const r=gne(e),n=gne(t),i=bne(r,n),o=Math.abs(wne(r,n));let a;if(o<1)a=0;else{1===r.getMonth()&&r.getDate()>27&&r.setDate(30),r.setMonth(r.getMonth()-i*o);let t=bne(r,n)===-i;Sne(gne(e))&&1===o&&1===bne(e,n)&&(t=!1),a=i*(o-Number(t))}return 0===a?0:a}function Ene(e,t,r){const n=vne(e,t)/1e3;return hne(r?.roundingMethod)(n)}const Ane={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function Pne(e){return(t={})=>{const r=t.width?String(t.width):e.defaultWidth;return e.formats[r]||e.formats[e.defaultWidth]}}const One={date:Pne({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:Pne({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:Pne({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},Tne={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function Cne(e){return(t,r)=>{let n;if("formatting"===(r?.context?String(r.context):"standalone")&&e.formattingValues){const t=e.defaultFormattingWidth||e.defaultWidth,i=r?.width?String(r.width):t;n=e.formattingValues[i]||e.formattingValues[t]}else{const t=e.defaultWidth,i=r?.width?String(r.width):e.defaultWidth;n=e.values[i]||e.values[t]}return n[e.argumentCallback?e.argumentCallback(t):t]}}const jne={ordinalNumber:(e,t)=>{const r=Number(e),n=r%100;if(n>20||n<10)switch(n%10){case 1:return r+"st";case 2:return r+"nd";case 3:return r+"rd"}return r+"th"},era:Cne({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:Cne({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:Cne({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:Cne({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:Cne({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})};function Rne(e){return(t,r={})=>{const n=r.width,i=n&&e.matchPatterns[n]||e.matchPatterns[e.defaultMatchWidth],o=t.match(i);if(!o)return null;const a=o[0],s=n&&e.parsePatterns[n]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(s)?function(e,t){for(let r=0;re.test(a))):function(e,t){for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t(e[r]))return r;return}(s,(e=>e.test(a)));let l;l=e.valueCallback?e.valueCallback(c):c,l=r.valueCallback?r.valueCallback(l):l;return{value:l,rest:t.slice(a.length)}}}const Ine={ordinalNumber:(Mne={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,t={})=>{const r=e.match(Mne.matchPattern);if(!r)return null;const n=r[0],i=e.match(Mne.parsePattern);if(!i)return null;let o=Mne.valueCallback?Mne.valueCallback(i[0]):i[0];return o=t.valueCallback?t.valueCallback(o):o,{value:o,rest:e.slice(n.length)}}),era:Rne({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:Rne({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:Rne({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:Rne({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:Rne({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};var Mne;const Lne={code:"en-US",formatDistance:(e,t,r)=>{let n;const i=Ane[e];return n="string"===typeof i?i:1===t?i.one:i.other.replace("{{count}}",t.toString()),r?.addSuffix?r.comparison&&r.comparison>0?"in "+n:n+" ago":n},formatLong:One,formatRelative:(e,t,r,n)=>Tne[e],localize:jne,match:Ine,options:{weekStartsOn:0,firstWeekContainsDate:1}};let Nne={};function Dne(){return Nne}function zne(e){const t=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return t.setUTCFullYear(e.getFullYear()),e.getTime()-t.getTime()}function Bne(e,t,r){const n=Dne(),i=r?.locale??n.locale??Lne,o=bne(e,t);if(isNaN(o))throw new RangeError("Invalid time value");const a=Object.assign({},r,{addSuffix:r?.addSuffix,comparison:o});let s,c;o>0?(s=gne(t),c=gne(e)):(s=gne(e),c=gne(t));const l=Ene(c,s),u=(zne(c)-zne(s))/1e3,d=Math.round((l-u)/60);let h;if(d<2)return r?.includeSeconds?l<5?i.formatDistance("lessThanXSeconds",5,a):l<10?i.formatDistance("lessThanXSeconds",10,a):l<20?i.formatDistance("lessThanXSeconds",20,a):l<40?i.formatDistance("halfAMinute",0,a):l<60?i.formatDistance("lessThanXMinutes",1,a):i.formatDistance("xMinutes",1,a):0===d?i.formatDistance("lessThanXMinutes",1,a):i.formatDistance("xMinutes",d,a);if(d<45)return i.formatDistance("xMinutes",d,a);if(d<90)return i.formatDistance("aboutXHours",1,a);if(d<1440){const e=Math.round(d/60);return i.formatDistance("aboutXHours",e,a)}if(d<2520)return i.formatDistance("xDays",1,a);if(d{const t=C5(),r="mainnet"===t.name,n=r?"Buy Tez":"Request Tez from faucet",i=_$({mode:"onBlur",defaultValues:{address:e}}),{formState:{isValid:o,errors:a}}=i;let s=t.buyTezUrl;return t.buyTezUrl&&r&&(s+="/default/widget/"),(0,Yn.jsx)(mF,{...i,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{action:s,rel:"noreferrer noopener",target:"_blank",children:[(0,Yn.jsx)(YB,{}),(0,Yn.jsx)(WB,{textAlign:"center",children:"Buy Tez"}),r&&(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)("input",{name:"commodity",type:"hidden",value:"XTZ:Tezos"}),(0,Yn.jsx)(ZB,{color:EP.gray[400],textAlign:"center",size:"sm",children:"Please select the recipient account."}),(0,Yn.jsx)(XB,{children:(0,Yn.jsxs)(DU,{"data-testid":"buy-tez-selector",isInvalid:!!a.address,paddingY:5,children:[(0,Yn.jsx)(a6,{allowUnknown:!1,inputName:"address",isDisabled:!!e,label:"Recipient Account"}),a.address&&(0,Yn.jsx)(pte,{children:a.address.message})]})})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(ei,{width:"100%","data-testid":"buy-tez-button",children:(0,Yn.jsx)(Si,{width:"100%",marginBottom:2,isDisabled:!o,size:"lg",type:"submit",children:n})})})]})})})},Fne=e=>(0,Yn.jsx)(LA,{width:"15px",height:"11px",fill:"none",stroke:"white",viewBox:"0 0 15 11",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,Yn.jsx)("path",{d:"M1.16602 5.98371L5.06345 9.85408L13.8327 1.14575",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),$ne=()=>{const e=OR(),t=TR((e=>e.assets.isLoading)),r=TR((e=>e.assets.lastTimeUpdated)),[i,o]=(0,n.useState)(!1),[a,s]=(0,n.useState)(!1),[c]=dne("(max-width: 1200px)");if((0,n.useEffect)((()=>{if(r){o(!0),s(!0);const e=setTimeout((()=>{o(!1)}),2e3),t=setTimeout((()=>{s(!1)}),3500);return()=>{clearTimeout(e),clearTimeout(t)}}}),[r]),c||null===r)return null;const l=yne(new Date,new Date(r))>=2,u={opacity:i?1:0,transition:"opacity 2s ease-in-out"};return(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsxs)(ZB,{display:"inline",color:EP.gray[400],size:"sm",style:a?u:void 0,children:[a&&"Updated just now",l&&`Updated ${Bne(new Date(r),new Date)} ago`]}),(0,Yn.jsx)(d6,{marginRight:"36px",marginLeft:"8px",_active:{color:"white",bg:EP.green},"aria-label":"refetch",backgroundColor:a?EP.green:EP.gray[500],"data-testid":"refetch-button",icon:a?(0,Yn.jsx)(Fne,{style:u}):(0,Yn.jsx)(Dj,{color:"white"}),isLoading:t,onClick:()=>{e(Ed.refetch())},variant:"circle_without_hover_color"})]})},Hne=({title:e,subtitle:t})=>{const{openWith:r}=(0,n.useContext)(fM);return(0,Yn.jsxs)(ei,{children:[(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",height:"88px",children:[(0,Yn.jsxs)(Xn,{alignItems:"end",children:[(0,Yn.jsx)(ui,{marginRight:"6px",size:"xl",children:e}),(0,Yn.jsx)(ZB,{color:EP.gray[450],"data-testid":"nft-total-amount",size:"xs",children:t})]}),(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)($ne,{}),(0,Yn.jsx)(Si,{onClick:()=>r((0,Yn.jsx)(Une,{})),variant:"tertiary",children:"Buy Tez"}),(0,Yn.jsx)(Si,{marginLeft:4,onClick:()=>r((0,Yn.jsx)(cne,{})),children:"Send"})]})]}),(0,Yn.jsx)(wre,{})]})},Vne=()=>{const{openWith:e}=(0,n.useContext)(fM);return(0,Yn.jsxs)(Si,{alignItems:"center",justifyContent:"end",marginTop:"16px",marginBottom:"16px",cursor:"pointer",onClick:()=>e((0,Yn.jsx)(yre,{buttonText:"Add to Contact",title:"Add contact"})),variant:"CTAWithIcon",children:[(0,Yn.jsx)(fj,{stroke:"currentcolor"}),(0,Yn.jsx)(ZB,{marginLeft:"4px",size:"sm",children:"Add contact"})]})},qne=()=>{const e=(()=>{const e=Pq();return Object.values(e).sort(((e,t)=>e.name.localeCompare(t.name)))})();return(0,Yn.jsxs)(Xn,{flexDirection:"column",height:"100%",children:[(0,Yn.jsx)(Hne,{title:"Address Book"}),(0,Yn.jsx)(Xn,{flexDirection:"row-reverse",children:(0,Yn.jsx)(Vne,{})}),(0,Yn.jsx)(une,{contacts:e})]})};var Kne=r(9095),Wne=r.n(Kne);const Gne=({account:{address:e},...t})=>{const r=Iq().find((t=>t.address.pkh===e.pkh)),n=K5()(e.pkh),i=G5(e);return r?(0,Yn.jsxs)(Xn,{alignItems:"space-between",cursor:"pointer","data-testid":"account-small-tile",...t,children:[(0,Yn.jsx)(YV,{addressKind:i}),(0,Yn.jsxs)(Xn,{alignSelf:"center",height:"20px",marginLeft:"12px",children:[(0,Yn.jsx)(ui,{marginRight:"10px","data-testid":"account-small-tile-label",size:"sm",children:r.label}),(0,Yn.jsx)(ZB,{marginRight:"35px",color:EP.gray[300],"data-testid":"account-small-tile-pkh",size:"xs",children:z5(e.pkh)}),n&&(0,Yn.jsx)(ui,{"data-testid":"account-small-tile-balance",size:"sm",children:D5(n)})]})]}):null};function Zne(e,t){var r;const n=e.target;if(n){if(!IR(n).contains(n))return!1}return!(null==(r=t.current)?void 0:r.contains(n))}var Yne=(e,t)=>t?`${e}.${t}, ${t}`:void 0;function Xne(e){var t;const{bg:r,bgColor:n,backgroundColor:i,shadow:o,boxShadow:a,shadowColor:s}=e,{getArrowProps:c,getArrowInnerProps:l}=Mre(),u=Nre(),d=null!=(t=null!=r?r:n)?t:i,h=null!=o?o:a;return(0,Yn.jsx)(Zn.div,{...c(),className:"chakra-popover__arrow-positioner",children:(0,Yn.jsx)(Zn.div,{className:ie("chakra-popover__arrow",e.className),...l(e),__css:{"--popper-arrow-shadow-color":Yne("colors",s),"--popper-arrow-bg":Yne("colors",d),"--popper-arrow-shadow":Yne("shadows",h),...u.arrow}})})}Xne.displayName="PopoverArrow";const Jne=({addressKind:{type:e},...t})=>{switch(e){case"multisig":return(0,Yn.jsx)(qj,{"data-testid":`${e}-icon`,...t});case"fa1.2":return(0,Yn.jsx)(Mj,{"data-testid":`${e}-icon`,...t,fill:t.stroke,stroke:"none"});case"fa2":return(0,Yn.jsx)(Lj,{"data-testid":`${e}-icon`,...t,fill:t.stroke,stroke:"none"});case"baker":return(0,Yn.jsx)(mj,{"data-testid":`${e}-icon`,...t});case"contact":return(0,Yn.jsx)(xj,{"data-testid":`${e}-icon`,...t});case"unknown":case"implicit":return null}},Qne=({addressKind:{type:e,pkh:t},addressPillMode:r,...i})=>{const{addressExistsInContacts:o}=Oq(),{openWith:a}=(0,n.useContext)(fM);if("removable"===r.type)return(0,Yn.jsx)(PR,{cursor:"pointer",onClick:r.onRemove,...i});return["implicit","multisig","baker"].includes(e)||o(t)?null:(0,Yn.jsx)(Yn.Fragment,{children:(0,Yn.jsx)(fj,{"data-testid":"add-contact-icon",onClick:()=>{a((0,Yn.jsx)(yre,{buttonText:"Add to Contact",contact:{name:"",pkh:t},title:"Add contact"}))},...i})})},eie=({addressKind:{pkh:e,label:t},showPkh:r,alias:n,...i})=>{const o=Tq(),a=z5(e),s=o(e)||t||n;return r?(0,Yn.jsx)(ZB,{...i,children:a}):(0,Yn.jsx)(ZB,{...i,children:s?M5(s,21):a})},tie=e=>{const t=Z5(e);if(!t)return null;const{pkh:r,label:n}=t;return{type:"multisig"===t.type?"multisig":"implicit",pkh:r,label:n}},rie=({pkh:e})=>{const t=(e=>{const t=TR((t=>t.tokens[e.name]));return e=>{if(!t||!(e in t))return;const r=t[e],n=Object.keys(r)[0];return n?r[n].type:void 0}})(C5()),r=t(e);if(!r)return null;switch(r){case"fa1.2":return{pkh:e,type:"fa1.2",label:null};case"fa2":case"nft":return{pkh:e,type:"fa2",label:null}}},nie=({address:e,mode:t={type:"default"},...r})=>{const i=!("pkh"in e&&"type"in e),o=i?qu(e.address):e,a=(e=>{const t=tie(e),r=rie(e),n=Y5(e),i=X5(e);return t||r||n||i||{pkh:e.pkh,type:"unknown",label:null}})(o),s="no_icons"!==t.type,{onOpen:c,onClose:l,isOpen:u}=DR(),[d,h]=(0,n.useState)(!1),f=(0,n.useRef)(null);let p,m,g;return function(e){const{ref:t,handler:r,enabled:i=!0}=e,o=NR(r),a=(0,n.useRef)({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}).current;(0,n.useEffect)((()=>{if(!i)return;const e=e=>{Zne(e,t)&&(a.isPointerDown=!0)},n=e=>{a.ignoreEmulatedMouseEvents?a.ignoreEmulatedMouseEvents=!1:a.isPointerDown&&r&&Zne(e,t)&&(a.isPointerDown=!1,o(e))},s=e=>{a.ignoreEmulatedMouseEvents=!0,r&&a.isPointerDown&&Zne(e,t)&&(a.isPointerDown=!1,o(e))},c=IR(t.current);return c.addEventListener("mousedown",e,!0),c.addEventListener("mouseup",n,!0),c.addEventListener("touchstart",e,!0),c.addEventListener("touchend",s,!0),()=>{c.removeEventListener("mousedown",e,!0),c.removeEventListener("mouseup",n,!0),c.removeEventListener("touchstart",e,!0),c.removeEventListener("touchend",s,!0)}}),[r,t,o,a,i])}({ref:f,handler:()=>{h(!1)}}),u?(p=EP.green,m=EP.gray[300],g="white"):d?(p=EP.gray[450],m=EP.gray[400],g=EP.gray[200]):(p=EP.gray[500],m=EP.gray[450],g=EP.gray[300]),(0,Yn.jsx)(ei,{maxWidth:"max-content","data-testid":"address-pill",...r,children:(0,Yn.jsxs)(Xn,{ref:f,alignItems:"center",background:p,borderRadius:"full",onMouseEnter:()=>{h(!0)},onMouseLeave:()=>{h(!1)},paddingX:"4px",children:[s&&(0,Yn.jsx)(Jne,{marginLeft:"4px",stroke:m,addressKind:a,"data-testid":"address-pill-left-icon"}),(0,Yn.jsxs)(Dre,{autoFocus:!1,isOpen:u,onOpen:async()=>{await navigator.clipboard.writeText(o.pkh),c(),setTimeout(l,1e3)},children:[(0,Yn.jsx)(zre,{children:(0,Yn.jsx)(Si,{height:"24px",_focus:{boxShadow:"none"},onClick:e=>e.stopPropagation(),variant:"unstyled",children:(0,Yn.jsx)(eie,{color:g,cursor:"pointer",addressKind:a,alias:i&&e.alias?e.alias:void 0,"data-testid":"address-pill-text",marginX:"4px",showPkh:!s,size:"sm"})})}),(0,Yn.jsxs)(Hre,{maxWidth:"max-content",background:"white",children:[(0,Yn.jsx)(Xne,{background:"white !important"}),(0,Yn.jsx)(Vre,{children:(0,Yn.jsx)(ZB,{color:"black",size:"sm",children:"Copied!"})})]})]}),s&&(0,Yn.jsx)(Qne,{marginRight:"4px",stroke:EP.gray[300],cursor:"pointer",addressKind:a,addressPillMode:t,"data-testid":"address-pill-right-icon"})]})})},iie=({operation:e})=>{let t;switch(e.type){case"undelegation":case"contract_origination":t=void 0;break;case"tez":case"fa1.2":case"fa2":case"delegation":t=e.recipient;break;case"contract_call":t=e.contract}return t?(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(ZB,{marginRight:"6px",color:EP.gray[450],children:"To:"}),(0,Yn.jsx)(nie,{address:t,"data-testid":"recipient"})]}):(0,Yn.jsx)(ZB,{color:EP.gray[500],"data-testid":"recipient",children:"N/A"})},oie=e=>null===e||void 0===e?void 0:e.replace("ipfs://","https://ipfs.io/ipfs/"),aie=e=>(0,Va.orderBy)(e,["lastLevel","id","owner"],["desc"]),sie=({operation:e})=>{const t=I5(),r=C5();switch(e.type){case"tez":return(0,Yn.jsxs)(Xn,{children:[(0,Yn.jsx)(aR,{marginRight:"8px"}),(0,Yn.jsx)(ui,{size:"sm",children:D5(e.amount)})]});case"fa1.2":case"fa2":{const n=t(e.contract.pkh,e.tokenId);return"nft"===(null===n||void 0===n?void 0:n.type)?(0,Yn.jsxs)(Xn,{children:[(0,Yn.jsx)(aR,{marginRight:"8px"}),Number(e.amount)>1&&(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsxs)(ui,{color:EP.gray[450],size:"sm",children:["x",e.amount]}),"\xa0"]}),(0,Yn.jsx)(ui,{size:"sm",children:(0,Yn.jsx)($V,{padding:"8px",background:EP.gray[700],border:"1px solid",borderColor:EP.gray[500],borderRadius:"8px",label:(0,Yn.jsx)(QB,{width:"170px",height:"170px",ratio:1,children:(0,Yn.jsx)(vR,{src:oie(dd(n))})}),children:(0,Yn.jsx)(Ei,{"data-testid":"link",href:pd(n,r),children:rd(n)})})})]}):(0,Yn.jsxs)(Xn,{children:[(0,Yn.jsx)(aR,{marginRight:"8px"}),(0,Yn.jsx)(ui,{size:"sm",children:(0,Yn.jsx)(Ei,{"data-testid":"link",href:n?pd(n,r):void 0,children:wie(n,e.amount)})})]})}case"delegation":return(0,Yn.jsxs)(Xn,{children:[(0,Yn.jsx)(mj,{marginRight:"8px"}),(0,Yn.jsx)(ui,{size:"sm",children:"Delegate"})]});case"undelegation":return(0,Yn.jsxs)(Xn,{children:[(0,Yn.jsx)(mj,{marginRight:"8px"}),(0,Yn.jsx)(ui,{size:"sm",children:"End Delegation"})]});case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}},cie=({addressKind:e})=>{switch(e.type){case"secret_key":case"mnemonic":return(0,Yn.jsx)(GV,{width:"48px",height:"48px",padding:"8px",address:e.pkh,identiconSize:32});case"social":case"contact":case"ledger":case"multisig":case"unknown":case"baker":{const t="social"===e.type?"white":EP.gray[500];return(0,Yn.jsx)(Xn,{alignItems:"center",justifyContent:"center",padding:"4px",background:t,borderRadius:"4px",children:(0,Yn.jsx)(YV,{addressKind:e,size:"md"})})}}},lie=(0,n.createContext)({selectedAccount:null,selectAccount:()=>{}}),uie=({icon:e,leftElement:t,rightElement:r,...n})=>(0,Yn.jsxs)(Xn,{alignItems:"center",height:90,marginBottom:4,padding:4,border:`1px solid ${EP.gray[800]}`,borderRadius:4,...n,children:[e,(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",flex:1,children:[t,r]})]}),die=({label:e,pkh:t})=>(0,Yn.jsxs)(ei,{margin:4,"data-testid":"account-identifier",children:[e&&(0,Yn.jsx)(ui,{size:"md",children:e}),(0,Yn.jsx)(Xn,{alignItems:"center",children:(0,Yn.jsx)(ZB,{color:"text.dark","data-testid":"short-address",size:"sm",children:z5(t)})})]}),hie=({account:e,radius:t,left:r="0px",top:n="0px",mainBackgroundColor:i=EP.gray[900],opacity:o="60"})=>{let a;switch(e.type){case"mnemonic":case"secret_key":s=e.address.pkh,a=`#${VV()(s).slice(0,6)}`;break;case"ledger":case"multisig":a=EP.gray[450];break;case"social":a="#EA4335"}var s;return a+=o,`radial-gradient(circle farthest-side at ${r} ${n}, ${a} 0%, ${a} ${parseInt(t)/4}px, transparent ${t}), ${i}`},fie=({account:e,balance:t})=>{const{selectedAccount:r,selectAccount:i}=(0,n.useContext)(lie),o=(null===r||void 0===r?void 0:r.address.pkh)===e.address.pkh,a=G5(e.address),{address:{pkh:s}}=e,c=!!TR((e=>e.assets.delegationLevels))[s],l=H5(),u=aie(l(s));return(0,Yn.jsxs)(ei,{zIndex:2,background:hie({left:"-10px",top:"-10px",account:e,radius:u.length>0?"120px":"100px"}),borderWidth:"1px",borderStyle:"solid",borderColor:o?EP.orangeL:EP.gray[900],borderRadius:"8px",_hover:{borderColor:o?EP.orangeL:EP.gray[700]},cursor:"pointer","data-testid":"account-tile-container",onClick:()=>i(e),paddingX:"21px",children:[(0,Yn.jsx)(uie,{align:"bottom",marginBottom:0,padding:0,border:"none","data-testid":`account-tile-${s}`+(o?"-selected":""),icon:(0,Yn.jsx)(cie,{addressKind:a}),leftElement:(0,Yn.jsx)(die,{label:a.label,pkh:s}),rightElement:(0,Yn.jsxs)(Xn,{flexDirection:"column",children:[(0,Yn.jsx)(ZB,{align:"right",color:EP.gray[450],fontWeight:700,size:"sm",children:c?"Delegated":(0,Yn.jsx)(Yn.Fragment,{children:"\xa0"})}),t&&(0,Yn.jsx)(ui,{alignSelf:"flex-end",size:"lg",children:D5(t)})]})}),u.length>0&&(0,Yn.jsxs)(Xn,{flexDirection:"column","data-testid":"nfts-list",children:[(0,Yn.jsx)(wre,{}),(0,Yn.jsx)(Xn,{marginY:"21px",children:u.slice(0,7).map(((e,t)=>{const r=oie(dd(e));return 6===t?(0,Yn.jsx)(vT,{"data-testid":"show-more-nfts-link",to:`/nfts?accounts=${s}`,children:(0,Yn.jsx)(ei,{height:"32px",marginLeft:"4px",background:EP.gray[600],borderRadius:"4px",children:(0,Yn.jsx)(ZB,{align:"center",width:"32px",color:EP.gray[450],fontWeight:700,children:"..."})})},"last"):(0,Yn.jsx)(vT,{"data-testid":"nft-link",to:`/home/${s}/${td(e)}`,children:(0,Yn.jsx)(QB,{width:"32px",height:"32px",marginLeft:t>0?"4px":0,ratio:1,children:(0,Yn.jsx)(vR,{borderRadius:"4px",src:r})})},td(e))}))})]})]})},pie=({title:e,description:t,buttonLabel:r,onSubmit:i})=>{const{onClose:o}=(0,n.useContext)(fM);return(0,Yn.jsxs)(KB,{children:[(0,Yn.jsxs)(WB,{marginBottom:"10px",textAlign:"center",children:[(0,Yn.jsx)(ei,{children:(0,Yn.jsx)(AR,{width:"40px",height:"40px",marginBottom:"16px"})}),(0,Yn.jsx)(ui,{children:e}),(0,Yn.jsx)(YB,{})]}),t&&(0,Yn.jsx)(XB,{children:(0,Yn.jsx)(ZB,{align:"center",color:EP.gray[400],"data-testid":"description",children:t})}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(Si,{width:"100%",onClick:()=>{i(),o()},size:"lg",variant:"warning",children:r})})]})},mie=({title:e,fee:t,transactionCount:r,signer:n})=>(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(kte,{subTitle:Tte(n),title:e}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(T$,{children:"From"}),(0,Yn.jsx)(e6,{address:n.address}),(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",marginY:"12px",paddingX:"4px",children:[(0,Yn.jsxs)(Xn,{children:[(0,Yn.jsx)(ZB,{marginRight:1,color:EP.gray[450],size:"sm",children:"Transactions:"}),(0,Yn.jsx)(ZB,{color:EP.gray[400],"data-testid":"transaction-length",size:"sm",children:r})]}),(0,Yn.jsx)(_te,{fee:t})]})]})]}),gie=({initialOperations:e,initialFee:t})=>{const{fee:r,operations:n,estimationFailed:i,isLoading:o,signer:a,form:s,reEstimate:c,onSign:l}=Qre(t,e,"batch"),u=Ote(n.type,"batch");return(0,Yn.jsx)(mF,{...s,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(mie,{fee:r,signer:a,title:u,transactionCount:n.operations.length}),(0,Yn.jsx)(Gre,{isLoading:o,operationType:n.type,reEstimate:c,sender:n.sender}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(gte,{isDisabled:i,isLoading:o,onSubmit:l,signer:a,text:u})})]})})})},vie=({operations:e})=>{const{type:t,sender:r,operations:i}=e,{openWith:o}=(0,n.useContext)(fM),{handleAsyncAction:a,isLoading:s}=hte(),c=C5();return(0,Yn.jsxs)(ei,{alignItems:"center",justifyContent:"space-between","data-testid":"right-header",children:[(0,Yn.jsx)(ZB,{display:"inline-block",color:EP.gray[400],size:"sm",children:Wne()("transaction",i.length,!0)}),(0,Yn.jsx)(Si,{marginLeft:"30px",isLoading:s,onClick:()=>a((async()=>{const t=await X3(e,c);o((0,Yn.jsx)(gie,{initialFee:t,initialOperations:e}))})),variant:"primary",children:Ote(t,"batch")}),(0,Yn.jsx)(d6,{marginLeft:"16px",borderRadius:"4px","aria-label":"remove-batch","data-testid":"remove-batch",icon:(0,Yn.jsx)(bR,{stroke:EP.gray[300]}),onClick:()=>o((0,Yn.jsx)(bie,{sender:r}),"sm"),variant:"circle"})]})},yie=e=>{switch(e.type){case"fa1.2":case"fa2":return"Token Transfer";case"undelegation":case"delegation":return"Delegation";case"tez":return"\ua729 Transfer";case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}},bie=({sender:e})=>{const t=Yre();return(0,Yn.jsx)(pie,{buttonLabel:"Delete Batch",description:"Are you sure you want to remove all transactions from the batch?",onSubmit:()=>t(e),title:"Delete Batch"})},wie=(e,t)=>{if(!e)return`${t} Unknown Token`;const r=nd(e),n=ld(t,e,{showSymbol:!1}),i=r?void 0:od(e);return(0,Va.compact)([n,i,r]).join(" ")},xie=({operations:e})=>{const{operations:t,sender:r}=e,n=(()=>{const e=OR(),t=C5();return(r,n)=>e(jd.removeItem({pkh:r.address.pkh,index:n,network:t}))})(),i=t.length>9;return(0,Yn.jsxs)(ei,{width:"100%",marginBottom:"16px","data-testid":`batch-table-${r.address.pkh}`,children:[(0,Yn.jsxs)(Xn,{justifyContent:"space-between",padding:"20px 23px 20px 30px",background:hie({top:"-10px",left:"-10px",account:r,radius:"100px",opacity:"40",mainBackgroundColor:EP.gray[800]}),borderTopRadius:"8px","data-testid":"header",children:[(0,Yn.jsx)(Xn,{alignItems:"center",children:(0,Yn.jsx)(Gne,{paddingLeft:0,account:r})}),(0,Yn.jsx)(vie,{operations:e})]}),(0,Yn.jsx)(Xn,{flexDirection:"column",background:EP.gray[900],borderBottomRadius:i?0:"8px",paddingX:"30px",paddingY:"20px",children:t.map(((e,i)=>(0,Yn.jsxs)(ei,{"data-testid":"operation",children:[(0,Yn.jsxs)(Xn,{flexDirection:"column",height:"50px",children:[(0,Yn.jsx)(Xn,{children:(0,Yn.jsx)(sie,{operation:e})}),(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",width:"100%",marginTop:"8px",children:[(0,Yn.jsx)(Xn,{children:(0,Yn.jsx)(iie,{operation:e})}),(0,Yn.jsxs)(Xn,{children:[(0,Yn.jsx)(ZB,{alignSelf:"flex-end",color:EP.gray[450],size:"sm",children:yie(e)}),(0,Yn.jsx)(d6,{width:"24px",marginLeft:"12px",borderRadius:"full","aria-label":"Remove",icon:(0,Yn.jsx)(bR,{stroke:EP.gray[300]}),onClick:()=>n(r,i),size:"xs",variant:"circle"})]})]})]}),icrypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+((t&=63)<36?t.toString(36):t<62?(t-26).toString(36).toUpperCase():t>62?"-":"_")),""))())))}),i&&(0,Yn.jsx)(Xn,{justifyContent:"end",verticalAlign:"middle",padding:"20px 23px 20px 30px",background:EP.gray[800],borderRadius:"0 0 8px 8px","data-testid":"footer",children:(0,Yn.jsx)(vie,{operations:e})})]})};var _ie=r(5199),Sie=r.n(_ie);function kie(e){const t=new Bs(e);return t.isLessThan(0)?null:t.toFixed()}const Eie=(e,t,r)=>{const n=t.filter((e=>e.length>0)),i=n.length;if(i<2||4{const e=C5(),t=YD(),r=I5(),i=OR(),o=Dq(),a=Uq(),{onClose:s}=(0,n.useContext)(fM),{isLoading:c,handleAsyncAction:l}=hte(),u=_$({mode:"onBlur"}),{handleSubmit:d,formState:{isValid:h,errors:f}}=u;return(0,Yn.jsx)(mF,{...u,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{onSubmit:d((async({file:n,sender:c})=>l((async()=>{const l=o(c),u=await new Promise((e=>{Sie().parse(n[0],{skipEmptyLines:!0,complete:e})}));if(u.errors.length>0)throw new Error("Error loading csv file: "+u.errors.map((e=>e.message)).join(", "));const d=[];for(let e=0;e{const{openWith:e}=(0,n.useContext)(fM);return(0,Yn.jsxs)(Si,{onClick:()=>e((0,Yn.jsx)(Aie,{})),variant:"CTAWithIcon",children:[(0,Yn.jsx)(ZB,{marginRight:"4px",size:"sm",children:"Load CSV file"}),(0,Yn.jsx)(zj,{stroke:"currentcolor"})]})},Oie=({href:e,children:t,...r})=>(0,Yn.jsx)(Ei,{alignItems:"center",display:"flex",_hover:{textDecoration:"none"},href:e,rel:"noopener noreferrer",role:"link",target:"_blank",...r,children:t}),Tie=({batchPending:e})=>(0,Yn.jsxs)(Xn,{alignItems:"center",marginTop:"24px",marginBottom:"24px",children:[(0,Yn.jsxs)(ui,{flex:1,color:EP.orangeL,size:"sm",children:[e," Pending"]}),(0,Yn.jsx)(Pie,{}),(0,Yn.jsx)(Oie,{marginLeft:"8px",href:"https://github.com/trilitech/umami-v1/blob/main/CSV_FILE_SPEC.md",children:(0,Yn.jsxs)(Si,{paddingRight:"0",variant:"CTAWithIcon",children:[(0,Yn.jsx)(ZB,{marginRight:"4px",size:"sm",children:"See file specs"}),(0,Yn.jsx)(jj,{stroke:"currentcolor"})]})})]}),Cie=()=>{const e=(()=>{const e=C5(),t=TR((t=>t.batches[e.name]));return t||[]})();return(0,Yn.jsxs)(Xn,{flexDirection:"column",height:"100%",children:[(0,Yn.jsx)(Hne,{title:"Batch"}),(0,Yn.jsx)(Tie,{batchPending:e.length}),(0,Yn.jsx)(ei,{overflowY:"auto",minHeight:"80%",children:e.length>0?e.map((e=>(0,Yn.jsx)(xie,{operations:e},e.sender.address.pkh))):(0,Yn.jsx)(jie,{})})]})},jie=()=>{const{openWith:e}=(0,n.useContext)(fM);return(0,Yn.jsx)(Jn,{height:"100%",textAlign:"center",children:(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)(ui,{size:"3xl",children:"No 'batch' to show"}),(0,Yn.jsx)(ZB,{marginTop:"10px",color:EP.gray[400],size:"xl",children:"There is no batch transaction to show..."}),(0,Yn.jsx)(Xn,{justifyContent:"space-around",marginTop:"30px",children:(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)(Si,{onClick:()=>e((0,Yn.jsx)(cne,{showPreview:!1})),children:"Start a Batch"}),(0,Yn.jsx)(Si,{marginLeft:"15px",onClick:()=>e((0,Yn.jsx)(Aie,{})),variant:"tertiary",children:"Load CSV file"})]})})]})})};var Rie=ne((function(e,t){const{templateAreas:r,gap:n,rowGap:i,columnGap:o,column:a,row:s,autoFlow:c,autoRows:l,templateRows:u,autoColumns:d,templateColumns:h,...f}=e,p={display:"grid",gridTemplateAreas:r,gridGap:n,gridRowGap:i,gridColumnGap:o,gridAutoColumns:d,gridColumn:a,gridRow:s,gridAutoFlow:c,gridAutoRows:l,gridTemplateRows:u,gridTemplateColumns:h};return(0,Yn.jsx)(Zn.div,{ref:t,__css:p,...f})}));function Iie(e){return JB(e,(e=>"auto"===e?"auto":`span ${e}/span ${e}`))}Rie.displayName="Grid";var Mie=ne((function(e,t){const{area:r,colSpan:n,colStart:i,colEnd:o,rowEnd:a,rowSpan:s,rowStart:c,...l}=e,u=GB({gridArea:r,gridColumn:Iie(n),gridRow:Iie(s),gridColumnStart:i,gridColumnEnd:o,gridRowStart:c,gridRowEnd:a});return(0,Yn.jsx)(Zn.div,{ref:t,__css:u,...l})}));Mie.displayName="GridItem";const Lie=({onClick:e,children:t,isSelected:r,...n})=>(0,Yn.jsx)(A$,{justifyContent:"center",height:"66px",marginBottom:"10px",padding:"24px",border:"1px solid",borderColor:r?` ${EP.orangeL}`:"transparent",borderRadius:"lg",_hover:{border:`1px solid ${EP.gray[500]}`,bg:EP.gray[800]},cursor:e?"pointer":void 0,backgroundColor:EP.gray[900],onClick:e,...n,children:(0,Yn.jsx)(P$,{padding:0,children:t})}),Nie=({left:e,isSelected:t,onClick:r})=>(0,Yn.jsx)(Lie,{isSelected:t,onClick:r,children:(0,Yn.jsx)(Xn,{alignItems:"center",height:"100%",children:(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",width:"100%",children:[(0,Yn.jsx)(ui,{size:"sm",children:e}),(0,Yn.jsx)(bj,{})]})})}),Die=()=>(0,Yn.jsxs)(Rie,{gridGap:"1",gridTemplateRows:"0fr 1fr 1fr",gridTemplateColumns:"1fr 1fr",gridTemplateAreas:'\n "header header"\n "main main"\n "main main"\n ',height:"100%",children:[(0,Yn.jsx)(Mie,{gridArea:"header",children:(0,Yn.jsx)(Hne,{title:"Help"})}),(0,Yn.jsxs)(Mie,{gridArea:"main",marginTop:1,children:[(0,Yn.jsx)(Bie,{title:"Learn More",children:(0,Yn.jsx)(zie,{about:"Browse Articles",externalLink:"https://medium.com/umamiwallet"})}),(0,Yn.jsxs)(Bie,{title:"Need Help?",children:[(0,Yn.jsx)(zie,{about:"Contact our Support Team",externalLink:"mailto:umami-support@trili.tech",linkDescription:"umami-support@trili.tech"}),(0,Yn.jsx)(zie,{about:"Get in touch with the Community",externalLink:"https://join.slack.com/t/tezos-dev/shared_invite/zt-1ur1ymxrp-G_X_bFHrvWXwoeiy53J8lg",linkDescription:"Slack #Umami"})]}),(0,Yn.jsx)(Bie,{title:"Terms of Use",children:(0,Yn.jsx)(zie,{about:"Read Terms of Service",externalLink:"https://umamiwallet.com/tos.html"})})]})]}),zie=({about:e,externalLink:t,linkDescription:r})=>(0,Yn.jsx)(vT,{rel:"noopener noreferrer",target:"_blank",to:t,children:(0,Yn.jsx)(Lie,{cursor:"pointer",isSelected:!1,children:(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",children:[(0,Yn.jsx)(ui,{size:"sm",children:e}),(0,Yn.jsxs)(Xn,{alignItems:"center",children:[r&&(0,Yn.jsx)(ZB,{marginRight:"4px",color:EP.gray[400],size:"sm",children:r}),(0,Yn.jsx)(jj,{})]})]})})}),Bie=({title:e,children:t})=>(0,Yn.jsx)(ei,{"data-testid":"help-card",marginY:"10px",children:(0,Yn.jsx)(Xn,{children:(0,Yn.jsxs)(ei,{width:"550px",children:[(0,Yn.jsx)(ui,{marginBottom:"16px",size:"lg",children:e}),t]})})});var[Uie,Fie]=di(),$ie={start:{ltr:"left",rtl:"right"},end:{ltr:"right",rtl:"left"}};function Hie(e){var t;const{isOpen:r,onClose:n,placement:i="right",children:o,...a}=e,s=ni(),c=null==(t=s.components)?void 0:t.Drawer,l=function(e,t){var r,n;if(e)return null!=(n=null==(r=$ie[e])?void 0:r[t])?n:e}(i,s.direction);return(0,Yn.jsx)(Uie,{value:{placement:l},children:(0,Yn.jsx)(tI,{isOpen:r,onClose:n,styleConfig:c,...a,children:o})})}var Vie={exit:{duration:.15,ease:rI.easeInOut},enter:{type:"spring",damping:25,stiffness:180}},qie={exit:({direction:e,transition:t,transitionEnd:r,delay:n})=>{var i;const{exit:o}=sI({direction:e});return{...o,transition:null!=(i=null==t?void 0:t.exit)?i:uI(Vie.exit,n),transitionEnd:null==r?void 0:r.exit}},enter:({direction:e,transitionEnd:t,transition:r,delay:n})=>{var i;const{enter:o}=sI({direction:e});return{...o,transition:null!=(i=null==r?void 0:r.enter)?i:lI(Vie.enter,n),transitionEnd:null==t?void 0:t.enter}}},Kie=(0,n.forwardRef)((function(e,t){const{direction:r="right",style:n,unmountOnExit:i,in:o,className:a,transition:s,transitionEnd:c,delay:l,motionProps:u,...d}=e,h=sI({direction:r}),f=Object.assign({position:"fixed"},h.position,n),p=!i||o&&i,m=o||i?"enter":"exit",g={transitionEnd:c,transition:s,direction:r,delay:l};return(0,Yn.jsx)(iP,{custom:g,children:p&&(0,Yn.jsx)(CA.div,{...d,ref:t,initial:"exit",className:ie("chakra-slide",a),animate:m,exit:"exit",custom:g,variants:qie,style:f,...u})})}));Kie.displayName="Slide";var Wie=Zn(Kie),Gie=ne(((e,t)=>{const{className:r,children:n,motionProps:i,containerProps:o,...a}=e,{getDialogProps:s,getDialogContainerProps:c,isOpen:l}=eI(),u=s(a,t),d=c(o),h=ie("chakra-modal__content",r),f=JR(),p={display:"flex",flexDirection:"column",position:"relative",width:"100%",outline:0,...f.dialog},m={display:"flex",width:"100vw",height:"$100vh",position:"fixed",left:0,top:0,...f.dialogContainer},{placement:g}=Fie();return(0,Yn.jsx)(qB,{children:(0,Yn.jsx)(Zn.div,{...d,className:"chakra-modal__content-container",__css:m,children:(0,Yn.jsx)(Wie,{motionProps:i,direction:g,in:l,className:h,...u,__css:p,children:n})})})}));Gie.displayName="DrawerContent";const Zie=({onRemove:e,onCreate:t})=>(0,Yn.jsx)(qre,{children:(0,Yn.jsxs)(ei,{paddingY:"0",children:[(0,Yn.jsx)(Si,{height:t?"24px":"28px","data-testid":"popover-remove",onClick:e,variant:"popover",children:(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",flex:1,children:[(0,Yn.jsx)(ZB,{marginRight:"4px",children:"Remove"}),(0,Yn.jsx)(bR,{stroke:"inherit"})]})}),t&&(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(wre,{marginY:"4px"}),(0,Yn.jsx)(Si,{onClick:t,variant:"popover",children:(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",flex:1,children:[(0,Yn.jsx)(ZB,{marginRight:"4px",children:"Create"}),(0,Yn.jsx)(cR,{width:"18px",height:"18px",stroke:"inherit"})]})})]})]})});var Yie=e=>(0,Yn.jsx)(Zn.div,{className:"chakra-stack__item",...e,__css:{display:"inline-block",flex:"0 0 auto",minWidth:0,...e.__css}});Yie.displayName="StackItem";var Xie=ne(((e,t)=>{const{isInline:r,direction:i,align:o,justify:a,spacing:s="0.5rem",wrap:c,children:l,divider:u,className:d,shouldWrapChildren:h,...f}=e,p=r?"row":null!=i?i:"column",m=(0,n.useMemo)((()=>function(e){const{spacing:t,direction:r}=e,n={column:{my:t,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},"column-reverse":{my:t,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},row:{mx:t,my:0,borderLeftWidth:"1px",borderBottomWidth:0},"row-reverse":{mx:t,my:0,borderLeftWidth:"1px",borderBottomWidth:0}};return{"&":JB(r,(e=>n[e]))}}({spacing:s,direction:p})),[s,p]),g=!!u,v=!h&&!g,y=(0,n.useMemo)((()=>{const e=j$(l);return v?e:e.map(((t,r)=>{const i="undefined"!==typeof t.key?t.key:r,o=r+1===e.length,a=h?(0,Yn.jsx)(Yie,{children:t},i):t;if(!g)return a;const s=(0,n.cloneElement)(u,{__css:m}),c=o?null:s;return(0,Yn.jsxs)(n.Fragment,{children:[a,c]},i)}))}),[u,m,g,v,h,l]),b=ie("chakra-stack",d);return(0,Yn.jsx)(Zn.div,{ref:t,display:"flex",alignItems:o,justifyContent:a,flexDirection:p,flexWrap:c,gap:g?void 0:s,className:b,...f,children:y})}));Xie.displayName="Stack";var Jie=ne(((e,t)=>(0,Yn.jsx)(Xie,{align:"center",...e,direction:"column",ref:t})));Jie.displayName="VStack";const Qie=({icon:e,size:t,onClick:r=(()=>{})})=>(0,Yn.jsx)(ei,{width:t,height:t,margin:"auto",background:EP.gray[700],borderRadius:"full",onClick:r,children:(0,Yn.jsx)(Jn,{height:"100%",children:e})}),eoe=({children:e,icon:t,title:r,subtitle:n})=>(0,Yn.jsxs)(Jie,{maxHeight:"83vh",spacing:0,children:[(0,Yn.jsx)(ei,{marginBottom:"20px",children:(0,Yn.jsx)(Qie,{icon:t,size:"48px"})}),(0,Yn.jsxs)(Jn,{flexDirection:"column",marginBottom:"32px",children:[(0,Yn.jsx)(ui,{size:"xl",children:r}),n&&(0,Yn.jsx)(ZB,{marginTop:"10px",color:EP.gray[400],textAlign:"center",size:"sm",children:n})]}),e]}),toe=({onSubmit:e,isLoading:t})=>{const r=_$({mode:"onBlur"}),{handleSubmit:n,formState:{errors:i,isValid:o}}=r;return(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(rR,{}),subtitle:"Enter your master password for Umami.",title:"Umami Master Password",children:(0,Yn.jsx)(mF,{...r,children:(0,Yn.jsxs)("form",{onSubmit:n((t=>{e(t.password)})),style:{width:"100%"},children:[(0,Yn.jsxs)(DU,{isInvalid:!!i.password,children:[(0,Yn.jsx)(mte,{"data-testid":"password",inputName:"password"}),i.password&&(0,Yn.jsx)(pte,{children:i.password.message})]}),(0,Yn.jsx)(Si,{width:"100%",marginTop:"32px",isDisabled:!o,isLoading:t,size:"lg",type:"submit",children:"Submit"})]})})})},roe=({onSubmit:e,title:t="Name Your Account",subtitle:r})=>{const{register:n,handleSubmit:i}=_$({mode:"onChange"});return(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(Oj,{}),subtitle:r,title:t,children:(0,Yn.jsxs)("form",{onSubmit:i(e),style:{width:"100%"},children:[(0,Yn.jsxs)(DU,{children:[(0,Yn.jsx)(T$,{children:"Account name"}),(0,Yn.jsx)(D$,{"data-testid":"name",type:"text",...n("accountName",{required:!1}),placeholder:"Optional"})]}),(0,Yn.jsx)(Si,{width:"100%",marginTop:"32px",size:"lg",type:"submit",children:"Continue"})]})})},noe=e=>{const[t,r]=(0,n.useState)();return void 0===t?(0,Yn.jsx)(roe,{onSubmit:e=>r(e.accountName),subtitle:e.subtitle,title:e.title}):(0,Yn.jsx)(toe,{isLoading:e.isLoading,onSubmit:r=>e.onSubmit({name:t,password:r})})},ioe=e=>(0,Yn.jsx)(ei,{overflowY:"auto",height:"100%",children:e.children}),ooe=({goToStep:e})=>{const t=jq().length>0;return(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(tR,{}),title:"Connect or Import Account",children:(0,Yn.jsxs)(Jie,{width:"100%",spacing:"16px",children:[(0,Yn.jsx)(Si,{width:"100%",onClick:t=>e({type:pae.restoreMnemonic}),size:"lg",children:"Import with Seed Phrase"}),(0,Yn.jsx)(Si,{width:"100%",onClick:t=>e({type:pae.restoreSecretKey}),size:"lg",variant:"tertiary",children:"Import with Secret Key"}),!t&&(0,Yn.jsx)(Si,{width:"100%",onClick:t=>{e({type:pae.restoreBackup})},size:"lg",variant:"tertiary",children:"Restore from Backup"}),(0,Yn.jsx)(Si,{width:"100%",onClick:t=>{e({type:pae.nameAccount,account:{type:"ledger"}})},size:"lg",variant:"tertiary",children:"Connect ledger"})]})})},aoe=({secretKey:e,label:t,password:r})=>async n=>{const{account:i,encryptedSecretKey:o}=await(async({secretKey:e,label:t,password:r})=>{const{pk:n,pkh:i}=await q3(e),o=await Rc(e,r);return{account:{type:"secret_key",pk:n,label:t,address:Yu(i)},encryptedSecretKey:o}})({secretKey:e,label:t,password:r});n(Nc.actions.addAccount(i)),n(Nc.actions.addSecretKey({pkh:i.address.pkh,encryptedSecretKey:o}))},soe=e=>async t=>{t(Nc.actions.removeSecretKey(e)),t(Nc.actions.removeAccount(e))},{addAccount:coe,removeMnemonicAndAccounts:loe,removeNonMnemonicAccounts:uoe}=Nc.actions,doe=()=>{const e=C5(),t=O5(),r=to();return async({mnemonic:n,password:i,derivationPath:o,label:a})=>{const s=await $3(n),c=await t(n,e,o,a),l=await Rc(n,i);r(Nc.actions.addMnemonicAccounts({seedFingerprint:s,accounts:c,encryptedMnemonic:l}))}},hoe=()=>{const e=OR();return(t,r,n,i)=>{e(coe({derivationPath:t,curve:"ed25519",type:"ledger",pk:r,address:{type:"implicit",pkh:n},label:i}))}},foe=({goToStep:e,closeModal:t})=>{const{handleAsyncAction:r}=hte(),n=(()=>{const e=OR();return(t,r,n)=>{e(coe({type:"social",pk:t,address:{type:"implicit",pkh:r},idp:"google",label:n}))}})(),i=YD();return(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(ER,{}),title:"Connect or Create Account",children:(0,Yn.jsxs)(Jie,{width:"100%",spacing:"16px",children:[(0,Yn.jsx)(Si,{width:"100%",onClick:t=>e({type:pae.notice}),size:"lg",children:"Create a new Account"}),(0,Yn.jsx)(Si,{width:"100%",onClick:t=>e({type:pae.connectOptions}),size:"lg",variant:"tertiary",children:"I already have a wallet"}),(0,Yn.jsxs)(Xn,{width:"100%",paddingTop:"14px",paddingBottom:"6px",children:[(0,Yn.jsx)(wre,{marginTop:"11px"}),(0,Yn.jsx)(ZB,{minWidth:"160px",color:EP.gray[400],textAlign:"center",noOfLines:1,size:"sm",children:"Continue with Google"}),(0,Yn.jsx)(wre,{marginTop:"11px"})]}),(0,Yn.jsx)(fte,{onAuth:(e,o)=>r((async()=>{const{pk:r,pkh:a}=await q3(e);n(r,a,o),i({description:`Successfully added ${o} account`,status:"success"}),t()}))})]})})},poe=({selected:e,options:t,onChange:r})=>{const[i,o]=(0,n.useState)(e),[a,s]=(0,n.useState)(!1);return(0,Yn.jsxs)(ei,{children:[(0,Yn.jsxs)(Xn,{justifyContent:"space-between",height:"48px",padding:"12px 15px 15px 15px",color:EP.gray[300],background:EP.gray[800],border:"1px solid",borderColor:EP.gray[500],borderRadius:"4px",_hover:{borderColor:EP.gray[450]},cursor:"pointer","data-testid":"select-input",onClick:()=>s((e=>!e)),children:[(0,Yn.jsx)(ZB,{size:"sm",children:i.label}),(0,Yn.jsx)(yj,{})]}),a&&(0,Yn.jsx)(K$,{position:"absolute",zIndex:2,width:"100%",margin:0,marginTop:"8px",padding:"15px",background:EP.gray[700],border:"1px solid",borderColor:EP.gray[500],borderRadius:"8px","data-testid":"select-options",listStyleType:"none",children:t.map((e=>(0,Yn.jsx)(W$,{marginBottom:"5px",padding:"11px",color:EP.gray[300],background:"transparent",borderRadius:"4px",_hover:{background:EP.gray[500]},cursor:"pointer",onClick:()=>{s(!1),o(e),r(e.value)},children:(0,Yn.jsx)(ZB,{size:"sm",children:e.label})},e.value)))})]})},moe=({goToStep:e,account:t})=>{const{handleSubmit:r,setValue:n,formState:{errors:i}}=_$({mode:"onBlur",defaultValues:{derivationPath:_q}});return(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(dR,{}),subtitle:"Choose a custom derivation path or select the default derivation path and use the default key.",title:"Derivation Path",children:(0,Yn.jsxs)("form",{onSubmit:r((async({derivationPath:r})=>{switch(t.type){case"ledger":e({type:pae.restoreLedger,account:{...t,derivationPath:r}});break;case"mnemonic":e({type:pae.masterPassword,account:{...t,derivationPath:r}})}})),style:{width:"100%"},children:[(0,Yn.jsxs)(DU,{marginBottom:"20px",children:[(0,Yn.jsx)(T$,{children:"Select Path"}),(0,Yn.jsx)(poe,{onChange:e=>n("derivationPath",e),options:kq,selected:Sq}),i.derivationPath&&(0,Yn.jsx)(pte,{"data-testid":"error-message",children:i.derivationPath.message})]}),(0,Yn.jsx)(Si,{width:"100%",marginTop:"12px",size:"lg",type:"submit",children:"Continue"}),(0,Yn.jsx)(Oie,{display:"block",width:"100%",marginTop:"32px",textAlign:"center",href:"https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki",children:(0,Yn.jsx)($V,{backgroundColor:"white",defaultIsOpen:!1,hasArrow:!0,label:"Derivation path is a set of directions that helps create different secret keys; it starts from a master key or seed.",children:(0,Yn.jsx)(ZB,{color:EP.blue,fontWeight:600,textDecoration:"underline",_hover:{textDecoration:"underline"},size:"sm",children:"What's a Derivation Path?"})})})]})})};var[goe,voe]=di({name:"CheckboxGroupContext",strict:!1});function yoe(e){return(0,Yn.jsx)(Zn.svg,{width:"1.2em",viewBox:"0 0 12 10",style:{fill:"none",strokeWidth:2,stroke:"currentColor",strokeDasharray:16},...e,children:(0,Yn.jsx)("polyline",{points:"1.5 6 4.5 9 10.5 1"})})}function boe(e){return(0,Yn.jsx)(Zn.svg,{width:"1.2em",viewBox:"0 0 24 24",style:{stroke:"currentColor",strokeWidth:4},...e,children:(0,Yn.jsx)("line",{x1:"21",x2:"3",y1:"12",y2:"12"})})}function woe(e){const{isIndeterminate:t,isChecked:r,...n}=e,i=t?boe:yoe;return r||t?(0,Yn.jsx)(Zn.div,{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%"},children:(0,Yn.jsx)(i,{...n})}):null}var xoe={border:"0",clip:"rect(0, 0, 0, 0)",height:"1px",width:"1px",margin:"-1px",padding:"0",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"};var _oe=()=>"undefined"!==typeof document;var Soe=!1,koe=null,Eoe=!1,Aoe=!1,Poe=new Set;function Ooe(e,t){Poe.forEach((r=>r(e,t)))}var Toe="undefined"!==typeof window&&null!=window.navigator&&/^Mac/.test(window.navigator.platform);function Coe(e){Eoe=!0,function(e){return!(e.metaKey||!Toe&&e.altKey||e.ctrlKey||"Control"===e.key||"Shift"===e.key||"Meta"===e.key)}(e)&&(koe="keyboard",Ooe("keyboard",e))}function joe(e){if(koe="pointer","mousedown"===e.type||"pointerdown"===e.type){Eoe=!0;const t=e.composedPath?e.composedPath()[0]:e.target;let r=!1;try{r=t.matches(":focus-visible")}catch{}if(r)return;Ooe("pointer",e)}}function Roe(e){var t;(0===(t=e).mozInputSource&&t.isTrusted||0===t.detail&&!t.pointerType)&&(Eoe=!0,koe="virtual")}function Ioe(e){e.target!==window&&e.target!==document&&(Eoe||Aoe||(koe="virtual",Ooe("virtual",e)),Eoe=!1,Aoe=!1)}function Moe(){Eoe=!1,Aoe=!0}function Loe(){return"pointer"!==koe}function Noe(){if(!_oe()||Soe)return;const{focus:e}=HTMLElement.prototype;HTMLElement.prototype.focus=function(...t){Eoe=!0,e.apply(this,t)},document.addEventListener("keydown",Coe,!0),document.addEventListener("keyup",Coe,!0),document.addEventListener("click",Roe,!0),window.addEventListener("focus",Ioe,!0),window.addEventListener("blur",Moe,!1),"undefined"!==typeof PointerEvent?(document.addEventListener("pointerdown",joe,!0),document.addEventListener("pointermove",joe,!0),document.addEventListener("pointerup",joe,!0)):(document.addEventListener("mousedown",joe,!0),document.addEventListener("mousemove",joe,!0),document.addEventListener("mouseup",joe,!0)),Soe=!0}function Doe(e){Noe(),e(Loe());const t=()=>e(Loe());return Poe.add(t),()=>{Poe.delete(t)}}function zoe(e={}){const t=N$(e),{isDisabled:r,isReadOnly:i,isRequired:o,isInvalid:a,id:s,onBlur:c,onFocus:l,"aria-describedby":u}=t,{defaultChecked:d,isChecked:h,isFocusable:f,onChange:p,isIndeterminate:m,name:g,value:v,tabIndex:y,"aria-label":b,"aria-labelledby":w,"aria-invalid":x,..._}=e,S=function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(_,["isDisabled","isReadOnly","isRequired","isInvalid","id","onBlur","onFocus","aria-describedby"]),k=pb(p),E=pb(c),A=pb(l),[P,O]=(0,n.useState)(!1),[T,C]=(0,n.useState)(!1),[j,R]=(0,n.useState)(!1),[I,M]=(0,n.useState)(!1);(0,n.useEffect)((()=>Doe(O)),[]);const L=(0,n.useRef)(null),[N,D]=(0,n.useState)(!0),[z,B]=(0,n.useState)(!!d),U=void 0!==h,F=U?h:z,$=(0,n.useCallback)((e=>{i||r?e.preventDefault():(U||B(F?e.target.checked:!!m||e.target.checked),null==k||k(e))}),[i,r,F,U,m,k]);yh((()=>{L.current&&(L.current.indeterminate=Boolean(m))}),[m]),mb((()=>{r&&C(!1)}),[r,C]),yh((()=>{const e=L.current;if(!(null==e?void 0:e.form))return;const t=()=>{B(!!d)};return e.form.addEventListener("reset",t),()=>{var r;return null==(r=e.form)?void 0:r.removeEventListener("reset",t)}}),[]);const H=r&&!f,V=(0,n.useCallback)((e=>{" "===e.key&&M(!0)}),[M]),q=(0,n.useCallback)((e=>{" "===e.key&&M(!1)}),[M]);yh((()=>{if(!L.current)return;L.current.checked!==F&&B(L.current.checked)}),[L.current]);const K=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,"data-active":le(I),"data-hover":le(j),"data-checked":le(F),"data-focus":le(T),"data-focus-visible":le(T&&P),"data-indeterminate":le(m),"data-disabled":le(r),"data-invalid":le(a),"data-readonly":le(i),"aria-hidden":!0,onMouseDown:de(e.onMouseDown,(e=>{T&&e.preventDefault(),M(!0)})),onMouseUp:de(e.onMouseUp,(()=>M(!1))),onMouseEnter:de(e.onMouseEnter,(()=>R(!0))),onMouseLeave:de(e.onMouseLeave,(()=>R(!1)))})),[I,F,r,T,P,j,m,a,i]),W=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,"data-active":le(I),"data-hover":le(j),"data-checked":le(F),"data-focus":le(T),"data-focus-visible":le(T&&P),"data-indeterminate":le(m),"data-disabled":le(r),"data-invalid":le(a),"data-readonly":le(i)})),[I,F,r,T,P,j,m,a,i]),G=(0,n.useCallback)(((e={},t=null)=>({...S,...e,ref:xi(t,(e=>{e&&D("LABEL"===e.tagName)})),onClick:de(e.onClick,(()=>{var e;N||(null==(e=L.current)||e.click(),requestAnimationFrame((()=>{var e;null==(e=L.current)||e.focus({preventScroll:!0})})))})),"data-disabled":le(r),"data-checked":le(F),"data-invalid":le(a)})),[S,r,F,a,N]),Z=(0,n.useCallback)(((e={},t=null)=>({...e,ref:xi(L,t),type:"checkbox",name:g,value:v,id:s,tabIndex:y,onChange:de(e.onChange,$),onBlur:de(e.onBlur,E,(()=>C(!1))),onFocus:de(e.onFocus,A,(()=>C(!0))),onKeyDown:de(e.onKeyDown,V),onKeyUp:de(e.onKeyUp,q),required:o,checked:F,disabled:H,readOnly:i,"aria-label":b,"aria-labelledby":w,"aria-invalid":x?Boolean(x):a,"aria-describedby":u,"aria-disabled":r,style:xoe})),[g,v,s,$,E,A,V,q,o,F,H,i,b,w,x,a,u,r,y]),Y=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,onMouseDown:de(e.onMouseDown,Boe),"data-disabled":le(r),"data-checked":le(F),"data-invalid":le(a)})),[F,r,a]);return{state:{isInvalid:a,isFocused:T,isChecked:F,isActive:I,isHovered:j,isIndeterminate:m,isDisabled:r,isReadOnly:i,isRequired:o},getRootProps:G,getCheckboxProps:K,getIndicatorProps:W,getInputProps:Z,getLabelProps:Y,htmlProps:S}}function Boe(e){e.preventDefault(),e.stopPropagation()}var Uoe={display:"inline-flex",alignItems:"center",justifyContent:"center",verticalAlign:"top",userSelect:"none",flexShrink:0},Foe={cursor:"pointer",display:"inline-flex",alignItems:"center",verticalAlign:"top",position:"relative"},$oe=vi({from:{opacity:0,strokeDashoffset:16,transform:"scale(0.95)"},to:{opacity:1,strokeDashoffset:0,transform:"scale(1)"}}),Hoe=vi({from:{opacity:0},to:{opacity:1}}),Voe=vi({from:{transform:"scaleX(0.65)"},to:{transform:"scaleX(1)"}}),qoe=ne((function(e,t){const r=voe(),i=li("Checkbox",{...r,...e}),o=Qt(e),{spacing:a="0.5rem",className:s,children:c,iconColor:l,iconSize:u,icon:d=(0,Yn.jsx)(woe,{}),isChecked:h,isDisabled:f=(null==r?void 0:r.isDisabled),onChange:p,inputProps:m,...g}=o;let v=h;(null==r?void 0:r.value)&&o.value&&(v=r.value.includes(o.value));let y=p;(null==r?void 0:r.onChange)&&o.value&&(y=he(r.onChange,p));const{state:b,getInputProps:w,getCheckboxProps:x,getLabelProps:_,getRootProps:S}=zoe({...g,isDisabled:f,isChecked:v,onChange:y}),k=function(e){const[t,r]=(0,n.useState)(e),[i,o]=(0,n.useState)(!1);return e!==t&&(o(!0),r(e)),i}(b.isChecked),E=(0,n.useMemo)((()=>({animation:k?b.isIndeterminate?`${Hoe} 20ms linear, ${Voe} 200ms linear`:`${$oe} 200ms linear`:void 0,fontSize:u,color:l,...i.icon})),[l,u,k,b.isIndeterminate,i.icon]),A=(0,n.cloneElement)(d,{__css:E,isIndeterminate:b.isIndeterminate,isChecked:b.isChecked});return(0,Yn.jsxs)(Zn.label,{__css:{...Foe,...i.container},className:ie("chakra-checkbox",s),...S(),children:[(0,Yn.jsx)("input",{className:"chakra-checkbox__input",...w(m,t)}),(0,Yn.jsx)(Zn.span,{__css:{...Uoe,...i.control},className:"chakra-checkbox__control",...x(),children:A}),c&&(0,Yn.jsx)(Zn.span,{className:"chakra-checkbox__label",..._(),__css:{marginStart:a,...i.label},children:c})]})}));qoe.displayName="Checkbox";const Koe=({goToStep:e})=>{const[t,r]=n.useState(!1);return(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(Ej,{}),title:"Accept to Continue",children:(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsxs)(qoe,{paddingBottom:"24px",fontWeight:"600",onChange:e=>r(e.target.checked),children:["I confirm that I have read and agreed with the"," ",(0,Yn.jsx)(Ei,{textDecoration:"underline",_hover:{color:EP.green},href:"https://umamiwallet.com/tos.html",rel:"noopener noreferrer",target:"_blank",children:"Terms of Service"})," ","and the"," ",(0,Yn.jsx)(Ei,{textDecoration:"underline",_hover:{color:EP.green},href:"https://umamiwallet.com/privacypolicy.html",rel:"noopener noreferrer",target:"_blank",children:"Privacy Policy"})]}),(0,Yn.jsx)(Si,{width:"100%",isDisabled:!t,onClick:()=>{e({type:pae.connectOrCreate})},size:"lg",children:"Continue"})]})})},Woe=({onClose:e})=>{const{register:t,handleSubmit:r,formState:{errors:n}}=_$({mode:"onBlur"}),i=hoe();return(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(ER,{}),title:"Add a Fake Account",children:(0,Yn.jsxs)("form",{onSubmit:r((async({pkh:t,name:r})=>{const n=new gW(Ad.rpcUrl),o=await n.getManagerKey(t),a="string"===typeof o?o:o.key;i(_q,a,t,r),e()})),style:{width:"100%"},children:[(0,Yn.jsx)(ZB,{children:"It will be restored as a ledger account"}),(0,Yn.jsxs)(DU,{isInvalid:!!n.pkh,children:[(0,Yn.jsx)(T$,{children:"Address"}),(0,Yn.jsx)(D$,{...t("pkh",{required:!0}),autoComplete:"off",placeholder:"Please enter the account address"})]}),(0,Yn.jsxs)(DU,{isInvalid:!!n.name,children:[(0,Yn.jsx)(T$,{children:"Name"}),(0,Yn.jsx)(D$,{...t("name",{required:!0}),autoComplete:"off",placeholder:"Please enter the account name"})]}),(0,Yn.jsx)(Si,{width:"100%",marginTop:2,size:"lg",type:"submit",children:"Add account"})]})})},Goe=({onSubmit:e,isLoading:t})=>{const r=_$({mode:"onBlur"}),{handleSubmit:n,formState:{errors:i,isValid:o},getValues:a}=r;return(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(rR,{}),subtitle:"Please choose a master password for Umami. You will need to use this password in order to perform any operations within Umami.",title:"Umami Master Password",children:(0,Yn.jsx)(mF,{...r,children:(0,Yn.jsxs)("form",{onSubmit:n((async t=>{e(t.confirm)})),style:{width:"100%"},children:[(0,Yn.jsxs)(DU,{isInvalid:!!i.password,children:[(0,Yn.jsx)(mte,{"data-testid":"password",inputName:"password",placeholder:"Enter master password"}),i.password&&(0,Yn.jsx)(pte,{children:i.password.message})]}),(0,Yn.jsxs)(DU,{marginTop:"24px",isInvalid:!!i.confirm,children:[(0,Yn.jsx)(mte,{"data-testid":"confirmation",inputName:"confirm",label:"Confirm Password",placeholder:"Confirm your password",required:"Confirmation is required",validate:e=>a("password")===e||"Your passwords do no match"}),i.confirm&&(0,Yn.jsx)(pte,{children:i.confirm.message})]}),(0,Yn.jsx)(Si,{width:"100%",marginTop:"32px",isDisabled:!o||t,isLoading:t,size:"lg",type:"submit",children:"Submit"})]})})})},Zoe=({account:e,onClose:t})=>{const r=doe(),n=(()=>{const e=OR();return(t,r,n)=>e(aoe({secretKey:t,password:r,label:n}))})(),i=(()=>{const e=Cq(),t=Object.values(e)[0];return t?async e=>{await Ic(t,e)}:null})(),o=null!==i,{isLoading:a,handleAsyncAction:s}=hte(),c=YD(),l=a=>s((async()=>{switch(o&&await i(a),e.type){case"secret_key":await n(e.secretKey,a,e.label);break;case"mnemonic":await r({...e,password:a})}c({description:"Account successfully created!",status:"success"}),t()}));return o?(0,Yn.jsx)(toe,{isLoading:a,onSubmit:l}):(0,Yn.jsx)(Goe,{isLoading:a,onSubmit:l})},Yoe=({goToStep:e})=>(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(oR,{}),subtitle:"Please read the following before you continue to see your secret Seed Phrase.",title:"Important Notice",children:(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)(q$,{spacing:"16px",variant:"onboardingNotice",children:[{content:"Write down your seed phrase and store it in a safe place."},{content:"Make sure there is no one around you or looking over your shoulder."},{content:"Do not copy and paste the Seed Phrase or store it on your device."},{content:"Do not take a screenshot of your Seed Phrase."}].map(((e,t)=>(0,Yn.jsx)(W$,{fontSize:"16px",fontWeight:600,children:e.content},t)))}),(0,Yn.jsx)(Si,{width:"100%",marginTop:"28px",onClick:()=>e({type:pae.showSeedphrase,account:{type:"mnemonic",mnemonic:(0,JV.OF)(256)}}),size:"lg",children:"I understand"}),(0,Yn.jsx)(Si,{width:"100%",marginTop:"16px",onClick:()=>e({type:pae.restoreMnemonic}),size:"lg",variant:"tertiary",children:"I already have a Seed Phrase"})]})}),Xoe=()=>{const e=_$({mode:"onBlur"}),{handleSubmit:t,register:r,formState:{errors:n,isValid:i}}=e,{handleAsyncAction:o}=hte(),a=(()=>{const e=doe();return async(t,r)=>{const n=t.recoveryPhrases,i=t.derivationPaths.map((e=>"m/"===e.slice(0,2)?e.slice(2):e));localStorage.clear();try{for(const[t,o]of n.entries()){const n=await Ic(o,r,"V1");await e({mnemonic:n,password:r,label:gae,derivationPath:i[t]})}}catch(o){throw new Error("Invalid password.")}}})();return(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(uR,{}),subtitle:"Select a JSON backup file and enter the password you used to encrypt it.",title:"Restore from Backup",children:(0,Yn.jsx)(mF,{...e,children:(0,Yn.jsx)("form",{onSubmit:t((({password:e,file:t})=>o((async()=>{const r=await t[0].text(),n=JSON.parse(r);if(n.recoveryPhrases&&n.derivationPaths)await a(n,e);else{if(!n["persist:accounts"])throw new Error("Invalid backup file.");await(async(e,t)=>{const r=e["persist:accounts"];if(!r)throw new Error("Invalid backup file.");const n=JSON.parse(r),i=JSON.parse(n.seedPhrases);try{for(const e of Object.values(i))await Ic(e,t,"V2")}catch(o){throw new Error("Invalid password.")}localStorage.clear(),localStorage.setItem("persist:accounts",r),localStorage.setItem("persist:root",e["persist:root"])})(n,e)}window.location.reload()})))),style:{width:"100%"},children:(0,Yn.jsxs)(XB,{children:[(0,Yn.jsxs)(DU,{isInvalid:!!n.file,children:[(0,Yn.jsx)(T$,{children:"Upload File"}),(0,Yn.jsx)(Xn,{children:(0,Yn.jsx)(D$,{padding:"2px","data-testid":"file-input",...r("file",{required:"File is required"}),accept:".json",type:"file",variant:"unstyled"})}),n.file&&(0,Yn.jsx)(FU,{"data-testid":"file",children:n.file.message})]}),(0,Yn.jsxs)(DU,{marginTop:"24px",children:[(0,Yn.jsx)(mte,{"data-testid":"password-input",inputName:"password",label:"Your password (if you have one)",required:!1}),n.password&&(0,Yn.jsx)(FU,{"data-testid":"password",children:n.password.message})]}),(0,Yn.jsx)(Si,{width:"100%",marginTop:"32px",isDisabled:!i,size:"lg",type:"submit",children:"Import Wallet"})]})})})})},Joe=({closeModal:e,account:t})=>{const r=hoe(),n=YD(),{isLoading:i,handleAsyncAction:o}=hte();return(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(xR,{}),subtitle:"Complete the steps to connect.",title:"Connect Ledger",children:(0,Yn.jsxs)(Jie,{overflowY:"auto",spacing:"24px",children:[(0,Yn.jsx)(q$,{spacing:4,children:[{content:"Plug your Ledger into your computer using a USB cable."},{content:"Unlock your Ledger."},{content:"Make sure your Ledger has the latest firmware version."},{content:"Install and open the Tezos Wallet app on your Ledger."},{content:"Click the button below and confirm the action on your Ledger."}].map(((e,t)=>(0,Yn.jsx)(W$,{children:e.content},t)))}),(0,Yn.jsx)(Si,{width:"100%",isLoading:i,onClick:()=>o((()=>lte((async()=>{const i=n({description:"Please open the Tezos app on your Ledger and approve the operation",status:"info"}),o=Eq(t.derivationPath,0),{pk:a,pkh:s}=await(async e=>{const t=await MK.create(),r=new qK(t,e,!0),n=await r.publicKey(),i=await r.publicKeyHash();return await t.close(),{pk:n,pkh:i}})(o);r(o,a,s,t.label),n.close(i),n({description:"Account successfully created!",status:"success"}),e()}),6e4)),(e=>"PublicKeyRetrievalError"===e.name?{description:"Request rejected. Please unlock your Ledger and open the Tezos app"}:"InvalidStateError"===e.name?{description:"Request pending. Check your ledger..."}:{description:`Ledger error. ${e.message||e.name}`})),size:"lg",children:"Export Public Key"})]})})};var Qoe=Ete({displayName:"ChevronDownIcon",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"}),eae=ne((function(e,t){const{children:r,placeholder:n,className:i,...o}=e;return(0,Yn.jsxs)(Zn.select,{...o,ref:t,className:ie("chakra-select",i),children:[n&&(0,Yn.jsx)("option",{value:"",children:n}),r]})}));eae.displayName="SelectField";var tae=ne(((e,t)=>{var r;const n=li("Select",e),{rootProps:i,placeholder:o,icon:a,color:s,height:c,h:l,minH:u,minHeight:d,iconColor:h,iconSize:f,...p}=Qt(e),[m,g]=function(e,t){const r={},n={};for(const[i,o]of Object.entries(e))t.includes(i)?r[i]=o:n[i]=o;return[r,n]}(p,$t),v=L$(g),y={width:"100%",height:"fit-content",position:"relative",color:s},b={paddingEnd:"2rem",...n.field,_focus:{zIndex:"unset",...null==(r=n.field)?void 0:r._focus}};return(0,Yn.jsxs)(Zn.div,{className:"chakra-select__wrapper",__css:y,...m,...i,children:[(0,Yn.jsx)(eae,{ref:t,height:null!=l?l:c,minH:null!=u?u:d,placeholder:o,...v,__css:b,children:e.children}),(0,Yn.jsx)(iae,{"data-disabled":le(v.disabled),...(h||s)&&{color:h||s},__css:n.icon,...f&&{fontSize:f},children:a})]})}));tae.displayName="Select";var rae=e=>(0,Yn.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,Yn.jsx)("path",{fill:"currentColor",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"})}),nae=Zn("div",{baseStyle:{position:"absolute",display:"inline-flex",alignItems:"center",justifyContent:"center",pointerEvents:"none",top:"50%",transform:"translateY(-50%)"}}),iae=e=>{const{children:t=(0,Yn.jsx)(rae,{}),...r}=e,i=(0,n.cloneElement)(t,{role:"presentation",className:"chakra-select__icon",focusable:!1,"aria-hidden":!0,style:{width:"1em",height:"1em",color:"currentColor"}});return(0,Yn.jsx)(nae,{...r,className:"chakra-select__icon-wrapper",children:(0,n.isValidElement)(t)?i:null})};iae.displayName="SelectIcon";const oae=({inputName:e,validate:t,inputProps:r,listProps:i})=>{const[o,a]=(0,n.useState)(!0),{register:s,setValue:c,watch:l}=pF(),u=l(e),d=JV.ET.EN.filter((e=>u&&e.startsWith(u))).sort(),h=!o&&d.length>0&&(d.length>1||d[0]!==u);return(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(D$,{zIndex:0,autoComplete:"off","data-testid":"mnemonic-input",onFocus:()=>a(!1),placeholder:"Type here...",...s(e,{required:"Required",validate:t,onChange:()=>a(!1),onBlur:()=>a(!0)}),...r}),h&&(0,Yn.jsx)(K$,{"data-testid":"suggestions",variant:"suggestions",...i,children:d.map((t=>(0,Yn.jsx)(W$,{paddingTop:"2px",fontSize:"14px",fontWeight:600,"data-testid":"suggestion",onMouseDown:()=>c(e,t),paddingX:"7px",children:t},t)))})]})},aae=[12,15,18,24],sae=({goToStep:e})=>{const t=_$({mode:"onBlur"}),{handleSubmit:r,setValue:i,trigger:o,formState:{isValid:a}}=t,{handleAsyncAction:s}=hte(),[c,l]=(0,n.useState)(24);return(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(qj,{width:"24px",height:"24px",stroke:EP.gray[450]}),subtitle:"Please fill in the Seed Phrase in sequence.",title:"Import Seed Phrase",children:(0,Yn.jsx)(ei,{overflowX:"hidden",children:(0,Yn.jsx)(mF,{...t,children:(0,Yn.jsx)("form",{onSubmit:r((t=>s((async()=>{const r=Object.values(t).join(" ").trim();if(!(0,JV._I)(r))throw new Error(`Invalid Mnemonic: "${r}"`);e({type:pae.nameAccount,account:{type:"mnemonic",mnemonic:r}})})))),style:{width:"100%"},children:(0,Yn.jsxs)(Jie,{width:"100%",spacing:4,children:[(0,Yn.jsx)(tae,{height:"48px",color:EP.gray[450],"data-testid":"select",icon:(0,Yn.jsx)(Qoe,{}),onChange:e=>(e=>{const t=Number(e);aae.includes(t)&&(l((e=>(e>t&&(0,Va.range)(t,Math.max(...aae)).forEach((e=>{i(`word${e}`,void 0)})),t))),o())})(e.target.value),value:c,children:aae.reverse().map((e=>(0,Yn.jsxs)("option",{value:e,children:[e," Words"]},e)))}),(0,Yn.jsx)(Rie,{gridGap:3,gridTemplateColumns:"repeat(3, 1fr)",paddingBottom:"20px",children:(0,Va.range)(c).map((e=>{const t=`word${e}`;return(0,Yn.jsxs)(Mie,{display:"flex",height:"38px",padding:"4px",fontSize:"sm",background:EP.gray[800],border:"1px solid",borderColor:EP.gray[500],borderRadius:"4px",children:[(0,Yn.jsx)(ui,{width:"18px",marginRight:"6px",paddingTop:"6px",color:EP.gray[400],textAlign:"right",size:"sm",children:e+1}),(0,Yn.jsx)(oae,{inputName:t,inputProps:{onPaste:async e=>{e.preventDefault();(e=>{s((async()=>{const t=e.split(" ");if(!aae.includes(t.length))throw new Error(`the mnemonic must be ${aae.join(", ")} words long`);t.slice(0,c).forEach(((e,t)=>{i(`word${t}`,e)})),o()}))})(await navigator.clipboard.readText())},border:"none",size:"xsmall"},listProps:{width:"126px",marginTop:"38px",marginLeft:"-5px"}})]},e)}))}),(0,Yn.jsx)(Si,{width:"100%",isDisabled:!a,size:"lg",type:"submit",children:"Continue"})]})})})})})};var cae=["h","minH","height","minHeight"],lae=ne(((e,t)=>{const r=ci("Textarea",e),{className:n,rows:i,...o}=Qt(e),a=L$(o),s=i?function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(r,cae):r;return(0,Yn.jsx)(Zn.textarea,{ref:t,rows:i,...a,className:ie("chakra-textarea",n),__css:s})}));lae.displayName="Textarea";const uae=({goToStep:e})=>{const{register:t,handleSubmit:r,formState:{errors:n}}=_$({mode:"onBlur"});return(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(qj,{width:"24px",height:"24px",stroke:EP.gray[450]}),title:"Insert Secret Key",children:(0,Yn.jsxs)("form",{onSubmit:r((({secretKey:t})=>e({type:pae.nameAccount,account:{type:"secret_key",secretKey:t.trim()}}))),style:{width:"100%"},children:[(0,Yn.jsxs)(DU,{isInvalid:!!n.secretKey,children:[(0,Yn.jsx)(T$,{children:"Secret Key"}),(0,Yn.jsx)(lae,{minHeight:"130px","data-testid":"name",...t("secretKey",{required:"Secret key is required"}),placeholder:"Your secret key"}),n.secretKey&&(0,Yn.jsx)(FU,{children:n.secretKey.message})]}),(0,Yn.jsx)(Si,{width:"100%",marginTop:"32px",isDisabled:!!n.secretKey,size:"lg",type:"submit",children:"Continue"})]})})};var dae=ne((function(e,t){const{columns:r,spacingX:n,spacingY:i,spacing:o,minChildWidth:a,...s}=e,c=ni(),l=a?function(e,t){return JB(e,(e=>{const r=oi("sizes",e,function(e){return"number"===typeof e?`${e}px`:e}(e))(t);return null===e?null:`repeat(auto-fit, minmax(${r}, 1fr))`}))}(a,c):JB(r,(e=>null===e?null:`repeat(${e}, minmax(0, 1fr))`));return(0,Yn.jsx)(Rie,{ref:t,gap:o,columnGap:n,rowGap:i,templateColumns:l,...s})}));dae.displayName="SimpleGrid";const hae=({goToStep:e,account:t})=>(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(qj,{width:"24px",height:"24px",stroke:EP.gray[450]}),subtitle:"Please record the following 24 words in sequence in order to restore it in the future.",title:"Record Seed Phrase",children:(0,Yn.jsxs)(Jie,{children:[(0,Yn.jsx)(dae,{columns:3,spacing:2,children:t.mnemonic.split(" ").map(((e,t)=>(0,Yn.jsxs)(Xn,{width:"126px",padding:"6px",border:"1px dashed",borderColor:EP.gray[500],borderRadius:"4px",children:[(0,Yn.jsx)(ui,{width:"18px",marginRight:"10px",paddingTop:"2px",color:EP.gray[450],textAlign:"right",size:"sm",children:t+1}),(0,Yn.jsx)(ZB,{"data-testid":`mnemonic-word-${t}`,size:"sm",children:e})]},t)))}),(0,Yn.jsx)(Si,{width:"100%",marginTop:"20px",onClick:r=>{e({type:pae.verifySeedphrase,account:t})},size:"lg",children:"OK, I've recorded it"})]})}),fae=({goToStep:e,account:t})=>{const r=t.mnemonic.split(" "),i=_$({mode:"onBlur"}),{handleSubmit:o,formState:{errors:a,isValid:s}}=i,[c]=(0,n.useState)(((e,t)=>(0,Va.shuffle)(e.map(((e,t)=>({value:e,index:t})))).slice(0,t).sort(((e,t)=>e.index-t.index)))(r,5));return(0,Yn.jsx)(eoe,{icon:(0,Yn.jsx)(Aj,{}),subtitle:"To verify, please type in the word that corresponds to each sequence number.",title:"Verify Seed Phrase",children:(0,Yn.jsx)(ei,{overflowX:"hidden",overflowY:"auto",width:"100%",children:(0,Yn.jsx)(mF,{...i,children:(0,Yn.jsxs)("form",{onSubmit:o((()=>e({type:pae.nameAccount,account:t}))),children:[c.map(((e,t)=>{const r=`${e.index}`,n=a[r];return(0,Yn.jsxs)(DU,{marginBottom:"12px",isInvalid:!!n,children:[(0,Yn.jsx)(ZB,{position:"absolute",zIndex:1,width:"26px",marginTop:"12px",marginLeft:"4px",textAlign:"right","data-testid":"mnemonic-index",children:e.index+1}),(0,Yn.jsx)(ei,{width:"100%",children:(0,Yn.jsx)(oae,{inputName:r,inputProps:{paddingLeft:"36px",size:"md"},listProps:{marginTop:"6px"},validate:t=>{if(t!==e.value)return"Word doesn't match"}})}),(null===n||void 0===n?void 0:n.message)&&(0,Yn.jsx)(pte,{children:n.message})]},t)})),(0,Yn.jsx)(Si,{width:"100%",marginTop:"20px",isDisabled:!s,size:"lg",type:"submit",children:"Continue"})]})})})})};let pae=function(e){return e.eula="eula",e.connectOrCreate="connectOrCreate",e.connectOptions="connectOptions",e.notice="notice",e.restoreMnemonic="restoreMnemonic",e.restoreSecretKey="restoreSecretKey",e.restoreLedger="restoreLedger",e.restoreBackup="restoreBackup",e.showSeedphrase="showSeedphrase",e.verifySeedphrase="verifySeedphrase",e.nameAccount="nameAccount",e.derivationPath="derivationPath",e.masterPassword="masterPassword",e.fakeAccount="fakeAccount",e}({});const mae=e=>{const{isOpen:t,onOpen:r,onClose:i}=DR(),o=0!==jq().length,a=(e=>{const[t,r]=(0,n.useState)(e),[i,o]=(0,n.useState)([t]),a=1===i.length;return{reset:()=>{r(e),o([e])},goToStep:e=>{r(e),o([...i,e])},currentStep:t,goBack:()=>{if(a)return;i.pop();const e=i[i.length-1];o(i),r(e)},atInitialStep:a,fullHistory:i}})({type:o?pae.connectOrCreate:pae.eula}),{currentStep:s,goToStep:c}=a,l=()=>{a.reset(),e&&e(),i()};return{modalElement:(0,Yn.jsxs)(tI,{autoFocus:!1,closeOnOverlayClick:!1,isCentered:!0,isOpen:t,onClose:l,children:[o&&(0,Yn.jsx)(mI,{}),(0,Yn.jsxs)(KB,{children:[!a.atInitialStep&&(0,Yn.jsx)(Pte,{onClick:a.goBack}),(0,Yn.jsx)(YB,{onClick:l}),(()=>{switch(s.type){case pae.eula:return(0,Yn.jsx)(Koe,{goToStep:c});case pae.connectOrCreate:return(0,Yn.jsx)(foe,{closeModal:l,goToStep:c});case pae.connectOptions:return(0,Yn.jsx)(ooe,{goToStep:c});case pae.notice:return(0,Yn.jsx)(Yoe,{goToStep:c});case pae.restoreMnemonic:return(0,Yn.jsx)(sae,{goToStep:c});case pae.restoreBackup:return(0,Yn.jsx)(Xoe,{});case pae.showSeedphrase:return(0,Yn.jsx)(hae,{goToStep:c,...s});case pae.verifySeedphrase:return(0,Yn.jsx)(fae,{goToStep:c,...s});case pae.nameAccount:return(0,Yn.jsx)(vae,{goToStep:c,...s});case pae.derivationPath:return(0,Yn.jsx)(moe,{goToStep:c,...s});case pae.restoreLedger:return(0,Yn.jsx)(Joe,{closeModal:l,...s});case pae.masterPassword:return(0,Yn.jsx)(Zoe,{onClose:l,...s});case pae.fakeAccount:return(0,Yn.jsx)(Woe,{onClose:i});case pae.restoreSecretKey:return(0,Yn.jsx)(uae,{goToStep:c})}})()]})]}),onOpen:r}},gae="Account",vae=({goToStep:e,account:t})=>{const r=Lq();return(0,Yn.jsx)(roe,{onSubmit:n=>{const i=n.accountName.trim()||gae,o=r(i)[0];switch(t.type){case"secret_key":return e({type:pae.masterPassword,account:{...t,label:o}});case"ledger":return e({type:pae.derivationPath,account:{...t,label:o}});case"mnemonic":return e({type:pae.derivationPath,account:{...t,label:i}})}},subtitle:"Please choose a name for your first account. You can edit your account name later."})},yae=e=>{const t=OR(),{openWith:r}=(0,n.useContext)(fM),{mode:i,operations:o,fee:a,data:{threshold:s,signers:c,name:l,sender:u}}=e,{fee:d,operations:h,estimationFailed:f,isLoading:p,form:m,signer:g,onSign:v,handleAsyncAction:y}=Qre(a,o,i);return(0,Yn.jsx)(mF,{...m,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(Cte,{...e,operationsType:h.type,signer:h.signer}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(T$,{children:"Contract Name"}),(0,Yn.jsx)(ZB,{marginBottom:"24px",padding:"14px",color:EP.gray[50],background:EP.gray[800],borderRadius:"6px","data-testid":"contract-name",children:l}),(0,Yn.jsxs)(ei,{marginBottom:"24px",children:[(0,Yn.jsx)(T$,{children:"Owner"}),(0,Yn.jsx)(e6,{marginBottom:"12px",address:qu(u),"data-testid":"multisig-owner"}),(0,Yn.jsx)(Xn,{justifyContent:"flex-end",children:(0,Yn.jsx)(_te,{fee:d})})]}),(0,Yn.jsx)(T$,{children:"Approvers"}),(0,Yn.jsx)(ei,{"data-testid":"approvers",children:c.map((e=>(0,Yn.jsx)(e6,{marginBottom:"12px",address:qu(e.val),"data-testid":`approver-${e.val}`},e.val)))}),(0,Yn.jsxs)(Xn,{alignItems:"center",marginTop:"24px",marginBottom:"24px",children:[(0,Yn.jsx)(ui,{marginRight:"12px",size:"md",children:"Min No. of approvals:"}),(0,Yn.jsx)(Jn,{width:"100px",height:"48px",background:EP.gray[800],borderRadius:"4px",children:(0,Yn.jsxs)(ZB,{textAlign:"center","data-testid":"threshold",children:[s," out of ",c.length]})})]})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(gte,{isDisabled:f,isLoading:p,onSubmit:async e=>y((async()=>{const n=await v(e);if(!n)throw new Error("An error occurred during contract origination");const i=(await n.getOriginatedContractAddresses())[0];t($d.addMultisigLabel({pkh:i,label:l})),r((0,Yn.jsx)(bte,{hash:n.opHash}))})),signer:g,text:Ote(h.type,i)})})]})})})},bae=[{prim:"storage",args:[{prim:"pair",args:[{prim:"address",annots:["%owner"]},{prim:"pair",args:[{prim:"set",args:[{prim:"address"}],annots:["%signers"]},{prim:"pair",args:[{prim:"nat",annots:["%threshold"]},{prim:"pair",args:[{prim:"nat",annots:["%last_op_id"]},{prim:"pair",args:[{prim:"big_map",args:[{prim:"nat"},{prim:"pair",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"list",args:[{prim:"operation"}]}],annots:["%actions"]},{prim:"set",args:[{prim:"address"}],annots:["%approvals"]}]}],annots:["%pending_ops"]},{prim:"big_map",args:[{prim:"string"},{prim:"bytes"}],annots:["%metadata"]}]}]}]}]}]}]},{prim:"parameter",args:[{prim:"or",args:[{prim:"or",args:[{prim:"or",args:[{prim:"bytes",annots:["%set_metadata_uri"]},{prim:"unit",annots:["%default"]}]},{prim:"or",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"list",args:[{prim:"operation"}]}],annots:["%propose"]},{prim:"nat",annots:["%approve"]}]}]},{prim:"nat",annots:["%execute"]}]}]},{prim:"code",args:[[{prim:"NIL",args:[{prim:"operation"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"UNPAIR"},{prim:"DIP",args:[{int:"1"},[{prim:"UNPAIR",args:[{int:"6"}]}]]},{prim:"IF_LEFT",args:[[{prim:"IF_LEFT",args:[[{prim:"IF_LEFT",args:[[{prim:"DUP",args:[{int:"2"}]},{prim:"SENDER"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"INVALID_CALLER"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"7"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"SOME"},{prim:"PUSH",args:[{prim:"string"},{string:""}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}],[{prim:"DROP",args:[{int:"1"}]},{prim:"DUP",args:[{int:"3"}]},{prim:"DUP",args:[{int:"3"}]},{prim:"SIZE"},{prim:"COMPARE"},{prim:"GE"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"FUNDING BLOCKED SINCE PARAMS ARE INVALID"}]},{prim:"FAILWITH"}],[]]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}]]}],[{prim:"IF_LEFT",args:[[{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"AMOUNT"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"TO FUND CONTRACT, PLEASE USE THE DEFAULT ENTRYPOINT"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"3"}]},{prim:"SENDER"},{prim:"MEM"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ONLY FOR SIGNERS"}]},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"nat"},{int:"1"}]},{prim:"DUP",args:[{int:"6"}]},{prim:"ADD"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"4"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"4"}]},{prim:"DUP",args:[{int:"6"}]},{prim:"DUP",args:[{int:"6"}]},{prim:"MEM"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"KEY_EXISTS"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[{prim:"DUP",args:[{int:"6"}]},{prim:"EMPTY_SET",args:[{prim:"address"}]},{prim:"PUSH",args:[{prim:"bool"},{prim:"True"}]},{prim:"SENDER"},{prim:"UPDATE"},{prim:"DUP",args:[{int:"3"}]},{prim:"PAIR"},{prim:"SOME"},{prim:"DUP",args:[{int:"7"}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"5"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"5"}]}]]},{prim:"DROP",args:[{int:"1"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}],[{prim:"DUP",args:[{int:"6"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"INVALID OP ID"}]},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"AMOUNT"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"TO FUND CONTRACT, PLEASE USE THE DEFAULT ENTRYPOINT"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"4"}]},{prim:"SENDER"},{prim:"MEM"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ONLY FOR SIGNERS"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP"},{prim:"CDR"},{prim:"SENDER"},{prim:"MEM"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ALREADY APPROVED"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"7"}]},{prim:"DUP",args:[{int:"8"}]},{prim:"DUP",args:[{int:"4"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"ASSET_NOT_FOUND"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[]]},{prim:"UNPAIR"},{prim:"SWAP"},{prim:"DROP",args:[{int:"1"}]},{prim:"DUP",args:[{int:"9"}]},{prim:"DUP",args:[{int:"5"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"ASSET_NOT_FOUND"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[]]},{prim:"CDR"},{prim:"PUSH",args:[{prim:"bool"},{prim:"True"}]},{prim:"SENDER"},{prim:"UPDATE"},{prim:"SWAP"},{prim:"PAIR"},{prim:"SOME"},{prim:"DUP",args:[{int:"4"}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"2"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}]]}]]}],[{prim:"DUP",args:[{int:"6"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"INVALID OP ID"}]},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"AMOUNT"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"TO FUND CONTRACT, PLEASE USE THE DEFAULT ENTRYPOINT"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"4"}]},{prim:"SENDER"},{prim:"MEM"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ONLY FOR SIGNERS"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"5"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"CDR"},{prim:"SIZE"},{prim:"COMPARE"},{prim:"GE"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"NOT YET APPROVED"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"7"}]},{prim:"DUP",args:[{int:"3"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"ASSET_NOT_FOUND"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[]]},{prim:"CAR"},{prim:"PUSH",args:[{prim:"unit"},{prim:"Unit"}]},{prim:"EXEC"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"8"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"8"}]},{prim:"DUP",args:[{int:"7"}]},{prim:"NONE",args:[{prim:"pair",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"list",args:[{prim:"operation"}]}]},{prim:"set",args:[{prim:"address"}]}]}]},{prim:"DUP",args:[{int:"4"}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"2"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}]]}]]}],wae=e=>{return{type:"contract_origination",sender:qu(e.sender),code:bae,storage:(t=e.sender,r=e.signers.map((e=>e.val)),n=String(e.threshold),{owner:t,signers:r,threshold:n,last_op_id:"0",pending_ops:[],metadata:[]})};var t,r,n},xae=e=>{const t=_$({mode:"onBlur",defaultValues:{signers:[{val:""}],threshold:1,...Jre(e)}}),{formState:{errors:r,isValid:i},control:o,register:a,handleSubmit:s,getValues:c,watch:l}=t,u=function(e){const t=pF(),{control:r=t.control,name:i,keyName:o="id",shouldUnregister:a}=e,[s,c]=n.useState(r._getFieldArray(i)),l=n.useRef(r._getFieldArray(i).map(OF)),u=n.useRef(s),d=n.useRef(i),h=n.useRef(!1);d.current=i,u.current=s,r._names.array.add(i),e.rules&&r.register(i,e.rules),wF({next:({values:e,name:t})=>{if(t===d.current||!t){const t=rF(e,d.current);Array.isArray(t)&&(c(t),l.current=t.map(OF))}},subject:r._subjects.array});const f=n.useCallback((e=>{h.current=!0,r._updateFieldArray(i,e)}),[r,i]);return n.useEffect((()=>{if(r._state.action=!1,jF(i,r._names)&&r._subjects.state.next({...r._formState}),h.current&&(!CF(r._options.mode).isOnSubmit||r._formState.isSubmitted))if(r._options.resolver)r._executeSchema([i]).then((e=>{const t=rF(e.errors,i),n=rF(r._formState.errors,i);(n?!t&&n.type||t&&(n.type!==t.type||n.message!==t.message):t&&t.type)&&(t?EF(r._formState.errors,i,t):e$(r._formState.errors,i),r._subjects.state.next({errors:r._formState.errors}))}));else{const e=rF(r._fields,i);e&&e._f&&KF(e,r._formValues,r._options.criteriaMode===oF.all,r._options.shouldUseNativeValidation,!0).then((e=>!vF(e)&&r._subjects.state.next({errors:RF(r._formState.errors,e,i)})))}r._subjects.values.next({name:i,values:{...r._formValues}}),r._names.focus&&PF(r._fields,(e=>!!e&&e.startsWith(r._names.focus||""))),r._names.focus="",r._updateValid(),h.current=!1}),[s,i,r]),n.useEffect((()=>(!rF(r._formValues,i)&&r._updateFieldArray(i),()=>{(r._options.shouldUnregister||a)&&r.unregister(i)})),[i,r,o,a]),{swap:n.useCallback(((e,t)=>{const n=r._getFieldArray(i);QF(n,e,t),QF(l.current,e,t),f(n),c(n),r._updateFieldArray(i,n,QF,{argA:e,argB:t},!1)}),[f,i,r]),move:n.useCallback(((e,t)=>{const n=r._getFieldArray(i);YF(n,e,t),YF(l.current,e,t),f(n),c(n),r._updateFieldArray(i,n,YF,{argA:e,argB:t},!1)}),[f,i,r]),prepend:n.useCallback(((e,t)=>{const n=bF(QU(e)),o=XF(r._getFieldArray(i),n);r._names.focus=TF(i,0,t),l.current=XF(l.current,n.map(OF)),f(o),c(o),r._updateFieldArray(i,o,XF,{argA:GF(e)})}),[f,i,r]),append:n.useCallback(((e,t)=>{const n=bF(QU(e)),o=WF(r._getFieldArray(i),n);r._names.focus=TF(i,o.length-1,t),l.current=WF(l.current,n.map(OF)),f(o),c(o),r._updateFieldArray(i,o,WF,{argA:GF(e)})}),[f,i,r]),remove:n.useCallback((e=>{const t=JF(r._getFieldArray(i),e);l.current=JF(l.current,e),f(t),c(t),r._updateFieldArray(i,t,JF,{argA:e})}),[f,i,r]),insert:n.useCallback(((e,t,n)=>{const o=bF(QU(t)),a=ZF(r._getFieldArray(i),e,o);r._names.focus=TF(i,e,n),l.current=ZF(l.current,e,o.map(OF)),f(a),c(a),r._updateFieldArray(i,a,ZF,{argA:e,argB:GF(t)})}),[f,i,r]),update:n.useCallback(((e,t)=>{const n=QU(t),o=t$(r._getFieldArray(i),e,n);l.current=[...o].map(((t,r)=>t&&r!==e?l.current[r]:OF())),f(o),c([...o]),r._updateFieldArray(i,o,t$,{argA:e,argB:n},!0,!1)}),[f,i,r]),replace:n.useCallback((e=>{const t=bF(QU(e));l.current=t.map(OF),f([...t]),c([...t]),r._updateFieldArray(i,[...t],(e=>e),{},!0,!1)}),[f,i,r]),fields:n.useMemo((()=>s.map(((e,t)=>({...e,[o]:l.current[t]||OF()})))),[s,o])}}({control:o,name:"signers",rules:{minLength:1}}),d=l("signers").length,h=one({SignPage:yae,signPageExtraData:l(),FormPage:xae,defaultFormPageProps:{},toOperation:wae}),{onFormSubmitActionHandlers:[f],isLoading:p}=sne([h]),m=Mq();return(0,Yn.jsx)(mF,{...t,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{onSubmit:s(f),children:[(0,Yn.jsx)(kte,{subTitle:"Name your contract, select an owner and the signers of the contract.",title:"Create Multisig"}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsxs)(DU,{isInvalid:!!r.name,children:[(0,Yn.jsx)(T$,{children:"Name the Contract"}),(0,Yn.jsx)(M$,{children:(0,Yn.jsx)(D$,{type:"text",...a("name",{required:"Name is required",validate:e=>{if(!m(e))return"Name must be unique across all accounts and contacts"}}),placeholder:"The name is only stored locally"})}),r.name&&(0,Yn.jsx)(pte,{"data-testid":"name-error",children:r.name.message})]}),(0,Yn.jsxs)(DU,{isInvalid:!!r.sender,marginY:"24px",children:[(0,Yn.jsx)(a6,{allowUnknown:!1,inputName:"sender",label:"Select Owner"}),r.sender&&(0,Yn.jsx)(pte,{"data-testid":"owner-error",children:r.sender.message})]}),u.fields.map(((e,t)=>{var n;const i=r.signers&&r.signers[t],o=`${0===t?"Select ":""}${t+1} signer`,a=d>1?"short":"default",s="short"===a?"368px":"100%";return(0,Yn.jsxs)(DU,{display:"inline-block",width:s,marginBottom:"8px","data-testid":`signer-input-${t}`,isInvalid:!!i,children:[(0,Yn.jsx)(a6,{allowUnknown:!0,inputName:`signers.${t}.val`,label:o,size:a,style:{width:s},validate:e=>{if(!Gu(e))return"Signer must be valid TZ address";const t=c("signers").map((e=>e.val));return t.length>new Set(t).size?"Duplicate signer":void 0}}),d>1&&(0,Yn.jsx)(d6,{position:"absolute",height:"24px",marginTop:"-36px",marginLeft:"374px",background:EP.gray[500],"aria-label":"Remove","data-testid":`remove-signer-${t}`,icon:(0,Yn.jsx)(bR,{width:"12px",height:"14px",stroke:EP.gray[300]}),isRound:!0,onClick:()=>u.remove(t),size:"xs",variant:"tertiary"}),i&&(0,Yn.jsx)(pte,{"data-testid":`signer-${t}-error`,children:null===(n=i.val)||void 0===n?void 0:n.message})]},e.id)})),(0,Yn.jsx)(Si,{paddingLeft:0,onClick:()=>u.append({val:""}),variant:"specialCTA",children:"+ Add Signer"}),(0,Yn.jsxs)(DU,{marginTop:"24px",isInvalid:!!r.threshold,children:[(0,Yn.jsxs)(T$,{display:"inline",children:["Min No. of approvals:",(0,Yn.jsx)(M$,{display:"inline",marginLeft:"10px",children:(0,Yn.jsx)(D$,{width:"60px",color:"white","data-testid":"threshold-input",step:1,type:"number",...a("threshold",{required:"No. of approvals is required",max:{value:d,message:`Max no. of approvals is ${d}`},min:{value:1,message:"Min no. of approvals is 1"}})})})]}),(0,Yn.jsxs)(ZB,{display:"inline","data-testid":"max-signers",children:["out of ",d]}),r.threshold&&(0,Yn.jsx)(pte,{"data-testid":"threshold-error",children:r.threshold.message})]})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(Si,{width:"100%",isDisabled:!i,isLoading:p,size:"lg",type:"submit",children:"Review"})})]})})})},_ae=()=>{const{onOpen:e,modalElement:t}=mae();return(0,Yn.jsxs)(Xn,{flexDirection:"row-reverse",marginTop:"12px",marginBottom:"16px",children:[(0,Yn.jsxs)(Si,{paddingRight:"0",onClick:e,variant:"CTAWithIcon",children:[(0,Yn.jsx)(hj,{stroke:"currentcolor"}),(0,Yn.jsx)(ZB,{marginLeft:"4px",size:"sm",children:"Add Account"})]}),t]})},Sae=({groupLabel:e,accounts:t,balances:r})=>{const i=t[0],o="multisig"===i.type,a="mnemonic"===i.type,{openWith:s,onClose:c}=(0,n.useContext)(fM),l=(()=>{const e=OR();return t=>{e(loe({fingerPrint:t}))}})(),u=(()=>{const e=OR();return t=>{e(uoe({accountType:t}))}})(),d=jq().length===t.length;let h,f="Remove All";const p=kae(i);d?(h="Removing all your accounts will off-board you from Umami. This will remove or reset all customised settings to their defaults. Personal data (including saved contacts, password and accounts) won't be affected.",f="Remove & Off-board"):h=a?`Are you sure you want to remove all accounts derived from ${p}?`:`Are you sure you want to remove all of your ${p}?`;return(0,Yn.jsxs)(ei,{"data-testid":`account-group-${e}`,children:[(0,Yn.jsxs)(Xn,{justifyContent:"space-between",children:[(0,Yn.jsx)(ui,{marginBottom:4,"data-testid":"account-group-title",size:"md",children:e}),!o&&(0,Yn.jsx)(Zie,{onCreate:a?()=>{if(!a)throw new Error("Can't derive a non mnemonic account!");s((0,Yn.jsx)(Aae,{fingerprint:i.seedFingerPrint,onDone:c}))}:void 0,onRemove:()=>{s((0,Yn.jsx)(pie,{buttonLabel:f,description:h,onSubmit:()=>{a?l(i.seedFingerPrint):u(i.type),c()},title:"Remove All Accounts"}))}})]}),t.map((e=>(0,Yn.jsx)(ei,{marginBottom:"16px",children:(0,Yn.jsx)(fie,{account:e,balance:r[e.address.pkh]})},e.address.pkh)))]})},kae=e=>{switch(e.type){case"mnemonic":return`Seedphrase ${e.seedFingerPrint}`;case"social":return"Social Accounts";case"ledger":return"Ledger Accounts";case"secret_key":return"Secret Key Accounts";case"multisig":return"Multisig Accounts"}},Eae=()=>{const e=Iq(),t=TR((e=>e.assets.balances.mutez)),r=(0,Va.groupBy)(e,kae),{openWith:i}=(0,n.useContext)(fM),o=Object.entries(r).map((([e,r])=>(0,Yn.jsx)(Sae,{accounts:r,balances:t,groupLabel:e},e)));return(0,Yn.jsx)(Yn.Fragment,{children:(0,Yn.jsx)(ei,{height:"100%",marginRight:0,children:(0,Yn.jsxs)(ioe,{children:[(0,Va.compact)(o),(0,Yn.jsx)(Si,{width:"100%",height:"90px",background:EP.black,border:"1px dashed",borderColor:EP.gray[500],onClick:()=>i((0,Yn.jsx)(xae,{})),variant:"outline",children:(0,Yn.jsxs)(ZB,{display:"block",width:"100%",margin:5,color:EP.gray[400],textAlign:"center",children:[(0,Yn.jsx)(qj,{marginRight:1,stroke:EP.gray[450]}),"Create New Multisig"]})})]})})})},Aae=e=>{const{isLoading:t,handleAsyncAction:r}=hte(),n=YD(),i=(()=>{const e=Cq(),t=jq(),r=Lq(),n=to();return async({fingerPrint:i,password:o,label:a})=>{const s=e[i];if(!s)throw new Error(`No seedphrase found with fingerprint: ${i}`);const c=await Ic(s,o),l=t.filter((e=>"mnemonic"===e.type&&e.seedFingerPrint===i)),u=l.length,d=l[0].derivationPathPattern,h=Eq(d,u),{pk:f,pkh:p}=await P5(c,h),m=r(a,1)[0],g=Aq(f,p,h,d,i,m);n(Nc.actions.addAccount(g))}})();return(0,Yn.jsxs)(KB,{children:[(0,Yn.jsx)(YB,{}),(0,Yn.jsx)(noe,{isLoading:t,onSubmit:({name:t,password:o})=>r((async()=>{await i({fingerPrint:e.fingerprint,password:o,label:t.trim()||gae}),e.onDone(),n({description:`New account created! Successfully derived account from ${e.fingerprint}`})}),{title:"Failed to derive new account"}),subtitle:`Name the new account derived from ${e.fingerprint}`})]})},Pae=({onClose:e})=>(0,Yn.jsx)(Xn,{justifyContent:"flex-end",paddingBottom:"30px",cursor:"pointer",children:(0,Yn.jsx)(Oae,{onClose:e})}),Oae=({onClose:e})=>(0,Yn.jsxs)(Si,{onClick:e,variant:"CTAWithIcon",children:[(0,Yn.jsx)(Cj,{stroke:"currentcolor"}),(0,Yn.jsx)(ZB,{marginLeft:"4px",children:"Close"})]});function Tae(e){const t=e.target,{tagName:r,isContentEditable:n}=t;return"INPUT"!==r&&"TEXTAREA"!==r&&!0!==n}function Cae(e={}){const{ref:t,isDisabled:r,isFocusable:i,clickOnEnter:o=!0,clickOnSpace:a=!0,onMouseDown:s,onMouseUp:c,onClick:l,onKeyDown:u,onKeyUp:d,tabIndex:h,onMouseOver:f,onMouseLeave:p,...m}=e,[g,v]=(0,n.useState)(!0),[y,b]=(0,n.useState)(!1),w=function(){const e=(0,n.useRef)(new Map),t=e.current,r=(0,n.useCallback)(((t,r,n,i)=>{e.current.set(n,{type:r,el:t,options:i}),t.addEventListener(r,n,i)}),[]),i=(0,n.useCallback)(((t,r,n,i)=>{t.removeEventListener(r,n,i),e.current.delete(n)}),[]);return(0,n.useEffect)((()=>()=>{t.forEach(((e,t)=>{i(e.el,e.type,t,e.options)}))}),[i,t]),{add:r,remove:i}}(),x=g?h:h||0,_=r&&!i,S=(0,n.useCallback)((e=>{if(r)return e.stopPropagation(),void e.preventDefault();e.currentTarget.focus(),null==l||l(e)}),[r,l]),k=(0,n.useCallback)((e=>{y&&Tae(e)&&(e.preventDefault(),e.stopPropagation(),b(!1),w.remove(document,"keyup",k,!1))}),[y,w]),E=(0,n.useCallback)((e=>{if(null==u||u(e),r||e.defaultPrevented||e.metaKey)return;if(!Tae(e.nativeEvent)||g)return;const t=o&&"Enter"===e.key;if(a&&" "===e.key&&(e.preventDefault(),b(!0)),t){e.preventDefault();e.currentTarget.click()}w.add(document,"keyup",k,!1)}),[r,g,u,o,a,w,k]),A=(0,n.useCallback)((e=>{if(null==d||d(e),r||e.defaultPrevented||e.metaKey)return;if(!Tae(e.nativeEvent)||g)return;if(a&&" "===e.key){e.preventDefault(),b(!1);e.currentTarget.click()}}),[a,g,r,d]),P=(0,n.useCallback)((e=>{0===e.button&&(b(!1),w.remove(document,"mouseup",P,!1))}),[w]),O=(0,n.useCallback)((e=>{if(0!==e.button)return;if(r)return e.stopPropagation(),void e.preventDefault();g||b(!0);e.currentTarget.focus({preventScroll:!0}),w.add(document,"mouseup",P,!1),null==s||s(e)}),[r,g,s,w,P]),T=(0,n.useCallback)((e=>{0===e.button&&(g||b(!1),null==c||c(e))}),[c,g]),C=(0,n.useCallback)((e=>{r?e.preventDefault():null==f||f(e)}),[r,f]),j=(0,n.useCallback)((e=>{y&&(e.preventDefault(),b(!1)),null==p||p(e)}),[y,p]),R=xi(t,(e=>{e&&"BUTTON"!==e.tagName&&v(!1)}));return g?{...m,ref:R,type:"button","aria-disabled":_?void 0:r,disabled:_,onClick:S,onMouseDown:s,onMouseUp:c,onKeyUp:d,onKeyDown:u,onMouseOver:f,onMouseLeave:p}:{...m,ref:R,role:"button","data-active":le(y),"aria-disabled":r?"true":void 0,tabIndex:_?void 0:x,onClick:S,onMouseDown:O,onMouseUp:T,onKeyUp:A,onKeyDown:E,onMouseOver:C,onMouseLeave:j}}var[jae,Rae,Iae,Mae]=uU();var[Lae,Nae]=di({name:"TabsContext",errorMessage:"useTabsContext: `context` is undefined. Seems you forgot to wrap all tabs components within "});var[Dae,zae]=di({});function Bae(e,t){return`${e}--tab-${t}`}function Uae(e,t){return`${e}--tabpanel-${t}`}var[Fae,$ae]=di({name:"TabsStylesContext",errorMessage:"useTabsStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),Hae=ne((function(e,t){const r=li("Tabs",e),{children:i,className:o,...a}=Qt(e),{htmlProps:s,descendants:c,...l}=function(e){var t;const{defaultIndex:r,onChange:i,index:o,isManual:a,isLazy:s,lazyBehavior:c="unmount",orientation:l="horizontal",direction:u="ltr",...d}=e,[h,f]=(0,n.useState)(null!=r?r:0),[p,m]=bU({defaultValue:null!=r?r:0,value:o,onChange:i});(0,n.useEffect)((()=>{null!=o&&f(o)}),[o]);const g=Iae(),v=(0,n.useId)();return{id:`tabs-${null!=(t=e.id)?t:v}`,selectedIndex:p,focusedIndex:h,setSelectedIndex:m,setFocusedIndex:f,isManual:a,isLazy:s,lazyBehavior:c,orientation:l,descendants:g,direction:u,htmlProps:d}}(a),u=(0,n.useMemo)((()=>l),[l]),{isFitted:d,...h}=s,f={position:"relative",...r.root};return(0,Yn.jsx)(jae,{value:c,children:(0,Yn.jsx)(Lae,{value:u,children:(0,Yn.jsx)(Fae,{value:r,children:(0,Yn.jsx)(Zn.div,{className:ie("chakra-tabs",o),ref:t,...h,__css:f,children:i})})})})}));Hae.displayName="Tabs";var Vae=ne((function(e,t){const r=function(e){const{focusedIndex:t,orientation:r,direction:i}=Nae(),o=Rae(),a=(0,n.useCallback)((e=>{const n=()=>{var e;const r=o.nextEnabled(t);r&&(null==(e=r.node)||e.focus())},a=()=>{var e;const r=o.prevEnabled(t);r&&(null==(e=r.node)||e.focus())},s="horizontal"===r,c="vertical"===r,l=e.key,u={["ltr"===i?"ArrowLeft":"ArrowRight"]:()=>s&&a(),["ltr"===i?"ArrowRight":"ArrowLeft"]:()=>s&&n(),ArrowDown:()=>c&&n(),ArrowUp:()=>c&&a(),Home:()=>{var e;const t=o.firstEnabled();t&&(null==(e=t.node)||e.focus())},End:()=>{var e;const t=o.lastEnabled();t&&(null==(e=t.node)||e.focus())}},d=u[l];d&&(e.preventDefault(),d(e))}),[o,t,r,i]);return{...e,role:"tablist","aria-orientation":r,onKeyDown:de(e.onKeyDown,a)}}({...e,ref:t}),i={display:"flex",...$ae().tablist};return(0,Yn.jsx)(Zn.div,{...r,className:ie("chakra-tabs__tablist",e.className),__css:i})}));Vae.displayName="TabList";var qae=ne((function(e,t){const r=function(e){const t=Nae(),{id:r,selectedIndex:i}=t,o=j$(e.children).map(((e,t)=>(0,n.createElement)(Dae,{key:t,value:{isSelected:t===i,id:Uae(r,t),tabId:Bae(r,t),selectedIndex:i}},e)));return{...e,children:o}}(e),i=$ae();return(0,Yn.jsx)(Zn.div,{...r,width:"100%",ref:t,className:ie("chakra-tabs__tab-panels",e.className),__css:i.tabpanels})}));qae.displayName="TabPanels";var Kae=ne((function(e,t){const r=function(e){const{children:t,...r}=e,{isLazy:i,lazyBehavior:o}=Nae(),{isSelected:a,id:s,tabId:c}=zae(),l=(0,n.useRef)(!1);return a&&(l.current=!0),{tabIndex:0,...r,children:Ore({wasSelected:l.current,isSelected:a,enabled:i,mode:o})?t:null,role:"tabpanel","aria-labelledby":c,hidden:!a,id:s}}({...e,ref:t}),i=$ae();return(0,Yn.jsx)(Zn.div,{outline:"0",...r,className:ie("chakra-tabs__tab-panel",e.className),__css:i.tabpanel})}));function Wae(e){const t=gne(e);return t.setHours(0,0,0,0),t}Kae.displayName="TabPanel";function Gae(e,t){const r=Wae(e),n=Wae(t),i=r.getTime()-zne(r),o=n.getTime()-zne(n);return Math.round((i-o)/pne)}function Zae(e){return e instanceof Date||"object"===typeof e&&"[object Date]"===Object.prototype.toString.call(e)}function Yae(e){if(!Zae(e)&&"number"!==typeof e)return!1;const t=gne(e);return!isNaN(Number(t))}function Xae(e,t){return e instanceof Date?new e.constructor(t):new Date(t)}function Jae(e){const t=gne(e),r=Xae(e,0);return r.setFullYear(t.getFullYear(),0,1),r.setHours(0,0,0,0),r}function Qae(e){const t=gne(e);return Gae(t,Jae(t))+1}function ese(e,t){const r=Dne(),n=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,i=gne(e),o=i.getDay(),a=(o=i.getTime()?r+1:t.getTime()>=a.getTime()?r:r-1}function nse(e){const t=rse(e),r=Xae(e,0);return r.setFullYear(t,0,4),r.setHours(0,0,0,0),tse(r)}function ise(e){const t=gne(e),r=tse(t).getTime()-nse(t).getTime();return Math.round(r/fne)+1}function ose(e,t){const r=gne(e),n=r.getFullYear(),i=Dne(),o=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,a=Xae(e,0);a.setFullYear(n+1,0,o),a.setHours(0,0,0,0);const s=ese(a,t),c=Xae(e,0);c.setFullYear(n,0,o),c.setHours(0,0,0,0);const l=ese(c,t);return r.getTime()>=s.getTime()?n+1:r.getTime()>=l.getTime()?n:n-1}function ase(e,t){const r=Dne(),n=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,i=ose(e,t),o=Xae(e,0);o.setFullYear(i,0,n),o.setHours(0,0,0,0);return ese(o,t)}function sse(e,t){const r=gne(e),n=ese(r,t).getTime()-ase(r,t).getTime();return Math.round(n/fne)+1}function cse(e,t){return(e<0?"-":"")+Math.abs(e).toString().padStart(t,"0")}const lse={y(e,t){const r=e.getFullYear(),n=r>0?r:1-r;return cse("yy"===t?n%100:n,t.length)},M(e,t){const r=e.getMonth();return"M"===t?String(r+1):cse(r+1,2)},d:(e,t)=>cse(e.getDate(),t.length),a(e,t){const r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.toUpperCase();case"aaa":return r;case"aaaaa":return r[0];default:return"am"===r?"a.m.":"p.m."}},h:(e,t)=>cse(e.getHours()%12||12,t.length),H:(e,t)=>cse(e.getHours(),t.length),m:(e,t)=>cse(e.getMinutes(),t.length),s:(e,t)=>cse(e.getSeconds(),t.length),S(e,t){const r=t.length,n=e.getMilliseconds();return cse(Math.floor(n*Math.pow(10,r-3)),t.length)}},use="midnight",dse="noon",hse="morning",fse="afternoon",pse="evening",mse="night",gse={G:function(e,t,r){const n=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return r.era(n,{width:"abbreviated"});case"GGGGG":return r.era(n,{width:"narrow"});default:return r.era(n,{width:"wide"})}},y:function(e,t,r){if("yo"===t){const t=e.getFullYear(),n=t>0?t:1-t;return r.ordinalNumber(n,{unit:"year"})}return lse.y(e,t)},Y:function(e,t,r,n){const i=ose(e,n),o=i>0?i:1-i;if("YY"===t){return cse(o%100,2)}return"Yo"===t?r.ordinalNumber(o,{unit:"year"}):cse(o,t.length)},R:function(e,t){return cse(rse(e),t.length)},u:function(e,t){return cse(e.getFullYear(),t.length)},Q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(n);case"QQ":return cse(n,2);case"Qo":return r.ordinalNumber(n,{unit:"quarter"});case"QQQ":return r.quarter(n,{width:"abbreviated",context:"formatting"});case"QQQQQ":return r.quarter(n,{width:"narrow",context:"formatting"});default:return r.quarter(n,{width:"wide",context:"formatting"})}},q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(n);case"qq":return cse(n,2);case"qo":return r.ordinalNumber(n,{unit:"quarter"});case"qqq":return r.quarter(n,{width:"abbreviated",context:"standalone"});case"qqqqq":return r.quarter(n,{width:"narrow",context:"standalone"});default:return r.quarter(n,{width:"wide",context:"standalone"})}},M:function(e,t,r){const n=e.getMonth();switch(t){case"M":case"MM":return lse.M(e,t);case"Mo":return r.ordinalNumber(n+1,{unit:"month"});case"MMM":return r.month(n,{width:"abbreviated",context:"formatting"});case"MMMMM":return r.month(n,{width:"narrow",context:"formatting"});default:return r.month(n,{width:"wide",context:"formatting"})}},L:function(e,t,r){const n=e.getMonth();switch(t){case"L":return String(n+1);case"LL":return cse(n+1,2);case"Lo":return r.ordinalNumber(n+1,{unit:"month"});case"LLL":return r.month(n,{width:"abbreviated",context:"standalone"});case"LLLLL":return r.month(n,{width:"narrow",context:"standalone"});default:return r.month(n,{width:"wide",context:"standalone"})}},w:function(e,t,r,n){const i=sse(e,n);return"wo"===t?r.ordinalNumber(i,{unit:"week"}):cse(i,t.length)},I:function(e,t,r){const n=ise(e);return"Io"===t?r.ordinalNumber(n,{unit:"week"}):cse(n,t.length)},d:function(e,t,r){return"do"===t?r.ordinalNumber(e.getDate(),{unit:"date"}):lse.d(e,t)},D:function(e,t,r){const n=Qae(e);return"Do"===t?r.ordinalNumber(n,{unit:"dayOfYear"}):cse(n,t.length)},E:function(e,t,r){const n=e.getDay();switch(t){case"E":case"EE":case"EEE":return r.day(n,{width:"abbreviated",context:"formatting"});case"EEEEE":return r.day(n,{width:"narrow",context:"formatting"});case"EEEEEE":return r.day(n,{width:"short",context:"formatting"});default:return r.day(n,{width:"wide",context:"formatting"})}},e:function(e,t,r,n){const i=e.getDay(),o=(i-n.weekStartsOn+8)%7||7;switch(t){case"e":return String(o);case"ee":return cse(o,2);case"eo":return r.ordinalNumber(o,{unit:"day"});case"eee":return r.day(i,{width:"abbreviated",context:"formatting"});case"eeeee":return r.day(i,{width:"narrow",context:"formatting"});case"eeeeee":return r.day(i,{width:"short",context:"formatting"});default:return r.day(i,{width:"wide",context:"formatting"})}},c:function(e,t,r,n){const i=e.getDay(),o=(i-n.weekStartsOn+8)%7||7;switch(t){case"c":return String(o);case"cc":return cse(o,t.length);case"co":return r.ordinalNumber(o,{unit:"day"});case"ccc":return r.day(i,{width:"abbreviated",context:"standalone"});case"ccccc":return r.day(i,{width:"narrow",context:"standalone"});case"cccccc":return r.day(i,{width:"short",context:"standalone"});default:return r.day(i,{width:"wide",context:"standalone"})}},i:function(e,t,r){const n=e.getDay(),i=0===n?7:n;switch(t){case"i":return String(i);case"ii":return cse(i,t.length);case"io":return r.ordinalNumber(i,{unit:"day"});case"iii":return r.day(n,{width:"abbreviated",context:"formatting"});case"iiiii":return r.day(n,{width:"narrow",context:"formatting"});case"iiiiii":return r.day(n,{width:"short",context:"formatting"});default:return r.day(n,{width:"wide",context:"formatting"})}},a:function(e,t,r){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"});case"aaa":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return r.dayPeriod(n,{width:"narrow",context:"formatting"});default:return r.dayPeriod(n,{width:"wide",context:"formatting"})}},b:function(e,t,r){const n=e.getHours();let i;switch(i=12===n?dse:0===n?use:n/12>=1?"pm":"am",t){case"b":case"bb":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"bbb":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return r.dayPeriod(i,{width:"narrow",context:"formatting"});default:return r.dayPeriod(i,{width:"wide",context:"formatting"})}},B:function(e,t,r){const n=e.getHours();let i;switch(i=n>=17?pse:n>=12?fse:n>=4?hse:mse,t){case"B":case"BB":case"BBB":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"BBBBB":return r.dayPeriod(i,{width:"narrow",context:"formatting"});default:return r.dayPeriod(i,{width:"wide",context:"formatting"})}},h:function(e,t,r){if("ho"===t){let t=e.getHours()%12;return 0===t&&(t=12),r.ordinalNumber(t,{unit:"hour"})}return lse.h(e,t)},H:function(e,t,r){return"Ho"===t?r.ordinalNumber(e.getHours(),{unit:"hour"}):lse.H(e,t)},K:function(e,t,r){const n=e.getHours()%12;return"Ko"===t?r.ordinalNumber(n,{unit:"hour"}):cse(n,t.length)},k:function(e,t,r){let n=e.getHours();return 0===n&&(n=24),"ko"===t?r.ordinalNumber(n,{unit:"hour"}):cse(n,t.length)},m:function(e,t,r){return"mo"===t?r.ordinalNumber(e.getMinutes(),{unit:"minute"}):lse.m(e,t)},s:function(e,t,r){return"so"===t?r.ordinalNumber(e.getSeconds(),{unit:"second"}):lse.s(e,t)},S:function(e,t){return lse.S(e,t)},X:function(e,t,r,n){const i=(n._originalDate||e).getTimezoneOffset();if(0===i)return"Z";switch(t){case"X":return yse(i);case"XXXX":case"XX":return bse(i);default:return bse(i,":")}},x:function(e,t,r,n){const i=(n._originalDate||e).getTimezoneOffset();switch(t){case"x":return yse(i);case"xxxx":case"xx":return bse(i);default:return bse(i,":")}},O:function(e,t,r,n){const i=(n._originalDate||e).getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+vse(i,":");default:return"GMT"+bse(i,":")}},z:function(e,t,r,n){const i=(n._originalDate||e).getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+vse(i,":");default:return"GMT"+bse(i,":")}},t:function(e,t,r,n){const i=n._originalDate||e;return cse(Math.floor(i.getTime()/1e3),t.length)},T:function(e,t,r,n){return cse((n._originalDate||e).getTime(),t.length)}};function vse(e,t=""){const r=e>0?"-":"+",n=Math.abs(e),i=Math.floor(n/60),o=n%60;return 0===o?r+String(i):r+String(i)+t+cse(o,2)}function yse(e,t){if(e%60===0){return(e>0?"-":"+")+cse(Math.abs(e)/60,2)}return bse(e,t)}function bse(e,t=""){const r=e>0?"-":"+",n=Math.abs(e);return r+cse(Math.floor(n/60),2)+t+cse(n%60,2)}const wse=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},xse=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},_se={p:xse,P:(e,t)=>{const r=e.match(/(P+)(p+)?/)||[],n=r[1],i=r[2];if(!i)return wse(e,t);let o;switch(n){case"P":o=t.dateTime({width:"short"});break;case"PP":o=t.dateTime({width:"medium"});break;case"PPP":o=t.dateTime({width:"long"});break;default:o=t.dateTime({width:"full"})}return o.replace("{{date}}",wse(n,t)).replace("{{time}}",xse(i,t))}},Sse=/^D+$/,kse=/^Y+$/,Ese=["D","DD","YY","YYYY"];function Ase(e,t,r){const n=function(e,t,r){const n="Y"===e[0]?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${n} to the input \`${r}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}(e,t,r);if(console.warn(n),Ese.includes(e))throw new RangeError(n)}const Pse=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Ose=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Tse=/^'([^]*?)'?$/,Cse=/''/g,jse=/[a-zA-Z]/;function Rse(e,t,r){const n=Dne(),i=r?.locale??n.locale??Lne,o=r?.firstWeekContainsDate??r?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,a=r?.weekStartsOn??r?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,s=gne(e);if(!Yae(s))throw new RangeError("Invalid time value");const c={firstWeekContainsDate:o,weekStartsOn:a,locale:i,_originalDate:s},l=t.match(Ose).map((function(e){const t=e[0];if("p"===t||"P"===t){return(0,_se[t])(e,i.formatLong)}return e})).join("").match(Pse).map((function(n){if("''"===n)return"'";const o=n[0];if("'"===o)return function(e){const t=e.match(Tse);if(!t)return e;return t[1].replace(Cse,"'")}(n);const a=gse[o];if(a)return!r?.useAdditionalWeekYearTokens&&function(e){return kse.test(e)}(n)&&Ase(n,t,String(e)),!r?.useAdditionalDayOfYearTokens&&function(e){return Sse.test(e)}(n)&&Ase(n,t,String(e)),a(s,n,i.localize,c);if(o.match(jse))throw new RangeError("Format string contains an unescaped latin alphabet character `"+o+"`");return n})).join("");return l}function Ise(e,t,r){const n=gne(e),i=gne(t),o=Dne(),a=r?.locale??o.locale??Lne,s=r?.weekStartsOn??r?.locale?.options?.weekStartsOn??o.weekStartsOn??o.locale?.options?.weekStartsOn??0,c=Gae(n,i);if(isNaN(c))throw new RangeError("Invalid time value");let l;l=c<-6?"other":c<-1?"lastWeek":c<0?"yesterday":c<1?"today":c<2?"tomorrow":c<7?"nextWeek":"other";return Rse(n,a.formatRelative(l,n,i,{locale:a,weekStartsOn:s}),{locale:a,weekStartsOn:s})}const Mse=({title:e,children:t,small:r=!1})=>{const n=r?"md":"3xl";return(0,Yn.jsx)(Xn,{alignItems:"center",justifyContent:"center",width:"100%",height:"100%",children:(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)(ui,{padding:"42px",size:n,children:e}),(0,Yn.jsx)(Jn,{children:t})]})})},Lse=({small:e})=>(0,Yn.jsx)(Mse,{small:e,title:"No NFTs found",children:(0,Yn.jsx)(Oie,{href:"https://objkt.com",children:(0,Yn.jsx)(Si,{size:e?"md":"lg",children:"Buy your first NFT"})})}),Nse=({small:e})=>(0,Yn.jsx)(Mse,{small:e,title:"No operations found"}),Dse=({small:e,onDelegate:t})=>(0,Yn.jsx)(Mse,{small:e,title:"Currently not delegating",children:(0,Yn.jsx)(Si,{onClick:t,size:e?"md":"lg",children:"Start delegating"})}),zse=e=>{const{mode:t,operations:r,fee:n}=e,{fee:i,operations:o,estimationFailed:a,isLoading:s,form:c,signer:l,reEstimate:u,onSign:d}=Qre(n,r,t),h=o.operations[0].recipient;return(0,Yn.jsx)(mF,{...c,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(Cte,{...e,operationsType:o.type,signer:o.signer}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(T$,{children:"From"}),(0,Yn.jsx)(e6,{address:l.address}),(0,Yn.jsx)(Xn,{alignItems:"center",justifyContent:"end",marginTop:"12px",marginBottom:"24px",paddingX:"4px",children:(0,Yn.jsx)(Xn,{alignItems:"center",children:(0,Yn.jsx)(_te,{fee:i})})}),(0,Yn.jsx)(T$,{children:"To"}),(0,Yn.jsx)(e6,{address:h}),(0,Yn.jsx)(Gre,{isLoading:s,operationType:o.type,reEstimate:u,sender:o.sender})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(gte,{isDisabled:a,isLoading:s,onSubmit:d,signer:l,text:Ote(o.type,t)})})]})})})},Bse=e=>{var t;const r=null===(t=e.form)||void 0===t?void 0:t.baker,n=one({SignPage:zse,signPageExtraData:void 0,FormPage:Bse,defaultFormPageProps:e,toOperation:Use}),i=ane(Use),{onFormSubmitActionHandlers:[o,a],isLoading:s}=sne([n,i]),c=_$({mode:"onBlur",defaultValues:Jre(e)}),{formState:{isValid:l,errors:u},handleSubmit:d}=c;return(0,Yn.jsx)(mF,{...c,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsxs)(Ste,{children:[(0,Yn.jsx)(ZB,{fontWeight:"600",size:"2xl",children:r?"Change Baker":"Delegate"}),(0,Yn.jsx)(YB,{})]}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsxs)(DU,{isInvalid:!!u.sender,children:[(0,Yn.jsx)(s6,{allowUnknown:!1,inputName:"sender",isDisabled:!!e.sender,label:"From"}),u.sender&&(0,Yn.jsx)(pte,{"data-testid":"from-error",children:u.sender.message})]}),(0,Yn.jsxs)(DU,{marginTop:"24px","data-testid":"baker",isInvalid:!!u.baker,children:[(0,Yn.jsx)(c6,{allowUnknown:!0,inputName:"baker",label:"Baker"}),u.baker&&(0,Yn.jsx)(pte,{children:u.baker.message})]})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(Xre,{isLoading:s,isValid:l,onAddToBatch:d(a),onSingleSubmit:d(o)})})]})})})},Use=e=>({type:"delegation",sender:qu(e.sender),recipient:Yu(e.baker)}),Fse=e=>{const{mode:t,operations:r,fee:n}=e,{fee:i,operations:o,estimationFailed:a,isLoading:s,form:c,signer:l,reEstimate:u,onSign:d}=Qre(n,r,t);return(0,Yn.jsx)(mF,{...c,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(Cte,{...e,operationsType:o.type,signer:o.signer}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(T$,{children:"From"}),(0,Yn.jsx)(e6,{address:l.address}),(0,Yn.jsx)(Xn,{alignItems:"center",justifyContent:"end",marginTop:"12px",paddingX:"4px",children:(0,Yn.jsx)(_te,{fee:i})}),(0,Yn.jsx)(Gre,{isLoading:s,operationType:o.type,reEstimate:u,sender:o.sender})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(gte,{isDisabled:a,isLoading:s,onSubmit:d,signer:l,text:Ote(o.type,t)})})]})})})},$se=e=>{var t;const{sender:r}=e,n=null===(t=e.form)||void 0===t?void 0:t.baker,i=one({SignPage:Fse,signPageExtraData:void 0,FormPage:$se,defaultFormPageProps:{sender:r},toOperation:Hse}),o=ane(Hse),{onFormSubmitActionHandlers:[a,s],isLoading:c}=sne([i,o]),l=_$({mode:"onBlur",defaultValues:Jre({sender:r})}),{handleSubmit:u}=l;return(0,Yn.jsx)(mF,{...l,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(kte,{subTitle:"Select preview to end delegation or insert this transaction into a Batch.",title:"End delegation"}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(DU,{children:(0,Yn.jsx)(s6,{allowUnknown:!1,inputName:"sender",isDisabled:!0,label:"From"})}),(0,Yn.jsx)(T$,{marginTop:"24px",children:"Baker"}),n&&(0,Yn.jsx)(e6,{address:qu(n)})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(Xre,{isLoading:c,isValid:!0,onAddToBatch:u(s),onSingleSubmit:u(a)})})]})})})},Hse=e=>({type:"undelegation",sender:qu(e.sender)}),Vse=({label:e,value:t,...r})=>(0,Yn.jsxs)(Xn,{alignItems:"center",height:"50px",padding:"16px","data-testid":e,...r,children:[(0,Yn.jsx)(ei,{flex:1,children:(0,Yn.jsx)(ui,{color:EP.gray[400],size:"sm",children:e})}),(0,Yn.jsx)(ei,{flex:1,children:"string"===typeof t?(0,Yn.jsx)(ZB,{size:"sm",children:t}):t})]}),qse=({delegation:e,account:t})=>{const{openWith:r}=(0,n.useContext)(fM),i=Dq(),o=(()=>{const e=K5();return t=>{const r=e(t.sender),n=new Date;return{initialBalance:D5(t.amount),currentBalance:r&&D5(r),duration:`Since ${Ise(new Date(t.timestamp),n)}`}}})();if(!e)return(0,Yn.jsx)(Dse,{onDelegate:()=>{r((0,Yn.jsx)(Bse,{sender:t}))},small:!0});const{currentBalance:a,duration:s,initialBalance:c}=o(e),{sender:l,delegate:{address:u}}=e,d=i(l);return(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)(Vse,{borderBottom:`1px solid ${EP.gray[700]}`,borderTopRadius:"8px",_odd:{bg:EP.gray[800]},label:"Initial Balance:",value:c}),a&&(0,Yn.jsx)(Vse,{_odd:{bg:EP.gray[800]},label:"Current Balance:",value:a}),(0,Yn.jsx)(Vse,{borderBottom:`1px solid ${EP.gray[700]}`,_odd:{bg:EP.gray[800]},label:"Duration:",value:s}),(0,Yn.jsx)(Vse,{borderBottomRadius:"8px",_odd:{bg:EP.gray[800]},label:"Baker:",value:(0,Yn.jsx)(nie,{address:qu(e.delegate.address)})}),(0,Yn.jsxs)(Xn,{marginTop:"24px",children:[(0,Yn.jsx)(Si,{flex:1,marginRight:"16px",onClick:()=>r((0,Yn.jsx)($se,{form:{sender:l,baker:u},sender:d})),variant:"warning",children:"End Delegation"}),(0,Yn.jsx)(Si,{flex:1,onClick:()=>{r((0,Yn.jsx)(Bse,{form:{sender:l,baker:u},sender:d}))},variant:"tertiary",children:"Change Baker"})]})]})};function Kse(e){return Xj({tag:"svg",attr:{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},child:[{tag:"line",attr:{x1:"7",y1:"17",x2:"17",y2:"7"}},{tag:"polyline",attr:{points:"7 7 17 7 17 17"}}]})(e)}const Wse=({operation:e})=>{switch(e.type){case"delegation":return(0,Yn.jsxs)(ei,{margin:1,paddingLeft:5,"data-testid":"decoded-item-delegate",marginY:6,children:["Delegate to ",(0,Yn.jsx)(nie,{address:e.recipient})]});case"undelegation":return(0,Yn.jsx)(ei,{margin:1,paddingLeft:5,"data-testid":"decoded-item-undelegate",marginY:6,children:"End Delegation"});case"tez":case"fa1.2":case"fa2":return(0,Yn.jsxs)(ei,{marginY:6,children:[(0,Yn.jsx)(Gse,{operation:e}),(0,Yn.jsxs)(Xn,{alignItems:"center",margin:1,paddingLeft:5,children:[(0,Yn.jsx)(ui,{marginRight:2,color:EP.gray[400],size:"sm",children:"Send to :"}),(0,Yn.jsx)(nie,{address:e.recipient})]})]});case"contract_origination":case"contract_call":throw new Error(`${e.type} is not suported yet`)}},Gse=({operation:e})=>{const t=I5();switch(e.type){case"tez":return(0,Yn.jsxs)(Xn,{alignItems:"center","data-testid":"decoded-tez-amount",children:[(0,Yn.jsx)(LA,{as:Kse,width:5,height:5,color:EP.gray[400]}),(0,Yn.jsxs)(ZB,{marginLeft:1,textAlign:"center",children:["-",D5(e.amount)]})]});case"fa1.2":case"fa2":{const r=t(e.contract.pkh,e.tokenId);if(!r)return null;const n=rd(r),i="nft"===r.type;return(0,Yn.jsxs)(Xn,{alignItems:"center","data-testid":"decoded-fa-amount",children:[(0,Yn.jsx)(LA,{as:Kse,width:5,height:5,color:EP.gray[400]}),i?(0,Yn.jsxs)(ZB,{marginLeft:1,textAlign:"center",children:[e.amount," ",n]}):(0,Yn.jsxs)(ZB,{marginLeft:1,textAlign:"center",children:["-",ld(e.amount,r,{showSymbol:!0})]})]})}case"delegation":case"undelegation":case"contract_origination":case"contract_call":return null}},Zse=e=>Hu.string().regex(new RegExp(`^${e}$`,"i")),Yse=e=>Hu.object({prim:Zse(e)}),Xse=Hu.object({prim:Hu.literal("PUSH"),args:Hu.tuple([Hu.object({prim:Hu.literal("key_hash")}),Hu.object({bytes:Hu.string()})])}),Jse=Hu.object({prim:Hu.literal("PUSH"),args:Hu.tuple([Hu.object({prim:Hu.literal("address")}),Hu.object({bytes:Hu.string()})])}),Qse=(e,t)=>Hu.object({prim:Hu.literal("Pair"),args:Hu.tuple([e,t])}),ece=Hu.object({prim:Hu.literal("PUSH"),args:Hu.tuple([Hu.object({prim:Hu.literal("mutez")}),Hu.object({int:Hu.literal("0")})])}),tce=[Yse("TRANSFER_TOKENS"),Yse("CONS")],rce=Hu.object({prim:Hu.literal("CONTRACT")}),nce=Hu.tuple([Hu.object({prim:Hu.literal("DROP")}),Hu.object({prim:Hu.literal("NIL"),args:Hu.array(Hu.object({prim:Hu.literal("operation")}))})]),ice=Hu.object({prim:Hu.literal("PUSH"),args:Hu.tuple([Hu.object({prim:Hu.literal("mutez")}),Hu.object({int:Hu.string()})])}),oce=Hu.tuple([Xse,Yse("IMPLICIT_ACCOUNT"),ice,Yse("UNIT"),...tce]),ace=Hu.tuple([Jse,rce,Yse("IF_NONE"),ice,Yse("UNIT"),...tce]),sce=Hu.tuple([Xse,Yse("SOME"),Yse("SET_DELEGATE"),Yse("CONS")]),cce=Hu.tuple([Hu.object({prim:Hu.literal("NONE"),args:Hu.tuple([Hu.object({prim:Hu.literal("key_hash")})])}),Yse("SET_DELEGATE"),Yse("CONS")]),lce=Hu.tuple([Jse,rce,Hu.tuple([Yse("IF_NONE")]),ece,Hu.object({prim:Hu.literal("PUSH"),args:Hu.tuple([Yse("list"),Hu.array(Qse(Hu.object({bytes:Hu.string({description:"from"})}),Hu.array(Qse(Hu.object({bytes:Hu.string({description:"to"})}),Qse(Hu.object({int:Hu.string({description:"token_id"})}),Hu.object({int:Hu.string({description:"amount"})}))))))])}),...tce]),uce=Hu.tuple([Jse,rce,Hu.tuple([Yse("IF_NONE")]),ece,Hu.object({prim:Hu.literal("PUSH"),args:Hu.tuple([Yse("Pair"),Qse(Hu.object({bytes:Hu.string({description:"from"})}),Qse(Hu.object({bytes:Hu.string({description:"to"})}),Hu.object({int:Hu.string({description:"amount"})})))])}),...tce]);class dce extends Error{}const hce=e=>(42===e.length&&(e="00"+e),bc(e)),fce=[{schema:oce,parsingFn:e=>{const t=oce.parse(e),r=t[0].args[1].bytes,n=t[2].args[1].int;return{type:"tez",recipient:Yu(hce(r)),amount:n}}},{schema:ace,parsingFn:e=>{const t=ace.parse(e),r=t[0].args[1].bytes,n=t[3].args[1].int;return{type:"tez",recipient:Zu(hce(r)),amount:n}}},{schema:lce,parsingFn:e=>{const t=lce.parse(e),r=Zu(hce(t[0].args[1].bytes));return t[4].args[1].flatMap((e=>{const t=e.args[0].bytes;return e.args[1].map((e=>{const n=e.args[0].bytes,i=e.args[1].args[0].int,o=e.args[1].args[1].int;return{type:"fa2",contract:r,sender:qu(hce(t)),recipient:qu(hce(n)),tokenId:i,amount:o}}))}))}},{schema:uce,parsingFn:e=>{const t=uce.parse(e),r=t[0],n=t[4].args[1],i=n.args[0].bytes,o=n.args[1].args[0].bytes;return{type:"fa1.2",amount:n.args[1].args[1].int,contract:Zu(hce(r.args[1].bytes)),recipient:qu(hce(o)),sender:qu(hce(i)),tokenId:"0"}}},{schema:sce,parsingFn:(e,t)=>{const r=sce.parse(e);return{type:"delegation",sender:t.address,recipient:Yu(hce(r[0].args[1].bytes))}}},{schema:cce,parsingFn:(e,t)=>({type:"undelegation",sender:t.address})}],pce=(e,t,r=[])=>{if(0===e.length)return r;for(let n=0;n((e=>{nce.parse(e.slice(0,2))})(e),pce(e.slice(2),t)),gce=(e,t)=>{const r=JSON.parse(e);return mce(r,t)},vce=({rawActions:e,sender:t})=>{try{const r=gce(e,t);return(0,Yn.jsx)(ei,{children:r.map(((e,t)=>(0,Yn.jsx)(Wse,{operation:e},t)))})}catch(fde){return fde instanceof dce?(0,Yn.jsx)(yce,{unrecoginizedRawActions:e}):(0,Yn.jsxs)(ei,{children:["Invalid michelson code: ",fde.message]})}},yce=({unrecoginizedRawActions:e})=>(0,Yn.jsx)(kU,{width:"70%",marginBottom:2,allowMultiple:!0,children:(0,Yn.jsxs)(EU,{marginBottom:"2",background:"umami.gray.800",border:"none",borderRadius:"8px",children:[(0,Yn.jsx)("h2",{children:(0,Yn.jsxs)(AU,{children:[(0,Yn.jsx)(ei,{as:"span",flex:"1",paddingLeft:1,textAlign:"left",children:"Unrecognized operation"}),(0,Yn.jsx)(PU,{})]})}),(0,Yn.jsx)(RU,{overflowY:"scroll",height:"400px",paddingBottom:3,children:(0,Yn.jsx)(O$,{space:1,value:JSON.parse(e)})})]})});function bce(e){return Xj({tag:"svg",attr:{viewBox:"0 0 24 24",fill:"none"},child:[{tag:"path",attr:{d:"M13 6H11V7C11 7.55228 11.4477 8 12 8C12.5523 8 13 7.55228 13 7V6Z",fill:"currentColor"}},{tag:"path",attr:{fillRule:"evenodd",clipRule:"evenodd",d:"M6 2V4H7V7C7 9.76142 9.23858 12 12 12C9.23858 12 7 14.2386 7 17V20H6V22H18V20H17V17C17 14.2386 14.7614 12 12 12C14.7614 12 17 9.76142 17 7V4H18V2H6ZM9 4H15V7C15 8.65685 13.6569 10 12 10C10.3431 10 9 8.65685 9 7V4ZM9 17V20H15V17C15 15.3431 13.6569 14 12 14C10.3431 14 9 15.3431 9 17Z",fill:"currentColor"}}]})(e)}const wce=({icon:e,onClick:t=(()=>{}),label:r,iconWidth:n=4,iconHeight:i=4,textMargin:o="4px",iconColor:a,textFirst:s,...c})=>{const l=(0,Yn.jsx)(LA,{as:e,width:n,height:i,color:a}),u=s?{mr:o}:{ml:o},d=(0,Yn.jsx)(ZB,{...u,fontSize:"sm",children:r});return(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",color:"text.dark",_hover:{color:EP.gray[300]},cursor:"pointer",onClick:t,role:"button",...c,children:[s?d:null,l,s?null:d]})},xce=({onClickApproveExecute:e,isLoading:t=!1,signerState:r})=>{switch(r){case"awaitingApprovalByExternalSigner":return(0,Yn.jsx)(wce,{"data-testid":"multisig-signer-awaiting-approval",icon:bce,iconColor:EP.orange,iconHeight:5,iconWidth:5,label:"Awaiting Approval"});case"approved":return(0,Yn.jsx)(wce,{"data-testid":"multisig-signer-approved",icon:hre,iconColor:EP.greenL,iconHeight:5,iconWidth:5,label:"Approved"});case"executable":return(0,Yn.jsx)(Si,{"data-testid":"multisig-signer-button",isLoading:t,onClick:e,children:"Execute"});case"approvable":return(0,Yn.jsx)(Si,{"data-testid":"multisig-signer-button",isLoading:t,onClick:e,children:"Approve"})}},_ce=({signer:e,fee:t,operation:r,actionType:i,transactionCount:o})=>{const{handleAsyncAction:a}=hte(),{openWith:s}=(0,n.useContext)(fM),c=`${(0,Va.capitalize)(i)} transaction`;return(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(mie,{fee:t,signer:e,title:c,transactionCount:o}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(gte,{onSubmit:e=>a((async()=>{const{opHash:t}=await A5(r,e);s((0,Yn.jsx)(bte,{hash:t}))}),{title:`Failed ${i}`}),signer:e,text:c})})]})})},Sce=({pendingApprovals:e,sender:t,operation:r,signerAddress:i})=>{const o=G5(i),a=Rq(),{isLoading:s,handleAsyncAction:c}=hte(),{openWith:l}=(0,n.useContext)(fM),u=C5(),d=a(i.pkh),h=0===e,f=kce({approvals:r.approvals,signerAddress:i,operationIsExecutable:h,signerAccount:d});return(0,Yn.jsx)(uie,{icon:(0,Yn.jsx)(cie,{addressKind:o}),leftElement:(0,Yn.jsx)(die,{label:o.label,pkh:o.pkh}),rightElement:(0,Yn.jsx)(xce,{isLoading:s,onClickApproveExecute:()=>c((async()=>{if(!d)throw new Error("Can't approve or execute with an account you don't own");const e=h?"execute":"approve",n=Zre(d,d,[z3(t.address,e,r.id)]),i=await X3(n,u),o=gce(r.rawActions,t).length;l((0,Yn.jsx)(_ce,{actionType:e,fee:i,operation:n,signer:d,transactionCount:o}))})),signerState:f})})},kce=({signerAccount:e,operationIsExecutable:t,approvals:r,signerAddress:n})=>{const i=!!r.find((e=>e.pkh===n.pkh));return e?i&&!t?"approved":t?"executable":"approvable":i?"approved":"awaitingApprovalByExternalSigner"},Ece=({operation:e,sender:t})=>{const{signers:r,threshold:n}=t,i=Math.max(n-e.approvals.length,0);return(0,Yn.jsx)(ei,{padding:3,paddingBottom:0,background:EP.gray[800],borderRadius:6,"data-testid":"multisig-pending-operation-"+e.id,marginY:3,children:(0,Yn.jsxs)(EU,{border:"none",borderRadius:"8px",children:[(0,Yn.jsx)("h2",{children:(0,Yn.jsxs)(AU,{flex:"1",marginBottom:0,paddingBottom:0,textAlign:"left",children:[(0,Yn.jsxs)(ui,{width:"100%",size:"sm",children:["Pending #",e.id]}),(0,Yn.jsx)(PU,{})]})}),(0,Yn.jsxs)(RU,{children:[(0,Yn.jsxs)(Xn,{alignItems:"end",justifyContent:"space-between",marginY:2,children:[(0,Yn.jsx)(vce,{rawActions:e.rawActions,sender:t}),(0,Yn.jsxs)(Xn,{alignItems:"center",marginBottom:"6",children:[(0,Yn.jsx)(ui,{marginRight:1,color:EP.gray[400],size:"sm",children:"Pending Approvals:"}),(0,Yn.jsx)(ZB,{color:"w","data-testid":"pending-approvals-count",children:i})]})]}),(0,Yn.jsx)(ei,{marginY:5,children:r.map((r=>(0,Yn.jsx)(Sce,{operation:e,pendingApprovals:i,sender:t,signerAddress:r},r.pkh)))})]})]})})},Ace=({account:e})=>{const t=(()=>{const e=TR((e=>e.multisigs.pendingOperations));return t=>{var r;return[...null!==(r=e[t.pendingOperationsBigmapId])&&void 0!==r?r:[]].sort(((e,t)=>Number(t.id)-Number(e.id)))}})(),r=t(e);return 0===r.length?(0,Yn.jsx)(Mse,{small:!0,title:"No multisig pending operations"}):(0,Yn.jsx)(ei,{width:"100%",children:(0,Yn.jsx)(kU,{allowMultiple:!0,defaultIndex:(0,Va.range)(r.length),children:r.map((t=>(0,Yn.jsx)(Ece,{operation:t,sender:e},t.id)))})})},Pce=({to:e})=>(0,Yn.jsx)(Jn,{children:(0,Yn.jsxs)(Ei,{as:vT,color:EP.gray[300],stroke:EP.gray[450],_hover:{color:EP.green,stroke:EP.green},to:e,children:[(0,Yn.jsx)(lR,{display:"inline",stroke:"inherit"}),(0,Yn.jsx)(ZB,{display:"inline",size:"sm",children:"\xa0View All"})]})}),Oce=({owner:e,nfts:t,...r})=>{if(0===t.length)return(0,Yn.jsx)(Lse,{small:!0});const n=aie(t).slice(0,18);return(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(dae,{marginBottom:"35px",spacing:"12px",...r,children:n.map((t=>{const r=oie(dd(t)),n={width:"100%",height:40,fallbackSrc:oie(t.displayUri),src:r};return(0,Yn.jsx)(vT,{"data-testid":"nft-link",to:`/home/${e}/${td(t)}`,children:(0,Yn.jsx)(A$,{background:EP.gray[800],children:(0,Yn.jsxs)(P$,{overflow:"hidden",padding:"8px",borderRadius:"6px",children:[(0,Yn.jsx)(Jn,{children:(0,Yn.jsxs)(ei,{position:"relative",width:"100%",height:"100%",children:[(0,Yn.jsx)(QB,{zIndex:2,width:"100%",opacity:"0",ratio:1,children:(0,Yn.jsx)(vR,{...n,width:"100%",height:40})}),(0,Yn.jsx)(QB,{position:"absolute",zIndex:0,top:"0",width:"100%",filter:"blur(20px)",ratio:1,children:(0,Yn.jsx)(vR,{...n,width:"100%",height:40})}),(0,Yn.jsx)(QB,{position:"absolute",zIndex:1,top:"0",width:"100%",ratio:1,children:(0,Yn.jsx)(vR,{...n,width:"100%",height:40})})]})}),Number(t.balance)>1&&(0,Yn.jsx)(ZB,{position:"absolute",display:"inline",height:"20px",marginTop:"-24px",marginLeft:"4px",padding:"0 8px",borderRadius:"100px",backgroundColor:"rgba(33, 33, 33, 0.75)","data-testid":"nft-owned-count",size:"xs",children:"x"+t.balance})]})})},`${e}:${td(t)}`)}))}),t.length>18&&(0,Yn.jsx)(Pce,{to:`/nfts?accounts=${e}`})]})},Tce=n.createContext({mode:"page"}),Cce=["bakerFee","storageFee","allocationFee"],jce=({operation:e})=>{const t=(0,n.useContext)(Tce),r=zq(e.sender.address);if("drawer"===t.mode)return null;if(!r)return null;const i=Cce.reduce(((t,r)=>r in e?t.plus((0,Va.get)(e,r)||0):t),Bs(0));return i.eq(0)?null:(0,Yn.jsxs)(Jn,{children:[(0,Yn.jsx)(ui,{marginRight:"4px",color:EP.gray[450],size:"md",children:"Fee:"}),(0,Yn.jsx)(ZB,{color:EP.gray[400],"data-testid":"fee",children:D5(i)})]})},Rce=({level:e,status:t})=>{const r=B5(e);return void 0===t||"applied"===t?r?(0,Yn.jsx)(vj,{"data-testid":"checkmark"}):(0,Yn.jsx)(Hj,{"data-testid":"hourglass"}):(0,Yn.jsx)(Sj,{"data-testid":"crossed-circle"})},Ice=({children:e})=>"drawer"===(0,n.useContext)(Tce).mode?null:(0,Yn.jsx)(ZB,{marginRight:"4px",color:EP.gray[300],"data-testid":"operation-type",size:"sm",children:e});function Mce(e,t){const r=gne(e),n=gne(t),i=Lce(r,n),o=Math.abs(Gae(r,n));r.setDate(r.getDate()-i*o);const a=i*(o-Number(Lce(r,n)===-i));return 0===a?0:a}function Lce(e,t){const r=e.getFullYear()-t.getFullYear()||e.getMonth()-t.getMonth()||e.getDate()-t.getDate()||e.getHours()-t.getHours()||e.getMinutes()-t.getMinutes()||e.getSeconds()-t.getSeconds()||e.getMilliseconds()-t.getMilliseconds();return r<0?-1:r>0?1:r}const Nce=({timestamp:e})=>e?(0,Yn.jsx)(ZB,{color:EP.gray[400],"data-testid":"timestamp",size:"sm",children:Dce(e)}):null,Dce=e=>{const t=new Date,r=new Date(e);return Mce(t,r)<2?Bne(r,t,{addSuffix:!0}):Rse(r,"dd MMM yyyy")},zce=({hash:e,counter:t,transactionId:r,originationId:n,migrationId:i,children:o,...a})=>{const{tzktExplorerUrl:s}=C5();let c=s;return e?c=(0,Va.compact)([s,e,t]).join("/"):i?c=`${c}/migrations/${i}`:n?c=`${c}/originations/${n}`:r?c=`${c}/transactions/${r}`:console.warn("No id provided to TzktLink"),(0,Yn.jsx)(Ei,{"data-testid":"tzkt-link",href:c,isExternal:!0,...a,children:o})},Bce=e=>{const t=(0,n.useContext)(Tce);return!!e&&("page"===t.mode||t.selectedAddress.pkh!==e)},Uce=({operation:e})=>{var t;const r=Bce(e.target.address),n=Bce(e.sender.address),i=!r&&!n;return(0,Yn.jsxs)(Xn,{flexDirection:"column",width:"100%","data-testid":"operation-tile-contract-call",children:[(0,Yn.jsxs)(Xn,{justifyContent:"space-between",marginBottom:"10px",children:[(0,Yn.jsxs)(Jn,{children:[(0,Yn.jsx)(_j,{marginRight:"8px"}),(0,Yn.jsx)(zce,{marginRight:"8px",counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,Yn.jsxs)(ui,{size:"md",children:["Contract Call: ",null===(t=e.parameter)||void 0===t?void 0:t.entrypoint]})}),(0,Yn.jsx)(jce,{operation:e})]}),(0,Yn.jsx)(Xn,{alignSelf:"flex-end",children:(0,Yn.jsx)(Nce,{timestamp:e.timestamp})})]}),(0,Yn.jsx)(ei,{children:(0,Yn.jsxs)(Xn,{justifyContent:"space-between",children:[(0,Yn.jsxs)(Xn,{children:[r&&(0,Yn.jsxs)(Xn,{marginRight:"15px","data-testid":"to",children:[(0,Yn.jsx)(ZB,{marginRight:"6px",color:EP.gray[450],children:"To:"}),(0,Yn.jsx)(nie,{address:e.target})]}),(n||i)&&(0,Yn.jsxs)(Xn,{"data-testid":"from",children:[(0,Yn.jsx)(ZB,{marginRight:"6px",color:EP.gray[450],children:"From:"}),(0,Yn.jsx)(nie,{address:e.sender})]})]}),(0,Yn.jsxs)(Jn,{children:[(0,Yn.jsx)(Ice,{children:"Contract Call"}),(0,Yn.jsx)(Rce,{...e})]})]})})]})},Fce=({operation:e})=>{const t=!!e.newDelegate,r=t?"Delegate":"Delegation Ended",n=Bce(e.sender.address);return(0,Yn.jsxs)(Xn,{flexDirection:"column",width:"100%","data-testid":"operation-tile-delegation",children:[(0,Yn.jsxs)(Xn,{justifyContent:"space-between",marginBottom:"10px",children:[(0,Yn.jsxs)(Jn,{children:[(0,Yn.jsx)(mj,{marginRight:"8px"}),(0,Yn.jsx)(zce,{marginRight:"8px",counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,Yn.jsx)(ui,{size:"md",children:r})}),(0,Yn.jsx)(jce,{operation:e})]}),(0,Yn.jsx)(Xn,{alignSelf:"flex-end",children:(0,Yn.jsx)(Nce,{timestamp:e.timestamp})})]}),(0,Yn.jsx)(ei,{children:(0,Yn.jsxs)(Xn,{justifyContent:"space-between",children:[(0,Yn.jsxs)(Xn,{children:[t&&(0,Yn.jsxs)(Xn,{marginRight:"15px","data-testid":"to",children:[(0,Yn.jsx)(ZB,{marginRight:"6px",color:EP.gray[450],children:"To:"}),(0,Yn.jsx)(nie,{address:e.newDelegate})]}),n&&(0,Yn.jsxs)(Xn,{"data-testid":"from",children:[(0,Yn.jsx)(ZB,{marginRight:"6px",color:EP.gray[450],children:"From:"}),(0,Yn.jsx)(nie,{address:e.sender})]}),!t&&!n&&(0,Yn.jsx)(ZB,{color:EP.gray[450],children:"N/A"})]}),(0,Yn.jsxs)(Jn,{children:[(0,Yn.jsx)(Ice,{children:r}),(0,Yn.jsx)(Rce,{...e})]})]})})]})},$ce=({operation:e})=>{var t;const r=(null===(t=e.originatedContract)||void 0===t?void 0:t.codeHash)===Kte&&e.originatedContract.typeHash===qte?"Multisig Account Created":"Contract Origination",n=Bce(e.sender.address);return(0,Yn.jsxs)(Xn,{flexDirection:"column",width:"100%","data-testid":"operation-tile-origination",children:[(0,Yn.jsxs)(Xn,{justifyContent:"space-between",marginBottom:"10px",children:[(0,Yn.jsxs)(Jn,{children:[(0,Yn.jsx)(_j,{marginRight:"8px"}),(0,Yn.jsx)(zce,{marginRight:"8px",counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,Yn.jsx)(ui,{size:"md",children:r})}),(0,Yn.jsx)(jce,{operation:e})]}),(0,Yn.jsx)(Xn,{alignSelf:"flex-end",children:(0,Yn.jsx)(Nce,{timestamp:e.timestamp})})]}),(0,Yn.jsx)(ei,{children:(0,Yn.jsxs)(Xn,{justifyContent:"space-between",children:[(0,Yn.jsx)(Xn,{"data-testid":"from",children:n?(0,Yn.jsxs)(Xn,{marginRight:"15px",children:[(0,Yn.jsx)(ZB,{marginRight:"6px",color:EP.gray[450],children:"From:"}),(0,Yn.jsx)(nie,{address:e.sender})]}):(0,Yn.jsx)(ZB,{color:EP.gray[450],children:"N/A"})}),(0,Yn.jsxs)(Jn,{children:[(0,Yn.jsx)(Ice,{children:"Contract Origination"}),(0,Yn.jsx)(Rce,{...e})]})]})})]})},Hce=({isOutgoing:e,...t})=>e?(0,Yn.jsx)(aR,{"data-testid":"outgoing-arrow",...t}):(0,Yn.jsx)(Vj,{"data-testid":"incoming-arrow",...t}),Vce=({operation:e,tokenTransfer:t,token:r})=>{var n,i;const o=t.amount,a=Bce(t.to.address),s=Bce((null===(n=t.from)||void 0===n?void 0:n.address)||""),c=!a&&!s,l=zq((null===(i=t.from)||void 0===i?void 0:i.address)||""),u="nft"===r.type,d=ld(o,r,{showSymbol:!0}),h=l?EP.orange:EP.green,f=u?"white":h,p=l?"-":"+",m=u?(0,Yn.jsx)($V,{padding:"8px",background:EP.gray[700],border:"1px solid",borderColor:EP.gray[500],borderRadius:"8px","data-testid":"nft-tooltip",label:(0,Yn.jsx)(QB,{width:"170px",height:"170px",ratio:1,children:(0,Yn.jsx)(vR,{src:oie(dd(r))})}),children:(0,Yn.jsx)(Xn,{children:(0,Yn.jsxs)(zce,{marginRight:"8px",color:f,"data-testid":"title",migrationId:t.migrationId,originationId:t.originationId,transactionId:t.transactionId,children:[(0,Yn.jsxs)(ZB,{display:"inline",color:h,fontWeight:"600",children:[p,d]}),(0,Yn.jsxs)(ZB,{display:"inline",fontWeight:"600",children:[" ",rd(r)]})]})})}):(0,Yn.jsx)(zce,{marginRight:"8px",color:f,"data-testid":"title",migrationId:t.migrationId,originationId:t.originationId,transactionId:t.transactionId,children:(0,Yn.jsxs)(ZB,{display:"inline",color:h,fontWeight:"600",children:[p,d]})});return(0,Yn.jsxs)(Xn,{flexDirection:"column",width:"100%","data-testid":"operation-tile-token-transfer",children:[(0,Yn.jsxs)(Xn,{justifyContent:"space-between",marginBottom:"10px",children:[(0,Yn.jsxs)(Jn,{children:[(0,Yn.jsx)(Hce,{marginRight:"8px",isOutgoing:l}),m,e&&(0,Yn.jsx)(jce,{operation:e})]}),(0,Yn.jsx)(Xn,{alignSelf:"flex-end",children:(0,Yn.jsx)(Nce,{timestamp:t.timestamp})})]}),(0,Yn.jsx)(ei,{children:(0,Yn.jsxs)(Xn,{justifyContent:"space-between",children:[(0,Yn.jsxs)(Xn,{children:[(a||c)&&(0,Yn.jsxs)(Xn,{marginRight:"15px","data-testid":"to",children:[(0,Yn.jsx)(ZB,{marginRight:"6px",color:EP.gray[450],children:"To:"}),(0,Yn.jsx)(nie,{address:t.to})]}),s&&(0,Yn.jsxs)(Xn,{"data-testid":"from",children:[(0,Yn.jsx)(ZB,{marginRight:"6px",color:EP.gray[450],children:"From:"}),(0,Yn.jsx)(nie,{address:t.from})]})]}),(0,Yn.jsxs)(Jn,{children:[(0,Yn.jsx)(Ice,{children:"Token Transfer"}),(0,Yn.jsx)(Rce,{level:t.level})]})]})})]})},qce=({operation:e})=>{const t=zq(e.sender.address),r=D5(String(e.amount)),n=Bce(e.target.address),i=Bce(e.sender.address),o=!n&&!i,a=t?EP.orange:EP.green,s=t?"-":"+";return(0,Yn.jsxs)(Xn,{flexDirection:"column",width:"100%","data-testid":"operation-tile-transaction",children:[(0,Yn.jsxs)(Xn,{justifyContent:"space-between",marginBottom:"10px",children:[(0,Yn.jsxs)(Jn,{children:[(0,Yn.jsx)(Hce,{marginRight:"8px",isOutgoing:t}),(0,Yn.jsx)(zce,{marginRight:"8px",color:a,counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,Yn.jsxs)(ZB,{color:a,fontWeight:"600",children:[s," ",r]})}),(0,Yn.jsx)(jce,{operation:e})]}),(0,Yn.jsx)(Xn,{alignSelf:"flex-end",children:(0,Yn.jsx)(Nce,{timestamp:e.timestamp})})]}),(0,Yn.jsx)(ei,{children:(0,Yn.jsxs)(Xn,{justifyContent:"space-between",children:[(0,Yn.jsxs)(Xn,{children:[(n||o)&&(0,Yn.jsxs)(Xn,{marginRight:"15px","data-testid":"to",children:[(0,Yn.jsx)(ZB,{marginRight:"6px",color:EP.gray[450],children:"To:"}),(0,Yn.jsx)(nie,{address:qu(e.target.address)})]}),i&&(0,Yn.jsxs)(Xn,{"data-testid":"from",children:[(0,Yn.jsx)(ZB,{marginRight:"6px",color:EP.gray[450],children:"From:"}),(0,Yn.jsx)(nie,{address:qu(e.sender.address)})]})]}),(0,Yn.jsxs)(Jn,{children:[(0,Yn.jsx)(Ice,{children:"Transaction"}),(0,Yn.jsx)(Rce,{...e})]})]})})]})},Kce=({operation:e})=>{const t=(()=>{const e=TR((e=>e.assets.transfers.tokens));return t=>e[t]})();switch(e.type){case"token_transfer":{const t=ed(e.token);return t?(0,Yn.jsx)(Vce,{token:t,tokenTransfer:e}):(console.warn(`Could not parse token transfer ${e.id}`),null)}case"transaction":{const r=!!e.parameter,n=t(e.id);if(n){const t=ed(n.token);return t?(0,Yn.jsx)(Vce,{operation:e,token:t,tokenTransfer:n}):(0,Yn.jsx)(qce,{operation:e})}return r?(0,Yn.jsx)(Uce,{operation:e}):(0,Yn.jsx)(qce,{operation:e})}case"delegation":return(0,Yn.jsx)(Fce,{operation:e});case"origination":return(0,Yn.jsx)($ce,{operation:e})}},Wce=({owner:e,operations:t})=>{if(0===t.length)return(0,Yn.jsx)(Nse,{small:!0});const r=t.slice(0,20);return(0,Yn.jsxs)(Yn.Fragment,{children:[r.map(((e,t)=>(0,Yn.jsxs)(ei,{height:"90px",children:[(0,Yn.jsx)(Kce,{operation:e}),t20&&(0,Yn.jsx)(Pce,{to:`/operations?accounts=${e}`})]})},Gce=["KT1XnTn74bUtxHfDtBmm2bGZAQfhPbvKWR8o","KT1PWx2mnDueood7fEmfbBDKx1D9BAnnXitn","KT1XRPEPXbZK25r3Htzp2o1x7xdMMmfocKNW","KT1XRPEPXbZK25r3Htzp2o1x7xdMMmfocKNW","KT1XRPEPXbZK25r3Htzp2o1x7xdMMmfocKNW","KT1K9gCRgaLRFKTErYt1wVxA3Frb9FjasjTV","KT1Ha4yFVeyzw6KRAdkzq6TxDHB97KG4pZe8","KT1JBNFcB5tiycHNdYGYCtR3kk6JaJysUCi8","KT1Xobej4mc6XgEjDoJoHtTKgbD1ELMvcQuL","KT1JVjgXPMMSaa6FkzeJcgb8q9cUaLmwaJUX","KT193D4vozYnhGJQVtw7CoxxqphqUEEwK6Vb","KT1LN4LPSqTMS7Sd2CJw4bbDGRkMv2t68Fy9","KT1914CUZ7EegAFPbfgQMRkw8Uz5mYkEz2ui","KT1UsSfaXyqcjSVPeiD7U1bWgKy3taYN7NWY","KT19ovJhcsUn4YU8Q5L3BGovKSixfbWcecEA","KT1TgmD7kXQzofpuc9VbTRMdZCS2e6JDuTtc","KT1F1mn2jbqQCJcsNgYKVAQjvenecNMY2oPK","KT1ErKVqEhG9jxXgUG2KGLW3bNM7zXHX8SDF","KT1A5P4ejnLix13jtadsfV9GCnXLMNnab8UT","KT1AM3PV1cwmGRw28DVTgsjjsjHvmL6z4rGh","KT1UsSfaXyqcjSVPeiD7U1bWgKy3taYN7NWY","KT1SjXiUX63QvdNMcM2m492f7kuf8JxXRLp4","KT1MZg99PxMDEENwB4Fi64xkqAVh5d1rv8Z9","KT1UsSfaXyqcjSVPeiD7U1bWgKy3taYN7NWY","KT1XTxpQvo7oRCqp85LikEZgAZ22uDxhbWJv","KT1VaEsVNiBoA56eToEK6n6BcPgh1tdx9eXi"],Zce=({token:e,...t})=>{const r=Gce.includes(e.contract);return(0,Yn.jsxs)(Xn,{alignItems:"center",children:[(0,Yn.jsx)(ZB,{...t,marginRight:"4px",children:rd(e)}),r&&(0,Yn.jsx)(_R,{})]})},Yce=({owner:e,tokens:t})=>{if(0===t.length)return(0,Yn.jsx)(Mse,{small:!0,title:"No tokens found"});const r=t.slice(0,20);return(0,Yn.jsxs)(ei,{children:[r.map((e=>(0,Yn.jsx)(Xce,{token:e},td(e)))),t.length>20&&(0,Yn.jsx)(Pce,{to:`/tokens?accounts=${e}`})]})},Xce=({token:e})=>{const t=ld(e.balance,e,{showSymbol:!1});return(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-around",height:20,borderBottom:`1px solid ${EP.gray[800]}`,"data-testid":"token-tile",children:[(0,Yn.jsxs)(Xn,{alignItems:"center",flex:1,children:[(0,Yn.jsx)(yR,{width:"38px",background:EP.gray[500],borderRadius:"4px",contract:e.contract}),(0,Yn.jsx)(ei,{marginLeft:"16px",children:(0,Yn.jsx)(Zce,{fontWeight:600,"data-testid":"token-name",token:e})})]}),(0,Yn.jsx)(ui,{"data-testid":"token-balance",size:"lg",children:t})]})},Jce=(e,t)=>`${e.tzktExplorerUrl}/${t}`,Qce=e=>{const t=C5(),[r,i]=(0,n.useState)([]),[o,a]=(0,n.useState)(!0),[s,c]=(0,n.useState)(!0),{isLoading:l,handleAsyncAction:u}=hte(),[d,h]=(0,n.useState)(e),f=OR(),[p,m]=(0,n.useState)(0);(0,n.useEffect)((()=>{const e=setInterval((()=>{u((async()=>{var e;const n=null===(e=r[0])||void 0===e?void 0:e.id,o=await ele(f,t,d,{lastId:n,sort:"asc"});i((e=>(0,Va.uniqBy)([...o.reverse(),...e],(e=>e.id))))}))}),15e3);return()=>clearInterval(e)}),[p]);const g=d.join(",");(0,n.useEffect)((()=>{i([]),a(!0),u((async()=>{const e=await ele(f,t,g.split(","));i(e),a(e.length>0),m((e=>e+1))})).finally((()=>{c(!1)}))}),[t,g,f]);return{operations:tle(r),isFirstLoad:s,isLoading:l,hasMore:o,loadMore:async()=>{var e;const n=null===(e=r[r.length-1])||void 0===e?void 0:e.id;if(n)return u((async()=>{const e=await ele(f,t,d,{lastId:n});a(e.length>0),i((t=>[...t,...e]))}))},setAddresses:h}},ele=async(e,t,r,n)=>{const i=await(async(e,t,r)=>{var n;const i=(null===r||void 0===r?void 0:r.limit)||100,o=null!==(n=null===r||void 0===r?void 0:r.sort)&&void 0!==n?n:"desc",a={limit:i,offset:null!==r&&void 0!==r&&r.lastId?{cr:r.lastId}:void 0,sort:{[o]:"id"}},s=await Promise.all([x5(e,t,a),w5(e,t,a),_5(e,t,a),S5(e,t,a)]);return(0,Va.sortBy)(s.flat(),(e=>"asc"===o?e.id:-e.id)).slice(0,i)})(r,t,n),o=i.filter((e=>"transaction"===e.type)).map((e=>e.id)),a=await(async(e,t)=>0===e.length?[]:v5((()=>f5({transactionId:{in:[e.join(",")]}},{baseUrl:t.tzktApiUrl}))))(o,t),s=[...a,...i.filter((e=>"token_transfer"===e.type))];return e(Ed.updateTokenTransfers(s)),e(Gd.addTokens({network:t,tokens:s.map((e=>e.token))})),i},tle=e=>{const t=[];for(let r=0;r{i(l)}))}),id:Bae(a,l),role:"tab",tabIndex:d?0:-1,type:"button","aria-selected":d,"aria-controls":Uae(a,l),onFocus:t?void 0:de(e.onFocus,(()=>{s(l),!o&&(!t||!r)&&i(l)}))}}({...e,ref:t}),i={outline:"0",display:"flex",alignItems:"center",justifyContent:"center",...r.tab};return(0,Yn.jsx)(Zn.button,{...n,className:ie("chakra-tabs__tab",e.className),__css:i})}));rle.displayName="Tab";const nle=({children:e,...t})=>(0,Yn.jsx)(rle,{...t,fontSize:"sm",paddingX:3,children:e}),ile=({tokens:e,nfts:t,account:r,delegation:n})=>{const i="multisig"===r.type,o=C5(),{operations:a,isFirstLoad:s}=Qce([r.address.pkh]);return(0,Yn.jsxs)(Hae,{flexDirection:"column",display:"flex",overflow:"hidden",width:"100%",marginTop:"60px","data-testid":"asset-panel",children:[(0,Yn.jsxs)(Vae,{justifyContent:"space-between","data-testid":"asset-panel-tablist",children:[(0,Yn.jsxs)(Xn,{children:[i&&(0,Yn.jsx)(nle,{"data-testid":"account-card-pending-tab",children:"Pending"}),(0,Yn.jsx)(nle,{children:"Operations"}),(0,Yn.jsx)(nle,{children:"Delegation"}),(0,Yn.jsx)(nle,{children:"NFTs"}),(0,Yn.jsx)(nle,{children:"Tokens"})]}),(0,Yn.jsx)(Oie,{href:Jce(o,r.address.pkh),children:(0,Yn.jsxs)(Si,{paddingRight:0,variant:"CTAWithIcon",children:[(0,Yn.jsx)(ZB,{marginRight:"7px",size:"sm",children:"View on Tzkt"}),(0,Yn.jsx)(jj,{stroke:"currentcolor"})]})})]}),(0,Yn.jsxs)(qae,{height:"100%",paddingBottom:"60px",children:[i&&(0,Yn.jsx)(Kae,{overflowX:"hidden",height:"100%",paddingTop:"24px",paddingBottom:"60px","data-testid":"account-card-pending-tab-panel",children:(0,Yn.jsx)(Ace,{account:r})}),(0,Yn.jsx)(Kae,{overflowX:"hidden",height:"100%",paddingTop:"24px",paddingBottom:"60px","data-testid":"account-card-operations-tab",children:(0,Yn.jsx)(Tce.Provider,{value:{mode:"drawer",selectedAddress:r.address},children:s?(0,Yn.jsx)(ZB,{color:EP.gray[500],textAlign:"center",children:"Loading..."}):(0,Yn.jsx)(Wce,{operations:a,owner:r.address.pkh})})}),(0,Yn.jsx)(Kae,{overflowX:"hidden",paddingTop:"24px","data-testid":"account-card-delegation-tab",children:(0,Yn.jsx)(qse,{account:r,delegation:n})}),(0,Yn.jsx)(Kae,{overflowX:"hidden",height:"100%",paddingTop:"24px","data-testid":"account-card-nfts-tab",children:(0,Yn.jsx)(Oce,{columns:3,nfts:t,owner:r.address.pkh})}),(0,Yn.jsx)(Kae,{overflowX:"hidden",height:"100%",paddingTop:"24px","data-testid":"account-card-tokens-tab",children:(0,Yn.jsx)(Yce,{owner:r.address.pkh,tokens:e})})]})]})};var ole=ne((function(e,t){const{spacing:r="0.5rem",spacingX:i,spacingY:o,children:a,justify:s,direction:c,align:l,className:u,shouldWrapChildren:d,...h}=e,f=(0,n.useMemo)((()=>d?n.Children.map(a,((e,t)=>(0,Yn.jsx)(ale,{children:e},t))):a),[a,d]);return(0,Yn.jsx)(Zn.div,{ref:t,className:ie("chakra-wrap",u),...h,children:(0,Yn.jsx)(Zn.ul,{className:"chakra-wrap__list",__css:{display:"flex",flexWrap:"wrap",justifyContent:s,alignItems:l,flexDirection:c,listStyleType:"none",gap:r,columnGap:i,rowGap:o,padding:"0"},children:f})})}));ole.displayName="Wrap";var ale=ne((function(e,t){const{className:r,...n}=e;return(0,Yn.jsx)(Zn.li,{ref:t,__css:{display:"flex",alignItems:"flex-start"},className:ie("chakra-wrap__listitem",r),...n})}));ale.displayName="WrapItem";const sle=({signers:e})=>(0,Yn.jsx)(ei,{width:"100%",marginTop:"60px",padding:"15px",background:EP.gray[800],borderRadius:"8px",children:(0,Yn.jsx)(kU,{allowToggle:!0,defaultIndex:0,children:(0,Yn.jsxs)(EU,{background:EP.gray[800],border:"none",borderRadius:"8px",children:[(0,Yn.jsx)("h2",{children:(0,Yn.jsxs)(AU,{as:"span",flex:"1",textAlign:"left",children:[(0,Yn.jsx)(ui,{width:"100%",size:"sm",children:"Approvers"}),(0,Yn.jsx)(PU,{cursor:"pointer"})]})}),(0,Yn.jsx)(RU,{children:(0,Yn.jsx)(ole,{marginTop:"3","data-testid":"multisig-tag-section",children:e.map((e=>(0,Yn.jsx)(ale,{padding:"3px 8px",borderRadius:"100px",children:(0,Yn.jsx)(nie,{address:e})},e.pkh)))})})]})})}),cle=({account:e})=>{const t=OR(),{onClose:r}=(0,n.useContext)(fM),i=({name:n})=>{t(((e,t)=>(r,n)=>{const{accounts:i,multisigs:o,contacts:a}=n(),s="multisig"===e.type,c=i.items.map((e=>e.label));[c,o.items.map((e=>e.label)),Object.values(a).map((e=>e.name))].flat().includes(t)||r(s?Fd.actions.setName({newName:t,account:e}):Nc.actions.renameAccount({newName:t,account:e}))})(e,n)),r()},{handleSubmit:o,formState:{isValid:a,errors:s},register:c,reset:l}=_$({mode:"onBlur",defaultValues:{name:e.label}}),u=Iq(),{nameExistsInContacts:d}=Oq();return(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{onSubmit:o((({name:e})=>{i({name:e.trim()}),l()})),children:[(0,Yn.jsx)(kte,{subTitle:"Edit your account name here.",title:"Edit Name"}),(0,Yn.jsx)(YB,{}),(0,Yn.jsx)(XB,{children:(0,Yn.jsxs)(DU,{isInvalid:!!s.name,marginY:"20px",children:[(0,Yn.jsx)(T$,{children:"Account name"}),(0,Yn.jsx)(D$,{type:"text",...c("name",{required:"Name is required",validate:e=>u.map((e=>e.label)).includes(e)?"Name already used in accounts":!d(e.trim())||"Name already registered in address book"}),placeholder:"Enter contact's name"}),s.name&&(0,Yn.jsx)(FU,{"data-testid":"name-error",children:s.name.message})]})}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(Si,{width:"100%",marginBottom:"8px",isDisabled:!a,size:"lg",type:"submit",children:"Save"})})]})})},lle=({account:e})=>{const{openWith:t,onClose:r}=(0,n.useContext)(fM),i=OR(),o=VO(),a=1===jq().length;let s;switch(e.type){case"secret_key":s=soe;break;case"ledger":case"social":s=()=>Nc.actions.removeAccount(e)}let c="Are you sure you want to remove this account?",l="Remove Account";a&&(c="Removing your last account will off-board you from Umami. This will remove or reset all customized settings to their defaults. Personal data (including saved contacts, password and accounts) won't be affected.",l="Remove & Off-board");const u=s?()=>{t((0,Yn.jsx)(pie,{buttonLabel:l,description:c,onSubmit:()=>{i(s(e)),r(),o("/")},title:"Remove Account"}))}:void 0;return(0,Yn.jsx)(Kre,{onRemove:u,onRename:()=>t((0,Yn.jsx)(cle,{account:e}))})},ule=e=>(0,Yn.jsxs)(ei,{textAlign:e.center?"center":"initial",children:[(0,Yn.jsx)(ui,{size:"md",children:D5(e.balance)}),null!==e.dollarBalance&&(0,Yn.jsxs)(ZB,{marginTop:"6px",color:EP.gray[400],size:"sm",children:["$",e.dollarBalance.toFixed(2)]})]}),dle=({icon:e,label:t,onClick:r=(()=>{})})=>(0,Yn.jsxs)(ei,{className:"account-drawer-cta-button",color:EP.gray[300],textAlign:"center",_hover:{color:EP.green},cursor:"pointer",marginX:"24px",onClick:r,children:[(0,Yn.jsx)(d6,{className:"account-drawer-cta-button-icon",marginBottom:"8px","aria-label":"button",icon:e,size:"lg",variant:"circle_without_color"}),(0,Yn.jsx)(ZB,{cursor:"pointer",size:"sm",children:t})]}),hle=({onSend:e,onReceive:t=(()=>{}),balance:r,dollarBalance:i,tokens:o,nfts:a,account:s})=>{const c="multisig"===s.type,{openWith:l}=(0,n.useContext)(fM),u=G5(s.address),d=C5(),[h,f]=(0,n.useState)(null),{handleAsyncAction:p}=hte();return(0,n.useEffect)((()=>{p((async()=>{const e=await((e,t)=>w5([e],t,{limit:1,sort:{desc:"id"}}).then(Va.first))(s.address.pkh,d);e&&f((e=>{var t,r,n;const i=null===(t=e.sender)||void 0===t?void 0:t.address,o=null===(r=e.newDelegate)||void 0===r?void 0:r.address,a=e.timestamp,s=e.id,c=e.amount;return null==i||null==o||null==a||null==s||null==c?null:{sender:i,timestamp:a,id:s,amount:new Bs(c),delegate:{address:o,alias:(null===(n=e.newDelegate)||void 0===n?void 0:n.alias)||void 0}}})(e))}))}),[s.address.pkh,d]),(0,Yn.jsxs)(Xn,{zIndex:2,alignItems:"center",flexDirection:"column",height:"100%","data-testid":`account-card-${s.address.pkh}`,children:[(0,Yn.jsx)(cie,{addressKind:u}),(0,Yn.jsx)(ui,{marginTop:"24px",size:"md",children:s.label}),(0,Yn.jsxs)(Xn,{alignItems:"center",marginTop:"8px",marginBottom:"30px",children:[(0,Yn.jsx)(nie,{marginRight:"4px",address:s.address,mode:{type:"no_icons"}}),(0,Yn.jsx)(lle,{account:s})]}),r&&(0,Yn.jsx)(ule,{balance:r,center:!0,dollarBalance:i}),(0,Yn.jsxs)(Jn,{marginTop:"34px",children:[(0,Yn.jsx)(dle,{icon:(0,Yn.jsx)(aR,{width:"24px",height:"24px",stroke:"currentcolor"}),label:"Send",onClick:e}),(0,Yn.jsx)(dle,{icon:(0,Yn.jsx)(Vj,{width:"24px",height:"24px",stroke:"currentcolor"}),label:"Receive",onClick:t}),!c&&(0,Yn.jsx)(dle,{icon:(0,Yn.jsx)(cR,{stroke:"currentcolor"}),label:"Buy tez",onClick:()=>{l((0,Yn.jsx)(Une,{recipient:s.address.pkh}))}}),(0,Yn.jsx)(dle,{icon:(0,Yn.jsx)(mj,{width:"24px",height:"24px",stroke:"currentcolor"}),label:"Delegate",onClick:()=>{l((0,Yn.jsx)(Bse,{form:h?{baker:h.delegate.address,sender:s.address.pkh}:void 0,sender:s}))}})]}),c&&(0,Yn.jsx)(sle,{signers:s.signers}),(0,Yn.jsx)(ile,{account:s,delegation:h,nfts:a,tokens:o})]})};var fle=r(2083);const ple=({pkh:e})=>{const t=Nq()(e);return(0,Yn.jsxs)(KB,{children:[(0,Yn.jsx)(kte,{subTitle:"You can receive tez or other digital assets by scanning or sharing this QR code",title:"Receive"}),(0,Yn.jsx)(XB,{children:(0,Yn.jsx)(Xn,{alignItems:"center",justifyContent:"space-between",flexDirection:"column",children:(0,Yn.jsx)(ei,{padding:"8px",background:"white",borderRadius:"8px",children:(0,Yn.jsx)(fle.QRCode,{size:232,value:e})})})}),(0,Yn.jsx)(HU,{children:(0,Yn.jsxs)(ei,{width:"100%",children:[t&&(0,Yn.jsx)(ui,{textAlign:"center",marginY:2,children:t.label}),(0,Yn.jsx)(Xn,{justifyContent:"center",width:"100%",children:(0,Yn.jsx)(nie,{address:qu(e),mode:{type:"no_icons"}})})]})})]})},mle=({account:e})=>{const t=K5(),r=(()=>{const e=V5(),t=K5();return r=>{const n=t(r);if(null==n)return null;const i=N5(n);return e(i)}})(),i=$5(),o=H5(),{openWith:a}=(0,n.useContext)(fM),s=t(e.address.pkh),c=r(e.address.pkh),l=i(e.address.pkh),u=aie(o(e.address.pkh));return(0,Yn.jsx)(hle,{account:e,balance:s,dollarBalance:c,nfts:u,onReceive:()=>{a((0,Yn.jsx)(ple,{pkh:e.address.pkh}))},onSend:()=>a((0,Yn.jsx)(cne,{sender:e})),tokens:l})};var gle=r(4606),vle=r.n(gle);const yle=({nft:e,style:t})=>{const r=e.metadata.attributes;return r&&0!==r.length?(0,Yn.jsxs)(EU,{background:EP.gray[800],"data-testid":"attributes-section",style:t,children:[(0,Yn.jsxs)(AU,{paddingY:"16px",children:[(0,Yn.jsx)(ui,{flex:"1",textAlign:"left",size:"md",children:"Attributes"}),(0,Yn.jsx)(PU,{})]}),(0,Yn.jsx)(RU,{children:(0,Yn.jsx)(ole,{marginLeft:"0",spacing:"10px",children:r.map((e=>(0,Yn.jsx)(ale,{flex:"1","data-testid":"nft-attribute",children:(0,Yn.jsx)(A$,{width:"160px",height:"128px",marginBottom:"2px",background:EP.gray[700],children:(0,Yn.jsxs)(P$,{padding:"16px",children:[(0,Yn.jsx)(ZB,{color:EP.gray[400],size:"sm",children:e.name}),(0,Yn.jsx)(ui,{size:"md",children:e.value})]})})},e.name)))})})]}):null},ble=({text:e,maxLength:t})=>e.length<=t?(0,Yn.jsx)(ZB,{"data-testid":"truncated-text",children:e}):(0,Yn.jsx)($V,{label:e,children:(0,Yn.jsx)(ZB,{"data-testid":"truncated-text",children:M5(e,t)})}),wle=({url:e,...t})=>(0,Yn.jsx)("a",{"data-testid":"tzkt-link",href:e,rel:"noopener noreferrer",target:"_blank",children:(0,Yn.jsx)(yte,{...t})}),xle=({nft:e})=>{if(!e.metadata.creators||0===e.metadata.creators.length)return(0,Yn.jsx)(Yn.Fragment,{children:"-"});const t=e.metadata.creators[0];return t.startsWith("tz")?(0,Yn.jsx)(nie,{marginRight:1,address:qu(t)}):(0,Yn.jsx)(ble,{maxLength:15,text:t})},_le=({nft:e,style:t})=>{const r=(e=>{const t=e.metadata.royalties;if(!t)return[];const r=Math.pow(10,Number(t.decimals)),n=Object.entries(t.shares).map((([e,t])=>({address:e,share:100*Number(t)/r})));return n.sort(((e,t)=>e.sharee+t.share),0).toFixed(2),i=C5();return(0,Yn.jsxs)(EU,{background:EP.gray[800],style:t,children:[(0,Yn.jsxs)(AU,{paddingY:"16px",children:[(0,Yn.jsx)(ui,{flex:"1",textAlign:"left",size:"md",children:"Properties"}),(0,Yn.jsx)(PU,{})]}),(0,Yn.jsx)(RU,{children:(0,Yn.jsx)(nre,{children:(0,Yn.jsx)(are,{variant:"stripped",children:(0,Yn.jsxs)(sre,{fontSize:"14px",children:[(0,Yn.jsxs)(cre,{background:EP.gray[900],borderColor:EP.gray[700],borderBottomWidth:"1px",borderRadius:"8px",children:[(0,Yn.jsx)(lre,{width:"20%",padding:"16px 0 16px 15px",paddingRight:"0",color:EP.gray[400],borderTopLeftRadius:"8px","data-testid":"nft-editions",children:"Editions:"}),(0,Yn.jsx)(lre,{width:"30%",padding:"16px 0 16px 5px",borderColor:EP.gray[700],borderRightWidth:"1px","data-testid":"nft-editions-value",children:e.totalSupply||"?"}),(0,Yn.jsx)(lre,{width:"20%",padding:"16px 0 16px 15px",color:EP.gray[400],children:"Token ID:"}),(0,Yn.jsx)(lre,{width:"30%",padding:"16px 0 16px 5px",borderTopRightRadius:"8px",children:e.tokenId})]}),(0,Yn.jsxs)(cre,{background:EP.gray[800],borderColor:EP.gray[700],borderBottomWidth:"1px",children:[(0,Yn.jsxs)(lre,{padding:"16px 0 16px 15px",color:EP.gray[400],"data-testid":"nft-royalty",children:["Royalties",r.length>1?" ("+r.length+")":"",":"]}),(0,Yn.jsx)(lre,{padding:"16px 0 16px 5px",borderColor:EP.gray[700],borderRightWidth:"1px","data-testid":"nft-royalty-value",children:r.length>0?n+"%":"-"}),(0,Yn.jsx)(lre,{padding:"16px 0 16px 15px",color:EP.gray[400],"data-testid":"nft-mime",children:"MIME type:"}),(0,Yn.jsx)(lre,{width:"30%",padding:"16px 0 16px 5px","data-testid":"nft-mime-value",children:hd(e)||"-"})]}),(0,Yn.jsxs)(cre,{background:EP.gray[900],borderColor:EP.gray[700],borderBottomWidth:"1px",children:[(0,Yn.jsx)(lre,{padding:"16px 0 16px 15px",color:EP.gray[400],children:"Contract:"}),(0,Yn.jsx)(lre,{padding:"16px 0 16px 5px",borderColor:EP.gray[700],borderRightWidth:"1px",children:(0,Yn.jsx)(nie,{marginRight:1,address:qu(e.contract)})}),(0,Yn.jsx)(lre,{padding:"16px 0 16px 15px",color:EP.gray[400],children:"Metadata:"}),(0,Yn.jsxs)(lre,{width:"30%",padding:"16px 0 16px 5px",children:["TzKT ",(0,Yn.jsx)(wle,{url:fd(e,i)})]})]}),(0,Yn.jsxs)(cre,{background:EP.gray[800],borderColor:EP.gray[700],borderBottomWidth:"1px",children:[(0,Yn.jsx)(lre,{padding:"16px 0 16px 15px",color:EP.gray[400],"data-testid":"nft-creator",children:"Creator:"}),(0,Yn.jsx)(lre,{padding:"16px 0 16px 5px",borderColor:EP.gray[700],borderRightWidth:"1px","data-testid":"nft-creator-value",children:(0,Yn.jsx)(xle,{nft:e})}),(0,Yn.jsx)(lre,{padding:"16px 0 16px 15px",color:EP.gray[400],children:"License:"}),(0,Yn.jsx)(lre,{width:"30%",padding:"16px 0 16px 5px",children:(0,Yn.jsx)(ble,{maxLength:15,text:e.metadata.rights||"-"})})]})]})})})})]})},Sle=({nft:e})=>{const t=e.metadata.tags;return t&&0!==t.length?(0,Yn.jsx)(ole,{marginTop:"20px","data-testid":"tags-section",children:t.map((e=>(0,Yn.jsx)(ale,{padding:"3px 8px",background:EP.gray[600],borderRadius:"100px",children:(0,Yn.jsx)(ZB,{color:EP.gray[400],"data-testid":"nft-tag",children:e})},e)))}):null},kle=({nft:e})=>{const t=oie(dd(e)),r=oie(e.displayUri);return(0,Yn.jsx)(ei,{width:"100%","aria-label":"nft",children:(0,Yn.jsxs)(Xn,{alignItems:"center",height:"60px",padding:3,background:EP.gray[800],borderRadius:"4px","data-testid":"nft-name",children:[(0,Yn.jsx)(QB,{width:"30px",height:"30px",ratio:1,children:(0,Yn.jsx)(vR,{fallbackSrc:r,src:t})}),e.metadata.name&&(0,Yn.jsx)(ui,{marginLeft:4,size:"sm",children:M5(e.metadata.name,45)})]})})},Ele=e=>{const{mode:t,operations:r,fee:n,data:{nft:i}}=e,{fee:o,operations:a,estimationFailed:s,isLoading:c,form:l,signer:u,reEstimate:d,onSign:h}=Qre(n,r,t),{recipient:f}=a.operations[0];return(0,Yn.jsx)(mF,{...l,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(Cte,{...e,operationsType:a.type,signer:a.signer}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(Xn,{marginBottom:"12px",children:(0,Yn.jsx)(kle,{nft:i})}),(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",marginY:"12px",paddingX:"4px",children:[(0,Yn.jsxs)(Xn,{alignItems:"center",children:[(0,Yn.jsx)(ui,{marginRight:"4px",color:EP.gray[450],size:"sm",children:"Owned:"}),(0,Yn.jsx)(ZB,{color:EP.gray[400],"data-testid":"nft-owned",size:"sm",children:i.balance})]}),(0,Yn.jsx)(_te,{fee:o})]}),(0,Yn.jsxs)(Xn,{alignItems:"center",marginTop:"12px",marginBottom:"24px",children:[(0,Yn.jsx)(ui,{marginRight:"12px",size:"md",children:"Quantity:"}),(0,Yn.jsx)(Jn,{width:"100px",height:"48px",background:EP.gray[800],borderRadius:"4px",children:(0,Yn.jsxs)(ZB,{textAlign:"center",children:[a.operations[0].amount," out of ",i.balance]})})]}),(0,Yn.jsx)(T$,{children:"From"}),(0,Yn.jsx)(e6,{marginBottom:"24px",address:a.sender.address}),(0,Yn.jsx)(T$,{children:"To"}),(0,Yn.jsx)(e6,{address:f}),(0,Yn.jsx)(Gre,{isLoading:c,operationType:a.type,reEstimate:d,sender:a.sender})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(gte,{isDisabled:s,isLoading:c,onSubmit:h,signer:u,text:Ote(a.type,t)})})]})})})},Ale=e=>{const{nft:t}=e,r=one({SignPage:Ele,signPageExtraData:{nft:t},FormPage:Ale,defaultFormPageProps:e,toOperation:Ple(t)}),n=ane(Ple(t)),{onFormSubmitActionHandlers:[i,o],isLoading:a}=sne([r,n]),s=_$({mode:"onBlur",defaultValues:{quantity:1,...Jre(e)}}),{formState:{isValid:c,errors:l},register:u,handleSubmit:d}=s;return(0,Yn.jsx)(mF,{...s,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(kte,{}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(Xn,{marginBottom:"12px",children:(0,Yn.jsx)(kle,{nft:e.nft})}),(0,Yn.jsxs)(Xn,{alignItems:"center",children:[(0,Yn.jsx)(ui,{marginRight:"4px",color:EP.gray[450],size:"sm",children:"Owned:"}),(0,Yn.jsx)(ZB,{color:EP.gray[400],"data-testid":"nft-owned",size:"sm",children:t.balance})]}),(0,Yn.jsxs)(DU,{marginTop:"24px",isInvalid:!!l.quantity,children:[(0,Yn.jsx)(T$,{children:(0,Yn.jsxs)(Xn,{alignItems:"center",children:[(0,Yn.jsx)(ui,{marginRight:"8px",size:"md",children:"Quantity:"}),(0,Yn.jsxs)(Xn,{alignItems:"center",children:[(0,Yn.jsx)(M$,{width:"75px",children:(0,Yn.jsx)(D$,{width:"60px",color:"white","data-testid":"quantity-input",step:1,type:"number",...u("quantity",{required:"Quantity is required",max:{value:t.balance,message:`Max quantity is ${t.balance}`},min:{value:1,message:"Min quantity is 1"}})})}),(0,Yn.jsxs)(ZB,{"data-testid":"out-of-nft",children:["out of ",t.balance]})]})]})}),l.quantity&&(0,Yn.jsx)(pte,{"data-testid":"quantity-error",children:l.quantity.message})]}),(0,Yn.jsxs)(DU,{marginTop:"24px",isInvalid:!!l.sender,children:[(0,Yn.jsx)(s6,{allowUnknown:!1,inputName:"sender",isDisabled:!0,label:"From"}),l.sender&&(0,Yn.jsx)(pte,{"data-testid":"from-error",children:l.sender.message})]}),(0,Yn.jsxs)(DU,{marginTop:"24px",isInvalid:!!l.recipient,children:[(0,Yn.jsx)(o6,{allowUnknown:!0,inputName:"recipient",label:"To"}),l.recipient&&(0,Yn.jsx)(pte,{"data-testid":"recipient-error",children:l.recipient.message})]})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(Xre,{isLoading:a,isValid:c,onAddToBatch:d(o),onSingleSubmit:d(i)})})]})})})},Ple=e=>t=>({type:"fa2",sender:qu(t.sender),recipient:qu(t.recipient),contract:Zu(e.contract),tokenId:e.tokenId,amount:t.quantity.toString()}),Ole=({nft:e,ownerPkh:t})=>{var r;const i=oie(ud(e)),o=oie(e.displayUri),a=Dq(),{openWith:s}=(0,n.useContext)(fM),c=null===(r=hd(e))||void 0===r?void 0:r.startsWith("video/"),l=nd(e),u={border:"none",borderRadius:"8px",marginBottom:"20px"};return(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)(A$,{width:"534px",height:"534px",background:EP.gray[800],children:(0,Yn.jsxs)(P$,{padding:"24px",children:[(0,Yn.jsx)(ei,{position:"relative",width:"486px",height:"486px",children:c?(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(ei,{position:"absolute",zIndex:1,width:"486px",height:"486px",children:(0,Yn.jsx)(vle(),{width:"100%",height:"100%",loop:!0,playing:!0,url:i})}),(0,Yn.jsx)(vR,{position:"absolute",zIndex:0,top:"0",width:"486px",height:"486px",objectFit:"contain",alt:l,filter:"blur(20px)",src:o})]}):(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(vR,{position:"absolute",zIndex:1,width:"486px",height:"486px",objectFit:"contain",alt:l,fallbackSrc:o,src:i}),(0,Yn.jsx)(vR,{position:"absolute",zIndex:0,top:"0",width:"486px",height:"486px",objectFit:"contain",alt:l,"data-testid":"nft-image",fallbackSrc:o,filter:"blur(20px)",src:i})]})}),Number(e.balance)>1&&(0,Yn.jsx)(ZB,{position:"absolute",display:"inline",height:"24px",marginTop:"-38px",marginLeft:"16px",borderRadius:"100px",backgroundColor:"rgba(33, 33, 33, 0.75)","data-testid":"nft-owned-count",paddingX:"8px",children:"x"+e.balance})]})}),(0,Yn.jsx)(Sle,{nft:e}),l&&(0,Yn.jsx)(ui,{marginTop:"16px",marginBottom:"14px","data-testid":"nft-name",size:"lg",children:l}),e.metadata.description&&(0,Yn.jsx)(ZB,{color:EP.gray[400],"data-testid":"nft-description",size:"sm",children:e.metadata.description}),(0,Yn.jsx)(Si,{marginTop:"20px",onClick:()=>{s((0,Yn.jsx)(Ale,{nft:e,sender:a(t)}))},children:"Send"}),(0,Yn.jsxs)(kU,{marginTop:"32px",allowMultiple:!0,children:[(0,Yn.jsx)(yle,{nft:e,style:u}),(0,Yn.jsx)(_le,{nft:e,style:u}),(0,Yn.jsxs)(EU,{background:EP.gray[800],style:u,children:[(0,Yn.jsxs)(AU,{paddingY:"16px",children:[(0,Yn.jsx)(ui,{flex:"1",textAlign:"left",size:"md",children:"JSON"}),(0,Yn.jsx)(PU,{})]}),(0,Yn.jsx)(RU,{children:(0,Yn.jsx)(O$,{value:e})})]})]})]})},Tle=({ownerPkh:e,nft:t,onCloseDrawer:r})=>(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",paddingBottom:"22px",color:EP.gray[400],"data-testid":"nft-drawer-body",children:[(0,Yn.jsx)(nie,{address:qu(e)}),(0,Yn.jsx)(Oae,{onClose:r})]}),(0,Yn.jsx)(Ole,{nft:t,ownerPkh:e})]}),Cle=()=>{const[e,t]=(0,n.useState)(null),{ownerPkh:r,nftId:i}=function(){let{matches:e}=n.useContext(BO),t=e[e.length-1];return t?t.params:{}}(),o=U5(),a=r&&(0,Va.get)(o,[r],[]).find((e=>td(e)===i)),s=!!a,{isOpen:c,onOpen:l,onClose:u}=DR({defaultIsOpen:s}),{isOpen:d}=pM(),h=VO(),f=(0,n.useCallback)((()=>{t(null),u(),h("/home")}),[u,h]);(0,n.useEffect)((()=>{const e=e=>{"Escape"===e.key&&f()};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}),[f]);const p=(0,n.useMemo)((()=>({selectedAccount:e,selectAccount:e=>{t(e),l()}})),[e,l]);return(0,Yn.jsxs)(lie.Provider,{value:p,children:[(0,Yn.jsx)(Eae,{}),(0,Yn.jsxs)(Hie,{autoFocus:!1,blockScrollOnMount:!d,isOpen:c,onClose:f,placement:"right",children:[(0,Yn.jsx)(mI,{}),(0,Yn.jsxs)(Gie,{children:[s&&(0,Yn.jsx)(XB,{children:(0,Yn.jsx)(Tle,{nft:a,onCloseDrawer:f,ownerPkh:r})}),!s&&e&&(0,Yn.jsxs)(XB,{overflow:"hidden",background:hie({account:e,radius:"350px",opacity:"35",mainBackgroundColor:"transparent",left:"300px",top:"-125px"}),children:[(0,Yn.jsx)(Pae,{onClose:f}),(0,Yn.jsx)(mle,{account:e})]})]})]})]})},jle=()=>(0,Yn.jsxs)(Xn,{flexDirection:"column",height:"100%",children:[(0,Yn.jsx)(Hne,{title:"Accounts"}),(0,Yn.jsx)(Xn,{flex:1,minHeight:1,children:(0,Yn.jsxs)(Xn,{flexDirection:"column",flex:1,marginRight:"12px",paddingBottom:"12px",children:[(0,Yn.jsx)(_ae,{}),(0,Yn.jsx)(ei,{flex:1,overflow:"hidden",borderRadius:"8px",children:(0,Yn.jsx)(Cle,{})})]})})]}),Rle=({nft:e,onClick:t})=>{const r=oie(dd(e)),n=oie(e.displayUri),i=e.metadata.name,o=$O().pathname.includes(`${e.owner}/${td(e)}`),a={width:"100%",minWidth:"242px",minHeight:"242px",objectFit:"contain",aspectRatio:"1",fallbackSrc:n,src:r};return(0,Yn.jsx)(A$,{minWidth:"274px",borderRadius:"8px",cursor:"pointer","data-testid":"nft-card",onClick:t,children:(0,Yn.jsxs)(P$,{padding:"16px",background:EP.gray[900],border:"1px solid",borderColor:o?EP.orangeL:"transparent",borderRadius:"8px",_hover:{bg:EP.gray[700],borderColor:`${EP.gray[500]}`},children:[(0,Yn.jsx)(Jn,{children:(0,Yn.jsxs)(ei,{position:"relative",width:"100%",children:[(0,Yn.jsx)(vR,{...a,zIndex:2,opacity:"0"}),(0,Yn.jsx)(vR,{...a,position:"absolute",zIndex:0,top:"0",filter:"blur(20px)"}),(0,Yn.jsx)(vR,{...a,position:"absolute",zIndex:1,top:"0","data-testid":"nft-image"})]})}),Number(e.balance)>1&&(0,Yn.jsx)(ZB,{position:"absolute",display:"inline",height:"24px",marginTop:"-36px",marginLeft:"10px",paddingTop:"1px",fontSize:"14px",borderRadius:"full",backgroundColor:"rgba(33, 33, 33, 0.75)","data-testid":"nft-owned-count",paddingX:"8px",children:"x"+e.balance}),(0,Yn.jsx)(ei,{overflow:"hidden","data-testid":"nft-card-name",children:(0,Yn.jsx)(ui,{overflow:"hidden",marginTop:"15px",marginBottom:"8px",fontSize:"sm",whiteSpace:"nowrap",textOverflow:"ellipsis",children:i})}),(0,Yn.jsx)(nie,{address:qu(e.owner)})]})})},Ile=({nftsByOwner:e,onSelect:t})=>{const r=Object.entries(e).flatMap((([e,t])=>(t||[]).map((t=>({owner:e,...t})))));let n="repeat(auto-fit, minmax(min(100%/2, max(274px, 100%/7)), 1fr))";return r.length<3&&(n=`repeat(auto-fit, min(100% / ${r.length} - 16px, 450px))`),(0,Yn.jsx)(dae,{gridTemplateColumns:n,marginBottom:"16px",minChildWidth:"340px",spacing:"16px",children:aie(r).map((e=>(0,Yn.jsx)(Rle,{nft:e,onClick:()=>t(e)},`${e.owner}:${td(e)}`)))})};function Mle(e={}){const{timeout:t=300,preventDefault:r=(()=>!0)}=e,[i,o]=(0,n.useState)([]),a=(0,n.useRef)(),s=()=>{a.current&&(clearTimeout(a.current),a.current=null)};return(0,n.useEffect)((()=>s),[]),function(e){return n=>{if("Backspace"===n.key){const e=[...i];return e.pop(),void o(e)}if(function(e){const{key:t}=e;return 1===t.length||t.length>1&&/[^a-zA-Z0-9]/.test(t)}(n)){const c=i.concat(n.key);r(n)&&(n.preventDefault(),n.stopPropagation()),o(c),e(c.join("")),s(),a.current=setTimeout((()=>{o([]),a.current=null}),t)}}}}function Lle(e,t){var r;const n=e.target;if(n){if(!Nle(n).contains(n))return!1}return!(null==(r=t.current)?void 0:r.contains(n))}function Nle(e){var t;return null!=(t=null==e?void 0:e.ownerDocument)?t:document}var[Dle,zle,Ble,Ule]=uU(),[Fle,$le]=di({strict:!1,name:"MenuContext"});function Hle(e){var t;return null!=(t=null==e?void 0:e.ownerDocument)?t:document}function Vle(e){return Hle(e).activeElement===e}function qle(e={}){const{id:t,closeOnSelect:r=!0,closeOnBlur:i=!0,initialFocusRef:o,autoSelect:a=!0,isLazy:s,isOpen:c,defaultIsOpen:l,onClose:u,onOpen:d,placement:h="bottom-start",lazyBehavior:f="unmount",direction:p,computePositionOnMount:m=!1,...g}=e,v=(0,n.useRef)(null),y=(0,n.useRef)(null),b=Ble(),w=(0,n.useCallback)((()=>{requestAnimationFrame((()=>{var e;null==(e=v.current)||e.focus({preventScroll:!1})}))}),[]),x=(0,n.useCallback)((()=>{const e=setTimeout((()=>{var e;if(o)null==(e=o.current)||e.focus();else{const e=b.firstEnabled();e&&C(e.index)}}));L.current.add(e)}),[b,o]),_=(0,n.useCallback)((()=>{const e=setTimeout((()=>{const e=b.lastEnabled();e&&C(e.index)}));L.current.add(e)}),[b]),S=(0,n.useCallback)((()=>{null==d||d(),a?x():w()}),[a,x,w,d]),{isOpen:k,onOpen:E,onClose:A,onToggle:P}=LV({isOpen:c,defaultIsOpen:l,onClose:u,onOpen:S});!function(e){const{ref:t,handler:r,enabled:i=!0}=e,o=pb(r),a=(0,n.useRef)({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}).current;(0,n.useEffect)((()=>{if(!i)return;const e=e=>{Lle(e,t)&&(a.isPointerDown=!0)},n=e=>{a.ignoreEmulatedMouseEvents?a.ignoreEmulatedMouseEvents=!1:a.isPointerDown&&r&&Lle(e,t)&&(a.isPointerDown=!1,o(e))},s=e=>{a.ignoreEmulatedMouseEvents=!0,r&&a.isPointerDown&&Lle(e,t)&&(a.isPointerDown=!1,o(e))},c=Nle(t.current);return c.addEventListener("mousedown",e,!0),c.addEventListener("mouseup",n,!0),c.addEventListener("touchstart",e,!0),c.addEventListener("touchend",s,!0),()=>{c.removeEventListener("mousedown",e,!0),c.removeEventListener("mouseup",n,!0),c.removeEventListener("touchstart",e,!0),c.removeEventListener("touchend",s,!0)}}),[r,t,o,a,i])}({enabled:k&&i,ref:v,handler:e=>{var t;(null==(t=y.current)?void 0:t.contains(e.target))||A()}});const O=IV({...g,enabled:k||m,placement:h,direction:p}),[T,C]=(0,n.useState)(-1);mb((()=>{k||C(-1)}),[k]),Are(v,{focusRef:y,visible:k,shouldFocus:!0});const j=xre({isOpen:k,ref:v}),[R,I]=function(e,...t){const r=(0,n.useId)(),i=e||r;return(0,n.useMemo)((()=>t.map((e=>`${e}-${i}`))),[i,t])}(t,"menu-button","menu-list"),M=(0,n.useCallback)((()=>{E(),w()}),[E,w]),L=(0,n.useRef)(new Set([]));(0,n.useEffect)((()=>{const e=L.current;return()=>{e.forEach((e=>clearTimeout(e))),e.clear()}}),[]);const N=(0,n.useCallback)((()=>{E(),x()}),[x,E]),D=(0,n.useCallback)((()=>{E(),_()}),[E,_]),z=(0,n.useCallback)((()=>{var e,t;const r=Hle(v.current),n=null==(e=v.current)?void 0:e.contains(r.activeElement);if(!(k&&!n))return;const i=null==(t=b.item(T))?void 0:t.node;null==i||i.focus({preventScroll:!0})}),[k,T,b]),B=(0,n.useRef)(null);return{openAndFocusMenu:M,openAndFocusFirstItem:N,openAndFocusLastItem:D,onTransitionEnd:z,unstable__animationState:j,descendants:b,popper:O,buttonId:R,menuId:I,forceUpdate:O.forceUpdate,orientation:"vertical",isOpen:k,onToggle:P,onOpen:E,onClose:A,menuRef:v,buttonRef:y,focusedIndex:T,closeOnSelect:r,closeOnBlur:i,autoSelect:a,setFocusedIndex:C,isLazy:s,lazyBehavior:f,initialFocusRef:o,rafId:B}}function Kle(e){var t;return function(e){var t;if(!function(e){return null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}(e))return!1;const r=null!=(t=e.ownerDocument.defaultView)?t:window;return e instanceof r.HTMLElement}(e)&&!!(null==(t=null==e?void 0:e.getAttribute("role"))?void 0:t.startsWith("menuitem"))}function Wle(e={},t=null){const{onMouseEnter:r,onMouseMove:i,onMouseLeave:o,onClick:a,onFocus:s,isDisabled:c,isFocusable:l,closeOnSelect:u,type:d,...h}=e,f=$le(),{setFocusedIndex:p,focusedIndex:m,closeOnSelect:g,onClose:v,menuRef:y,isOpen:b,menuId:w,rafId:x}=f,_=(0,n.useRef)(null),S=`${w}-menuitem-${(0,n.useId)()}`,{index:k,register:E}=Ule({disabled:c&&!l}),A=(0,n.useCallback)((e=>{null==r||r(e),c||p(k)}),[p,k,c,r]),P=(0,n.useCallback)((e=>{null==i||i(e),_.current&&!Vle(_.current)&&A(e)}),[A,i]),O=(0,n.useCallback)((e=>{null==o||o(e),c||p(-1)}),[p,c,o]),T=(0,n.useCallback)((e=>{null==a||a(e),Kle(e.currentTarget)&&(null!=u?u:g)&&v()}),[v,a,g,u]),C=(0,n.useCallback)((e=>{null==s||s(e),p(k)}),[p,s,k]),j=k===m,R=c&&!l;mb((()=>{if(b)return j&&!R&&_.current?(x.current&&cancelAnimationFrame(x.current),x.current=requestAnimationFrame((()=>{var e;null==(e=_.current)||e.focus({preventScroll:!0}),x.current=null}))):y.current&&!Vle(y.current)&&y.current.focus({preventScroll:!0}),()=>{x.current&&cancelAnimationFrame(x.current)}}),[j,R,y,b]);const I=Cae({onClick:T,onFocus:C,onMouseEnter:A,onMouseMove:P,onMouseLeave:O,ref:xi(E,_,t),isDisabled:c,isFocusable:l});return{...h,...I,type:null!=d?d:I.type,id:S,role:"menuitem",tabIndex:j?0:-1}}var[Gle,Zle]=di({name:"MenuStylesContext",errorMessage:"useMenuStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),Yle=e=>{const{children:t}=e,r=li("Menu",e),i=Qt(e),{direction:o}=ni(),{descendants:a,...s}=qle({...i,direction:o}),c=(0,n.useMemo)((()=>s),[s]),{isOpen:l,onClose:u,forceUpdate:d}=c;return(0,Yn.jsx)(Dle,{value:a,children:(0,Yn.jsx)(Fle,{value:c,children:(0,Yn.jsx)(Gle,{value:r,children:se(t,{isOpen:l,onClose:u,forceUpdate:d})})})})};Yle.displayName="Menu";var Xle=ne(((e,t)=>{const r=Zle();return(0,Yn.jsx)(Zn.button,{ref:t,...e,__css:{display:"inline-flex",appearance:"none",alignItems:"center",outline:0,...r.button}})})),Jle=ne(((e,t)=>{const{children:r,as:i,...o}=e,a=function(e={},t=null){const r=$le(),{onToggle:i,popper:o,openAndFocusFirstItem:a,openAndFocusLastItem:s}=r,c=(0,n.useCallback)((e=>{const t=e.key,r={Enter:a,ArrowDown:a,ArrowUp:s}[t];r&&(e.preventDefault(),e.stopPropagation(),r(e))}),[a,s]);return{...e,ref:xi(r.buttonRef,t,o.referenceRef),id:r.buttonId,"data-active":le(r.isOpen),"aria-expanded":r.isOpen,"aria-haspopup":"menu","aria-controls":r.menuId,onClick:de(e.onClick,i),onKeyDown:de(e.onKeyDown,c)}}(o,t),s=i||Xle;return(0,Yn.jsx)(s,{...a,className:ie("chakra-menu__menu-button",e.className),children:(0,Yn.jsx)(Zn.span,{__css:{pointerEvents:"none",flex:"1 1 auto",minW:0},children:e.children})})}));Jle.displayName="MenuButton";var Qle={enter:{visibility:"visible",opacity:1,scale:1,transition:{duration:.2,ease:[.4,0,.2,1]}},exit:{transitionEnd:{visibility:"hidden"},opacity:0,scale:.8,transition:{duration:.1,easings:"easeOut"}}},eue=Zn(CA.div),tue=ne((function(e,t){var r,i;const{rootProps:o,motionProps:a,...s}=e,{isOpen:c,onTransitionEnd:l,unstable__animationState:u}=$le(),d=function(e={},t=null){const r=$le();if(!r)throw new Error("useMenuContext: context is undefined. Seems you forgot to wrap component within ");const{focusedIndex:i,setFocusedIndex:o,menuRef:a,isOpen:s,onClose:c,menuId:l,isLazy:u,lazyBehavior:d,unstable__animationState:h}=r,f=zle(),p=Mle({preventDefault:e=>" "!==e.key&&Kle(e.target)}),m=(0,n.useCallback)((e=>{if(!e.currentTarget.contains(e.target))return;const t=e.key,r={Tab:e=>e.preventDefault(),Escape:c,ArrowDown:()=>{const e=f.nextEnabled(i);e&&o(e.index)},ArrowUp:()=>{const e=f.prevEnabled(i);e&&o(e.index)}},n=r[t];if(n)return e.preventDefault(),void n(e);const a=p((e=>{const t=function(e,t,r,n){if(null==t)return n;if(!n)return e.find((e=>r(e).toLowerCase().startsWith(t.toLowerCase())));const i=e.filter((e=>r(e).toLowerCase().startsWith(t.toLowerCase())));if(i.length>0){let t;return i.includes(n)?(t=i.indexOf(n)+1,t===i.length&&(t=0),i[t]):(t=e.indexOf(i[0]),e[t])}return n}(f.values(),e,(e=>{var t,r;return null!=(r=null==(t=null==e?void 0:e.node)?void 0:t.textContent)?r:""}),f.item(i));if(t){const e=f.indexOf(t.node);o(e)}}));Kle(e.target)&&a(e)}),[f,i,p,c,o]),g=(0,n.useRef)(!1);s&&(g.current=!0);const v=Ore({wasSelected:g.current,enabled:u,mode:d,isSelected:h.present});return{...e,ref:xi(a,t),children:v?e.children:null,tabIndex:-1,role:"menu",id:l,style:{...e.style,transformOrigin:"var(--popper-transform-origin)"},"aria-orientation":"vertical",onKeyDown:de(e.onKeyDown,m)}}(s,t),h=function(e={}){const{popper:t,isOpen:r}=$le();return t.getPopperProps({...e,style:{visibility:r?"visible":"hidden",...e.style}})}(o),f=Zle();return(0,Yn.jsx)(Zn.div,{...h,__css:{zIndex:null!=(i=e.zIndex)?i:null==(r=f.list)?void 0:r.zIndex},children:(0,Yn.jsx)(eue,{variants:Qle,initial:!1,animate:c?"enter":"exit",__css:{outline:0,...f.list},...a,className:ie("chakra-menu__menu-list",d.className),...d,onUpdate:l,onAnimationComplete:he(u.onComplete,d.onAnimationComplete)})})}));tue.displayName="MenuList";var rue=ne(((e,t)=>{const r=Zle();return(0,Yn.jsx)(Zn.span,{ref:t,...e,__css:r.command,className:"chakra-menu__command"})}));rue.displayName="MenuCommand";var nue=ne(((e,t)=>{const{type:r,...i}=e,o=Zle(),a=i.as||r?null!=r?r:void 0:"button",s=(0,n.useMemo)((()=>({textDecoration:"none",color:"inherit",userSelect:"none",display:"flex",width:"100%",alignItems:"center",textAlign:"start",flex:"0 0 auto",outline:0,...o.item})),[o.item]);return(0,Yn.jsx)(Zn.button,{ref:t,type:a,...i,__css:s})})),iue=e=>{const{className:t,children:r,...i}=e,o=Zle(),a=n.Children.only(r),s=(0,n.isValidElement)(a)?(0,n.cloneElement)(a,{focusable:"false","aria-hidden":!0,className:ie("chakra-menu__icon",a.props.className)}):null,c=ie("chakra-menu__icon-wrapper",t);return(0,Yn.jsx)(Zn.span,{className:c,...i,__css:o.icon,children:s})};iue.displayName="MenuIcon";var oue=ne(((e,t)=>{const{icon:r,iconSpacing:n="0.75rem",command:i,commandSpacing:o="0.75rem",children:a,...s}=e,c=Wle(s,t),l=r||i?(0,Yn.jsx)("span",{style:{pointerEvents:"none",flex:1},children:a}):a;return(0,Yn.jsxs)(nue,{...c,className:ie("chakra-menu__menuitem",c.className),children:[r&&(0,Yn.jsx)(iue,{fontSize:"0.8em",marginEnd:n,children:r}),l,i&&(0,Yn.jsx)(rue,{marginStart:o,children:i})]})}));oue.displayName="MenuItem";const aue=({accounts:e,onSelect:t})=>(0,Yn.jsx)(tue,{zIndex:"docked",overflowY:"scroll",maxHeight:"300px",padding:0,background:EP.gray[900],children:e.map((e=>(0,Yn.jsx)(oue,{width:"100%",minHeight:"48px",padding:"5px",background:EP.gray[700],"aria-label":e.label,onClick:()=>{t(e)},value:e.address.pkh,children:(0,Yn.jsx)(e6,{width:"370px",height:"40px",padding:"5px",background:EP.gray[700],borderRadius:"4px",_hover:{background:EP.gray[500]},cursor:"pointer",address:e.address})},e.address.pkh)))}),sue=()=>{const e=Iq(),[t,r]=wT(),n=t.getAll("accounts"),i=e.filter((e=>n.includes(e.address.pkh))),o=(0,Va.differenceBy)(e,i,(e=>e.address.pkh)),a=i.length===e.length;return{selectedAccounts:0===i.length?e:i,accountsFilter:(0,Yn.jsxs)(Jn,{children:[(0,Yn.jsx)(ei,{alignSelf:"flex-start",children:(0,Yn.jsxs)(Yle,{children:[(0,Yn.jsx)(Jle,{as:Si,maxHeight:"26px",paddingLeft:0,fontWeight:"normal",_hover:{bg:"none"},_active:{bg:"none"},"data-testid":"account-filter",isDisabled:a,marginY:"16px",rightIcon:(0,Yn.jsx)(Qoe,{}),variant:"ghost",children:"Filter by Account"}),(0,Yn.jsx)(aue,{accounts:o,onSelect:e=>{r({...t,accounts:[...i,e].map((e=>e.address.pkh))})}})]})}),(0,Yn.jsx)(ole,{width:"100%",children:i.map((e=>(0,Yn.jsx)(nie,{address:e.address,"data-testid":"account-pill",mode:{type:"removable",onRemove:()=>{r({...t,accounts:n.filter((t=>t!==e.address.pkh))})}}},e.address.pkh)))})]})}},cue=()=>{const e=U5(),{isOpen:t}=pM(),{accountsFilter:r,selectedAccounts:i}=sue(),[o,a]=(0,n.useState)(void 0);(0,n.useEffect)((()=>{const e=e=>{"Escape"===e.key&&a(void 0)};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}),[]);const s=(0,Va.pick)(e,i.map((e=>e.address.pkh))),c=(0,Va.sumBy)(Object.values(s).flat(),(e=>Number((null===e||void 0===e?void 0:e.balance)||0))),l=(0,Va.every)(s,(e=>!e||0===e.length));return(0,Yn.jsxs)(Xn,{flexDirection:"column",height:"100%",children:[(0,Yn.jsx)(Hne,{subtitle:`(${c})`,title:"NFTs"}),r,l?(0,Yn.jsx)(Lse,{}):(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(ei,{overflowY:"scroll",children:(0,Yn.jsx)(Ile,{nftsByOwner:s,onSelect:e=>a(e)})}),(0,Yn.jsxs)(Hie,{autoFocus:!1,blockScrollOnMount:!t,isOpen:!!o,onClose:()=>a(void 0),placement:"right",children:[(0,Yn.jsx)(mI,{}),(0,Yn.jsx)(Gie,{children:(0,Yn.jsx)(XB,{children:o&&(0,Yn.jsx)(Tle,{nft:o,onCloseDrawer:()=>a(void 0),ownerPkh:o.owner})})})]})]})]})},lue=()=>{const{accountsFilter:e,selectedAccounts:t}=sue(),{operations:r,loadMore:i,hasMore:o,setAddresses:a,isLoading:s}=Qce(t.map((e=>e.address.pkh))),c=t.map((e=>e.address.pkh)).join(",");(0,n.useEffect)((()=>{a(c.split(","))}),[a,c]);const l=(0,Yn.jsx)(ZB,{color:EP.gray[500],textAlign:"center",paddingY:"20px",children:"Loading..."});return(0,Yn.jsxs)(Xn,{flexDirection:"column",height:"100%",children:[(0,Yn.jsx)(Hne,{title:"Operations"}),e,0===r.length&&s&&l,0===r.length&&!s&&(0,Yn.jsx)(Nse,{}),r.length>0&&(0,Yn.jsx)(ei,{overflowY:"scroll",marginBottom:"20px",background:EP.gray[900],borderRadius:"8px",onScroll:async e=>{if(!o||s)return;const t=e.target;t.scrollHeight-t.scrollTop-t.clientHeight<100&&i()},paddingX:"20px",children:(0,Yn.jsxs)(Tce.Provider,{value:{mode:"page"},children:[r.map(((e,t)=>{const n=t===r.length-1;return(0,Yn.jsxs)(ei,{height:"90px",marginBottom:n?"10px":0,paddingY:"20px",children:[(0,Yn.jsx)(Kce,{operation:e}),!n&&(0,Yn.jsx)(ei,{children:(0,Yn.jsx)(wre,{marginTop:"20px"})})]},e.id)})),s&&(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(wre,{}),l]})]})})]})},uue=()=>{const{data:e}=(0,Oi.useQuery)(Ute,(()=>Bte.getPeers())),t=$te(),[r,i]=(0,n.useState)([]);return(0,n.useEffect)((()=>{(async()=>{const t=await Promise.all((e||[]).map((async e=>({...e,senderId:await uL(e.publicKey)}))));i(t)})()}),[e]),0===r.length?null:(0,Yn.jsx)(due,{peerInfos:r,removePeer:t})},due=({peerInfos:e,removePeer:t})=>(0,Yn.jsx)(ei,{children:e.map((e=>(0,Yn.jsxs)(n.Fragment,{children:[(0,Yn.jsx)(wre,{}),(0,Yn.jsx)(hue,{onRemove:()=>t(e),peerInfo:e})]},e.name)))}),hue=({peerInfo:e,onRemove:t})=>(0,Yn.jsxs)(Xn,{justifyContent:"space-between",height:"106px","data-testid":"peer-row",paddingY:"30px",children:[(0,Yn.jsxs)(Xn,{children:[(0,Yn.jsx)(QB,{width:"48px",marginRight:"16px",ratio:1,children:(0,Yn.jsx)(vR,{width:"100%",src:e.icon})}),(0,Yn.jsxs)(Jn,{alignItems:"flex-start",flexDirection:"column",children:[(0,Yn.jsx)(ui,{marginBottom:"6px",size:"md",children:e.name}),(0,Yn.jsx)(fue,{peerInfo:e})]})]}),(0,Yn.jsx)(Jn,{children:(0,Yn.jsx)(d6,{"aria-label":"Remove Peer",icon:(0,Yn.jsx)(bR,{}),onClick:t,size:"xs",variant:"circle"})})]}),fue=({peerInfo:e})=>{const t=(e=>{const t=TR((e=>e.beacon));return t[e]})(e.senderId);return t?(0,Yn.jsxs)(Xn,{children:[(0,Yn.jsx)(nie,{marginRight:"10px",address:qu(t.accountPkh)}),(0,Yn.jsx)(wre,{marginRight:"10px",orientation:"vertical"}),(0,Yn.jsx)(ZB,{marginTop:"2px",marginRight:"4px",color:EP.gray[450],fontWeight:650,size:"sm",children:"Network:"}),(0,Yn.jsx)(ZB,{marginTop:"2px",color:EP.white,"data-testid":"dapp-connection-network",size:"sm",children:(0,Va.capitalize)(t.networkType)})]}):null},pue=()=>{const{isOpen:e,onClose:t,onOpen:r}=DR(),{isOpen:n}=pM();return(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(Nie,{left:"dApps",isSelected:e,onClick:r}),(0,Yn.jsxs)(Hie,{autoFocus:!1,blockScrollOnMount:!n,isOpen:e,onClose:t,placement:"right",children:[(0,Yn.jsx)(mI,{}),(0,Yn.jsx)(Gie,{children:(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(Pae,{onClose:t}),(0,Yn.jsx)(mue,{})]})})]})]})},mue=()=>{const e=Hte();return(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)(Xn,{alignItems:"center",justifyContent:"space-between",height:24,children:(0,Yn.jsx)(ui,{size:"xl",children:"dApps"})}),(0,Yn.jsx)(Si,{onClick:()=>navigator.clipboard.readText().then((t=>{e(t)})),children:"Paste a peer request code"}),(0,Yn.jsx)(ZB,{marginTop:"16px",marginBottom:"32px",color:"text.dark",children:"or open a deeplink from inside the dApp..."}),(0,Yn.jsx)(uue,{})]})};function gue(e){return Xj({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"}},{tag:"path",attr:{d:"M464 688a48 48 0 1 0 96 0 48 48 0 1 0-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z"}}]})(e)}const vue=()=>{const{isOpen:e,onClose:t,onOpen:r}=DR(),{isOpen:n}=pM();return(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(Nie,{left:"ErrorLogs",isSelected:e,onClick:r}),(0,Yn.jsxs)(Hie,{blockScrollOnMount:!n,isOpen:e,onClose:t,placement:"right",children:[(0,Yn.jsx)(mI,{}),(0,Yn.jsx)(Gie,{children:(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(Pae,{onClose:t}),(0,Yn.jsx)(yue,{})]})})]})]})},yue=()=>{const e=[...TR((e=>e.errors))].reverse(),t=to();return(0,Yn.jsxs)(Xn,{flexDirection:"column",height:"100%",children:[(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",height:"50px",marginBottom:"20px",children:[(0,Yn.jsx)(ui,{size:"xl",children:"Error Logs"}),(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)("a",{download:"UmamiErrorLogs.json",href:`data:application/json;charset=utf-8,${encodeURIComponent(JSON.stringify(e))}`,children:(0,Yn.jsx)(Si,{variant:"tertiary",children:"Download error logs"})}),(0,Yn.jsx)(Si,{marginLeft:"8px",onClick:()=>{t(Bd.actions.reset())},variant:"warning",children:"Clear All"})]})]}),e.map((e=>(0,Yn.jsx)(bue,{errorLog:e},Ca())))]})},bue=({errorLog:e})=>(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(wre,{marginY:1}),(0,Yn.jsx)(Xn,{justifyContent:"space-between",paddingY:3,children:(0,Yn.jsxs)(Xn,{children:[(0,Yn.jsx)(LA,{as:gue,marginTop:"1px",marginRight:2}),(0,Yn.jsxs)(Xn,{flexDirection:"column",children:[(0,Yn.jsx)(ui,{wordBreak:"break-all",size:"sm",children:e.description}),(0,Yn.jsx)(ZB,{color:EP.gray[400],size:"sm",children:e.timestamp})]})]})})]});function wue(e={}){const{onChange:t,value:r,defaultValue:i,name:o,isDisabled:a,isFocusable:s,isNative:c,...l}=e,[u,d]=(0,n.useState)(i||""),h="undefined"!==typeof r,f=h?r:u,p=(0,n.useRef)(null),m=(0,n.useCallback)((()=>{const e=p.current;if(!e)return;let t="input:not(:disabled):checked";const r=e.querySelector(t);if(r)return void r.focus();t="input:not(:disabled)";const n=e.querySelector(t);null==n||n.focus()}),[]),g=(0,n.useId)(),v=o||`radio-${g}`,y=(0,n.useCallback)((e=>{const r=function(e){return e&&oe(e)&&oe(e.target)}(e)?e.target.value:e;h||d(r),null==t||t(String(r))}),[t,h]);return{getRootProps:(0,n.useCallback)(((e={},t=null)=>({...e,ref:xi(t,p),role:"radiogroup"})),[]),getRadioProps:(0,n.useCallback)(((e={},t=null)=>{const r=c?"checked":"isChecked";return{...e,ref:t,name:v,[r]:null!=f?e.value===f:void 0,onChange(e){y(e)},"data-radiogroup":!0}}),[c,v,y,f]),name:v,ref:p,focus:m,setValue:d,value:f,onChange:y,isDisabled:a,isFocusable:s,htmlProps:l}}var[xue,_ue]=di({name:"RadioGroupContext",strict:!1}),Sue=ne(((e,t)=>{const{colorScheme:r,size:i,variant:o,children:a,className:s,isDisabled:c,isFocusable:l,...u}=e,{value:d,onChange:h,getRootProps:f,name:p,htmlProps:m}=wue(u),g=(0,n.useMemo)((()=>({name:p,size:i,onChange:h,colorScheme:r,value:d,variant:o,isDisabled:c,isFocusable:l})),[p,i,h,r,d,o,c,l]);return(0,Yn.jsx)(xue,{value:g,children:(0,Yn.jsx)(Zn.div,{...f(m,t),className:ie("chakra-radio-group",s),children:a})})}));Sue.displayName="RadioGroup";var kue={border:"0",clip:"rect(0, 0, 0, 0)",height:"1px",width:"1px",margin:"-1px",padding:"0",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"};function Eue(e){e.preventDefault(),e.stopPropagation()}var Aue=ne(((e,t)=>{var r;const i=_ue(),{onChange:o,value:a}=e,s=li("Radio",{...i,...e}),c=Qt(e),{spacing:l="0.5rem",children:u,isDisabled:d=(null==i?void 0:i.isDisabled),isFocusable:h=(null==i?void 0:i.isFocusable),inputProps:f,...p}=c;let m=e.isChecked;null!=(null==i?void 0:i.value)&&null!=a&&(m=i.value===a);let g=o;(null==i?void 0:i.onChange)&&null!=a&&(g=he(i.onChange,o));const v=null!=(r=null==e?void 0:e.name)?r:null==i?void 0:i.name,{getInputProps:y,getCheckboxProps:b,getLabelProps:w,getRootProps:x,htmlProps:_}=function(e={}){const{defaultChecked:t,isChecked:r,isFocusable:i,isDisabled:o,isReadOnly:a,isRequired:s,onChange:c,isInvalid:l,name:u,value:d,id:h,"data-radiogroup":f,"aria-describedby":p,...m}=e,g=`radio-${(0,n.useId)()}`,v=NU(),y=_ue();let b=!v||y||f?g:v.id;b=null!=h?h:b;const w=null!=o?o:null==v?void 0:v.isDisabled,x=null!=a?a:null==v?void 0:v.isReadOnly,_=null!=s?s:null==v?void 0:v.isRequired,S=null!=l?l:null==v?void 0:v.isInvalid,[k,E]=(0,n.useState)(!1),[A,P]=(0,n.useState)(!1),[O,T]=(0,n.useState)(!1),[C,j]=(0,n.useState)(!1),[R,I]=(0,n.useState)(Boolean(t)),M="undefined"!==typeof r,L=M?r:R;(0,n.useEffect)((()=>Doe(E)),[]);const N=(0,n.useCallback)((e=>{x||w?e.preventDefault():(M||I(e.target.checked),null==c||c(e))}),[M,w,x,c]),D=(0,n.useCallback)((e=>{" "===e.key&&j(!0)}),[j]),z=(0,n.useCallback)((e=>{" "===e.key&&j(!1)}),[j]),B=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,"data-active":le(C),"data-hover":le(O),"data-disabled":le(w),"data-invalid":le(S),"data-checked":le(L),"data-focus":le(A),"data-focus-visible":le(A&&k),"data-readonly":le(x),"aria-hidden":!0,onMouseDown:de(e.onMouseDown,(()=>j(!0))),onMouseUp:de(e.onMouseUp,(()=>j(!1))),onMouseEnter:de(e.onMouseEnter,(()=>T(!0))),onMouseLeave:de(e.onMouseLeave,(()=>T(!1)))})),[C,O,w,S,L,A,x,k]),{onFocus:U,onBlur:F}=null!=v?v:{},$=(0,n.useCallback)(((e={},t=null)=>{const r=w&&!i;return{...e,id:b,ref:t,type:"radio",name:u,value:d,onChange:de(e.onChange,N),onBlur:de(F,e.onBlur,(()=>P(!1))),onFocus:de(U,e.onFocus,(()=>P(!0))),onKeyDown:de(e.onKeyDown,D),onKeyUp:de(e.onKeyUp,z),checked:L,disabled:r,readOnly:x,required:_,"aria-invalid":ue(S),"aria-disabled":ue(r),"aria-required":ue(_),"data-readonly":le(x),"aria-describedby":p,style:kue}}),[w,i,b,u,d,N,F,U,D,z,L,x,_,S,p]);return{state:{isInvalid:S,isFocused:A,isChecked:L,isActive:C,isHovered:O,isDisabled:w,isReadOnly:x,isRequired:_},getCheckboxProps:B,getRadioProps:B,getInputProps:$,getLabelProps:(e={},t=null)=>({...e,ref:t,onMouseDown:de(e.onMouseDown,Eue),"data-disabled":le(w),"data-checked":le(L),"data-invalid":le(S)}),getRootProps:(e,t=null)=>({...e,ref:t,"data-disabled":le(w),"data-checked":le(L),"data-invalid":le(S)}),htmlProps:m}}({...p,isChecked:m,isFocusable:h,isDisabled:d,onChange:g,name:v}),[S,k]=function(e,t){const r={},n={};for(const[i,o]of Object.entries(e))t.includes(i)?r[i]=o:n[i]=o;return[r,n]}(_,$t),E=b(k),A=y(f,t),P=w(),O=Object.assign({},S,x()),T={display:"inline-flex",alignItems:"center",verticalAlign:"top",cursor:"pointer",position:"relative",...s.container},C={display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0,...s.control},j={userSelect:"none",marginStart:l,...s.label};return(0,Yn.jsxs)(Zn.label,{className:"chakra-radio",...O,__css:T,children:[(0,Yn.jsx)("input",{className:"chakra-radio__input",...A}),(0,Yn.jsx)(Zn.span,{className:"chakra-radio__control",...E,__css:C}),u&&(0,Yn.jsx)(Zn.span,{className:"chakra-radio__label",...P,__css:j,children:u})]})}));Aue.displayName="Radio";const Pue=({network:e})=>{const t=e?"edit":"create",{onClose:r}=(0,n.useContext)(fM),i=to(),o=j5(),{formState:{errors:a,isValid:s},register:c,handleSubmit:l}=_$({mode:"onBlur",defaultValues:e});return(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{onSubmit:l((e=>{i(qd.upsertNetwork(e)),r()})),children:[(0,Yn.jsxs)(WB,{textAlign:"center",children:["edit"===t?"Edit":"Add"," Network",(0,Yn.jsx)(YB,{})]}),(0,Yn.jsxs)(XB,{children:["create"===t&&(0,Yn.jsxs)(DU,{marginTop:"32px",marginBottom:"24px",isInvalid:!!a.name,children:[(0,Yn.jsx)(T$,{children:"Name"}),(0,Yn.jsx)(D$,{placeholder:"mainnet",...c("name",{required:"Name is required",validate:e=>{if(o.find((t=>t.name===e)))return"Network with this name already exists"}})}),a.name&&(0,Yn.jsx)(pte,{children:a.name.message})]}),(0,Yn.jsxs)(DU,{marginBottom:"24px",isInvalid:!!a.rpcUrl,children:[(0,Yn.jsx)(T$,{children:"RPC URL"}),(0,Yn.jsx)(D$,{placeholder:"https://prod.tcinfra.net/rpc/mainnet",...c("rpcUrl",{required:"RPC URL is required"})}),a.rpcUrl&&(0,Yn.jsx)(pte,{children:a.rpcUrl.message})]}),(0,Yn.jsxs)(DU,{marginBottom:"24px",isInvalid:!!a.tzktApiUrl,children:[(0,Yn.jsx)(T$,{children:"Tzkt API URL"}),(0,Yn.jsx)(D$,{placeholder:"https://api.ghostnet.tzkt.io",...c("tzktApiUrl",{required:"Tzkt API URL is required"})}),a.tzktApiUrl&&(0,Yn.jsx)(pte,{children:a.tzktApiUrl.message})]}),(0,Yn.jsxs)(DU,{marginBottom:"24px",isInvalid:!!a.tzktExplorerUrl,children:[(0,Yn.jsx)(T$,{children:"Tzkt Explorer URL"}),(0,Yn.jsx)(D$,{placeholder:"https://ghostnet.tzkt.io",...c("tzktExplorerUrl",{required:"Tzkt Explorer URL is required"})}),a.tzktExplorerUrl&&(0,Yn.jsx)(pte,{children:a.tzktExplorerUrl.message})]}),(0,Yn.jsxs)(DU,{children:[(0,Yn.jsx)(T$,{children:"Buy Tez URL"}),(0,Yn.jsx)(D$,{placeholder:"https://faucet.ghostnet.teztnets.xyz",...c("buyTezUrl")})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(Si,{width:"100%",isDisabled:!s,onClick:()=>{},type:"submit",children:"edit"===t?"Save changes":"Add network"})})]})]})})},Oue=()=>{const{openWith:e}=(0,n.useContext)(fM),t=C5(),r=R5(),i=j5(),o=OR();return(0,Yn.jsxs)(Xn,{flexDirection:"column",children:[(0,Yn.jsxs)(Jn,{justifyContent:"space-between",children:[(0,Yn.jsx)(ui,{children:"Network Settings"}),(0,Yn.jsxs)(Si,{paddingRight:"0",onClick:()=>e((0,Yn.jsx)(Pue,{})),variant:"CTAWithIcon",children:[(0,Yn.jsx)(ZB,{size:"sm",children:"Add Network"}),(0,Yn.jsx)(cR,{width:"18px",height:"18px",marginLeft:"4px",stroke:"currentcolor"})]})]}),(0,Yn.jsx)(Sue,{marginTop:"60px",onChange:r,value:t.name,children:(0,Yn.jsx)(Xie,{children:i.map((t=>(0,Yn.jsxs)(n.Fragment,{children:[(0,Yn.jsx)(wre,{borderColor:EP.gray[700]}),(0,Yn.jsxs)(Xn,{justifyContent:"space-between","data-testid":`network-${t.name}`,children:[(0,Yn.jsx)(Aue,{height:"100px",value:t.name,variant:"primary",children:(0,Yn.jsxs)(Xn,{flexDirection:"column",marginLeft:"16px",children:[(0,Yn.jsx)(ui,{marginBottom:"4px",size:"sm",children:t.name}),(0,Yn.jsx)(ZB,{color:EP.gray[400],children:t.rpcUrl})]})}),!Pd(t)&&(0,Yn.jsx)(Jn,{"data-testid":"popover-menu",children:(0,Yn.jsxs)(qre,{children:[(0,Yn.jsxs)(Si,{onClick:()=>e((0,Yn.jsx)(Pue,{network:t})),variant:"popover",children:[(0,Yn.jsx)(ZB,{marginRight:"4px",children:"Edit"}),(0,Yn.jsx)(sR,{stroke:"inherit"})]}),(0,Yn.jsx)(wre,{marginTop:"4px"}),(0,Yn.jsxs)(Si,{onClick:()=>(e=>{o(qd.removeNetwork(e))})(t),variant:"popover",children:[(0,Yn.jsx)(ZB,{marginRight:"4px",children:"Remove"}),(0,Yn.jsx)(bR,{stroke:"inherit"})]})]})})]})]},t.name)))})})]})},Tue=()=>{const{isOpen:e,onClose:t,onOpen:r}=DR(),{isOpen:i}=(0,n.useContext)(fM);return(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(Nie,{left:"Network Settings",isSelected:e,onClick:r}),(0,Yn.jsxs)(Hie,{blockScrollOnMount:!i,isOpen:e,onClose:t,placement:"right",children:[(0,Yn.jsx)(mI,{}),(0,Yn.jsx)(Gie,{children:(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(Pae,{onClose:t}),(0,Yn.jsx)(Oue,{})]})})]})]})},Cue="2.0.0-beta1",jue=()=>{const{onClose:e}=(0,n.useContext)(fM),t=_$({mode:"onBlur"}),r=YD(),i=OR(),{handleAsyncAction:o,isLoading:a}=hte(),{handleSubmit:s,formState:{isValid:c,errors:l},getValues:u}=t;return(0,Yn.jsx)(mF,{...t,children:(0,Yn.jsx)(KB,{background:EP.gray[700],"data-testid":"change-password-modal",children:(0,Yn.jsxs)("form",{onSubmit:s((async({currentPassword:t,newPassword:n,newPasswordConfirmation:a})=>{t!==n&&n===a&&o((async()=>{await i(Mc({currentPassword:t,newPassword:n})).unwrap(),r({description:"Password updated",status:"success"}),e()}))})),children:[(0,Yn.jsx)(YB,{}),(0,Yn.jsx)(WB,{textAlign:"center",children:(0,Yn.jsx)(ui,{children:"Change Password"})}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsxs)(DU,{marginTop:"32px",isInvalid:!!l.currentPassword,children:[(0,Yn.jsx)(mte,{"data-testid":"current-password",inputName:"currentPassword",label:"Current Password",placeholder:"Enter your current password",required:"Current password is required"}),l.currentPassword&&(0,Yn.jsx)(pte,{"data-testid":"current-password-error",children:l.currentPassword.message})]}),(0,Yn.jsxs)(DU,{isInvalid:!!l.newPassword,marginY:6,children:[(0,Yn.jsx)(mte,{"data-testid":"new-password",inputName:"newPassword",label:"New Password",placeholder:"Enter new password",required:"New password is required",validate:e=>u("currentPassword")!==e||"Cannot be the same as old password"}),l.newPassword&&(0,Yn.jsx)(pte,{"data-testid":"new-password-error",children:l.newPassword.message})]}),(0,Yn.jsxs)(DU,{marginTop:3,isInvalid:!!l.newPasswordConfirmation,children:[(0,Yn.jsx)(mte,{"data-testid":"new-password-confirmation",inputName:"newPasswordConfirmation",label:"Confirm New Password",placeholder:"Confirm new password",required:"Confirmation is required",validate:e=>u("newPassword")===e||"Your new passwords do no match"}),l.newPasswordConfirmation&&(0,Yn.jsx)(pte,{"data-testid":"new-password-confirmation-error",children:l.newPasswordConfirmation.message})]})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(Si,{width:"100%",isDisabled:!c,isLoading:a,size:"lg",type:"submit",children:"Update Password"})})]})})})},Rue="wasabi",Iue=()=>{const e=()=>{localStorage.clear(),window.location.reload()},t=_$({mode:"onBlur"}),{register:r,handleSubmit:n,formState:{isValid:i,errors:o},getValues:a}=t;return(0,Yn.jsx)(mF,{...t,children:(0,Yn.jsxs)("form",{onSubmit:n((()=>{a("check")&&a("confirmationCode")===Rue&&e()})),children:[(0,Yn.jsx)(YB,{}),(0,Yn.jsx)(WB,{marginBottom:"12px",textAlign:"center",children:(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)(AR,{width:10,height:10,marginBottom:5}),(0,Yn.jsx)(ui,{children:"Off-board Wallet"})]})}),(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)(ZB,{marginBottom:2,color:EP.gray[400],fontWeight:"bold",textAlign:"center",size:"sm",children:"This will permanently remove any data from this computer."}),(0,Yn.jsxs)(ZB,{color:EP.gray[400],textAlign:"center",size:"sm",children:["Please enter \xab ",Rue," \xbb to confirm. The accounts are still available to be imported in the future; in order to regain access to your accounts, please make sure that you keep the recovery phrase."]}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(wre,{borderColor:EP.gray[700],marginY:5}),(0,Yn.jsx)(DU,{isInvalid:!!o.check,children:(0,Yn.jsx)(qoe,{...r("check",{required:!0}),children:(0,Yn.jsx)(ZB,{marginLeft:2,fontWeight:"bold",children:"I have read the warning and I am certain I want to remove my private keys locally. I also made sure to keep my recovery phrase."})})}),(0,Yn.jsx)(wre,{borderColor:EP.gray[700],marginY:5}),(0,Yn.jsxs)(DU,{isInvalid:!!o.confirmationCode,paddingY:5,children:[(0,Yn.jsx)(D$,{type:"text",...r("confirmationCode",{required:"Confirmation is required",validate:e=>e===Rue||"Confirmation code does not match"}),placeholder:"Enter code word to confirm"}),o.confirmationCode&&(0,Yn.jsx)(pte,{children:o.confirmationCode.message})]})]})]}),(0,Yn.jsx)(HU,{padding:0,children:(0,Yn.jsx)(Si,{width:"100%",marginBottom:2,isDisabled:!i,size:"lg",type:"submit",variant:"warning",children:"Confirm"})})]})})},Mue=()=>(0,Yn.jsxs)(Xn,{flexDirection:"column",height:"100%",children:[(0,Yn.jsx)(Hne,{title:"Settings"}),(0,Yn.jsxs)(ei,{overflowY:"scroll",children:[(0,Yn.jsx)(ei,{marginTop:"16px",children:(0,Yn.jsx)(Lue,{})}),(0,Yn.jsx)(Nue,{}),(0,Yn.jsx)(zue,{}),(0,Yn.jsx)(Bue,{})]})]}),Lue=()=>(0,Yn.jsxs)(Uue,{title:"General",children:[(0,Yn.jsx)(Tue,{}),(0,Yn.jsx)(vue,{})]}),Nue=()=>null,Due=()=>{const e={version:Cue,"persist:accounts":localStorage.getItem("persist:accounts"),"persist:root":localStorage.getItem("persist:root")},t=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(e))}`,r=document.createElement("a");r.href=t,r.download="UmamiV2Backup.json",r.click()},zue=()=>(0,Yn.jsx)(Uue,{title:"Backup",children:(0,Yn.jsx)(Lie,{isSelected:!1,onClick:Due,children:(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",children:[(0,Yn.jsx)(ui,{size:"sm",children:"Download backup file"}),(0,Yn.jsx)(Si,{onClick:Due,variant:"unstyled",children:(0,Yn.jsx)(Pj,{cursor:"pointer"})})]})})}),Bue=()=>{const{modalElement:e,onOpen:t}=(()=>{const{isOpen:e,onOpen:t,onClose:r}=DR();return{modalElement:(0,Yn.jsxs)(tI,{isCentered:!0,isOpen:e,onClose:r,children:[(0,Yn.jsx)(mI,{}),(0,Yn.jsx)(KB,{background:EP.gray[900],children:(0,Yn.jsx)(Iue,{})})]}),onOpen:t}})(),{openWith:r}=(0,n.useContext)(fM);return(0,Yn.jsxs)(Uue,{title:"Advanced Settings",children:[(0,Yn.jsx)(pue,{}),(0,Yn.jsx)(Nie,{left:"Off-board Wallet",isSelected:!1,onClick:t}),(0,Yn.jsx)(Nie,{left:"Change Password",isSelected:!1,onClick:()=>r((0,Yn.jsx)(jue,{}))}),e]})},Uue=({title:e,children:t})=>(0,Yn.jsx)(ei,{marginTop:"8px",children:(0,Yn.jsx)(Xn,{children:(0,Yn.jsxs)(ei,{width:"550px",children:[(0,Yn.jsx)(ui,{marginBottom:"16px",size:"lg",children:e}),t]})})}),Fue=({token:e,amount:t,...r})=>{const{contract:n}=e,i=ld(t,e),o=id(e);return(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"start",width:"400px",padding:"15px",background:EP.gray[800],borderRadius:"4px","data-testid":"token-tile",...r,children:[(0,Yn.jsx)(Xn,{alignItems:"center",children:(0,Yn.jsx)(QB,{width:"30px",height:"30px",marginRight:"12px",ratio:1,children:(0,Yn.jsx)(yR,{padding:"6.25px",background:EP.gray[500],borderRadius:"4px",contract:n})})}),(0,Yn.jsx)(J5,{number:i}),(0,Yn.jsx)(ZB,{marginLeft:"4px",size:"sm",children:o})]})},$ue=e=>{const{mode:t,operations:r,fee:n,data:{token:i}}=e,{fee:o,operations:a,estimationFailed:s,isLoading:c,form:l,signer:u,reEstimate:d,onSign:h}=Qre(n,r,t),{amount:f,recipient:p}=a.operations[0];return(0,Yn.jsx)(mF,{...l,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(Cte,{...e,operationsType:a.type,signer:a.signer}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsx)(Fue,{amount:f,token:i}),(0,Yn.jsx)(Xn,{alignItems:"center",justifyContent:"end",marginTop:"12px",marginBottom:"24px",paddingX:"4px",children:(0,Yn.jsx)(Xn,{children:(0,Yn.jsx)(_te,{fee:o})})}),(0,Yn.jsx)(T$,{children:"From"}),(0,Yn.jsx)(e6,{marginBottom:"24px",address:a.sender.address}),(0,Yn.jsx)(T$,{children:"To"}),(0,Yn.jsx)(e6,{address:p}),(0,Yn.jsx)(Gre,{isLoading:c,operationType:a.type,reEstimate:d,sender:a.sender})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(gte,{isDisabled:s,isLoading:c,onSubmit:h,signer:u,text:Ote(a.type,t)})})]})})})},Hue=e=>{const{token:t}=e,r=one({SignPage:$ue,signPageExtraData:{token:t},FormPage:Hue,defaultFormPageProps:e,toOperation:Vue(t)}),n=ane(Vue(t)),{onFormSubmitActionHandlers:[i,o],isLoading:a}=sne([r,n]),s=_$({mode:"onBlur",defaultValues:Jre(e)}),{formState:{isValid:c,errors:l},register:u,handleSubmit:d}=s,h=ad(t),f=cd(t.balance,h),p=tne(Number(h));return(0,Yn.jsx)(mF,{...s,children:(0,Yn.jsx)(KB,{children:(0,Yn.jsxs)("form",{children:[(0,Yn.jsx)(kte,{}),(0,Yn.jsxs)(XB,{children:[(0,Yn.jsxs)(DU,{isInvalid:!!l.prettyAmount,children:[(0,Yn.jsx)(T$,{children:"Amount"}),(0,Yn.jsxs)(M$,{children:[(0,Yn.jsx)(D$,{isDisabled:a,step:p,type:"number",...u("prettyAmount",{required:"Amount is required",max:{value:f.toString(),message:`Max amount is ${f}`},validate:rne(Number(h))}),placeholder:p}),(0,Yn.jsx)(F$,{paddingRight:"12px","data-testid":"token-symbol",children:id(t)})]}),l.prettyAmount&&(0,Yn.jsx)(pte,{"data-testid":"amount-error",children:l.prettyAmount.message})]}),(0,Yn.jsxs)(DU,{marginTop:"24px",isInvalid:!!l.sender,children:[(0,Yn.jsx)(s6,{allowUnknown:!1,inputName:"sender",isDisabled:!0,label:"From"}),l.sender&&(0,Yn.jsx)(pte,{"data-testid":"from-error",children:l.sender.message})]}),(0,Yn.jsxs)(DU,{marginTop:"24px",isInvalid:!!l.recipient,children:[(0,Yn.jsx)(o6,{allowUnknown:!0,inputName:"recipient",label:"To"}),l.recipient&&(0,Yn.jsx)(pte,{"data-testid":"recipient-error",children:l.recipient.message})]})]}),(0,Yn.jsx)(HU,{children:(0,Yn.jsx)(Xre,{isLoading:a,isValid:c,onAddToBatch:d(o),onSingleSubmit:d(i)})})]})})})},Vue=e=>t=>{const r={type:"fa2",sender:qu(t.sender),recipient:qu(t.recipient),contract:Zu(e.contract),tokenId:e.tokenId,amount:sd(e,t.prettyAmount)};return"fa2"===e.type?r:{...r,type:"fa1.2",tokenId:"0"}},que=({account:e})=>{const{address:t,label:r}=e,n=G5(t);return(0,Yn.jsxs)(Xn,{alignItems:"center",height:"78px",background:hie({left:"-10px",top:"-10px",account:e,radius:"100px",mainBackgroundColor:EP.gray[800]}),borderTopRadius:"8px","data-testid":"header",paddingX:"30px",children:[(0,Yn.jsx)(YV,{addressKind:n,identiconSize:35,size:"lg"}),(0,Yn.jsxs)(Xn,{justifyContent:"space-between",flex:1,children:[(0,Yn.jsxs)(ei,{marginLeft:"16px","data-testid":"account-identifier",children:[(0,Yn.jsx)(ui,{marginBottom:"4px",size:"md",children:r}),(0,Yn.jsx)(ZB,{color:EP.gray[300],size:"sm",children:z5(t.pkh)})]}),(0,Yn.jsx)(Xn,{flexDirection:"column-reverse",children:(0,Yn.jsx)(Q5,{verticalAlign:"bottom",address:e.address.pkh})})]})]})},Kue=({account:e,tokens:t})=>{const{openWith:r}=(0,n.useContext)(fM);return(0,Yn.jsxs)(A$,{overflowX:"auto",marginBottom:"16px",borderBottomRadius:"8px",backgroundColor:EP.gray[900],children:[(0,Yn.jsx)(que,{account:e}),(0,Yn.jsx)(nre,{paddingX:"30px",children:(0,Yn.jsx)(are,{children:(0,Yn.jsx)(sre,{children:t.map(((n,i)=>{const o=i===t.length-1?"transparent":EP.gray[700];return(0,Yn.jsxs)(cre,{"data-testid":"token-tile",children:[(0,Yn.jsx)(lre,{width:"20%",minWidth:"240px",borderColor:o,paddingX:"0",children:(0,Yn.jsxs)(Xn,{alignItems:"center",children:[(0,Yn.jsx)(yR,{display:"inline-block",width:"38px",contract:n.contract}),(0,Yn.jsx)(ui,{display:"inline-block",marginLeft:"16px",size:"sm",children:(0,Yn.jsx)(Zce,{token:n})})]})}),(0,Yn.jsx)(lre,{width:"20%",minWidth:"200px",borderColor:o,paddingX:"0",children:(0,Yn.jsx)(nie,{address:Zu(n.contract)})}),(0,Yn.jsx)(lre,{width:"15%",minWidth:"160px",borderColor:o,paddingX:"0",children:(0,Yn.jsx)(ui,{size:"sm",children:ld(n.balance,n,{showSymbol:!1})})}),(0,Yn.jsx)(lre,{textAlign:"right",borderColor:o,paddingX:"0",children:(0,Yn.jsx)(Wre,{onClick:()=>{r((0,Yn.jsx)(Hue,{sender:e,token:n}))}})})]},td(n))}))})})})]})},Wue=()=>{const{accountsFilter:e,selectedAccounts:t}=sue(),r=$5(),n=t.map((e=>[e,r(e.address.pkh)])).filter((([,e])=>e.length>0));return(0,Yn.jsxs)(Xn,{flexDirection:"column",height:"100%",children:[(0,Yn.jsx)(Hne,{title:"Tokens"}),e,0===n.length?(0,Yn.jsx)(Mse,{title:"No Tokens found"}):(0,Yn.jsx)(ei,{overflowY:"auto",children:n.map((([e,t])=>(0,Yn.jsx)(Kue,{account:e,tokens:t},e.address.pkh)))})]})},Gue=e=>(0,Yn.jsxs)(ZB,{color:EP.gray[450],...e,children:["Umami v",Cue]}),Zue=e=>{const t=C5();return(0,Yn.jsx)(iR,{background:"white",borderRadius:"8px",fishColor:"mainnet"===t.name?"#F74F18":"black",...e})},Yue=()=>{const e=C5(),t=j5(),r=R5();return(0,Yn.jsx)(ei,{width:"105px",children:(0,Yn.jsx)(tae,{padding:0,color:EP.green,fontSize:"14px",fontWeight:600,border:"1px solid transparent","data-testid":"network-selector",onChange:e=>r(e.target.value),size:"xs",value:e.name,children:t.map((e=>(0,Yn.jsx)("option",{value:e.name,children:(0,Va.capitalize)(e.name)},e.name)))})})},Xue=()=>{const[e,t]=(0,n.useState)(!1),r=window;(0,n.useEffect)((()=>{r&&r.electronAPI&&r.electronAPI.onAppUpdateDownloaded((e=>t(!0)))}),[r]);return e?(0,Yn.jsx)(ei,{marginTop:"24px",marginBottom:"6px",children:(0,Yn.jsxs)(Si,{justifyContent:"flex-start",width:"100%",height:"32px",paddingTop:"7px",paddingRight:"8px",paddingBottom:"7px",paddingLeft:"8px",color:EP.black,background:EP.green,_hover:{color:EP.black,background:EP.greenL},onClick:()=>{r&&r.electronAPI&&r.electronAPI.installAppUpdateAndQuit()},children:[(0,Yn.jsx)(Uj,{}),(0,Yn.jsx)(ZB,{marginLeft:"4px",size:"sm",children:"Update Umami"})]})}):null},Jue=()=>(0,Yn.jsxs)(Xn,{flexDirection:"column",width:"236px",padding:"30px 30px 30px 30px",background:EP.gray[900],children:[(0,Yn.jsxs)(ei,{children:[(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"space-between",height:"30px",children:[(0,Yn.jsx)(Zue,{width:"38px",height:"38px"}),(0,Yn.jsx)(Yue,{})]}),(0,Yn.jsx)(wre,{marginTop:"28px"})]}),(0,Yn.jsxs)(Xn,{justifyContent:"space-between",flexDirection:"column",flex:1,children:[(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)(Xue,{}),(0,Yn.jsx)(ede,{}),(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)(Que,{icon:(0,Yn.jsx)(dj,{}),label:"Accounts",to:"/home"}),(0,Yn.jsx)(Que,{icon:(0,Yn.jsx)(kj,{}),label:"NFTs",to:"/nfts"}),(0,Yn.jsx)(Que,{icon:(0,Yn.jsx)(lR,{width:"24px",height:"24px"}),label:"Operations",to:"/operations"}),(0,Yn.jsx)(Que,{icon:(0,Yn.jsx)(wj,{}),label:"Tokens",to:"/tokens"}),(0,Yn.jsx)(Que,{icon:(0,Yn.jsx)(gj,{}),label:"Batch",to:"/batch"})]})]}),(0,Yn.jsxs)(ei,{children:[(0,Yn.jsx)(wre,{}),(0,Yn.jsx)(Que,{marginTop:"22px",icon:(0,Yn.jsx)(pj,{}),label:"Address Book",to:"/address-book"}),(0,Yn.jsx)(Que,{icon:(0,Yn.jsx)(Fj,{}),label:"Settings",to:"/settings"}),(0,Yn.jsx)(Que,{icon:(0,Yn.jsx)($j,{}),label:"Help",to:"/help"}),(0,Yn.jsx)(Que,{icon:(0,Yn.jsx)(Nj,{}),label:"Share Feedback",target:"_blank",to:`mailto:umami-support@trili.tech?subject=Umami V2 feedback&body=${Ai}`}),(0,Yn.jsx)(Gue,{marginTop:"24px",fontSize:"14px"})]})]})]}),Que=({icon:e,target:t,label:r,to:n,...i})=>{const o=$O().pathname.startsWith(n);return(0,Yn.jsx)(vT,{rel:"noopener noreferrer",target:t,to:n,children:(0,Yn.jsxs)(Xn,{alignItems:"center",justifyContent:"flex-start",width:"176px",marginBottom:"8px",padding:"10px",background:o?EP.gray[600]:"transparent",borderRadius:"4px",_hover:{background:o?EP.gray[600]:EP.gray[800]},cursor:"pointer",...i,children:[e,(0,Yn.jsx)(ZB,{marginLeft:"10px",size:"sm",children:r})]})})},ede=()=>{const e=q5(),[t]=dne("(max-height: 900px)");return(0,Yn.jsxs)(ei,{marginTop:"24px",marginBottom:t?"30px":"100px",children:[(0,Yn.jsx)(ZB,{marginBottom:"4px",size:"sm",children:"Balance"}),null!==e&&(0,Yn.jsx)(ule,{balance:e.mutez,dollarBalance:e.usd})]})},tde=e=>(0,Yn.jsxs)(Xn,{height:"100vh",children:[(0,Yn.jsx)(Jue,{}),(0,Yn.jsx)(ei,{flex:1,overflowX:"hidden",height:"100%",background:"linear-gradient(180deg, rgba(0, 231, 182, 0.35) -41.53%, rgba(0, 231, 182, 0.00) 34.71%)",paddingX:6,children:e})]}),rde=r.p+"static/media/accounts.5f47a2af4c8394165d1e.png",nde=r.p+"static/media/background_image.a833e862a22ad4910526.png",ide=r.p+"static/media/batch.5ba4eb38fa8c4e1ed39b.png",ode=r.p+"static/media/multisig.3ab2bbc3bda7df25ea83.png";var ade=r(2602);const sde=({children:e})=>{const t={background:EP.gray[400],width:"10px",height:"10px",display:"inline-block",margin:"0 4px 60px 4px",borderRadius:"5px"};return(0,Yn.jsx)(ei,{backgroundImage:"linear-gradient(180deg, rgba(18, 18, 18, 0.00) 36.43%, rgba(18, 18, 18, 0.50) 53.65%, #121212 76.24%)",borderRightRadius:"30px",backgroundColor:"#323131",children:(0,Yn.jsx)(ade.lr,{autoPlay:!0,dynamicHeight:!1,infiniteLoop:!0,interval:5e3,renderIndicator:(e,r,n)=>r?(0,Yn.jsx)("li",{style:{...t,background:"#00C39A",width:"24px"}}):(0,Yn.jsx)("li",{onClick:e,onKeyDown:e,role:"button",style:t,tabIndex:0,value:n},n),showArrows:!1,showStatus:!1,showThumbs:!1,transitionTime:1e3,children:e})})},cde=({item:e})=>(0,Yn.jsx)(ei,{height:"730px",paddingTop:"500px",paddingBottom:"35px",backgroundImage:e.image,backgroundSize:"cover",backgroundRepeat:"no-repeat","data-testid":`slide-${e.id}`,children:(0,Yn.jsxs)(Jn,{flexDirection:"column",paddingBottom:"50px",children:[(0,Yn.jsx)(Qie,{icon:e.icon,size:"58px"}),(0,Yn.jsx)(ZB,{width:"400px",margin:"16px 50px 0 50px",children:e.text})]})}),lde=()=>{const[e,t]=(0,n.useState)(!0),{onOpen:r,modalElement:i}=mae((()=>t(!0))),o=[{id:1,text:(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(ZB,{as:"span",fontWeight:600,size:"md",children:"Streamline asset management:\xa0"}),(0,Yn.jsx)(ZB,{as:"span",size:"md",children:"one mnemonic, multiple accounts, full control."})]}),icon:(0,Yn.jsx)(hR,{}),image:rde},{id:2,text:(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(ZB,{as:"span",size:"md",children:"Enhance security with\xa0"}),(0,Yn.jsx)(ZB,{as:"span",fontWeight:600,size:"md",children:"Multi-sig"}),(0,Yn.jsx)(ZB,{as:"span",size:"md",children:", requiring multiple signatures for transaction executions."})]}),icon:(0,Yn.jsx)(qj,{width:"32px",height:"32px",stroke:EP.gray[450],strokeWidth:"0.9"}),image:ode},{id:3,text:(0,Yn.jsxs)(Yn.Fragment,{children:[(0,Yn.jsx)(ZB,{as:"span",size:"md",children:"Utilize the\xa0"}),(0,Yn.jsx)(ZB,{as:"span",fontWeight:600,size:"md",children:"Batch\xa0"}),(0,Yn.jsx)(ZB,{as:"span",size:"md",children:"feature to bundle transactions, improving efficiency and reducing costs."})]}),icon:(0,Yn.jsx)(gj,{width:"32px",height:"32px",strokeWidth:"0.9"}),image:ide}];return(0,Yn.jsxs)(Jn,{height:"100vh",padding:"60px",backgroundImage:nde,backgroundSize:"cover",children:[e&&(0,Yn.jsxs)(dae,{boxShadow:"0px 0px 30px rgba(0, 0, 0, 0.30)",columns:[1,1,2],children:[(0,Yn.jsx)(Jn,{width:"100%",maxWidth:"660px",background:EP.gray[800],borderLeftRadius:"30px",children:(0,Yn.jsxs)(Jie,{maxWidth:"400px",padding:"32px",spacing:"0",children:[(0,Yn.jsx)(Zue,{width:"48px",height:"48px",marginBottom:"24px"}),(0,Yn.jsx)(ui,{marginBottom:"16px",size:"3xl",children:"Welcome to Umami"}),(0,Yn.jsx)(wre,{maxWidth:"400px",marginBottom:"16px"}),(0,Yn.jsx)(ZB,{marginBottom:"32px",color:EP.gray[450],children:"A powerful Tezos wallet"}),(0,Yn.jsx)(Si,{width:"100%",marginBottom:"24px",onClick:()=>{t(!1),r()},size:"lg",children:"Get started"}),(0,Yn.jsx)(Gue,{fontSize:"13px"})]})}),(0,Yn.jsx)(ei,{maxWidth:"660px",children:(0,Yn.jsx)(sde,{children:o.map((e=>(0,Yn.jsx)(cde,{item:e},e.id)))})})]}),i]})},ude=()=>{rre();return jq().length>0?(0,Yn.jsx)(dde,{}):(0,Yn.jsx)(hde,{})},dde=()=>{tre();const e=pM();return(0,Yn.jsx)(pT,{children:(0,Yn.jsx)(fM.Provider,{value:e,children:(0,Yn.jsxs)(Vte,{children:[(0,Yn.jsx)(CR,{}),(0,Yn.jsxs)(sT,{children:[(0,Yn.jsx)(oT,{element:tde((0,Yn.jsx)(jle,{})),path:"/home"}),(0,Yn.jsx)(oT,{element:tde((0,Yn.jsx)(jle,{})),path:"/home/:ownerPkh/:nftId"}),(0,Yn.jsx)(oT,{element:tde((0,Yn.jsx)(cue,{})),path:"/nfts"}),(0,Yn.jsx)(oT,{element:tde((0,Yn.jsx)(lue,{})),path:"/operations"}),(0,Yn.jsx)(oT,{element:tde((0,Yn.jsx)(Wue,{})),path:"/tokens"}),(0,Yn.jsx)(oT,{element:tde((0,Yn.jsx)(qne,{})),path:"/address-book"}),(0,Yn.jsx)(oT,{element:tde((0,Yn.jsx)(Mue,{})),path:"/settings"}),(0,Yn.jsx)(oT,{element:tde((0,Yn.jsx)(Die,{})),path:"/help"}),(0,Yn.jsx)(oT,{element:tde((0,Yn.jsx)(Cie,{})),path:"/batch"}),(0,Yn.jsx)(oT,{element:(0,Yn.jsx)(iT,{to:"/home"}),path:"/*"})]}),e.content]})})})},hde=()=>{const e=(()=>{const e=to();return()=>e(Id.actions.reset())})();return(0,n.useEffect)((()=>{(async()=>{await Bte.removeAllAccounts(),await Bte.removeAllAppMetadata(),await Bte.removeAllPeers(),await Bte.removeAllPermissions()})().then(e)}),[e]),(0,Yn.jsx)(pT,{children:(0,Yn.jsxs)(sT,{children:[(0,Yn.jsx)(oT,{element:(0,Yn.jsx)(iT,{to:"/welcome"}),path:"/*"}),(0,Yn.jsx)(oT,{element:(0,Yn.jsx)(lde,{}),path:"/welcome"})]})})};o.createRoot(document.getElementById("root")).render((0,Yn.jsx)(n.StrictMode,{children:(0,Yn.jsx)(YP,{children:(0,Yn.jsx)(Jd,{children:(0,Yn.jsx)(re,{loading:null,persistor:function(e,t,r){var n=r||!1,i=U(Z,G,t&&t.enhancer?t.enhancer:void 0),o=function(e){i.dispatch({type:m,key:e})},a=function(t,r,o){var a={type:d,payload:r,err:o,key:t};e.dispatch(a),i.dispatch(a),n&&s.getState().bootstrapped&&(n(),n=!1)},s=K({},i,{purge:function(){var t=[];return e.dispatch({type:p,result:function(e){t.push(e)}}),Promise.all(t)},flush:function(){var t=[];return e.dispatch({type:u,result:function(e){t.push(e)}}),Promise.all(t)},pause:function(){e.dispatch({type:h})},persist:function(){e.dispatch({type:f,register:o,rehydrate:a})}});return t&&t.manualPersist||s.persist(),s}(Xd),children:(0,Yn.jsx)(c,{fallback:(0,Yn.jsx)(Pi,{}),onError:(e,t)=>{const r={...dte(e),stacktrace:String(t.componentStack)};Xd.dispatch(Bd.actions.add(r))},children:(0,Yn.jsx)(Ci,{children:(0,Yn.jsx)(ude,{})})})})})})}))})()})(); -//# sourceMappingURL=main.18219ce4.js.map \ No newline at end of file + `}),[nh,ih]=kn({strict:!1,name:"PortalManagerContext"});function oh(e){const{children:t,zIndex:r}=e;return(0,ln.jsx)(nh,{value:{zIndex:r},children:t})}function ah(e={}){const{strict:t=!0,errorMessage:r="useContext: `context` is undefined. Seems you forgot to wrap component within the Provider",name:i}=e,o=(0,n.createContext)(void 0);return o.displayName=i,[o.Provider,function e(){var i;const a=(0,n.useContext)(o);if(!a&&t){const t=new Error(r);throw t.name="ContextError",null==(i=Error.captureStackTrace)||i.call(Error,t,e),t}return a},o]}function sh(e){const{cssVarsRoot:t,theme:r,children:i}=e,o=(0,n.useMemo)((()=>Je(r)),[r]);return(0,ln.jsxs)(Gr,{theme:o,children:[(0,ln.jsx)(ch,{root:t}),i]})}function ch({root:e=":host, :root"}){const t=[e,"[data-theme]"].join(",");return(0,ln.jsx)(On,{styles:e=>({[t]:e.__cssVars})})}oh.displayName="PortalManager";var[lh,uh]=ah({name:"StylesContext",errorMessage:"useStyles: `styles` is undefined. Seems you forgot to wrap the components in `` "});function dh(){const{colorMode:e}=vt();return(0,ln.jsx)(On,{styles:t=>{const r=xt(yt(t,"styles.global"),{theme:t,colorMode:e});if(!r)return;return ct(r)(t)}})}var hh={light:"chakra-ui-light",dark:"chakra-ui-dark"};var fh="chakra-ui-color-mode";var ph,mh=(ph=fh,{ssr:!1,type:"localStorage",get(e){if(!(null==globalThis?void 0:globalThis.document))return e;let t;try{t=localStorage.getItem(ph)||e}catch(r){}return t||e},set(e){try{localStorage.setItem(ph,e)}catch(t){}}});function gh(e,t){const r=e.match(new RegExp(`(^| )${t}=([^;]+)`));return null==r?void 0:r[2]}function vh(e,t){return{ssr:!!t,type:"cookie",get:r=>t?gh(t,e):(null==globalThis?void 0:globalThis.document)&&gh(document.cookie,e)||r,set(t){document.cookie=`${e}=${t}; max-age=31536000; path=/`}}}vh(fh);var yh=Boolean(null==globalThis?void 0:globalThis.document)?n.useLayoutEffect:n.useEffect,bh=()=>{};function wh(e,t){return"cookie"===e.type&&e.ssr?e.get(t):t}function xh(e){const{value:t,children:r,options:{useSystemColorMode:i,initialColorMode:o,disableTransitionOnChange:a}={},colorModeManager:s=mh}=e,c="dark"===o?"dark":"light",[l,u]=(0,n.useState)((()=>wh(s,c))),[d,h]=(0,n.useState)((()=>wh(s))),{getSystemTheme:f,setClassName:p,setDataset:m,addListener:g}=(0,n.useMemo)((()=>function(e={}){const{preventTransition:t=!0}=e,r={setDataset:e=>{const n=t?r.preventTransition():void 0;document.documentElement.dataset.theme=e,document.documentElement.style.colorScheme=e,null==n||n()},setClassName(e){document.body.classList.add(e?hh.dark:hh.light),document.body.classList.remove(e?hh.light:hh.dark)},query:()=>window.matchMedia("(prefers-color-scheme: dark)"),getSystemTheme(e){var t;return(null!=(t=r.query().matches)?t:"dark"===e)?"dark":"light"},addListener(e){const t=r.query(),n=t=>{e(t.matches?"dark":"light")};return"function"===typeof t.addListener?t.addListener(n):t.addEventListener("change",n),()=>{"function"===typeof t.removeListener?t.removeListener(n):t.removeEventListener("change",n)}},preventTransition(){const e=document.createElement("style");return e.appendChild(document.createTextNode("*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(e),()=>{window.getComputedStyle(document.body),requestAnimationFrame((()=>{requestAnimationFrame((()=>{document.head.removeChild(e)}))}))}}};return r}({preventTransition:a})),[a]),v="system"!==o||l?l:d,y=(0,n.useCallback)((e=>{const t="system"===e?f():e;u(t),p("dark"===t),m(t),s.set(t)}),[s,f,p,m]);yh((()=>{"system"===o&&h(f())}),[]),(0,n.useEffect)((()=>{const e=s.get();y(e||("system"!==o?c:"system"))}),[s,c,o,y]);const b=(0,n.useCallback)((()=>{y("dark"===v?"light":"dark")}),[v,y]);(0,n.useEffect)((()=>{if(i)return g(y)}),[i,g,y]);const w=(0,n.useMemo)((()=>({colorMode:null!=t?t:v,toggleColorMode:t?bh:b,setColorMode:t?bh:y,forced:void 0!==t})),[v,b,y,t]);return(0,ln.jsx)(gt.Provider,{value:w,children:r})}xh.displayName="ColorModeProvider";var _h=(0,n.createContext)({getDocument:()=>document,getWindow:()=>window});function Sh(e){const{children:t,environment:r,disabled:i}=e,o=(0,n.useRef)(null),a=(0,n.useMemo)((()=>r||{getDocument:()=>{var e,t;return null!=(t=null==(e=o.current)?void 0:e.ownerDocument)?t:document},getWindow:()=>{var e,t;return null!=(t=null==(e=o.current)?void 0:e.ownerDocument.defaultView)?t:window}}),[r]),s=!i||!r;return(0,ln.jsxs)(_h.Provider,{value:a,children:[t,s&&(0,ln.jsx)("span",{id:"__chakra_env",hidden:!0,ref:o})]})}_h.displayName="EnvironmentContext",Sh.displayName="EnvironmentProvider";var kh=e=>{const{children:t,colorModeManager:r,portalZIndex:n,resetScope:i,resetCSS:o=!0,theme:a={},environment:s,cssVarsRoot:c,disableEnvironment:l,disableGlobalStyle:u}=e,d=(0,ln.jsx)(Sh,{environment:s,disabled:l,children:t});return(0,ln.jsx)(sh,{theme:a,cssVarsRoot:c,children:(0,ln.jsxs)(xh,{colorModeManager:r,options:a.config,children:[o?(0,ln.jsx)(rh,{scope:i}):(0,ln.jsx)(th,{}),!u&&(0,ln.jsx)(dh,{}),n?(0,ln.jsx)(oh,{zIndex:n,children:d}):d]})})},Eh={property:{common:"background-color, border-color, color, fill, stroke, opacity, box-shadow, transform",colors:"background-color, border-color, color, fill, stroke",dimensions:"width, height",position:"left, right, top, bottom",background:"background-color, background-image, background-position"},easing:{"ease-in":"cubic-bezier(0.4, 0, 1, 1)","ease-out":"cubic-bezier(0, 0, 0.2, 1)","ease-in-out":"cubic-bezier(0.4, 0, 0.2, 1)"},duration:{"ultra-fast":"50ms",faster:"100ms",fast:"150ms",normal:"200ms",slow:"300ms",slower:"400ms","ultra-slow":"500ms"}},Ah={hide:-1,auto:"auto",base:0,docked:10,dropdown:1e3,sticky:1100,banner:1200,overlay:1300,modal:1400,popover:1500,skipLink:1600,toast:1700,tooltip:1800},Ph={none:0,"1px":"1px solid","2px":"2px solid","4px":"4px solid","8px":"8px solid"},Oh={base:"0em",sm:"30em",md:"48em",lg:"62em",xl:"80em","2xl":"96em"},Th={transparent:"transparent",current:"currentColor",black:"#000000",white:"#FFFFFF",whiteAlpha:{50:"rgba(255, 255, 255, 0.04)",100:"rgba(255, 255, 255, 0.06)",200:"rgba(255, 255, 255, 0.08)",300:"rgba(255, 255, 255, 0.16)",400:"rgba(255, 255, 255, 0.24)",500:"rgba(255, 255, 255, 0.36)",600:"rgba(255, 255, 255, 0.48)",700:"rgba(255, 255, 255, 0.64)",800:"rgba(255, 255, 255, 0.80)",900:"rgba(255, 255, 255, 0.92)"},blackAlpha:{50:"rgba(0, 0, 0, 0.04)",100:"rgba(0, 0, 0, 0.06)",200:"rgba(0, 0, 0, 0.08)",300:"rgba(0, 0, 0, 0.16)",400:"rgba(0, 0, 0, 0.24)",500:"rgba(0, 0, 0, 0.36)",600:"rgba(0, 0, 0, 0.48)",700:"rgba(0, 0, 0, 0.64)",800:"rgba(0, 0, 0, 0.80)",900:"rgba(0, 0, 0, 0.92)"},gray:{50:"#F7FAFC",100:"#EDF2F7",200:"#E2E8F0",300:"#CBD5E0",400:"#A0AEC0",500:"#718096",600:"#4A5568",700:"#2D3748",800:"#1A202C",900:"#171923"},red:{50:"#FFF5F5",100:"#FED7D7",200:"#FEB2B2",300:"#FC8181",400:"#F56565",500:"#E53E3E",600:"#C53030",700:"#9B2C2C",800:"#822727",900:"#63171B"},orange:{50:"#FFFAF0",100:"#FEEBC8",200:"#FBD38D",300:"#F6AD55",400:"#ED8936",500:"#DD6B20",600:"#C05621",700:"#9C4221",800:"#7B341E",900:"#652B19"},yellow:{50:"#FFFFF0",100:"#FEFCBF",200:"#FAF089",300:"#F6E05E",400:"#ECC94B",500:"#D69E2E",600:"#B7791F",700:"#975A16",800:"#744210",900:"#5F370E"},green:{50:"#F0FFF4",100:"#C6F6D5",200:"#9AE6B4",300:"#68D391",400:"#48BB78",500:"#38A169",600:"#2F855A",700:"#276749",800:"#22543D",900:"#1C4532"},teal:{50:"#E6FFFA",100:"#B2F5EA",200:"#81E6D9",300:"#4FD1C5",400:"#38B2AC",500:"#319795",600:"#2C7A7B",700:"#285E61",800:"#234E52",900:"#1D4044"},blue:{50:"#ebf8ff",100:"#bee3f8",200:"#90cdf4",300:"#63b3ed",400:"#4299e1",500:"#3182ce",600:"#2b6cb0",700:"#2c5282",800:"#2a4365",900:"#1A365D"},cyan:{50:"#EDFDFD",100:"#C4F1F9",200:"#9DECF9",300:"#76E4F7",400:"#0BC5EA",500:"#00B5D8",600:"#00A3C4",700:"#0987A0",800:"#086F83",900:"#065666"},purple:{50:"#FAF5FF",100:"#E9D8FD",200:"#D6BCFA",300:"#B794F4",400:"#9F7AEA",500:"#805AD5",600:"#6B46C1",700:"#553C9A",800:"#44337A",900:"#322659"},pink:{50:"#FFF5F7",100:"#FED7E2",200:"#FBB6CE",300:"#F687B3",400:"#ED64A6",500:"#D53F8C",600:"#B83280",700:"#97266D",800:"#702459",900:"#521B41"},linkedin:{50:"#E8F4F9",100:"#CFEDFB",200:"#9BDAF3",300:"#68C7EC",400:"#34B3E4",500:"#00A0DC",600:"#008CC9",700:"#0077B5",800:"#005E93",900:"#004471"},facebook:{50:"#E8F4F9",100:"#D9DEE9",200:"#B7C2DA",300:"#6482C0",400:"#4267B2",500:"#385898",600:"#314E89",700:"#29487D",800:"#223B67",900:"#1E355B"},messenger:{50:"#D0E6FF",100:"#B9DAFF",200:"#A2CDFF",300:"#7AB8FF",400:"#2E90FF",500:"#0078FF",600:"#0063D1",700:"#0052AC",800:"#003C7E",900:"#002C5C"},whatsapp:{50:"#dffeec",100:"#b9f5d0",200:"#90edb3",300:"#65e495",400:"#3cdd78",500:"#22c35e",600:"#179848",700:"#0c6c33",800:"#01421c",900:"#001803"},twitter:{50:"#E5F4FD",100:"#C8E9FB",200:"#A8DCFA",300:"#83CDF7",400:"#57BBF5",500:"#1DA1F2",600:"#1A94DA",700:"#1681BF",800:"#136B9E",900:"#0D4D71"},telegram:{50:"#E3F2F9",100:"#C5E4F3",200:"#A2D4EC",300:"#7AC1E4",400:"#47A9DA",500:"#0088CC",600:"#007AB8",700:"#006BA1",800:"#005885",900:"#003F5E"}},Ch={none:"0",sm:"0.125rem",base:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem",full:"9999px"},jh={xs:"0 0 0 1px rgba(0, 0, 0, 0.05)",sm:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",base:"0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)",md:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)",lg:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)",xl:"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)","2xl":"0 25px 50px -12px rgba(0, 0, 0, 0.25)",outline:"0 0 0 3px rgba(66, 153, 225, 0.6)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.06)",none:"none","dark-lg":"rgba(0, 0, 0, 0.1) 0px 0px 0px 1px, rgba(0, 0, 0, 0.2) 0px 5px 10px, rgba(0, 0, 0, 0.4) 0px 15px 40px"},Rh={none:0,sm:"4px",base:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},Ih={letterSpacings:{tighter:"-0.05em",tight:"-0.025em",normal:"0",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeights:{normal:"normal",none:1,shorter:1.25,short:1.375,base:1.5,tall:1.625,taller:"2",3:".75rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem"},fontWeights:{hairline:100,thin:200,light:300,normal:400,medium:500,semibold:600,bold:700,extrabold:800,black:900},fonts:{heading:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',body:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',mono:'SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'},fontSizes:{"3xs":"0.45rem","2xs":"0.625rem",xs:"0.75rem",sm:"0.875rem",md:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem","5xl":"3rem","6xl":"3.75rem","7xl":"4.5rem","8xl":"6rem","9xl":"8rem"}},Mh={px:"1px",.5:"0.125rem",1:"0.25rem",1.5:"0.375rem",2:"0.5rem",2.5:"0.625rem",3:"0.75rem",3.5:"0.875rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem",12:"3rem",14:"3.5rem",16:"4rem",20:"5rem",24:"6rem",28:"7rem",32:"8rem",36:"9rem",40:"10rem",44:"11rem",48:"12rem",52:"13rem",56:"14rem",60:"15rem",64:"16rem",72:"18rem",80:"20rem",96:"24rem"},Lh={...Mh,max:"max-content",min:"min-content",full:"100%","3xs":"14rem","2xs":"16rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem","8xl":"90rem",prose:"60ch",container:{sm:"640px",md:"768px",lg:"1024px",xl:"1280px"}},Nh={breakpoints:Oh,zIndices:Ah,radii:Ch,blur:Rh,colors:Th,...Ih,sizes:Lh,shadows:jh,space:Mh,borders:Ph,transition:Eh},{defineMultiStyleConfig:Dh,definePartsStyle:zh}=lt(["stepper","step","title","description","indicator","separator","icon","number"]),Bh=Ee("stepper-indicator-size"),Uh=Ee("stepper-icon-size"),Fh=Ee("stepper-title-font-size"),$h=Ee("stepper-description-font-size"),Hh=Ee("stepper-accent-color"),Vh=zh((({colorScheme:e})=>({stepper:{display:"flex",justifyContent:"space-between",gap:"4","&[data-orientation=vertical]":{flexDirection:"column",alignItems:"flex-start"},"&[data-orientation=horizontal]":{flexDirection:"row",alignItems:"center"},[Hh.variable]:`colors.${e}.500`,_dark:{[Hh.variable]:`colors.${e}.200`}},title:{fontSize:Fh.reference,fontWeight:"medium"},description:{fontSize:$h.reference,color:"chakra-subtle-text"},number:{fontSize:Fh.reference},step:{flexShrink:0,position:"relative",display:"flex",gap:"2","&[data-orientation=horizontal]":{alignItems:"center"},flex:"1","&:last-of-type:not([data-stretch])":{flex:"initial"}},icon:{flexShrink:0,width:Uh.reference,height:Uh.reference},indicator:{flexShrink:0,borderRadius:"full",width:Bh.reference,height:Bh.reference,display:"flex",justifyContent:"center",alignItems:"center","&[data-status=active]":{borderWidth:"2px",borderColor:Hh.reference},"&[data-status=complete]":{bg:Hh.reference,color:"chakra-inverse-text"},"&[data-status=incomplete]":{borderWidth:"2px"}},separator:{bg:"chakra-border-color",flex:"1","&[data-status=complete]":{bg:Hh.reference},"&[data-orientation=horizontal]":{width:"100%",height:"2px",marginStart:"2"},"&[data-orientation=vertical]":{width:"2px",position:"absolute",height:"100%",maxHeight:`calc(100% - ${Bh.reference} - 8px)`,top:`calc(${Bh.reference} + 4px)`,insetStart:`calc(${Bh.reference} / 2 - 1px)`}}}))),qh=Dh({baseStyle:Vh,sizes:{xs:zh({stepper:{[Bh.variable]:"sizes.4",[Uh.variable]:"sizes.3",[Fh.variable]:"fontSizes.xs",[$h.variable]:"fontSizes.xs"}}),sm:zh({stepper:{[Bh.variable]:"sizes.6",[Uh.variable]:"sizes.4",[Fh.variable]:"fontSizes.sm",[$h.variable]:"fontSizes.xs"}}),md:zh({stepper:{[Bh.variable]:"sizes.8",[Uh.variable]:"sizes.5",[Fh.variable]:"fontSizes.md",[$h.variable]:"fontSizes.sm"}}),lg:zh({stepper:{[Bh.variable]:"sizes.10",[Uh.variable]:"sizes.6",[Fh.variable]:"fontSizes.lg",[$h.variable]:"fontSizes.md"}})},defaultProps:{size:"md",colorScheme:"blue"}});function Kh(e,t={}){let r=!1;function n(t){const r=`chakra-${(["container","root"].includes(null!=t?t:"")?[e]:[e,t]).filter(Boolean).join("__")}`;return{className:r,selector:`.${r}`,toString:()=>t}}return{parts:function(...i){!function(){if(r)throw new Error("[anatomy] .part(...) should only be called once. Did you mean to use .extend(...) ?");r=!0}();for(const e of i)t[e]=n(e);return Kh(e,t)},toPart:n,extend:function(...r){for(const e of r)e in t||(t[e]=n(e));return Kh(e,t)},selectors:function(){const e=Object.fromEntries(Object.entries(t).map((([e,t])=>[e,t.selector])));return e},classnames:function(){const e=Object.fromEntries(Object.entries(t).map((([e,t])=>[e,t.className])));return e},get keys(){return Object.keys(t)},__type:{}}}var Wh=Kh("accordion").parts("root","container","button","panel").extend("icon"),Gh=Kh("alert").parts("title","description","container").extend("icon","spinner"),Zh=Kh("avatar").parts("label","badge","container").extend("excessLabel","group"),Yh=Kh("breadcrumb").parts("link","item","container").extend("separator"),Xh=(Kh("button").parts(),Kh("checkbox").parts("control","icon","container").extend("label")),Jh=(Kh("progress").parts("track","filledTrack").extend("label"),Kh("drawer").parts("overlay","dialogContainer","dialog").extend("header","closeButton","body","footer")),Qh=Kh("editable").parts("preview","input","textarea"),ef=Kh("form").parts("container","requiredIndicator","helperText"),tf=Kh("formError").parts("text","icon"),rf=Kh("input").parts("addon","field","element","group"),nf=Kh("list").parts("container","item","icon"),of=Kh("menu").parts("button","list","item").extend("groupTitle","icon","command","divider"),af=Kh("modal").parts("overlay","dialogContainer","dialog").extend("header","closeButton","body","footer"),sf=Kh("numberinput").parts("root","field","stepperGroup","stepper"),cf=(Kh("pininput").parts("field"),Kh("popover").parts("content","header","body","footer").extend("popper","arrow","closeButton")),lf=Kh("progress").parts("label","filledTrack","track"),uf=Kh("radio").parts("container","control","label"),df=Kh("select").parts("field","icon"),hf=Kh("slider").parts("container","track","thumb","filledTrack","mark"),ff=Kh("stat").parts("container","label","helpText","number","icon"),pf=Kh("switch").parts("container","track","thumb","label"),mf=Kh("table").parts("table","thead","tbody","tr","th","td","tfoot","caption"),gf=Kh("tabs").parts("root","tab","tablist","tabpanel","tabpanels","indicator"),vf=Kh("tag").parts("container","label","closeButton"),yf=Kh("card").parts("container","header","body","footer");Kh("stepper").parts("stepper","step","title","description","indicator","separator","icon","number");function bf(e){const t=function(e,t="-"){return e.replace(/\s+/g,t)}(e.toString());return t.includes("\\.")?e:function(e){return!Number.isInteger(parseFloat(e.toString()))}(e)?t.replace(".","\\."):e}function wf(e,t){return`var(${bf(e)}${t?`, ${t}`:""})`}function xf(e,t=""){return`--${function(e,t=""){return[t,bf(e)].filter(Boolean).join("-")}(e,t)}`}function _f(e,t){const r=xf(e,null==t?void 0:t.prefix);return{variable:r,reference:wf(r,Sf(null==t?void 0:t.fallback))}}function Sf(e){return"string"===typeof e?e:null==e?void 0:e.reference}function kf(e){return y(e)&&e.reference?e.reference:String(e)}var Ef=(e,...t)=>t.map(kf).join(` ${e} `).replace(/calc/g,""),Af=(...e)=>`calc(${Ef("+",...e)})`,Pf=(...e)=>`calc(${Ef("-",...e)})`,Of=(...e)=>`calc(${Ef("*",...e)})`,Tf=(...e)=>`calc(${Ef("/",...e)})`,Cf=e=>{const t=kf(e);return null==t||Number.isNaN(parseFloat(t))?Of(t,-1):String(t).startsWith("-")?String(t).slice(1):`-${t}`},jf=Object.assign((e=>({add:(...t)=>jf(Af(e,...t)),subtract:(...t)=>jf(Pf(e,...t)),multiply:(...t)=>jf(Of(e,...t)),divide:(...t)=>jf(Tf(e,...t)),negate:()=>jf(Cf(e)),toString:()=>e.toString()})),{add:Af,subtract:Pf,multiply:Of,divide:Tf,negate:Cf}),{defineMultiStyleConfig:Rf,definePartsStyle:If}=lt(pf.keys),Mf=_f("switch-track-width"),Lf=_f("switch-track-height"),Nf=_f("switch-track-diff"),Df=jf.subtract(Mf,Lf),zf=_f("switch-thumb-x"),Bf=_f("switch-bg"),Uf=e=>{const{colorScheme:t}=e;return{borderRadius:"full",p:"0.5",width:[Mf.reference],height:[Lf.reference],transitionProperty:"common",transitionDuration:"fast",[Bf.variable]:"colors.gray.300",_dark:{[Bf.variable]:"colors.whiteAlpha.400"},_focusVisible:{boxShadow:"outline"},_disabled:{opacity:.4,cursor:"not-allowed"},_checked:{[Bf.variable]:`colors.${t}.500`,_dark:{[Bf.variable]:`colors.${t}.200`}},bg:Bf.reference}},Ff={bg:"white",transitionProperty:"transform",transitionDuration:"normal",borderRadius:"inherit",width:[Lf.reference],height:[Lf.reference],_checked:{transform:`translateX(${zf.reference})`}},$f=Rf({baseStyle:If((e=>({container:{[Nf.variable]:Df,[zf.variable]:Nf.reference,_rtl:{[zf.variable]:jf(Nf).negate().toString()}},track:Uf(e),thumb:Ff}))),sizes:{sm:If({container:{[Mf.variable]:"1.375rem",[Lf.variable]:"sizes.3"}}),md:If({container:{[Mf.variable]:"1.875rem",[Lf.variable]:"sizes.4"}}),lg:If({container:{[Mf.variable]:"2.875rem",[Lf.variable]:"sizes.6"}})},defaultProps:{size:"md",colorScheme:"blue"}});function Hf(e,t){return r=>"dark"===r.colorMode?t:e}function Vf(e){const{orientation:t,vertical:r,horizontal:n}=e;return t?"vertical"===t?r:n:{}}var{defineMultiStyleConfig:qf,definePartsStyle:Kf}=lt(mf.keys),Wf=Kf({table:{fontVariantNumeric:"lining-nums tabular-nums",borderCollapse:"collapse",width:"full"},th:{fontFamily:"heading",fontWeight:"bold",textTransform:"uppercase",letterSpacing:"wider",textAlign:"start"},td:{textAlign:"start"},caption:{mt:4,fontFamily:"heading",textAlign:"center",fontWeight:"medium"}}),Gf={"&[data-is-numeric=true]":{textAlign:"end"}},Zf=Kf((e=>{const{colorScheme:t}=e;return{th:{color:Hf("gray.600","gray.400")(e),borderBottom:"1px",borderColor:Hf(`${t}.100`,`${t}.700`)(e),...Gf},td:{borderBottom:"1px",borderColor:Hf(`${t}.100`,`${t}.700`)(e),...Gf},caption:{color:Hf("gray.600","gray.100")(e)},tfoot:{tr:{"&:last-of-type":{th:{borderBottomWidth:0}}}}}})),Yf=Kf((e=>{const{colorScheme:t}=e;return{th:{color:Hf("gray.600","gray.400")(e),borderBottom:"1px",borderColor:Hf(`${t}.100`,`${t}.700`)(e),...Gf},td:{borderBottom:"1px",borderColor:Hf(`${t}.100`,`${t}.700`)(e),...Gf},caption:{color:Hf("gray.600","gray.100")(e)},tbody:{tr:{"&:nth-of-type(odd)":{"th, td":{borderBottomWidth:"1px",borderColor:Hf(`${t}.100`,`${t}.700`)(e)},td:{background:Hf(`${t}.100`,`${t}.700`)(e)}}}},tfoot:{tr:{"&:last-of-type":{th:{borderBottomWidth:0}}}}}})),Xf=qf({baseStyle:Wf,variants:{simple:Zf,striped:Yf,unstyled:{}},sizes:{sm:Kf({th:{px:"4",py:"1",lineHeight:"4",fontSize:"xs"},td:{px:"4",py:"2",fontSize:"sm",lineHeight:"4"},caption:{px:"4",py:"2",fontSize:"xs"}}),md:Kf({th:{px:"6",py:"3",lineHeight:"4",fontSize:"xs"},td:{px:"6",py:"4",lineHeight:"5"},caption:{px:"6",py:"2",fontSize:"sm"}}),lg:Kf({th:{px:"8",py:"4",lineHeight:"5",fontSize:"sm"},td:{px:"8",py:"5",lineHeight:"6"},caption:{px:"6",py:"2",fontSize:"md"}})},defaultProps:{variant:"simple",size:"md",colorScheme:"gray"}});function Jf(e,t,r){return Math.min(Math.max(e,r),t)}class Qf extends Error{constructor(e){super(`Failed to parse color: "${e}"`)}}var ep=Qf;function tp(e){if("string"!==typeof e)throw new ep(e);if("transparent"===e.trim().toLowerCase())return[0,0,0,0];let t=e.trim();t=lp.test(e)?function(e){const t=e.toLowerCase().trim(),r=np[function(e){let t=5381,r=e.length;for(;r;)t=33*t^e.charCodeAt(--r);return(t>>>0)%2341}(t)];if(!r)throw new ep(e);return`#${r}`}(e):e;const r=op.exec(t);if(r){const e=Array.from(r).slice(1);return[...e.slice(0,3).map((e=>parseInt(ip(e,2),16))),parseInt(ip(e[3]||"f",2),16)/255]}const n=ap.exec(t);if(n){const e=Array.from(n).slice(1);return[...e.slice(0,3).map((e=>parseInt(e,16))),parseInt(e[3]||"ff",16)/255]}const i=sp.exec(t);if(i){const e=Array.from(i).slice(1);return[...e.slice(0,3).map((e=>parseInt(e,10))),parseFloat(e[3]||"1")]}const o=cp.exec(t);if(o){const[t,r,n,i]=Array.from(o).slice(1).map(parseFloat);if(Jf(0,100,r)!==r)throw new ep(e);if(Jf(0,100,n)!==n)throw new ep(e);return[...dp(t,r,n),Number.isNaN(i)?1:i]}throw new ep(e)}const rp=e=>parseInt(e.replace(/_/g,""),36),np="1q29ehhb 1n09sgk7 1kl1ekf_ _yl4zsno 16z9eiv3 1p29lhp8 _bd9zg04 17u0____ _iw9zhe5 _to73___ _r45e31e _7l6g016 _jh8ouiv _zn3qba8 1jy4zshs 11u87k0u 1ro9yvyo 1aj3xael 1gz9zjz0 _3w8l4xo 1bf1ekf_ _ke3v___ _4rrkb__ 13j776yz _646mbhl _nrjr4__ _le6mbhl 1n37ehkb _m75f91n _qj3bzfz 1939yygw 11i5z6x8 _1k5f8xs 1509441m 15t5lwgf _ae2th1n _tg1ugcv 1lp1ugcv 16e14up_ _h55rw7n _ny9yavn _7a11xb_ 1ih442g9 _pv442g9 1mv16xof 14e6y7tu 1oo9zkds 17d1cisi _4v9y70f _y98m8kc 1019pq0v 12o9zda8 _348j4f4 1et50i2o _8epa8__ _ts6senj 1o350i2o 1mi9eiuo 1259yrp0 1ln80gnw _632xcoy 1cn9zldc _f29edu4 1n490c8q _9f9ziet 1b94vk74 _m49zkct 1kz6s73a 1eu9dtog _q58s1rz 1dy9sjiq __u89jo3 _aj5nkwg _ld89jo3 13h9z6wx _qa9z2ii _l119xgq _bs5arju 1hj4nwk9 1qt4nwk9 1ge6wau6 14j9zlcw 11p1edc_ _ms1zcxe _439shk6 _jt9y70f _754zsow 1la40eju _oq5p___ _x279qkz 1fa5r3rv _yd2d9ip _424tcku _8y1di2_ _zi2uabw _yy7rn9h 12yz980_ __39ljp6 1b59zg0x _n39zfzp 1fy9zest _b33k___ _hp9wq92 1il50hz4 _io472ub _lj9z3eo 19z9ykg0 _8t8iu3a 12b9bl4a 1ak5yw0o _896v4ku _tb8k8lv _s59zi6t _c09ze0p 1lg80oqn 1id9z8wb _238nba5 1kq6wgdi _154zssg _tn3zk49 _da9y6tc 1sg7cv4f _r12jvtt 1gq5fmkz 1cs9rvci _lp9jn1c _xw1tdnb 13f9zje6 16f6973h _vo7ir40 _bt5arjf _rc45e4t _hr4e100 10v4e100 _hc9zke2 _w91egv_ _sj2r1kk 13c87yx8 _vqpds__ _ni8ggk8 _tj9yqfb 1ia2j4r4 _7x9b10u 1fc9ld4j 1eq9zldr _5j9lhpx _ez9zl6o _md61fzm".split(" ").reduce(((e,t)=>{const r=rp(t.substring(0,3)),n=rp(t.substring(3)).toString(16);let i="";for(let o=0;o<6-n.length;o++)i+="0";return e[r]=`${i}${n}`,e}),{});const ip=(e,t)=>Array.from(Array(t)).map((()=>e)).join(""),op=new RegExp(`^#${ip("([a-f0-9])",3)}([a-f0-9])?$`,"i"),ap=new RegExp(`^#${ip("([a-f0-9]{2})",3)}([a-f0-9]{2})?$`,"i"),sp=new RegExp(`^rgba?\\(\\s*(\\d+)\\s*${ip(",\\s*(\\d+)\\s*",2)}(?:,\\s*([\\d.]+))?\\s*\\)$`,"i"),cp=/^hsla?\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)$/i,lp=/^[a-z]+$/i,up=e=>Math.round(255*e),dp=(e,t,r)=>{let n=r/100;if(0===t)return[n,n,n].map(up);const i=(e%360+360)%360/60,o=(1-Math.abs(2*n-1))*(t/100),a=o*(1-Math.abs(i%2-1));let s=0,c=0,l=0;i>=0&&i<1?(s=o,c=a):i>=1&&i<2?(s=a,c=o):i>=2&&i<3?(c=o,l=a):i>=3&&i<4?(c=a,l=o):i>=4&&i<5?(s=a,l=o):i>=5&&i<6&&(s=o,l=a);const u=n-o/2;return[s+u,c+u,l+u].map(up)};function hp(e,t,r,n){return`rgba(${Jf(0,255,e).toFixed()}, ${Jf(0,255,t).toFixed()}, ${Jf(0,255,r).toFixed()}, ${parseFloat(Jf(0,1,n).toFixed(3))})`}function fp(e,t){const[r,n,i,o]=tp(e);return hp(r,n,i,o-t)}var pp=(e,t,r)=>{const n=function(e,t,r,n,i){for(t=t.split?t.split("."):t,n=0;n{const t=Jf(0,255,e).toString(16);return 1===t.length?`0${t}`:t};o(t),o(r),o(n),i<1&&o(Math.round(255*i))}(n),n}catch{return null!=r?r:"#000000"}},mp=e=>t=>{const r=(e=>{const[t,r,n]=tp(e);return(299*t+587*r+114*n)/1e3})(pp(t,e));return r<128?"dark":"light"},gp=(e,t)=>r=>fp(pp(r,e),1-t);function vp(e="1rem",t="rgba(255, 255, 255, 0.15)"){return{backgroundImage:`linear-gradient(\n 45deg,\n ${t} 25%,\n transparent 25%,\n transparent 50%,\n ${t} 50%,\n ${t} 75%,\n transparent 75%,\n transparent\n )`,backgroundSize:`${e} ${e}`}}function yp(e){const t=`#${Math.floor(16777215*Math.random()).toString(16).padEnd(6,"0")}`;return e&&(r=e,0!==Object.keys(r).length)?e.string&&e.colors?function(e,t){let r=0;if(0===e.length)return t[0];for(let n=0;n>8*n&255).toString(16)}`.substr(-2)}return r}(e.string):e.colors&&!e.string?function(e){return e[Math.floor(Math.random()*e.length)]}(e.colors):t:t;var r}var bp=Ee("tabs-color"),wp=Ee("tabs-bg"),xp=Ee("tabs-border-color"),{defineMultiStyleConfig:_p,definePartsStyle:Sp}=lt(gf.keys),kp=e=>{const{orientation:t}=e;return{display:"vertical"===t?"flex":"block"}},Ep=e=>{const{isFitted:t}=e;return{flex:t?1:void 0,transitionProperty:"common",transitionDuration:"normal",_focusVisible:{zIndex:1,boxShadow:"outline"},_disabled:{cursor:"not-allowed",opacity:.4}}},Ap=e=>{const{align:t="start",orientation:r}=e;return{justifyContent:{end:"flex-end",center:"center",start:"flex-start"}[t],flexDirection:"vertical"===r?"column":"row"}},Pp={p:4},Op=Sp((e=>({root:kp(e),tab:Ep(e),tablist:Ap(e),tabpanel:Pp}))),Tp={sm:Sp({tab:{py:1,px:4,fontSize:"sm"}}),md:Sp({tab:{fontSize:"md",py:2,px:4}}),lg:Sp({tab:{fontSize:"lg",py:3,px:4}})},Cp=Sp((e=>{const{colorScheme:t,orientation:r}=e,n="vertical"===r,i=n?"borderStart":"borderBottom";return{tablist:{[i]:"2px solid",borderColor:"inherit"},tab:{[i]:"2px solid",borderColor:"transparent",[n?"marginStart":"marginBottom"]:"-2px",_selected:{[bp.variable]:`colors.${t}.600`,_dark:{[bp.variable]:`colors.${t}.300`},borderColor:"currentColor"},_active:{[wp.variable]:"colors.gray.200",_dark:{[wp.variable]:"colors.whiteAlpha.300"}},_disabled:{_active:{bg:"none"}},color:bp.reference,bg:wp.reference}}})),jp=Sp((e=>{const{colorScheme:t}=e;return{tab:{borderTopRadius:"md",border:"1px solid",borderColor:"transparent",mb:"-1px",[xp.variable]:"transparent",_selected:{[bp.variable]:`colors.${t}.600`,[xp.variable]:"colors.white",_dark:{[bp.variable]:`colors.${t}.300`,[xp.variable]:"colors.gray.800"},borderColor:"inherit",borderBottomColor:xp.reference},color:bp.reference},tablist:{mb:"-1px",borderBottom:"1px solid",borderColor:"inherit"}}})),Rp=Sp((e=>{const{colorScheme:t}=e;return{tab:{border:"1px solid",borderColor:"inherit",[wp.variable]:"colors.gray.50",_dark:{[wp.variable]:"colors.whiteAlpha.50"},mb:"-1px",_notLast:{marginEnd:"-1px"},_selected:{[wp.variable]:"colors.white",[bp.variable]:`colors.${t}.600`,_dark:{[wp.variable]:"colors.gray.800",[bp.variable]:`colors.${t}.300`},borderColor:"inherit",borderTopColor:"currentColor",borderBottomColor:"transparent"},color:bp.reference,bg:wp.reference},tablist:{mb:"-1px",borderBottom:"1px solid",borderColor:"inherit"}}})),Ip=Sp((e=>{const{colorScheme:t,theme:r}=e;return{tab:{borderRadius:"full",fontWeight:"semibold",color:"gray.600",_selected:{color:pp(r,`${t}.700`),bg:pp(r,`${t}.100`)}}}})),Mp=Sp((e=>{const{colorScheme:t}=e;return{tab:{borderRadius:"full",fontWeight:"semibold",[bp.variable]:"colors.gray.600",_dark:{[bp.variable]:"inherit"},_selected:{[bp.variable]:"colors.white",[wp.variable]:`colors.${t}.600`,_dark:{[bp.variable]:"colors.gray.800",[wp.variable]:`colors.${t}.300`}},color:bp.reference,bg:wp.reference}}})),Lp=_p({baseStyle:Op,sizes:Tp,variants:{line:Cp,enclosed:jp,"enclosed-colored":Rp,"soft-rounded":Ip,"solid-rounded":Mp,unstyled:Sp({})},defaultProps:{size:"md",variant:"line",colorScheme:"blue"}}),Np=function(e,t){const r={};for(const n of t)if(Array.isArray(n)){const[t,i]=n;r[t]=Ee(`${e}-${t}`,i)}else r[n]=Ee(`${e}-${n}`);return r}("badge",["bg","color","shadow"]),Dp=e=>{const{colorScheme:t,theme:r}=e,n=gp(`${t}.500`,.6)(r);return{[Np.bg.variable]:`colors.${t}.500`,[Np.color.variable]:"colors.white",_dark:{[Np.bg.variable]:n,[Np.color.variable]:"colors.whiteAlpha.800"}}},zp=e=>{const{colorScheme:t,theme:r}=e,n=gp(`${t}.200`,.16)(r);return{[Np.bg.variable]:`colors.${t}.100`,[Np.color.variable]:`colors.${t}.800`,_dark:{[Np.bg.variable]:n,[Np.color.variable]:`colors.${t}.200`}}},Bp=e=>{const{colorScheme:t,theme:r}=e,n=gp(`${t}.200`,.8)(r);return{[Np.color.variable]:`colors.${t}.500`,_dark:{[Np.color.variable]:n},[Np.shadow.variable]:`inset 0 0 0px 1px ${Np.color.reference}`}},Up={baseStyle:{px:1,textTransform:"uppercase",fontSize:"xs",borderRadius:"sm",fontWeight:"bold",bg:Np.bg.reference,color:Np.color.reference,boxShadow:Np.shadow.reference},variants:{solid:Dp,subtle:zp,outline:Bp},defaultProps:{variant:"subtle",colorScheme:"gray"}},{defineMultiStyleConfig:Fp,definePartsStyle:$p}=lt(vf.keys),Hp=Ee("tag-bg"),Vp=Ee("tag-color"),qp=Ee("tag-shadow"),Kp=Ee("tag-min-height"),Wp=Ee("tag-min-width"),Gp=Ee("tag-font-size"),Zp=Ee("tag-padding-inline"),Yp=$p({container:{fontWeight:"medium",lineHeight:1.2,outline:0,[Vp.variable]:Np.color.reference,[Hp.variable]:Np.bg.reference,[qp.variable]:Np.shadow.reference,color:Vp.reference,bg:Hp.reference,boxShadow:qp.reference,borderRadius:"md",minH:Kp.reference,minW:Wp.reference,fontSize:Gp.reference,px:Zp.reference,_focusVisible:{[qp.variable]:"shadows.outline"}},label:{lineHeight:1.2,overflow:"visible"},closeButton:{fontSize:"lg",w:"5",h:"5",transitionProperty:"common",transitionDuration:"normal",borderRadius:"full",marginStart:"1.5",marginEnd:"-1",opacity:.5,_disabled:{opacity:.4},_focusVisible:{boxShadow:"outline",bg:"rgba(0, 0, 0, 0.14)"},_hover:{opacity:.8},_active:{opacity:1}}}),Xp={sm:$p({container:{[Kp.variable]:"sizes.5",[Wp.variable]:"sizes.5",[Gp.variable]:"fontSizes.xs",[Zp.variable]:"space.2"},closeButton:{marginEnd:"-2px",marginStart:"0.35rem"}}),md:$p({container:{[Kp.variable]:"sizes.6",[Wp.variable]:"sizes.6",[Gp.variable]:"fontSizes.sm",[Zp.variable]:"space.2"}}),lg:$p({container:{[Kp.variable]:"sizes.8",[Wp.variable]:"sizes.8",[Gp.variable]:"fontSizes.md",[Zp.variable]:"space.3"}})},Jp={subtle:$p((e=>{var t;return{container:null==(t=Up.variants)?void 0:t.subtle(e)}})),solid:$p((e=>{var t;return{container:null==(t=Up.variants)?void 0:t.solid(e)}})),outline:$p((e=>{var t;return{container:null==(t=Up.variants)?void 0:t.outline(e)}}))},Qp=Fp({variants:Jp,baseStyle:Yp,sizes:Xp,defaultProps:{size:"md",variant:"subtle",colorScheme:"gray"}}),{definePartsStyle:em,defineMultiStyleConfig:tm}=lt(rf.keys),rm=Ee("input-height"),nm=Ee("input-font-size"),im=Ee("input-padding"),om=Ee("input-border-radius"),am=em({addon:{height:rm.reference,fontSize:nm.reference,px:im.reference,borderRadius:om.reference},field:{width:"100%",height:rm.reference,fontSize:nm.reference,px:im.reference,borderRadius:om.reference,minWidth:0,outline:0,position:"relative",appearance:"none",transitionProperty:"common",transitionDuration:"normal",_disabled:{opacity:.4,cursor:"not-allowed"}}}),sm={lg:{[nm.variable]:"fontSizes.lg",[im.variable]:"space.4",[om.variable]:"radii.md",[rm.variable]:"sizes.12"},md:{[nm.variable]:"fontSizes.md",[im.variable]:"space.4",[om.variable]:"radii.md",[rm.variable]:"sizes.10"},sm:{[nm.variable]:"fontSizes.sm",[im.variable]:"space.3",[om.variable]:"radii.sm",[rm.variable]:"sizes.8"},xs:{[nm.variable]:"fontSizes.xs",[im.variable]:"space.2",[om.variable]:"radii.sm",[rm.variable]:"sizes.6"}},cm={lg:em({field:sm.lg,group:sm.lg}),md:em({field:sm.md,group:sm.md}),sm:em({field:sm.sm,group:sm.sm}),xs:em({field:sm.xs,group:sm.xs})};function lm(e){const{focusBorderColor:t,errorBorderColor:r}=e;return{focusBorderColor:t||Hf("blue.500","blue.300")(e),errorBorderColor:r||Hf("red.500","red.300")(e)}}var um,dm,hm,fm,pm,mm,gm,vm,ym,bm,wm,xm=em((e=>{const{theme:t}=e,{focusBorderColor:r,errorBorderColor:n}=lm(e);return{field:{border:"1px solid",borderColor:"inherit",bg:"inherit",_hover:{borderColor:Hf("gray.300","whiteAlpha.400")(e)},_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:pp(t,n),boxShadow:`0 0 0 1px ${pp(t,n)}`},_focusVisible:{zIndex:1,borderColor:pp(t,r),boxShadow:`0 0 0 1px ${pp(t,r)}`}},addon:{border:"1px solid",borderColor:Hf("inherit","whiteAlpha.50")(e),bg:Hf("gray.100","whiteAlpha.300")(e)}}})),_m=em((e=>{const{theme:t}=e,{focusBorderColor:r,errorBorderColor:n}=lm(e);return{field:{border:"2px solid",borderColor:"transparent",bg:Hf("gray.100","whiteAlpha.50")(e),_hover:{bg:Hf("gray.200","whiteAlpha.100")(e)},_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:pp(t,n)},_focusVisible:{bg:"transparent",borderColor:pp(t,r)}},addon:{border:"2px solid",borderColor:"transparent",bg:Hf("gray.100","whiteAlpha.50")(e)}}})),Sm=em((e=>{const{theme:t}=e,{focusBorderColor:r,errorBorderColor:n}=lm(e);return{field:{borderBottom:"1px solid",borderColor:"inherit",borderRadius:"0",px:"0",bg:"transparent",_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:pp(t,n),boxShadow:`0px 1px 0px 0px ${pp(t,n)}`},_focusVisible:{borderColor:pp(t,r),boxShadow:`0px 1px 0px 0px ${pp(t,r)}`}},addon:{borderBottom:"2px solid",borderColor:"inherit",borderRadius:"0",px:"0",bg:"transparent"}}})),km=tm({baseStyle:am,sizes:cm,variants:{outline:xm,filled:_m,flushed:Sm,unstyled:em({field:{bg:"transparent",px:"0",height:"auto"},addon:{bg:"transparent",px:"0",height:"auto"}})},defaultProps:{size:"md",variant:"outline"}}),Em={...null==(um=km.baseStyle)?void 0:um.field,paddingY:"2",minHeight:"20",lineHeight:"short",verticalAlign:"top"},Am={outline:e=>{var t,r;return null!=(r=null==(t=km.variants)?void 0:t.outline(e).field)?r:{}},flushed:e=>{var t,r;return null!=(r=null==(t=km.variants)?void 0:t.flushed(e).field)?r:{}},filled:e=>{var t,r;return null!=(r=null==(t=km.variants)?void 0:t.filled(e).field)?r:{}},unstyled:null!=(hm=null==(dm=km.variants)?void 0:dm.unstyled.field)?hm:{}},Pm={baseStyle:Em,sizes:{xs:null!=(pm=null==(fm=km.sizes)?void 0:fm.xs.field)?pm:{},sm:null!=(gm=null==(mm=km.sizes)?void 0:mm.sm.field)?gm:{},md:null!=(ym=null==(vm=km.sizes)?void 0:vm.md.field)?ym:{},lg:null!=(wm=null==(bm=km.sizes)?void 0:bm.lg.field)?wm:{}},variants:Am,defaultProps:{size:"md",variant:"outline"}},Om=_f("tooltip-bg"),Tm=_f("tooltip-fg"),Cm=_f("popper-arrow-bg"),jm={baseStyle:{bg:Om.reference,color:Tm.reference,[Om.variable]:"colors.gray.700",[Tm.variable]:"colors.whiteAlpha.900",_dark:{[Om.variable]:"colors.gray.300",[Tm.variable]:"colors.gray.900"},[Cm.variable]:Om.reference,px:"2",py:"0.5",borderRadius:"sm",fontWeight:"medium",fontSize:"sm",boxShadow:"md",maxW:"xs",zIndex:"tooltip"}},{defineMultiStyleConfig:Rm,definePartsStyle:Im}=lt(lf.keys),Mm=e=>{const{colorScheme:t,theme:r,isIndeterminate:n,hasStripe:i}=e,o=Hf(vp(),vp("1rem","rgba(0,0,0,0.1)"))(e),a=Hf(`${t}.500`,`${t}.200`)(e),s=`linear-gradient(\n to right,\n transparent 0%,\n ${pp(r,a)} 50%,\n transparent 100%\n )`;return{...!n&&i&&o,...n?{bgImage:s}:{bgColor:a}}},Lm={lineHeight:"1",fontSize:"0.25em",fontWeight:"bold",color:"white"},Nm=e=>({bg:Hf("gray.100","whiteAlpha.300")(e)}),Dm=e=>({transitionProperty:"common",transitionDuration:"slow",...Mm(e)}),zm=Im((e=>({label:Lm,filledTrack:Dm(e),track:Nm(e)}))),Bm=Rm({sizes:{xs:Im({track:{h:"1"}}),sm:Im({track:{h:"2"}}),md:Im({track:{h:"3"}}),lg:Im({track:{h:"4"}})},baseStyle:zm,defaultProps:{size:"md",colorScheme:"blue"}});function Um(e,...t){return(e=>"function"===typeof e)(e)?e(...t):e}var Fm,$m,Hm,Vm,qm,Km,Wm,Gm,Zm,{definePartsStyle:Ym,defineMultiStyleConfig:Xm}=lt(Xh.keys),Jm=Ee("checkbox-size"),Qm=e=>{const{colorScheme:t}=e;return{w:Jm.reference,h:Jm.reference,transitionProperty:"box-shadow",transitionDuration:"normal",border:"2px solid",borderRadius:"sm",borderColor:"inherit",color:"white",_checked:{bg:Hf(`${t}.500`,`${t}.200`)(e),borderColor:Hf(`${t}.500`,`${t}.200`)(e),color:Hf("white","gray.900")(e),_hover:{bg:Hf(`${t}.600`,`${t}.300`)(e),borderColor:Hf(`${t}.600`,`${t}.300`)(e)},_disabled:{borderColor:Hf("gray.200","transparent")(e),bg:Hf("gray.200","whiteAlpha.300")(e),color:Hf("gray.500","whiteAlpha.500")(e)}},_indeterminate:{bg:Hf(`${t}.500`,`${t}.200`)(e),borderColor:Hf(`${t}.500`,`${t}.200`)(e),color:Hf("white","gray.900")(e)},_disabled:{bg:Hf("gray.100","whiteAlpha.100")(e),borderColor:Hf("gray.100","transparent")(e)},_focusVisible:{boxShadow:"outline"},_invalid:{borderColor:Hf("red.500","red.300")(e)}}},eg={_disabled:{cursor:"not-allowed"}},tg={userSelect:"none",_disabled:{opacity:.4}},rg={transitionProperty:"transform",transitionDuration:"normal"},ng=Xm({baseStyle:Ym((e=>({icon:rg,container:eg,control:Um(Qm,e),label:tg}))),sizes:{sm:Ym({control:{[Jm.variable]:"sizes.3"},label:{fontSize:"sm"},icon:{fontSize:"3xs"}}),md:Ym({control:{[Jm.variable]:"sizes.4"},label:{fontSize:"md"},icon:{fontSize:"2xs"}}),lg:Ym({control:{[Jm.variable]:"sizes.5"},label:{fontSize:"lg"},icon:{fontSize:"2xs"}})},defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:ig,definePartsStyle:og}=lt(uf.keys),ag=e=>{var t;const r=null==(t=Um(ng.baseStyle,e))?void 0:t.control;return{...r,borderRadius:"full",_checked:{...null==r?void 0:r._checked,_before:{content:'""',display:"inline-block",pos:"relative",w:"50%",h:"50%",borderRadius:"50%",bg:"currentColor"}}}},sg=og((e=>{var t,r,n,i;return{label:null==(r=(t=ng).baseStyle)?void 0:r.call(t,e).label,container:null==(i=(n=ng).baseStyle)?void 0:i.call(n,e).container,control:ag(e)}})),cg=ig({baseStyle:sg,sizes:{md:og({control:{w:"4",h:"4"},label:{fontSize:"md"}}),lg:og({control:{w:"5",h:"5"},label:{fontSize:"lg"}}),sm:og({control:{width:"3",height:"3"},label:{fontSize:"sm"}})},defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:lg,definePartsStyle:ug}=lt(df.keys),dg=Ee("select-bg"),hg={paddingInlineEnd:"8"},fg=lg({baseStyle:ug({field:{...null==(Fm=km.baseStyle)?void 0:Fm.field,appearance:"none",paddingBottom:"1px",lineHeight:"normal",bg:dg.reference,[dg.variable]:"colors.white",_dark:{[dg.variable]:"colors.gray.700"},"> option, > optgroup":{bg:dg.reference}},icon:{width:"6",height:"100%",insetEnd:"2",position:"relative",color:"currentColor",fontSize:"xl",_disabled:{opacity:.5}}}),sizes:{lg:{...null==($m=km.sizes)?void 0:$m.lg,field:{...null==(Hm=km.sizes)?void 0:Hm.lg.field,...hg}},md:{...null==(Vm=km.sizes)?void 0:Vm.md,field:{...null==(qm=km.sizes)?void 0:qm.md.field,...hg}},sm:{...null==(Km=km.sizes)?void 0:Km.sm,field:{...null==(Wm=km.sizes)?void 0:Wm.sm.field,...hg}},xs:{...null==(Gm=km.sizes)?void 0:Gm.xs,field:{...null==(Zm=km.sizes)?void 0:Zm.xs.field,...hg},icon:{insetEnd:"1"}}},variants:km.variants,defaultProps:km.defaultProps}),pg=Ee("skeleton-start-color"),mg=Ee("skeleton-end-color"),gg={baseStyle:{[pg.variable]:"colors.gray.100",[mg.variable]:"colors.gray.400",_dark:{[pg.variable]:"colors.gray.800",[mg.variable]:"colors.gray.600"},background:pg.reference,borderColor:mg.reference,opacity:.7,borderRadius:"sm"}},vg=Ee("skip-link-bg"),yg={baseStyle:{borderRadius:"md",fontWeight:"semibold",_focusVisible:{boxShadow:"outline",padding:"4",position:"fixed",top:"6",insetStart:"6",[vg.variable]:"colors.white",_dark:{[vg.variable]:"colors.gray.700"},bg:vg.reference}}},{defineMultiStyleConfig:bg,definePartsStyle:wg}=lt(hf.keys),xg=Ee("slider-thumb-size"),_g=Ee("slider-track-size"),Sg=Ee("slider-bg"),kg=e=>{const{orientation:t}=e;return{display:"inline-block",position:"relative",cursor:"pointer",_disabled:{opacity:.6,cursor:"default",pointerEvents:"none"},...Vf({orientation:t,vertical:{h:"100%"},horizontal:{w:"100%"}})}},Eg=e=>({...Vf({orientation:e.orientation,horizontal:{h:_g.reference},vertical:{w:_g.reference}}),overflow:"hidden",borderRadius:"sm",[Sg.variable]:"colors.gray.200",_dark:{[Sg.variable]:"colors.whiteAlpha.200"},_disabled:{[Sg.variable]:"colors.gray.300",_dark:{[Sg.variable]:"colors.whiteAlpha.300"}},bg:Sg.reference}),Ag=e=>{const{orientation:t}=e;return{...Vf({orientation:t,vertical:{left:"50%",transform:"translateX(-50%)",_active:{transform:"translateX(-50%) scale(1.15)"}},horizontal:{top:"50%",transform:"translateY(-50%)",_active:{transform:"translateY(-50%) scale(1.15)"}}}),w:xg.reference,h:xg.reference,display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",outline:0,zIndex:1,borderRadius:"full",bg:"white",boxShadow:"base",border:"1px solid",borderColor:"transparent",transitionProperty:"transform",transitionDuration:"normal",_focusVisible:{boxShadow:"outline"},_disabled:{bg:"gray.300"}}},Pg=e=>{const{colorScheme:t}=e;return{width:"inherit",height:"inherit",[Sg.variable]:`colors.${t}.500`,_dark:{[Sg.variable]:`colors.${t}.200`},bg:Sg.reference}},Og=bg({baseStyle:wg((e=>({container:kg(e),track:Eg(e),thumb:Ag(e),filledTrack:Pg(e)}))),sizes:{lg:wg({container:{[xg.variable]:"sizes.4",[_g.variable]:"sizes.1"}}),md:wg({container:{[xg.variable]:"sizes.3.5",[_g.variable]:"sizes.1"}}),sm:wg({container:{[xg.variable]:"sizes.2.5",[_g.variable]:"sizes.0.5"}})},defaultProps:{size:"md",colorScheme:"blue"}}),Tg=_f("spinner-size"),Cg={baseStyle:{width:[Tg.reference],height:[Tg.reference]},sizes:{xs:{[Tg.variable]:"sizes.3"},sm:{[Tg.variable]:"sizes.4"},md:{[Tg.variable]:"sizes.6"},lg:{[Tg.variable]:"sizes.8"},xl:{[Tg.variable]:"sizes.12"}},defaultProps:{size:"md"}},{defineMultiStyleConfig:jg,definePartsStyle:Rg}=lt(ff.keys),Ig=jg({baseStyle:Rg({container:{},label:{fontWeight:"medium"},helpText:{opacity:.8,marginBottom:"2"},number:{verticalAlign:"baseline",fontWeight:"semibold"},icon:{marginEnd:1,w:"3.5",h:"3.5",verticalAlign:"middle"}}),sizes:{md:Rg({label:{fontSize:"sm"},helpText:{fontSize:"sm"},number:{fontSize:"2xl"}})},defaultProps:{size:"md"}}),Mg=Ee("kbd-bg"),Lg={baseStyle:{[Mg.variable]:"colors.gray.100",_dark:{[Mg.variable]:"colors.whiteAlpha.100"},bg:Mg.reference,borderRadius:"md",borderWidth:"1px",borderBottomWidth:"3px",fontSize:"0.8em",fontWeight:"bold",lineHeight:"normal",px:"0.4em",whiteSpace:"nowrap"}},Ng={baseStyle:{transitionProperty:"common",transitionDuration:"fast",transitionTimingFunction:"ease-out",cursor:"pointer",textDecoration:"none",outline:"none",color:"inherit",_hover:{textDecoration:"underline"},_focusVisible:{boxShadow:"outline"}}},{defineMultiStyleConfig:Dg,definePartsStyle:zg}=lt(nf.keys),Bg=Dg({baseStyle:zg({icon:{marginEnd:"2",display:"inline",verticalAlign:"text-bottom"}})}),{defineMultiStyleConfig:Ug,definePartsStyle:Fg}=lt(of.keys),$g=Ee("menu-bg"),Hg=Ee("menu-shadow"),Vg=Ug({baseStyle:Fg({button:{transitionProperty:"common",transitionDuration:"normal"},list:{[$g.variable]:"#fff",[Hg.variable]:"shadows.sm",_dark:{[$g.variable]:"colors.gray.700",[Hg.variable]:"shadows.dark-lg"},color:"inherit",minW:"3xs",py:"2",zIndex:1,borderRadius:"md",borderWidth:"1px",bg:$g.reference,boxShadow:Hg.reference},item:{py:"1.5",px:"3",transitionProperty:"background",transitionDuration:"ultra-fast",transitionTimingFunction:"ease-in",_focus:{[$g.variable]:"colors.gray.100",_dark:{[$g.variable]:"colors.whiteAlpha.100"}},_active:{[$g.variable]:"colors.gray.200",_dark:{[$g.variable]:"colors.whiteAlpha.200"}},_expanded:{[$g.variable]:"colors.gray.100",_dark:{[$g.variable]:"colors.whiteAlpha.100"}},_disabled:{opacity:.4,cursor:"not-allowed"},bg:$g.reference},groupTitle:{mx:4,my:2,fontWeight:"semibold",fontSize:"sm"},icon:{display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0},command:{opacity:.6},divider:{border:0,borderBottom:"1px solid",borderColor:"inherit",my:"2",opacity:.6}})}),{defineMultiStyleConfig:qg,definePartsStyle:Kg}=lt(af.keys),Wg=Ee("modal-bg"),Gg=Ee("modal-shadow"),Zg={bg:"blackAlpha.600",zIndex:"modal"},Yg=e=>{const{isCentered:t,scrollBehavior:r}=e;return{display:"flex",zIndex:"modal",justifyContent:"center",alignItems:t?"center":"flex-start",overflow:"inside"===r?"hidden":"auto",overscrollBehaviorY:"none"}},Xg=e=>{const{isCentered:t,scrollBehavior:r}=e;return{borderRadius:"md",color:"inherit",my:t?"auto":"16",mx:t?"auto":void 0,zIndex:"modal",maxH:"inside"===r?"calc(100% - 7.5rem)":void 0,[Wg.variable]:"colors.white",[Gg.variable]:"shadows.lg",_dark:{[Wg.variable]:"colors.gray.700",[Gg.variable]:"shadows.dark-lg"},bg:Wg.reference,boxShadow:Gg.reference}},Jg={px:"6",py:"4",fontSize:"xl",fontWeight:"semibold"},Qg={position:"absolute",top:"2",insetEnd:"3"},ev=e=>{const{scrollBehavior:t}=e;return{px:"6",py:"2",flex:"1",overflow:"inside"===t?"auto":void 0}},tv={px:"6",py:"4"};function rv(e){return Kg("full"===e?{dialog:{maxW:"100vw",minH:"$100vh",my:"0",borderRadius:"0"}}:{dialog:{maxW:e}})}var nv=qg({baseStyle:Kg((e=>({overlay:Zg,dialogContainer:Um(Yg,e),dialog:Um(Xg,e),header:Jg,closeButton:Qg,body:Um(ev,e),footer:tv}))),sizes:{xs:rv("xs"),sm:rv("sm"),md:rv("md"),lg:rv("lg"),xl:rv("xl"),"2xl":rv("2xl"),"3xl":rv("3xl"),"4xl":rv("4xl"),"5xl":rv("5xl"),"6xl":rv("6xl"),full:rv("full")},defaultProps:{size:"md"}}),{defineMultiStyleConfig:iv,definePartsStyle:ov}=lt(sf.keys),av=_f("number-input-stepper-width"),sv=_f("number-input-input-padding"),cv=jf(av).add("0.5rem").toString(),lv=_f("number-input-bg"),uv=_f("number-input-color"),dv=_f("number-input-border-color"),hv={[av.variable]:"sizes.6",[sv.variable]:cv},fv=e=>{var t,r;return null!=(r=null==(t=Um(km.baseStyle,e))?void 0:t.field)?r:{}},pv={width:av.reference},mv={borderStart:"1px solid",borderStartColor:dv.reference,color:uv.reference,bg:lv.reference,[uv.variable]:"colors.chakra-body-text",[dv.variable]:"colors.chakra-border-color",_dark:{[uv.variable]:"colors.whiteAlpha.800",[dv.variable]:"colors.whiteAlpha.300"},_active:{[lv.variable]:"colors.gray.200",_dark:{[lv.variable]:"colors.whiteAlpha.300"}},_disabled:{opacity:.4,cursor:"not-allowed"}},gv=ov((e=>{var t;return{root:hv,field:null!=(t=Um(fv,e))?t:{},stepperGroup:pv,stepper:mv}}));function vv(e){var t,r,n;const i=null==(t=km.sizes)?void 0:t[e],o={lg:"md",md:"md",sm:"sm",xs:"sm"},a=null!=(n=null==(r=i.field)?void 0:r.fontSize)?n:"md",s=Ih.fontSizes[a];return ov({field:{...i.field,paddingInlineEnd:sv.reference,verticalAlign:"top"},stepper:{fontSize:jf(s).multiply(.75).toString(),_first:{borderTopEndRadius:o[e]},_last:{borderBottomEndRadius:o[e],mt:"-1px",borderTopWidth:1}}})}var yv,bv,wv,xv=iv({baseStyle:gv,sizes:{xs:vv("xs"),sm:vv("sm"),md:vv("md"),lg:vv("lg")},variants:km.variants,defaultProps:km.defaultProps}),_v={...null==(yv=km.baseStyle)?void 0:yv.field,textAlign:"center"},Sv={lg:{fontSize:"lg",w:12,h:12,borderRadius:"md"},md:{fontSize:"md",w:10,h:10,borderRadius:"md"},sm:{fontSize:"sm",w:8,h:8,borderRadius:"sm"},xs:{fontSize:"xs",w:6,h:6,borderRadius:"sm"}},kv={outline:e=>{var t,r,n;return null!=(n=null==(r=Um(null==(t=km.variants)?void 0:t.outline,e))?void 0:r.field)?n:{}},flushed:e=>{var t,r,n;return null!=(n=null==(r=Um(null==(t=km.variants)?void 0:t.flushed,e))?void 0:r.field)?n:{}},filled:e=>{var t,r,n;return null!=(n=null==(r=Um(null==(t=km.variants)?void 0:t.filled,e))?void 0:r.field)?n:{}},unstyled:null!=(wv=null==(bv=km.variants)?void 0:bv.unstyled.field)?wv:{}},Ev={baseStyle:_v,sizes:Sv,variants:kv,defaultProps:km.defaultProps},{defineMultiStyleConfig:Av,definePartsStyle:Pv}=lt(cf.keys),Ov=_f("popper-bg"),Tv=_f("popper-arrow-bg"),Cv=_f("popper-arrow-shadow-color"),jv=Av({baseStyle:Pv({popper:{zIndex:10},content:{[Ov.variable]:"colors.white",bg:Ov.reference,[Tv.variable]:Ov.reference,[Cv.variable]:"colors.gray.200",_dark:{[Ov.variable]:"colors.gray.700",[Cv.variable]:"colors.whiteAlpha.300"},width:"xs",border:"1px solid",borderColor:"inherit",borderRadius:"md",boxShadow:"sm",zIndex:"inherit",_focusVisible:{outline:0,boxShadow:"outline"}},header:{px:3,py:2,borderBottomWidth:"1px"},body:{px:3,py:2},footer:{px:3,py:2,borderTopWidth:"1px"},closeButton:{position:"absolute",borderRadius:"md",top:1,insetEnd:2,padding:2}})}),{definePartsStyle:Rv,defineMultiStyleConfig:Iv}=lt(Jh.keys),Mv=Ee("drawer-bg"),Lv=Ee("drawer-box-shadow");function Nv(e){return Rv("full"===e?{dialog:{maxW:"100vw",h:"100vh"}}:{dialog:{maxW:e}})}var Dv={bg:"blackAlpha.600",zIndex:"modal"},zv={display:"flex",zIndex:"modal",justifyContent:"center"},Bv=e=>{const{isFullHeight:t}=e;return{...t&&{height:"100vh"},zIndex:"modal",maxH:"100vh",color:"inherit",[Mv.variable]:"colors.white",[Lv.variable]:"shadows.lg",_dark:{[Mv.variable]:"colors.gray.700",[Lv.variable]:"shadows.dark-lg"},bg:Mv.reference,boxShadow:Lv.reference}},Uv={px:"6",py:"4",fontSize:"xl",fontWeight:"semibold"},Fv={position:"absolute",top:"2",insetEnd:"3"},$v={px:"6",py:"2",flex:"1",overflow:"auto"},Hv={px:"6",py:"4"},Vv=Iv({baseStyle:Rv((e=>({overlay:Dv,dialogContainer:zv,dialog:Um(Bv,e),header:Uv,closeButton:Fv,body:$v,footer:Hv}))),sizes:{xs:Nv("xs"),sm:Nv("md"),md:Nv("lg"),lg:Nv("2xl"),xl:Nv("4xl"),full:Nv("full")},defaultProps:{size:"xs"}}),{definePartsStyle:qv,defineMultiStyleConfig:Kv}=lt(Qh.keys),Wv=Kv({baseStyle:qv({preview:{borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal"},input:{borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal",width:"full",_focusVisible:{boxShadow:"outline"},_placeholder:{opacity:.6}},textarea:{borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal",width:"full",_focusVisible:{boxShadow:"outline"},_placeholder:{opacity:.6}}})}),{definePartsStyle:Gv,defineMultiStyleConfig:Zv}=lt(ef.keys),Yv=Ee("form-control-color"),Xv=Zv({baseStyle:Gv({container:{width:"100%",position:"relative"},requiredIndicator:{marginStart:"1",[Yv.variable]:"colors.red.500",_dark:{[Yv.variable]:"colors.red.300"},color:Yv.reference},helperText:{mt:"2",[Yv.variable]:"colors.gray.600",_dark:{[Yv.variable]:"colors.whiteAlpha.600"},color:Yv.reference,lineHeight:"normal",fontSize:"sm"}})}),{definePartsStyle:Jv,defineMultiStyleConfig:Qv}=lt(tf.keys),ey=Ee("form-error-color"),ty=Qv({baseStyle:Jv({text:{[ey.variable]:"colors.red.500",_dark:{[ey.variable]:"colors.red.300"},color:ey.reference,mt:"2",fontSize:"sm",lineHeight:"normal"},icon:{marginEnd:"0.5em",[ey.variable]:"colors.red.500",_dark:{[ey.variable]:"colors.red.300"},color:ey.reference}})}),ry={baseStyle:{fontSize:"md",marginEnd:"3",mb:"2",fontWeight:"medium",transitionProperty:"common",transitionDuration:"normal",opacity:1,_disabled:{opacity:.4}}},ny={baseStyle:{fontFamily:"heading",fontWeight:"bold"},sizes:{"4xl":{fontSize:["6xl",null,"7xl"],lineHeight:1},"3xl":{fontSize:["5xl",null,"6xl"],lineHeight:1},"2xl":{fontSize:["4xl",null,"5xl"],lineHeight:[1.2,null,1]},xl:{fontSize:["3xl",null,"4xl"],lineHeight:[1.33,null,1.2]},lg:{fontSize:["2xl",null,"3xl"],lineHeight:[1.33,null,1.2]},md:{fontSize:"xl",lineHeight:1.2},sm:{fontSize:"md",lineHeight:1.2},xs:{fontSize:"sm",lineHeight:1.2}},defaultProps:{size:"xl"}},{defineMultiStyleConfig:iy,definePartsStyle:oy}=lt(Yh.keys),ay=Ee("breadcrumb-link-decor"),sy=iy({baseStyle:oy({link:{transitionProperty:"common",transitionDuration:"fast",transitionTimingFunction:"ease-out",outline:"none",color:"inherit",textDecoration:ay.reference,[ay.variable]:"none","&:not([aria-current=page])":{cursor:"pointer",_hover:{[ay.variable]:"underline"},_focusVisible:{boxShadow:"outline"}}}})}),cy=e=>{const{colorScheme:t,theme:r}=e;if("gray"===t)return{color:Hf("gray.800","whiteAlpha.900")(e),_hover:{bg:Hf("gray.100","whiteAlpha.200")(e)},_active:{bg:Hf("gray.200","whiteAlpha.300")(e)}};const n=gp(`${t}.200`,.12)(r),i=gp(`${t}.200`,.24)(r);return{color:Hf(`${t}.600`,`${t}.200`)(e),bg:"transparent",_hover:{bg:Hf(`${t}.50`,n)(e)},_active:{bg:Hf(`${t}.100`,i)(e)}}},ly=e=>{const{colorScheme:t}=e,r=Hf("gray.200","whiteAlpha.300")(e);return{border:"1px solid",borderColor:"gray"===t?r:"currentColor",".chakra-button__group[data-attached][data-orientation=horizontal] > &:not(:last-of-type)":{marginEnd:"-1px"},".chakra-button__group[data-attached][data-orientation=vertical] > &:not(:last-of-type)":{marginBottom:"-1px"},...Um(cy,e)}},uy={yellow:{bg:"yellow.400",color:"black",hoverBg:"yellow.500",activeBg:"yellow.600"},cyan:{bg:"cyan.400",color:"black",hoverBg:"cyan.500",activeBg:"cyan.600"}},dy=e=>{var t;const{colorScheme:r}=e;if("gray"===r){const t=Hf("gray.100","whiteAlpha.200")(e);return{bg:t,color:Hf("gray.800","whiteAlpha.900")(e),_hover:{bg:Hf("gray.200","whiteAlpha.300")(e),_disabled:{bg:t}},_active:{bg:Hf("gray.300","whiteAlpha.400")(e)}}}const{bg:n=`${r}.500`,color:i="white",hoverBg:o=`${r}.600`,activeBg:a=`${r}.700`}=null!=(t=uy[r])?t:{},s=Hf(n,`${r}.200`)(e);return{bg:s,color:Hf(i,"gray.800")(e),_hover:{bg:Hf(o,`${r}.300`)(e),_disabled:{bg:s}},_active:{bg:Hf(a,`${r}.400`)(e)}}},hy=e=>{const{colorScheme:t}=e;return{padding:0,height:"auto",lineHeight:"normal",verticalAlign:"baseline",color:Hf(`${t}.500`,`${t}.200`)(e),_hover:{textDecoration:"underline",_disabled:{textDecoration:"none"}},_active:{color:Hf(`${t}.700`,`${t}.500`)(e)}}},fy={baseStyle:{lineHeight:"1.2",borderRadius:"md",fontWeight:"semibold",transitionProperty:"common",transitionDuration:"normal",_focusVisible:{boxShadow:"outline"},_disabled:{opacity:.4,cursor:"not-allowed",boxShadow:"none"},_hover:{_disabled:{bg:"initial"}}},variants:{ghost:cy,outline:ly,solid:dy,link:hy,unstyled:{bg:"none",color:"inherit",display:"inline",lineHeight:"inherit",m:"0",p:"0"}},sizes:{lg:{h:"12",minW:"12",fontSize:"lg",px:"6"},md:{h:"10",minW:"10",fontSize:"md",px:"4"},sm:{h:"8",minW:"8",fontSize:"sm",px:"3"},xs:{h:"6",minW:"6",fontSize:"xs",px:"2"}},defaultProps:{variant:"solid",size:"md",colorScheme:"gray"}},{definePartsStyle:py,defineMultiStyleConfig:my}=lt(yf.keys),gy=Ee("card-bg"),vy=Ee("card-padding"),yy=Ee("card-shadow"),by=Ee("card-radius"),wy=Ee("card-border-width","0"),xy=Ee("card-border-color"),_y=py({container:{[gy.variable]:"colors.chakra-body-bg",backgroundColor:gy.reference,boxShadow:yy.reference,borderRadius:by.reference,color:"chakra-body-text",borderWidth:wy.reference,borderColor:xy.reference},body:{padding:vy.reference,flex:"1 1 0%"},header:{padding:vy.reference},footer:{padding:vy.reference}}),Sy={sm:py({container:{[by.variable]:"radii.base",[vy.variable]:"space.3"}}),md:py({container:{[by.variable]:"radii.md",[vy.variable]:"space.5"}}),lg:py({container:{[by.variable]:"radii.xl",[vy.variable]:"space.7"}})},ky=my({baseStyle:_y,variants:{elevated:py({container:{[yy.variable]:"shadows.base",_dark:{[gy.variable]:"colors.gray.700"}}}),outline:py({container:{[wy.variable]:"1px",[xy.variable]:"colors.chakra-border-color"}}),filled:py({container:{[gy.variable]:"colors.chakra-subtle-bg"}}),unstyled:{body:{[vy.variable]:0},header:{[vy.variable]:0},footer:{[vy.variable]:0}}},sizes:Sy,defaultProps:{variant:"elevated",size:"md"}}),Ey=_f("close-button-size"),Ay=_f("close-button-bg"),Py={baseStyle:{w:[Ey.reference],h:[Ey.reference],borderRadius:"md",transitionProperty:"common",transitionDuration:"normal",_disabled:{opacity:.4,cursor:"not-allowed",boxShadow:"none"},_hover:{[Ay.variable]:"colors.blackAlpha.100",_dark:{[Ay.variable]:"colors.whiteAlpha.100"}},_active:{[Ay.variable]:"colors.blackAlpha.200",_dark:{[Ay.variable]:"colors.whiteAlpha.200"}},_focusVisible:{boxShadow:"outline"},bg:Ay.reference},sizes:{lg:{[Ey.variable]:"sizes.10",fontSize:"md"},md:{[Ey.variable]:"sizes.8",fontSize:"xs"},sm:{[Ey.variable]:"sizes.6",fontSize:"2xs"}},defaultProps:{size:"md"}},{variants:Oy,defaultProps:Ty}=Up,Cy={baseStyle:{fontFamily:"mono",fontSize:"sm",px:"0.2em",borderRadius:"sm",bg:Np.bg.reference,color:Np.color.reference,boxShadow:Np.shadow.reference},variants:Oy,defaultProps:Ty},jy={baseStyle:{w:"100%",mx:"auto",maxW:"prose",px:"4"}},Ry={baseStyle:{opacity:.6,borderColor:"inherit"},variants:{solid:{borderStyle:"solid"},dashed:{borderStyle:"dashed"}},defaultProps:{variant:"solid"}},{definePartsStyle:Iy,defineMultiStyleConfig:My}=lt(Wh.keys),Ly=My({baseStyle:Iy({container:{borderTopWidth:"1px",borderColor:"inherit",_last:{borderBottomWidth:"1px"}},button:{transitionProperty:"common",transitionDuration:"normal",fontSize:"md",_focusVisible:{boxShadow:"outline"},_hover:{bg:"blackAlpha.50"},_disabled:{opacity:.4,cursor:"not-allowed"},px:"4",py:"2"},panel:{pt:"2",px:"4",pb:"5"},icon:{fontSize:"1.25em"}})}),{definePartsStyle:Ny,defineMultiStyleConfig:Dy}=lt(Gh.keys),zy=Ee("alert-fg"),By=Ee("alert-bg"),Uy=Ny({container:{bg:By.reference,px:"4",py:"3"},title:{fontWeight:"bold",lineHeight:"6",marginEnd:"2"},description:{lineHeight:"6"},icon:{color:zy.reference,flexShrink:0,marginEnd:"3",w:"5",h:"6"},spinner:{color:zy.reference,flexShrink:0,marginEnd:"3",w:"5",h:"5"}});function Fy(e){const{theme:t,colorScheme:r}=e;return{light:`colors.${r}.100`,dark:gp(`${r}.200`,.16)(t)}}var $y=Ny((e=>{const{colorScheme:t}=e,r=Fy(e);return{container:{[zy.variable]:`colors.${t}.600`,[By.variable]:r.light,_dark:{[zy.variable]:`colors.${t}.200`,[By.variable]:r.dark}}}})),Hy=Ny((e=>{const{colorScheme:t}=e,r=Fy(e);return{container:{[zy.variable]:`colors.${t}.600`,[By.variable]:r.light,_dark:{[zy.variable]:`colors.${t}.200`,[By.variable]:r.dark},paddingStart:"3",borderStartWidth:"4px",borderStartColor:zy.reference}}})),Vy=Ny((e=>{const{colorScheme:t}=e,r=Fy(e);return{container:{[zy.variable]:`colors.${t}.600`,[By.variable]:r.light,_dark:{[zy.variable]:`colors.${t}.200`,[By.variable]:r.dark},pt:"2",borderTopWidth:"4px",borderTopColor:zy.reference}}})),qy=Ny((e=>{const{colorScheme:t}=e;return{container:{[zy.variable]:"colors.white",[By.variable]:`colors.${t}.600`,_dark:{[zy.variable]:"colors.gray.900",[By.variable]:`colors.${t}.200`},color:zy.reference}}})),Ky=Dy({baseStyle:Uy,variants:{subtle:$y,"left-accent":Hy,"top-accent":Vy,solid:qy},defaultProps:{variant:"subtle",colorScheme:"blue"}}),{definePartsStyle:Wy,defineMultiStyleConfig:Gy}=lt(Zh.keys),Zy=Ee("avatar-border-color"),Yy=Ee("avatar-bg"),Xy=Ee("avatar-font-size"),Jy=Ee("avatar-size"),Qy={borderRadius:"full",border:"0.2em solid",borderColor:Zy.reference,[Zy.variable]:"white",_dark:{[Zy.variable]:"colors.gray.800"}},eb={bg:Yy.reference,fontSize:Xy.reference,width:Jy.reference,height:Jy.reference,lineHeight:"1",[Yy.variable]:"colors.gray.200",_dark:{[Yy.variable]:"colors.whiteAlpha.400"}},tb=e=>{const{name:t,theme:r}=e,n=t?yp({string:t}):"colors.gray.400",i=(e=>t=>"dark"===mp(e)(t))(n)(r);let o="white";return i||(o="gray.800"),{bg:Yy.reference,fontSize:Xy.reference,color:o,borderColor:Zy.reference,verticalAlign:"top",width:Jy.reference,height:Jy.reference,"&:not([data-loaded])":{[Yy.variable]:n},[Zy.variable]:"colors.white",_dark:{[Zy.variable]:"colors.gray.800"}}},rb={fontSize:Xy.reference,lineHeight:"1"};function nb(e){const t="100%"!==e?Lh[e]:void 0;return Wy({container:{[Jy.variable]:null!=t?t:e,[Xy.variable]:`calc(${null!=t?t:e} / 2.5)`},excessLabel:{[Jy.variable]:null!=t?t:e,[Xy.variable]:`calc(${null!=t?t:e} / 2.5)`}})}var ib={Accordion:Ly,Alert:Ky,Avatar:Gy({baseStyle:Wy((e=>({badge:Um(Qy,e),excessLabel:Um(eb,e),container:Um(tb,e),label:rb}))),sizes:{"2xs":nb(4),xs:nb(6),sm:nb(8),md:nb(12),lg:nb(16),xl:nb(24),"2xl":nb(32),full:nb("100%")},defaultProps:{size:"md"}}),Badge:Up,Breadcrumb:sy,Button:fy,Checkbox:ng,CloseButton:Py,Code:Cy,Container:jy,Divider:Ry,Drawer:Vv,Editable:Wv,Form:Xv,FormError:ty,FormLabel:ry,Heading:ny,Input:km,Kbd:Lg,Link:Ng,List:Bg,Menu:Vg,Modal:nv,NumberInput:xv,PinInput:Ev,Popover:jv,Progress:Bm,Radio:cg,Select:fg,Skeleton:gg,SkipLink:yg,Slider:Og,Spinner:Cg,Stat:Ig,Switch:$f,Table:Xf,Tabs:Lp,Tag:Qp,Textarea:Pm,Tooltip:jm,Card:ky,Stepper:qh},ob={colors:{"chakra-body-text":{_light:"gray.800",_dark:"whiteAlpha.900"},"chakra-body-bg":{_light:"white",_dark:"gray.800"},"chakra-border-color":{_light:"gray.200",_dark:"whiteAlpha.300"},"chakra-inverse-text":{_light:"white",_dark:"gray.800"},"chakra-subtle-bg":{_light:"gray.100",_dark:"gray.700"},"chakra-subtle-text":{_light:"gray.600",_dark:"gray.400"},"chakra-placeholder-color":{_light:"gray.500",_dark:"whiteAlpha.400"}}},ab={global:{body:{fontFamily:"body",color:"chakra-body-text",bg:"chakra-body-bg",transitionProperty:"background-color",transitionDuration:"normal",lineHeight:"base"},"*::placeholder":{color:"chakra-placeholder-color"},"*, *::before, &::after":{borderColor:"chakra-border-color"}}},sb={useSystemColorMode:!1,initialColorMode:"light",cssVarPrefix:"chakra"},cb={semanticTokens:ob,direction:"ltr",...Nh,components:ib,styles:ab,config:sb},lb={semanticTokens:ob,direction:"ltr",components:{},...Nh,styles:ab,config:sb},ub=(e,t)=>e.find((e=>e.id===t));function db(e,t){const r=hb(e,t);return{position:r,index:r?e[r].findIndex((e=>e.id===t)):-1}}function hb(e,t){for(const[r,n]of Object.entries(e))if(ub(n,t))return r}function fb(e){return{position:"fixed",zIndex:"var(--toast-z-index, 5500)",pointerEvents:"none",display:"flex",flexDirection:"column",margin:"top"===e||"bottom"===e?"0 auto":void 0,top:e.includes("top")?"env(safe-area-inset-top, 0px)":void 0,bottom:e.includes("bottom")?"env(safe-area-inset-bottom, 0px)":void 0,right:e.includes("left")?void 0:"env(safe-area-inset-right, 0px)",left:e.includes("right")?void 0:"env(safe-area-inset-left, 0px)"}}function pb(e,t=[]){const r=(0,n.useRef)(e);return(0,n.useEffect)((()=>{r.current=e})),(0,n.useCallback)(((...e)=>{var t;return null==(t=r.current)?void 0:t.call(r,...e)}),t)}function mb(e,t){const r=(0,n.useRef)(!1),i=(0,n.useRef)(!1);(0,n.useEffect)((()=>{if(r.current&&i.current)return e();i.current=!0}),t),(0,n.useEffect)((()=>(r.current=!0,()=>{r.current=!1})),[])}const gb=(0,n.createContext)(null);function vb(){const e=(0,n.useContext)(gb);if(null===e)return[!0,null];const{isPresent:t,onExitComplete:r,register:i}=e,o=(0,n.useId)();(0,n.useEffect)((()=>i(o)),[]);return!t&&r?[!1,()=>r&&r(o)]:[!0]}function yb(){return function(e){return null===e||e.isPresent}((0,n.useContext)(gb))}const bb=(0,n.createContext)({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"}),wb=(0,n.createContext)({}),xb="undefined"!==typeof document,_b=xb?n.useLayoutEffect:n.useEffect,Sb=(0,n.createContext)({strict:!1}),kb=e=>e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),Eb="data-"+kb("framerAppearId"),Ab=!1,Pb=!1;class Ob{constructor(){this.order=[],this.scheduled=new Set}add(e){if(!this.scheduled.has(e))return this.scheduled.add(e),this.order.push(e),!0}remove(e){const t=this.order.indexOf(e);-1!==t&&(this.order.splice(t,1),this.scheduled.delete(e))}clear(){this.order.length=0,this.scheduled.clear()}}const Tb=["prepare","read","update","preRender","render","postRender"];function Cb(e,t){let r=!1,n=!0;const i={delta:0,timestamp:0,isProcessing:!1},o=Tb.reduce(((e,t)=>(e[t]=function(e){let t=new Ob,r=new Ob,n=0,i=!1,o=!1;const a=new WeakSet,s={schedule:(e,o=!1,s=!1)=>{const c=s&&i,l=c?t:r;return o&&a.add(e),l.add(e)&&c&&i&&(n=t.order.length),e},cancel:e=>{r.remove(e),a.delete(e)},process:c=>{if(i)o=!0;else{if(i=!0,[t,r]=[r,t],r.clear(),n=t.order.length,n)for(let r=0;rr=!0)),e)),{}),a=e=>{o[e].process(i)},s=()=>{const o=Pb?i.timestamp:performance.now();r=!1,i.delta=n?1e3/60:Math.max(Math.min(o-i.timestamp,40),1),i.timestamp=o,i.isProcessing=!0,Tb.forEach(a),i.isProcessing=!1,r&&t&&(n=!1,e(s))},c=Tb.reduce(((t,a)=>{const c=o[a];return t[a]=(t,o=!1,a=!1)=>(r||(r=!0,n=!0,i.isProcessing||e(s)),c.schedule(t,o,a)),t}),{});return{schedule:c,cancel:e=>Tb.forEach((t=>o[t].cancel(e))),state:i,steps:o}}const{schedule:jb,cancel:Rb}=Cb(queueMicrotask,!1);function Ib(e){return e&&"object"===typeof e&&Object.prototype.hasOwnProperty.call(e,"current")}function Mb(e){return"string"===typeof e||Array.isArray(e)}function Lb(e){return null!==e&&"object"===typeof e&&"function"===typeof e.start}const Nb=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],Db=["initial",...Nb];function zb(e){return Lb(e.animate)||Db.some((t=>Mb(e[t])))}function Bb(e){return Boolean(zb(e)||e.variants)}function Ub(e){const{initial:t,animate:r}=function(e,t){if(zb(e)){const{initial:t,animate:r}=e;return{initial:!1===t||Mb(t)?t:void 0,animate:Mb(r)?r:void 0}}return!1!==e.inherit?t:{}}(e,(0,n.useContext)(wb));return(0,n.useMemo)((()=>({initial:t,animate:r})),[Fb(t),Fb(r)])}function Fb(e){return Array.isArray(e)?e.join(" "):e}const $b={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},Hb={};for(const r in $b)Hb[r]={isEnabled:e=>$b[r].some((t=>!!e[t]))};const Vb=(0,n.createContext)({}),qb=(0,n.createContext)({}),Kb=Symbol.for("motionComponentSymbol");function Wb({preloadedFeatures:e,createVisualElement:t,useRender:r,useVisualState:i,Component:o}){e&&function(e){for(const t in e)Hb[t]={...Hb[t],...e[t]}}(e);const a=(0,n.forwardRef)((function(a,s){let c;const l={...(0,n.useContext)(bb),...a,layoutId:Gb(a)},{isStatic:u}=l,d=Ub(a),h=i(a,u);if(!u&&xb){d.visualElement=function(e,t,r,i){const{visualElement:o}=(0,n.useContext)(wb),a=(0,n.useContext)(Sb),s=(0,n.useContext)(gb),c=(0,n.useContext)(bb).reducedMotion,l=(0,n.useRef)();i=i||a.renderer,!l.current&&i&&(l.current=i(e,{visualState:t,parent:o,props:r,presenceContext:s,blockInitialAnimation:!!s&&!1===s.initial,reducedMotionConfig:c}));const u=l.current;(0,n.useInsertionEffect)((()=>{u&&u.update(r,s)}));const d=(0,n.useRef)(Boolean(r[Eb]&&!window.HandoffComplete));return _b((()=>{u&&(jb.postRender(u.render),d.current&&u.animationState&&u.animationState.animateChanges())})),(0,n.useEffect)((()=>{u&&(u.updateFeatures(),!d.current&&u.animationState&&u.animationState.animateChanges(),d.current&&(d.current=!1,window.HandoffComplete=!0))})),u}(o,h,l,t);const r=(0,n.useContext)(qb),i=(0,n.useContext)(Sb).strict;d.visualElement&&(c=d.visualElement.loadFeatures(l,i,e,r))}return n.createElement(wb.Provider,{value:d},c&&d.visualElement?n.createElement(c,{visualElement:d.visualElement,...l}):null,r(o,a,function(e,t,r){return(0,n.useCallback)((n=>{n&&e.mount&&e.mount(n),t&&(n?t.mount(n):t.unmount()),r&&("function"===typeof r?r(n):Ib(r)&&(r.current=n))}),[t])}(h,d.visualElement,s),h,u,d.visualElement))}));return a[Kb]=o,a}function Gb({layoutId:e}){const t=(0,n.useContext)(Vb).id;return t&&void 0!==e?t+"-"+e:e}function Zb(e){function t(t,r={}){return Wb(e(t,r))}if("undefined"===typeof Proxy)return t;const r=new Map;return new Proxy(t,{get:(e,n)=>(r.has(n)||r.set(n,t(n)),r.get(n))})}const Yb=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function Xb(e){return"string"===typeof e&&!e.includes("-")&&!!(Yb.indexOf(e)>-1||/[A-Z]/.test(e))}const Jb={};const Qb=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],ew=new Set(Qb);function tw(e,{layout:t,layoutId:r}){return ew.has(e)||e.startsWith("origin")||(t||void 0!==r)&&(!!Jb[e]||"opacity"===e)}const rw=e=>Boolean(e&&e.getVelocity),nw={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},iw=Qb.length;const ow=e=>t=>"string"===typeof t&&t.startsWith(e),aw=ow("--"),sw=ow("var(--"),cw=(e,t)=>t&&"number"===typeof e?t.transform(e):e,lw=(e,t,r)=>Math.min(Math.max(r,e),t),uw={test:e=>"number"===typeof e,parse:parseFloat,transform:e=>e},dw={...uw,transform:e=>lw(0,1,e)},hw={...uw,default:1},fw=e=>Math.round(1e5*e)/1e5,pw=/(-)?([\d]*\.?[\d])+/g,mw=/(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))/gi,gw=/^(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function vw(e){return"string"===typeof e}const yw=e=>({test:t=>vw(t)&&t.endsWith(e)&&1===t.split(" ").length,parse:parseFloat,transform:t=>`${t}${e}`}),bw=yw("deg"),ww=yw("%"),xw=yw("px"),_w=yw("vh"),Sw=yw("vw"),kw={...ww,parse:e=>ww.parse(e)/100,transform:e=>ww.transform(100*e)},Ew={...uw,transform:Math.round},Aw={borderWidth:xw,borderTopWidth:xw,borderRightWidth:xw,borderBottomWidth:xw,borderLeftWidth:xw,borderRadius:xw,radius:xw,borderTopLeftRadius:xw,borderTopRightRadius:xw,borderBottomRightRadius:xw,borderBottomLeftRadius:xw,width:xw,maxWidth:xw,height:xw,maxHeight:xw,size:xw,top:xw,right:xw,bottom:xw,left:xw,padding:xw,paddingTop:xw,paddingRight:xw,paddingBottom:xw,paddingLeft:xw,margin:xw,marginTop:xw,marginRight:xw,marginBottom:xw,marginLeft:xw,rotate:bw,rotateX:bw,rotateY:bw,rotateZ:bw,scale:hw,scaleX:hw,scaleY:hw,scaleZ:hw,skew:bw,skewX:bw,skewY:bw,distance:xw,translateX:xw,translateY:xw,translateZ:xw,x:xw,y:xw,z:xw,perspective:xw,transformPerspective:xw,opacity:dw,originX:kw,originY:kw,originZ:xw,zIndex:Ew,fillOpacity:dw,strokeOpacity:dw,numOctaves:Ew};function Pw(e,t,r,n){const{style:i,vars:o,transform:a,transformOrigin:s}=e;let c=!1,l=!1,u=!0;for(const d in t){const e=t[d];if(aw(d)){o[d]=e;continue}const r=Aw[d],n=cw(e,r);if(ew.has(d)){if(c=!0,a[d]=n,!u)continue;e!==(r.default||0)&&(u=!1)}else d.startsWith("origin")?(l=!0,s[d]=n):i[d]=n}if(t.transform||(c||n?i.transform=function(e,{enableHardwareAcceleration:t=!0,allowTransformNone:r=!0},n,i){let o="";for(let a=0;a({style:{},transform:{},transformOrigin:{},vars:{}});function Tw(e,t,r){for(const n in t)rw(t[n])||tw(n,r)||(e[n]=t[n])}function Cw(e,t,r){const i={};return Tw(i,e.style||{},e),Object.assign(i,function({transformTemplate:e},t,r){return(0,n.useMemo)((()=>{const n=Ow();return Pw(n,t,{enableHardwareAcceleration:!r},e),Object.assign({},n.vars,n.style)}),[t])}(e,t,r)),i}function jw(e,t,r){const n={},i=Cw(e,t,r);return e.drag&&!1!==e.dragListener&&(n.draggable=!1,i.userSelect=i.WebkitUserSelect=i.WebkitTouchCallout="none",i.touchAction=!0===e.drag?"none":"pan-"+("x"===e.drag?"y":"x")),void 0===e.tabIndex&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=i,n}const Rw=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function Iw(e){return e.startsWith("while")||e.startsWith("drag")&&"draggable"!==e||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||Rw.has(e)}let Mw=e=>!Iw(e);try{(Lw=require("@emotion/is-prop-valid").default)&&(Mw=e=>e.startsWith("on")?!Iw(e):Lw(e))}catch(Zr){}var Lw;function Nw(e,t,r){return"string"===typeof e?e:xw.transform(t+r*e)}const Dw={offset:"stroke-dashoffset",array:"stroke-dasharray"},zw={offset:"strokeDashoffset",array:"strokeDasharray"};function Bw(e,{attrX:t,attrY:r,attrScale:n,originX:i,originY:o,pathLength:a,pathSpacing:s=1,pathOffset:c=0,...l},u,d,h){if(Pw(e,l,u,h),d)return void(e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox));e.attrs=e.style,e.style={};const{attrs:f,style:p,dimensions:m}=e;f.transform&&(m&&(p.transform=f.transform),delete f.transform),m&&(void 0!==i||void 0!==o||p.transform)&&(p.transformOrigin=function(e,t,r){return`${Nw(t,e.x,e.width)} ${Nw(r,e.y,e.height)}`}(m,void 0!==i?i:.5,void 0!==o?o:.5)),void 0!==t&&(f.x=t),void 0!==r&&(f.y=r),void 0!==n&&(f.scale=n),void 0!==a&&function(e,t,r=1,n=0,i=!0){e.pathLength=1;const o=i?Dw:zw;e[o.offset]=xw.transform(-n);const a=xw.transform(t),s=xw.transform(r);e[o.array]=`${a} ${s}`}(f,a,s,c,!1)}const Uw=()=>({...Ow(),attrs:{}}),Fw=e=>"string"===typeof e&&"svg"===e.toLowerCase();function $w(e,t,r,i){const o=(0,n.useMemo)((()=>{const r=Uw();return Bw(r,t,{enableHardwareAcceleration:!1},Fw(i),e.transformTemplate),{...r.attrs,style:{...r.style}}}),[t]);if(e.style){const t={};Tw(t,e.style,e),o.style={...t,...o.style}}return o}function Hw(e=!1){return(t,r,i,{latestValues:o},a)=>{const s=(Xb(t)?$w:jw)(r,o,a,t),c=function(e,t,r){const n={};for(const i in e)"values"===i&&"object"===typeof e.values||(Mw(i)||!0===r&&Iw(i)||!t&&!Iw(i)||e.draggable&&i.startsWith("onDrag"))&&(n[i]=e[i]);return n}(r,"string"===typeof t,e),l={...c,...s,ref:i},{children:u}=r,d=(0,n.useMemo)((()=>rw(u)?u.get():u),[u]);return(0,n.createElement)(t,{...l,children:d})}}function Vw(e,{style:t,vars:r},n,i){Object.assign(e.style,t,i&&i.getProjectionStyles(n));for(const o in r)e.style.setProperty(o,r[o])}const qw=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function Kw(e,t,r,n){Vw(e,t,void 0,n);for(const i in t.attrs)e.setAttribute(qw.has(i)?i:kb(i),t.attrs[i])}function Ww(e,t){const{style:r}=e,n={};for(const i in r)(rw(r[i])||t.style&&rw(t.style[i])||tw(i,e))&&(n[i]=r[i]);return n}function Gw(e,t){const r=Ww(e,t);for(const n in e)if(rw(e[n])||rw(t[n])){r[-1!==Qb.indexOf(n)?"attr"+n.charAt(0).toUpperCase()+n.substring(1):n]=e[n]}return r}function Zw(e,t,r,n={},i={}){return"function"===typeof t&&(t=t(void 0!==r?r:e.custom,n,i)),"string"===typeof t&&(t=e.variants&&e.variants[t]),"function"===typeof t&&(t=t(void 0!==r?r:e.custom,n,i)),t}function Yw(e){const t=(0,n.useRef)(null);return null===t.current&&(t.current=e()),t.current}const Xw=e=>Array.isArray(e),Jw=e=>Boolean(e&&"object"===typeof e&&e.mix&&e.toValue),Qw=e=>Xw(e)?e[e.length-1]||0:e;function ex(e){const t=rw(e)?e.get():e;return Jw(t)?t.toValue():t}const tx=e=>(t,r)=>{const i=(0,n.useContext)(wb),o=(0,n.useContext)(gb),a=()=>function({scrapeMotionValuesFromProps:e,createRenderState:t,onMount:r},n,i,o){const a={latestValues:rx(n,i,o,e),renderState:t()};return r&&(a.mount=e=>r(n,e,a)),a}(e,t,i,o);return r?a():Yw(a)};function rx(e,t,r,n){const i={},o=n(e,{});for(const h in o)i[h]=ex(o[h]);let{initial:a,animate:s}=e;const c=zb(e),l=Bb(e);t&&l&&!c&&!1!==e.inherit&&(void 0===a&&(a=t.initial),void 0===s&&(s=t.animate));let u=!!r&&!1===r.initial;u=u||!1===a;const d=u?s:a;if(d&&"boolean"!==typeof d&&!Lb(d)){(Array.isArray(d)?d:[d]).forEach((t=>{const r=Zw(e,t);if(!r)return;const{transitionEnd:n,transition:o,...a}=r;for(const e in a){let t=a[e];if(Array.isArray(t)){t=t[u?t.length-1:0]}null!==t&&(i[e]=t)}for(const e in n)i[e]=n[e]}))}return i}const nx=e=>e,{schedule:ix,cancel:ox,state:ax,steps:sx}=Cb("undefined"!==typeof requestAnimationFrame?requestAnimationFrame:nx,!0),cx={useVisualState:tx({scrapeMotionValuesFromProps:Gw,createRenderState:Uw,onMount:(e,t,{renderState:r,latestValues:n})=>{ix.read((()=>{try{r.dimensions="function"===typeof t.getBBox?t.getBBox():t.getBoundingClientRect()}catch(e){r.dimensions={x:0,y:0,width:0,height:0}}})),ix.render((()=>{Bw(r,n,{enableHardwareAcceleration:!1},Fw(t.tagName),e.transformTemplate),Kw(t,r)}))}})},lx={useVisualState:tx({scrapeMotionValuesFromProps:Ww,createRenderState:Ow})};function ux(e,t,r,n={passive:!0}){return e.addEventListener(t,r,n),()=>e.removeEventListener(t,r)}const dx=e=>"mouse"===e.pointerType?"number"!==typeof e.button||e.button<=0:!1!==e.isPrimary;function hx(e,t="page"){return{point:{x:e[t+"X"],y:e[t+"Y"]}}}const fx=e=>t=>dx(t)&&e(t,hx(t));function px(e,t,r,n){return ux(e,t,fx(r),n)}const mx=(e,t)=>r=>t(e(r)),gx=(...e)=>e.reduce(mx);function vx(e){let t=null;return()=>{const r=()=>{t=null};return null===t&&(t=e,r)}}const yx=vx("dragHorizontal"),bx=vx("dragVertical");function wx(e){let t=!1;if("y"===e)t=bx();else if("x"===e)t=yx();else{const e=yx(),r=bx();e&&r?t=()=>{e(),r()}:(e&&e(),r&&r())}return t}function xx(){const e=wx(!0);return!e||(e(),!1)}class _x{constructor(e){this.isMounted=!1,this.node=e}update(){}}function Sx(e,t){const r="pointer"+(t?"enter":"leave"),n="onHover"+(t?"Start":"End");return px(e.current,r,((r,i)=>{if("touch"===r.pointerType||xx())return;const o=e.getProps();e.animationState&&o.whileHover&&e.animationState.setActive("whileHover",t),o[n]&&ix.update((()=>o[n](r,i)))}),{passive:!e.getProps()[n]})}const kx=(e,t)=>!!t&&(e===t||kx(e,t.parentElement));function Ex(e,t){if(!t)return;const r=new PointerEvent("pointer"+e);t(r,hx(r))}const Ax=new WeakMap,Px=new WeakMap,Ox=e=>{const t=Ax.get(e.target);t&&t(e)},Tx=e=>{e.forEach(Ox)};function Cx(e,t,r){const n=function({root:e,...t}){const r=e||document;Px.has(r)||Px.set(r,{});const n=Px.get(r),i=JSON.stringify(t);return n[i]||(n[i]=new IntersectionObserver(Tx,{root:e,...t})),n[i]}(t);return Ax.set(e,r),n.observe(e),()=>{Ax.delete(e),n.unobserve(e)}}const jx={some:0,all:1};const Rx={inView:{Feature:class extends _x{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:e={}}=this.node.getProps(),{root:t,margin:r,amount:n="some",once:i}=e,o={root:t?t.current:void 0,rootMargin:r,threshold:"number"===typeof n?n:jx[n]};return Cx(this.node.current,o,(e=>{const{isIntersecting:t}=e;if(this.isInView===t)return;if(this.isInView=t,i&&!t&&this.hasEnteredView)return;t&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",t);const{onViewportEnter:r,onViewportLeave:n}=this.node.getProps(),o=t?r:n;o&&o(e)}))}mount(){this.startObserver()}update(){if("undefined"===typeof IntersectionObserver)return;const{props:e,prevProps:t}=this.node,r=["amount","margin","root"].some(function({viewport:e={}},{viewport:t={}}={}){return r=>e[r]!==t[r]}(e,t));r&&this.startObserver()}unmount(){}}},tap:{Feature:class extends _x{constructor(){super(...arguments),this.removeStartListeners=nx,this.removeEndListeners=nx,this.removeAccessibleListeners=nx,this.startPointerPress=(e,t)=>{if(this.isPressing)return;this.removeEndListeners();const r=this.node.getProps(),n=px(window,"pointerup",((e,t)=>{if(!this.checkPressEnd())return;const{onTap:r,onTapCancel:n,globalTapTarget:i}=this.node.getProps();ix.update((()=>{i||kx(this.node.current,e.target)?r&&r(e,t):n&&n(e,t)}))}),{passive:!(r.onTap||r.onPointerUp)}),i=px(window,"pointercancel",((e,t)=>this.cancelPress(e,t)),{passive:!(r.onTapCancel||r.onPointerCancel)});this.removeEndListeners=gx(n,i),this.startPress(e,t)},this.startAccessiblePress=()=>{const e=ux(this.node.current,"keydown",(e=>{if("Enter"!==e.key||this.isPressing)return;this.removeEndListeners(),this.removeEndListeners=ux(this.node.current,"keyup",(e=>{"Enter"===e.key&&this.checkPressEnd()&&Ex("up",((e,t)=>{const{onTap:r}=this.node.getProps();r&&ix.update((()=>r(e,t)))}))})),Ex("down",((e,t)=>{this.startPress(e,t)}))})),t=ux(this.node.current,"blur",(()=>{this.isPressing&&Ex("cancel",((e,t)=>this.cancelPress(e,t)))}));this.removeAccessibleListeners=gx(e,t)}}startPress(e,t){this.isPressing=!0;const{onTapStart:r,whileTap:n}=this.node.getProps();n&&this.node.animationState&&this.node.animationState.setActive("whileTap",!0),r&&ix.update((()=>r(e,t)))}checkPressEnd(){this.removeEndListeners(),this.isPressing=!1;return this.node.getProps().whileTap&&this.node.animationState&&this.node.animationState.setActive("whileTap",!1),!xx()}cancelPress(e,t){if(!this.checkPressEnd())return;const{onTapCancel:r}=this.node.getProps();r&&ix.update((()=>r(e,t)))}mount(){const e=this.node.getProps(),t=px(e.globalTapTarget?window:this.node.current,"pointerdown",this.startPointerPress,{passive:!(e.onTapStart||e.onPointerStart)}),r=ux(this.node.current,"focus",this.startAccessiblePress);this.removeStartListeners=gx(t,r)}unmount(){this.removeStartListeners(),this.removeEndListeners(),this.removeAccessibleListeners()}}},focus:{Feature:class extends _x{constructor(){super(...arguments),this.isActive=!1}onFocus(){let e=!1;try{e=this.node.current.matches(":focus-visible")}catch(t){e=!0}e&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){this.isActive&&this.node.animationState&&(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=gx(ux(this.node.current,"focus",(()=>this.onFocus())),ux(this.node.current,"blur",(()=>this.onBlur())))}unmount(){}}},hover:{Feature:class extends _x{mount(){this.unmount=gx(Sx(this.node,!0),Sx(this.node,!1))}unmount(){}}}};function Ix(e,t){if(!Array.isArray(t))return!1;const r=t.length;if(r!==e.length)return!1;for(let n=0;nt[r]=e.get())),t}(e),function(e){const t={};return e.values.forEach(((e,r)=>t[r]=e.getVelocity())),t}(e))}let Lx=nx,Nx=nx;const Dx=e=>1e3*e,zx=e=>e/1e3,Bx=!1,Ux=e=>Array.isArray(e)&&"number"===typeof e[0];function Fx(e){return Boolean(!e||"string"===typeof e&&Hx[e]||Ux(e)||Array.isArray(e)&&e.every(Fx))}const $x=([e,t,r,n])=>`cubic-bezier(${e}, ${t}, ${r}, ${n})`,Hx={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:$x([0,.65,.55,1]),circOut:$x([.55,0,1,.45]),backIn:$x([.31,.01,.66,-.59]),backOut:$x([.33,1.53,.69,.99])};function Vx(e){if(e)return Ux(e)?$x(e):Array.isArray(e)?e.map(Vx):Hx[e]}const qx=(e,t,r)=>(((1-3*r+3*t)*e+(3*r-6*t))*e+3*t)*e,Kx=1e-7,Wx=12;function Gx(e,t,r,n){if(e===t&&r===n)return nx;const i=t=>function(e,t,r,n,i){let o,a,s=0;do{a=t+(r-t)/2,o=qx(a,n,i)-e,o>0?r=a:t=a}while(Math.abs(o)>Kx&&++s0===e||1===e?e:qx(i(e),t,n)}const Zx=Gx(.42,0,1,1),Yx=Gx(0,0,.58,1),Xx=Gx(.42,0,.58,1),Jx=e=>Array.isArray(e)&&"number"!==typeof e[0],Qx=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,e_=e=>t=>1-e(1-t),t_=e=>1-Math.sin(Math.acos(e)),r_=e_(t_),n_=Qx(t_),i_=Gx(.33,1.53,.69,.99),o_=e_(i_),a_=Qx(o_),s_={linear:nx,easeIn:Zx,easeInOut:Xx,easeOut:Yx,circIn:t_,circInOut:n_,circOut:r_,backIn:o_,backInOut:a_,backOut:i_,anticipate:e=>(e*=2)<1?.5*o_(e):.5*(2-Math.pow(2,-10*(e-1)))},c_=e=>{if(Array.isArray(e)){Nx(4===e.length,"Cubic bezier arrays must contain four numerical values.");const[t,r,n,i]=e;return Gx(t,r,n,i)}return"string"===typeof e?(Nx(void 0!==s_[e],`Invalid easing type '${e}'`),s_[e]):e},l_=(e,t)=>r=>Boolean(vw(r)&&gw.test(r)&&r.startsWith(e)||t&&Object.prototype.hasOwnProperty.call(r,t)),u_=(e,t,r)=>n=>{if(!vw(n))return n;const[i,o,a,s]=n.match(pw);return{[e]:parseFloat(i),[t]:parseFloat(o),[r]:parseFloat(a),alpha:void 0!==s?parseFloat(s):1}},d_={...uw,transform:e=>Math.round((e=>lw(0,255,e))(e))},h_={test:l_("rgb","red"),parse:u_("red","green","blue"),transform:({red:e,green:t,blue:r,alpha:n=1})=>"rgba("+d_.transform(e)+", "+d_.transform(t)+", "+d_.transform(r)+", "+fw(dw.transform(n))+")"};const f_={test:l_("#"),parse:function(e){let t="",r="",n="",i="";return e.length>5?(t=e.substring(1,3),r=e.substring(3,5),n=e.substring(5,7),i=e.substring(7,9)):(t=e.substring(1,2),r=e.substring(2,3),n=e.substring(3,4),i=e.substring(4,5),t+=t,r+=r,n+=n,i+=i),{red:parseInt(t,16),green:parseInt(r,16),blue:parseInt(n,16),alpha:i?parseInt(i,16)/255:1}},transform:h_.transform},p_={test:l_("hsl","hue"),parse:u_("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:r,alpha:n=1})=>"hsla("+Math.round(e)+", "+ww.transform(fw(t))+", "+ww.transform(fw(r))+", "+fw(dw.transform(n))+")"},m_={test:e=>h_.test(e)||f_.test(e)||p_.test(e),parse:e=>h_.test(e)?h_.parse(e):p_.test(e)?p_.parse(e):f_.parse(e),transform:e=>vw(e)?e:e.hasOwnProperty("red")?h_.transform(e):p_.transform(e)},g_=(e,t,r)=>-r*e+r*t+e;function v_(e,t,r){return r<0&&(r+=1),r>1&&(r-=1),r<1/6?e+6*(t-e)*r:r<.5?t:r<2/3?e+(t-e)*(2/3-r)*6:e}const y_=(e,t,r)=>{const n=e*e;return Math.sqrt(Math.max(0,r*(t*t-n)+n))},b_=[f_,h_,p_];function w_(e){const t=(e=>b_.find((t=>t.test(e))))(e);Nx(Boolean(t),`'${e}' is not an animatable color. Use the equivalent color code instead.`);let r=t.parse(e);return t===p_&&(r=function({hue:e,saturation:t,lightness:r,alpha:n}){e/=360,r/=100;let i=0,o=0,a=0;if(t/=100){const n=r<.5?r*(1+t):r+t-r*t,s=2*r-n;i=v_(s,n,e+1/3),o=v_(s,n,e),a=v_(s,n,e-1/3)}else i=o=a=r;return{red:Math.round(255*i),green:Math.round(255*o),blue:Math.round(255*a),alpha:n}}(r)),r}const x_=(e,t)=>{const r=w_(e),n=w_(t),i={...r};return e=>(i.red=y_(r.red,n.red,e),i.green=y_(r.green,n.green,e),i.blue=y_(r.blue,n.blue,e),i.alpha=g_(r.alpha,n.alpha,e),h_.transform(i))};const __={regex:/var\s*\(\s*--[\w-]+(\s*,\s*(?:(?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)+)?\s*\)/g,countKey:"Vars",token:"${v}",parse:nx},S_={regex:mw,countKey:"Colors",token:"${c}",parse:m_.parse},k_={regex:pw,countKey:"Numbers",token:"${n}",parse:uw.parse};function E_(e,{regex:t,countKey:r,token:n,parse:i}){const o=e.tokenised.match(t);o&&(e["num"+r]=o.length,e.tokenised=e.tokenised.replace(t,n),e.values.push(...o.map(i)))}function A_(e){const t=e.toString(),r={value:t,tokenised:t,values:[],numVars:0,numColors:0,numNumbers:0};return r.value.includes("var(--")&&E_(r,__),E_(r,S_),E_(r,k_),r}function P_(e){return A_(e).values}function O_(e){const{values:t,numColors:r,numVars:n,tokenised:i}=A_(e),o=t.length;return e=>{let t=i;for(let i=0;i"number"===typeof e?0:e;const C_={test:function(e){var t,r;return isNaN(e)&&vw(e)&&((null===(t=e.match(pw))||void 0===t?void 0:t.length)||0)+((null===(r=e.match(mw))||void 0===r?void 0:r.length)||0)>0},parse:P_,createTransformer:O_,getAnimatableNone:function(e){const t=P_(e);return O_(e)(t.map(T_))}},j_=(e,t)=>r=>`${r>0?t:e}`;function R_(e,t){return"number"===typeof e?r=>g_(e,t,r):m_.test(e)?x_(e,t):e.startsWith("var(")?j_(e,t):L_(e,t)}const I_=(e,t)=>{const r=[...e],n=r.length,i=e.map(((e,r)=>R_(e,t[r])));return e=>{for(let t=0;t{const r={...e,...t},n={};for(const i in r)void 0!==e[i]&&void 0!==t[i]&&(n[i]=R_(e[i],t[i]));return e=>{for(const t in n)r[t]=n[t](e);return r}},L_=(e,t)=>{const r=C_.createTransformer(t),n=A_(e),i=A_(t);return n.numVars===i.numVars&&n.numColors===i.numColors&&n.numNumbers>=i.numNumbers?gx(I_(n.values,i.values),r):(Lx(!0,`Complex values '${e}' and '${t}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`),j_(e,t))},N_=(e,t,r)=>{const n=t-e;return 0===n?1:(r-e)/n},D_=(e,t)=>r=>g_(e,t,r);function z_(e,t,r){const n=[],i=r||function(e){return"number"===typeof e?D_:"string"===typeof e?m_.test(e)?x_:L_:Array.isArray(e)?I_:"object"===typeof e?M_:D_}(e[0]),o=e.length-1;for(let a=0;at[0];e[0]>e[o-1]&&(e=[...e].reverse(),t=[...t].reverse());const a=z_(t,n,i),s=a.length,c=t=>{let r=0;if(s>1)for(;rc(lw(e[0],e[o-1],t)):c}function U_(e){const t=[0];return function(e,t){const r=e[e.length-1];for(let n=1;n<=t;n++){const i=N_(0,t,n);e.push(g_(r,1,i))}}(t,e.length-1),t}function F_({duration:e=300,keyframes:t,times:r,ease:n="easeInOut"}){const i=Jx(n)?n.map(c_):c_(n),o={done:!1,value:t[0]},a=function(e,t){return e.map((e=>e*t))}(r&&r.length===t.length?r:U_(t),e),s=B_(a,t,{ease:Array.isArray(i)?i:(c=t,l=i,c.map((()=>l||Xx)).splice(0,c.length-1))});var c,l;return{calculatedDuration:e,next:t=>(o.value=s(t),o.done=t>=e,o)}}function $_(e,t){return t?e*(1e3/t):0}const H_=5;function V_(e,t,r){const n=Math.max(t-H_,0);return $_(r-e(n),t-n)}const q_=.001,K_=.01,W_=10,G_=.05,Z_=1;function Y_({duration:e=800,bounce:t=.25,velocity:r=0,mass:n=1}){let i,o;Lx(e<=Dx(W_),"Spring duration must be 10 seconds or less");let a=1-t;a=lw(G_,Z_,a),e=lw(K_,W_,zx(e)),a<1?(i=t=>{const n=t*a,i=n*e,o=n-r,s=J_(t,a),c=Math.exp(-i);return q_-o/s*c},o=t=>{const n=t*a*e,o=n*r+r,s=Math.pow(a,2)*Math.pow(t,2)*e,c=Math.exp(-n),l=J_(Math.pow(t,2),a);return(-i(t)+q_>0?-1:1)*((o-s)*c)/l}):(i=t=>Math.exp(-t*e)*((t-r)*e+1)-q_,o=t=>Math.exp(-t*e)*(e*e*(r-t)));const s=function(e,t,r){let n=r;for(let i=1;ivoid 0!==e[t]))}function rS({keyframes:e,restDelta:t,restSpeed:r,...n}){const i=e[0],o=e[e.length-1],a={done:!1,value:i},{stiffness:s,damping:c,mass:l,duration:u,velocity:d,isResolvedFromDuration:h}=function(e){let t={velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1,...e};if(!tS(e,eS)&&tS(e,Q_)){const r=Y_(e);t={...t,...r,mass:1},t.isResolvedFromDuration=!0}return t}({...n,velocity:-zx(n.velocity||0)}),f=d||0,p=c/(2*Math.sqrt(s*l)),m=o-i,g=zx(Math.sqrt(s/l)),v=Math.abs(m)<5;let y;if(r||(r=v?.01:2),t||(t=v?.005:.5),p<1){const e=J_(g,p);y=t=>{const r=Math.exp(-p*g*t);return o-r*((f+p*g*m)/e*Math.sin(e*t)+m*Math.cos(e*t))}}else if(1===p)y=e=>o-Math.exp(-g*e)*(m+(f+g*m)*e);else{const e=g*Math.sqrt(p*p-1);y=t=>{const r=Math.exp(-p*g*t),n=Math.min(e*t,300);return o-r*((f+p*g*m)*Math.sinh(n)+e*m*Math.cosh(n))/e}}return{calculatedDuration:h&&u||null,next:e=>{const n=y(e);if(h)a.done=e>=u;else{let i=f;0!==e&&(i=p<1?V_(y,e,n):0);const s=Math.abs(i)<=r,c=Math.abs(o-n)<=t;a.done=s&&c}return a.value=a.done?o:n,a}}}function nS({keyframes:e,velocity:t=0,power:r=.8,timeConstant:n=325,bounceDamping:i=10,bounceStiffness:o=500,modifyTarget:a,min:s,max:c,restDelta:l=.5,restSpeed:u}){const d=e[0],h={done:!1,value:d},f=e=>void 0===s?c:void 0===c||Math.abs(s-e)-p*Math.exp(-e/n),y=e=>g+v(e),b=e=>{const t=v(e),r=y(e);h.done=Math.abs(t)<=l,h.value=h.done?g:r};let w,x;const _=e=>{(e=>void 0!==s&&ec)(h.value)&&(w=e,x=rS({keyframes:[h.value,f(h.value)],velocity:V_(y,e,h.value),damping:i,stiffness:o,restDelta:l,restSpeed:u}))};return _(0),{calculatedDuration:null,next:e=>{let t=!1;return x||void 0!==w||(t=!0,b(e),_(e)),void 0!==w&&e>w?x.next(e-w):(!t&&b(e),h)}}}let iS;function oS(){iS=void 0}const aS={now:()=>(void 0===iS&&aS.set(ax.isProcessing||Pb?ax.timestamp:performance.now()),iS),set:e=>{iS=e,queueMicrotask(oS)}},sS=e=>{const t=({timestamp:t})=>e(t);return{start:()=>ix.update(t,!0),stop:()=>ox(t),now:()=>ax.isProcessing?ax.timestamp:aS.now()}},cS=2e4;function lS(e){let t=0;let r=e.next(t);for(;!r.done&&t=cS?1/0:t}const uS={decay:nS,inertia:nS,tween:F_,keyframes:F_,spring:rS};function dS({autoplay:e=!0,delay:t=0,driver:r=sS,keyframes:n,type:i="keyframes",repeat:o=0,repeatDelay:a=0,repeatType:s="loop",onPlay:c,onStop:l,onComplete:u,onUpdate:d,...h}){let f,p,m=1,g=!1;const v=()=>{p=new Promise((e=>{f=e}))};let y;v();const b=uS[i]||F_;let w;b!==F_&&"number"!==typeof n[0]&&(w=B_([0,100],n,{clamp:!1}),n=[0,100]);const x=b({...h,keyframes:n});let _;"mirror"===s&&(_=b({...h,keyframes:[...n].reverse(),velocity:-(h.velocity||0)}));let S="idle",k=null,E=null,A=null;null===x.calculatedDuration&&o&&(x.calculatedDuration=lS(x));const{calculatedDuration:P}=x;let O=1/0,T=1/0;null!==P&&(O=P+a,T=O*(o+1)-a);let C=0;const j=e=>{if(null===E)return;m>0&&(E=Math.min(E,e)),m<0&&(E=Math.min(e-T/m,E)),C=null!==k?k:Math.round(e-E)*m;const r=C-t*(m>=0?1:-1),i=m>=0?r<0:r>T;C=Math.max(r,0),"finished"===S&&null===k&&(C=T);let c=C,l=x;if(o){const e=Math.min(C,T)/O;let t=Math.floor(e),r=e%1;!r&&e>=1&&(r=1),1===r&&t--,t=Math.min(t,o+1);Boolean(t%2)&&("reverse"===s?(r=1-r,a&&(r-=a/O)):"mirror"===s&&(l=_)),c=lw(0,1,r)*O}const u=i?{done:!1,value:n[0]}:l.next(c);w&&(u.value=w(u.value));let{done:h}=u;i||null===P||(h=m>=0?C>=T:C<=0);const f=null===k&&("finished"===S||"running"===S&&h);return d&&d(u.value),f&&M(),u},R=()=>{y&&y.stop(),y=void 0},I=()=>{S="idle",R(),f(),v(),E=A=null},M=()=>{S="finished",u&&u(),R(),f()},L=()=>{if(g)return;y||(y=r(j));const e=y.now();c&&c(),null!==k?E=e-k:E&&"finished"!==S||(E=e),"finished"===S&&v(),A=E,k=null,S="running",y.start()};e&&L();const N={then:(e,t)=>p.then(e,t),get time(){return zx(C)},set time(e){e=Dx(e),C=e,null===k&&y&&0!==m?E=y.now()-e/m:k=e},get duration(){const e=null===x.calculatedDuration?lS(x):x.calculatedDuration;return zx(e)},get speed(){return m},set speed(e){e!==m&&y&&(m=e,N.time=zx(C))},get state(){return S},play:L,pause:()=>{S="paused",k=C},stop:()=>{g=!0,"idle"!==S&&(S="idle",l&&l(),I())},cancel:()=>{null!==A&&j(A),I()},complete:()=>{S="finished"},sample:e=>(E=0,j(e))};return N}const hS=function(e){let t;return()=>(void 0===t&&(t=e()),t)}((()=>Object.hasOwnProperty.call(Element.prototype,"animate"))),fS=new Set(["opacity","clipPath","filter","transform","backgroundColor"]);function pS(e,t,{onUpdate:r,onComplete:n,...i}){if(!(hS()&&fS.has(t)&&!i.repeatDelay&&"mirror"!==i.repeatType&&0!==i.damping&&"inertia"!==i.type))return!1;let o,a,s=!1,c=!1;const l=()=>{a=new Promise((e=>{o=e}))};l();let{keyframes:u,duration:d=300,ease:h,times:f}=i;if(((e,t)=>"spring"===t.type||"backgroundColor"===e||!Fx(t.ease))(t,i)){const e=dS({...i,repeat:0,delay:0});let t={done:!1,value:u[0]};const r=[];let n=0;for(;!t.done&&n<2e4;)t=e.sample(n),r.push(t.value),n+=10;f=void 0,u=r,d=n-10,h="linear"}const p=function(e,t,r,{delay:n=0,duration:i,repeat:o=0,repeatType:a="loop",ease:s,times:c}={}){const l={[t]:r};c&&(l.offset=c);const u=Vx(s);return Array.isArray(u)&&(l.easing=u),e.animate(l,{delay:n,duration:i,easing:Array.isArray(u)?"linear":u,fill:"both",iterations:o+1,direction:"reverse"===a?"alternate":"normal"})}(e.owner.current,t,u,{...i,duration:d,ease:h,times:f}),m=()=>{c=!1,p.cancel()},g=()=>{c=!0,ix.update(m),o(),l()};p.onfinish=()=>{c||(e.set(function(e,{repeat:t,repeatType:r="loop"}){return e[t&&"loop"!==r&&t%2===1?0:e.length-1]}(u,i)),n&&n(),g())};return{then:(e,t)=>a.then(e,t),attachTimeline:e=>(p.timeline=e,p.onfinish=null,nx),get time(){return zx(p.currentTime||0)},set time(e){p.currentTime=Dx(e)},get speed(){return p.playbackRate},set speed(e){p.playbackRate=e},get duration(){return zx(d)},play:()=>{s||(p.play(),ox(m))},pause:()=>p.pause(),stop:()=>{if(s=!0,"idle"===p.playState)return;const{currentTime:t}=p;if(t){const r=dS({...i,autoplay:!1});e.setWithVelocity(r.sample(t-10).value,r.sample(t).value,10)}g()},complete:()=>{c||p.finish()},cancel:g}}const mS={type:"spring",stiffness:500,damping:25,restSpeed:10},gS={type:"keyframes",duration:.8},vS={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},yS=(e,{keyframes:t})=>t.length>2?gS:ew.has(e)?e.startsWith("scale")?{type:"spring",stiffness:550,damping:0===t[1]?2*Math.sqrt(550):30,restSpeed:10}:mS:vS,bS=(e,t)=>"zIndex"!==e&&(!("number"!==typeof t&&!Array.isArray(t))||!("string"!==typeof t||!C_.test(t)&&"0"!==t||t.startsWith("url("))),wS=new Set(["brightness","contrast","saturate","opacity"]);function xS(e){const[t,r]=e.slice(0,-1).split("(");if("drop-shadow"===t)return e;const[n]=r.match(pw)||[];if(!n)return e;const i=r.replace(n,"");let o=wS.has(t)?1:0;return n!==r&&(o*=100),t+"("+o+i+")"}const _S=/([a-z-]*)\(.*?\)/g,SS={...C_,getAnimatableNone:e=>{const t=e.match(_S);return t?t.map(xS).join(" "):e}},kS={...Aw,color:m_,backgroundColor:m_,outlineColor:m_,fill:m_,stroke:m_,borderColor:m_,borderTopColor:m_,borderRightColor:m_,borderBottomColor:m_,borderLeftColor:m_,filter:SS,WebkitFilter:SS},ES=e=>kS[e];function AS(e,t){let r=ES(e);return r!==SS&&(r=C_),r.getAnimatableNone?r.getAnimatableNone(t):void 0}const PS=e=>/^0[^.\s]+$/.test(e);function OS(e){return"number"===typeof e?0===e:null!==e?"none"===e||"0"===e||PS(e):void 0}function TS(e,t){return e[t]||e.default||e}const CS=(e,t,r,n={})=>i=>{const o=TS(n,e)||{},a=o.delay||n.delay||0;let{elapsed:s=0}=n;s-=Dx(a);const c=function(e,t,r,n){const i=bS(t,r);let o;o=Array.isArray(r)?[...r]:[null,r];const a=void 0!==n.from?n.from:e.get();let s;const c=[];for(let l=0;l{t.set(e),o.onUpdate&&o.onUpdate(e)},onComplete:()=>{i(),o.onComplete&&o.onComplete()}};if(function({when:e,delay:t,delayChildren:r,staggerChildren:n,staggerDirection:i,repeat:o,repeatType:a,repeatDelay:s,from:c,elapsed:l,...u}){return!!Object.keys(u).length}(o)||(f={...f,...yS(e,f)}),f.duration&&(f.duration=Dx(f.duration)),f.repeatDelay&&(f.repeatDelay=Dx(f.repeatDelay)),!d||!h||Bx||!1===o.type||Ab)return function({keyframes:e,delay:t,onUpdate:r,onComplete:n}){const i=()=>(r&&r(e[e.length-1]),n&&n(),{time:0,speed:1,duration:0,play:nx,pause:nx,stop:nx,then:e=>(e(),Promise.resolve()),cancel:nx,complete:nx});return t?dS({keyframes:[0,1],duration:0,delay:t,onComplete:i}):i()}(Bx?{...f,delay:0}:f);if(!n.isHandoff&&t.owner&&t.owner.current instanceof HTMLElement&&!t.owner.getProps().onUpdate){const r=pS(t,e,f);if(r)return r}return dS(f)};function jS(e){return Boolean(rw(e)&&e.add)}const RS=e=>/^\-?\d*\.?\d+$/.test(e);function IS(e,t){-1===e.indexOf(t)&&e.push(t)}function MS(e,t){const r=e.indexOf(t);r>-1&&e.splice(r,1)}class LS{constructor(){this.subscriptions=[]}add(e){return IS(this.subscriptions,e),()=>MS(this.subscriptions,e)}notify(e,t,r){const n=this.subscriptions.length;if(n)if(1===n)this.subscriptions[0](e,t,r);else for(let i=0;i{const r=aS.now();this.updatedAt!==r&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(e),this.current!==this.prev&&this.events.change&&this.events.change.notify(this.current),t&&this.events.renderRequest&&this.events.renderRequest.notify(this.current)},this.hasAnimated=!1,this.setCurrent(e),this.canTrackVelocity=(e=>!isNaN(parseFloat(e)))(this.current),this.owner=t.owner}setCurrent(e){this.current=e,this.updatedAt=aS.now()}setPrevFrameValue(e=this.current){this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt}onChange(e){return this.on("change",e)}on(e,t){this.events[e]||(this.events[e]=new LS);const r=this.events[e].add(t);return"change"===e?()=>{r(),ix.read((()=>{this.events.change.getSize()||this.stop()}))}:r}clearListeners(){for(const e in this.events)this.events[e].clear()}attach(e,t){this.passiveEffect=e,this.stopPassiveEffect=t}set(e,t=!0){t&&this.passiveEffect?this.passiveEffect(e,this.updateAndNotify):this.updateAndNotify(e,t)}setWithVelocity(e,t,r){this.set(t),this.prev=void 0,this.prevFrameValue=e,this.prevUpdatedAt=this.updatedAt-r}jump(e){this.updateAndNotify(e),this.prev=e,this.prevUpdatedAt=this.prevFrameValue=void 0,this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}get(){return NS.current&&NS.current.push(this),this.current}getPrevious(){return this.prev}getVelocity(){const e=aS.now();if(!this.canTrackVelocity||void 0===this.prevFrameValue||e-this.updatedAt>30)return 0;const t=Math.min(this.updatedAt-this.prevUpdatedAt,30);return $_(parseFloat(this.current)-parseFloat(this.prevFrameValue),t)}start(e){return this.stop(),new Promise((t=>{this.hasAnimated=!0,this.animation=e(t),this.events.animationStart&&this.events.animationStart.notify()})).then((()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()}))}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function zS(e,t){return new DS(e,t)}const BS=e=>t=>t.test(e),US=[uw,xw,ww,bw,Sw,_w,{test:e=>"auto"===e,parse:e=>e}],FS=e=>US.find(BS(e)),$S=[...US,m_,C_],HS=e=>$S.find(BS(e));function VS(e,t,r){e.hasValue(t)?e.getValue(t).set(r):e.addValue(t,zS(r))}function qS(e,t){const r=Mx(e,t);let{transitionEnd:n={},transition:i={},...o}=r?e.makeTargetAnimatable(r,!1):{};o={...o,...n};for(const a in o){VS(e,a,Qw(o[a]))}}function KS(e,t){if(!t)return;return(t[e]||t.default||t).from}function WS({protectedKeys:e,needsAnimating:t},r){const n=e.hasOwnProperty(r)&&!0!==t[r];return t[r]=!1,n}function GS(e,t){const r=e.get();if(!Array.isArray(t))return r!==t;for(let n=0;nc.remove(d)))),l.push(h)}return a&&Promise.all(l).then((()=>{a&&qS(e,a)})),l}function YS(e,t,r={}){const n=Mx(e,t,r.custom);let{transition:i=e.getDefaultTransition()||{}}=n||{};r.transitionOverride&&(i=r.transitionOverride);const o=n?()=>Promise.all(ZS(e,n,r)):()=>Promise.resolve(),a=e.variantChildren&&e.variantChildren.size?(n=0)=>{const{delayChildren:o=0,staggerChildren:a,staggerDirection:s}=i;return function(e,t,r=0,n=0,i=1,o){const a=[],s=(e.variantChildren.size-1)*n,c=1===i?(e=0)=>e*n:(e=0)=>s-e*n;return Array.from(e.variantChildren).sort(XS).forEach(((e,n)=>{e.notify("AnimationStart",t),a.push(YS(e,t,{...o,delay:r+c(n)}).then((()=>e.notify("AnimationComplete",t))))})),Promise.all(a)}(e,t,o+n,a,s,r)}:()=>Promise.resolve(),{when:s}=i;if(s){const[e,t]="beforeChildren"===s?[o,a]:[a,o];return e().then((()=>t()))}return Promise.all([o(),a(r.delay)])}function XS(e,t){return e.sortNodePosition(t)}const JS=[...Nb].reverse(),QS=Nb.length;function ek(e){return t=>Promise.all(t.map((({animation:t,options:r})=>function(e,t,r={}){let n;if(e.notify("AnimationStart",t),Array.isArray(t)){const i=t.map((t=>YS(e,t,r)));n=Promise.all(i)}else if("string"===typeof t)n=YS(e,t,r);else{const i="function"===typeof t?Mx(e,t,r.custom):t;n=Promise.all(ZS(e,i,r))}return n.then((()=>e.notify("AnimationComplete",t)))}(e,t,r))))}function tk(e){let t=ek(e);const r={animate:nk(!0),whileInView:nk(),whileHover:nk(),whileTap:nk(),whileDrag:nk(),whileFocus:nk(),exit:nk()};let n=!0;const i=(t,r)=>{const n=Mx(e,r);if(n){const{transition:e,transitionEnd:r,...i}=n;t={...t,...i,...r}}return t};function o(o,a){const s=e.getProps(),c=e.getVariantContext(!0)||{},l=[],u=new Set;let d={},h=1/0;for(let t=0;th&&g,w=!1;const x=Array.isArray(m)?m:[m];let _=x.reduce(i,{});!1===v&&(_={});const{prevResolvedValues:S={}}=p,k={...S,..._},E=e=>{b=!0,u.has(e)&&(w=!0,u.delete(e)),p.needsAnimating[e]=!0};for(const e in k){const t=_[e],r=S[e];if(d.hasOwnProperty(e))continue;let n=!1;n=Xw(t)&&Xw(r)?!Ix(t,r):t!==r,n?void 0!==t?E(e):u.add(e):void 0!==t&&u.has(e)?E(e):p.protectedKeys[e]=!0}p.prevProp=m,p.prevResolvedValues=_,p.isActive&&(d={...d,..._}),n&&e.blockInitialAnimation&&(b=!1),!b||y&&!w||l.push(...x.map((e=>({animation:e,options:{type:f,...o}}))))}if(u.size){const t={};u.forEach((r=>{const n=e.getBaseTarget(r);void 0!==n&&(t[r]=n)})),l.push({animation:t})}let f=Boolean(l.length);return!n||!1!==s.initial&&s.initial!==s.animate||e.manuallyAnimateOnMount||(f=!1),n=!1,f?t(l):Promise.resolve()}return{animateChanges:o,setActive:function(t,n,i){var a;if(r[t].isActive===n)return Promise.resolve();null===(a=e.variantChildren)||void 0===a||a.forEach((e=>{var r;return null===(r=e.animationState)||void 0===r?void 0:r.setActive(t,n)})),r[t].isActive=n;const s=o(i,t);for(const e in r)r[e].protectedKeys={};return s},setAnimateFunction:function(r){t=r(e)},getState:()=>r}}function rk(e,t){return"string"===typeof t?t!==e:!!Array.isArray(t)&&!Ix(t,e)}function nk(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}let ik=0;const ok={animation:{Feature:class extends _x{constructor(e){super(e),e.animationState||(e.animationState=tk(e))}updateAnimationControlsSubscription(){const{animate:e}=this.node.getProps();this.unmount(),Lb(e)&&(this.unmount=e.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:e}=this.node.getProps(),{animate:t}=this.node.prevProps||{};e!==t&&this.updateAnimationControlsSubscription()}unmount(){}}},exit:{Feature:class extends _x{constructor(){super(...arguments),this.id=ik++}update(){if(!this.node.presenceContext)return;const{isPresent:e,onExitComplete:t,custom:r}=this.node.presenceContext,{isPresent:n}=this.node.prevPresenceContext||{};if(!this.node.animationState||e===n)return;const i=this.node.animationState.setActive("exit",!e,{custom:null!==r&&void 0!==r?r:this.node.getProps().custom});t&&!e&&i.then((()=>t(this.id)))}mount(){const{register:e}=this.node.presenceContext||{};e&&(this.unmount=e(this.id))}unmount(){}}}},ak=(e,t)=>Math.abs(e-t);class sk{constructor(e,t,{transformPagePoint:r,contextWindow:n,dragSnapToOrigin:i=!1}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!this.lastMoveEvent||!this.lastMoveEventInfo)return;const e=uk(this.lastMoveEventInfo,this.history),t=null!==this.startEvent,r=function(e,t){const r=ak(e.x,t.x),n=ak(e.y,t.y);return Math.sqrt(r**2+n**2)}(e.offset,{x:0,y:0})>=3;if(!t&&!r)return;const{point:n}=e,{timestamp:i}=ax;this.history.push({...n,timestamp:i});const{onStart:o,onMove:a}=this.handlers;t||(o&&o(this.lastMoveEvent,e),this.startEvent=this.lastMoveEvent),a&&a(this.lastMoveEvent,e)},this.handlePointerMove=(e,t)=>{this.lastMoveEvent=e,this.lastMoveEventInfo=ck(t,this.transformPagePoint),ix.update(this.updatePoint,!0)},this.handlePointerUp=(e,t)=>{this.end();const{onEnd:r,onSessionEnd:n,resumeAnimation:i}=this.handlers;if(this.dragSnapToOrigin&&i&&i(),!this.lastMoveEvent||!this.lastMoveEventInfo)return;const o=uk("pointercancel"===e.type?this.lastMoveEventInfo:ck(t,this.transformPagePoint),this.history);this.startEvent&&r&&r(e,o),n&&n(e,o)},!dx(e))return;this.dragSnapToOrigin=i,this.handlers=t,this.transformPagePoint=r,this.contextWindow=n||window;const o=ck(hx(e),this.transformPagePoint),{point:a}=o,{timestamp:s}=ax;this.history=[{...a,timestamp:s}];const{onSessionStart:c}=t;c&&c(e,uk(o,this.history)),this.removeListeners=gx(px(this.contextWindow,"pointermove",this.handlePointerMove),px(this.contextWindow,"pointerup",this.handlePointerUp),px(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(e){this.handlers=e}end(){this.removeListeners&&this.removeListeners(),ox(this.updatePoint)}}function ck(e,t){return t?{point:t(e.point)}:e}function lk(e,t){return{x:e.x-t.x,y:e.y-t.y}}function uk({point:e},t){return{point:e,delta:lk(e,hk(t)),offset:lk(e,dk(t)),velocity:fk(t,.1)}}function dk(e){return e[0]}function hk(e){return e[e.length-1]}function fk(e,t){if(e.length<2)return{x:0,y:0};let r=e.length-1,n=null;const i=hk(e);for(;r>=0&&(n=e[r],!(i.timestamp-n.timestamp>Dx(t)));)r--;if(!n)return{x:0,y:0};const o=zx(i.timestamp-n.timestamp);if(0===o)return{x:0,y:0};const a={x:(i.x-n.x)/o,y:(i.y-n.y)/o};return a.x===1/0&&(a.x=0),a.y===1/0&&(a.y=0),a}function pk(e){return e.max-e.min}function mk(e,t=0,r=.01){return Math.abs(e-t)<=r}function gk(e,t,r,n=.5){e.origin=n,e.originPoint=g_(t.min,t.max,e.origin),e.scale=pk(r)/pk(t),(mk(e.scale,1,1e-4)||isNaN(e.scale))&&(e.scale=1),e.translate=g_(r.min,r.max,e.origin)-e.originPoint,(mk(e.translate)||isNaN(e.translate))&&(e.translate=0)}function vk(e,t,r,n){gk(e.x,t.x,r.x,n?n.originX:void 0),gk(e.y,t.y,r.y,n?n.originY:void 0)}function yk(e,t,r){e.min=r.min+t.min,e.max=e.min+pk(t)}function bk(e,t,r){e.min=t.min-r.min,e.max=e.min+pk(t)}function wk(e,t,r){bk(e.x,t.x,r.x),bk(e.y,t.y,r.y)}function xk(e,t,r){return{min:void 0!==t?e.min+t:void 0,max:void 0!==r?e.max+r-(e.max-e.min):void 0}}function _k(e,t){let r=t.min-e.min,n=t.max-e.max;return t.max-t.min({x:{translate:0,scale:1,origin:0,originPoint:0},y:{translate:0,scale:1,origin:0,originPoint:0}}),Pk=()=>({x:{min:0,max:0},y:{min:0,max:0}});function Ok(e){return[e("x"),e("y")]}function Tk({top:e,left:t,right:r,bottom:n}){return{x:{min:t,max:r},y:{min:e,max:n}}}function Ck(e){return void 0===e||1===e}function jk({scale:e,scaleX:t,scaleY:r}){return!Ck(e)||!Ck(t)||!Ck(r)}function Rk(e){return jk(e)||Ik(e)||e.z||e.rotate||e.rotateX||e.rotateY}function Ik(e){return Mk(e.x)||Mk(e.y)}function Mk(e){return e&&"0%"!==e}function Lk(e,t,r){return r+t*(e-r)}function Nk(e,t,r,n,i){return void 0!==i&&(e=Lk(e,i,n)),Lk(e,r,n)+t}function Dk(e,t=0,r=1,n,i){e.min=Nk(e.min,t,r,n,i),e.max=Nk(e.max,t,r,n,i)}function zk(e,{x:t,y:r}){Dk(e.x,t.translate,t.scale,t.originPoint),Dk(e.y,r.translate,r.scale,r.originPoint)}function Bk(e){return Number.isInteger(e)||e>1.0000000000001||e<.999999999999?e:1}function Uk(e,t){e.min=e.min+t,e.max=e.max+t}function Fk(e,t,[r,n,i]){const o=void 0!==t[i]?t[i]:.5,a=g_(e.min,e.max,o);Dk(e,t[r],t[n],a,t.scale)}const $k=["x","scaleX","originX"],Hk=["y","scaleY","originY"];function Vk(e,t){Fk(e.x,t,$k),Fk(e.y,t,Hk)}function qk(e,t){return Tk(function(e,t){if(!t)return e;const r=t({x:e.left,y:e.top}),n=t({x:e.right,y:e.bottom});return{top:r.y,left:r.x,bottom:n.y,right:n.x}}(e.getBoundingClientRect(),t))}const Kk=({current:e})=>e?e.ownerDocument.defaultView:null,Wk=new WeakMap;class Gk{constructor(e){this.openGlobalLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=Pk(),this.visualElement=e}start(e,{snapToCursor:t=!1}={}){const{presenceContext:r}=this.visualElement;if(r&&!1===r.isPresent)return;const{dragSnapToOrigin:n}=this.getProps();this.panSession=new sk(e,{onSessionStart:e=>{const{dragSnapToOrigin:r}=this.getProps();r?this.pauseAnimation():this.stopAnimation(),t&&this.snapToCursor(hx(e,"page").point)},onStart:(e,t)=>{const{drag:r,dragPropagation:n,onDragStart:i}=this.getProps();if(r&&!n&&(this.openGlobalLock&&this.openGlobalLock(),this.openGlobalLock=wx(r),!this.openGlobalLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Ok((e=>{let t=this.getAxisMotionValue(e).get()||0;if(ww.test(t)){const{projection:r}=this.visualElement;if(r&&r.layout){const n=r.layout.layoutBox[e];if(n){t=pk(n)*(parseFloat(t)/100)}}}this.originPoint[e]=t})),i&&ix.update((()=>i(e,t)),!1,!0);const{animationState:o}=this.visualElement;o&&o.setActive("whileDrag",!0)},onMove:(e,t)=>{const{dragPropagation:r,dragDirectionLock:n,onDirectionLock:i,onDrag:o}=this.getProps();if(!r&&!this.openGlobalLock)return;const{offset:a}=t;if(n&&null===this.currentDirection)return this.currentDirection=function(e,t=10){let r=null;Math.abs(e.y)>t?r="y":Math.abs(e.x)>t&&(r="x");return r}(a),void(null!==this.currentDirection&&i&&i(this.currentDirection));this.updateAxis("x",t.point,a),this.updateAxis("y",t.point,a),this.visualElement.render(),o&&o(e,t)},onSessionEnd:(e,t)=>this.stop(e,t),resumeAnimation:()=>Ok((e=>{var t;return"paused"===this.getAnimationState(e)&&(null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.play())}))},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:n,contextWindow:Kk(this.visualElement)})}stop(e,t){const r=this.isDragging;if(this.cancel(),!r)return;const{velocity:n}=t;this.startAnimation(n);const{onDragEnd:i}=this.getProps();i&&ix.update((()=>i(e,t)))}cancel(){this.isDragging=!1;const{projection:e,animationState:t}=this.visualElement;e&&(e.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:r}=this.getProps();!r&&this.openGlobalLock&&(this.openGlobalLock(),this.openGlobalLock=null),t&&t.setActive("whileDrag",!1)}updateAxis(e,t,r){const{drag:n}=this.getProps();if(!r||!Zk(e,n,this.currentDirection))return;const i=this.getAxisMotionValue(e);let o=this.originPoint[e]+r[e];this.constraints&&this.constraints[e]&&(o=function(e,{min:t,max:r},n){return void 0!==t&&er&&(e=n?g_(r,e,n.max):Math.min(e,r)),e}(o,this.constraints[e],this.elastic[e])),i.set(o)}resolveConstraints(){var e;const{dragConstraints:t,dragElastic:r}=this.getProps(),n=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):null===(e=this.visualElement.projection)||void 0===e?void 0:e.layout,i=this.constraints;t&&Ib(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):this.constraints=!(!t||!n)&&function(e,{top:t,left:r,bottom:n,right:i}){return{x:xk(e.x,r,i),y:xk(e.y,t,n)}}(n.layoutBox,t),this.elastic=function(e=Sk){return!1===e?e=0:!0===e&&(e=Sk),{x:kk(e,"left","right"),y:kk(e,"top","bottom")}}(r),i!==this.constraints&&n&&this.constraints&&!this.hasMutatedConstraints&&Ok((e=>{this.getAxisMotionValue(e)&&(this.constraints[e]=function(e,t){const r={};return void 0!==t.min&&(r.min=t.min-e.min),void 0!==t.max&&(r.max=t.max-e.min),r}(n.layoutBox[e],this.constraints[e]))}))}resolveRefConstraints(){const{dragConstraints:e,onMeasureDragConstraints:t}=this.getProps();if(!e||!Ib(e))return!1;const r=e.current;Nx(null!==r,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.");const{projection:n}=this.visualElement;if(!n||!n.layout)return!1;const i=function(e,t,r){const n=qk(e,r),{scroll:i}=t;return i&&(Uk(n.x,i.offset.x),Uk(n.y,i.offset.y)),n}(r,n.root,this.visualElement.getTransformPagePoint());let o=function(e,t){return{x:_k(e.x,t.x),y:_k(e.y,t.y)}}(n.layout.layoutBox,i);if(t){const e=t(function({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}(o));this.hasMutatedConstraints=!!e,e&&(o=Tk(e))}return o}startAnimation(e){const{drag:t,dragMomentum:r,dragElastic:n,dragTransition:i,dragSnapToOrigin:o,onDragTransitionEnd:a}=this.getProps(),s=this.constraints||{},c=Ok((a=>{if(!Zk(a,t,this.currentDirection))return;let c=s&&s[a]||{};o&&(c={min:0,max:0});const l=n?200:1e6,u=n?40:1e7,d={type:"inertia",velocity:r?e[a]:0,bounceStiffness:l,bounceDamping:u,timeConstant:750,restDelta:1,restSpeed:10,...i,...c};return this.startAxisValueAnimation(a,d)}));return Promise.all(c).then(a)}startAxisValueAnimation(e,t){const r=this.getAxisMotionValue(e);return r.start(CS(e,r,0,t))}stopAnimation(){Ok((e=>this.getAxisMotionValue(e).stop()))}pauseAnimation(){Ok((e=>{var t;return null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.pause()}))}getAnimationState(e){var t;return null===(t=this.getAxisMotionValue(e).animation)||void 0===t?void 0:t.state}getAxisMotionValue(e){const t="_drag"+e.toUpperCase(),r=this.visualElement.getProps(),n=r[t];return n||this.visualElement.getValue(e,(r.initial?r.initial[e]:void 0)||0)}snapToCursor(e){Ok((t=>{const{drag:r}=this.getProps();if(!Zk(t,r,this.currentDirection))return;const{projection:n}=this.visualElement,i=this.getAxisMotionValue(t);if(n&&n.layout){const{min:r,max:o}=n.layout.layoutBox[t];i.set(e[t]-g_(r,o,.5))}}))}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:e,dragConstraints:t}=this.getProps(),{projection:r}=this.visualElement;if(!Ib(t)||!r||!this.constraints)return;this.stopAnimation();const n={x:0,y:0};Ok((e=>{const t=this.getAxisMotionValue(e);if(t){const r=t.get();n[e]=function(e,t){let r=.5;const n=pk(e),i=pk(t);return i>n?r=N_(t.min,t.max-n,e.min):n>i&&(r=N_(e.min,e.max-i,t.min)),lw(0,1,r)}({min:r,max:r},this.constraints[e])}}));const{transformTemplate:i}=this.visualElement.getProps();this.visualElement.current.style.transform=i?i({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.resolveConstraints(),Ok((t=>{if(!Zk(t,e,null))return;const r=this.getAxisMotionValue(t),{min:i,max:o}=this.constraints[t];r.set(g_(i,o,n[t]))}))}addListeners(){if(!this.visualElement.current)return;Wk.set(this.visualElement,this);const e=px(this.visualElement.current,"pointerdown",(e=>{const{drag:t,dragListener:r=!0}=this.getProps();t&&r&&this.start(e)})),t=()=>{const{dragConstraints:e}=this.getProps();Ib(e)&&(this.constraints=this.resolveRefConstraints())},{projection:r}=this.visualElement,n=r.addEventListener("measure",t);r&&!r.layout&&(r.root&&r.root.updateScroll(),r.updateLayout()),t();const i=ux(window,"resize",(()=>this.scalePositionWithinConstraints())),o=r.addEventListener("didUpdate",(({delta:e,hasLayoutChanged:t})=>{this.isDragging&&t&&(Ok((t=>{const r=this.getAxisMotionValue(t);r&&(this.originPoint[t]+=e[t].translate,r.set(r.get()+e[t].translate))})),this.visualElement.render())}));return()=>{i(),e(),n(),o&&o()}}getProps(){const e=this.visualElement.getProps(),{drag:t=!1,dragDirectionLock:r=!1,dragPropagation:n=!1,dragConstraints:i=!1,dragElastic:o=Sk,dragMomentum:a=!0}=e;return{...e,drag:t,dragDirectionLock:r,dragPropagation:n,dragConstraints:i,dragElastic:o,dragMomentum:a}}}function Zk(e,t,r){return(!0===t||t===e)&&(null===r||r===e)}const Yk=e=>(t,r)=>{e&&ix.update((()=>e(t,r)))};const Xk={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function Jk(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const Qk={correct:(e,t)=>{if(!t.target)return e;if("string"===typeof e){if(!xw.test(e))return e;e=parseFloat(e)}return`${Jk(e,t.target.x)}% ${Jk(e,t.target.y)}%`}},eE={correct:(e,{treeScale:t,projectionDelta:r})=>{const n=e,i=C_.parse(e);if(i.length>5)return n;const o=C_.createTransformer(e),a="number"!==typeof i[0]?1:0,s=r.x.scale*t.x,c=r.y.scale*t.y;i[0+a]/=s,i[1+a]/=c;const l=g_(s,c,.5);return"number"===typeof i[2+a]&&(i[2+a]/=l),"number"===typeof i[3+a]&&(i[3+a]/=l),o(i)}};class tE extends n.Component{componentDidMount(){const{visualElement:e,layoutGroup:t,switchLayoutGroup:r,layoutId:n}=this.props,{projection:i}=e;var o;o=nE,Object.assign(Jb,o),i&&(t.group&&t.group.add(i),r&&r.register&&n&&r.register(i),i.root.didUpdate(),i.addEventListener("animationComplete",(()=>{this.safeToRemove()})),i.setOptions({...i.options,onExitComplete:()=>this.safeToRemove()})),Xk.hasEverUpdated=!0}getSnapshotBeforeUpdate(e){const{layoutDependency:t,visualElement:r,drag:n,isPresent:i}=this.props,o=r.projection;return o?(o.isPresent=i,n||e.layoutDependency!==t||void 0===t?o.willUpdate():this.safeToRemove(),e.isPresent!==i&&(i?o.promote():o.relegate()||ix.postRender((()=>{const e=o.getStack();e&&e.members.length||this.safeToRemove()}))),null):null}componentDidUpdate(){const{projection:e}=this.props.visualElement;e&&(e.root.didUpdate(),jb.postRender((()=>{!e.currentAnimation&&e.isLead()&&this.safeToRemove()})))}componentWillUnmount(){const{visualElement:e,layoutGroup:t,switchLayoutGroup:r}=this.props,{projection:n}=e;n&&(n.scheduleCheckAfterUnmount(),t&&t.group&&t.group.remove(n),r&&r.deregister&&r.deregister(n))}safeToRemove(){const{safeToRemove:e}=this.props;e&&e()}render(){return null}}function rE(e){const[t,r]=vb(),i=(0,n.useContext)(Vb);return n.createElement(tE,{...e,layoutGroup:i,switchLayoutGroup:(0,n.useContext)(qb),isPresent:t,safeToRemove:r})}const nE={borderRadius:{...Qk,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:Qk,borderTopRightRadius:Qk,borderBottomLeftRadius:Qk,borderBottomRightRadius:Qk,boxShadow:eE},iE=["TopLeft","TopRight","BottomLeft","BottomRight"],oE=iE.length,aE=e=>"string"===typeof e?parseFloat(e):e,sE=e=>"number"===typeof e||xw.test(e);function cE(e,t){return void 0!==e[t]?e[t]:e.borderRadius}const lE=dE(0,.5,r_),uE=dE(.5,.95,nx);function dE(e,t,r){return n=>nt?1:r(N_(e,t,n))}function hE(e,t){e.min=t.min,e.max=t.max}function fE(e,t){hE(e.x,t.x),hE(e.y,t.y)}function pE(e,t,r,n,i){return e=Lk(e-=t,1/r,n),void 0!==i&&(e=Lk(e,1/i,n)),e}function mE(e,t,[r,n,i],o,a){!function(e,t=0,r=1,n=.5,i,o=e,a=e){ww.test(t)&&(t=parseFloat(t),t=g_(a.min,a.max,t/100)-a.min);if("number"!==typeof t)return;let s=g_(o.min,o.max,n);e===o&&(s-=t),e.min=pE(e.min,t,r,s,i),e.max=pE(e.max,t,r,s,i)}(e,t[r],t[n],t[i],t.scale,o,a)}const gE=["x","scaleX","originX"],vE=["y","scaleY","originY"];function yE(e,t,r,n){mE(e.x,t,gE,r?r.x:void 0,n?n.x:void 0),mE(e.y,t,vE,r?r.y:void 0,n?n.y:void 0)}function bE(e){return 0===e.translate&&1===e.scale}function wE(e){return bE(e.x)&&bE(e.y)}function xE(e,t){return Math.round(e.x.min)===Math.round(t.x.min)&&Math.round(e.x.max)===Math.round(t.x.max)&&Math.round(e.y.min)===Math.round(t.y.min)&&Math.round(e.y.max)===Math.round(t.y.max)}function _E(e){return pk(e.x)/pk(e.y)}class SE{constructor(){this.members=[]}add(e){IS(this.members,e),e.scheduleRender()}remove(e){if(MS(this.members,e),e===this.prevLead&&(this.prevLead=void 0),e===this.lead){const e=this.members[this.members.length-1];e&&this.promote(e)}}relegate(e){const t=this.members.findIndex((t=>e===t));if(0===t)return!1;let r;for(let n=t;n>=0;n--){const e=this.members[n];if(!1!==e.isPresent){r=e;break}}return!!r&&(this.promote(r),!0)}promote(e,t){const r=this.lead;if(e!==r&&(this.prevLead=r,this.lead=e,e.show(),r)){r.instance&&r.scheduleRender(),e.scheduleRender(),e.resumeFrom=r,t&&(e.resumeFrom.preserveOpacity=!0),r.snapshot&&(e.snapshot=r.snapshot,e.snapshot.latestValues=r.animationValues||r.latestValues),e.root&&e.root.isUpdating&&(e.isLayoutDirty=!0);const{crossfade:n}=e.options;!1===n&&r.hide()}}exitAnimationComplete(){this.members.forEach((e=>{const{options:t,resumingFrom:r}=e;t.onExitComplete&&t.onExitComplete(),r&&r.options.onExitComplete&&r.options.onExitComplete()}))}scheduleRender(){this.members.forEach((e=>{e.instance&&e.scheduleRender(!1)}))}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function kE(e,t,r){let n="";const i=e.x.translate/t.x,o=e.y.translate/t.y;if((i||o)&&(n=`translate3d(${i}px, ${o}px, 0) `),1===t.x&&1===t.y||(n+=`scale(${1/t.x}, ${1/t.y}) `),r){const{rotate:e,rotateX:t,rotateY:i}=r;e&&(n+=`rotate(${e}deg) `),t&&(n+=`rotateX(${t}deg) `),i&&(n+=`rotateY(${i}deg) `)}const a=e.x.scale*t.x,s=e.y.scale*t.y;return 1===a&&1===s||(n+=`scale(${a}, ${s})`),n||"none"}const EE=(e,t)=>e.depth-t.depth;class AE{constructor(){this.children=[],this.isDirty=!1}add(e){IS(this.children,e),this.isDirty=!0}remove(e){MS(this.children,e),this.isDirty=!0}forEach(e){this.isDirty&&this.children.sort(EE),this.isDirty=!1,this.children.forEach(e)}}const PE=["","X","Y","Z"],OE={visibility:"hidden"};let TE=0;const CE={type:"projectionFrame",totalNodes:0,resolvedTargetDeltas:0,recalculatedProjection:0};function jE({attachResizeListener:e,defaultParent:t,measureScroll:r,checkIsScrollRoot:n,resetTransform:i}){return class{constructor(e={},r=(null===t||void 0===t?void 0:t())){this.id=TE++,this.animationId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.updateScheduled=!1,this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{var e;this.projectionUpdateScheduled=!1,CE.totalNodes=CE.resolvedTargetDeltas=CE.recalculatedProjection=0,this.nodes.forEach(ME),this.nodes.forEach(FE),this.nodes.forEach($E),this.nodes.forEach(LE),e=CE,window.MotionDebug&&window.MotionDebug.record(e)},this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=e,this.root=r?r.root||r:this,this.path=r?[...r.path,r]:[],this.parent=r,this.depth=r?r.depth+1:0;for(let t=0;tthis.root.updateBlockedByResize=!1;e(t,(()=>{this.root.updateBlockedByResize=!0,r&&r(),r=function(e,t){const r=aS.now(),n=({timestamp:i})=>{const o=i-r;o>=t&&(ox(n),e(o-t))};return ix.read(n,!0),()=>ox(n)}(n,250),Xk.hasAnimatedSinceResize&&(Xk.hasAnimatedSinceResize=!1,this.nodes.forEach(UE))}))}i&&this.root.registerSharedNode(i,this),!1!==this.options.animate&&a&&(i||o)&&this.addEventListener("didUpdate",(({delta:e,hasLayoutChanged:t,hasRelativeTargetChanged:r,layout:n})=>{if(this.isTreeAnimationBlocked())return this.target=void 0,void(this.relativeTarget=void 0);const i=this.options.transition||a.getDefaultTransition()||GE,{onLayoutAnimationStart:o,onLayoutAnimationComplete:s}=a.getProps(),c=!this.targetLayout||!xE(this.targetLayout,n)||r,l=!t&&r;if(this.options.layoutRoot||this.resumeFrom&&this.resumeFrom.instance||l||t&&(c||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0),this.setAnimationOrigin(e,l);const t={...TS(i,"layout"),onPlay:o,onComplete:s};(a.shouldReduceMotion||this.options.layoutRoot)&&(t.delay=0,t.type=!1),this.startAnimation(t)}else t||UE(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=n}))}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const e=this.getStack();e&&e.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,ox(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(HE),this.animationId++)}getTransformTemplate(){const{visualElement:e}=this.options;return e&&e.getProps().transformTemplate}willUpdate(e=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked())return void(this.options.onExitComplete&&this.options.onExitComplete());if(!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let i=0;ithis.update())))}clearAllSnapshots(){this.nodes.forEach(NE),this.sharedNodes.forEach(VE)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,ix.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){ix.postRender((()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()}))}updateSnapshot(){!this.snapshot&&this.instance&&(this.snapshot=this.measure())}updateLayout(){if(!this.instance)return;if(this.updateScroll(),(!this.options.alwaysMeasureLayout||!this.isLead())&&!this.isLayoutDirty)return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let r=0;r{const r=t/1e3;qE(o.x,e.x,r),qE(o.y,e.y,r),this.setTargetDelta(o),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(wk(a,this.layout.layoutBox,this.relativeParent.layout.layoutBox),function(e,t,r,n){KE(e.x,t.x,r.x,n),KE(e.y,t.y,r.y,n)}(this.relativeTarget,this.relativeTargetOrigin,a,r),d&&function(e,t){return e.x.min===t.x.min&&e.x.max===t.x.max&&e.y.min===t.y.min&&e.y.max===t.y.max}(this.relativeTarget,d)&&(this.isProjectionDirty=!1),d||(d=Pk()),fE(d,this.relativeTarget)),s&&(this.animationValues=i,function(e,t,r,n,i,o){i?(e.opacity=g_(0,void 0!==r.opacity?r.opacity:1,lE(n)),e.opacityExit=g_(void 0!==t.opacity?t.opacity:1,0,uE(n))):o&&(e.opacity=g_(void 0!==t.opacity?t.opacity:1,void 0!==r.opacity?r.opacity:1,n));for(let a=0;a{Xk.hasAnimatedSinceResize=!0,this.currentAnimation=function(e,t,r){const n=rw(e)?e:zS(e);return n.start(CS("",n,t,r)),n.animation}(0,1e3,{...e,onUpdate:t=>{this.mixTargetDelta(t),e.onUpdate&&e.onUpdate(t)},onComplete:()=>{e.onComplete&&e.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0}))}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const e=this.getStack();e&&e.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(1e3),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const e=this.getLead();let{targetWithTransforms:t,target:r,layout:n,latestValues:i}=e;if(t&&r&&n){if(this!==e&&this.layout&&n&&JE(this.options.animationType,this.layout.layoutBox,n.layoutBox)){r=this.target||Pk();const t=pk(this.layout.layoutBox.x);r.x.min=e.target.x.min,r.x.max=r.x.min+t;const n=pk(this.layout.layoutBox.y);r.y.min=e.target.y.min,r.y.max=r.y.min+n}fE(t,r),Vk(t,i),vk(this.projectionDeltaWithTransform,this.layoutCorrected,t,i)}}registerSharedNode(e,t){this.sharedNodes.has(e)||this.sharedNodes.set(e,new SE);this.sharedNodes.get(e).add(t);const r=t.options.initialPromotionConfig;t.promote({transition:r?r.transition:void 0,preserveFollowOpacity:r&&r.shouldPreserveFollowOpacity?r.shouldPreserveFollowOpacity(t):void 0})}isLead(){const e=this.getStack();return!e||e.lead===this}getLead(){var e;const{layoutId:t}=this.options;return t&&(null===(e=this.getStack())||void 0===e?void 0:e.lead)||this}getPrevLead(){var e;const{layoutId:t}=this.options;return t?null===(e=this.getStack())||void 0===e?void 0:e.prevLead:void 0}getStack(){const{layoutId:e}=this.options;if(e)return this.root.sharedNodes.get(e)}promote({needsReset:e,transition:t,preserveFollowOpacity:r}={}){const n=this.getStack();n&&n.promote(this,r),e&&(this.projectionDelta=void 0,this.needsReset=!0),t&&this.setOptions({transition:t})}relegate(){const e=this.getStack();return!!e&&e.relegate(this)}resetRotation(){const{visualElement:e}=this.options;if(!e)return;let t=!1;const{latestValues:r}=e;if((r.rotate||r.rotateX||r.rotateY||r.rotateZ)&&(t=!0),!t)return;const n={};for(let i=0;i{var t;return null===(t=e.currentAnimation)||void 0===t?void 0:t.stop()})),this.root.nodes.forEach(DE),this.root.sharedNodes.clear()}}}function RE(e){e.updateLayout()}function IE(e){var t;const r=(null===(t=e.resumeFrom)||void 0===t?void 0:t.snapshot)||e.snapshot;if(e.isLead()&&e.layout&&r&&e.hasListeners("didUpdate")){const{layoutBox:t,measuredBox:n}=e.layout,{animationType:i}=e.options,o=r.source!==e.layout.source;"size"===i?Ok((e=>{const n=o?r.measuredBox[e]:r.layoutBox[e],i=pk(n);n.min=t[e].min,n.max=n.min+i})):JE(i,r.layoutBox,t)&&Ok((n=>{const i=o?r.measuredBox[n]:r.layoutBox[n],a=pk(t[n]);i.max=i.min+a,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[n].max=e.relativeTarget[n].min+a)}));const a=Ak();vk(a,t,r.layoutBox);const s=Ak();o?vk(s,e.applyTransform(n,!0),r.measuredBox):vk(s,t,r.layoutBox);const c=!wE(a);let l=!1;if(!e.resumeFrom){const n=e.getClosestProjectingParent();if(n&&!n.resumeFrom){const{snapshot:i,layout:o}=n;if(i&&o){const a=Pk();wk(a,r.layoutBox,i.layoutBox);const s=Pk();wk(s,t,o.layoutBox),xE(a,s)||(l=!0),n.options.layoutRoot&&(e.relativeTarget=s,e.relativeTargetOrigin=a,e.relativeParent=n)}}}e.notifyListeners("didUpdate",{layout:t,snapshot:r,delta:s,layoutDelta:a,hasLayoutChanged:c,hasRelativeTargetChanged:l})}else if(e.isLead()){const{onExitComplete:t}=e.options;t&&t()}e.options.transition=void 0}function ME(e){CE.totalNodes++,e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=Boolean(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function LE(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function NE(e){e.clearSnapshot()}function DE(e){e.clearMeasurements()}function zE(e){e.isLayoutDirty=!1}function BE(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function UE(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function FE(e){e.resolveTargetDelta()}function $E(e){e.calcProjection()}function HE(e){e.resetRotation()}function VE(e){e.removeLeadSnapshot()}function qE(e,t,r){e.translate=g_(t.translate,0,r),e.scale=g_(t.scale,1,r),e.origin=t.origin,e.originPoint=t.originPoint}function KE(e,t,r,n){e.min=g_(t.min,r.min,n),e.max=g_(t.max,r.max,n)}function WE(e){return e.animationValues&&void 0!==e.animationValues.opacityExit}const GE={duration:.45,ease:[.4,0,.1,1]},ZE=e=>"undefined"!==typeof navigator&&navigator.userAgent.toLowerCase().includes(e),YE=ZE("applewebkit/")&&!ZE("chrome/")?Math.round:nx;function XE(e){e.min=YE(e.min),e.max=YE(e.max)}function JE(e,t,r){return"position"===e||"preserve-aspect"===e&&!mk(_E(t),_E(r),.2)}const QE=jE({attachResizeListener:(e,t)=>ux(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),eA={current:void 0},tA=jE({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!eA.current){const e=new QE({});e.mount(window),e.setOptions({layoutScroll:!0}),eA.current=e}return eA.current},resetTransform:(e,t)=>{e.style.transform=void 0!==t?t:"none"},checkIsScrollRoot:e=>Boolean("fixed"===window.getComputedStyle(e).position)}),rA={pan:{Feature:class extends _x{constructor(){super(...arguments),this.removePointerDownListener=nx}onPointerDown(e){this.session=new sk(e,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:Kk(this.node)})}createPanHandlers(){const{onPanSessionStart:e,onPanStart:t,onPan:r,onPanEnd:n}=this.node.getProps();return{onSessionStart:Yk(e),onStart:Yk(t),onMove:r,onEnd:(e,t)=>{delete this.session,n&&ix.update((()=>n(e,t)))}}}mount(){this.removePointerDownListener=px(this.node.current,"pointerdown",(e=>this.onPointerDown(e)))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}},drag:{Feature:class extends _x{constructor(e){super(e),this.removeGroupControls=nx,this.removeListeners=nx,this.controls=new Gk(e)}mount(){const{dragControls:e}=this.node.getProps();e&&(this.removeGroupControls=e.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||nx}unmount(){this.removeGroupControls(),this.removeListeners()}},ProjectionNode:tA,MeasureLayout:rE}},nA=/var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/;const iA=4;function oA(e,t,r=1){Nx(r<=iA,`Max CSS variable fallback depth detected in property "${e}". This may indicate a circular fallback dependency.`);const[n,i]=function(e){const t=nA.exec(e);if(!t)return[,];const[,r,n]=t;return[r,n]}(e);if(!n)return;const o=window.getComputedStyle(t).getPropertyValue(n);if(o){const e=o.trim();return RS(e)?parseFloat(e):e}return sw(i)?oA(i,t,r+1):i}const aA=new Set(["width","height","top","left","right","bottom","x","y","translateX","translateY"]),sA=e=>aA.has(e),cA=e=>e===uw||e===xw,lA=(e,t)=>parseFloat(e.split(", ")[t]),uA=(e,t)=>(r,{transform:n})=>{if("none"===n||!n)return 0;const i=n.match(/^matrix3d\((.+)\)$/);if(i)return lA(i[1],t);{const t=n.match(/^matrix\((.+)\)$/);return t?lA(t[1],e):0}},dA=new Set(["x","y","z"]),hA=Qb.filter((e=>!dA.has(e)));const fA={width:({x:e},{paddingLeft:t="0",paddingRight:r="0"})=>e.max-e.min-parseFloat(t)-parseFloat(r),height:({y:e},{paddingTop:t="0",paddingBottom:r="0"})=>e.max-e.min-parseFloat(t)-parseFloat(r),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:uA(4,13),y:uA(5,14)};fA.translateX=fA.x,fA.translateY=fA.y;const pA=(e,t,r={},n={})=>{t={...t},n={...n};const i=Object.keys(t).filter(sA);let o=[],a=!1;const s=[];if(i.forEach((i=>{const c=e.getValue(i);if(!e.hasValue(i))return;let l=r[i],u=FS(l);const d=t[i];let h;if(Xw(d)){const e=d.length,t=null===d[0]?1:0;l=d[t],u=FS(l);for(let r=t;r{const n=e.getValue(r);void 0!==n&&(t.push([r,n.get()]),n.set(r.startsWith("scale")?1:0))})),t.length&&e.render(),t}(e),a=!0),s.push(i),n[i]=void 0!==n[i]?n[i]:t[i],c.jump(d))})),s.length){const r=s.indexOf("height")>=0?window.pageYOffset:null,i=((e,t,r)=>{const n=t.measureViewportBox(),i=t.current,o=getComputedStyle(i),{display:a}=o,s={};"none"===a&&t.setStaticValue("display",e.display||"block"),r.forEach((e=>{s[e]=fA[e](n,o)})),t.render();const c=t.measureViewportBox();return r.forEach((r=>{const n=t.getValue(r);n&&n.jump(s[r]),e[r]=fA[r](c,o)})),e})(t,e,s);return o.length&&o.forEach((([t,r])=>{e.getValue(t).set(r)})),e.render(),xb&&null!==r&&window.scrollTo({top:r}),{target:i,transitionEnd:n}}return{target:t,transitionEnd:n}};function mA(e,t,r,n){return(e=>Object.keys(e).some(sA))(t)?pA(e,t,r,n):{target:t,transitionEnd:n}}const gA=(e,t,r,n)=>{const i=function(e,{...t},r){const n=e.current;if(!(n instanceof Element))return{target:t,transitionEnd:r};r&&(r={...r}),e.values.forEach((e=>{const t=e.get();if(!sw(t))return;const r=oA(t,n);r&&e.set(r)}));for(const i in t){const e=t[i];if(!sw(e))continue;const o=oA(e,n);o&&(t[i]=o,r||(r={}),void 0===r[i]&&(r[i]=e))}return{target:t,transitionEnd:r}}(e,t,n);return mA(e,t=i.target,r,n=i.transitionEnd)},vA={current:null},yA={current:!1};const bA=new WeakMap,wA=Object.keys(Hb),xA=wA.length,_A=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"],SA=Db.length;class kA{constructor({parent:e,props:t,presenceContext:r,reducedMotionConfig:n,visualState:i},o={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.scheduleRender=()=>ix.render(this.render,!1,!0);const{latestValues:a,renderState:s}=i;this.latestValues=a,this.baseTarget={...a},this.initialValues=t.initial?{...a}:{},this.renderState=s,this.parent=e,this.props=t,this.presenceContext=r,this.depth=e?e.depth+1:0,this.reducedMotionConfig=n,this.options=o,this.isControllingVariants=zb(t),this.isVariantNode=Bb(t),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=Boolean(e&&e.current);const{willChange:c,...l}=this.scrapeMotionValuesFromProps(t,{});for(const u in l){const e=l[u];void 0!==a[u]&&rw(e)&&(e.set(a[u],!1),jS(c)&&c.add(u))}}scrapeMotionValuesFromProps(e,t){return{}}mount(e){this.current=e,bA.set(e,this),this.projection&&!this.projection.instance&&this.projection.mount(e),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach(((e,t)=>this.bindToMotionValue(t,e))),yA.current||function(){if(yA.current=!0,xb)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>vA.current=e.matches;e.addListener(t),t()}else vA.current=!1}(),this.shouldReduceMotion="never"!==this.reducedMotionConfig&&("always"===this.reducedMotionConfig||vA.current),this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){bA.delete(this.current),this.projection&&this.projection.unmount(),ox(this.notifyUpdate),ox(this.render),this.valueSubscriptions.forEach((e=>e())),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const e in this.events)this.events[e].clear();for(const e in this.features)this.features[e].unmount();this.current=null}bindToMotionValue(e,t){const r=ew.has(e),n=t.on("change",(t=>{this.latestValues[e]=t,this.props.onUpdate&&ix.update(this.notifyUpdate,!1,!0),r&&this.projection&&(this.projection.isTransformDirty=!0)})),i=t.on("renderRequest",this.scheduleRender);this.valueSubscriptions.set(e,(()=>{n(),i()}))}sortNodePosition(e){return this.current&&this.sortInstanceNodePosition&&this.type===e.type?this.sortInstanceNodePosition(this.current,e.current):0}loadFeatures({children:e,...t},r,n,i){let o,a;for(let s=0;sthis.scheduleRender(),animationType:"string"===typeof r?r:"both",initialPromotionConfig:i,layoutScroll:s,layoutRoot:c})}return a}updateFeatures(){for(const e in this.features){const t=this.features[e];t.isMounted?t.update():(t.mount(),t.isMounted=!0)}}triggerBuild(){this.build(this.renderState,this.latestValues,this.options,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):Pk()}getStaticValue(e){return this.latestValues[e]}setStaticValue(e,t){this.latestValues[e]=t}makeTargetAnimatable(e,t=!0){return this.makeTargetAnimatableFromInstance(e,t)}update(e,t){(e.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=e,this.prevPresenceContext=this.presenceContext,this.presenceContext=t;for(let r=0;r<_A.length;r++){const t=_A[r];this.propEventSubscriptions[t]&&(this.propEventSubscriptions[t](),delete this.propEventSubscriptions[t]);const n=e["on"+t];n&&(this.propEventSubscriptions[t]=this.on(t,n))}this.prevMotionValues=function(e,t,r){const{willChange:n}=t;for(const i in t){const o=t[i],a=r[i];if(rw(o))e.addValue(i,o),jS(n)&&n.add(i);else if(rw(a))e.addValue(i,zS(o,{owner:e})),jS(n)&&n.remove(i);else if(a!==o)if(e.hasValue(i)){const t=e.getValue(i);!t.hasAnimated&&t.set(o)}else{const t=e.getStaticValue(i);e.addValue(i,zS(void 0!==t?t:o,{owner:e}))}}for(const i in r)void 0===t[i]&&e.removeValue(i);return t}(this,this.scrapeMotionValuesFromProps(e,this.prevProps),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(e){return this.props.variants?this.props.variants[e]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}getVariantContext(e=!1){if(e)return this.parent?this.parent.getVariantContext():void 0;if(!this.isControllingVariants){const e=this.parent&&this.parent.getVariantContext()||{};return void 0!==this.props.initial&&(e.initial=this.props.initial),e}const t={};for(let r=0;rt.variantChildren.delete(e)}addValue(e,t){t!==this.values.get(e)&&(this.removeValue(e),this.bindToMotionValue(e,t)),this.values.set(e,t),this.latestValues[e]=t.get()}removeValue(e){this.values.delete(e);const t=this.valueSubscriptions.get(e);t&&(t(),this.valueSubscriptions.delete(e)),delete this.latestValues[e],this.removeValueFromRenderState(e,this.renderState)}hasValue(e){return this.values.has(e)}getValue(e,t){if(this.props.values&&this.props.values[e])return this.props.values[e];let r=this.values.get(e);return void 0===r&&void 0!==t&&(r=zS(t,{owner:this}),this.addValue(e,r)),r}readValue(e){var t;return void 0===this.latestValues[e]&&this.current?null!==(t=this.getBaseTargetFromProps(this.props,e))&&void 0!==t?t:this.readValueFromInstance(this.current,e,this.options):this.latestValues[e]}setBaseTarget(e,t){this.baseTarget[e]=t}getBaseTarget(e){var t;const{initial:r}=this.props,n="string"===typeof r||"object"===typeof r?null===(t=Zw(this.props,r))||void 0===t?void 0:t[e]:void 0;if(r&&void 0!==n)return n;const i=this.getBaseTargetFromProps(this.props,e);return void 0===i||rw(i)?void 0!==this.initialValues[e]&&void 0===n?void 0:this.baseTarget[e]:i}on(e,t){return this.events[e]||(this.events[e]=new LS),this.events[e].add(t)}notify(e,...t){this.events[e]&&this.events[e].notify(...t)}}class EA extends kA{sortInstanceNodePosition(e,t){return 2&e.compareDocumentPosition(t)?1:-1}getBaseTargetFromProps(e,t){return e.style?e.style[t]:void 0}removeValueFromRenderState(e,{vars:t,style:r}){delete t[e],delete r[e]}makeTargetAnimatableFromInstance({transition:e,transitionEnd:t,...r},n){const i=function(e,t,r){const n={};for(const i in e){const e=KS(i,t);if(void 0!==e)n[i]=e;else{const e=r.getValue(i);e&&(n[i]=e.get())}}return n}(r,e||{},this);if(n){!function(e,t,r){var n,i;const o=Object.keys(t).filter((t=>!e.hasValue(t))),a=o.length;if(a)for(let s=0;s{this.current&&(this.current.textContent=`${e}`)})))}renderInstance(e,t,r,n){Vw(e,t,r,n)}}class PA extends EA{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1}getBaseTargetFromProps(e,t){return e[t]}readValueFromInstance(e,t){if(ew.has(t)){const e=ES(t);return e&&e.default||0}return t=qw.has(t)?t:kb(t),e.getAttribute(t)}measureInstanceViewportBox(){return Pk()}scrapeMotionValuesFromProps(e,t){return Gw(e,t)}build(e,t,r,n){Bw(e,t,r,this.isSVGTag,n.transformTemplate)}renderInstance(e,t,r,n){Kw(e,t,0,n)}mount(e){this.isSVGTag=Fw(e.tagName),super.mount(e)}}const OA=(e,t)=>Xb(e)?new PA(t,{enableHardwareAcceleration:!1}):new AA(t,{enableHardwareAcceleration:!0}),TA={...ok,...Rx,...rA,...{layout:{ProjectionNode:tA,MeasureLayout:rE}}},CA=Zb(((e,t)=>function(e,{forwardMotionProps:t=!1},r,n){return{...Xb(e)?cx:lx,preloadedFeatures:r,useRender:Hw(t),createVisualElement:n,Component:e}}(e,t,TA,OA)));var jA={initial:e=>{const{position:t}=e,r=["top","bottom"].includes(t)?"y":"x";let n=["top-right","bottom-right"].includes(t)?1:-1;return"bottom"===t&&(n=1),{opacity:0,[r]:24*n}},animate:{opacity:1,y:0,x:0,scale:1,transition:{duration:.4,ease:[.4,0,.2,1]}},exit:{opacity:0,scale:.85,transition:{duration:.2,ease:[.4,0,1,1]}}},RA=(0,n.memo)((e=>{const{id:t,message:r,onCloseComplete:i,onRequestRemove:o,requestClose:a=!1,position:s="bottom",duration:c=5e3,containerStyle:l,motionVariants:u=jA,toastSpacing:d="0.5rem"}=e,[h,f]=(0,n.useState)(c),p=yb();mb((()=>{p||null==i||i()}),[p]),mb((()=>{f(c)}),[c]);const m=()=>{p&&o()};(0,n.useEffect)((()=>{p&&a&&o()}),[p,a,o]),function(e,t){const r=pb(e);(0,n.useEffect)((()=>{if(null==t)return;let e=null;return e=window.setTimeout((()=>{r()}),t),()=>{e&&window.clearTimeout(e)}}),[t,r])}(m,h);const g=(0,n.useMemo)((()=>({pointerEvents:"auto",maxWidth:560,minWidth:300,margin:d,...l})),[l,d]),v=(0,n.useMemo)((()=>function(e){let t="center";return e.includes("right")&&(t="flex-end"),e.includes("left")&&(t="flex-start"),{display:"flex",flexDirection:"column",alignItems:t}}(s)),[s]);return(0,ln.jsx)(CA.div,{layout:!0,className:"chakra-toast",variants:u,initial:"initial",animate:"animate",exit:"exit",onHoverStart:()=>f(null),onHoverEnd:()=>f(c),custom:{position:s},style:v,children:(0,ln.jsx)(cn.div,{role:"status","aria-atomic":"true",className:"chakra-toast__inner",__css:g,children:w(r,{id:t,onClose:m})})})}));function IA(e,t){var r;const n=null!=e?e:"bottom",i={"top-start":{ltr:"top-left",rtl:"top-right"},"top-end":{ltr:"top-right",rtl:"top-left"},"bottom-start":{ltr:"bottom-left",rtl:"bottom-right"},"bottom-end":{ltr:"bottom-right",rtl:"bottom-left"}}[n];return null!=(r=null==i?void 0:i[t])?r:n}RA.displayName="ToastComponent";var MA={path:(0,ln.jsxs)("g",{stroke:"currentColor",strokeWidth:"1.5",children:[(0,ln.jsx)("path",{strokeLinecap:"round",fill:"none",d:"M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"}),(0,ln.jsx)("path",{fill:"currentColor",strokeLinecap:"round",d:"M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"}),(0,ln.jsx)("circle",{fill:"none",strokeMiterlimit:"10",cx:"12",cy:"12",r:"11.25"})]}),viewBox:"0 0 24 24"},LA=g(((e,t)=>{const{as:r,viewBox:n,color:i="currentColor",focusable:o=!1,children:a,className:s,__css:c,...l}=e,u={ref:t,focusable:o,className:v("chakra-icon",s),__css:{w:"1em",h:"1em",display:"inline-block",lineHeight:"1em",flexShrink:0,color:i,...c,...xn("Icon",e)}},d=null!=n?n:MA.viewBox;if(r&&"string"!==typeof r)return(0,ln.jsx)(cn.svg,{as:r,...u,...l});const h=null!=a?a:MA.path;return(0,ln.jsx)(cn.svg,{verticalAlign:"middle",viewBox:d,...u,...l,children:h})}));LA.displayName="Icon";function NA(e){return(0,ln.jsx)(LA,{viewBox:"0 0 24 24",...e,children:(0,ln.jsx)("path",{fill:"currentColor",d:"M11.983,0a12.206,12.206,0,0,0-8.51,3.653A11.8,11.8,0,0,0,0,12.207,11.779,11.779,0,0,0,11.8,24h.214A12.111,12.111,0,0,0,24,11.791h0A11.766,11.766,0,0,0,11.983,0ZM10.5,16.542a1.476,1.476,0,0,1,1.449-1.53h.027a1.527,1.527,0,0,1,1.523,1.47,1.475,1.475,0,0,1-1.449,1.53h-.027A1.529,1.529,0,0,1,10.5,16.542ZM11,12.5v-6a1,1,0,0,1,2,0v6a1,1,0,1,1-2,0Z"})})}var[DA,zA]=kn({name:"AlertContext",hookName:"useAlertContext",providerName:""}),[BA,UA]=kn({name:"AlertStylesContext",hookName:"useAlertStyles",providerName:""}),FA={info:{icon:function(e){return(0,ln.jsx)(LA,{viewBox:"0 0 24 24",...e,children:(0,ln.jsx)("path",{fill:"currentColor",d:"M12,0A12,12,0,1,0,24,12,12.013,12.013,0,0,0,12,0Zm.25,5a1.5,1.5,0,1,1-1.5,1.5A1.5,1.5,0,0,1,12.25,5ZM14.5,18.5h-4a1,1,0,0,1,0-2h.75a.25.25,0,0,0,.25-.25v-4.5a.25.25,0,0,0-.25-.25H10.5a1,1,0,0,1,0-2h1a2,2,0,0,1,2,2v4.75a.25.25,0,0,0,.25.25h.75a1,1,0,1,1,0,2Z"})})},colorScheme:"blue"},warning:{icon:NA,colorScheme:"orange"},success:{icon:function(e){return(0,ln.jsx)(LA,{viewBox:"0 0 24 24",...e,children:(0,ln.jsx)("path",{fill:"currentColor",d:"M12,0A12,12,0,1,0,24,12,12.014,12.014,0,0,0,12,0Zm6.927,8.2-6.845,9.289a1.011,1.011,0,0,1-1.43.188L5.764,13.769a1,1,0,1,1,1.25-1.562l4.076,3.261,6.227-8.451A1,1,0,1,1,18.927,8.2Z"})})},colorScheme:"green"},error:{icon:NA,colorScheme:"red"},loading:{icon:Rn,colorScheme:"blue"}};var $A=g((function(e,t){var r;const{status:n="info",addRole:i=!0,...o}=ht(e),a=null!=(r=e.colorScheme)?r:function(e){return FA[e].colorScheme}(n),s=_n("Alert",{...e,colorScheme:a}),c={width:"100%",display:"flex",alignItems:"center",position:"relative",overflow:"hidden",...s.container};return(0,ln.jsx)(DA,{value:{status:n},children:(0,ln.jsx)(BA,{value:s,children:(0,ln.jsx)(cn.div,{"data-status":n,role:i?"alert":void 0,ref:t,...o,className:v("chakra-alert",e.className),__css:c})})})}));function HA(e){const{status:t}=zA(),r=function(e){return FA[e].icon}(t),n=UA(),i="loading"===t?n.spinner:n.icon;return(0,ln.jsx)(cn.span,{display:"inherit","data-status":t,...e,className:v("chakra-alert__icon",e.className),__css:i,children:e.children||(0,ln.jsx)(r,{h:"100%",w:"100%"})})}$A.displayName="Alert",HA.displayName="AlertIcon";var VA=g((function(e,t){const r=UA(),{status:n}=zA();return(0,ln.jsx)(cn.div,{ref:t,"data-status":n,...e,className:v("chakra-alert__title",e.className),__css:r.title})}));VA.displayName="AlertTitle";var qA=g((function(e,t){const r=UA(),{status:n}=zA(),i={display:"inline",...r.description};return(0,ln.jsx)(cn.div,{ref:t,"data-status":n,...e,className:v("chakra-alert__desc",e.className),__css:i})}));function KA(e){return(0,ln.jsx)(LA,{focusable:"false","aria-hidden":!0,...e,children:(0,ln.jsx)("path",{fill:"currentColor",d:"M.439,21.44a1.5,1.5,0,0,0,2.122,2.121L11.823,14.3a.25.25,0,0,1,.354,0l9.262,9.263a1.5,1.5,0,1,0,2.122-2.121L14.3,12.177a.25.25,0,0,1,0-.354l9.263-9.262A1.5,1.5,0,0,0,21.439.44L12.177,9.7a.25.25,0,0,1-.354,0L2.561.44A1.5,1.5,0,0,0,.439,2.561L9.7,11.823a.25.25,0,0,1,0,.354Z"})})}qA.displayName="AlertDescription";var WA=g((function(e,t){const r=xn("CloseButton",e),{children:n,isDisabled:i,__css:o,...a}=ht(e);return(0,ln.jsx)(cn.button,{type:"button","aria-label":"Close",ref:t,disabled:i,__css:{outline:0,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0,...r,...o},...a,children:n||(0,ln.jsx)(KA,{width:"1em",height:"1em"})})}));WA.displayName="CloseButton";var GA=function(e){let t=e;const r=new Set,n=e=>{t=e(t),r.forEach((e=>e()))};return{getState:()=>t,subscribe:t=>(r.add(t),()=>{n((()=>e)),r.delete(t)}),removeToast:(e,t)=>{n((r=>({...r,[t]:r[t].filter((t=>t.id!=e))})))},notify:(e,t)=>{const r=function(e,t={}){var r,n;ZA+=1;const i=null!=(r=t.id)?r:ZA,o=null!=(n=t.position)?n:"bottom";return{id:i,message:e,position:o,duration:t.duration,onCloseComplete:t.onCloseComplete,onRequestRemove:()=>GA.removeToast(String(i),o),status:t.status,requestClose:!1,containerStyle:t.containerStyle}}(e,t),{position:i,id:o}=r;return n((e=>{var t,n;const o=i.includes("top")?[r,...null!=(t=e[i])?t:[]]:[...null!=(n=e[i])?n:[],r];return{...e,[i]:o}})),o},update:(e,t)=>{e&&n((r=>{const n={...r},{position:i,index:o}=db(n,e);return i&&-1!==o&&(n[i][o]={...n[i][o],...t,message:XA(t)}),n}))},closeAll:({positions:e}={})=>{n((t=>(null!=e?e:["bottom","bottom-right","bottom-left","top","top-left","top-right"]).reduce(((e,r)=>(e[r]=t[r].map((e=>({...e,requestClose:!0}))),e)),{...t})))},close:e=>{n((t=>{const r=hb(t,e);return r?{...t,[r]:t[r].map((t=>t.id==e?{...t,requestClose:!0}:t))}:t}))},isActive:e=>Boolean(db(GA.getState(),e).position)}}({top:[],"top-left":[],"top-right":[],"bottom-left":[],bottom:[],"bottom-right":[]});var ZA=0;var YA=e=>{const{status:t,variant:r="solid",id:n,title:i,isClosable:o,onClose:a,description:s,colorScheme:c,icon:l}=e,u=n?{root:`toast-${n}`,title:`toast-${n}-title`,description:`toast-${n}-description`}:void 0;return(0,ln.jsxs)($A,{addRole:!1,status:t,variant:r,id:null==u?void 0:u.root,alignItems:"start",borderRadius:"md",boxShadow:"lg",paddingEnd:8,textAlign:"start",width:"auto",colorScheme:c,children:[(0,ln.jsx)(HA,{children:l}),(0,ln.jsxs)(cn.div,{flex:"1",maxWidth:"100%",children:[i&&(0,ln.jsx)(VA,{id:null==u?void 0:u.title,children:i}),s&&(0,ln.jsx)(qA,{id:null==u?void 0:u.description,display:"block",children:s})]}),o&&(0,ln.jsx)(WA,{size:"sm",onClick:a,position:"absolute",insetEnd:1,top:1})]})};function XA(e={}){const{render:t,toastComponent:r=YA}=e;return n=>"function"===typeof t?t({...n,...e}):(0,ln.jsx)(r,{...n,...e})}function JA(){const e=(0,n.useRef)(!1);return _b((()=>(e.current=!0,()=>{e.current=!1})),[]),e}class QA extends n.Component{getSnapshotBeforeUpdate(e){const t=this.props.childRef.current;if(t&&e.isPresent&&!this.props.isPresent){const e=this.props.sizeRef.current;e.height=t.offsetHeight||0,e.width=t.offsetWidth||0,e.top=t.offsetTop,e.left=t.offsetLeft}return null}componentDidUpdate(){}render(){return this.props.children}}function eP({children:e,isPresent:t}){const r=(0,n.useId)(),i=(0,n.useRef)(null),o=(0,n.useRef)({width:0,height:0,top:0,left:0});return(0,n.useInsertionEffect)((()=>{const{width:e,height:n,top:a,left:s}=o.current;if(t||!i.current||!e||!n)return;i.current.dataset.motionPopId=r;const c=document.createElement("style");return document.head.appendChild(c),c.sheet&&c.sheet.insertRule(`\n [data-motion-pop-id="${r}"] {\n position: absolute !important;\n width: ${e}px !important;\n height: ${n}px !important;\n top: ${a}px !important;\n left: ${s}px !important;\n }\n `),()=>{document.head.removeChild(c)}}),[t]),n.createElement(QA,{isPresent:t,childRef:i,sizeRef:o},n.cloneElement(e,{ref:i}))}const tP=({children:e,initial:t,isPresent:r,onExitComplete:i,custom:o,presenceAffectsLayout:a,mode:s})=>{const c=Yw(rP),l=(0,n.useId)(),u=(0,n.useMemo)((()=>({id:l,initial:t,isPresent:r,custom:o,onExitComplete:e=>{c.set(e,!0);for(const t of c.values())if(!t)return;i&&i()},register:e=>(c.set(e,!1),()=>c.delete(e))})),a?void 0:[r]);return(0,n.useMemo)((()=>{c.forEach(((e,t)=>c.set(t,!1)))}),[r]),n.useEffect((()=>{!r&&!c.size&&i&&i()}),[r]),"popLayout"===s&&(e=n.createElement(eP,{isPresent:r},e)),n.createElement(gb.Provider,{value:u},e)};function rP(){return new Map}const nP=e=>e.key||"";const iP=({children:e,custom:t,initial:r=!0,onExitComplete:i,exitBeforeEnter:o,presenceAffectsLayout:a=!0,mode:s="sync"})=>{Nx(!o,"Replace exitBeforeEnter with mode='wait'");const c=(0,n.useContext)(Vb).forceRender||function(){const e=JA(),[t,r]=(0,n.useState)(0),i=(0,n.useCallback)((()=>{e.current&&r(t+1)}),[t]);return[(0,n.useCallback)((()=>ix.postRender(i)),[i]),t]}()[0],l=JA(),u=function(e){const t=[];return n.Children.forEach(e,(e=>{(0,n.isValidElement)(e)&&t.push(e)})),t}(e);let d=u;const h=(0,n.useRef)(new Map).current,f=(0,n.useRef)(d),p=(0,n.useRef)(new Map).current,m=(0,n.useRef)(!0);var g;if(_b((()=>{m.current=!1,function(e,t){e.forEach((e=>{const r=nP(e);t.set(r,e)}))}(u,p),f.current=d})),g=()=>{m.current=!0,p.clear(),h.clear()},(0,n.useEffect)((()=>()=>g()),[]),m.current)return n.createElement(n.Fragment,null,d.map((e=>n.createElement(tP,{key:nP(e),isPresent:!0,initial:!!r&&void 0,presenceAffectsLayout:a,mode:s},e))));d=[...d];const v=f.current.map(nP),y=u.map(nP),b=v.length;for(let n=0;n{if(-1!==y.indexOf(r))return;const o=p.get(r);if(!o)return;const m=v.indexOf(r);let g=e;if(!g){const e=()=>{h.delete(r);const e=Array.from(p.keys()).filter((e=>!y.includes(e)));if(e.forEach((e=>p.delete(e))),f.current=u.filter((t=>{const n=nP(t);return n===r||e.includes(n)})),!h.size){if(!1===l.current)return;c(),i&&i()}};g=n.createElement(tP,{key:nP(o),isPresent:!1,onExitComplete:e,custom:t,presenceAffectsLayout:a,mode:s},o),h.set(r,g)}d.splice(m,0,g)})),d=d.map((e=>{const t=e.key;return h.has(t)?e:n.createElement(tP,{key:nP(e),isPresent:!0,presenceAffectsLayout:a,mode:s},e)})),n.createElement(n.Fragment,null,h.size?d:d.map((e=>(0,n.cloneElement)(e))))};var[oP,aP]=kn({strict:!1,name:"PortalContext"}),sP="chakra-portal",cP=e=>(0,ln.jsx)("div",{className:"chakra-portal-zIndex",style:{position:"absolute",zIndex:e.zIndex,top:0,left:0,right:0},children:e.children}),lP=e=>{const{appendToParentPortal:t,children:r}=e,[i,o]=(0,n.useState)(null),a=(0,n.useRef)(null),[,s]=(0,n.useState)({});(0,n.useEffect)((()=>s({})),[]);const c=aP(),l=ih();yh((()=>{if(!i)return;const e=i.ownerDocument,r=t&&null!=c?c:e.body;if(!r)return;a.current=e.createElement("div"),a.current.className=sP,r.appendChild(a.current),s({});const n=a.current;return()=>{r.contains(n)&&r.removeChild(n)}}),[i]);const u=(null==l?void 0:l.zIndex)?(0,ln.jsx)(cP,{zIndex:null==l?void 0:l.zIndex,children:r}):r;return a.current?(0,Kn.createPortal)((0,ln.jsx)(oP,{value:a.current,children:u}),a.current):(0,ln.jsx)("span",{ref:e=>{e&&o(e)}})},uP=e=>{const{children:t,containerRef:r,appendToParentPortal:i}=e,o=r.current,a=null!=o?o:"undefined"!==typeof window?document.body:void 0,s=(0,n.useMemo)((()=>{const e=null==o?void 0:o.ownerDocument.createElement("div");return e&&(e.className=sP),e}),[o]),[,c]=(0,n.useState)({});return yh((()=>c({})),[]),yh((()=>{if(s&&a)return a.appendChild(s),()=>{a.removeChild(s)}}),[s,a]),a&&s?(0,Kn.createPortal)((0,ln.jsx)(oP,{value:i?s:null,children:t}),s):null};function dP(e){const t={appendToParentPortal:!0,...e},{containerRef:r,...n}=t;return r?(0,ln.jsx)(uP,{containerRef:r,...n}):(0,ln.jsx)(lP,{...n})}dP.className=sP,dP.selector=".chakra-portal",dP.displayName="Portal";var[hP,fP]=kn({name:"ToastOptionsContext",strict:!1}),pP=e=>{const t=(0,n.useSyncExternalStore)(GA.subscribe,GA.getState,GA.getState),{motionVariants:r,component:i=RA,portalProps:o}=e,a=Object.keys(t).map((e=>{const n=t[e];return(0,ln.jsx)("div",{role:"region","aria-live":"polite","aria-label":`Notifications-${e}`,id:`chakra-toast-manager-${e}`,style:fb(e),children:(0,ln.jsx)(iP,{initial:!1,children:n.map((e=>(0,ln.jsx)(i,{motionVariants:r,...e},e.id)))})},e)}));return(0,ln.jsx)(dP,{...o,children:a})},mP=e=>function({children:t,theme:r=e,toastOptions:n,...i}){return(0,ln.jsxs)(kh,{theme:r,...i,children:[(0,ln.jsx)(hP,{value:null==n?void 0:n.defaultOptions,children:t}),(0,ln.jsx)(pP,{...n})]})},gP=mP(cb),vP=(mP(lb),new Set(["dark","light","system"]));function yP(e={}){const{initialColorMode:t="light",type:r="localStorage",storageKey:n="chakra-ui-color-mode"}=e,i=function(e){let t=e;return vP.has(t)||(t="light"),t}(t);return`!${"cookie"===r?`(function(){try{var a=function(o){var l="(prefers-color-scheme: dark)",v=window.matchMedia(l).matches?"dark":"light",e=o==="system"?v:o,d=document.documentElement,m=document.body,i="chakra-ui-light",n="chakra-ui-dark",s=e==="dark";return m.classList.add(s?n:i),m.classList.remove(s?i:n),d.style.colorScheme=e,d.dataset.theme=e,e},u=a,h="${i}",r="${n}",t=document.cookie.match(new RegExp("(^| )".concat(r,"=([^;]+)"))),c=t?t[2]:null;c?a(c):document.cookie="".concat(r,"=").concat(a(h),"; max-age=31536000; path=/")}catch(a){}})();\n `:`(function(){try{var a=function(c){var v="(prefers-color-scheme: dark)",h=window.matchMedia(v).matches?"dark":"light",r=c==="system"?h:c,o=document.documentElement,s=document.body,l="chakra-ui-light",d="chakra-ui-dark",i=r==="dark";return s.classList.add(i?d:l),s.classList.remove(i?l:d),o.style.colorScheme=r,o.dataset.theme=r,r},n=a,m="${i}",e="${n}",t=localStorage.getItem(e);t?a(t):localStorage.setItem(e,a(m))}catch(a){}})();\n `}`.trim()}function bP(e={}){const{nonce:t}=e;return(0,ln.jsx)("script",{id:"chakra-script",nonce:t,dangerouslySetInnerHTML:{__html:yP(e)}})}var wP=["borders","breakpoints","colors","components","config","direction","fonts","fontSizes","fontWeights","letterSpacings","lineHeights","radii","shadows","sizes","space","styles","transition","zIndices"];function xP(e){return"function"===typeof e}var _P=e=>function(...t){let r=[...t],n=t[t.length-1];var i;return y(i=n)&&wP.every((e=>Object.prototype.hasOwnProperty.call(i,e)))&&r.length>1?r=r.slice(0,r.length-1):n=e,function(...e){return t=>e.reduce(((e,t)=>t(e)),t)}(...r.map((e=>t=>xP(e)?e(t):function(...e){return A({},...e,kP)}(t,e))))(n)},SP=_P(cb);_P(lb);function kP(e,t,r,n){if((xP(e)||xP(t))&&Object.prototype.hasOwnProperty.call(n,r))return(...r)=>{const n=xP(e)?e(...r):e,i=xP(t)?t(...r):t;return A({},n,i,kP)}}const EP={orange:"#FB4F57",orangeL:"#FC7884",blue:"#0D99FF",blueL:"#4FA2FF",green:"#00C39A",greenL:"#00E7B6",black:"#000000",white:"#FFFFFF",gray:{900:"#121212",800:"#181818",700:"#282828",600:"#2C2B2B",500:"#414141",450:"#707070",400:"#C2C2C2",300:"#D6D6D6",200:"#EBEBEB",100:"#F0F0F0",50:"#F5F5F5"}},AP={borderRadius:"full",bg:EP.gray[600],_disabled:{bg:EP.gray[700],color:EP.gray[450]},_hover:{color:EP.green,bg:EP.gray[500],_disabled:{bg:EP.gray[700],color:EP.gray[450]}}},PP={sizes:{md:{height:"38px",fontSize:"14px",minWidth:"38px"},lg:{height:"48px",fontSize:"16px",minWidth:"48px"}},variants:{primary:{bg:EP.blue,_disabled:{bg:EP.gray[500],color:EP.gray[450],opacity:1},_hover:{_disabled:{bg:EP.gray[500],color:EP.gray[450],opacity:1},bg:EP.blueL}},secondary:{border:"1px solid",borderColor:EP.green,_disabled:{color:EP.gray[450],borderColor:EP.gray[500],opacity:1},_hover:{bg:EP.green,_disabled:{color:EP.gray[450],borderColor:EP.gray[500],opacity:1}}},tertiary:{bg:"transparent",border:"1px solid",borderColor:EP.gray[500],_disabled:{color:EP.gray[450],opacity:1},_hover:{border:"1px solid",borderColor:EP.gray[600],bg:EP.gray[600],_disabled:{borderColor:EP.gray[500],color:EP.gray[450],opacity:1}}},warning:{bg:EP.orange,_disabled:{bg:EP.gray[500],color:EP.gray[450],opacity:1},_hover:{bg:EP.orangeL,_disabled:{bg:EP.gray[500],color:EP.gray[450],opacity:1}}},circle_without_hover_color:{...AP,_hover:{color:EP.green,_disabled:{bg:EP.gray[700],color:EP.gray[450]}}},circle_without_color:AP,circle:{...AP,color:EP.gray[300]},specialCTA:{color:EP.greenL,_hover:{color:EP.green}},CTAWithIcon:{padding:"8px 7px",color:EP.gray[300],_hover:{color:EP.green},_disabled:{color:EP.gray[450]}},popover:{color:EP.gray[300],stroke:EP.gray[450],width:"100%",padding:0,height:"24px",justifyContent:"end",_hover:{color:EP.green,stroke:EP.green}}},defaultProps:{variant:"primary",size:"md"}},{definePartsStyle:OP,defineMultiStyleConfig:TP}=lt(Xh.keys),CP=TP({baseStyle:OP({icon:{color:"white"},control:{marginTop:"-20px",width:"20px",height:"20px",borderWidth:"2px",borderColor:EP.gray[400],borderRadius:"2px",_checked:{borderColor:EP.green,bg:EP.green,color:EP.white,_hover:{bg:EP.green,borderColor:EP.green}}}})}),{definePartsStyle:jP,defineMultiStyleConfig:RP}=lt(Jh.keys),IP=RP({baseStyle:jP((e=>({body:{padding:"18px 30px 30px 30px",borderLeft:`1px solid ${EP.gray[800]}`},dialog:{bg:EP.gray[900]}}))),sizes:{md:{dialog:{maxW:"594px"}}},defaultProps:{size:"md"}}),{definePartsStyle:MP,defineMultiStyleConfig:LP}=lt(nf.keys),NP=LP({variants:{onboardingNotice:MP({item:{"&::marker":{color:EP.gray[400]}}}),suggestions:MP({item:{_hover:{background:EP.gray[500]},background:EP.gray[700],borderRadius:"4px",cursor:"pointer",height:"28px",listStyleType:"none"},container:{background:EP.gray[700],border:"1px solid",borderColor:EP.gray[500],borderRadius:"8px",listStyleType:"none",marginLeft:"0 !important",overflowX:"hidden",padding:"10px",position:"absolute",width:"100%",zIndex:2,maxHeight:"130px"}})}}),{definePartsStyle:DP,defineMultiStyleConfig:zP}=lt(af.keys),BP={top:"10px",position:"absolute",color:EP.gray[400],borderRadius:"18px"},UP={...BP,insetEnd:"10px"},FP={...BP,insetStart:"10px"},$P=zP({baseStyle:DP({dialog:{padding:"40px",_dark:{bg:EP.gray[900],border:"1px solid",borderColor:EP.gray[700],borderRadius:"8px"}},overlay:{_dark:{bg:"rgba(0, 0, 0, 0.85)"}},closeButton:UP,body:{padding:0},footer:{padding:"32px 0 0 0"},header:{padding:0}}),sizes:{md:{dialog:{maxW:"482px"}}}}),{definePartsStyle:HP,defineMultiStyleConfig:VP}=lt(uf.keys),qP=VP({variants:{primary:HP({control:{height:"16px",width:"16px",_dark:{borderColor:EP.gray[400]},_checked:{backgroundColor:EP.green,borderColor:EP.green,border:"none",color:"white"}}})}}),{definePartsStyle:KP,defineMultiStyleConfig:WP}=lt(gf.keys),GP={xs:{fontSize:"12px"},sm:{fontSize:"14px"},md:{fontSize:"16px"},lg:{fontSize:"18px"},xl:{fontSize:"20px"},"2xl":{fontSize:"24px"},"3xl":{fontSize:"30px"},"4xl":{fontSize:"36px"},"5xl":{fontSize:"48px"},"6xl":{fontSize:"69px"}},ZP=SP({components:{Tabs:WP({baseStyle:KP({tab:{_selected:{fontWeight:600,color:EP.white,borderColor:EP.orange,borderBottom:`2px solid ${EP.orange}`}}})}),Text:{baseStyle:{fontWeight:"400"},sizes:GP},Heading:{baseStyle:{fontWeight:"600"},sizes:GP},Checkbox:CP,Input:{sizes:{md:{field:{height:"48px"}}},defaultProps:{variant:"filled"},variants:{filled:{field:{bg:EP.gray[800],border:"1px solid",borderColor:EP.gray[500],_invalid:{borderColor:EP.orange},_hover:{bg:EP.gray[800]},_focusVisible:{bg:EP.gray[800],borderColor:EP.gray[450]}}}}},Button:PP,FormLabel:{baseStyle:{fontWeight:"600",marginBottom:"12px",size:"md"},sizes:GP},Modal:$P,Drawer:IP,Radio:qP,List:NP},config:{initialColorMode:"dark",useSystemColorMode:!1},colors:{umami:EP,text:{dark:EP.gray[400]}},styles:{global:{body:{bg:EP.black,color:EP.white}}}}),YP=e=>(0,ln.jsxs)(gP,{theme:ZP,children:[(0,ln.jsx)(bP,{initialColorMode:ZP.config.initialColorMode}),e.children]});function XP(){return XP=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0&&(t.hash=e.substr(r),e=e.substr(0,r));let n=e.indexOf("?");n>=0&&(t.search=e.substr(n),e=e.substr(0,n)),e&&(t.pathname=e)}return t}function aO(e,t,r,n){void 0===n&&(n={});let{window:i=document.defaultView,v5Compat:o=!1}=n,a=i.history,s=JP.Pop,c=null,l=u();function u(){return(a.state||{idx:null}).idx}function d(){s=JP.Pop;let e=u(),t=null==e?null:e-l;l=e,c&&c({action:s,location:f.location,delta:t})}function h(e){let t="null"!==i.location.origin?i.location.origin:i.location.href,r="string"===typeof e?e:iO(e);return eO(t,"No window.location.(origin|href) available to create URL for href: "+r),new URL(r,t)}null==l&&(l=0,a.replaceState(XP({},a.state,{idx:l}),""));let f={get action(){return s},get location(){return e(i,a)},listen(e){if(c)throw new Error("A history only accepts one active listener");return i.addEventListener(QP,d),c=e,()=>{i.removeEventListener(QP,d),c=null}},createHref:e=>t(i,e),createURL:h,encodeLocation(e){let t=h(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){s=JP.Push;let n=nO(f.location,e,t);r&&r(n,e),l=u()+1;let d=rO(n,l),h=f.createHref(n);try{a.pushState(d,"",h)}catch(p){if(p instanceof DOMException&&"DataCloneError"===p.name)throw p;i.location.assign(h)}o&&c&&c({action:s,location:f.location,delta:1})},replace:function(e,t){s=JP.Replace;let n=nO(f.location,e,t);r&&r(n,e),l=u();let i=rO(n,l),d=f.createHref(n);a.replaceState(i,"",d),o&&c&&c({action:s,location:f.location,delta:0})},go:e=>a.go(e)};return f}var sO;!function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"}(sO||(sO={}));new Set(["lazy","caseSensitive","path","id","index","children"]);function cO(e,t,r){void 0===r&&(r="/");let n=_O(("string"===typeof t?oO(t):t).pathname||"/",r);if(null==n)return null;let i=lO(e);!function(e){e.sort(((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){let r=e.length===t.length&&e.slice(0,-1).every(((e,r)=>e===t[r]));return r?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map((e=>e.childrenIndex)),t.routesMeta.map((e=>e.childrenIndex)))))}(i);let o=null;for(let a=0;null==o&&a{let a={relativePath:void 0===o?e.path||"":o,caseSensitive:!0===e.caseSensitive,childrenIndex:i,route:e};a.relativePath.startsWith("/")&&(eO(a.relativePath.startsWith(n),'Absolute route path "'+a.relativePath+'" nested under path "'+n+'" is not valid. An absolute child route path must start with the combined path of all its parent routes.'),a.relativePath=a.relativePath.slice(n.length));let s=PO([n,a.relativePath]),c=r.concat(a);e.children&&e.children.length>0&&(eO(!0!==e.index,'Index routes must not have child routes. Please remove all child routes from route path "'+s+'".'),lO(e.children,t,c,s)),(null!=e.path||e.index)&&t.push({path:s,score:yO(s,e.index),routesMeta:c})};return e.forEach(((e,t)=>{var r;if(""!==e.path&&null!=(r=e.path)&&r.includes("?"))for(let n of uO(e.path))i(e,t,n);else i(e,t)})),t}function uO(e){let t=e.split("/");if(0===t.length)return[];let[r,...n]=t,i=r.endsWith("?"),o=r.replace(/\?$/,"");if(0===n.length)return i?[o,""]:[o];let a=uO(n.join("/")),s=[];return s.push(...a.map((e=>""===e?o:[o,e].join("/")))),i&&s.push(...a),s.map((t=>e.startsWith("/")&&""===t?"/":t))}const dO=/^:\w+$/,hO=3,fO=2,pO=1,mO=10,gO=-2,vO=e=>"*"===e;function yO(e,t){let r=e.split("/"),n=r.length;return r.some(vO)&&(n+=gO),t&&(n+=fO),r.filter((e=>!vO(e))).reduce(((e,t)=>e+(dO.test(t)?hO:""===t?pO:mO)),n)}function bO(e,t){let{routesMeta:r}=e,n={},i="/",o=[];for(let a=0;a(n.push({paramName:t,isOptional:null!=r}),r?"/?([^\\/]+)?":"/([^\\/]+)")));e.endsWith("*")?(n.push({paramName:"*"}),i+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?i+="\\/*$":""!==e&&"/"!==e&&(i+="(?:(?=\\/|$))");let o=new RegExp(i,t?void 0:"i");return[o,n]}(e.path,e.caseSensitive,e.end),i=t.match(r);if(!i)return null;let o=i[0],a=o.replace(/(.)\/+$/,"$1"),s=i.slice(1),c=n.reduce(((e,t,r)=>{let{paramName:n,isOptional:i}=t;if("*"===n){let e=s[r]||"";a=o.slice(0,o.length-e.length).replace(/(.)\/+$/,"$1")}const c=s[r];return e[n]=i&&!c?void 0:function(e,t){try{return decodeURIComponent(e)}catch(r){return tO(!1,'The value for the URL param "'+t+'" will not be decoded because the string "'+e+'" is a malformed URL segment. This is probably due to a bad percent encoding ('+r+")."),e}}(c||"",n),e}),{});return{params:c,pathname:o,pathnameBase:a,pattern:e}}function xO(e){try{return decodeURI(e)}catch(t){return tO(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent encoding ('+t+")."),e}}function _O(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,n=e.charAt(r);return n&&"/"!==n?null:e.slice(r)||"/"}function SO(e,t,r,n){return"Cannot include a '"+e+"' character in a manually specified `to."+t+"` field ["+JSON.stringify(n)+"]. Please separate it out to the `to."+r+'` field. Alternatively you may provide the full path as a string in and the router will parse it for you.'}function kO(e){return e.filter(((e,t)=>0===t||e.route.path&&e.route.path.length>0))}function EO(e,t){let r=kO(e);return t?r.map(((t,r)=>r===e.length-1?t.pathname:t.pathnameBase)):r.map((e=>e.pathnameBase))}function AO(e,t,r,n){let i;void 0===n&&(n=!1),"string"===typeof e?i=oO(e):(i=XP({},e),eO(!i.pathname||!i.pathname.includes("?"),SO("?","pathname","search",i)),eO(!i.pathname||!i.pathname.includes("#"),SO("#","pathname","hash",i)),eO(!i.search||!i.search.includes("#"),SO("#","search","hash",i)));let o,a=""===e||""===i.pathname,s=a?"/":i.pathname;if(null==s)o=r;else{let e=t.length-1;if(!n&&s.startsWith("..")){let t=s.split("/");for(;".."===t[0];)t.shift(),e-=1;i.pathname=t.join("/")}o=e>=0?t[e]:"/"}let c=function(e,t){void 0===t&&(t="/");let{pathname:r,search:n="",hash:i=""}="string"===typeof e?oO(e):e,o=r?r.startsWith("/")?r:function(e,t){let r=t.replace(/\/+$/,"").split("/");return e.split("/").forEach((e=>{".."===e?r.length>1&&r.pop():"."!==e&&r.push(e)})),r.length>1?r.join("/"):"/"}(r,t):t;return{pathname:o,search:TO(n),hash:CO(i)}}(i,o),l=s&&"/"!==s&&s.endsWith("/"),u=(a||"."===s)&&r.endsWith("/");return c.pathname.endsWith("/")||!l&&!u||(c.pathname+="/"),c}const PO=e=>e.join("/").replace(/\/\/+/g,"/"),OO=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),TO=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",CO=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"";Error;function jO(e){return null!=e&&"number"===typeof e.status&&"string"===typeof e.statusText&&"boolean"===typeof e.internal&&"data"in e}const RO=["post","put","patch","delete"],IO=(new Set(RO),["get",...RO]);new Set(IO),new Set([301,302,303,307,308]),new Set([307,308]);Symbol("deferred");function MO(){return MO=Object.assign?Object.assign.bind():function(e){for(var t=1;t{r.current=!0}));let i=n.useCallback((function(n,i){void 0===i&&(i={}),r.current&&("number"===typeof n?e.navigate(n):e.navigate(n,MO({fromRouteId:t},i)))}),[e,t]);return i}():function(){FO()||eO(!1);let e=n.useContext(LO),{basename:t,future:r,navigator:i}=n.useContext(DO),{matches:o}=n.useContext(BO),{pathname:a}=$O(),s=JSON.stringify(EO(o,r.v7_relativeSplatPath)),c=n.useRef(!1);HO((()=>{c.current=!0}));let l=n.useCallback((function(r,n){if(void 0===n&&(n={}),!c.current)return;if("number"===typeof r)return void i.go(r);let o=AO(r,JSON.parse(s),a,"path"===n.relative);null==e&&"/"!==t&&(o.pathname="/"===o.pathname?t:PO([t,o.pathname])),(n.replace?i.replace:i.push)(o,n.state,n)}),[t,i,s,a,e]);return l}()}function qO(e,t){let{relative:r}=void 0===t?{}:t,{future:i}=n.useContext(DO),{matches:o}=n.useContext(BO),{pathname:a}=$O(),s=JSON.stringify(EO(o,i.v7_relativeSplatPath));return n.useMemo((()=>AO(e,JSON.parse(s),a,"path"===r)),[e,s,a,r])}function KO(e,t,r,i){FO()||eO(!1);let{navigator:o}=n.useContext(DO),{matches:a}=n.useContext(BO),s=a[a.length-1],c=s?s.params:{},l=(s&&s.pathname,s?s.pathnameBase:"/");s&&s.route;let u,d=$O();if(t){var h;let e="string"===typeof t?oO(t):t;"/"===l||(null==(h=e.pathname)?void 0:h.startsWith(l))||eO(!1),u=e}else u=d;let f=u.pathname||"/",p=cO(e,{pathname:"/"===l?f:f.slice(l.length)||"/"});let m=XO(p&&p.map((e=>Object.assign({},e,{params:Object.assign({},c,e.params),pathname:PO([l,o.encodeLocation?o.encodeLocation(e.pathname).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?l:PO([l,o.encodeLocation?o.encodeLocation(e.pathnameBase).pathname:e.pathnameBase])}))),a,r,i);return t&&m?n.createElement(zO.Provider,{value:{location:MO({pathname:"/",search:"",hash:"",state:null,key:"default"},u),navigationType:JP.Pop}},m):m}function WO(){let e=function(){var e;let t=n.useContext(UO),r=tT(QO.UseRouteError),i=rT(QO.UseRouteError);if(void 0!==t)return t;return null==(e=r.errors)?void 0:e[i]}(),t=jO(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,i="rgba(200,200,200, 0.5)",o={padding:"0.5rem",backgroundColor:i};return n.createElement(n.Fragment,null,n.createElement("h2",null,"Unexpected Application Error!"),n.createElement("h3",{style:{fontStyle:"italic"}},t),r?n.createElement("pre",{style:o},r):null,null)}const GO=n.createElement(WO,null);class ZO extends n.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||"idle"!==t.revalidation&&"idle"===e.revalidation?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:void 0!==e.error?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){console.error("React Router caught the following error during render",e,t)}render(){return void 0!==this.state.error?n.createElement(BO.Provider,{value:this.props.routeContext},n.createElement(UO.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function YO(e){let{routeContext:t,match:r,children:i}=e,o=n.useContext(LO);return o&&o.static&&o.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(o.staticContext._deepestRenderedBoundaryId=r.route.id),n.createElement(BO.Provider,{value:t},i)}function XO(e,t,r,i){var o;if(void 0===t&&(t=[]),void 0===r&&(r=null),void 0===i&&(i=null),null==e){var a;if(null==(a=r)||!a.errors)return null;e=r.matches}let s=e,c=null==(o=r)?void 0:o.errors;if(null!=c){let e=s.findIndex((e=>e.route.id&&(null==c?void 0:c[e.route.id])));e>=0||eO(!1),s=s.slice(0,Math.min(s.length,e+1))}let l=!1,u=-1;if(r&&i&&i.v7_partialHydration)for(let n=0;n=0?s.slice(0,u+1):[s[0]];break}}}return s.reduceRight(((e,i,o)=>{let a,d=!1,h=null,f=null;r&&(a=c&&i.route.id?c[i.route.id]:void 0,h=i.route.errorElement||GO,l&&(u<0&&0===o?(!function(e,t,r){t||nT[e]||(nT[e]=!0)}("route-fallback",!1),d=!0,f=null):u===o&&(d=!0,f=i.route.hydrateFallbackElement||null)));let p=t.concat(s.slice(0,o+1)),m=()=>{let t;return t=a?h:d?f:i.route.Component?n.createElement(i.route.Component,null):i.route.element?i.route.element:e,n.createElement(YO,{match:i,routeContext:{outlet:e,matches:p,isDataRoute:null!=r},children:t})};return r&&(i.route.ErrorBoundary||i.route.errorElement||0===o)?n.createElement(ZO,{location:r.location,revalidation:r.revalidation,component:h,error:a,children:m(),routeContext:{outlet:null,matches:p,isDataRoute:!0}}):m()}),null)}var JO=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(JO||{}),QO=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(QO||{});function eT(e){let t=n.useContext(LO);return t||eO(!1),t}function tT(e){let t=n.useContext(NO);return t||eO(!1),t}function rT(e){let t=function(e){let t=n.useContext(BO);return t||eO(!1),t}(),r=t.matches[t.matches.length-1];return r.route.id||eO(!1),r.route.id}const nT={};i.startTransition;function iT(e){let{to:t,replace:r,state:i,relative:o}=e;FO()||eO(!1);let{future:a,static:s}=n.useContext(DO),{matches:c}=n.useContext(BO),{pathname:l}=$O(),u=VO(),d=AO(t,EO(c,a.v7_relativeSplatPath),l,"path"===o),h=JSON.stringify(d);return n.useEffect((()=>u(JSON.parse(h),{replace:r,state:i,relative:o})),[u,h,o,r,i]),null}function oT(e){eO(!1)}function aT(e){let{basename:t="/",children:r=null,location:i,navigationType:o=JP.Pop,navigator:a,static:s=!1,future:c}=e;FO()&&eO(!1);let l=t.replace(/^\/*/,"/"),u=n.useMemo((()=>({basename:l,navigator:a,static:s,future:MO({v7_relativeSplatPath:!1},c)})),[l,c,a,s]);"string"===typeof i&&(i=oO(i));let{pathname:d="/",search:h="",hash:f="",state:p=null,key:m="default"}=i,g=n.useMemo((()=>{let e=_O(d,l);return null==e?null:{location:{pathname:e,search:h,hash:f,state:p,key:m},navigationType:o}}),[l,d,h,f,p,m,o]);return null==g?null:n.createElement(DO.Provider,{value:u},n.createElement(zO.Provider,{children:r,value:g}))}function sT(e){let{children:t,location:r}=e;return KO(cT(t),r)}new Promise((()=>{}));n.Component;function cT(e,t){void 0===t&&(t=[]);let r=[];return n.Children.forEach(e,((e,i)=>{if(!n.isValidElement(e))return;let o=[...t,i];if(e.type===n.Fragment)return void r.push.apply(r,cT(e.props.children,o));e.type!==oT&&eO(!1),e.props.index&&e.props.children&&eO(!1);let a={id:e.props.id||o.join("-"),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,loader:e.props.loader,action:e.props.action,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:null!=e.props.ErrorBoundary||null!=e.props.errorElement,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(a.children=cT(e.props.children,o)),r.push(a)})),r}function lT(){return lT=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0||(i[r]=e[r]);return i}function dT(e){return void 0===e&&(e=""),new URLSearchParams("string"===typeof e||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce(((t,r)=>{let n=e[r];return t.concat(Array.isArray(n)?n.map((e=>[r,e])):[[r,n]])}),[]))}new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);const hT=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","unstable_viewTransition"];new Map;const fT=i.startTransition;Wn.flushSync;function pT(e){let{basename:t,children:r,future:i,window:o}=e,a=n.useRef();null==a.current&&(a.current=function(e){return void 0===e&&(e={}),aO((function(e,t){let{pathname:r="/",search:n="",hash:i=""}=oO(e.location.hash.substr(1));return r.startsWith("/")||r.startsWith(".")||(r="/"+r),nO("",{pathname:r,search:n,hash:i},t.state&&t.state.usr||null,t.state&&t.state.key||"default")}),(function(e,t){let r=e.document.querySelector("base"),n="";if(r&&r.getAttribute("href")){let t=e.location.href,r=t.indexOf("#");n=-1===r?t:t.slice(0,r)}return n+"#"+("string"===typeof t?t:iO(t))}),(function(e,t){tO("/"===e.pathname.charAt(0),"relative pathnames are not supported in hash history.push("+JSON.stringify(t)+")")}),e)}({window:o,v5Compat:!0}));let s=a.current,[c,l]=n.useState({action:s.action,location:s.location}),{v7_startTransition:u}=i||{},d=n.useCallback((e=>{u&&fT?fT((()=>l(e))):l(e)}),[l,u]);return n.useLayoutEffect((()=>s.listen(d)),[s,d]),n.createElement(aT,{basename:t,children:r,location:c.location,navigationType:c.action,navigator:s,future:i})}const mT="undefined"!==typeof window&&"undefined"!==typeof window.document&&"undefined"!==typeof window.document.createElement,gT=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,vT=n.forwardRef((function(e,t){let r,{onClick:i,relative:o,reloadDocument:a,replace:s,state:c,target:l,to:u,preventScrollReset:d,unstable_viewTransition:h}=e,f=uT(e,hT),{basename:p}=n.useContext(DO),m=!1;if("string"===typeof u&&gT.test(u)&&(r=u,mT))try{let e=new URL(window.location.href),t=u.startsWith("//")?new URL(e.protocol+u):new URL(u),r=_O(t.pathname,p);t.origin===e.origin&&null!=r?u=r+t.search+t.hash:m=!0}catch(y){}let g=function(e,t){let{relative:r}=void 0===t?{}:t;FO()||eO(!1);let{basename:i,navigator:o}=n.useContext(DO),{hash:a,pathname:s,search:c}=qO(e,{relative:r}),l=s;return"/"!==i&&(l="/"===s?i:PO([i,s])),o.createHref({pathname:l,search:c,hash:a})}(u,{relative:o}),v=function(e,t){let{target:r,replace:i,state:o,preventScrollReset:a,relative:s,unstable_viewTransition:c}=void 0===t?{}:t,l=VO(),u=$O(),d=qO(e,{relative:s});return n.useCallback((t=>{if(function(e,t){return 0===e.button&&(!t||"_self"===t)&&!function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e)}(t,r)){t.preventDefault();let r=void 0!==i?i:iO(u)===iO(d);l(e,{replace:r,state:o,preventScrollReset:a,relative:s,unstable_viewTransition:c})}}),[u,l,d,i,o,r,e,a,s,c])}(u,{replace:s,state:c,target:l,preventScrollReset:d,relative:o,unstable_viewTransition:h});return n.createElement("a",lT({},f,{href:r||g,onClick:m||a?i:function(e){i&&i(e),e.defaultPrevented||v(e)},ref:t,target:l}))}));var yT,bT;function wT(e){let t=n.useRef(dT(e)),r=n.useRef(!1),i=$O(),o=n.useMemo((()=>function(e,t){let r=dT(e);return t&&t.forEach(((e,n)=>{r.has(n)||t.getAll(n).forEach((e=>{r.append(n,e)}))})),r}(i.search,r.current?null:t.current)),[i.search]),a=VO(),s=n.useCallback(((e,t)=>{const n=dT("function"===typeof e?e(o):e);r.current=!0,a("?"+n,t)}),[a,o]);return[o,s]}(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(yT||(yT={})),function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"}(bT||(bT={}));function xT(e,t){return function(){return e.apply(t,arguments)}}const{toString:_T}=Object.prototype,{getPrototypeOf:ST}=Object,kT=(e=>t=>{const r=_T.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),ET=e=>(e=e.toLowerCase(),t=>kT(t)===e),AT=e=>t=>typeof t===e,{isArray:PT}=Array,OT=AT("undefined");const TT=ET("ArrayBuffer");const CT=AT("string"),jT=AT("function"),RT=AT("number"),IT=e=>null!==e&&"object"===typeof e,MT=e=>{if("object"!==kT(e))return!1;const t=ST(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)},LT=ET("Date"),NT=ET("File"),DT=ET("Blob"),zT=ET("FileList"),BT=ET("URLSearchParams");function UT(e,t,{allOwnKeys:r=!1}={}){if(null===e||"undefined"===typeof e)return;let n,i;if("object"!==typeof e&&(e=[e]),PT(e))for(n=0,i=e.length;n0;)if(n=r[i],t===n.toLowerCase())return n;return null}const $T="undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self?self:"undefined"!==typeof window?window:global,HT=e=>!OT(e)&&e!==$T;const VT=(qT="undefined"!==typeof Uint8Array&&ST(Uint8Array),e=>qT&&e instanceof qT);var qT;const KT=ET("HTMLFormElement"),WT=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),GT=ET("RegExp"),ZT=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};UT(r,((r,i)=>{let o;!1!==(o=t(r,i,e))&&(n[i]=o||r)})),Object.defineProperties(e,n)},YT="abcdefghijklmnopqrstuvwxyz",XT="0123456789",JT={DIGIT:XT,ALPHA:YT,ALPHA_DIGIT:YT+YT.toUpperCase()+XT};const QT=ET("AsyncFunction"),eC={isArray:PT,isArrayBuffer:TT,isBuffer:function(e){return null!==e&&!OT(e)&&null!==e.constructor&&!OT(e.constructor)&&jT(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{let t;return e&&("function"===typeof FormData&&e instanceof FormData||jT(e.append)&&("formdata"===(t=kT(e))||"object"===t&&jT(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&TT(e.buffer),t},isString:CT,isNumber:RT,isBoolean:e=>!0===e||!1===e,isObject:IT,isPlainObject:MT,isUndefined:OT,isDate:LT,isFile:NT,isBlob:DT,isRegExp:GT,isFunction:jT,isStream:e=>IT(e)&&jT(e.pipe),isURLSearchParams:BT,isTypedArray:VT,isFileList:zT,forEach:UT,merge:function e(){const{caseless:t}=HT(this)&&this||{},r={},n=(n,i)=>{const o=t&&FT(r,i)||i;MT(r[o])&&MT(n)?r[o]=e(r[o],n):MT(n)?r[o]=e({},n):PT(n)?r[o]=n.slice():r[o]=n};for(let i=0,o=arguments.length;i(UT(t,((t,n)=>{r&&jT(t)?e[n]=xT(t,r):e[n]=t}),{allOwnKeys:n}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},toFlatObject:(e,t,r,n)=>{let i,o,a;const s={};if(t=t||{},null==e)return t;do{for(i=Object.getOwnPropertyNames(e),o=i.length;o-- >0;)a=i[o],n&&!n(a,e,t)||s[a]||(t[a]=e[a],s[a]=!0);e=!1!==r&&ST(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},kindOf:kT,kindOfTest:ET,endsWith:(e,t,r)=>{e=String(e),(void 0===r||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return-1!==n&&n===r},toArray:e=>{if(!e)return null;if(PT(e))return e;let t=e.length;if(!RT(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},forEachEntry:(e,t)=>{const r=(e&&e[Symbol.iterator]).call(e);let n;for(;(n=r.next())&&!n.done;){const r=n.value;t.call(e,r[0],r[1])}},matchAll:(e,t)=>{let r;const n=[];for(;null!==(r=e.exec(t));)n.push(r);return n},isHTMLForm:KT,hasOwnProperty:WT,hasOwnProp:WT,reduceDescriptors:ZT,freezeMethods:e=>{ZT(e,((t,r)=>{if(jT(e)&&-1!==["arguments","caller","callee"].indexOf(r))return!1;const n=e[r];jT(n)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")}))}))},toObjectSet:(e,t)=>{const r={},n=e=>{e.forEach((e=>{r[e]=!0}))};return PT(e)?n(e):n(String(e).split(t)),r},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,r){return t.toUpperCase()+r})),noop:()=>{},toFiniteNumber:(e,t)=>(e=+e,Number.isFinite(e)?e:t),findKey:FT,global:$T,isContextDefined:HT,ALPHABET:JT,generateString:(e=16,t=JT.ALPHA_DIGIT)=>{let r="";const{length:n}=t;for(;e--;)r+=t[Math.random()*n|0];return r},isSpecCompliantForm:function(e){return!!(e&&jT(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),r=(e,n)=>{if(IT(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[n]=e;const i=PT(e)?[]:{};return UT(e,((e,t)=>{const o=r(e,n+1);!OT(o)&&(i[t]=o)})),t[n]=void 0,i}}return e};return r(e,0)},isAsyncFn:QT,isThenable:e=>e&&(IT(e)||jT(e))&&jT(e.then)&&jT(e.catch)};function tC(e,t,r,n,i){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),i&&(this.response=i)}eC.inherits(tC,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:eC.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const rC=tC.prototype,nC={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{nC[e]={value:e}})),Object.defineProperties(tC,nC),Object.defineProperty(rC,"isAxiosError",{value:!0}),tC.from=(e,t,r,n,i,o)=>{const a=Object.create(rC);return eC.toFlatObject(e,a,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),tC.call(a,e.message,t,r,n,i),a.cause=e,a.name=e.name,o&&Object.assign(a,o),a};const iC=tC;var oC=r(4872).Buffer;function aC(e){return eC.isPlainObject(e)||eC.isArray(e)}function sC(e){return eC.endsWith(e,"[]")?e.slice(0,-2):e}function cC(e,t,r){return e?e.concat(t).map((function(e,t){return e=sC(e),!r&&t?"["+e+"]":e})).join(r?".":""):t}const lC=eC.toFlatObject(eC,{},null,(function(e){return/^is[A-Z]/.test(e)}));const uC=function(e,t,r){if(!eC.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const n=(r=eC.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!eC.isUndefined(t[e])}))).metaTokens,i=r.visitor||l,o=r.dots,a=r.indexes,s=(r.Blob||"undefined"!==typeof Blob&&Blob)&&eC.isSpecCompliantForm(t);if(!eC.isFunction(i))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(eC.isDate(e))return e.toISOString();if(!s&&eC.isBlob(e))throw new iC("Blob is not supported. Use a Buffer instead.");return eC.isArrayBuffer(e)||eC.isTypedArray(e)?s&&"function"===typeof Blob?new Blob([e]):oC.from(e):e}function l(e,r,i){let s=e;if(e&&!i&&"object"===typeof e)if(eC.endsWith(r,"{}"))r=n?r:r.slice(0,-2),e=JSON.stringify(e);else if(eC.isArray(e)&&function(e){return eC.isArray(e)&&!e.some(aC)}(e)||(eC.isFileList(e)||eC.endsWith(r,"[]"))&&(s=eC.toArray(e)))return r=sC(r),s.forEach((function(e,n){!eC.isUndefined(e)&&null!==e&&t.append(!0===a?cC([r],n,o):null===a?r:r+"[]",c(e))})),!1;return!!aC(e)||(t.append(cC(i,r,o),c(e)),!1)}const u=[],d=Object.assign(lC,{defaultVisitor:l,convertValue:c,isVisitable:aC});if(!eC.isObject(e))throw new TypeError("data must be an object");return function e(r,n){if(!eC.isUndefined(r)){if(-1!==u.indexOf(r))throw Error("Circular reference detected in "+n.join("."));u.push(r),eC.forEach(r,(function(r,o){!0===(!(eC.isUndefined(r)||null===r)&&i.call(t,r,eC.isString(o)?o.trim():o,n,d))&&e(r,n?n.concat(o):[o])})),u.pop()}}(e),t};function dC(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function hC(e,t){this._pairs=[],e&&uC(e,this,t)}const fC=hC.prototype;fC.append=function(e,t){this._pairs.push([e,t])},fC.toString=function(e){const t=e?function(t){return e.call(this,t,dC)}:dC;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const pC=hC;function mC(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function gC(e,t,r){if(!t)return e;const n=r&&r.encode||mC,i=r&&r.serialize;let o;if(o=i?i(t,r):eC.isURLSearchParams(t)?t.toString():new pC(t,r).toString(n),o){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+o}return e}const vC=class{constructor(){this.handlers=[]}use(e,t,r){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!r&&r.synchronous,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){eC.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},yC={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},bC={isBrowser:!0,classes:{URLSearchParams:"undefined"!==typeof URLSearchParams?URLSearchParams:pC,FormData:"undefined"!==typeof FormData?FormData:null,Blob:"undefined"!==typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]},wC="undefined"!==typeof window&&"undefined"!==typeof document,xC=(_C="undefined"!==typeof navigator&&navigator.product,wC&&["ReactNative","NativeScript","NS"].indexOf(_C)<0);var _C;const SC="undefined"!==typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"===typeof self.importScripts,kC={...e,...bC};const EC=function(e){function t(e,r,n,i){let o=e[i++];if("__proto__"===o)return!0;const a=Number.isFinite(+o),s=i>=e.length;if(o=!o&&eC.isArray(n)?n.length:o,s)return eC.hasOwnProp(n,o)?n[o]=[n[o],r]:n[o]=r,!a;n[o]&&eC.isObject(n[o])||(n[o]=[]);return t(e,r,n[o],i)&&eC.isArray(n[o])&&(n[o]=function(e){const t={},r=Object.keys(e);let n;const i=r.length;let o;for(n=0;n{t(function(e){return eC.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),n,r,0)})),r}return null};const AC={transitional:yC,adapter:["xhr","http"],transformRequest:[function(e,t){const r=t.getContentType()||"",n=r.indexOf("application/json")>-1,i=eC.isObject(e);i&&eC.isHTMLForm(e)&&(e=new FormData(e));if(eC.isFormData(e))return n&&n?JSON.stringify(EC(e)):e;if(eC.isArrayBuffer(e)||eC.isBuffer(e)||eC.isStream(e)||eC.isFile(e)||eC.isBlob(e))return e;if(eC.isArrayBufferView(e))return e.buffer;if(eC.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(r.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return uC(e,new kC.classes.URLSearchParams,Object.assign({visitor:function(e,t,r,n){return kC.isNode&&eC.isBuffer(e)?(this.append(t,e.toString("base64")),!1):n.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((o=eC.isFileList(e))||r.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return uC(o?{"files[]":e}:e,t&&new t,this.formSerializer)}}return i||n?(t.setContentType("application/json",!1),function(e,t,r){if(eC.isString(e))try{return(t||JSON.parse)(e),eC.trim(e)}catch(n){if("SyntaxError"!==n.name)throw n}return(r||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||AC.transitional,r=t&&t.forcedJSONParsing,n="json"===this.responseType;if(e&&eC.isString(e)&&(r&&!this.responseType||n)){const r=!(t&&t.silentJSONParsing)&&n;try{return JSON.parse(e)}catch(i){if(r){if("SyntaxError"===i.name)throw iC.from(i,iC.ERR_BAD_RESPONSE,this,null,this.response);throw i}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:kC.classes.FormData,Blob:kC.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};eC.forEach(["delete","get","head","post","put","patch"],(e=>{AC.headers[e]={}}));const PC=AC,OC=eC.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),TC=Symbol("internals");function CC(e){return e&&String(e).trim().toLowerCase()}function jC(e){return!1===e||null==e?e:eC.isArray(e)?e.map(jC):String(e)}function RC(e,t,r,n,i){return eC.isFunction(n)?n.call(this,t,r):(i&&(t=r),eC.isString(t)?eC.isString(n)?-1!==t.indexOf(n):eC.isRegExp(n)?n.test(t):void 0:void 0)}class IC{constructor(e){e&&this.set(e)}set(e,t,r){const n=this;function i(e,t,r){const i=CC(t);if(!i)throw new Error("header name must be a non-empty string");const o=eC.findKey(n,i);(!o||void 0===n[o]||!0===r||void 0===r&&!1!==n[o])&&(n[o||t]=jC(e))}const o=(e,t)=>eC.forEach(e,((e,r)=>i(e,r,t)));return eC.isPlainObject(e)||e instanceof this.constructor?o(e,t):eC.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim())?o((e=>{const t={};let r,n,i;return e&&e.split("\n").forEach((function(e){i=e.indexOf(":"),r=e.substring(0,i).trim().toLowerCase(),n=e.substring(i+1).trim(),!r||t[r]&&OC[r]||("set-cookie"===r?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)})),t})(e),t):null!=e&&i(t,e,r),this}get(e,t){if(e=CC(e)){const r=eC.findKey(this,e);if(r){const e=this[r];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}(e);if(eC.isFunction(t))return t.call(this,e,r);if(eC.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=CC(e)){const r=eC.findKey(this,e);return!(!r||void 0===this[r]||t&&!RC(0,this[r],r,t))}return!1}delete(e,t){const r=this;let n=!1;function i(e){if(e=CC(e)){const i=eC.findKey(r,e);!i||t&&!RC(0,r[i],i,t)||(delete r[i],n=!0)}}return eC.isArray(e)?e.forEach(i):i(e),n}clear(e){const t=Object.keys(this);let r=t.length,n=!1;for(;r--;){const i=t[r];e&&!RC(0,this[i],i,e,!0)||(delete this[i],n=!0)}return n}normalize(e){const t=this,r={};return eC.forEach(this,((n,i)=>{const o=eC.findKey(r,i);if(o)return t[o]=jC(n),void delete t[i];const a=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,r)=>t.toUpperCase()+r))}(i):String(i).trim();a!==i&&delete t[i],t[a]=jC(n),r[a]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return eC.forEach(this,((r,n)=>{null!=r&&!1!==r&&(t[n]=e&&eC.isArray(r)?r.join(", "):r)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const r=new this(e);return t.forEach((e=>r.set(e))),r}static accessor(e){const t=(this[TC]=this[TC]={accessors:{}}).accessors,r=this.prototype;function n(e){const n=CC(e);t[n]||(!function(e,t){const r=eC.toCamelCase(" "+t);["get","set","has"].forEach((n=>{Object.defineProperty(e,n+r,{value:function(e,r,i){return this[n].call(this,t,e,r,i)},configurable:!0})}))}(r,e),t[n]=!0)}return eC.isArray(e)?e.forEach(n):n(e),this}}IC.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),eC.reduceDescriptors(IC.prototype,(({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[r]=e}}})),eC.freezeMethods(IC);const MC=IC;function LC(e,t){const r=this||PC,n=t||r,i=MC.from(n.headers);let o=n.data;return eC.forEach(e,(function(e){o=e.call(r,o,i.normalize(),t?t.status:void 0)})),i.normalize(),o}function NC(e){return!(!e||!e.__CANCEL__)}function DC(e,t,r){iC.call(this,null==e?"canceled":e,iC.ERR_CANCELED,t,r),this.name="CanceledError"}eC.inherits(DC,iC,{__CANCEL__:!0});const zC=DC;const BC=kC.hasStandardBrowserEnv?{write(e,t,r,n,i,o){const a=[e+"="+encodeURIComponent(t)];eC.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),eC.isString(n)&&a.push("path="+n),eC.isString(i)&&a.push("domain="+i),!0===o&&a.push("secure"),document.cookie=a.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function UC(e,t){return e&&!function(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}(t)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const FC=kC.hasStandardBrowserEnv?function(){const e=/(msie|trident)/i.test(navigator.userAgent),t=document.createElement("a");let r;function n(r){let n=r;return e&&(t.setAttribute("href",n),n=t.href),t.setAttribute("href",n),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return r=n(window.location.href),function(e){const t=eC.isString(e)?n(e):e;return t.protocol===r.protocol&&t.host===r.host}}():function(){return!0};const $C=function(e,t){e=e||10;const r=new Array(e),n=new Array(e);let i,o=0,a=0;return t=void 0!==t?t:1e3,function(s){const c=Date.now(),l=n[a];i||(i=c),r[o]=s,n[o]=c;let u=a,d=0;for(;u!==o;)d+=r[u++],u%=e;if(o=(o+1)%e,o===a&&(a=(a+1)%e),c-i{const o=i.loaded,a=i.lengthComputable?i.total:void 0,s=o-r,c=n(s);r=o;const l={loaded:o,total:a,progress:a?o/a:void 0,bytes:s,rate:c||void 0,estimated:c&&a&&o<=a?(a-o)/c:void 0,event:i};l[t?"download":"upload"]=!0,e(l)}}const VC="undefined"!==typeof XMLHttpRequest&&function(e){return new Promise((function(t,r){let n=e.data;const i=MC.from(e.headers).normalize();let o,a,{responseType:s,withXSRFToken:c}=e;function l(){e.cancelToken&&e.cancelToken.unsubscribe(o),e.signal&&e.signal.removeEventListener("abort",o)}if(eC.isFormData(n))if(kC.hasStandardBrowserEnv||kC.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if(!1!==(a=i.getContentType())){const[e,...t]=a?a.split(";").map((e=>e.trim())).filter(Boolean):[];i.setContentType([e||"multipart/form-data",...t].join("; "))}let u=new XMLHttpRequest;if(e.auth){const t=e.auth.username||"",r=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";i.set("Authorization","Basic "+btoa(t+":"+r))}const d=UC(e.baseURL,e.url);function h(){if(!u)return;const n=MC.from("getAllResponseHeaders"in u&&u.getAllResponseHeaders());!function(e,t,r){const n=r.config.validateStatus;r.status&&n&&!n(r.status)?t(new iC("Request failed with status code "+r.status,[iC.ERR_BAD_REQUEST,iC.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r)):e(r)}((function(e){t(e),l()}),(function(e){r(e),l()}),{data:s&&"text"!==s&&"json"!==s?u.response:u.responseText,status:u.status,statusText:u.statusText,headers:n,config:e,request:u}),u=null}if(u.open(e.method.toUpperCase(),gC(d,e.params,e.paramsSerializer),!0),u.timeout=e.timeout,"onloadend"in u?u.onloadend=h:u.onreadystatechange=function(){u&&4===u.readyState&&(0!==u.status||u.responseURL&&0===u.responseURL.indexOf("file:"))&&setTimeout(h)},u.onabort=function(){u&&(r(new iC("Request aborted",iC.ECONNABORTED,e,u)),u=null)},u.onerror=function(){r(new iC("Network Error",iC.ERR_NETWORK,e,u)),u=null},u.ontimeout=function(){let t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const n=e.transitional||yC;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),r(new iC(t,n.clarifyTimeoutError?iC.ETIMEDOUT:iC.ECONNABORTED,e,u)),u=null},kC.hasStandardBrowserEnv&&(c&&eC.isFunction(c)&&(c=c(e)),c||!1!==c&&FC(d))){const t=e.xsrfHeaderName&&e.xsrfCookieName&&BC.read(e.xsrfCookieName);t&&i.set(e.xsrfHeaderName,t)}void 0===n&&i.setContentType(null),"setRequestHeader"in u&&eC.forEach(i.toJSON(),(function(e,t){u.setRequestHeader(t,e)})),eC.isUndefined(e.withCredentials)||(u.withCredentials=!!e.withCredentials),s&&"json"!==s&&(u.responseType=e.responseType),"function"===typeof e.onDownloadProgress&&u.addEventListener("progress",HC(e.onDownloadProgress,!0)),"function"===typeof e.onUploadProgress&&u.upload&&u.upload.addEventListener("progress",HC(e.onUploadProgress)),(e.cancelToken||e.signal)&&(o=t=>{u&&(r(!t||t.type?new zC(null,e,u):t),u.abort(),u=null)},e.cancelToken&&e.cancelToken.subscribe(o),e.signal&&(e.signal.aborted?o():e.signal.addEventListener("abort",o)));const f=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(d);f&&-1===kC.protocols.indexOf(f)?r(new iC("Unsupported protocol "+f+":",iC.ERR_BAD_REQUEST,e)):u.send(n||null)}))},qC={http:null,xhr:VC};eC.forEach(qC,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(r){}Object.defineProperty(e,"adapterName",{value:t})}}));const KC=e=>`- ${e}`,WC=e=>eC.isFunction(e)||null===e||!1===e,GC=e=>{e=eC.isArray(e)?e:[e];const{length:t}=e;let r,n;const i={};for(let o=0;o`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));let r=t?e.length>1?"since :\n"+e.map(KC).join("\n"):" "+KC(e[0]):"as no adapter specified";throw new iC("There is no suitable adapter to dispatch the request "+r,"ERR_NOT_SUPPORT")}return n};function ZC(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new zC(null,e)}function YC(e){ZC(e),e.headers=MC.from(e.headers),e.data=LC.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return GC(e.adapter||PC.adapter)(e).then((function(t){return ZC(e),t.data=LC.call(e,e.transformResponse,t),t.headers=MC.from(t.headers),t}),(function(t){return NC(t)||(ZC(e),t&&t.response&&(t.response.data=LC.call(e,e.transformResponse,t.response),t.response.headers=MC.from(t.response.headers))),Promise.reject(t)}))}const XC=e=>e instanceof MC?e.toJSON():e;function JC(e,t){t=t||{};const r={};function n(e,t,r){return eC.isPlainObject(e)&&eC.isPlainObject(t)?eC.merge.call({caseless:r},e,t):eC.isPlainObject(t)?eC.merge({},t):eC.isArray(t)?t.slice():t}function i(e,t,r){return eC.isUndefined(t)?eC.isUndefined(e)?void 0:n(void 0,e,r):n(e,t,r)}function o(e,t){if(!eC.isUndefined(t))return n(void 0,t)}function a(e,t){return eC.isUndefined(t)?eC.isUndefined(e)?void 0:n(void 0,e):n(void 0,t)}function s(r,i,o){return o in t?n(r,i):o in e?n(void 0,r):void 0}const c={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:s,headers:(e,t)=>i(XC(e),XC(t),!0)};return eC.forEach(Object.keys(Object.assign({},e,t)),(function(n){const o=c[n]||i,a=o(e[n],t[n],n);eC.isUndefined(a)&&o!==s||(r[n]=a)})),r}const QC="1.6.5",ej={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{ej[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}}));const tj={};ej.transitional=function(e,t,r){function n(e,t){return"[Axios v1.6.5] Transitional option '"+e+"'"+t+(r?". "+r:"")}return(r,i,o)=>{if(!1===e)throw new iC(n(i," has been removed"+(t?" in "+t:"")),iC.ERR_DEPRECATED);return t&&!tj[i]&&(tj[i]=!0,console.warn(n(i," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(r,i,o)}};const rj={assertOptions:function(e,t,r){if("object"!==typeof e)throw new iC("options must be an object",iC.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let i=n.length;for(;i-- >0;){const o=n[i],a=t[o];if(a){const t=e[o],r=void 0===t||a(t,o,e);if(!0!==r)throw new iC("option "+o+" must be "+r,iC.ERR_BAD_OPTION_VALUE)}else if(!0!==r)throw new iC("Unknown option "+o,iC.ERR_BAD_OPTION)}},validators:ej},nj=rj.validators;class ij{constructor(e){this.defaults=e,this.interceptors={request:new vC,response:new vC}}request(e,t){"string"===typeof e?(t=t||{}).url=e:t=e||{},t=JC(this.defaults,t);const{transitional:r,paramsSerializer:n,headers:i}=t;void 0!==r&&rj.assertOptions(r,{silentJSONParsing:nj.transitional(nj.boolean),forcedJSONParsing:nj.transitional(nj.boolean),clarifyTimeoutError:nj.transitional(nj.boolean)},!1),null!=n&&(eC.isFunction(n)?t.paramsSerializer={serialize:n}:rj.assertOptions(n,{encode:nj.function,serialize:nj.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase();let o=i&&eC.merge(i.common,i[t.method]);i&&eC.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete i[e]})),t.headers=MC.concat(o,i);const a=[];let s=!0;this.interceptors.request.forEach((function(e){"function"===typeof e.runWhen&&!1===e.runWhen(t)||(s=s&&e.synchronous,a.unshift(e.fulfilled,e.rejected))}));const c=[];let l;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let u,d=0;if(!s){const e=[YC.bind(this),void 0];for(e.unshift.apply(e,a),e.push.apply(e,c),u=e.length,l=Promise.resolve(t);d{if(!r._listeners)return;let t=r._listeners.length;for(;t-- >0;)r._listeners[t](e);r._listeners=null})),this.promise.then=e=>{let t;const n=new Promise((e=>{r.subscribe(e),t=e})).then(e);return n.cancel=function(){r.unsubscribe(t)},n},e((function(e,n,i){r.reason||(r.reason=new zC(e,n,i),t(r.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;const t=new aj((function(t){e=t}));return{token:t,cancel:e}}}const sj=aj;const cj={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(cj).forEach((([e,t])=>{cj[t]=e}));const lj=cj;const uj=function e(t){const r=new oj(t),n=xT(oj.prototype.request,r);return eC.extend(n,oj.prototype,r,{allOwnKeys:!0}),eC.extend(n,r,null,{allOwnKeys:!0}),n.create=function(r){return e(JC(t,r))},n}(PC);uj.Axios=oj,uj.CanceledError=zC,uj.CancelToken=sj,uj.isCancel=NC,uj.VERSION=QC,uj.toFormData=uC,uj.AxiosError=iC,uj.Cancel=uj.CanceledError,uj.all=function(e){return Promise.all(e)},uj.spread=function(e){return function(t){return e.apply(null,t)}},uj.isAxiosError=function(e){return eC.isObject(e)&&!0===e.isAxiosError},uj.mergeConfig=JC,uj.AxiosHeaders=MC,uj.formToJSON=e=>EC(eC.isHTMLForm(e)?new FormData(e):e),uj.getAdapter=GC,uj.HttpStatusCode=lj,uj.default=uj;const dj=uj,hj=e=>(0,ln.jsxs)(LA,{width:"24px",height:"24px",fill:"none",textAlign:"center",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,ln.jsx)("path",{d:"M14 5.6C14 5.03995 14 4.75992 14.109 4.54601C14.2049 4.35785 14.3578 4.20487 14.546 4.10899C14.7599 4 15.0399 4 15.6 4H18.4C18.9601 4 19.2401 4 19.454 4.10899C19.6422 4.20487 19.7951 4.35785 19.891 4.54601C20 4.75992 20 5.03995 20 5.6V8.4C20 8.96005 20 9.24008 19.891 9.45399C19.7951 9.64215 19.6422 9.79513 19.454 9.89101C19.2401 10 18.9601 10 18.4 10H15.6C15.0399 10 14.7599 10 14.546 9.89101C14.3578 9.79513 14.2049 9.64215 14.109 9.45399C14 9.24008 14 8.96005 14 8.4V5.6Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,ln.jsx)("path",{d:"M4 5.6C4 5.03995 4 4.75992 4.10899 4.54601C4.20487 4.35785 4.35785 4.20487 4.54601 4.10899C4.75992 4 5.03995 4 5.6 4H8.4C8.96005 4 9.24008 4 9.45399 4.10899C9.64215 4.20487 9.79513 4.35785 9.89101 4.54601C10 4.75992 10 5.03995 10 5.6V8.4C10 8.96005 10 9.24008 9.89101 9.45399C9.79513 9.64215 9.64215 9.79513 9.45399 9.89101C9.24008 10 8.96005 10 8.4 10H5.6C5.03995 10 4.75992 10 4.54601 9.89101C4.35785 9.79513 4.20487 9.64215 4.10899 9.45399C4 9.24008 4 8.96005 4 8.4V5.6Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,ln.jsx)("path",{d:"M4 15.6C4 15.0399 4 14.7599 4.10899 14.546C4.20487 14.3578 4.35785 14.2049 4.54601 14.109C4.75992 14 5.03995 14 5.6 14H8.4C8.96005 14 9.24008 14 9.45399 14.109C9.64215 14.2049 9.79513 14.3578 9.89101 14.546C10 14.7599 10 15.0399 10 15.6V18.4C10 18.9601 10 19.2401 9.89101 19.454C9.79513 19.6422 9.64215 19.7951 9.45399 19.891C9.24008 20 8.96005 20 8.4 20H5.6C5.03995 20 4.75992 20 4.54601 19.891C4.35785 19.7951 4.20487 19.6422 4.10899 19.454C4 19.2401 4 18.9601 4 18.4V15.6Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,ln.jsx)("path",{d:"M14 15.6C14 15.0399 14 14.7599 14.109 14.546C14.2049 14.3578 14.3578 14.2049 14.546 14.109C14.7599 14 15.0399 14 15.6 14H18.4C18.9601 14 19.2401 14 19.454 14.109C19.6422 14.2049 19.7951 14.3578 19.891 14.546C20 14.7599 20 15.0399 20 15.6V18.4C20 18.9601 20 19.2401 19.891 19.454C19.7951 19.6422 19.6422 19.7951 19.454 19.891C19.2401 20 18.9601 20 18.4 20H15.6C15.0399 20 14.7599 20 14.546 19.891C14.3578 19.7951 14.2049 19.6422 14.109 19.454C14 19.2401 14 18.9601 14 18.4V15.6Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})]}),fj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M8.25 13.5H4.65C3.80992 13.5 3.38988 13.5 3.06901 13.3365C2.78677 13.1927 2.5573 12.9632 2.41349 12.681C2.25 12.3601 2.25 11.9401 2.25 11.1V5.4C2.25 4.55992 2.25 4.13988 2.41349 3.81901C2.5573 3.53677 2.78677 3.3073 3.06901 3.16349C3.38988 3 3.80992 3 4.65 3H13.35C14.1901 3 14.6101 3 14.931 3.16349C15.2132 3.3073 15.4427 3.53677 15.5865 3.81901C15.75 4.13988 15.75 4.55992 15.75 5.4V8.25M2.25 6H15.75M13.5 15V10.5M15.75 12.7506L11.25 12.75",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),pj=e=>(0,ln.jsx)(LA,{fill:"none",viewBox:"0 0 13 17",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M13 12.5L10.75 12.5M10.75 12.5L8.5 12.5M10.75 12.5V10.25M10.75 12.5V14.75M6.25 14.75H1C1 11.8505 3.35051 9.5 6.25 9.5C6.77123 9.5 7.27472 9.57596 7.75 9.71741M9.25 4.25C9.25 5.90685 7.90685 7.25 6.25 7.25C4.59315 7.25 3.25 5.90685 3.25 4.25C3.25 2.59315 4.59315 1.25 6.25 1.25C7.90685 1.25 9.25 2.59315 9.25 4.25Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),mj=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M13.5 15.5C13.2164 14.3589 11.981 13.5 10.5 13.5C9.019 13.5 7.78364 14.3589 7.5 15.5M21 5V7M21 11V13M21 17V19M6.2 21H14.8C15.9201 21 16.4802 21 16.908 20.782C17.2843 20.5903 17.5903 20.2843 17.782 19.908C18 19.4802 18 18.9201 18 17.8V6.2C18 5.0799 18 4.51984 17.782 4.09202C17.5903 3.71569 17.2843 3.40973 16.908 3.21799C16.4802 3 15.9201 3 14.8 3H6.2C5.0799 3 4.51984 3 4.09202 3.21799C3.71569 3.40973 3.40973 3.71569 3.21799 4.09202C3 4.51984 3 5.07989 3 6.2V17.8C3 18.9201 3 19.4802 3.21799 19.908C3.40973 20.2843 3.71569 20.5903 4.09202 20.782C4.51984 21 5.07989 21 6.2 21ZM11.5 9.5C11.5 10.0523 11.0523 10.5 10.5 10.5C9.94772 10.5 9.5 10.0523 9.5 9.5C9.5 8.94772 9.94772 8.5 10.5 8.5C11.0523 8.5 11.5 8.94772 11.5 9.5Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),gj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],"data-testid":"baker-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M3.74946 5.25V8.25M7.49946 1.5V4.5M13.4995 12V15M2.24946 6.75H5.24946M5.99946 3H8.99946M11.9995 13.5H14.9995M10.4995 5.25L12.6208 7.37132M14.6369 2.80959L15.0612 3.23385C15.3582 3.53086 15.5067 3.67937 15.5624 3.85062C15.6113 4.00125 15.6113 4.16351 15.5624 4.31414C15.5067 4.48539 15.3582 4.6339 15.0612 4.93091L4.89356 15.0985C4.59655 15.3955 4.44804 15.5441 4.2768 15.5997C4.12617 15.6486 3.9639 15.6486 3.81327 15.5997C3.64203 15.5441 3.49352 15.3955 3.19651 15.0985L2.77224 14.6743C2.47523 14.3773 2.32672 14.2288 2.27108 14.0575C2.22214 13.9069 2.22214 13.7446 2.27108 13.594C2.32672 13.4227 2.47523 13.2742 2.77224 12.9772L12.9399 2.80959C13.2369 2.51258 13.3854 2.36407 13.5566 2.30843C13.7073 2.25948 13.8695 2.25948 14.0202 2.30843C14.1914 2.36407 14.3399 2.51258 14.6369 2.80959Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),vj=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",strokeWidth:"1.2",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M10 4V20M14 4V20M4 8C4 8.92997 4 9.39496 4.10222 9.77646C4.37962 10.8117 5.18827 11.6204 6.22354 11.8978C6.60504 12 7.07003 12 8 12H16C16.93 12 17.395 12 17.7765 11.8978C18.8117 11.6204 19.6204 10.8117 19.8978 9.77646C20 9.39496 20 8.92997 20 8M4 8C4 7.07003 4 6.60504 4.10222 6.22354C4.37962 5.18827 5.18827 4.37962 6.22354 4.10222C6.60504 4 7.07003 4 8 4H16C16.93 4 17.395 4 17.7765 4.10222C18.8117 4.37962 19.6204 5.18827 19.8978 6.22354C20 6.60504 20 7.07003 20 8M4 8V16C4 16.93 4 17.395 4.10222 17.7765C4.37962 18.8117 5.18827 19.6204 6.22354 19.8978C6.60504 20 7.07003 20 8 20H16C16.93 20 17.395 20 17.7765 19.8978C18.8117 19.6204 19.6204 18.8117 19.8978 17.7765C20 17.395 20 16.93 20 16V8M10 16H8C7.07003 16 6.60504 16 6.22354 15.8978C5.18827 15.6204 4.37962 14.8117 4.10222 13.7765C4 13.395 4 12.93 4 12M14 16H16C16.93 16 17.395 16 17.7765 15.8978C18.8117 15.6204 19.6204 14.8117 19.8978 13.7765C20 13.395 20 12.93 20 12M7 8H7.01M17 8H17.01",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round"})}),yj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M6 9.25L7.84615 11.25L12 6.75M15.75 9C15.75 12.7279 12.7279 15.75 9 15.75C5.27208 15.75 2.25 12.7279 2.25 9C2.25 5.27208 5.27208 2.25 9 2.25C12.7279 2.25 15.75 5.27208 15.75 9Z",stroke:"#00C39A",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),bj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M4.5 6.75L9 11.25L13.5 6.75",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),wj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M7 14L11.5 9.5L7 5",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),xj=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M12 10V14M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12ZM17 12C17 14.7614 14.7614 17 12 17C9.23858 17 7 14.7614 7 12C7 9.23858 9.23858 7 12 7C14.7614 7 17 9.23858 17 12Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),_j=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none","data-testid":"contact-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M3.75 15.75C3.75 12.8505 6.10051 10.5 9 10.5C11.8995 10.5 14.25 12.8505 14.25 15.75M12 5.25C12 6.90685 10.6569 8.25 9 8.25C7.34315 8.25 6 6.90685 6 5.25C6 3.59315 7.34315 2.25 9 2.25C10.6569 2.25 12 3.59315 12 5.25Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Sj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M7.5 12.75L6 11.25L7.5 9.75M10.5 9.75L12 11.25L10.5 12.75M9.75 2.25H6.15C5.30992 2.25 4.88988 2.25 4.56901 2.41349C4.28677 2.5573 4.0573 2.78677 3.91349 3.06901C3.75 3.38988 3.75 3.80992 3.75 4.65V13.35C3.75 14.1901 3.75 14.6101 3.91349 14.931C4.0573 15.2132 4.28677 15.4427 4.56901 15.5865C4.88988 15.75 5.30992 15.75 6.15 15.75H11.85C12.6901 15.75 13.1101 15.75 13.431 15.5865C13.7132 15.4427 13.9427 15.2132 14.0865 14.931C14.25 14.6101 14.25 14.1901 14.25 13.35V6.75M9.75 2.25L14.25 6.75M9.75 2.25V6C9.75 6.41421 10.0858 6.75 10.5 6.75H14.25",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),kj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M13.773 13.773C14.9945 12.5515 15.75 10.864 15.75 9C15.75 5.27208 12.7279 2.25 9 2.25C7.13604 2.25 5.44854 3.00552 4.22703 4.22703M13.773 13.773C12.5515 14.9945 10.864 15.75 9 15.75C5.27208 15.75 2.25 12.7279 2.25 9C2.25 7.13604 3.00552 5.44854 4.22703 4.22703M13.773 13.773L4.22703 4.22703",stroke:"#FB4F57",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Ej=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M3.125 9H20.875M12 3L8 9L12 20.6667L16 9L12 3ZM12.64 20.1467L20.64 9.48C20.7691 9.30787 20.8336 9.22181 20.8585 9.12728C20.8805 9.04385 20.8805 8.95615 20.8585 8.87272C20.8336 8.77819 20.7691 8.69213 20.64 8.52L16.74 3.32C16.652 3.20267 16.608 3.144 16.5522 3.10169C16.5028 3.06421 16.4469 3.03625 16.3873 3.01922C16.32 3 16.2467 3 16.1 3H7.9C7.75333 3 7.68 3 7.61269 3.01922C7.55308 3.03625 7.49715 3.06421 7.44776 3.10169C7.392 3.144 7.348 3.20267 7.26 3.32L3.36 8.52C3.2309 8.69213 3.16635 8.77819 3.14147 8.87271C3.11951 8.95615 3.11951 9.04385 3.14147 9.12728C3.16635 9.2218 3.2309 9.30787 3.36 9.48L11.36 20.1467C11.5771 20.4362 11.6857 20.5809 11.8188 20.6327C11.9353 20.678 12.0647 20.678 12.1812 20.6327C12.3143 20.5809 12.4229 20.4362 12.64 20.1467Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Aj=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M9 17H13M9 13H13M9 9H10M17 18V21M17 15H17.01M13 3H8.2C7.0799 3 6.51984 3 6.09202 3.21799C5.71569 3.40973 5.40973 3.71569 5.21799 4.09202C5 4.51984 5 5.0799 5 6.2V17.8C5 18.9201 5 19.4802 5.21799 19.908C5.40973 20.2843 5.71569 20.5903 6.09202 20.782C6.51984 21 7.0799 21 8.2 21H13M13 3L19 9M13 3V7.4C13 7.96005 13 8.24008 13.109 8.45399C13.2049 8.64215 13.3578 8.79513 13.546 8.89101C13.7599 9 14.0399 9 14.6 9H19M19 9V11.5",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Pj=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M4 14L9 19L20 8M6 8.88889L9.07692 12L16 5",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Oj=e=>(0,ln.jsx)(LA,{width:"16px",height:"16px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 16 16",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M5 7.25L8 10.25M8 10.25L11 7.25M8 10.25V1.25M14.75 7.25V12.3494C14.75 13.1895 14.75 13.6095 14.5865 13.9304C14.4427 14.2126 14.2132 14.4421 13.931 14.5859C13.6101 14.7494 13.1901 14.7494 12.35 14.7494H3.65C2.80992 14.7494 2.38988 14.7494 2.06901 14.5859C1.78677 14.4421 1.5573 14.2126 1.41349 13.9304C1.25 13.6095 1.25 13.1895 1.25 12.3494V7.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Tj=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M8.5 21H4C4 17.134 7.13401 14 11 14C11.1681 14 11.3348 14.0059 11.5 14.0176M15 7C15 9.20914 13.2091 11 11 11C8.79086 11 7 9.20914 7 7C7 4.79086 8.79086 3 11 3C13.2091 3 15 4.79086 15 7ZM12.5898 21L14.6148 20.595C14.7914 20.5597 14.8797 20.542 14.962 20.5097C15.0351 20.4811 15.1045 20.4439 15.1689 20.399C15.2414 20.3484 15.3051 20.2848 15.4324 20.1574L19.5898 16C20.1421 15.4477 20.1421 14.5523 19.5898 14C19.0376 13.4477 18.1421 13.4477 17.5898 14L13.4324 18.1574C13.3051 18.2848 13.2414 18.3484 13.1908 18.421C13.1459 18.4853 13.1088 18.5548 13.0801 18.6279C13.0478 18.7102 13.0302 18.7985 12.9948 18.975L12.5898 21Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Cj=e=>(0,ln.jsx)(LA,{width:"12px",height:"12px",fill:"none",stroke:EP.orange,viewBox:"0 0 12 12",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M6 3.66667V6.58333M6 8.33333H6.00583M11.25 6C11.25 8.89949 8.89949 11.25 6 11.25C3.1005 11.25 0.75 8.89949 0.75 6C0.75 3.1005 3.1005 0.75 6 0.75C8.89949 0.75 11.25 3.1005 11.25 6Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),jj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M15 3V15M3 9H12M12 9L9 6M12 9L9 12",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Rj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M15 3L9 9M15 3V6.375M15 3H11.625M14.25 9.375V12.6C14.25 13.4401 14.25 13.8601 14.0865 14.181C13.9427 14.4632 13.7132 14.6927 13.431 14.8365C13.1101 15 12.6901 15 11.85 15H5.4C4.55992 15 4.13988 15 3.81901 14.8365C3.53677 14.6927 3.3073 14.4632 3.16349 14.181C3 13.8601 3 13.4401 3 12.6V6.15C3 5.30992 3 4.88988 3.16349 4.56901C3.3073 4.28677 3.53677 4.0573 3.81901 3.91349C4.13988 3.75 4.55992 3.75 5.4 3.75H8.625",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Ij=e=>(0,ln.jsxs)(LA,{width:"16px",height:"12px",fill:"none",viewBox:"0 0 16 12",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,ln.jsx)("path",{d:"M10.2501 6C10.2501 7.24264 9.2427 8.25 8.00006 8.25C6.75742 8.25 5.75006 7.24264 5.75006 6C5.75006 4.75736 6.75742 3.75 8.00006 3.75C9.2427 3.75 10.2501 4.75736 10.2501 6Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,ln.jsx)("path",{d:"M8.00039 0.75C4.64217 0.75 1.79946 2.95716 0.84375 5.99997C1.79944 9.04282 4.64217 11.25 8.00041 11.25C11.3586 11.25 14.2013 9.04284 15.157 6.00003C14.2014 2.95719 11.3586 0.75 8.00039 0.75Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})]}),Mj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M2.25024 2.25L15.7502 15.75M7.38345 7.43523C6.99147 7.84016 6.75024 8.39191 6.75024 9C6.75024 10.2426 7.7576 11.25 9.00024 11.25C9.6171 11.25 10.176 11.0018 10.5824 10.5997M4.87524 4.98536C3.45076 5.92525 2.36577 7.33796 1.84375 8.99997C2.79944 12.0428 5.64217 14.25 9.00041 14.25C10.4921 14.25 11.882 13.8145 13.0501 13.0638M8.25024 3.78705C8.49697 3.76254 8.74722 3.75 9.00039 3.75C12.3586 3.75 15.2014 5.95719 16.157 9.00003C15.9465 9.67048 15.6443 10.3004 15.2651 10.875",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Lj=e=>(0,ln.jsx)(LA,{width:"30px",height:"15px",fill:EP.gray[450],viewBox:"1 1 30 15",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M1.2429 13V4.27273H7.02131V5.79403H3.08807V7.87358H6.63778V9.39489H3.08807V13H1.2429ZM8.67685 13H6.69957L9.71236 4.27273H12.0902L15.0987 13H13.1214L10.9354 6.26705H10.8672L8.67685 13ZM8.55327 9.5696H13.2237V11.0099H8.55327V9.5696ZM19.4847 4.27273V13H17.6396V6.02415H17.5884L15.5898 7.27699V5.64062L17.7504 4.27273H19.4847ZM22.1683 13.1108C21.8871 13.1108 21.6456 13.0114 21.4439 12.8125C21.245 12.6108 21.1456 12.3693 21.1456 12.0881C21.1456 11.8097 21.245 11.571 21.4439 11.3722C21.6456 11.1733 21.8871 11.0739 22.1683 11.0739C22.4411 11.0739 22.6797 11.1733 22.8842 11.3722C23.0888 11.571 23.1911 11.8097 23.1911 12.0881C23.1911 12.2756 23.1428 12.4474 23.0462 12.6037C22.9524 12.7571 22.8288 12.8807 22.6754 12.9744C22.522 13.0653 22.353 13.1108 22.1683 13.1108ZM24.6644 13V11.6705L27.771 8.79403C28.0352 8.53835 28.2567 8.30824 28.4357 8.10369C28.6175 7.89915 28.7553 7.69886 28.8491 7.50284C28.9428 7.30398 28.9897 7.08949 28.9897 6.85938C28.9897 6.60369 28.9315 6.38352 28.815 6.19886C28.6985 6.01136 28.5394 5.8679 28.3377 5.76847C28.136 5.66619 27.9073 5.61506 27.6516 5.61506C27.3846 5.61506 27.1516 5.66903 26.9528 5.77699C26.7539 5.88494 26.6005 6.03977 26.4925 6.24148C26.3846 6.44318 26.3306 6.68324 26.3306 6.96165H24.5792C24.5792 6.39062 24.7085 5.89489 24.967 5.47443C25.2255 5.05398 25.5877 4.72869 26.0536 4.49858C26.5195 4.26847 27.0565 4.15341 27.6644 4.15341C28.2894 4.15341 28.8335 4.2642 29.2965 4.4858C29.7624 4.70455 30.1246 5.00852 30.3832 5.39773C30.6417 5.78693 30.771 6.23295 30.771 6.7358C30.771 7.06534 30.7056 7.39062 30.5749 7.71165C30.4471 8.03267 30.2184 8.3892 29.8888 8.78125C29.5593 9.17045 29.0948 9.63778 28.4954 10.1832L27.2212 11.4318V11.4915H30.886V13H24.6644Z"})}),Nj=e=>(0,ln.jsx)(LA,{width:"23px",height:"18px",fill:EP.gray[450],viewBox:"0 0 23 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M1.0261 13V4.27273H6.80451V5.79403H2.87127V7.87358H6.42099V9.39489H2.87127V13H1.0261ZM8.46005 13H6.48278L9.49556 4.27273H11.8734L14.8819 13H12.9047L10.7186 6.26705H10.6504L8.46005 13ZM8.33647 9.5696H13.0069V11.0099H8.33647V9.5696ZM15.8812 13V11.6705L18.9877 8.79403C19.252 8.53835 19.4735 8.30824 19.6525 8.10369C19.8343 7.89915 19.9721 7.69886 20.0659 7.50284C20.1596 7.30398 20.2065 7.08949 20.2065 6.85938C20.2065 6.60369 20.1483 6.38352 20.0318 6.19886C19.9153 6.01136 19.7562 5.8679 19.5545 5.76847C19.3528 5.66619 19.1241 5.61506 18.8684 5.61506C18.6014 5.61506 18.3684 5.66903 18.1696 5.77699C17.9707 5.88494 17.8173 6.03977 17.7093 6.24148C17.6014 6.44318 17.5474 6.68324 17.5474 6.96165H15.796C15.796 6.39062 15.9252 5.89489 16.1838 5.47443C16.4423 5.05398 16.8045 4.72869 17.2704 4.49858C17.7363 4.26847 18.2733 4.15341 18.8812 4.15341C19.5062 4.15341 20.0502 4.2642 20.5133 4.4858C20.9792 4.70455 21.3414 5.00852 21.6 5.39773C21.8585 5.78693 21.9877 6.23295 21.9877 6.7358C21.9877 7.06534 21.9224 7.39062 21.7917 7.71165C21.6639 8.03267 21.4352 8.3892 21.1056 8.78125C20.7761 9.17045 20.3116 9.63778 19.7122 10.1832L18.438 11.4318V11.4915H22.1028V13H15.8812Z"})}),Dj=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M8 10.5H16M8 14.5H11M21.0039 12C21.0039 16.9706 16.9745 21 12.0039 21C9.9675 21 3.00463 21 3.00463 21C3.00463 21 4.56382 17.2561 3.93982 16.0008C3.34076 14.7956 3.00391 13.4372 3.00391 12C3.00391 7.02944 7.03334 3 12.0039 3C16.9745 3 21.0039 7.02944 21.0039 12Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),zj=e=>(0,ln.jsx)(LA,{width:"19px",height:"19px",fill:"none",stroke:EP.gray[400],viewBox:"0 0 19 19",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M15.7842 10.2916C15.8165 10.0323 15.8332 9.76807 15.8332 9.49996C15.8332 6.00216 12.9976 3.16663 9.49984 3.16663C7.52021 3.16663 5.75273 4.07488 4.59135 5.49742M3.2155 8.70829C3.18316 8.96764 3.1665 9.23185 3.1665 9.49996C3.1665 12.9978 6.00203 15.8333 9.49984 15.8333C11.3914 15.8333 13.0893 15.004 14.2498 13.6892M11.8748 13.4583H14.2498V13.6892M4.59135 3.16663V5.49742M4.59135 5.49742V5.54157L6.96635 5.54163M14.2498 15.8333V13.6892",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Bj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M9 8.25V12.75M9 12.75L7.5 11.25M9 12.75L10.5 11.25M9.75 2.25H6.15C5.30992 2.25 4.88988 2.25 4.56901 2.41349C4.28677 2.5573 4.0573 2.78677 3.91349 3.06901C3.75 3.38988 3.75 3.80992 3.75 4.65V13.35C3.75 14.1901 3.75 14.6101 3.91349 14.931C4.0573 15.2132 4.28677 15.4427 4.56901 15.5865C4.88988 15.75 5.30992 15.75 6.15 15.75H11.85C12.6901 15.75 13.1101 15.75 13.431 15.5865C13.7132 15.4427 13.9427 15.2132 14.0865 14.931C14.25 14.6101 14.25 14.1901 14.25 13.35V6.75M9.75 2.25L14.25 6.75M9.75 2.25V5.55C9.75 5.97004 9.75 6.18006 9.83175 6.34049C9.90365 6.48161 10.0184 6.59635 10.1595 6.66825C10.3199 6.75 10.53 6.75 10.95 6.75H14.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Uj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M11.25 2.25V4.8C11.25 5.22004 11.25 5.43006 11.3317 5.59049C11.4037 5.73161 11.5184 5.84635 11.6595 5.91825C11.8199 6 12.03 6 12.45 6H15M7.5 6H4.5C3.67157 6 3 6.67157 3 7.5V14.25C3 15.0784 3.67157 15.75 4.5 15.75H9C9.82843 15.75 10.5 15.0784 10.5 14.25V12M12 2.25H9.9C9.05992 2.25 8.63988 2.25 8.31901 2.41349C8.03677 2.5573 7.8073 2.78677 7.66349 3.06901C7.5 3.38988 7.5 3.80992 7.5 4.65V9.6C7.5 10.4401 7.5 10.8601 7.66349 11.181C7.8073 11.4632 8.03677 11.6927 8.31901 11.8365C8.63988 12 9.05992 12 9.9 12H12.6C13.4401 12 13.8601 12 14.181 11.8365C14.4632 11.6927 14.6927 11.4632 14.8365 11.181C15 10.8601 15 10.4401 15 9.6V5.25L12 2.25Z",strokeLinejoin:"round",strokeWidth:"1.2"})}),Fj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:"black",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M2.95314 5.997C4.05824 3.77605 6.35091 2.25 9 2.25C12.4718 2.25 15.3314 4.87105 15.708 8.24231M2.2912 9.74998C2.66427 13.125 5.52558 15.75 9 15.75C11.6496 15.75 13.9427 14.2234 15.0475 12.0017M2.25 3V6.375H5.625M15.75 15.375V12H12.375M8.625 6.75L7.5 9H10.5L9.375 11.25",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),$j=e=>(0,ln.jsxs)(LA,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:[(0,ln.jsx)("path",{d:"M15 12C15 13.6569 13.6569 15 12 15C10.3431 15 9 13.6569 9 12C9 10.3431 10.3431 9 12 9C13.6569 9 15 10.3431 15 12Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"}),(0,ln.jsx)("path",{d:"M12.9046 3.06005C12.6988 3 12.4659 3 12 3C11.5341 3 11.3012 3 11.0954 3.06005C10.7942 3.14794 10.5281 3.32808 10.3346 3.57511C10.2024 3.74388 10.1159 3.96016 9.94291 4.39272C9.69419 5.01452 9.00393 5.33471 8.36857 5.123L7.79779 4.93281C7.3929 4.79785 7.19045 4.73036 6.99196 4.7188C6.70039 4.70181 6.4102 4.77032 6.15701 4.9159C5.98465 5.01501 5.83376 5.16591 5.53197 5.4677C5.21122 5.78845 5.05084 5.94882 4.94896 6.13189C4.79927 6.40084 4.73595 6.70934 4.76759 7.01551C4.78912 7.2239 4.87335 7.43449 5.04182 7.85566C5.30565 8.51523 5.05184 9.26878 4.44272 9.63433L4.16521 9.80087C3.74031 10.0558 3.52786 10.1833 3.37354 10.3588C3.23698 10.5141 3.13401 10.696 3.07109 10.893C3 11.1156 3 11.3658 3 11.8663C3 12.4589 3 12.7551 3.09462 13.0088C3.17823 13.2329 3.31422 13.4337 3.49124 13.5946C3.69158 13.7766 3.96395 13.8856 4.50866 14.1035C5.06534 14.3261 5.35196 14.9441 5.16236 15.5129L4.94721 16.1584C4.79819 16.6054 4.72367 16.829 4.7169 17.0486C4.70875 17.3127 4.77049 17.5742 4.89587 17.8067C5.00015 18.0002 5.16678 18.1668 5.5 18.5C5.83323 18.8332 5.99985 18.9998 6.19325 19.1041C6.4258 19.2295 6.68733 19.2913 6.9514 19.2831C7.17102 19.2763 7.39456 19.2018 7.84164 19.0528L8.36862 18.8771C9.00393 18.6654 9.6942 18.9855 9.94291 19.6073C10.1159 20.0398 10.2024 20.2561 10.3346 20.4249C10.5281 20.6719 10.7942 20.8521 11.0954 20.94C11.3012 21 11.5341 21 12 21C12.4659 21 12.6988 21 12.9046 20.94C13.2058 20.8521 13.4719 20.6719 13.6654 20.4249C13.7976 20.2561 13.8841 20.0398 14.0571 19.6073C14.3058 18.9855 14.9961 18.6654 15.6313 18.8773L16.1579 19.0529C16.605 19.2019 16.8286 19.2764 17.0482 19.2832C17.3123 19.2913 17.5738 19.2296 17.8063 19.1042C17.9997 18.9999 18.1664 18.8333 18.4996 18.5001C18.8328 18.1669 18.9994 18.0002 19.1037 17.8068C19.2291 17.5743 19.2908 17.3127 19.2827 17.0487C19.2759 16.8291 19.2014 16.6055 19.0524 16.1584L18.8374 15.5134C18.6477 14.9444 18.9344 14.3262 19.4913 14.1035C20.036 13.8856 20.3084 13.7766 20.5088 13.5946C20.6858 13.4337 20.8218 13.2329 20.9054 13.0088C21 12.7551 21 12.4589 21 11.8663C21 11.3658 21 11.1156 20.9289 10.893C20.866 10.696 20.763 10.5141 20.6265 10.3588C20.4721 10.1833 20.2597 10.0558 19.8348 9.80087L19.5569 9.63416C18.9478 9.26867 18.6939 8.51514 18.9578 7.85558C19.1262 7.43443 19.2105 7.22383 19.232 7.01543C19.2636 6.70926 19.2003 6.40077 19.0506 6.13181C18.9487 5.94875 18.7884 5.78837 18.4676 5.46762C18.1658 5.16584 18.0149 5.01494 17.8426 4.91583C17.5894 4.77024 17.2992 4.70174 17.0076 4.71872C16.8091 4.73029 16.6067 4.79777 16.2018 4.93273L15.6314 5.12287C14.9961 5.33464 14.3058 5.0145 14.0571 4.39272C13.8841 3.96016 13.7976 3.74388 13.6654 3.57511C13.4719 3.32808 13.2058 3.14794 12.9046 3.06005Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})]}),Hj=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M18.3795 5.65166L14.1055 9.86303M9.89445 14.137L5.63994 18.3679M5.63408 5.63799L9.89445 9.86303M14.1056 14.137L18.364 18.364M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12ZM15 12C15 13.6569 13.6569 15 12 15C10.3431 15 9 13.6569 9 12C9 10.3431 10.3431 9 12 9C13.6569 9 15 10.3431 15 12Z",stroke:EP.gray[450],strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Vj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M15 2.25H3M15 15.75H3M3.75 2.25C3.75 4.13267 4.65921 5.89944 6.1912 6.99371L11.8088 11.0063C13.3408 12.1006 14.25 13.8673 14.25 15.75M14.25 2.25C14.25 4.13267 13.3408 5.89944 11.8088 6.99371L6.1912 11.0063C4.65921 12.1006 3.75 13.8673 3.75 15.75",stroke:"#FB4F57",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),qj=e=>(0,ln.jsx)(sR,{css:{rotate:"180deg"},...e}),Kj=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none","data-testid":"key-icon",strokeWidth:"1.2",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M9.24092 8.01389L3 14.25L4.5 15.75M5.25 12L6.75 13.5M15 5.625C15 7.48896 13.489 9 11.625 9C9.76104 9 8.25 7.48896 8.25 5.625C8.25 3.76104 9.76104 2.25 11.625 2.25C13.489 2.25 15 3.76104 15 5.625Z",strokeLinecap:"round",strokeLinejoin:"round"})});var Wj={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},Gj=n.createContext&&n.createContext(Wj),Zj=function(){return Zj=Object.assign||function(e){for(var t,r=1,n=arguments.length;r(0,ln.jsx)(LA,{as:eR,width:"18px",height:"18px","data-testid":"ledger-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e}),rR=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M9.16586 17.6508C8.9261 17.8747 8.74055 18.0245 8.55093 18.134C7.62273 18.6699 6.47914 18.6699 5.55093 18.134C5.20889 17.9365 4.88009 17.6077 4.22251 16.9501C3.56492 16.2925 3.23612 15.9637 3.03864 15.6217C2.50274 14.6935 2.50274 13.5499 3.03864 12.6217C3.23612 12.2797 3.56492 11.9509 4.2225 11.2933L7.05093 8.46484C7.70852 7.80725 8.03732 7.47846 8.37936 7.28098C9.30756 6.74508 10.4512 6.74508 11.3794 7.28098C11.7214 7.47846 12.0502 7.80725 12.7078 8.46484C13.3654 9.12243 13.6942 9.45123 13.8916 9.79327C14.4275 10.7215 14.4275 11.8651 13.8916 12.7933C13.7822 12.9829 13.6323 13.1684 13.4085 13.4082M10.5929 10.5926C10.369 10.8323 10.2192 11.0179 10.1097 11.2075C9.57381 12.1357 9.57381 13.2793 10.1097 14.2075C10.3072 14.5495 10.636 14.8783 11.2936 15.5359C11.9512 16.1935 12.28 16.5223 12.622 16.7198C13.5502 17.2557 14.6938 17.2557 15.622 16.7198C15.964 16.5223 16.2928 16.1935 16.9504 15.5359L19.7789 12.7075C20.4364 12.0499 20.7652 11.7211 20.9627 11.3791C21.4986 10.4509 21.4986 9.30726 20.9627 8.37906C20.7652 8.03701 20.4364 7.70822 19.7789 7.05063C19.1213 6.39304 18.7925 6.06425 18.4504 5.86677C17.5222 5.33087 16.3786 5.33087 15.4504 5.86677C15.2608 5.97625 15.0753 6.12608 14.8355 6.34992",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),nR=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M12 14.5V16.5M7 10.0288C7.47142 10 8.05259 10 8.8 10H15.2C15.9474 10 16.5286 10 17 10.0288M7 10.0288C6.41168 10.0647 5.99429 10.1455 5.63803 10.327C5.07354 10.6146 4.6146 11.0735 4.32698 11.638C4 12.2798 4 13.1198 4 14.8V16.2C4 17.8802 4 18.7202 4.32698 19.362C4.6146 19.9265 5.07354 20.3854 5.63803 20.673C6.27976 21 7.11984 21 8.8 21H15.2C16.8802 21 17.7202 21 18.362 20.673C18.9265 20.3854 19.3854 19.9265 19.673 19.362C20 18.7202 20 17.8802 20 16.2V14.8C20 13.1198 20 12.2798 19.673 11.638C19.3854 11.0735 18.9265 10.6146 18.362 10.327C18.0057 10.1455 17.5883 10.0647 17 10.0288M7 10.0288V8C7 5.23858 9.23858 3 12 3C14.7614 3 17 5.23858 17 8V10.0288",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),iR=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:"black",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M12.182 5.81859C13.9393 7.57595 13.9393 10.4252 12.182 12.1825M5.81802 12.1825C4.06066 10.4252 4.06066 7.57592 5.81802 5.81856M3.6967 14.3039C0.767767 11.3749 0.767767 6.6262 3.6967 3.69727M14.3033 3.6973C17.2322 6.62623 17.2322 11.375 14.3033 14.3039M10.5 9.00057C10.5 9.82899 9.82843 10.5006 9 10.5006C8.17157 10.5006 7.5 9.82899 7.5 9.00057C7.5 8.17214 8.17157 7.50057 9 7.50057C9.82843 7.50057 10.5 8.17214 10.5 9.00057Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),oR=({fishColor:e,...t})=>(0,ln.jsxs)(LA,{width:"38px",height:"38px",fill:"none",viewBox:"0 0 38 38",xmlns:"http://www.w3.org/2000/svg",...t,children:[(0,ln.jsx)("path",{d:"M34.9985 26.2751C34.6599 26.8629 34.2436 27.4106 33.7512 27.9032C32.2815 29.3727 30.3277 30.1819 28.2496 30.1819H24.8477V34.9996H26.8032H28.2497C30.0524 34.9996 31.7472 34.2976 33.022 33.0229C34.2967 31.7481 34.9986 30.0533 34.9985 28.2507V26.2751Z",fill:"black"}),(0,ln.jsx)("path",{d:"M34.9989 20.9441C34.6603 21.5318 34.2439 22.0796 33.7514 22.572C32.2819 24.0416 30.328 24.8509 28.2499 24.8509H18.9983C17.8104 24.8511 16.8477 25.814 16.8477 27.0019C16.8477 28.1898 17.8104 29.1528 18.9983 29.153H28.25C30.0526 29.153 31.7474 28.4511 33.0222 27.1763C34.2965 25.902 34.9986 24.2076 34.9989 22.4054V20.9441ZM18.9988 27.8361C18.5381 27.8361 18.1645 27.4626 18.1645 27.0018C18.1645 26.5412 18.5381 26.1675 18.9988 26.1675C19.4596 26.1675 19.8331 26.5412 19.8331 27.0018C19.8331 27.4626 19.4596 27.8361 18.9988 27.8361Z",fill:"black"}),(0,ln.jsx)("path",{d:"M35 9.74895C35 6.02751 31.9724 3 28.2509 3H9.74908C6.02761 3 3 6.02751 3 9.74895V28.2511C3 31.9725 6.02761 35 9.74899 35H23.8176V30.1824H18.9995C17.2418 30.1824 15.8171 28.7576 15.8171 27.0001C15.8171 25.2426 17.2418 23.8179 18.9995 23.8179H23.8176V18.9998H9.74899C6.5911 18.9998 4.03113 16.4402 4.03113 13.2824V9.74905C4.03113 6.59127 6.5911 4.03131 9.74899 4.03131H28.2508C31.4087 4.03131 33.9686 6.59127 33.9686 9.74905V13.2824C33.9686 16.4403 31.4089 19.0001 28.251 19.0001L24.8491 18.9998V23.8179H28.2511C30.0539 23.8179 31.7487 23.1159 33.0233 21.8411C34.2977 20.5668 34.9997 18.8725 35 17.0703V9.74895Z",fill:"black"}),(0,ln.jsx)("path",{d:"M28.251 4.03174C31.4088 4.03174 33.9687 6.59167 33.9687 9.74952V13.2828C33.9687 16.4406 31.4089 19.0005 28.2511 19.0005L9.74908 19.0003C6.59124 19.0003 4.03125 16.4406 4.03125 13.2829V9.74954C4.03125 6.59167 6.5912 4.03174 9.74908 4.03174H28.251Z",fill:"white"}),(0,ln.jsx)("path",{d:"M28.2511 6.73267C29.611 6.73267 30.7641 7.6364 31.1394 8.87525C31.1926 9.05118 31.0527 9.22558 30.869 9.21814C28.2867 9.11348 25.877 8.32896 23.8154 7.038C23.6751 6.95014 23.739 6.73267 23.9045 6.73267H28.2511Z",fill:e}),(0,ln.jsx)("path",{d:"M21.9973 7.02488C24.4283 8.9081 27.4326 10.0842 30.7 10.2428C31.0172 10.2581 31.2679 10.5166 31.2679 10.8342V12.8702C31.2674 12.9124 31.2661 13.0446 31.2638 13.1857C31.2603 13.4148 31.069 13.5949 30.8401 13.5876C25.3913 13.4117 20.5215 10.9067 17.1937 7.03888C17.0905 6.91878 17.175 6.73267 17.3334 6.73267H21.1443C21.4533 6.73267 21.753 6.83569 21.9973 7.02488Z",fill:e}),(0,ln.jsx)("path",{d:"M15.9653 7.17305C19.4649 11.5395 24.7681 14.4013 30.735 14.6156C30.8376 14.6193 30.9004 14.7309 30.8481 14.8191C30.3219 15.7056 29.3544 16.3012 28.2505 16.3012H23.1255C22.9317 16.3012 22.7392 16.2646 22.5603 16.1899C18.0848 14.3242 14.3146 11.0926 11.7745 7.01866C11.6968 6.89417 11.7878 6.73267 11.9345 6.73267H15.0503C15.4065 6.73267 15.7426 6.89513 15.9653 7.17305Z",fill:e}),(0,ln.jsx)("path",{d:"M9.75058 6.73267H10.1145C10.294 6.73267 10.4589 6.82889 10.5496 6.98379C12.776 10.7844 16.0081 13.9276 19.8791 16.0439C20.0039 16.1122 19.9556 16.3012 19.8134 16.3012H15.1194C14.5651 16.3012 14.0261 16.1087 13.6043 15.7491C11.1433 13.6507 9.05479 11.1267 7.45371 8.29236C7.34983 8.10846 7.3762 7.87733 7.51835 7.72112C8.07107 7.11383 8.86658 6.73267 9.75058 6.73267Z",fill:e}),(0,ln.jsx)("path",{d:"M12.3071 15.9829C12.4313 16.0951 12.3514 16.3013 12.184 16.3013H9.71437C8.06547 16.2829 6.73047 14.9363 6.73047 13.2836V9.7504L6.73065 9.54576C6.73077 9.42446 6.89048 9.37962 6.95305 9.48354C8.41152 11.9061 10.2194 14.096 12.3071 15.9829Z",fill:e})]}),aR=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M12 8H12.01M12 11V16M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),sR=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],"data-testid":"outgoing-arrow-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M5.25 12.75L12.75 5.25M12.75 5.25H6M12.75 5.25V12",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),cR=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M11.3348 4.66483L13.2208 6.55082M3 15L3.03164 14.7785C3.1436 13.9948 3.19958 13.6029 3.32692 13.2371C3.43992 12.9124 3.59428 12.6037 3.78619 12.3185C4.00247 11.9971 4.28237 11.7172 4.84218 11.1574L12.609 3.3906C13.1298 2.8698 13.9742 2.8698 14.495 3.3906C15.0158 3.9114 15.0158 4.75578 14.495 5.27658L6.58565 13.1859C6.07779 13.6938 5.82386 13.9477 5.53462 14.1497C5.27789 14.3289 5.001 14.4774 4.70965 14.5921C4.3814 14.7213 4.02937 14.7923 3.32535 14.9344L3 15Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),lR=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[300],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M4 12H20M12 4V20",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),uR=e=>(0,ln.jsx)(LA,{width:"18",height:"18",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M3 9C3 12.3137 5.68629 15 9 15C12.3137 15 15 12.3137 15 9C15 5.68629 12.3137 3 9 3C7.20796 3 5.59942 3.78563 4.5 5.03126C4.43696 5.10268 4.3756 5.17562 4.31597 5.25M9 6V9L10.875 10.875M4.31543 3.00293V5.25293H6.56543",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),dR=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],"data-testid":"rotate-icon",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M12.5 18.5C17.1944 18.5 21 14.6944 21 10C21 5.30558 17.1944 1.5 12.5 1.5C7.80558 1.5 4 5.30558 4 10C4 11.5433 4.41128 12.9905 5.13022 14.238M1.5 13L5.13022 14.238M6.82531 10.3832L5.47107 14.3542L5.13022 14.238",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),hR=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M16 3L8 21",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),fR=e=>(0,ln.jsx)(LA,{width:"32px",height:"32px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 32 32",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M16 7.33333C16 9.17428 14.5076 10.6667 12.6667 10.6667C10.8257 10.6667 9.33333 9.17428 9.33333 7.33333M16 7.33333C16 5.49238 14.5076 4 12.6667 4C10.8257 4 9.33333 5.49238 9.33333 7.33333M16 7.33333H28M9.33333 7.33333H4M25.3333 16C25.3333 17.8409 23.8409 19.3333 22 19.3333C20.1591 19.3333 18.6667 17.8409 18.6667 16M25.3333 16C25.3333 14.1591 23.8409 12.6667 22 12.6667C20.1591 12.6667 18.6667 14.1591 18.6667 16M25.3333 16H28M18.6667 16H4M13.3333 24.6667C13.3333 26.5076 11.8409 28 10 28C8.15905 28 6.66667 26.5076 6.66667 24.6667M13.3333 24.6667C13.3333 22.8257 11.8409 21.3333 10 21.3333C8.15905 21.3333 6.66667 22.8257 6.66667 24.6667M13.3333 24.6667H28M6.66667 24.6667H4",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),pR=e=>(0,ln.jsx)(LA,{width:"28px",height:"28px",fill:"none",stroke:"transparent","data-testid":"social-icon",viewBox:"0 0 28 28",...e,children:(0,ln.jsx)("g",{id:"Group 40429",children:(0,ln.jsx)("g",{id:"Group 40428",children:(0,ln.jsxs)("g",{id:"Group 39769",children:[(0,ln.jsx)("path",{d:"M27.4398 14.3177C27.4398 13.325 27.3507 12.3705 27.1852 11.4541H14V16.8695H21.5344C21.2099 18.6194 20.2235 20.1021 18.7408 21.0949V24.6075H23.2653C25.9125 22.1703 27.4398 18.5813 27.4398 14.3177Z",fill:"#4285F4",clipRule:"evenodd",fillRule:"evenodd",id:"Shape"}),(0,ln.jsx)("path",{d:"M14.0009 28C17.7809 28 20.9499 26.7464 23.2663 24.6082L18.7418 21.0955C17.4882 21.9355 15.8846 22.4319 14.0009 22.4319C10.3546 22.4319 7.26832 19.9692 6.16743 16.6602H1.49023V20.2874C3.79383 24.8628 8.5283 28 14.0009 28Z",fill:"#34A853",clipRule:"evenodd",fillRule:"evenodd",id:"Shape_2"}),(0,ln.jsx)("path",{d:"M6.16627 16.66C5.88627 15.82 5.72718 14.9228 5.72718 14.0001C5.72718 13.0774 5.88627 12.1801 6.16627 11.3401V7.71289H1.48907C0.5409 9.60286 0 11.741 0 14.0001C0 16.2591 0.5409 18.3973 1.48907 20.2872L6.16627 16.66Z",fill:"#FBBC05",clipRule:"evenodd",fillRule:"evenodd",id:"Shape_3"}),(0,ln.jsx)("path",{d:"M14.0009 5.56809C16.0564 5.56809 17.9018 6.27445 19.3527 7.6617L23.3681 3.64631C20.9436 1.38725 17.7745 0 14.0009 0C8.5283 0 3.79383 3.13722 1.49023 7.7126L6.16743 11.3398C7.26832 8.03078 10.3546 5.56809 14.0009 5.56809Z",fill:"#EA4335",clipRule:"evenodd",fillRule:"evenodd",id:"Shape_4"})]})})})}),mR=e=>(0,ln.jsxs)(LA,{width:"30px",height:"30px",fill:"none","data-testid":"tez-icon",viewBox:"0 0 30 30",...e,children:[(0,ln.jsx)("rect",{width:"30",height:"30",fill:"white",rx:"4"}),(0,ln.jsx)("rect",{width:"30",height:"30",fill:"url(#pattern0)",rx:"4"}),(0,ln.jsxs)("defs",{children:[(0,ln.jsx)("pattern",{width:"1",height:"1",id:"pattern0",patternContentUnits:"objectBoundingBox",children:(0,ln.jsx)("use",{transform:"translate(0.1753 0.101557) scale(0.00532296)",xlinkHref:"#image0_2912_38337"})}),(0,ln.jsx)("image",{width:"122",height:"150",id:"image0_2912_38337",xlinkHref:"data:image/png;base64,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"})]})]});var gR=g((function(e,t){const{htmlWidth:r,htmlHeight:n,alt:i,...o}=e;return(0,ln.jsx)("img",{width:r,height:n,ref:t,alt:i,...o})}));gR.displayName="NativeImage";function vR(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}var yR=g((function(e,t){const{fallbackSrc:r,fallback:i,src:o,srcSet:a,align:s,fit:c,loading:l,ignoreFallback:u,crossOrigin:d,fallbackStrategy:h="beforeLoadOrError",referrerPolicy:f,...p}=e,m=null!=l||u||!(void 0!==r||void 0!==i),g=function(e){const{loading:t,src:r,srcSet:i,onLoad:o,onError:a,crossOrigin:s,sizes:c,ignoreFallback:l}=e,[u,d]=(0,n.useState)("pending");(0,n.useEffect)((()=>{d(r?"loading":"pending")}),[r]);const h=(0,n.useRef)(),f=(0,n.useCallback)((()=>{if(!r)return;p();const e=new Image;e.src=r,s&&(e.crossOrigin=s),i&&(e.srcset=i),c&&(e.sizes=c),t&&(e.loading=t),e.onload=e=>{p(),d("loaded"),null==o||o(e)},e.onerror=e=>{p(),d("failed"),null==a||a(e)},h.current=e}),[r,s,i,c,o,a,t]),p=()=>{h.current&&(h.current.onload=null,h.current.onerror=null,h.current=null)};return yh((()=>{if(!l)return"loading"===u&&f(),()=>{p()}}),[u,f,l]),l?"loaded":u}({...e,crossOrigin:d,ignoreFallback:m}),v=((e,t)=>"loaded"!==e&&"beforeLoadOrError"===t||"failed"===e&&"onError"===t)(g,h),y={ref:t,objectFit:c,objectPosition:s,...m?p:vR(p,["onError","onLoad"])};return v?i||(0,ln.jsx)(cn.img,{as:gR,className:"chakra-image__placeholder",src:r,...y}):(0,ln.jsx)(cn.img,{as:gR,src:o,srcSet:a,crossOrigin:d,loading:l,referrerPolicy:f,className:"chakra-image",...y})}));yR.displayName="Image";const bR=({contract:e,...t})=>{const r=`https://services.tzkt.io/v1/avatars/${e}`;return(0,ln.jsx)(yR,{fallbackSrc:"/static/media/coin-front.svg",src:r,...t})},wR=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M3 4.5H15M12 4.5L11.797 3.89105C11.6003 3.30094 11.502 3.00588 11.3195 2.78774C11.1584 2.5951 10.9516 2.44599 10.7179 2.35408C10.4532 2.25 10.1422 2.25 9.52018 2.25H8.47982C7.85779 2.25 7.54677 2.25 7.28213 2.35408C7.04844 2.44599 6.84156 2.5951 6.68047 2.78774C6.49804 3.00588 6.39969 3.30094 6.20298 3.89105L6 4.5M13.5 4.5V12.15C13.5 13.4101 13.5 14.0402 13.2548 14.5215C13.039 14.9448 12.6948 15.289 12.2715 15.5048C11.7902 15.75 11.1601 15.75 9.9 15.75H8.1C6.83988 15.75 6.20982 15.75 5.72852 15.5048C5.30516 15.289 4.96095 14.9448 4.74524 14.5215C4.5 14.0402 4.5 13.4101 4.5 12.15V4.5M10.5 7.5V12.75M7.5 7.5V12.75",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),xR=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none","data-testid":"unknown-contact-icon",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M3.16602 15.5625C3.16602 12.7435 5.45123 10.4583 8.27018 10.4583C8.51775 10.4583 8.7612 10.476 8.99935 10.51M13.3722 13.375C14.1014 12.6458 14.8305 12.3575 14.8305 11.5521C14.8305 10.7467 14.1776 10.0938 13.3722 10.0938C12.6927 10.0938 12.1217 10.5585 11.9598 11.1875M13.3722 15.5625H13.3795M11.1868 5.35417C11.1868 6.965 9.88101 8.27083 8.27018 8.27083C6.65935 8.27083 5.35352 6.965 5.35352 5.35417C5.35352 3.74334 6.65935 2.4375 8.27018 2.4375C9.88101 2.4375 11.1868 3.74334 11.1868 5.35417Z",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),_R=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M20.5 11L18.7396 7.60473C18.253 6.65855 18.0097 6.18545 17.6514 5.84012C17.3346 5.5347 16.9544 5.30272 16.5379 5.16065C16.067 5 15.535 5 14.471 5H9.52901C8.46503 5 7.93304 5 7.46209 5.16065C7.04558 5.30272 6.66542 5.5347 6.34859 5.84012C5.99034 6.18545 5.74703 6.65855 5.26042 7.60473L3.5 11M20.5 11C20.6981 11.3853 20.7658 11.5446 20.8357 11.747C20.8977 11.9267 20.9426 12.1119 20.9696 12.3002C21 12.5121 21 12.7287 21 13.162V14.2C21 15.8802 21 16.7202 20.673 17.362C20.3854 17.9265 19.9265 18.3854 19.362 18.673C18.7202 19 17.8802 19 16.2 19H7.8C6.11984 19 5.27976 19 4.63803 18.673C4.07354 18.3854 3.6146 17.9265 3.32698 17.362C3 16.7202 3 15.8802 3 14.2V13.162C3 12.7287 3 12.5121 3.03041 12.3002C3.05741 12.1119 3.10225 11.9267 3.16432 11.747C3.23421 11.5446 3.30186 11.3853 3.5 11M20.5 11H3.5M15 15H17",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),SR=()=>(0,ln.jsxs)(un,{position:"relative",alignItems:"center",justifyContent:"center","data-testid":"verified-icon",children:[(0,ln.jsx)(kR,{}),(0,ln.jsx)(un,{position:"absolute",alignItems:"center",justifyContent:"center",children:(0,ln.jsx)(ER,{})})]}),kR=e=>(0,ln.jsx)(LA,{width:"14px",height:"14px",fill:EP.gray[450],viewBox:"0 0 14 14",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M6.51019 0.479749C6.78233 0.213196 7.21767 0.213195 7.48981 0.479749L8.86158 1.82333C8.99061 1.94972 9.16351 2.02134 9.34412 2.02321L11.2642 2.04314C11.6451 2.04709 11.9529 2.35492 11.9569 2.73584L11.9768 4.65588C11.9787 4.83649 12.0503 5.00939 12.1767 5.13842L13.5203 6.51019C13.7868 6.78233 13.7868 7.21767 13.5203 7.48981L12.1767 8.86158C12.0503 8.99061 11.9787 9.16351 11.9768 9.34412L11.9569 11.2642C11.9529 11.6451 11.6451 11.9529 11.2642 11.9569L9.34412 11.9768C9.16351 11.9787 8.99061 12.0503 8.86158 12.1767L7.48981 13.5203C7.21767 13.7868 6.78233 13.7868 6.51019 13.5203L5.13842 12.1767C5.00939 12.0503 4.83649 11.9787 4.65588 11.9768L2.73584 11.9569C2.35492 11.9529 2.04709 11.6451 2.04314 11.2642L2.02321 9.34412C2.02134 9.16351 1.94972 8.99061 1.82333 8.86158L0.479749 7.48981C0.213196 7.21767 0.213195 6.78233 0.479749 6.51019L1.82333 5.13842C1.94972 5.00939 2.02134 4.83649 2.02321 4.65588L2.04314 2.73584C2.04709 2.35492 2.35492 2.04709 2.73584 2.04314L4.65588 2.02321C4.83649 2.02134 5.00939 1.94972 5.13842 1.82333L6.51019 0.479749Z",strokeLinecap:"square",strokeLinejoin:"round"})}),ER=e=>(0,ln.jsx)(LA,{width:"7px",height:"5px",fill:"none",stroke:"white",viewBox:"0 0 7 5",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M1.66699 2.19314L3.0281 3.55425L5.75033 0.832031",strokeLinecap:"square",strokeLinejoin:"round"})}),AR=e=>(0,ln.jsx)(LA,{width:"24px",height:"24px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M10 16V14.0003M10 14.0003V12M10 14.0003L12 14.0005M10 14.0003L8 14M21 12V11.2C21 10.0799 21 9.51984 20.782 9.09202C20.5903 8.7157 20.2843 8.40973 19.908 8.21799C19.4802 8 18.9201 8 17.8 8H3M21 12V16M21 12H19C17.8954 12 17 12.8954 17 14C17 15.1046 17.8954 16 19 16H21M21 16V16.8C21 17.9201 21 18.4802 20.782 18.908C20.5903 19.2843 20.2843 19.5903 19.908 19.782C19.4802 20 18.9201 20 17.8 20H6.2C5.0799 20 4.51984 20 4.09202 19.782C3.71569 19.5903 3.40973 19.2843 3.21799 18.908C3 18.4802 3 17.9201 3 16.8V8M18 8V7.2C18 6.0799 18 5.51984 17.782 5.09202C17.5903 4.71569 17.2843 4.40973 16.908 4.21799C16.4802 4 15.9201 4 14.8 4H6.2C5.07989 4 4.51984 4 4.09202 4.21799C3.71569 4.40973 3.40973 4.71569 3.21799 5.09202C3 5.51984 3 6.0799 3 7.2V8",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),PR=e=>(0,ln.jsx)(LA,{width:"36",height:"32",fill:"none",viewBox:"0 0 36 32",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M18.0004 24.3332H18.0171M18.0004 12.6665V19.3332M8.68719 30.9999H27.3136C30.2831 30.9999 31.7678 30.9999 32.6386 30.3754C33.3985 29.8305 33.8946 28.9915 34.0058 28.0631C34.1333 26.9991 33.4178 25.6982 31.9868 23.0963L22.6736 6.16318C21.1499 3.39292 20.3881 2.00779 19.3814 1.54954C18.5041 1.15015 17.4968 1.15015 16.6194 1.54954C15.6127 2.00779 14.8509 3.39292 13.3273 6.16317L4.01404 23.0963C2.58301 25.6982 1.8675 26.9991 1.99498 28.0631C2.10622 28.9915 2.6023 29.8305 3.36219 30.3754C4.23304 30.9999 5.71776 30.9999 8.68719 30.9999Z",stroke:EP.orangeL,strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2"})}),OR=e=>(0,ln.jsx)(LA,{width:"18px",height:"18px",fill:"none",viewBox:"0 0 18 18",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M4.5 4.5L13.5 13.5M13.5 4.5L4.5 13.5","data-testid":"xmark-icon-path",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),TR=pi,CR=oi,jR=()=>{const{html:e,seen:t}=CR((e=>e.announcement)),r=TR();return(0,n.useEffect)((()=>{const e=()=>{dj.get("https://storage.googleapis.com/umami-artifacts/announcement.html").then((e=>{r($a.actions.setCurrent(e.data))})).catch((e=>{}))};e();const t=setInterval(e,36e5);return()=>clearInterval(t)}),[r]),t||!e?null:(0,ln.jsx)($A,{className:"announcement-banner",color:"black",background:EP.orangeL,"data-testid":"announcement",paddingX:"30px",children:(0,ln.jsxs)(un,{justifyContent:"space-between",width:"100%",children:[(0,ln.jsxs)(dn,{children:[(0,ln.jsx)(iR,{marginRight:"4px"}),(0,ln.jsx)(qA,{fontSize:"14px",dangerouslySetInnerHTML:{__html:e}})]}),(0,ln.jsx)(WA,{"data-testid":"close",onClick:()=>r($a.actions.setSeen())})]})})};function RR(e,t){const r=(0,n.useId)();return(0,n.useMemo)((()=>e||[t,r].filter(Boolean).join("-")),[e,t,r])}function IR(e){return null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function MR(e){var t;return IR(e)&&null!=(t=e.ownerDocument)?t:document}function LR(){return!("undefined"===typeof window||!window.document||!window.document.createElement)}var NR=LR()?n.useLayoutEffect:n.useEffect;function DR(e,t=[]){const r=(0,n.useRef)(e);return NR((()=>{r.current=e})),(0,n.useCallback)(((...e)=>{var t;return null==(t=r.current)?void 0:t.call(r,...e)}),t)}function zR(e={}){const{onClose:t,onOpen:r,isOpen:i,id:o}=e,a=DR(r),s=DR(t),[c,l]=(0,n.useState)(e.defaultIsOpen||!1),[u,d]=function(e,t){const r=void 0!==e;return[r,r&&"undefined"!==typeof e?e:t]}(i,c),h=RR(o,"disclosure"),f=(0,n.useCallback)((()=>{u||l(!1),null==s||s()}),[u,s]),p=(0,n.useCallback)((()=>{u||l(!0),null==a||a()}),[u,a]),m=(0,n.useCallback)((()=>{(d?f:p)()}),[d,p,f]);return{isOpen:!!d,onOpen:p,onClose:f,onToggle:m,isControlled:u,getButtonProps:(e={})=>({...e,"aria-expanded":d,"aria-controls":h,onClick:_t(e.onClick,m)}),getDisclosureProps:(e={})=>({...e,hidden:!d,id:h})}}var BR=Object.defineProperty,UR=(e,t,r)=>(((e,t,r)=>{t in e?BR(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r),FR=new class{constructor(){UR(this,"modals"),this.modals=new Map}add(e){return this.modals.set(e,this.modals.size+1),this.modals.size}remove(e){this.modals.delete(e)}isTopModal(e){return!!e&&this.modals.get(e)===this.modals.size}};function $R(e,t){const[r,i]=(0,n.useState)(0);return(0,n.useEffect)((()=>{const r=e.current;if(r){if(t){const e=FR.add(r);i(e)}return()=>{FR.remove(r),i(0)}}}),[t,e]),r}var HR=function(e){return"undefined"===typeof document?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},VR=new WeakMap,qR=new WeakMap,KR={},WR=0,GR=function(e){return e&&(e.host||GR(e.parentNode))},ZR=function(e,t,r,n){var i=function(e,t){return t.map((function(t){if(e.contains(t))return t;var r=GR(t);return r&&e.contains(r)?r:(console.error("aria-hidden",t,"in not contained inside",e,". Doing nothing"),null)})).filter((function(e){return Boolean(e)}))}(t,Array.isArray(e)?e:[e]);KR[r]||(KR[r]=new WeakMap);var o=KR[r],a=[],s=new Set,c=new Set(i),l=function(e){e&&!s.has(e)&&(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){e&&!c.has(e)&&Array.prototype.forEach.call(e.children,(function(e){if(s.has(e))u(e);else{var t=e.getAttribute(n),i=null!==t&&"false"!==t,c=(VR.get(e)||0)+1,l=(o.get(e)||0)+1;VR.set(e,c),o.set(e,l),a.push(e),1===c&&i&&qR.set(e,!0),1===l&&e.setAttribute(r,"true"),i||e.setAttribute(n,"true")}}))};return u(t),s.clear(),WR++,function(){a.forEach((function(e){var t=VR.get(e)-1,i=o.get(e)-1;VR.set(e,t),o.set(e,i),t||(qR.has(e)||e.removeAttribute(n),qR.delete(e)),i||e.removeAttribute(r)})),--WR||(VR=new WeakMap,VR=new WeakMap,qR=new WeakMap,KR={})}},YR=function(e,t,r){void 0===r&&(r="data-aria-hidden");var n=Array.from(Array.isArray(e)?e:[e]),i=t||HR(e);return i?(n.push.apply(n,Array.from(i.querySelectorAll("[aria-live]"))),ZR(n,i,r,"aria-hidden")):function(){return null}};function XR(e){const{isOpen:t,onClose:r,id:i,closeOnOverlayClick:o=!0,closeOnEsc:a=!0,useInert:s=!0,onOverlayClick:c,onEsc:l}=e,u=(0,n.useRef)(null),d=(0,n.useRef)(null),[h,f,p]=function(e,...t){const r=(0,n.useId)(),i=e||r;return(0,n.useMemo)((()=>t.map((e=>`${e}-${i}`))),[i,t])}(i,"chakra-modal","chakra-modal--header","chakra-modal--body");!function(e,t){const r=e.current;(0,n.useEffect)((()=>{if(e.current&&t)return YR(e.current)}),[t,e,r])}(u,t&&s);const m=$R(u,t),g=(0,n.useRef)(null),v=(0,n.useCallback)((e=>{g.current=e.target}),[]),y=(0,n.useCallback)((e=>{"Escape"===e.key&&(e.stopPropagation(),a&&(null==r||r()),null==l||l())}),[a,r,l]),[b,w]=(0,n.useState)(!1),[x,_]=(0,n.useState)(!1),S=(0,n.useCallback)(((e={},t=null)=>({role:"dialog",...e,ref:Mn(t,u),id:h,tabIndex:-1,"aria-modal":!0,"aria-labelledby":b?f:void 0,"aria-describedby":x?p:void 0,onClick:k(e.onClick,(e=>e.stopPropagation()))})),[p,x,h,f,b]),E=(0,n.useCallback)((e=>{e.stopPropagation(),g.current===e.target&&FR.isTopModal(u.current)&&(o&&(null==r||r()),null==c||c())}),[r,o,c]),A=(0,n.useCallback)(((e={},t=null)=>({...e,ref:Mn(t,d),onClick:k(e.onClick,E),onKeyDown:k(e.onKeyDown,y),onMouseDown:k(e.onMouseDown,v)})),[y,v,E]);return{isOpen:t,onClose:r,headerId:f,bodyId:p,setBodyMounted:_,setHeaderMounted:w,dialogRef:u,overlayRef:d,getDialogProps:S,getDialogContainerProps:A,index:m}}var[JR,QR]=kn({name:"ModalStylesContext",errorMessage:"useModalStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),[eI,tI]=kn({strict:!0,name:"ModalContext",errorMessage:"useModalContext: `context` is undefined. Seems you forgot to wrap modal components in ``"}),rI=e=>{const t={scrollBehavior:"outside",autoFocus:!0,trapFocus:!0,returnFocusOnClose:!0,blockScrollOnMount:!0,allowPinchZoom:!1,motionPreset:"scale",lockFocusAcrossFrames:!0,...e},{portalProps:r,children:n,autoFocus:i,trapFocus:o,initialFocusRef:a,finalFocusRef:s,returnFocusOnClose:c,blockScrollOnMount:l,allowPinchZoom:u,preserveScrollBarGap:d,motionPreset:h,lockFocusAcrossFrames:f,onCloseComplete:p}=t,m=_n("Modal",t),g={...XR(t),autoFocus:i,trapFocus:o,initialFocusRef:a,finalFocusRef:s,returnFocusOnClose:c,blockScrollOnMount:l,allowPinchZoom:u,preserveScrollBarGap:d,motionPreset:h,lockFocusAcrossFrames:f};return(0,ln.jsx)(eI,{value:g,children:(0,ln.jsx)(JR,{value:m,children:(0,ln.jsx)(iP,{onExitComplete:p,children:g.isOpen&&(0,ln.jsx)(dP,{...r,children:n})})})})};rI.displayName="Modal";var nI={ease:[.25,.1,.25,1],easeIn:[.4,0,1,1],easeOut:[0,0,.2,1],easeInOut:[.4,0,.2,1]},iI={position:{left:0,top:0,bottom:0,width:"100%"},enter:{x:0,y:0},exit:{x:"-100%",y:0}},oI={position:{right:0,top:0,bottom:0,width:"100%"},enter:{x:0,y:0},exit:{x:"100%",y:0}},aI={position:{top:0,left:0,right:0,maxWidth:"100vw"},enter:{x:0,y:0},exit:{x:0,y:"-100%"}},sI={position:{bottom:0,left:0,right:0,maxWidth:"100vw"},enter:{x:0,y:0},exit:{x:0,y:"100%"}};function cI(e){var t;switch(null!=(t=null==e?void 0:e.direction)?t:"right"){case"right":default:return oI;case"left":return iI;case"bottom":return sI;case"top":return aI}}var lI={enter:{duration:.2,ease:nI.easeOut},exit:{duration:.1,ease:nI.easeIn}},uI=(e,t)=>({...e,delay:"number"===typeof t?t:null==t?void 0:t.enter}),dI=(e,t)=>({...e,delay:"number"===typeof t?t:null==t?void 0:t.exit}),hI={enter:({transition:e,transitionEnd:t,delay:r}={})=>{var n;return{opacity:1,transition:null!=(n=null==e?void 0:e.enter)?n:uI(lI.enter,r),transitionEnd:null==t?void 0:t.enter}},exit:({transition:e,transitionEnd:t,delay:r}={})=>{var n;return{opacity:0,transition:null!=(n=null==e?void 0:e.exit)?n:dI(lI.exit,r),transitionEnd:null==t?void 0:t.exit}}},fI={initial:"exit",animate:"enter",exit:"exit",variants:hI},pI=(0,n.forwardRef)((function(e,t){const{unmountOnExit:r,in:n,className:i,transition:o,transitionEnd:a,delay:s,...c}=e,l=n||r?"enter":"exit",u=!r||n&&r,d={transition:o,transitionEnd:a,delay:s};return(0,ln.jsx)(iP,{custom:d,children:u&&(0,ln.jsx)(CA.div,{ref:t,className:v("chakra-fade",i),custom:d,...fI,animate:l,...c})})}));pI.displayName="Fade";var mI=cn(CA.div),gI=g(((e,t)=>{const{className:r,transition:n,motionProps:i,...o}=e,a=v("chakra-modal__overlay",r),s={pos:"fixed",left:"0",top:"0",w:"100vw",h:"100vh",...QR().overlay},{motionPreset:c}=tI(),l=i||("none"===c?{}:fI);return(0,ln.jsx)(mI,{...l,__css:s,ref:t,className:a,...o})}));gI.displayName="ModalOverlay";var vI=function(e,t){return vI=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},vI(e,t)};function yI(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}vI(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var bI=function(){return bI=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0&&i[i.length-1])&&(6===s[0]||2===s[0])){a=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function kI(e,t){var r="function"===typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,i,o=r.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(n=o.next()).done;)a.push(n.value)}catch(s){i={error:s}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(i)throw i.error}}return a}function EI(e,t,r){if(r||2===arguments.length)for(var n,i=0,o=t.length;i1||s(e,t)}))})}function s(e,t){try{!function(e){e.value instanceof AI?Promise.resolve(e.value.v).then(c,l):u(o[0][2],e)}(i[e](t))}catch(r){u(o[0][3],r)}}function c(e){s("next",e)}function l(e){s("throw",e)}function u(e,t){e(t),o.shift(),o.length&&s(o[0][0],o[0][1])}}function OI(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=SI(e),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,i){(function(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)})(n,i,(t=e[r](t)).done,t.value)}))}}}Object.create;"function"===typeof SuppressedError&&SuppressedError;var TI="right-scroll-bar-position",CI="width-before-scroll-bar";function jI(e,t){return function(e,t){var r=(0,n.useState)((function(){return{value:e,callback:t,facade:{get current(){return r.value},set current(e){var t=r.value;t!==e&&(r.value=e,r.callback(e,t))}}}}))[0];return r.callback=t,r.facade}(t||null,(function(t){return e.forEach((function(e){return function(e,t){return"function"===typeof e?e(t):e&&(e.current=t),e}(e,t)}))}))}function RI(e){return e}function II(e,t){void 0===t&&(t=RI);var r=[],n=!1,i={read:function(){if(n)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return r.length?r[r.length-1]:e},useMedium:function(e){var i=t(e,n);return r.push(i),function(){r=r.filter((function(e){return e!==i}))}},assignSyncMedium:function(e){for(n=!0;r.length;){var t=r;r=[],t.forEach(e)}r={push:function(t){return e(t)},filter:function(){return r}}},assignMedium:function(e){n=!0;var t=[];if(r.length){var i=r;r=[],i.forEach(e),t=r}var o=function(){var r=t;t=[],r.forEach(e)},a=function(){return Promise.resolve().then(o)};a(),r={push:function(e){t.push(e),a()},filter:function(e){return t=t.filter(e),r}}}};return i}function MI(e,t){return void 0===t&&(t=RI),II(e,t)}function LI(e){void 0===e&&(e={});var t=II(null);return t.options=bI({async:!0,ssr:!1},e),t}var NI=LI(),DI=function(){},zI=n.forwardRef((function(e,t){var r=n.useRef(null),i=n.useState({onScrollCapture:DI,onWheelCapture:DI,onTouchMoveCapture:DI}),o=i[0],a=i[1],s=e.forwardProps,c=e.children,l=e.className,u=e.removeScrollBar,d=e.enabled,h=e.shards,f=e.sideCar,p=e.noIsolation,m=e.inert,g=e.allowPinchZoom,v=e.as,y=void 0===v?"div":v,b=e.gapMode,w=wI(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as","gapMode"]),x=f,_=jI([r,t]),S=bI(bI({},w),o);return n.createElement(n.Fragment,null,d&&n.createElement(x,{sideCar:NI,removeScrollBar:u,shards:h,noIsolation:p,inert:m,setCallbacks:a,allowPinchZoom:!!g,lockRef:r,gapMode:b}),s?n.cloneElement(n.Children.only(c),bI(bI({},S),{ref:_})):n.createElement(y,bI({},S,{className:l,ref:_}),c))}));zI.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},zI.classNames={fullWidth:CI,zeroRight:TI};var BI,UI=function(e){var t=e.sideCar,r=wI(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var i=t.read();if(!i)throw new Error("Sidecar medium not found");return n.createElement(i,bI({},r))};UI.isSideCarExport=!0;function FI(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=BI||r.nc;return t&&e.setAttribute("nonce",t),e}var $I=function(){var e=0,t=null;return{add:function(r){var n;0==e&&(t=FI())&&(!function(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}(t,r),n=t,(document.head||document.getElementsByTagName("head")[0]).appendChild(n)),e++},remove:function(){!--e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},HI=function(){var e=function(){var e=$I();return function(t,r){n.useEffect((function(){return e.add(t),function(){e.remove()}}),[t&&r])}}();return function(t){var r=t.styles,n=t.dynamic;return e(r,n),null}},VI={left:0,top:0,right:0,gap:0},qI=function(e){return parseInt(e||"",10)||0},KI=function(e){if(void 0===e&&(e="margin"),"undefined"===typeof window)return VI;var t=function(e){var t=window.getComputedStyle(document.body),r=t["padding"===e?"paddingLeft":"marginLeft"],n=t["padding"===e?"paddingTop":"marginTop"],i=t["padding"===e?"paddingRight":"marginRight"];return[qI(r),qI(n),qI(i)]}(e),r=document.documentElement.clientWidth,n=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,n-r+t[2]-t[0])}},WI=HI(),GI=function(e,t,r,n){var i=e.left,o=e.top,a=e.right,s=e.gap;return void 0===r&&(r="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(n,";\n padding-right: ").concat(s,"px ").concat(n,";\n }\n body {\n overflow: hidden ").concat(n,";\n overscroll-behavior: contain;\n ").concat([t&&"position: relative ".concat(n,";"),"margin"===r&&"\n padding-left: ".concat(i,"px;\n padding-top: ").concat(o,"px;\n padding-right: ").concat(a,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(s,"px ").concat(n,";\n "),"padding"===r&&"padding-right: ".concat(s,"px ").concat(n,";")].filter(Boolean).join(""),"\n }\n \n .").concat(TI," {\n right: ").concat(s,"px ").concat(n,";\n }\n \n .").concat(CI," {\n margin-right: ").concat(s,"px ").concat(n,";\n }\n \n .").concat(TI," .").concat(TI," {\n right: 0 ").concat(n,";\n }\n \n .").concat(CI," .").concat(CI," {\n margin-right: 0 ").concat(n,";\n }\n \n body {\n ").concat("--removed-body-scroll-bar-size",": ").concat(s,"px;\n }\n")},ZI=function(e){var t=e.noRelative,r=e.noImportant,i=e.gapMode,o=void 0===i?"margin":i,a=n.useMemo((function(){return KI(o)}),[o]);return n.createElement(WI,{styles:GI(a,!t,o,r?"":"!important")})},YI=!1;if("undefined"!==typeof window)try{var XI=Object.defineProperty({},"passive",{get:function(){return YI=!0,!0}});window.addEventListener("test",XI,XI),window.removeEventListener("test",XI,XI)}catch(Ele){YI=!1}var JI=!!YI&&{passive:!1},QI=function(e,t){var r=window.getComputedStyle(e);return"hidden"!==r[t]&&!(r.overflowY===r.overflowX&&!function(e){return"TEXTAREA"===e.tagName}(e)&&"visible"===r[t])},eM=function(e,t){var r=t.ownerDocument,n=t;do{if("undefined"!==typeof ShadowRoot&&n instanceof ShadowRoot&&(n=n.host),tM(e,n)){var i=rM(e,n);if(i[1]>i[2])return!0}n=n.parentNode}while(n&&n!==r.body);return!1},tM=function(e,t){return"v"===e?function(e){return QI(e,"overflowY")}(t):function(e){return QI(e,"overflowX")}(t)},rM=function(e,t){return"v"===e?function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]}(t):function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]}(t)},nM=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},iM=function(e){return[e.deltaX,e.deltaY]},oM=function(e){return e&&"current"in e?e.current:e},aM=function(e){return"\n .block-interactivity-".concat(e," {pointer-events: none;}\n .allow-interactivity-").concat(e," {pointer-events: all;}\n")},sM=0,cM=[];function lM(e){for(var t=null;null!==e;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const uM=(dM=function(e){var t=n.useRef([]),r=n.useRef([0,0]),i=n.useRef(),o=n.useState(sM++)[0],a=n.useState(HI)[0],s=n.useRef(e);n.useEffect((function(){s.current=e}),[e]),n.useEffect((function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(o));var t=EI([e.lockRef.current],(e.shards||[]).map(oM),!0).filter(Boolean);return t.forEach((function(e){return e.classList.add("allow-interactivity-".concat(o))})),function(){document.body.classList.remove("block-interactivity-".concat(o)),t.forEach((function(e){return e.classList.remove("allow-interactivity-".concat(o))}))}}}),[e.inert,e.lockRef.current,e.shards]);var c=n.useCallback((function(e,t){if("touches"in e&&2===e.touches.length)return!s.current.allowPinchZoom;var n,o=nM(e),a=r.current,c="deltaX"in e?e.deltaX:a[0]-o[0],l="deltaY"in e?e.deltaY:a[1]-o[1],u=e.target,d=Math.abs(c)>Math.abs(l)?"h":"v";if("touches"in e&&"h"===d&&"range"===u.type)return!1;var h=eM(d,u);if(!h)return!0;if(h?n=d:(n="v"===d?"h":"v",h=eM(d,u)),!h)return!1;if(!i.current&&"changedTouches"in e&&(c||l)&&(i.current=n),!n)return!0;var f=i.current||n;return function(e,t,r,n,i){var o=function(e,t){return"h"===e&&"rtl"===t?-1:1}(e,window.getComputedStyle(t).direction),a=o*n,s=r.target,c=t.contains(s),l=!1,u=a>0,d=0,h=0;do{var f=rM(e,s),p=f[0],m=f[1]-f[2]-o*p;(p||m)&&tM(e,s)&&(d+=m,h+=p),s=s instanceof ShadowRoot?s.host:s.parentNode}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&a>d)||!u&&(i&&Math.abs(h)<1||!i&&-a>h))&&(l=!0),l}(f,t,e,"h"===f?c:l,!0)}),[]),l=n.useCallback((function(e){var r=e;if(cM.length&&cM[cM.length-1]===a){var n="deltaY"in r?iM(r):nM(r),i=t.current.filter((function(e){return e.name===r.type&&(e.target===r.target||r.target===e.shadowParent)&&function(e,t){return e[0]===t[0]&&e[1]===t[1]}(e.delta,n)}))[0];if(i&&i.should)r.cancelable&&r.preventDefault();else if(!i){var o=(s.current.shards||[]).map(oM).filter(Boolean).filter((function(e){return e.contains(r.target)}));(o.length>0?c(r,o[0]):!s.current.noIsolation)&&r.cancelable&&r.preventDefault()}}}),[]),u=n.useCallback((function(e,r,n,i){var o={name:e,delta:r,target:n,should:i,shadowParent:lM(n)};t.current.push(o),setTimeout((function(){t.current=t.current.filter((function(e){return e!==o}))}),1)}),[]),d=n.useCallback((function(e){r.current=nM(e),i.current=void 0}),[]),h=n.useCallback((function(t){u(t.type,iM(t),t.target,c(t,e.lockRef.current))}),[]),f=n.useCallback((function(t){u(t.type,nM(t),t.target,c(t,e.lockRef.current))}),[]);n.useEffect((function(){return cM.push(a),e.setCallbacks({onScrollCapture:h,onWheelCapture:h,onTouchMoveCapture:f}),document.addEventListener("wheel",l,JI),document.addEventListener("touchmove",l,JI),document.addEventListener("touchstart",d,JI),function(){cM=cM.filter((function(e){return e!==a})),document.removeEventListener("wheel",l,JI),document.removeEventListener("touchmove",l,JI),document.removeEventListener("touchstart",d,JI)}}),[]);var p=e.removeScrollBar,m=e.inert;return n.createElement(n.Fragment,null,m?n.createElement(a,{styles:aM(o)}):null,p?n.createElement(ZI,{gapMode:e.gapMode}):null)},NI.useMedium(dM),UI);var dM,hM=n.forwardRef((function(e,t){return n.createElement(zI,bI({},e,{ref:t,sideCar:uM}))}));hM.classNames=zI.classNames;const fM=hM,pM=(0,n.createContext)({openWith:e=>Promise.resolve(),onClose:()=>{},isOpen:!1}),mM=()=>{const{isOpen:e,onClose:t,onOpen:r}=zR(),[i,o]=(0,n.useState)(null),[a,s]=(0,n.useState)("md");return{isOpen:e,onClose:t,openWith:async(e,t="md")=>{s(t),o(e),r()},content:(0,ln.jsxs)(rI,{autoFocus:!1,blockScrollOnMount:!1,closeOnOverlayClick:!1,isCentered:!0,isOpen:e,motionPreset:localStorage.getItem("chakra-modal-motion-preset")||void 0,onClose:t,size:a,children:[(0,ln.jsx)(gI,{}),(0,ln.jsx)(fM,{enabled:e,children:i})]})}};function gM(e){return Object.keys(e)}var vM;!function(e){e.PENDING="pending",e.RESOLVED="resolved",e.REJECTED="rejected"}(vM||(vM={}));const yM=()=>{throw new Error("ExposedPromise not initialized yet.")};class bM{_promise;_resolve=yM;_reject=yM;_status=vM.PENDING;_promiseResult;_promiseError;get promise(){return this._promise}get resolve(){return this._resolve}get reject(){return this._reject}get status(){return this._status}get promiseResult(){return this._promiseResult}get promiseError(){return this._promiseError}constructor(){this._promise=new Promise(((e,t)=>{this._resolve=t=>{this.isSettled()||(this._promiseResult=t,e(t),this._status=vM.RESOLVED)},this._reject=e=>{this.isSettled()||(this._promiseError=e,t(e),this._status=vM.REJECTED)}}))}static resolve(e){const t=new bM;return t.resolve(e),t}static reject(e){const t=new bM;return t.reject(e),t}isPending(){return this.status===vM.PENDING}isResolved(){return this.status===vM.RESOLVED}isRejected(){return this.status===vM.REJECTED}isSettled(){return this.isResolved()||this.isRejected()}}var wM=r(427),xM=r(8945),_M=r(5164),SM=r(9070),kM=r(4082),EM=r(4872).Buffer;function AM(e){return EM.from(e).toString("hex")}async function PM(e){return AM("string"===typeof e?(0,Wa.hash)((0,SM.cv)(e),32):(0,Wa.hash)(e,32))}async function OM(e){return(0,Ka._w)((0,Wa.hash)((0,SM.cv)(e),32))}function TM(e,t){return`@${e}:${t}`}var CM=r(4872).Buffer;async function jM(){const e=(0,_M.randomBytes)(16);return[e.slice(0,4),e.slice(4,6),e.slice(6,8),e.slice(8,10),e.slice(10,16)].map((function(e){return CM.from(e).toString("hex")})).join("-")}var RM,IM,MM,LM,NM,DM,zM,BM,UM,FM;!function(e){e.BlockchainRequest="blockchain_request",e.PermissionRequest="permission_request",e.SignPayloadRequest="sign_payload_request",e.OperationRequest="operation_request",e.BroadcastRequest="broadcast_request",e.ChangeAccountRequest="change_account_request",e.BlockchainResponse="blockchain_response",e.PermissionResponse="permission_response",e.SignPayloadResponse="sign_payload_response",e.ProofOfEventChallengeRequest="proof_of_event_challenge_request",e.ProofOfEventChallengeResponse="proof_of_event_challenge_response",e.ProofOfEventChallengeRecorded="proof_of_event_challenge_recorded",e.OperationResponse="operation_response",e.BroadcastResponse="broadcast_response",e.Acknowledge="acknowledge",e.Disconnect="disconnect",e.Error="error"}(RM||(RM={})),function(e){e.SIGN="sign",e.OPERATION_REQUEST="operation_request",e.ENCRYPT="encrypt",e.NOTIFICATION="notification",e.THRESHOLD="threshold"}(IM||(IM={})),function(e){e.MAINNET="mainnet",e.GHOSTNET="ghostnet",e.WEEKLYNET="weeklynet",e.DAILYNET="dailynet",e.DELPHINET="delphinet",e.EDONET="edonet",e.FLORENCENET="florencenet",e.GRANADANET="granadanet",e.HANGZHOUNET="hangzhounet",e.ITHACANET="ithacanet",e.JAKARTANET="jakartanet",e.KATHMANDUNET="kathmandunet",e.LIMANET="limanet",e.MUMBAINET="mumbainet",e.NAIROBINET="nairobinet",e.OXFORDNET="oxfordnet",e.CUSTOM="custom"}(MM||(MM={})),function(e){e.ENDORSEMENT="endorsement",e.SEED_NONCE_REVELATION="seed_nonce_revelation",e.DOUBLE_ENDORSEMENT_EVIDENCE="double_endorsement_evidence",e.DOUBLE_BAKING_EVIDENCE="double_baking_evidence",e.ACTIVATE_ACCOUNT="activate_account",e.PROPOSALS="proposals",e.BALLOT="ballot",e.REVEAL="reveal",e.TRANSACTION="transaction",e.ORIGINATION="origination",e.DELEGATION="delegation"}(LM||(LM={})),function(e){e.WEBSITE="website",e.EXTENSION="extension",e.P2P="p2p",e.WALLETCONNECT="walletconnect"}(NM||(NM={})),function(e){e.BACKGROUND="toBackground",e.PAGE="toPage",e.EXTENSION="toExtension"}(DM||(DM={})),function(e){e.BROADCAST_ERROR="BROADCAST_ERROR",e.NETWORK_NOT_SUPPORTED="NETWORK_NOT_SUPPORTED",e.NO_ADDRESS_ERROR="NO_ADDRESS_ERROR",e.NO_PRIVATE_KEY_FOUND_ERROR="NO_PRIVATE_KEY_FOUND_ERROR",e.NOT_GRANTED_ERROR="NOT_GRANTED_ERROR",e.PARAMETERS_INVALID_ERROR="PARAMETERS_INVALID_ERROR",e.TOO_MANY_OPERATIONS="TOO_MANY_OPERATIONS",e.TRANSACTION_INVALID_ERROR="TRANSACTION_INVALID_ERROR",e.SIGNATURE_TYPE_NOT_SUPPORTED="SIGNATURE_TYPE_NOT_SUPPORTED",e.ABORTED_ERROR="ABORTED_ERROR",e.UNKNOWN_ERROR="UNKNOWN_ERROR"}(zM||(zM={})),function(e){e.NOT_CONNECTED="NOT_CONNECTED",e.CONNECTING="CONNECTING",e.CONNECTED="CONNECTED"}(BM||(BM={})),function(e){e.CHROME_MESSAGE="chrome_message",e.WALLETCONNECT="walletconnect",e.POST_MESSAGE="post_message",e.LEDGER="ledger",e.P2P="p2p"}(UM||(UM={}));class $M{static isSupported(){return Promise.resolve(!1)}}!function(e){e.TRANSPORT_P2P_PEERS_DAPP="beacon:communication-peers-dapp",e.TRANSPORT_P2P_PEERS_WALLET="beacon:communication-peers-wallet",e.TRANSPORT_POSTMESSAGE_PEERS_DAPP="beacon:postmessage-peers-dapp",e.TRANSPORT_POSTMESSAGE_PEERS_WALLET="beacon:postmessage-peers-wallet",e.TRANSPORT_WALLETCONNECT_PEERS_DAPP="beacon:walletconnect-peers-dapp",e.LAST_SELECTED_WALLET="beacon:last-selected-wallet",e.ACCOUNTS="beacon:accounts",e.ACTIVE_ACCOUNT="beacon:active-account",e.PUSH_TOKENS="beacon:push-tokens",e.BEACON_SDK_SECRET_SEED="beacon:sdk-secret-seed",e.APP_METADATA_LIST="beacon:app-metadata-list",e.PERMISSION_LIST="beacon:permissions",e.ONGOING_PROOF_OF_EVENT_CHALLENGES="beacon:ongoing-proof-of-event-challenges",e.BEACON_SDK_VERSION="beacon:sdk_version",e.MATRIX_PRESERVED_STATE="beacon:sdk-matrix-preserved-state",e.MATRIX_PEER_ROOM_IDS="beacon:matrix-peer-rooms",e.MATRIX_SELECTED_NODE="beacon:matrix-selected-node",e.MULTI_NODE_SETUP_DONE="beacon:multi-node-setup",e.WC_2_CORE_PAIRING="wc@2:core:0.3//pairing",e.WC_2_CLIENT_SESSION="wc@2:client:0.3//session",e.WC_2_CORE_KEYCHAIN="wc@2:core:0.3//keychain",e.WC_2_CORE_MESSAGES="wc@2:core:0.3//messages",e.WC_2_CLIENT_PROPOSAL="wc@2:client:0.3//proposal",e.WC_2_CORE_SUBSCRIPTION="wc@2:core:0.3//subscription",e.WC_2_CORE_HISTORY="wc@2:core:0.3//history",e.WC_2_CORE_EXPIRER="wc@2:core:0.3//expirer"}(FM||(FM={}));const HM={[FM.TRANSPORT_P2P_PEERS_DAPP]:[],[FM.TRANSPORT_P2P_PEERS_WALLET]:[],[FM.TRANSPORT_POSTMESSAGE_PEERS_DAPP]:[],[FM.TRANSPORT_POSTMESSAGE_PEERS_WALLET]:[],[FM.TRANSPORT_WALLETCONNECT_PEERS_DAPP]:[],[FM.LAST_SELECTED_WALLET]:void 0,[FM.ACCOUNTS]:[],[FM.ACTIVE_ACCOUNT]:void 0,[FM.PUSH_TOKENS]:[],[FM.BEACON_SDK_SECRET_SEED]:void 0,[FM.APP_METADATA_LIST]:[],[FM.PERMISSION_LIST]:[],[FM.ONGOING_PROOF_OF_EVENT_CHALLENGES]:[],[FM.BEACON_SDK_VERSION]:void 0,[FM.MATRIX_PRESERVED_STATE]:{},[FM.MATRIX_PEER_ROOM_IDS]:{},[FM.MATRIX_SELECTED_NODE]:void 0,[FM.MULTI_NODE_SETUP_DONE]:void 0,[FM.WC_2_CLIENT_SESSION]:void 0,[FM.WC_2_CORE_PAIRING]:void 0,[FM.WC_2_CORE_KEYCHAIN]:void 0,[FM.WC_2_CORE_MESSAGES]:void 0,[FM.WC_2_CLIENT_PROPOSAL]:void 0,[FM.WC_2_CORE_SUBSCRIPTION]:void 0,[FM.WC_2_CORE_HISTORY]:void 0,[FM.WC_2_CORE_EXPIRER]:void 0};class VM{type="p2p-pairing-request";relayServer;id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o,a){this.id=e,this.name=t,this.icon=o,this.appUrl=a,this.publicKey=r,this.version=n,this.relayServer=i}}class qM extends VM{senderId;constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,a,s),this.senderId=o}}var KM,WM,GM;!function(e){e.RAW="raw",e.OPERATION="operation",e.MICHELINE="micheline"}(KM||(KM={}));class ZM{type="p2p-pairing-request";relayServer;id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o,a){this.id=e,this.name=t,this.icon=o,this.appUrl=a,this.publicKey=r,this.version=n,this.relayServer=i}}class YM{type="postmessage-pairing-request";id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o){this.id=e,this.name=t,this.icon=i,this.appUrl=o,this.publicKey=r,this.version=n}}class XM extends YM{senderId;constructor(e,t,r,n,i,o,a){super(e,t,r,n,o,a),this.senderId=i}}class JM{type="walletconnect-pairing-request";uri;id;name;icon;appUrl;publicKey;version;constructor(e,t,r,n,i,o,a){this.id=e,this.name=t,this.icon=o,this.appUrl=a,this.publicKey=r,this.version=n,this.uri=i}}class QM extends JM{senderId;constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,o,a,s),this.senderId=i}}!function(e){e.LIGHT="light",e.DARK="dark"}(WM||(WM={})),function(e){e.EUROPE_EAST="europe-east",e.EUROPE_WEST="europe-west",e.NORTH_AMERICA_EAST="north-america-east",e.NORTH_AMERICA_WEST="north-america-west",e.CENTRAL_AMERICA="central-america",e.SOUTH_AMERICA="south-america",e.ASIA_EAST="asia-east",e.ASIA_WEST="asia-west",e.AFRICA="africa",e.AUSTRALIA="australia"}(GM||(GM={}));const eL="https://beacon-notification-oracle.dev.gke.papers.tech",tL=[e=>{}];let rL={postMessage:(e,t)=>{console.log("GOT MOCK POST MESSAGE",e),tL.forEach((t=>{t({data:e})}))},addEventListener:(e,t)=>{tL.push(t)},removeEventListener:(e,t)=>{tL.splice(tL.indexOf((e=>e===t)),1)},location:{origin:"*"}};try{"undefined"!==typeof window&&(rL=window)}catch(Ale){console.log(`not defined: ${Ale}`)}class nL{track(e,t,r,n){}}class iL{name;iconUrl;appUrl;_beaconId=new bM;get beaconId(){return this._beaconId.promise}storage;analytics;_keyPair=new bM;get keyPair(){return this._keyPair.promise}constructor(e){if(!e.name)throw new Error("Name not set");if(!e.storage)throw new Error("Storage not set");this.name=e.name,this.iconUrl=e.iconUrl,this.appUrl=e.appUrl??rL.location.origin,this.storage=e.storage,this.analytics=e.analytics??new nL,rL.beaconCreatedClientInstance?console.error("[BEACON] It looks like you created multiple Beacon SDK Client instances. This can lead to problems. Only create one instance and re-use it everywhere."):rL.beaconCreatedClientInstance=!0,this.initSDK().catch(console.error)}async destroy(){await this.removeBeaconEntriesFromStorage(),rL.beaconCreatedClientInstance=!1}async initSDK(){return this.storage.set(FM.BEACON_SDK_VERSION,"4.1.0").catch(console.error),this.loadOrCreateBeaconSecret().catch(console.error),this.keyPair.then((e=>{this._beaconId.resolve(AM(e.publicKey))}))}async removeBeaconEntriesFromStorage(){const e=Object.values(FM);await Promise.all(e.map((e=>this.storage.delete(e))))}async loadOrCreateBeaconSecret(){const e=await this.storage.get(FM.BEACON_SDK_SECRET_SEED);if(e&&"string"===typeof e)this._keyPair.resolve(await OM(e));else{const e=await jM();await this.storage.set(FM.BEACON_SDK_SECRET_SEED,e),this._keyPair.resolve(await OM(e))}}}class oL{storage;storageKey;constructor(e,t){this.storage=e,this.storageKey=t}async getAll(){return await this.storage.get(this.storageKey)??[]}async getOne(e){return(await this.storage.get(this.storageKey)).find(e)}async addOne(e,t,r=!0){const n=await this.storage.get(this.storageKey);if(n.some(t)){if(r)for(let i=0;i!e(t)));return this.storage.set(this.storageKey,t)}async removeAll(){return this.storage.delete(this.storageKey)}}var aL=r(4872).Buffer;const sL=async(e,t)=>{const r=[e,t.type];t.name&&r.push(`name:${t.name}`),t.rpcUrl&&r.push(`rpc:${t.rpcUrl}`);const n=aL.from((0,Wa.hash)((0,SM.cv)(r.join("-")),10));return wM.encode(n)};class cL{static async hasPermission(e,t,r){switch(e.type){case RM.PermissionRequest:case RM.BroadcastRequest:return!0;case RM.OperationRequest:{const r=await sL(e.sourceAddress,e.network),n=await t(r);return!!n&&n.scopes.includes(IM.OPERATION_REQUEST)}case RM.SignPayloadRequest:{const t=(await r()).filter((t=>t.address===e.sourceAddress));return 0!==t.length&&t.some((e=>e.scopes.includes(IM.SIGN)))}default:throw new Error("Message not handled")}}}class lL{storageManager;constructor(e){this.storageManager=new oL(e,FM.ACCOUNTS)}async getAccounts(){return await this.storageManager.getAll()??[]}async getAccount(e){return this.storageManager.getOne((t=>t.accountIdentifier===e))}async addAccount(e){return this.storageManager.addOne(e,(t=>t.accountIdentifier===e.accountIdentifier))}async updateAccount(e,t){const r=await this.getAccount(e);if(!r)return;const n={...r,...t};return await this.storageManager.addOne(n,(t=>t.accountIdentifier===e),!0),n}async removeAccount(e){return this.storageManager.remove((t=>t.accountIdentifier===e))}async removeAccounts(e){return this.storageManager.remove((t=>e.includes(t.accountIdentifier)))}async removeAllAccounts(){return this.storageManager.removeAll()}async hasPermission(e){return cL.hasPermission(e,this.getAccount.bind(this),this.getAccounts.bind(this))}}var uL=r(4872).Buffer;const dL=async e=>{const t=uL.from((0,Wa.hash)(uL.from(e,"hex"),5));return wM.encode(t)};let hL=!!rL.beaconSdkDebugEnabled;hL&&console.log("[BEACON]: Debug mode is ON (turned on either by the developer or a browser extension)");class fL{name;constructor(e){this.name=e}debug(e,...t){pL.debug(this.name,e,t)}log(e,...t){pL.log(this.name,e,t)}warn(e,...t){pL.warn(this.name,e,t)}error(e,...t){pL.error(this.name,e,t)}time(e,t){pL.time(e,t)}timeLog(e,...t){pL.timeLog(e,t)}}new fL("");let pL=new class{constructor(){}debug(e,t,...r){this._log("debug",e,t,r)}log(e,t,...r){this._log("log",e,t,r)}warn(e,t,...r){this._log("warn",e,t,r)}error(e,t,...r){this._log("error",e,t,r)}time(e,t){e?console.time(t):console.timeEnd(t)}timeLog(e,t,...r){this._log("timeLog",e,t,r)}_log(e,t,r,n=[]){if(!hL)return;let i=`[BEACON] ${(new Date).toISOString()} [${t}](${r})`,o=n;switch(n[0]&&"string"===typeof n[0]&&(i+=` ${n[0]}`,o=n.slice(1)),e){case"error":console.group(i),console.error(...o);break;case"warn":console.group(i),console.warn(...o);break;case"debug":console.groupCollapsed(i),console.debug(...o);break;case"timeLog":console.group(i),console.timeLog(...o);break;default:console.group(i),console.log(...o)}console.groupEnd()}};const mL=new fL("Client");class gL extends iL{accountManager;handleResponse;rateLimit=2;rateLimitWindowInSeconds=5;requestCounter=[];matrixNodes;_transport=new bM;get transport(){return this._transport.promise}get connectionStatus(){return this._transport.promiseResult?.connectionStatus??BM.NOT_CONNECTED}get ready(){return this.transport.then((()=>{}))}constructor(e){super(e),this.accountManager=new lL(e.storage),this.matrixNodes=e.matrixNodes??{},this.handleResponse=(e,t)=>{throw new Error(`not overwritten${JSON.stringify(e)} - ${JSON.stringify(t)}`)}}async getAccounts(){return this.accountManager.getAccounts()}async getAccount(e){return this.accountManager.getAccount(e)}async removeAccount(e){return this.accountManager.removeAccount(e)}async removeAllAccounts(){return this.accountManager.removeAllAccounts()}async addRequestAndCheckIfRateLimited(){const e=(new Date).getTime();return this.requestCounter=this.requestCounter.filter((t=>t+1e3*this.rateLimitWindowInSeconds>e)),this.requestCounter.push(e),this.requestCounter.length>this.rateLimit}async init(e){return this._transport.status===vM.RESOLVED?(await this.transport).type:(await this.setTransport(e),e.type)}async getOwnAppMetadata(){return{senderId:await dL(await this.beaconId),name:this.name,icon:this.iconUrl}}async getPeers(){return(await this.transport).getPeers()}async addPeer(e){return(await this.transport).addPeer(e)}async destroy(){this._transport.status===vM.RESOLVED&&await(await this.transport).disconnect(),await super.destroy()}async setTransport(e){e?this._transport.isSettled()?this._transport=bM.resolve(e):this._transport.resolve(e):this._transport.isSettled()&&(this._transport=new bM)}async addListener(e){e.addListener((async(e,t)=>{if("string"===typeof e){const r=await(new xL).deserialize(e);this.handleResponse(r,t)}})).catch((e=>mL.error("addListener",e)))}async sendDisconnectToPeer(e,t){const r={id:await jM(),version:e.version,senderId:await dL(await this.beaconId),type:RM.Disconnect},n=await(new xL).serialize(r),i=t??await this.transport;await i.send(n,e)}}const vL=new fL("Transport");class yL{type=UM.POST_MESSAGE;name;_isConnected=BM.NOT_CONNECTED;peerManager;client;newPeerListener;setEventHandler(e,t){this.client.eventHandlers.set(e,t)}listeners=[];get connectionStatus(){return this._isConnected}constructor(e,t,r){this.name=e,this.client=t,this.peerManager=r}static async isAvailable(){return Promise.resolve(!1)}async connect(){vL.log("connect"),this._isConnected=BM.CONNECTED}async disconnect(){vL.log("disconnect"),this._isConnected=BM.NOT_CONNECTED}async send(e,t){if(t)return this.client.sendMessage(e,t);{const t=(await this.getPeers()).map((t=>this.client.sendMessage(e,t)));return(await Promise.all(t))[0]}}async addListener(e){vL.debug("addListener"),this.listeners.push(e)}async removeListener(e){vL.log("removeListener"),this.listeners=this.listeners.filter((t=>t!==e))}async getPeers(){return this.peerManager.getPeers()}async addPeer(e,t=!0){vL.log("addPeer","adding peer",e),await this.peerManager.addPeer(e),await this.listen(e.publicKey)}async removePeer(e){vL.log("removePeer","removing peer",e),await this.peerManager.removePeer(e.publicKey),this.client&&await this.client.unsubscribeFromEncryptedMessage(e.publicKey)}async removeAllPeers(){vL.log("removeAllPeers"),await this.peerManager.removeAllPeers(),this.client&&await this.client.unsubscribeFromEncryptedMessages()}async notifyListeners(e,t){0===this.listeners.length?vL.warn("notifyListeners","0 listeners notified!",this):vL.log("notifyListeners",`Notifying ${this.listeners.length} listeners`,this),this.listeners.forEach((r=>{r(e,t)}))}}class bL extends $M{prefix;constructor(e){super(),this.prefix=e}static async isSupported(){return Promise.resolve(Boolean("undefined"!==typeof window)&&Boolean(window.localStorage))}async get(e){const t=localStorage.getItem(this.getPrefixedKey(e));if(!t)return"object"===typeof HM[e]?JSON.parse(JSON.stringify(HM[e])):HM[e];try{return JSON.parse(t)}catch(r){return t}}async set(e,t){return"string"===typeof t?localStorage.setItem(this.getPrefixedKey(e),t):localStorage.setItem(this.getPrefixedKey(e),JSON.stringify(t))}async delete(e){return Promise.resolve(localStorage.removeItem(this.getPrefixedKey(e)))}async subscribeToStorageChanged(e){window.addEventListener("storage",(t=>{t.key?e({eventType:"entryModified",key:this.getPrefixedKey(t.key),oldValue:t.oldValue,newValue:t.newValue}):e({eventType:"storageCleared",key:null,oldValue:null,newValue:null})}),!1)}getPrefixedKey(e){return this.prefix?`${this.prefix}-${e}`:e}}new fL("STORAGE");var wL=r(4872).Buffer;class xL{async serialize(e){const t=JSON.stringify(e);return wM.encode(wL.from(t))}async deserialize(e){if("string"!==typeof e)throw new Error("Encoded payload needs to be a string");return JSON.parse(wM.decode(e).toString())}}class _L{storageManager;constructor(e){this.storageManager=new oL(e,FM.APP_METADATA_LIST)}async getAppMetadataList(){return await this.storageManager.getAll()??[]}async getAppMetadata(e){return this.storageManager.getOne((t=>t.senderId===e))}async addAppMetadata(e){return this.storageManager.addOne(e,(t=>t.senderId===e.senderId))}async removeAppMetadata(e){return this.storageManager.remove((t=>t.senderId===e))}async removeAppMetadatas(e){return this.storageManager.remove((t=>e.includes(t.senderId)))}async removeAllAppMetadata(){return this.storageManager.removeAll()}}class SL{storageManager;constructor(e){this.storageManager=new oL(e,FM.PERMISSION_LIST)}async getPermissions(){return await this.storageManager.getAll()??[]}async getPermission(e){return this.storageManager.getOne((t=>t.accountIdentifier===e))}async addPermission(e){return this.storageManager.addOne(e,(t=>t.accountIdentifier===e.accountIdentifier&&t.senderId===e.senderId))}async removePermission(e){return this.storageManager.remove((t=>t.accountIdentifier===e))}async removePermissions(e){return this.storageManager.remove((t=>e.includes(t.accountIdentifier)))}async removeAllPermissions(){return this.storageManager.removeAll()}async hasPermission(e){return cL.hasPermission(e,this.getPermission.bind(this),this.getPermissions.bind(this))}}class kL{storageManager;constructor(e,t){this.storageManager=new oL(e,t)}async hasPeer(e){return!!await this.getPeer(e)}async getPeers(){return await this.storageManager.getAll()??[]}async getPeer(e){return this.storageManager.getOne((t=>t.publicKey===e))}async addPeer(e){return this.storageManager.addOne(e,(t=>t.publicKey===e.publicKey))}async removePeer(e){return this.storageManager.remove((t=>t.publicKey===e))}async removePeers(e){return this.storageManager.remove((t=>e.includes(t.publicKey)))}async removeAllPeers(){return this.storageManager.removeAll()}}var EL=r(347),AL=r(4872).Buffer;class PL{keyPair;constructor(e){this.keyPair=e}eventHandlers=new Map;async getPublicKey(){return AM(this.keyPair?.publicKey)}async getPublicKeyHash(){return PM(this.keyPair.publicKey)}async createCryptoBoxServer(e,t){return(0,EL.serverSessionKeys)({publicKey:(0,Ka.SH)(t.publicKey),secretKey:(0,Ka.zh)(t.secretKey)},(0,Ka.SH)(AL.from(e,"hex")))}async createCryptoBoxClient(e,t){return(0,EL.clientSessionKeys)({publicKey:(0,Ka.SH)(t.publicKey),secretKey:(0,Ka.zh)(t.secretKey)},(0,Ka.SH)(AL.from(e,"hex")))}async encryptMessageAsymmetric(e,t){return async function(e,t){const r=(0,Ka.SH)(EM.from(t)),n=(0,xM.generateKeyPair)(),i=new Wa.BLAKE2b(24).update(n.publicKey,32).update(r,32).digest(),o="string"===typeof e?(0,SM.cv)(e):e,a=(0,xM.box)(r,n.secretKey,i,o);return AM((0,kM.z)(n.publicKey,a))}(t,AL.from(e,"hex"))}}r(4872).Buffer;new fL("IndexedDBStorage");var OL;!function(e){e.TEXT="m.text"}(OL||(OL={}));class TL{type;sender;content;timestamp;static from(e){if(jL(e))return new TL(e.content.msgtype,e.sender,e.content.body,e.origin_server_ts)}constructor(e,t,r,n){this.type=e,this.sender=t,this.content=r,this.timestamp=n}}const CL=e=>"m.room.message"===e.type,jL=e=>CL(e)&&e.content instanceof Object&&"msgtype"in e.content&&e.content.msgtype===OL.TEXT;var RL;!function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.JOINED=1]="JOINED",e[e.INVITED=2]="INVITED",e[e.LEFT=3]="LEFT"}(RL||(RL={}));class IL{id;status;members;messages;static fromSync(e){if(!e)return[];function t(e,t){return Object.entries(e).map((([e,r])=>t(e,r)))}return[...t(e.join??{},IL.fromJoined),...t(e.invite??{},IL.fromInvited),...t(e.leave??{},IL.fromLeft)]}static from(e,t){return"string"===typeof e?new IL(e,t||RL.UNKNOWN):void 0!==t?new IL(e.id,t,e.members,e.messages):e}static merge(e,t){return t&&t.id===e.id?new IL(e.id,e.status,[...t.members,...e.members].filter(((e,t,r)=>r.indexOf(e)===t)),[...t.messages,...e.messages]):IL.from(e)}static fromJoined(e,t){const r=[...t.state.events,...t.timeline.events],n=IL.getMembersFromEvents(r),i=IL.getMessagesFromEvents(r);return new IL(e,RL.JOINED,n,i)}static fromInvited(e,t){const r=IL.getMembersFromEvents(t.invite_state.events);return new IL(e,RL.INVITED,r)}static fromLeft(e,t){const r=[...t.state.events,...t.timeline.events],n=IL.getMembersFromEvents(r),i=IL.getMessagesFromEvents(r);return new IL(e,RL.LEFT,n,i)}static getMembersFromEvents(e){return IL.getUniqueEvents(e.filter((e=>(e=>"m.room.create"===e.type&&e.content instanceof Object&&"creator"in e.content)(e)||(e=>"m.room.member"===e.type&&e.content instanceof Object&&"membership"in e.content&&"join"===e.content.membership)(e)))).map((e=>e.sender)).filter(((e,t,r)=>r.indexOf(e)===t))}static getMessagesFromEvents(e){return IL.getUniqueEvents(e.filter(CL)).map((e=>TL.from(e))).filter(Boolean)}static getUniqueEvents(e){const t={},r=[];return e.forEach(((e,n)=>{const i=e.event_id;void 0!==i&&i in t||(void 0!==i&&(t[i]=n),r.push(e))})),r}constructor(e,t=RL.UNKNOWN,r=[],n=[]){this.id=e,this.status=t,this.members=r,this.messages=n}}const ML=["syncToken","rooms"];class LL{storage;state={isRunning:!1,userId:void 0,deviceId:void 0,txnNo:0,accessToken:void 0,syncToken:void 0,pollingTimeout:void 0,pollingRetries:0,rooms:{}};onStateChangedListeners=new Map;waitReadyPromise;constructor(e){this.storage=e,this.waitReadyPromise=new Promise((async(e,t)=>{try{await this.initFromStorage(),e()}catch(r){t(r)}}))}get(e){return this.state[e]}getRoom(e){const t=IL.from(e,RL.UNKNOWN);return this.state.rooms[t.id]||t}async update(e){await this.waitReady();const t=Object.assign({},this.state);this.setState(e),this.updateStorage(e),this.notifyListeners(t,this.state,e)}onStateChanged(e,...t){t.length>0?t.forEach((t=>{this.onStateChangedListeners.set(t,e)})):this.onStateChangedListeners.set("all",e)}async waitReady(){return this.waitReadyPromise}async initFromStorage(){const e=await this.storage.get(FM.MATRIX_PRESERVED_STATE);this.setState(e)}prepareData(e){const t=["rooms"].some((t=>void 0!==e[t]))?JSON.parse(JSON.stringify(e)):e;return Object.values(t.rooms||{}).forEach((e=>{e.messages=[]})),t}updateStorage(e){const t=Object.entries(e).filter((([e,t])=>ML.includes(e)&&Boolean(t)));if(t.length>0){const e={};ML.forEach((t=>{e[t]=this.state[t]})),this.storage.set(FM.MATRIX_PRESERVED_STATE,this.prepareData(e))}}setState(e){this.state={isRunning:e.isRunning||this.state.isRunning,userId:e.userId||this.state.userId,deviceId:e.deviceId||this.state.deviceId,txnNo:e.txnNo||this.state.txnNo,accessToken:e.accessToken||this.state.accessToken,syncToken:e.syncToken||this.state.syncToken,pollingTimeout:e.pollingTimeout||this.state.pollingTimeout,pollingRetries:e.pollingRetries||this.state.pollingRetries,rooms:this.mergeRooms(this.state.rooms,e.rooms)}}mergeRooms(e,t){if(!t)return e;const r=Array.isArray(t)?t:Object.values(t),n=Object.assign({},e);return r.forEach((t=>{n[t.id]=IL.merge(t,e[t.id])})),n}notifyListeners(e,t,r){const n=this.onStateChangedListeners.get("all");n&&n(e,t,r),gM(r).filter((e=>void 0!==r[e])).forEach((n=>{const i=this.onStateChangedListeners.get(n);i&&i(e,t,r)}))}}const NL=new fL("MatrixHttpClient");class DL{baseUrl;cancelTokenSource;constructor(e){this.baseUrl=e,this.cancelTokenSource=dj.CancelToken.source()}async get(e,t,r){return this.send("GET",e,r,t)}async post(e,t,r,n){return this.send("POST",e,r,n,t)}async put(e,t,r,n){return this.send("PUT",e,r,n,t)}async cancelAllRequests(){return this.cancelTokenSource.cancel("Manually cancelled")}async send(e,t,r,n,i){const o=r?this.getHeaders(r):void 0,a=n?this.getParams(n):void 0;let s;try{s=await dj.request({method:e,url:t,baseURL:this.apiUrl("/_matrix/client/r0"),headers:o,data:i,params:a,cancelToken:this.cancelTokenSource.token})}catch(c){const e=c;throw NL.error("send",e.code,e.message,e.response.data),c.response.data}return s.data}getHeaders(e){const t={},r=[];if(e.accessToken&&r.push(["Authorization",`Bearer ${e.accessToken}`]),0!==r.length){for(const[e,n]of r)t[e]=n;return t}}getParams(e){if(!e)return;const t=Object.assign(e,{});return gM(t).forEach((e=>void 0===t[e]&&delete t[e])),t}apiUrl(...e){return[this.baseUrl.endsWith("/")?this.baseUrl.substr(0,this.baseUrl.length-1):this.baseUrl,...e.map((e=>e.startsWith("/")?e.substr(1):e))].join("/")}}class zL{httpClient;constructor(e){this.httpClient=e}async createRoom(e,t={}){return this.httpClient.post("/createRoom",t,{accessToken:e})}async inviteToRoom(e,t,r){return r.status!==RL.JOINED&&r.status!==RL.UNKNOWN?Promise.reject(`User is not a member of room ${r.id}.`):this.httpClient.post(`/rooms/${encodeURIComponent(r.id)}/invite`,{user_id:t},{accessToken:e})}async joinRoom(e,t){return t.status===RL.JOINED?Promise.resolve({room_id:t.id}):this.httpClient.post(`/rooms/${encodeURIComponent(t.id)}/join`,{},{accessToken:e})}async getJoinedRooms(e){return this.httpClient.get("/joined_rooms",void 0,{accessToken:e})}}class BL{httpClient;constructor(e){this.httpClient=e}async login(e,t,r){return this.httpClient.post("/login",{type:"m.login.password",identifier:{type:"m.id.user",user:e},password:t,device_id:r})}}class UL{httpClient;cachedPromises=new Map;constructor(e){this.httpClient=e}async sync(e,t){return this.withCache("sync",(()=>this.httpClient.get("/sync",{timeout:t?t.pollingTimeout:void 0,since:t?t.syncToken:void 0},{accessToken:e})))}async sendMessage(e,t,r,n){return new Promise(((i,o)=>this.scheduleEvent({accessToken:e,roomId:t,type:"m.room.message",content:r,txnId:n,onSuccess:i,onError:o})))}scheduleEvent(e){this.sendEvent(e)}async sendEvent(e){const{roomId:t,type:r,txnId:n,content:i,accessToken:o}=e;try{const a=await this.httpClient.put(`/rooms/${encodeURIComponent(t)}/send/${r}/${encodeURIComponent(n)}`,i,{accessToken:o});e.onSuccess(a)}catch(a){e.onError(a)}}withCache(e,t){let r=this.cachedPromises.get(e);return r||(r=t().finally((()=>{this.cachedPromises.delete(e)})),this.cachedPromises.set(e,r)),r}}class FL{events={};on(e,t){return"object"!==typeof this.events[e]&&(this.events[e]=[]),this.events[e].push(t),()=>this.removeListener(e,t)}removeListener(e,t){if("object"!==typeof this.events[e])return;if(!t)return void(this.events[e]=[]);const r=this.events[e].indexOf(t);r>-1&&this.events[e].splice(r,1)}removeAllListeners(){Object.keys(this.events).forEach((e=>this.events[e].splice(0,this.events[e].length)))}emit(e,...t){"object"===typeof this.events[e]&&[...this.events[e]].forEach((e=>e.apply(this,t)))}once(e,t){const r=this.on(e,((...e)=>{r(),t.apply(this,e)}));return r}}var $L;!function(e){e.INVITE="invite",e.MESSAGE="message"}($L||($L={}));class HL extends FL{eventEmitProviders=new Map([[$L.INVITE,()=>[this.isInvite,this.emitInvite.bind(this)]],[$L.MESSAGE,()=>[this.isMessage,this.emitMessage.bind(this)]]]);onStateChanged(e,t,r){for(const n of gM($L))this.emitIfEvent($L[n],r)}emitIfEvent(e,t){const r=this.eventEmitProviders.get(e);if(r){const[n,i]=r();n(t)&&i(e,t)}}emitClientEvent(e,t,r){this.emit(e,{type:e,content:t,timestamp:r})}isInvite(e){return!!e.rooms&&e.rooms.some((e=>e.status===RL.INVITED))}emitInvite(e,t){t.rooms.filter((e=>e.status===RL.INVITED)).map((e=>[e.id,e.members])).forEach((([t,r])=>{this.emitClientEvent(e,{roomId:t,members:r})}))}isMessage(e){return!!e.rooms&&e.rooms.some((e=>e.messages.length>0))}emitMessage(e,t){t.rooms.filter((e=>e.messages.length>0)).map((e=>e.messages.map((t=>[e.id,t,t.timestamp])))).reduce(((e,t)=>e.concat(t)),[]).forEach((([t,r,n])=>{this.emitClientEvent(e,{roomId:t,message:r},n)}))}}const VL=new fL("MatrixClient");class qL{store;eventEmitter;userService;roomService;eventService;httpClient;isActive=!0;_isReady=new bM;constructor(e,t,r,n,i,o){this.store=e,this.eventEmitter=t,this.userService=r,this.roomService=n,this.eventService=i,this.httpClient=o,this.store.onStateChanged(((e,t,r)=>{this.eventEmitter.onStateChanged(e,t,r)}),"rooms")}static create(e){const t=new LL(e.storage),r=new HL,n=new DL(e.baseUrl),i=new BL(n),o=new zL(n),a=new UL(n);return new qL(t,r,i,o,a,n)}get joinedRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===RL.JOINED)))}))}get invitedRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===RL.INVITED)))}))}get leftRooms(){return new Promise((async e=>{await this.isConnected(),e(Object.values(this.store.get("rooms")).filter((e=>e.status===RL.LEFT)))}))}async start(e){const t=await this.userService.login(e.id,e.password,e.deviceId);await this.store.update({accessToken:t.access_token});const r=new Promise((async(e,t)=>{await this.poll(0,(async t=>{this.store.get("isRunning")||e(),await this.store.update({isRunning:!0,syncToken:t.next_batch,pollingTimeout:3e4,pollingRetries:0,rooms:IL.fromSync(t.rooms)})}),(async e=>{this.store.get("isRunning")||t(e),await this.store.update({isRunning:!1,pollingRetries:this.store.get("pollingRetries")+1})}))}));return r.then((()=>{this._isReady.resolve()})).catch(console.error),r}async isConnected(){return this._isReady.promise}async stop(){return VL.log("MATRIX CLIENT STOPPED"),this.isActive=!1,this._isReady=new bM,this.httpClient.cancelAllRequests()}subscribe(e,t){this.eventEmitter.on(e,t)}unsubscribe(e,t){t&&this.eventEmitter.removeListener(e,t)}unsubscribeAll(e){this.eventEmitter.removeListener(e)}async getRoomById(e){return await this.isConnected(),this.store.getRoom(e)}async createTrustedPrivateRoom(...e){return await this.isConnected(),this.requiresAuthorization("createRoom",(async t=>(await this.roomService.createRoom(t,{room_version:"5",invite:e,preset:"public_chat",is_direct:!0})).room_id))}async inviteToRooms(e,...t){await this.isConnected(),await this.requiresAuthorization("invite",(r=>Promise.all(t.map((t=>{const n=this.store.getRoom(t);this.roomService.inviteToRoom(r,e,n).catch((e=>VL.warn("inviteToRooms",e)))})))))}async joinRooms(...e){await this.isConnected(),await this.requiresAuthorization("join",(t=>Promise.all(e.map((e=>{const r=this.store.getRoom(e);return this.roomService.joinRoom(t,r)})))))}async sendTextMessage(e,t){await this.isConnected(),await this.requiresAuthorization("send",(async r=>{const n=await this.createTxnId();return this.eventService.sendMessage(r,e,{msgtype:"m.text",body:t},n)}))}async poll(e,t,r){const n=this.store,i=this.sync.bind(this),o=async(a,s)=>{let c=0;try{const e=await i();t(e)}catch(l){r(l),c=n.get("pollingRetries"),this.isActive&&VL.log(`Retry syncing... ${c} retries so far`)}finally{this.isActive?setTimeout((async()=>{await o(a,s)}),c>3?5e3+e:e):s(new Error("Syncing stopped manually."))}};return new Promise(o)}async sync(){return this.requiresAuthorization("sync",(async e=>this.eventService.sync(e,{pollingTimeout:this.store.get("pollingTimeout"),syncToken:this.store.get("syncToken")})))}async requiresAuthorization(e,t){const r=this.store.get("accessToken");return r?t(r):Promise.reject(`${e} requires authorization but no access token has been provided.`)}async createTxnId(){const e=(new Date).getTime(),t=this.store.get("txnNo");return await this.store.update({txnNo:t+1}),`m${e}.${t}`}}var KL=r(4872).Buffer;const WL=new fL("P2PCommunicationClient"),GL={[GM.EUROPE_WEST]:["beacon-node-1.diamond.papers.tech","beacon-node-1.sky.papers.tech","beacon-node-2.sky.papers.tech","beacon-node-1.hope.papers.tech","beacon-node-1.hope-2.papers.tech","beacon-node-1.hope-3.papers.tech","beacon-node-1.hope-4.papers.tech","beacon-node-1.hope-5.papers.tech"],[GM.NORTH_AMERICA_EAST]:["beacon-node-1.beacon-server-1.papers.tech"],[GM.NORTH_AMERICA_WEST]:["beacon-node-1.beacon-server-2.papers.tech"],[GM.ASIA_EAST]:["beacon-node-1.beacon-server-3.papers.tech"],[GM.AUSTRALIA]:["beacon-node-1.beacon-server-4.papers.tech"]},ZL=e=>new Promise((t=>setTimeout(t,e)));class YL extends PL{name;replicationCount;storage;iconUrl;appUrl;client=new bM;initialEvent;initialListener;selectedRegion;ENABLED_RELAY_SERVERS;relayServer;activeListeners=new Map;ignoredRooms=[];loginCounter=0;constructor(e,t,r,n,i,o,a){super(t),this.name=e,this.replicationCount=r,this.storage=n,this.iconUrl=o,this.appUrl=a,WL.log("constructor","P2PCommunicationClient created"),this.ENABLED_RELAY_SERVERS=GL,i&&(this.ENABLED_RELAY_SERVERS={...GL,...i})}async getPairingRequestInfo(){const e=new VM(await jM(),this.name,await this.getPublicKey(),"3",(await this.getRelayServer()).server);return this.iconUrl&&(e.icon=this.iconUrl),this.appUrl&&(e.appUrl=this.appUrl),e}async getPairingResponseInfo(e){const t=new ZM(e.id,this.name,await this.getPublicKey(),e.version,(await this.getRelayServer()).server);return this.iconUrl&&(t.icon=this.iconUrl),this.appUrl&&(t.appUrl=this.appUrl),t}async findBestRegionAndGetServer(){if(this.selectedRegion)return this.relayServer?.promiseResult;const e=Object.keys(this.ENABLED_RELAY_SERVERS),t=[],r=new bM;let n=0;const i=new bM;e.forEach((e=>{const o=this.ENABLED_RELAY_SERVERS[e]??[];if(0===o.length)return;n+=2;const a=(o=!0)=>{const c=Date.now();Promise.race([this.getBeaconInfo(s),i.promise]).then((i=>{"boolean"!==typeof i&&(t.push({time:Date.now()-c,server:s,region:e,result:i}),t.length>=n&&r.resolve(void 0),o||a(!0))}))},s=o[Math.floor(Math.random()*o.length)];a(!1)})),await Promise.race([r.promise,ZL(1e3)]);let o=0;for(;t.length<=0;){if(o>=100)throw new Error("No server responded.");await ZL(50),o++}i.resolve(!0);const a=t.reduce(((e,t)=>e.time0){const t=await this.getBeaconInfo(e);return this.relayServer.resolve({server:e,timestamp:t.timestamp,localTimestamp:(new Date).getTime()}),{server:e,timestamp:t.timestamp}}const t=await this.findBestRegionAndGetServer();if(!t)throw new Error("No servers found");return this.storage.set(FM.MATRIX_SELECTED_NODE,t.server).catch((e=>WL.log(e))),this.relayServer.resolve({server:t.server,timestamp:t.timestamp,localTimestamp:(new Date).getTime()}),{server:t.server,timestamp:t.timestamp}}async getBeaconInfo(e){return dj.get(`https://${e}/_synapse/client/beacon/info`).then((e=>({region:e.data.region,known_servers:e.data.known_servers,timestamp:Math.floor(e.data.timestamp)})))}async tryJoinRooms(e,t=1){try{await(await this.client.promise).joinRooms(e)}catch(r){t<=10&&"M_FORBIDDEN"===r.errcode?(WL.log("Retrying to join...",r),setTimeout((async()=>{await this.tryJoinRooms(e,t+1)}),200)):WL.log(`Failed to join after ${t} tries.`,r)}}async start(){WL.log("start","starting client"),WL.log("start","connecting to server");const e=await this.getRelayServer(),t=qL.create({baseUrl:`https://${e.server}`,storage:this.storage});if(this.initialListener=async e=>{this.initialEvent&&this.initialEvent.timestamp&&e&&e.timestamp?this.initialEvent.timestamp{let t;1===e.content.members.length&&(t=e.content.members[0]),await this.tryJoinRooms(e.content.roomId),t&&(await this.updateRelayServer(t),await this.updatePeerRoom(t,e.content.roomId))})),!e.timestamp)throw new Error("No timestamp received from relay server");const r=Math.floor(e.timestamp),n=`login:${Math.floor(r/300)}`;WL.log("start",`login ${n}, ${await this.getPublicKeyHash()} on ${e.server}`);const i=(0,Wa.hash)((0,SM.cv)(n),32),o=this.keyPair.secretKey??this.keyPair.privateKey,a=(0,Ka.Xx)(o,i);try{await t.start({id:await this.getPublicKeyHash(),password:`ed:${AM(a)}:${await this.getPublicKey()}`,deviceId:AM(this.keyPair.publicKey)})}catch(s){if(WL.error("start","Could not log in, retrying"),await this.reset(),!this.selectedRegion)throw new Error("No region selected.");if(this.loginCounter<=(this.ENABLED_RELAY_SERVERS[this.selectedRegion]??[]).length)return this.loginCounter++,void this.start();throw WL.error("start","Tried to log in to every known beacon node, but no login was successful."),new Error("Could not connect to any beacon nodes. Try again later.")}WL.log("start","login successful, client is ready"),this.client.resolve(t)}async stop(){WL.log("stop","stopping client"),this.client.isResolved()&&await(await this.client.promise).stop().catch((e=>WL.error(e))),await this.reset()}async reset(){WL.log("reset","resetting connection"),await this.storage.delete(FM.MATRIX_PEER_ROOM_IDS).catch((e=>WL.log(e))),await this.storage.delete(FM.MATRIX_PRESERVED_STATE).catch((e=>WL.log(e))),await this.storage.delete(FM.MATRIX_SELECTED_NODE).catch((e=>WL.log(e))),this.relayServer=void 0,this.client=new bM,this.initialEvent=void 0,this.initialListener=void 0}async listenForEncryptedMessage(e,t){if(this.activeListeners.has(e))return;WL.log("listenForEncryptedMessage",`start listening for encrypted messages from publicKey ${e}`);const r=await this.createCryptoBoxServer(e,this.keyPair),n=async n=>{if(this.isTextMessage(n.content)&&await this.isSender(n,e)){let o;await this.updateRelayServer(n.content.message.sender),await this.updatePeerRoom(n.content.message.sender,n.content.roomId);try{o=KL.from(n.content.message.content,"hex")}catch{}if(o&&o.length>=40)try{const n=await async function(e,t){const r=e.slice(0,24),n=e.slice(24),i=(0,xM.openSecretBox)(t,r,n);if(!i)throw new Error("Decryption failed");return EM.from(i).toString("utf8")}(o,r.receive);WL.log("listenForEncryptedMessage",`received a message from ${e}`,n),t(n)}catch(i){}}};this.activeListeners.set(e,n),(await this.client.promise).subscribe($L.MESSAGE,n);const i=this.initialEvent;i&&i.timestamp&&(new Date).getTime()-i.timestamp<3e5?(WL.log("listenForEncryptedMessage","Handling previous event"),await n(i)):WL.log("listenForEncryptedMessage","No previous event found");const o=this.initialListener;o&&(await this.client.promise).unsubscribe($L.MESSAGE,o),this.initialListener=void 0,this.initialEvent=void 0}async unsubscribeFromEncryptedMessage(e){const t=this.activeListeners.get(e);t&&((await this.client.promise).unsubscribe($L.MESSAGE,t),this.activeListeners.delete(e))}async unsubscribeFromEncryptedMessages(){(await this.client.promise).unsubscribeAll($L.MESSAGE),this.activeListeners.clear()}async sendMessage(e,t){const r=await this.createCryptoBoxClient(t.publicKey,this.keyPair),n=TM(await PM(KL.from(t.publicKey,"hex")),t.relayServer),i=await this.getRelevantRoom(n);await this.waitForJoin(i);const o=await async function(e,t){const r=EM.from((0,_M.randomBytes)(24));return AM(EM.concat([r,EM.from((0,xM.secretBox)(t,r,EM.from(e,"utf8")))]))}(e,r.send);WL.log("sendMessage","sending encrypted message",t.publicKey,i,e),(await this.client.promise).sendTextMessage(i,o).catch((async e=>{if("M_FORBIDDEN"===e.errcode){WL.log("sendMessage","M_FORBIDDEN",i,e),await this.deleteRoomIdFromRooms(i);const t=await this.getRelevantRoom(n);WL.log("sendMessage","Old room deleted, new room created",t),(await this.client.promise).sendTextMessage(t,o).catch((async e=>{WL.log("sendMessage","inner error",t,e)}))}else WL.log("sendMessage","unexpected error",e)}))}async updatePeerRoom(e,t){WL.log("updatePeerRoom",e,t);const r=e.split(":");if(r.length<2||!r[0].startsWith("@"))throw new Error("Invalid sender");const n=await this.storage.get(FM.MATRIX_PEER_ROOM_IDS),i=n[e];i===t&&WL.debug("updatePeerRoom","rooms are the same, not updating"),WL.debug("updatePeerRoom","current room",i,"new room",t),i&&i[1]&&(WL.log("updatePeerRoom",`adding room "${i[1]}" to ignored array`),this.ignoredRooms.push(i[1])),n[e]=t,await this.storage.set(FM.MATRIX_PEER_ROOM_IDS,n)}async deleteRoomIdFromRooms(e){const t=await this.storage.get(FM.MATRIX_PEER_ROOM_IDS),r=Object.entries(t).filter((t=>t[1]!==e)).reduce(((e,t)=>({...e,[t[0]]:t[1]})),{});await this.storage.set(FM.MATRIX_PEER_ROOM_IDS,r),this.ignoredRooms.push(e)}async listenForChannelOpening(e){WL.debug("listenForChannelOpening"),(await this.client.promise).subscribe($L.MESSAGE,(async t=>{if(this.isTextMessage(t.content)&&await this.isChannelOpenMessage(t.content)){WL.log("listenForChannelOpening","channel opening received, trying to decrypt",JSON.stringify(t)),await this.updateRelayServer(t.content.message.sender),await this.updatePeerRoom(t.content.message.sender,t.content.roomId);const n=t.content.message.content.split(":"),i=KL.from(n[n.length-1],"hex");if(i.length>=40)try{const t=JSON.parse(await async function(e,t,r){const n=(0,Ka.zh)(EM.from(r)),i=(0,Ka.SH)(EM.from(t)),o="string"===typeof e?(0,SM.cv)(e):e,a=o.slice(0,32),s=o.slice(32),c=new Wa.BLAKE2b(24).update(a,32).update(i,32).digest(),l=(0,xM.openBox)(a,n,c,s);if(!l)throw new Error("Decryption failed");return EM.from(l).toString()}(i,this.keyPair.publicKey,this.keyPair.secretKey));WL.log("listenForChannelOpening","channel opening received and decrypted",JSON.stringify(t)),e({...t,senderId:await dL(t.publicKey)})}catch(r){}}}))}async waitForJoin(e,t=0){const r=await(await this.client.promise).getRoomById(e);if(WL.log("waitForJoin",`Currently ${r.members.length} members, we need at least 2`),!(r.members.length>=2)){if(t<=200)return WL.log(`Waiting for join... Try: ${t}`),new Promise((r=>{setTimeout((()=>{r(this.waitForJoin(e,t+1))}),100*(t>50?10:1))}));throw new Error(`No one joined after ${t} tries.`)}}async sendPairingResponse(e){WL.log("sendPairingResponse");const t=TM(await PM(KL.from(e.publicKey,"hex")),e.relayServer),r=await(await this.client.promise).createTrustedPrivateRoom(t);WL.debug("sendPairingResponse",`Connecting to room "${r}"`),await this.updatePeerRoom(t,r),await this.waitForJoin(r),WL.debug("sendPairingResponse","Successfully joined room.");const n="undefined"===typeof e.version?await this.getPublicKey():JSON.stringify(await this.getPairingResponseInfo(e));WL.debug("sendPairingResponse","Sending pairing response",n);const i=await this.encryptMessageAsymmetric(e.publicKey,n),o=["@channel-open",t,i].join(":");(await this.client.promise).sendTextMessage(r,o).catch((async e=>{if("M_FORBIDDEN"===e.errcode){WL.log("sendPairingResponse","M_FORBIDDEN",r,e),await this.deleteRoomIdFromRooms(r);const n=await this.getRelevantRoom(t);WL.log("sendPairingResponse","Old room deleted, new room created",n),(await this.client.promise).sendTextMessage(n,o).catch((async e=>{WL.log("sendPairingResponse","inner error",n,e)}))}else WL.log("sendPairingResponse","unexpected error",e)}))}isTextMessage(e){return e.message.type===OL.TEXT}async updateRelayServer(e){WL.log("updateRelayServer",e);const t=e.split(":");if(t.length<2||!t[0].startsWith("@"))throw new Error("Invalid sender");const r=t.shift(),n=t.join(":"),i=localStorage.getItem("beacon:communication-peers-dapp")?new kL(this.storage,FM.TRANSPORT_P2P_PEERS_DAPP):new kL(this.storage,FM.TRANSPORT_P2P_PEERS_WALLET),o=(await i.getPeers()).map((async e=>{`@${await PM(KL.from(e.publicKey,"hex"))}`===r&&e.relayServer!==n&&(e.relayServer=n,await i.addPeer(e))}));await Promise.all(o)}async isChannelOpenMessage(e){return e.message.content.startsWith(`@channel-open:@${await PM(KL.from(await this.getPublicKey(),"hex"))}`)}async isSender(e,t){return e.content.message.sender.startsWith(`@${await PM(KL.from(t,"hex"))}`)}async getRelevantRoom(e){const t=await this.storage.get(FM.MATRIX_PEER_ROOM_IDS);let r=t[e];if(!r){WL.log("getRelevantRoom",`No room found for peer ${e}, checking joined ones.`);const n=await this.getRelevantJoinedRoom(e);r=n.id,t[e]=n.id,await this.storage.set(FM.MATRIX_PEER_ROOM_IDS,t)}return WL.log("getRelevantRoom",`Using room ${r}`),r}async getRelevantJoinedRoom(e){const t=await(await this.client.promise).joinedRooms;WL.log("checking joined rooms",t,e);const r=t.filter((e=>!this.ignoredRooms.some((t=>e.id===t)))).filter((t=>t.members.some((t=>t===e))));let n;if(0===r.length||this.ignoredRooms.length>0){WL.log("getRelevantJoinedRoom","no relevant rooms found, creating new one");const t=await(await this.client.promise).createTrustedPrivateRoom(e);n=await(await this.client.promise).getRoomById(t),WL.log("getRelevantJoinedRoom",`waiting for other party to join room: ${n.id}`),await this.waitForJoin(t),WL.log("getRelevantJoinedRoom",`new room created and peer invited: ${n.id}`)}else n=r[0],WL.log("getRelevantJoinedRoom",`channel already open, reusing room ${n.id}`);return n}}const XL=new fL("P2PTransport");class JL extends yL{type=UM.P2P;constructor(e,t,r,n,i,o,a){super(e,new YL(e,t,1,r,n,o,a),new kL(r,i))}static async isAvailable(){return Promise.resolve(!0)}async connect(){if(this._isConnected!==BM.NOT_CONNECTED)return;XL.log("connect"),this._isConnected=BM.CONNECTING,await this.client.start();const e=await this.getPeers();if(e.length>0){XL.log("connect",`connecting to ${e.length} peers`);const t=e.map((async e=>this.listen(e.publicKey)));Promise.all(t).catch((e=>XL.error("connect",e)))}return await this.startOpenChannelListener(),super.connect()}async disconnect(){return await this.client.stop(),super.disconnect()}async startOpenChannelListener(){}async getPairingRequestInfo(){return this.client.getPairingRequestInfo()}async listen(e){await this.client.listenForEncryptedMessage(e,(t=>{const r={origin:NM.P2P,id:e};this.notifyListeners(t,r).catch((e=>{throw e}))})).catch((e=>{throw e}))}}class QL extends JL{constructor(e,t,r,n,i,o){super(e,t,r,n,FM.TRANSPORT_P2P_PEERS_WALLET,i,o)}async addPeer(e,t=!0){await super.addPeer(e),t&&await this.client.sendPairingResponse(e)}}const eN=new fL("IncomingRequestInterceptor");class tN{static async intercept(e){eN.log("INTERCEPTING REQUEST",e.message),"2"===e.message.version?tN.handleV2Message(e):"3"===e.message.version&&tN.handleV3Message(e)}static async getAppMetadata(e,t){const r=await e.getAppMetadata(t);if(!r)throw new Error("AppMetadata not found");return r}static async handleV2Message(e){const{message:t,connectionInfo:r,appMetadataManager:n,interceptorCallback:i}=e;switch(t.type){case RM.PermissionRequest:eN.log("PERMISSION REQUEST V*",t),t.appMetadata.beaconId&&!t.appMetadata.senderId&&(t.appMetadata.senderId=t.appMetadata.beaconId,delete t.appMetadata.beaconId),await n.addAppMetadata(t.appMetadata);i(t,r);break;case RM.OperationRequest:i({appMetadata:await tN.getAppMetadata(n,t.senderId),...t},r);break;case RM.SignPayloadRequest:i({appMetadata:await tN.getAppMetadata(n,t.senderId),...t},r);break;case RM.BroadcastRequest:i({appMetadata:await tN.getAppMetadata(n,t.senderId),...t},r);break;case RM.ProofOfEventChallengeRequest:i({appMetadata:await tN.getAppMetadata(n,t.senderId),...t},r);break;case RM.ProofOfEventChallengeRecorded:i({appMetadata:await tN.getAppMetadata(n,t.senderId),...t},r);break;default:eN.log("intercept","Message not handled"),rN(t)}}static async handleV3Message(e){const{message:t,connectionInfo:r,appMetadataManager:n,interceptorCallback:i}=e,o=t,a=o.message;switch(a.type){case RM.PermissionRequest:await n.addAppMetadata({...a.blockchainData.appMetadata,senderId:t.senderId});i(o,r);break;case RM.BlockchainRequest:i({...o},r);break;default:eN.log("intercept","Message not handled"),rN(a)}}}function rN(e){throw new Error("Function not implemented.")}const nN=new fL("OutgoingResponseInterceptor");class iN{static async intercept(e){"2"===e.request.version?iN.handleV2Message(e):"3"===e.request.version&&iN.handleV3Message(e)}static async handleV3Message(e){const{message:t,appMetadataManager:r,interceptorCallback:n}=e,i=t.message;nN.log("LOGGING OUTGOING V3",i,r),n(t)}static async handleV2Message(e){const{senderId:t,request:r,message:n,ownAppMetadata:i,permissionManager:o,appMetadataManager:a,interceptorCallback:s}=e;switch(n.type){case RM.Error:{const e={type:n.type,version:"2",senderId:t,id:n.id,errorType:n.errorType};if(n.errorType===zM.TRANSACTION_INVALID_ERROR&&n.errorData){const t=n.errorData;Array.isArray(t)&&t.every((e=>Boolean(e.kind)&&Boolean(e.id)))?e.errorData=n.errorData:nN.warn("ErrorData provided is not in correct format. It needs to be an array of RPC errors. It will not be included in the message sent to the dApp")}s(e);break}case RM.Acknowledge:s({type:n.type,version:"2",senderId:t,id:n.id});break;case RM.PermissionResponse:{const e={senderId:t,version:"2",appMetadata:i,...n};if(!e.address&&!e.publicKey)throw new Error("Address or PublicKey must be defined");const c=e.publicKey,l=e.address??await async function(e){const t={edpk:{length:54,prefix:EM.from(new Uint8Array([6,161,159]))},sppk:{length:55,prefix:EM.from(new Uint8Array([6,161,161]))},p2pk:{length:55,prefix:EM.from(new Uint8Array([6,161,164]))}};let r,n;if(64===e.length)r=t.edpk.prefix,n=e;else{const i=Object.entries(t);for(let t=0;t{if(!["tz1","tz2","tz3","tz4","KT1","txr1","sr1"].some((t=>e.toLowerCase().startsWith(t.toLowerCase()))))return!1;try{wM.decode(e)}catch(t){return!1}return!0})(l))throw new Error(`Invalid address: "${l}"`);if("abstracted_account"===n.walletType&&"KT1"!==l.substring(0,3))throw new Error(`Invalid abstracted account address "${l}", it should be a KT1 address`);const u=await a.getAppMetadata(r.senderId);if(!u)throw new Error("AppMetadata not found");const d={accountIdentifier:await sL(l,e.network),senderId:r.senderId,appMetadata:u,website:"",address:l,publicKey:c,network:e.network,scopes:e.scopes,connectedAt:(new Date).getTime()};o.addPermission(d).catch(console.error),s(e);break}case RM.OperationResponse:s({senderId:t,version:"2",...n});break;case RM.SignPayloadResponse:s({senderId:t,version:"2",...n});break;case RM.BroadcastResponse:s({senderId:t,version:"2",...n});break;case RM.ProofOfEventChallengeResponse:s({senderId:t,version:"2",...n});break;default:nN.log("intercept","Message not handled"),function(e){throw new Error("Function not implemented.")}()}}}const oN=new fL("WalletClient");class aN extends gL{_isConnected=new bM;get isConnected(){return this._isConnected.promise}permissionManager;appMetadataManager;pendingRequests=[];constructor(e){super({storage:e&&e.storage?e.storage:new bL,...e}),this.permissionManager=new SL(this.storage),this.appMetadataManager=new _L(this.storage)}async init(){const e=await this.keyPair,t=new QL(this.name,e,this.storage,this.matrixNodes,this.iconUrl,this.appUrl);return super.init(t)}async connect(e){return this.handleResponse=async(t,r)=>{if("3"===t.version){const n=t;if(n.message.type===RM.Disconnect)return this.disconnect(n.senderId);this.pendingRequests.some((e=>e[0].id===t.id))||(this.pendingRequests.push([n,r]),await this.sendAcknowledgeResponse(n,r),await tN.intercept({message:n,connectionInfo:r,appMetadataManager:this.appMetadataManager,interceptorCallback:e}))}else{const n=t;if(n.type===RM.Disconnect)return this.disconnect(n.senderId);this.pendingRequests.some((e=>e[0].id===t.id))||(this.pendingRequests.push([n,r]),"1"!==n.version&&await this.sendAcknowledgeResponse(n,r),await tN.intercept({message:n,connectionInfo:r,appMetadataManager:this.appMetadataManager,interceptorCallback:e}))}},this._connect()}async getRegisterPushChallenge(e,t,r=eL){const n=(await dj.get(`${r}/challenge`)).data,i=AM(["Tezos Signed Message: ",n.id,n.timestamp,t,e].join(" "));return{challenge:n,payloadToSign:"0501"+i.length.toString(16).padStart(8,"0")+i}}async registerPush(e,t,r,n,i,o,a=eL){const s=await this.storage.get(FM.PUSH_TOKENS),c=s.find((e=>e.publicKey===n&&e.backendUrl===r));if(c)return c;const l=(await dj.post(`${a}/register`,{name:this.name,challenge:e,accountPublicKey:n,signature:t,backendUrl:r,protocolIdentifier:i,deviceId:o})).data,u={publicKey:n,backendUrl:r,accessToken:l.accessToken,managementToken:l.managementToken};return s.push(u),await this.storage.set(FM.PUSH_TOKENS,s),u}async _connect(){const e=await this.transport;e.connectionStatus===BM.NOT_CONNECTED&&(await e.connect(),e.addListener((async(e,t)=>{if("string"===typeof e){const r=await(new xL).deserialize(e);this.handleResponse(r,t)}})).catch((e=>oN.log("_connect",e))),this._isConnected.resolve(!0))}async respond(e){oN.log("RESPONSE",e);const t=this.pendingRequests.find((t=>t[0].id===e.id));if(!t)throw new Error("No matching request found!");this.pendingRequests=this.pendingRequests.filter((t=>t[0].id!==e.id)),await iN.intercept({senderId:await dL(await this.beaconId),request:t[0],message:e,ownAppMetadata:await this.getOwnAppMetadata(),permissionManager:this.permissionManager,appMetadataManager:this.appMetadataManager,interceptorCallback:async e=>{await this.respondToMessage(e,t[1])}})}async getAppMetadataList(){return this.appMetadataManager.getAppMetadataList()}async getAppMetadata(e){return this.appMetadataManager.getAppMetadata(e)}async removeAppMetadata(e){return this.appMetadataManager.removeAppMetadata(e)}async removeAllAppMetadata(){return this.appMetadataManager.removeAllAppMetadata()}async getPermissions(){return this.permissionManager.getPermissions()}async getPermission(e){return this.permissionManager.getPermission(e)}async removePermission(e){return this.permissionManager.removePermission(e)}async removeAllPermissions(){return this.permissionManager.removeAllPermissions()}async getPeerInfo(e){const t=await dL(e.publicKey);return e instanceof YM?new XM(e.id,e.name,e.publicKey,e.version,t):e instanceof VM?new qM(e.id,e.name,e.publicKey,e.version,e.relayServer,t):e instanceof QM?new QM(e.id,e.name,e.publicKey,e.version,t,e.uri):{...e,senderId:t}}async addPeer(e,t=!0){return(await this.transport).addPeer(await this.getPeerInfo(e),t)}async removePeer(e,t=!1){const r=(await this.transport).removePeer(e);return await this.removePermissionsForPeers([e]),t&&await this.sendDisconnectToPeer(e),r}async removeAllPeers(e=!1){const t=await(await this.transport).getPeers(),r=(await this.transport).removeAllPeers();if(await this.removePermissionsForPeers(t),e){const e=t.map((e=>this.sendDisconnectToPeer(e)));await Promise.all(e)}return r}async removePermissionsForPeers(e){const t=await this.permissionManager.getPermissions(),r=e.map((e=>e.senderId)),n=t.filter((e=>r.includes(e.appMetadata.senderId))).map((e=>e.accountIdentifier));await this.permissionManager.removePermissions(n)}async sendAcknowledgeResponse(e,t){const r={id:e.id,type:RM.Acknowledge};await iN.intercept({senderId:await dL(await this.beaconId),request:e,message:r,ownAppMetadata:await this.getOwnAppMetadata(),permissionManager:this.permissionManager,appMetadataManager:this.appMetadataManager,interceptorCallback:async e=>{await this.respondToMessage(e,t)}})}async respondToMessage(e,t){const r=await(new xL).serialize(e);if(t){const e=(await this.getPeers()).find((e=>e.publicKey===t.id));await(await this.transport).send(r,e)}else await(await this.transport).send(r)}async disconnect(e){const t=await this.transport,r=(await t.getPeers()).find((t=>t.senderId===e));r&&await this.removePeer(r)}}function sN(e){const{theme:t}=vn(),r=fP();return(0,n.useMemo)((()=>function(e,t){const r=r=>{var n;return{...t,...r,position:IA(null!=(n=null==r?void 0:r.position)?n:null==t?void 0:t.position,e)}},n=e=>{const t=r(e),n=XA(t);return GA.notify(n,t)};return n.update=(e,t)=>{GA.update(e,r(t))},n.promise=(e,t)=>{const r=n({...t.loading,status:"loading",duration:null});e.then((e=>n.update(r,{status:"success",duration:5e3,...w(t.success,e)}))).catch((e=>n.update(r,{status:"error",duration:5e3,...w(t.error,e)})))},n.closeAll=GA.closeAll,n.close=GA.close,n.isActive=GA.isActive,n}(t.direction,{...r,...e})),[e,t.direction,r])}var cN={initial:({offsetX:e,offsetY:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{opacity:0,x:e,y:t,transition:null!=(o=null==r?void 0:r.exit)?o:dI(lI.exit,i),transitionEnd:null==n?void 0:n.exit}},enter:({transition:e,transitionEnd:t,delay:r})=>{var n;return{opacity:1,x:0,y:0,transition:null!=(n=null==e?void 0:e.enter)?n:uI(lI.enter,r),transitionEnd:null==t?void 0:t.enter}},exit:({offsetY:e,offsetX:t,transition:r,transitionEnd:n,reverse:i,delay:o})=>{var a;const s={x:t,y:e};return{opacity:0,transition:null!=(a=null==r?void 0:r.exit)?a:dI(lI.exit,o),...i?{...s,transitionEnd:null==n?void 0:n.exit}:{transitionEnd:{...s,...null==n?void 0:n.exit}}}}},lN={initial:"initial",animate:"enter",exit:"exit",variants:cN},uN=(0,n.forwardRef)((function(e,t){const{unmountOnExit:r,in:n,reverse:i=!0,className:o,offsetX:a=0,offsetY:s=8,transition:c,transitionEnd:l,delay:u,...d}=e,h=!r||n&&r,f=n||r?"enter":"exit",p={offsetX:a,offsetY:s,reverse:i,transition:c,transitionEnd:l,delay:u};return(0,ln.jsx)(iP,{custom:p,children:h&&(0,ln.jsx)(CA.div,{ref:t,className:v("chakra-offset-slide",o),custom:p,...lN,animate:f,...d})})}));uN.displayName="SlideFade";var dN={exit:({reverse:e,initialScale:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{opacity:0,...e?{scale:t,transitionEnd:null==n?void 0:n.exit}:{transitionEnd:{scale:t,...null==n?void 0:n.exit}},transition:null!=(o=null==r?void 0:r.exit)?o:dI(lI.exit,i)}},enter:({transitionEnd:e,transition:t,delay:r})=>{var n;return{opacity:1,scale:1,transition:null!=(n=null==t?void 0:t.enter)?n:uI(lI.enter,r),transitionEnd:null==e?void 0:e.enter}}},hN={initial:"exit",animate:"enter",exit:"exit",variants:dN},fN=(0,n.forwardRef)((function(e,t){const{unmountOnExit:r,in:n,reverse:i=!0,initialScale:o=.95,className:a,transition:s,transitionEnd:c,delay:l,...u}=e,d=!r||n&&r,h=n||r?"enter":"exit",f={initialScale:o,reverse:i,transition:s,transitionEnd:c,delay:l};return(0,ln.jsx)(iP,{custom:f,children:d&&(0,ln.jsx)(CA.div,{ref:t,className:v("chakra-offset-slide",a),...hN,animate:h,custom:f,...u})})}));fN.displayName="ScaleFade";var pN={slideInBottom:{...lN,custom:{offsetY:16,reverse:!0}},slideInRight:{...lN,custom:{offsetX:16,reverse:!0}},slideInTop:{...lN,custom:{offsetY:-16,reverse:!0}},slideInLeft:{...lN,custom:{offsetX:-16,reverse:!0}},scale:{...hN,custom:{initialScale:.95,reverse:!0}},none:{}},mN=cn(CA.section),gN=e=>pN[e||"none"],vN=(0,n.forwardRef)(((e,t)=>{const{preset:r,motionProps:n=gN(r),...i}=e;return(0,ln.jsx)(mN,{ref:t,...n,...i})}));function yN(){return yN=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0})).sort(ZN)},XN=["button:enabled","select:enabled","textarea:enabled","input:enabled","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]","[tabindex]","[contenteditable]","[autofocus]"].join(","),JN="".concat(XN,", [data-focus-guard]"),QN=function(e,t){return MN((e.shadowRoot||e).children).reduce((function(e,r){return e.concat(r.matches(t?JN:XN)?[r]:[],QN(r))}),[])},eD=function(e,t){return e.reduce((function(e,r){var n,i=QN(r,t),o=(n=[]).concat.apply(n,i.map((function(e){return function(e,t){var r;return e instanceof HTMLIFrameElement&&(null===(r=e.contentDocument)||void 0===r?void 0:r.body)?eD([e.contentDocument.body],t):[e]}(e,t)})));return e.concat(o,r.parentNode?MN(r.parentNode.querySelectorAll(XN)).filter((function(e){return e===r})):[])}),[])},tD=function(e,t){return MN(e).filter((function(e){return UN(t,e)})).filter((function(e){return function(e){return!((HN(e)||function(e){return"BUTTON"===e.tagName}(e))&&("hidden"===e.type||e.disabled))}(e)}))},rD=function(e,t){return void 0===t&&(t=new Map),MN(e).filter((function(e){return FN(t,e)}))},nD=function(e,t,r){return YN(tD(eD(e,r),t),!0,r)},iD=function(e,t){return YN(tD(eD(e),t),!1)},oD=function(e,t){return tD(function(e){var t=e.querySelectorAll("[".concat("data-autofocus-inside","]"));return MN(t).map((function(e){return eD([e])})).reduce((function(e,t){return e.concat(t)}),[])}(e),t)},aD=function(e,t){return e.shadowRoot?aD(e.shadowRoot,t):!(void 0===Object.getPrototypeOf(e).contains||!Object.getPrototypeOf(e).contains.call(e,t))||MN(e.children).some((function(e){var r;if(e instanceof HTMLIFrameElement){var n=null===(r=e.contentDocument)||void 0===r?void 0:r.body;return!!n&&aD(n,t)}return aD(e,t)}))},sD=function(e){if(void 0===e&&(e=document),e&&e.activeElement){var t=e.activeElement;return t.shadowRoot?sD(t.shadowRoot):t instanceof HTMLIFrameElement&&function(e){try{return e()}catch(t){return}}((function(){return t.contentWindow.document}))?sD(t.contentWindow.document):t}},cD=function(e){return e.parentNode?cD(e.parentNode):e},lD=function(e){return LN(e).filter(Boolean).reduce((function(e,t){var r=t.getAttribute(bN);return e.push.apply(e,r?function(e){for(var t=new Set,r=e.length,n=0;n0&&t.add(i),(o&Node.DOCUMENT_POSITION_CONTAINS)>0&&t.add(n)}return e.filter((function(e,r){return!t.has(r)}))}(MN(cD(t).querySelectorAll("[".concat(bN,'="').concat(r,'"]:not([').concat(wN,'="disabled"])')))):[t]),e}),[])},uD=function(e,t){return void 0===t&&(t=sD(NN(e).ownerDocument)),!(!t||t.dataset&&t.dataset.focusGuard)&&lD(e).some((function(e){return aD(e,t)||function(e,t){return Boolean(MN(e.querySelectorAll("iframe")).some((function(e){return function(e,t){return e===t}(e,t)})))}(e,t)}))},dD=function(e,t){return VN(e)&&e.name?function(e,t){return t.filter(VN).filter((function(t){return t.name===e.name})).filter((function(e){return e.checked}))[0]||e}(e,t):e},hD=function(e){return e[0]&&e.length>1?dD(e[0],e):e[0]},fD=function(e,t){return e.length>1?e.indexOf(dD(e[t],e)):t},pD="NEW_FOCUS",mD=function(e,t,r,n){var i=e.length,o=e[0],a=e[i-1],s=KN(r);if(!(r&&e.indexOf(r)>=0)){var c=void 0!==r?t.indexOf(r):-1,l=n?t.indexOf(n):c,u=n?e.indexOf(n):-1,d=c-l,h=t.indexOf(o),f=t.indexOf(a),p=function(e){var t=new Set;return e.forEach((function(r){return t.add(dD(r,e))})),e.filter((function(e){return t.has(e)}))}(t),m=(void 0!==r?p.indexOf(r):-1)-(n?p.indexOf(n):c),g=fD(e,0),v=fD(e,i-1);return-1===c||-1===u?pD:!d&&u>=0?u:c<=h&&s&&Math.abs(d)>1?v:c>=f&&s&&Math.abs(d)>1?g:d&&Math.abs(m)>1?u:c<=h?v:c>f?g:d?Math.abs(d)>1?u:(i+u+d)%i:void 0}},gD=function(e,t,r){var n,i=e.map((function(e){return e.node})),o=rD(i.filter((n=r,function(e){var t,r=null===(t=$N(e))||void 0===t?void 0:t.autofocus;return e.autofocus||void 0!==r&&"false"!==r||n.indexOf(e)>=0})));return o&&o.length?hD(o):hD(rD(t))},vD=function(e,t){return void 0===t&&(t=[]),t.push(e),e.parentNode&&vD(e.parentNode.host||e.parentNode,t),t},yD=function(e,t){for(var r=vD(e),n=vD(t),i=0;i=0)return o}return!1},bD=function(e,t,r){var n=LN(e),i=LN(t),o=n[0],a=!1;return i.filter(Boolean).forEach((function(e){a=yD(a||e,e)||a,r.filter(Boolean).forEach((function(e){var t=yD(o,e);t&&(a=!a||aD(t,a)?t:yD(t,a))}))})),a},wD=function(e,t){var r=sD(LN(e).length>0?document:NN(e).ownerDocument),n=lD(e).filter(WN),i=bD(r||e,e,n),o=new Map,a=iD(n,o),s=nD(n,o).filter((function(e){var t=e.node;return WN(t)}));if(s[0]||(s=a)[0]){var c=iD([i],o).map((function(e){return e.node})),l=function(e,t){var r=new Map;return t.forEach((function(e){return r.set(e.node,e)})),e.map((function(e){return r.get(e)})).filter(GN)}(c,s),u=l.map((function(e){return e.node})),d=mD(u,c,r,t);if(d===pD){var h=gD(a,u,function(e,t){return e.reduce((function(e,r){return e.concat(oD(r,t))}),[])}(n,o));return h?{node:h}:void console.warn("focus-lock: cannot find any node to move focus into")}return void 0===d?d:l[d]}},xD=0,_D=!1,SD=function(e,t,r){void 0===r&&(r={});var n,i,o=wD(e,t);if(!_D&&o){if(xD>2)return console.error("FocusLock: focus-fighting detected. Only one focus management system could be active. See https://github.com/theKashey/focus-lock/#focus-fighting"),_D=!0,void setTimeout((function(){_D=!1}),1);xD++,n=o.node,i=r.focusOptions,"focus"in n&&n.focus(i),"contentWindow"in n&&n.contentWindow&&n.contentWindow.focus(),xD--}};function kD(e){setTimeout(e,1)}var ED=function(){return document&&document.activeElement===document.body||function(e){void 0===e&&(e=document);var t=sD(e);return!!t&&MN(e.querySelectorAll("[".concat("data-no-focus-lock","]"))).some((function(e){return aD(e,t)}))}()},AD=null,PD=null,OD=null,TD=!1,CD=function(){return!0};function jD(e,t,r,n){var i=null,o=e;do{var a=n[o];if(a.guard)a.node.dataset.focusAutoGuard&&(i=a);else{if(!a.lockItem)break;if(o!==e)return;i=null}}while((o+=r)!==t);i&&(i.node.tabIndex=0)}var RD=function(e){return e&&"current"in e?e.current:e},ID=function e(t,r,n){return r&&(r.host===t&&(!r.activeElement||n.contains(r.activeElement))||r.parentNode&&e(t,r.parentNode,n))},MD=function(){var e,t=!1;if(AD){var r=AD,n=r.observed,i=r.persistentFocus,o=r.autoFocus,a=r.shards,s=r.crossFrame,c=r.focusOptions,l=n||OD&&OD.portaledElement,u=document&&document.activeElement;if(l){var d=[l].concat(a.map(RD).filter(Boolean));if(u&&!function(e){return(AD.whiteList||CD)(e)}(u)||(i||(s?Boolean(TD):"meanwhile"===TD)||!ED()||!PD&&o)&&(l&&!(uD(d)||u&&function(e,t){return t.some((function(t){return ID(e,t,t)}))}(u,d)||(e=u,OD&&OD.portaledElement===e))&&(document&&!PD&&u&&!o?(u.blur&&u.blur(),document.body.focus()):(t=SD(d,PD,{focusOptions:c}),OD={})),TD=!1,PD=document&&document.activeElement),document){var h=document&&document.activeElement,f=function(e){var t=lD(e).filter(WN),r=bD(e,e,t),n=new Map,i=nD([r],n,!0),o=nD(t,n).filter((function(e){var t=e.node;return WN(t)})).map((function(e){return e.node}));return i.map((function(e){var t=e.node;return{node:t,index:e.index,lockItem:o.indexOf(t)>=0,guard:KN(t)}}))}(d),p=f.map((function(e){return e.node})).indexOf(h);p>-1&&(f.filter((function(e){var t=e.guard,r=e.node;return t&&r.dataset.focusAutoGuard})).forEach((function(e){return e.node.removeAttribute("tabIndex")})),jD(p,f.length,1,f),jD(p,-1,-1,f))}}}return t},LD=function(e){MD()&&e&&(e.stopPropagation(),e.preventDefault())},ND=function(){return kD(MD)},DD=function(e){var t=e.target,r=e.currentTarget;r.contains(t)||(OD={observerNode:r,portaledElement:t})},zD=function(){TD="just",kD((function(){TD="meanwhile"}))};SN.assignSyncMedium(DD),kN.assignMedium(ND),EN.assignMedium((function(e){return e({moveFocusInside:SD,focusInside:uD})}));const BD=IN((function(e){return e.filter((function(e){return!e.disabled}))}),(function(e){var t=e.slice(-1)[0];t&&!AD&&(document.addEventListener("focusin",LD),document.addEventListener("focusout",ND),window.addEventListener("blur",zD));var r=AD,n=r&&t&&t.id===r.id;AD=t,r&&!n&&(r.onDeactivation(),e.filter((function(e){return e.id===r.id})).length||r.returnFocus(!t)),t?(PD=null,n&&r.observed===t.observed||t.onActivation(),MD(),kD(MD)):(document.removeEventListener("focusin",LD),document.removeEventListener("focusout",ND),window.removeEventListener("blur",zD),PD=null)}))((function(){return null}));var UD=n.forwardRef((function(e,t){return n.createElement(TN,yN({sideCar:BD,ref:t},e))})),FD=TN.propTypes||{};FD.sideCar,function(e,t){if(null==e)return{};var r,n,i={},o=Object.keys(e);for(n=0;n=0||(i[r]=e[r])}(FD,["sideCar"]);UD.propTypes={};const $D=UD;function HD(e){return null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function VD(e){var t;if(!HD(e))return!1;return e instanceof(null!=(t=e.ownerDocument.defaultView)?t:window).HTMLElement}function qD(e){return HD(e)?e.ownerDocument:document}var KD=e=>e.hasAttribute("tabindex"),WD=e=>KD(e)&&-1===e.tabIndex;function GD(e){return!(!e.parentElement||!GD(e.parentElement))||e.hidden}function ZD(e){if(!VD(e)||GD(e)||function(e){return!0===Boolean(e.getAttribute("disabled"))||!0===Boolean(e.getAttribute("aria-disabled"))}(e))return!1;const{localName:t}=e;if(["input","select","textarea","button"].indexOf(t)>=0)return!0;const r={a:()=>e.hasAttribute("href"),audio:()=>e.hasAttribute("controls"),video:()=>e.hasAttribute("controls")};return t in r?r[t]():!!function(e){const t=e.getAttribute("contenteditable");return"false"!==t&&null!=t}(e)||KD(e)}var YD,XD=["input:not(:disabled):not([disabled])","select:not(:disabled):not([disabled])","textarea:not(:disabled):not([disabled])","embed","iframe","object","a[href]","area[href]","button:not(:disabled):not([disabled])","[tabindex]","audio[controls]","video[controls]","*[tabindex]:not([aria-disabled])","*[contenteditable]"].join(),JD=e=>e.offsetWidth>0&&e.offsetHeight>0;function QD(e){const t=Array.from(e.querySelectorAll(XD));return t.unshift(e),t.filter((e=>ZD(e)&&JD(e)))}var ez=null!=(YD=$D.default)?YD:$D,tz=e=>{const{initialFocusRef:t,finalFocusRef:r,contentRef:i,restoreFocus:o,children:a,isDisabled:s,autoFocus:c,persistentFocus:l,lockFocusAcrossFrames:u}=e,d=(0,n.useCallback)((()=>{if(null==t?void 0:t.current)t.current.focus();else if(null==i?void 0:i.current){0===QD(i.current).length&&requestAnimationFrame((()=>{var e;null==(e=i.current)||e.focus()}))}}),[t,i]),h=(0,n.useCallback)((()=>{var e;null==(e=null==r?void 0:r.current)||e.focus()}),[r]),f=o&&!r;return(0,ln.jsx)(ez,{crossFrame:u,persistentFocus:l,autoFocus:c,disabled:s,onActivation:d,onDeactivation:h,returnFocus:f,children:a})};tz.displayName="FocusLock";function rz(e){const{autoFocus:t,trapFocus:r,dialogRef:i,initialFocusRef:o,blockScrollOnMount:a,allowPinchZoom:s,finalFocusRef:c,returnFocusOnClose:l,preserveScrollBarGap:u,lockFocusAcrossFrames:d,isOpen:h}=tI(),[f,p]=vb();(0,n.useEffect)((()=>{!f&&p&&setTimeout(p)}),[f,p]);const m=$R(i,h);return(0,ln.jsx)(tz,{autoFocus:t,isDisabled:!r,initialFocusRef:o,finalFocusRef:c,restoreFocus:l,contentRef:i,lockFocusAcrossFrames:d,children:(0,ln.jsx)(fM,{removeScrollBar:!u,allowPinchZoom:s,enabled:1===m&&a,forwardProps:!0,children:e.children})})}var nz=g(((e,t)=>{const{className:r,children:n,containerProps:i,motionProps:o,...a}=e,{getDialogProps:s,getDialogContainerProps:c}=tI(),l=s(a,t),u=c(i),d=v("chakra-modal__content",r),h=QR(),f={display:"flex",flexDirection:"column",position:"relative",width:"100%",outline:0,...h.dialog},p={display:"flex",width:"100vw",height:"$100vh",position:"fixed",left:0,top:0,...h.dialogContainer},{motionPreset:m}=tI();return(0,ln.jsx)(rz,{children:(0,ln.jsx)(cn.div,{...u,className:"chakra-modal__content-container",tabIndex:-1,__css:p,children:(0,ln.jsx)(vN,{preset:m,motionProps:o,className:d,...l,__css:f,children:n})})})}));nz.displayName="ModalContent";var iz=g(((e,t)=>{const{className:r,...i}=e,{headerId:o,setHeaderMounted:a}=tI();(0,n.useEffect)((()=>(a(!0),()=>a(!1))),[a]);const s=v("chakra-modal__header",r),c={flex:0,...QR().header};return(0,ln.jsx)(cn.header,{ref:t,className:s,id:o,...i,__css:c})}));function oz(e){const t=Object.assign({},e);for(let r in t)void 0===t[r]&&delete t[r];return t}iz.displayName="ModalHeader";var az=g((function(e,t){const r=xn("Text",e),{className:n,align:i,decoration:o,casing:a,...s}=ht(e),c=oz({textAlign:e.align,textDecoration:e.decoration,textTransform:e.casing});return(0,ln.jsx)(cn.p,{ref:t,className:v("chakra-text",e.className),...c,...s,__css:r})}));az.displayName="Text";var sz=g(((e,t)=>{const{onClick:r,className:n,...i}=e,{onClose:o}=tI(),a=v("chakra-modal__close-btn",n),s=QR();return(0,ln.jsx)(WA,{ref:t,__css:s.closeButton,className:a,onClick:k(r,(e=>{e.stopPropagation(),o()})),...i})}));sz.displayName="ModalCloseButton";var cz=g(((e,t)=>{const{className:r,...i}=e,{bodyId:o,setBodyMounted:a}=tI();(0,n.useEffect)((()=>(a(!0),()=>a(!1))),[a]);const s=v("chakra-modal__body",r),c=QR();return(0,ln.jsx)(cn.div,{ref:t,className:s,id:o,...i,__css:c.body})}));cz.displayName="ModalBody";Object.freeze(["base","sm","md","lg","xl","2xl"]);function lz(e,t){return Array.isArray(e)?e.map((e=>null===e?null:t(e))):y(e)?Object.keys(e).reduce(((r,n)=>(r[n]=t(e[n]),r)),{}):null!=e?t(e):null}var uz=g((function(e,t){const{ratio:r=4/3,children:i,className:o,...a}=e,s=n.Children.only(i),c=v("chakra-aspect-ratio",o);return(0,ln.jsx)(cn.div,{ref:t,position:"relative",className:c,_before:{height:0,content:'""',display:"block",paddingBottom:lz(r,(e=>1/e*100+"%"))},__css:{"& > *:not(style)":{overflow:"hidden",position:"absolute",top:"0",right:"0",bottom:"0",left:"0",display:"flex",justifyContent:"center",alignItems:"center",width:"100%",height:"100%"},"& > img, & > video":{objectFit:"cover"}},...a,children:s})}));uz.displayName="AspectRatio";var dz=Object.defineProperty,hz=(e,t,r)=>(((e,t,r)=>{t in e?dz(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r})(e,"symbol"!==typeof t?t+"":t,r),r);function fz(e){return e.sort(((e,t)=>{const r=e.compareDocumentPosition(t);if(r&Node.DOCUMENT_POSITION_FOLLOWING||r&Node.DOCUMENT_POSITION_CONTAINED_BY)return-1;if(r&Node.DOCUMENT_POSITION_PRECEDING||r&Node.DOCUMENT_POSITION_CONTAINS)return 1;if(r&Node.DOCUMENT_POSITION_DISCONNECTED||r&Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC)throw Error("Cannot sort the given nodes.");return 0}))}function pz(e,t,r){let n=e+1;return r&&n>=t&&(n=0),n}function mz(e,t,r){let n=e-1;return r&&n<0&&(n=t),n}var gz="undefined"!==typeof window?n.useLayoutEffect:n.useEffect,vz=e=>e,yz=class{constructor(){hz(this,"descendants",new Map),hz(this,"register",(e=>{var t;if(null!=e)return"object"==typeof(t=e)&&"nodeType"in t&&t.nodeType===Node.ELEMENT_NODE?this.registerNode(e):t=>{this.registerNode(t,e)}})),hz(this,"unregister",(e=>{this.descendants.delete(e);const t=fz(Array.from(this.descendants.keys()));this.assignIndex(t)})),hz(this,"destroy",(()=>{this.descendants.clear()})),hz(this,"assignIndex",(e=>{this.descendants.forEach((t=>{const r=e.indexOf(t.node);t.index=r,t.node.dataset.index=t.index.toString()}))})),hz(this,"count",(()=>this.descendants.size)),hz(this,"enabledCount",(()=>this.enabledValues().length)),hz(this,"values",(()=>Array.from(this.descendants.values()).sort(((e,t)=>e.index-t.index)))),hz(this,"enabledValues",(()=>this.values().filter((e=>!e.disabled)))),hz(this,"item",(e=>{if(0!==this.count())return this.values()[e]})),hz(this,"enabledItem",(e=>{if(0!==this.enabledCount())return this.enabledValues()[e]})),hz(this,"first",(()=>this.item(0))),hz(this,"firstEnabled",(()=>this.enabledItem(0))),hz(this,"last",(()=>this.item(this.descendants.size-1))),hz(this,"lastEnabled",(()=>{const e=this.enabledValues().length-1;return this.enabledItem(e)})),hz(this,"indexOf",(e=>{var t,r;return e&&null!=(r=null==(t=this.descendants.get(e))?void 0:t.index)?r:-1})),hz(this,"enabledIndexOf",(e=>null==e?-1:this.enabledValues().findIndex((t=>t.node.isSameNode(e))))),hz(this,"next",((e,t=!0)=>{const r=pz(e,this.count(),t);return this.item(r)})),hz(this,"nextEnabled",((e,t=!0)=>{const r=this.item(e);if(!r)return;const n=pz(this.enabledIndexOf(r.node),this.enabledCount(),t);return this.enabledItem(n)})),hz(this,"prev",((e,t=!0)=>{const r=mz(e,this.count()-1,t);return this.item(r)})),hz(this,"prevEnabled",((e,t=!0)=>{const r=this.item(e);if(!r)return;const n=mz(this.enabledIndexOf(r.node),this.enabledCount()-1,t);return this.enabledItem(n)})),hz(this,"registerNode",((e,t)=>{if(!e||this.descendants.has(e))return;const r=fz(Array.from(this.descendants.keys()).concat(e));(null==t?void 0:t.disabled)&&(t.disabled=!!t.disabled);const n={node:e,index:-1,...t};this.descendants.set(e,n),this.assignIndex(r)}))}};var[bz,wz]=kn({name:"DescendantsProvider",errorMessage:"useDescendantsContext must be used within DescendantsProvider"});function xz(){return[vz(bz),()=>vz(wz()),()=>function(){const e=(0,n.useRef)(new yz);return gz((()=>()=>e.current.destroy())),e.current}(),e=>function(e){const t=wz(),[r,i]=(0,n.useState)(-1),o=(0,n.useRef)(null);gz((()=>()=>{o.current&&t.unregister(o.current)}),[]),gz((()=>{if(!o.current)return;const e=Number(o.current.dataset.index);r==e||Number.isNaN(e)||i(e)}));const a=vz(e?t.register(e):t.register);return{descendants:t,index:r,enabledIndex:t.enabledIndexOf(o.current),register:Mn(a,o)}}(e)]}var[_z,Sz]=kn({name:"AccordionStylesContext",hookName:"useAccordionStyles",providerName:""}),[kz,Ez]=kn({name:"AccordionItemContext",hookName:"useAccordionItemContext",providerName:""}),[Az,Pz,Oz,Tz]=xz();function Cz(e){const{value:t,defaultValue:r,onChange:i,shouldUpdate:o=((e,t)=>e!==t)}=e,a=pb(i),s=pb(o),[c,l]=(0,n.useState)(r),u=void 0!==t,d=u?t:c,h=pb((e=>{const t="function"===typeof e?e(d):e;s(d,t)&&(u||l(t),a(t))}),[u,a,d,s]);return[d,h]}function jz(e){const{onChange:t,defaultIndex:r,index:i,allowMultiple:o,allowToggle:a,...s}=e;!function(e){const t=e.index||e.defaultIndex,r=null!=t&&!Array.isArray(t)&&e.allowMultiple;b({condition:!!r,message:`If 'allowMultiple' is passed, then 'index' or 'defaultIndex' must be an array. You passed: ${typeof t},`})}(e),function(e){b({condition:!(!e.allowMultiple||!e.allowToggle),message:"If 'allowMultiple' is passed, 'allowToggle' will be ignored. Either remove 'allowToggle' or 'allowMultiple' depending on whether you want multiple accordions visible or not"})}(e);const c=Oz(),[l,u]=(0,n.useState)(-1);(0,n.useEffect)((()=>()=>{u(-1)}),[]);const[d,h]=Cz({value:i,defaultValue:()=>o?null!=r?r:[]:null!=r?r:-1,onChange:t});return{index:d,setIndex:h,htmlProps:s,getAccordionItemProps:e=>{let t=!1;null!==e&&(t=Array.isArray(d)?d.includes(e):d===e);return{isOpen:t,onChange:t=>{if(null!==e)if(o&&Array.isArray(d)){const r=t?d.concat(e):d.filter((t=>t!==e));h(r)}else t?h(e):a&&h(-1)}}},focusedIndex:l,setFocusedIndex:u,descendants:c}}var[Rz,Iz]=kn({name:"AccordionContext",hookName:"useAccordionContext",providerName:"Accordion"});function Mz(e){const{isDisabled:t,isFocusable:r,id:i,...o}=e,{getAccordionItemProps:a,setFocusedIndex:s}=Iz(),c=(0,n.useRef)(null),l=(0,n.useId)(),u=null!=i?i:l,d=`accordion-button-${u}`,h=`accordion-panel-${u}`;!function(e){b({condition:!(!e.isFocusable||e.isDisabled),message:"Using only 'isFocusable', this prop is reserved for situations where you pass 'isDisabled' but you still want the element to receive focus (A11y). Either remove it or pass 'isDisabled' as well.\n "})}(e);const{register:f,index:p,descendants:m}=Tz({disabled:t&&!r}),{isOpen:g,onChange:v}=a(-1===p?null:p);!function(e){b({condition:e.isOpen&&!!e.isDisabled,message:"Cannot open a disabled accordion item"})}({isOpen:g,isDisabled:t});const y=(0,n.useCallback)((()=>{null==v||v(!g),s(p)}),[p,s,g,v]),w=(0,n.useCallback)((e=>{const t={ArrowDown:()=>{const e=m.nextEnabled(p);null==e||e.node.focus()},ArrowUp:()=>{const e=m.prevEnabled(p);null==e||e.node.focus()},Home:()=>{const e=m.firstEnabled();null==e||e.node.focus()},End:()=>{const e=m.lastEnabled();null==e||e.node.focus()}},r=t[e.key];r&&(e.preventDefault(),r(e))}),[m,p]),x=(0,n.useCallback)((()=>{s(p)}),[s,p]),_=(0,n.useCallback)((function(e={},r=null){return{...e,type:"button",ref:Mn(f,c,r),id:d,disabled:!!t,"aria-expanded":!!g,"aria-controls":h,onClick:k(e.onClick,y),onFocus:k(e.onFocus,x),onKeyDown:k(e.onKeyDown,w)}}),[d,t,g,y,x,w,h,f]),S=(0,n.useCallback)((function(e={},t=null){return{...e,ref:t,role:"region",id:h,"aria-labelledby":d,hidden:!g}}),[d,g,h]);return{isOpen:g,isDisabled:t,isFocusable:r,onOpen:()=>{null==v||v(!0)},onClose:()=>{null==v||v(!1)},getButtonProps:_,getPanelProps:S,htmlProps:o}}var Lz=g((function({children:e,reduceMotion:t,...r},i){const o=_n("Accordion",r),a=ht(r),{htmlProps:s,descendants:c,...l}=jz(a),u=(0,n.useMemo)((()=>({...l,reduceMotion:!!t})),[l,t]);return(0,ln.jsx)(Az,{value:c,children:(0,ln.jsx)(Rz,{value:u,children:(0,ln.jsx)(_z,{value:o,children:(0,ln.jsx)(cn.div,{ref:i,...s,className:v("chakra-accordion",r.className),__css:o.root,children:e})})})})}));Lz.displayName="Accordion";var Nz=g((function(e,t){const{children:r,className:i}=e,{htmlProps:o,...a}=Mz(e),s={...Sz().container,overflowAnchor:"none"},c=(0,n.useMemo)((()=>a),[a]);return(0,ln.jsx)(kz,{value:c,children:(0,ln.jsx)(cn.div,{ref:t,...o,className:v("chakra-accordion__item",i),__css:s,children:"function"===typeof r?r({isExpanded:!!a.isOpen,isDisabled:!!a.isDisabled}):r})})}));Nz.displayName="AccordionItem";var Dz=g((function(e,t){const{getButtonProps:r}=Ez(),n=r(e,t),i={display:"flex",alignItems:"center",width:"100%",outline:0,...Sz().button};return(0,ln.jsx)(cn.button,{...n,className:v("chakra-accordion__button",e.className),__css:i})}));function zz(e){const{isOpen:t,isDisabled:r}=Ez(),{reduceMotion:n}=Iz(),i=v("chakra-accordion__icon",e.className),o={opacity:r?.4:1,transform:t?"rotate(-180deg)":void 0,transition:n?void 0:"transform 0.2s",transformOrigin:"center",...Sz().icon};return(0,ln.jsx)(LA,{viewBox:"0 0 24 24","aria-hidden":!0,className:i,__css:o,...e,children:(0,ln.jsx)("path",{fill:"currentColor",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"})})}Dz.displayName="AccordionButton",zz.displayName="AccordionIcon";var Bz=e=>null!=e&&parseInt(e.toString(),10)>0,Uz={exit:{height:{duration:.2,ease:nI.ease},opacity:{duration:.3,ease:nI.ease}},enter:{height:{duration:.3,ease:nI.ease},opacity:{duration:.4,ease:nI.ease}}},Fz={exit:({animateOpacity:e,startingHeight:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{...e&&{opacity:Bz(t)?1:0},height:t,transitionEnd:null==n?void 0:n.exit,transition:null!=(o=null==r?void 0:r.exit)?o:dI(Uz.exit,i)}},enter:({animateOpacity:e,endingHeight:t,transition:r,transitionEnd:n,delay:i})=>{var o;return{...e&&{opacity:1},height:t,transitionEnd:null==n?void 0:n.enter,transition:null!=(o=null==r?void 0:r.enter)?o:uI(Uz.enter,i)}}},$z=(0,n.forwardRef)(((e,t)=>{const{in:r,unmountOnExit:i,animateOpacity:o=!0,startingHeight:a=0,endingHeight:s="auto",style:c,className:l,transition:u,transitionEnd:d,...h}=e,[f,p]=(0,n.useState)(!1);(0,n.useEffect)((()=>{const e=setTimeout((()=>{p(!0)}));return()=>clearTimeout(e)}),[]),b({condition:Number(a)>0&&!!i,message:"startingHeight and unmountOnExit are mutually exclusive. You can't use them together"});const m=parseFloat(a.toString())>0,g={startingHeight:a,endingHeight:s,animateOpacity:o,transition:f?u:{enter:{duration:0}},transitionEnd:{enter:null==d?void 0:d.enter,exit:i?null==d?void 0:d.exit:{...null==d?void 0:d.exit,display:m?"block":"none"}}},y=!i||r,w=r||i?"enter":"exit";return(0,ln.jsx)(iP,{initial:!1,custom:g,children:y&&(0,ln.jsx)(CA.div,{ref:t,...h,className:v("chakra-collapse",l),style:{overflow:"hidden",display:"block",...c},custom:g,variants:Fz,initial:!!i&&"exit",animate:w,exit:"exit"})})}));$z.displayName="Collapse";var Hz=g((function(e,t){const{className:r,motionProps:n,...i}=e,{reduceMotion:o}=Iz(),{getPanelProps:a,isOpen:s}=Ez(),c=a(i,t),l=v("chakra-accordion__panel",r),u=Sz();o||delete c.hidden;const d=(0,ln.jsx)(cn.div,{...c,__css:u.panel,className:l});return o?d:(0,ln.jsx)($z,{in:s,...n,children:d})}));Hz.displayName="AccordionPanel";var[Vz,qz]=kn({name:"FormControlStylesContext",errorMessage:"useFormControlStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),[Kz,Wz]=kn({strict:!1,name:"FormControlContext"});var Gz=g((function(e,t){const r=_n("Form",e),i=ht(e),{getRootProps:o,htmlProps:a,...s}=function(e){const{id:t,isRequired:r,isInvalid:i,isDisabled:o,isReadOnly:a,...s}=e,c=(0,n.useId)(),l=t||`field-${c}`,u=`${l}-label`,d=`${l}-feedback`,h=`${l}-helptext`,[f,p]=(0,n.useState)(!1),[m,g]=(0,n.useState)(!1),[v,y]=(0,n.useState)(!1),b=(0,n.useCallback)(((e={},t=null)=>({id:h,...e,ref:Mn(t,(e=>{e&&g(!0)}))})),[h]),w=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,"data-focus":_(v),"data-disabled":_(o),"data-invalid":_(i),"data-readonly":_(a),id:void 0!==e.id?e.id:u,htmlFor:void 0!==e.htmlFor?e.htmlFor:l})),[l,o,v,i,a,u]),x=(0,n.useCallback)(((e={},t=null)=>({id:d,...e,ref:Mn(t,(e=>{e&&p(!0)})),"aria-live":"polite"})),[d]),S=(0,n.useCallback)(((e={},t=null)=>({...e,...s,ref:t,role:"group","data-focus":_(v),"data-disabled":_(o),"data-invalid":_(i),"data-readonly":_(a)})),[s,o,v,i,a]),k=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,role:"presentation","aria-hidden":!0,children:e.children||"*"})),[]);return{isRequired:!!r,isInvalid:!!i,isReadOnly:!!a,isDisabled:!!o,isFocused:!!v,onFocus:()=>y(!0),onBlur:()=>y(!1),hasFeedbackText:f,setHasFeedbackText:p,hasHelpText:m,setHasHelpText:g,id:l,labelId:u,feedbackId:d,helpTextId:h,htmlProps:s,getHelpTextProps:b,getErrorMessageProps:x,getRootProps:S,getLabelProps:w,getRequiredIndicatorProps:k}}(i),c=v("chakra-form-control",e.className);return(0,ln.jsx)(Kz,{value:s,children:(0,ln.jsx)(Vz,{value:r,children:(0,ln.jsx)(cn.div,{...o({},t),className:c,__css:r.container})})})}));Gz.displayName="FormControl";var Zz=g((function(e,t){const r=Wz(),n=qz(),i=v("chakra-form__helper-text",e.className);return(0,ln.jsx)(cn.div,{...null==r?void 0:r.getHelpTextProps(e,t),__css:n.helperText,className:i})}));Zz.displayName="FormHelperText";var[Yz,Xz]=kn({name:"FormErrorStylesContext",errorMessage:"useFormErrorStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),Jz=g(((e,t)=>{const r=_n("FormError",e),n=ht(e),i=Wz();return(null==i?void 0:i.isInvalid)?(0,ln.jsx)(Yz,{value:r,children:(0,ln.jsx)(cn.div,{...null==i?void 0:i.getErrorMessageProps(n,t),className:v("chakra-form__error-message",e.className),__css:{display:"flex",alignItems:"center",...r.text}})}):null}));Jz.displayName="FormErrorMessage";var Qz=g(((e,t)=>{const r=Xz(),n=Wz();if(!(null==n?void 0:n.isInvalid))return null;const i=v("chakra-form__error-icon",e.className);return(0,ln.jsx)(LA,{ref:t,"aria-hidden":!0,...e,__css:r.icon,className:i,children:(0,ln.jsx)("path",{fill:"currentColor",d:"M11.983,0a12.206,12.206,0,0,0-8.51,3.653A11.8,11.8,0,0,0,0,12.207,11.779,11.779,0,0,0,11.8,24h.214A12.111,12.111,0,0,0,24,11.791h0A11.766,11.766,0,0,0,11.983,0ZM10.5,16.542a1.476,1.476,0,0,1,1.449-1.53h.027a1.527,1.527,0,0,1,1.523,1.47,1.475,1.475,0,0,1-1.449,1.53h-.027A1.529,1.529,0,0,1,10.5,16.542ZM11,12.5v-6a1,1,0,0,1,2,0v6a1,1,0,1,1-2,0Z"})})}));Qz.displayName="FormErrorIcon";var eB=g(((e,t)=>{const{className:r,...n}=e,i=v("chakra-modal__footer",r),o={display:"flex",alignItems:"center",justifyContent:"flex-end",...QR().footer};return(0,ln.jsx)(cn.footer,{ref:t,...n,__css:o,className:i})}));eB.displayName="ModalFooter";var tB=e=>"checkbox"===e.type,rB=e=>e instanceof Date,nB=e=>null==e;const iB=e=>"object"===typeof e;var oB=e=>!nB(e)&&!Array.isArray(e)&&iB(e)&&!rB(e),aB=e=>oB(e)&&e.target?tB(e.target)?e.target.checked:e.target.value:e,sB=(e,t)=>e.has((e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e)(t)),cB=e=>{const t=e.constructor&&e.constructor.prototype;return oB(t)&&t.hasOwnProperty("isPrototypeOf")},lB="undefined"!==typeof window&&"undefined"!==typeof window.HTMLElement&&"undefined"!==typeof document;function uB(e){let t;const r=Array.isArray(e);if(e instanceof Date)t=new Date(e);else if(e instanceof Set)t=new Set(e);else{if(lB&&(e instanceof Blob||e instanceof FileList)||!r&&!oB(e))return e;if(t=r?[]:{},r||cB(e))for(const r in e)e.hasOwnProperty(r)&&(t[r]=uB(e[r]));else t=e}return t}var dB=e=>Array.isArray(e)?e.filter(Boolean):[],hB=e=>void 0===e,fB=(e,t,r)=>{if(!t||!oB(e))return r;const n=dB(t.split(/[,[\].]+?/)).reduce(((e,t)=>nB(e)?e:e[t]),e);return hB(n)||n===e?hB(e[t])?r:e[t]:n},pB=e=>"boolean"===typeof e;const mB={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},gB={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},vB="max",yB="min",bB="maxLength",wB="minLength",xB="pattern",_B="required",SB="validate",kB=n.createContext(null),EB=()=>n.useContext(kB),AB=e=>{const{children:t,...r}=e;return n.createElement(kB.Provider,{value:r},t)};var PB=(e,t,r,n=!0)=>{const i={defaultValues:t._defaultValues};for(const o in e)Object.defineProperty(i,o,{get:()=>{const i=o;return t._proxyFormState[i]!==gB.all&&(t._proxyFormState[i]=!n||gB.all),r&&(r[i]=!0),e[i]}});return i},OB=e=>oB(e)&&!Object.keys(e).length,TB=(e,t,r,n)=>{r(e);const{name:i,...o}=e;return OB(o)||Object.keys(o).length>=Object.keys(t).length||Object.keys(o).find((e=>t[e]===(!n||gB.all)))},CB=e=>Array.isArray(e)?e:[e];function jB(e){const t=n.useRef(e);t.current=e,n.useEffect((()=>{const r=!e.disabled&&t.current.subject&&t.current.subject.subscribe({next:t.current.next});return()=>{r&&r.unsubscribe()}}),[e.disabled])}var RB=e=>"string"===typeof e,IB=(e,t,r,n,i)=>RB(e)?(n&&t.watch.add(e),fB(r,e,i)):Array.isArray(e)?e.map((e=>(n&&t.watch.add(e),fB(r,e)))):(n&&(t.watchAll=!0),r);var MB=e=>/^\w*$/.test(e),LB=e=>dB(e.replace(/["|']|\]/g,"").split(/\.|\[/));function NB(e,t,r){let n=-1;const i=MB(t)?[t]:LB(t),o=i.length,a=o-1;for(;++nt?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[n]:i||!0}}:{};const zB=(e,t,r)=>{for(const n of r||Object.keys(e)){const r=fB(e,n);if(r){const{_f:e,...n}=r;if(e&&t(e.name)){if(e.ref.focus){e.ref.focus();break}if(e.refs&&e.refs[0].focus){e.refs[0].focus();break}}else oB(n)&&zB(n,t)}}};var BB=()=>{const e="undefined"===typeof performance?Date.now():1e3*performance.now();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{const r=(16*Math.random()+e)%16|0;return("x"==t?r:3&r|8).toString(16)}))},UB=(e,t,r={})=>r.shouldFocus||hB(r.shouldFocus)?r.focusName||`${e}.${hB(r.focusIndex)?t:r.focusIndex}.`:"",FB=e=>({isOnSubmit:!e||e===gB.onSubmit,isOnBlur:e===gB.onBlur,isOnChange:e===gB.onChange,isOnAll:e===gB.all,isOnTouch:e===gB.onTouched}),$B=(e,t,r)=>!r&&(t.watchAll||t.watch.has(e)||[...t.watch].some((t=>e.startsWith(t)&&/^\.\w+/.test(e.slice(t.length))))),HB=(e,t,r)=>{const n=dB(fB(e,r));return NB(n,"root",t[r]),NB(e,r,n),e},VB=e=>"file"===e.type,qB=e=>"function"===typeof e,KB=e=>{if(!lB)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},WB=e=>RB(e),GB=e=>"radio"===e.type,ZB=e=>e instanceof RegExp;const YB={value:!1,isValid:!1},XB={value:!0,isValid:!0};var JB=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter((e=>e&&e.checked&&!e.disabled)).map((e=>e.value));return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!hB(e[0].attributes.value)?hB(e[0].value)||""===e[0].value?XB:{value:e[0].value,isValid:!0}:XB:YB}return YB};const QB={isValid:!1,value:null};var eU=e=>Array.isArray(e)?e.reduce(((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e),QB):QB;function tU(e,t,r="validate"){if(WB(e)||Array.isArray(e)&&e.every(WB)||pB(e)&&!e)return{type:r,message:WB(e)?e:"",ref:t}}var rU=e=>oB(e)&&!ZB(e)?e:{value:e,message:""},nU=async(e,t,r,n,i)=>{const{ref:o,refs:a,required:s,maxLength:c,minLength:l,min:u,max:d,pattern:h,validate:f,name:p,valueAsNumber:m,mount:g,disabled:v}=e._f,y=fB(t,p);if(!g||v)return{};const b=a?a[0]:o,w=e=>{n&&b.reportValidity&&(b.setCustomValidity(pB(e)?"":e||""),b.reportValidity())},x={},_=GB(o),S=tB(o),k=_||S,E=(m||VB(o))&&hB(o.value)&&hB(y)||KB(o)&&""===o.value||""===y||Array.isArray(y)&&!y.length,A=DB.bind(null,p,r,x),P=(e,t,r,n=bB,i=wB)=>{const a=e?t:r;x[p]={type:e?n:i,message:a,ref:o,...A(e?n:i,a)}};if(i?!Array.isArray(y)||!y.length:s&&(!k&&(E||nB(y))||pB(y)&&!y||S&&!JB(a).isValid||_&&!eU(a).isValid)){const{value:e,message:t}=WB(s)?{value:!!s,message:s}:rU(s);if(e&&(x[p]={type:_B,message:t,ref:b,...A(_B,t)},!r))return w(t),x}if(!E&&(!nB(u)||!nB(d))){let e,t;const n=rU(d),i=rU(u);if(nB(y)||isNaN(y)){const r=o.valueAsDate||new Date(y),a=e=>new Date((new Date).toDateString()+" "+e),s="time"==o.type,c="week"==o.type;RB(n.value)&&y&&(e=s?a(y)>a(n.value):c?y>n.value:r>new Date(n.value)),RB(i.value)&&y&&(t=s?a(y)n.value),nB(i.value)||(t=r+e.value,i=!nB(t.value)&&y.length<+t.value;if((n||i)&&(P(n,e.message,t.message),!r))return w(x[p].message),x}if(h&&!E&&RB(y)){const{value:e,message:t}=rU(h);if(ZB(e)&&!y.match(e)&&(x[p]={type:xB,message:t,ref:o,...A(xB,t)},!r))return w(t),x}if(f)if(qB(f)){const e=tU(await f(y,t),b);if(e&&(x[p]={...e,...A(SB,e.message)},!r))return w(e.message),x}else if(oB(f)){let e={};for(const n in f){if(!OB(e)&&!r)break;const i=tU(await f[n](y,t),b,n);i&&(e={...i,...A(n,i.message)},w(i.message),r&&(x[p]=e))}if(!OB(e)&&(x[p]={ref:b,...e},!r))return x}return w(!0),x};function iU(e,t){return[...e,...CB(t)]}var oU=e=>Array.isArray(e)?e.map((()=>{})):void 0;function aU(e,t,r){return[...e.slice(0,t),...CB(r),...e.slice(t)]}var sU=(e,t,r)=>Array.isArray(e)?(hB(e[r])&&(e[r]=void 0),e.splice(r,0,e.splice(t,1)[0]),e):[];function cU(e,t){return[...CB(t),...CB(e)]}var lU=(e,t)=>hB(t)?[]:function(e,t){let r=0;const n=[...e];for(const i of t)n.splice(i-r,1),r++;return dB(n).length?n:[]}(e,CB(t).sort(((e,t)=>e-t))),uU=(e,t,r)=>{e[t]=[e[r],e[r]=e[t]][0]};function dU(e,t){const r=Array.isArray(t)?t:MB(t)?[t]:LB(t),n=1===r.length?e:function(e,t){const r=t.slice(0,-1).length;let n=0;for(;n(e[t]=r,e);function fU(){let e=[];return{get observers(){return e},next:t=>{for(const r of e)r.next&&r.next(t)},subscribe:t=>(e.push(t),{unsubscribe:()=>{e=e.filter((e=>e!==t))}}),unsubscribe:()=>{e=[]}}}var pU=e=>nB(e)||!iB(e);function mU(e,t){if(pU(e)||pU(t))return e===t;if(rB(e)&&rB(t))return e.getTime()===t.getTime();const r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;for(const i of r){const r=e[i];if(!n.includes(i))return!1;if("ref"!==i){const e=t[i];if(rB(r)&&rB(e)||oB(r)&&oB(e)||Array.isArray(r)&&Array.isArray(e)?!mU(r,e):r!==e)return!1}}return!0}var gU=e=>"select-multiple"===e.type,vU=e=>GB(e)||tB(e),yU=e=>KB(e)&&e.isConnected,bU=e=>{for(const t in e)if(qB(e[t]))return!0;return!1};function wU(e,t={}){const r=Array.isArray(e);if(oB(e)||r)for(const n in e)Array.isArray(e[n])||oB(e[n])&&!bU(e[n])?(t[n]=Array.isArray(e[n])?[]:{},wU(e[n],t[n])):nB(e[n])||(t[n]=!0);return t}function xU(e,t,r){const n=Array.isArray(e);if(oB(e)||n)for(const i in e)Array.isArray(e[i])||oB(e[i])&&!bU(e[i])?hB(t)||pU(r[i])?r[i]=Array.isArray(e[i])?wU(e[i],[]):{...wU(e[i])}:xU(e[i],nB(t)?{}:t[i],r[i]):r[i]=!mU(e[i],t[i]);return r}var _U=(e,t)=>xU(e,t,wU(t)),SU=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:n})=>hB(e)?e:t?""===e?NaN:e?+e:e:r&&RB(e)?new Date(e):n?n(e):e;function kU(e){const t=e.ref;if(!(e.refs?e.refs.every((e=>e.disabled)):t.disabled))return VB(t)?t.files:GB(t)?eU(e.refs).value:gU(t)?[...t.selectedOptions].map((({value:e})=>e)):tB(t)?JB(e.refs).value:SU(hB(t.value)?e.ref.value:t.value,e)}var EU=(e,t,r,n)=>{const i={};for(const o of e){const e=fB(t,o);e&&NB(i,o,e._f)}return{criteriaMode:r,names:[...e],fields:i,shouldUseNativeValidation:n}},AU=e=>hB(e)?e:ZB(e)?e.source:oB(e)?ZB(e.value)?e.value.source:e.value:e,PU=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);function OU(e,t,r){const n=fB(e,r);if(n||MB(r))return{error:n,name:r};const i=r.split(".");for(;i.length;){const n=i.join("."),o=fB(t,n),a=fB(e,n);if(o&&!Array.isArray(o)&&r!==n)return{name:r};if(a&&a.type)return{name:n,error:a};i.pop()}return{name:r}}var TU=(e,t,r,n,i)=>!i.isOnAll&&(!r&&i.isOnTouch?!(t||e):(r?n.isOnBlur:i.isOnBlur)?!e:!(r?n.isOnChange:i.isOnChange)||e),CU=(e,t)=>!dB(fB(e,t)).length&&dU(e,t);const jU={mode:gB.onSubmit,reValidateMode:gB.onChange,shouldFocusError:!0};function RU(e={},t){let r,n={...jU,...e},i={submitCount:0,isDirty:!1,isLoading:qB(n.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},errors:{}},o={},a=(oB(n.defaultValues)||oB(n.values))&&uB(n.defaultValues||n.values)||{},s=n.shouldUnregister?{}:uB(a),c={action:!1,mount:!1,watch:!1},l={mount:new Set,unMount:new Set,array:new Set,watch:new Set},u=0;const d={isDirty:!1,dirtyFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},h={values:fU(),array:fU(),state:fU()},f=e.resetOptions&&e.resetOptions.keepDirtyValues,p=FB(n.mode),m=FB(n.reValidateMode),g=n.criteriaMode===gB.all,v=async e=>{if(d.isValid||e){const e=n.resolver?OB((await _()).errors):await S(o,!0);e!==i.isValid&&h.state.next({isValid:e})}},y=e=>d.isValidating&&h.state.next({isValidating:e}),b=(e,t,r,n)=>{const i=fB(o,e);if(i){const o=fB(s,e,hB(r)?fB(a,e):r);hB(o)||n&&n.defaultChecked||t?NB(s,e,t?o:kU(i._f)):A(e,o),c.mount&&v()}},w=(e,t,r,n,o)=>{let s=!1,c=!1;const l={name:e};if(!r||n){d.isDirty&&(c=i.isDirty,i.isDirty=l.isDirty=k(),s=c!==l.isDirty);const r=mU(fB(a,e),t);c=fB(i.dirtyFields,e),r?dU(i.dirtyFields,e):NB(i.dirtyFields,e,!0),l.dirtyFields=i.dirtyFields,s=s||d.dirtyFields&&c!==!r}if(r){const t=fB(i.touchedFields,e);t||(NB(i.touchedFields,e,r),l.touchedFields=i.touchedFields,s=s||d.touchedFields&&t!==r)}return s&&o&&h.state.next(l),s?l:{}},x=(t,n,o,a)=>{const s=fB(i.errors,t),c=d.isValid&&pB(n)&&i.isValid!==n;var l;if(e.delayError&&o?(l=()=>((e,t)=>{NB(i.errors,e,t),h.state.next({errors:i.errors})})(t,o),r=e=>{clearTimeout(u),u=setTimeout(l,e)},r(e.delayError)):(clearTimeout(u),r=null,o?NB(i.errors,t,o):dU(i.errors,t)),(o?!mU(s,o):s)||!OB(a)||c){const e={...a,...c&&pB(n)?{isValid:n}:{},errors:i.errors,name:t};i={...i,...e},h.state.next(e)}y(!1)},_=async e=>n.resolver(s,n.context,EU(e||l.mount,o,n.criteriaMode,n.shouldUseNativeValidation)),S=async(e,t,r={valid:!0})=>{for(const o in e){const a=e[o];if(a){const{_f:e,...o}=a;if(e){const o=l.array.has(e.name),c=await nU(a,s,g,n.shouldUseNativeValidation&&!t,o);if(c[e.name]&&(r.valid=!1,t))break;!t&&(fB(c,e.name)?o?HB(i.errors,c,e.name):NB(i.errors,e.name,c[e.name]):dU(i.errors,e.name))}o&&await S(o,t,r)}}return r.valid},k=(e,t)=>(e&&t&&NB(s,e,t),!mU(j(),a)),E=(e,t,r)=>IB(e,l,{...c.mount?s:hB(t)?a:RB(e)?{[e]:t}:t},r,t),A=(e,t,r={})=>{const n=fB(o,e);let i=t;if(n){const r=n._f;r&&(!r.disabled&&NB(s,e,SU(t,r)),i=KB(r.ref)&&nB(t)?"":t,gU(r.ref)?[...r.ref.options].forEach((e=>e.selected=i.includes(e.value))):r.refs?tB(r.ref)?r.refs.length>1?r.refs.forEach((e=>(!e.defaultChecked||!e.disabled)&&(e.checked=Array.isArray(i)?!!i.find((t=>t===e.value)):i===e.value))):r.refs[0]&&(r.refs[0].checked=!!i):r.refs.forEach((e=>e.checked=e.value===i)):VB(r.ref)?r.ref.value="":(r.ref.value=i,r.ref.type||h.values.next({name:e,values:{...s}})))}(r.shouldDirty||r.shouldTouch)&&w(e,i,r.shouldTouch,r.shouldDirty,!0),r.shouldValidate&&C(e)},P=(e,t,r)=>{for(const n in t){const i=t[n],a=`${e}.${n}`,s=fB(o,a);!l.array.has(e)&&pU(i)&&(!s||s._f)||rB(i)?A(a,i,r):P(a,i,r)}},O=(e,r,n={})=>{const u=fB(o,e),f=l.array.has(e),p=uB(r);NB(s,e,p),f?(h.array.next({name:e,values:{...s}}),(d.isDirty||d.dirtyFields)&&n.shouldDirty&&h.state.next({name:e,dirtyFields:_U(a,s),isDirty:k(e,p)})):!u||u._f||nB(p)?A(e,p,n):P(e,p,n),$B(e,l)&&h.state.next({...i}),h.values.next({name:e,values:{...s}}),!c.mount&&t()},T=async e=>{const t=e.target;let a=t.name,c=!0;const u=fB(o,a);if(u){let f,b;const k=t.type?kU(u._f):aB(e),E=e.type===mB.BLUR||e.type===mB.FOCUS_OUT,A=!PU(u._f)&&!n.resolver&&!fB(i.errors,a)&&!u._f.deps||TU(E,fB(i.touchedFields,a),i.isSubmitted,m,p),P=$B(a,l,E);NB(s,a,k),E?(u._f.onBlur&&u._f.onBlur(e),r&&r(0)):u._f.onChange&&u._f.onChange(e);const O=w(a,k,E,!1),T=!OB(O)||P;if(!E&&h.values.next({name:a,type:e.type,values:{...s}}),A)return d.isValid&&v(),T&&h.state.next({name:a,...P?{}:O});if(!E&&P&&h.state.next({...i}),y(!0),n.resolver){const{errors:e}=await _([a]),t=OU(i.errors,o,a),r=OU(e,o,t.name||a);f=r.error,a=r.name,b=OB(e)}else f=(await nU(u,s,g,n.shouldUseNativeValidation))[a],c=Number.isNaN(k)||k===fB(s,a,k),c&&(f?b=!1:d.isValid&&(b=await S(o,!0)));c&&(u._f.deps&&C(u._f.deps),x(a,b,f,O))}},C=async(e,t={})=>{let r,a;const s=CB(e);if(y(!0),n.resolver){const t=await(async e=>{const{errors:t}=await _(e);if(e)for(const r of e){const e=fB(t,r);e?NB(i.errors,r,e):dU(i.errors,r)}else i.errors=t;return t})(hB(e)?e:s);r=OB(t),a=e?!s.some((e=>fB(t,e))):r}else e?(a=(await Promise.all(s.map((async e=>{const t=fB(o,e);return await S(t&&t._f?{[e]:t}:t)})))).every(Boolean),(a||i.isValid)&&v()):a=r=await S(o);return h.state.next({...!RB(e)||d.isValid&&r!==i.isValid?{}:{name:e},...n.resolver||!e?{isValid:r}:{},errors:i.errors,isValidating:!1}),t.shouldFocus&&!a&&zB(o,(e=>e&&fB(i.errors,e)),e?s:l.mount),a},j=e=>{const t={...a,...c.mount?s:{}};return hB(e)?t:RB(e)?fB(t,e):e.map((e=>fB(t,e)))},R=(e,t)=>({invalid:!!fB((t||i).errors,e),isDirty:!!fB((t||i).dirtyFields,e),isTouched:!!fB((t||i).touchedFields,e),error:fB((t||i).errors,e)}),I=(e,t,r)=>{const n=(fB(o,e,{_f:{}})._f||{}).ref;NB(i.errors,e,{...t,ref:n}),h.state.next({name:e,errors:i.errors,isValid:!1}),r&&r.shouldFocus&&n&&n.focus&&n.focus()},M=(e,t={})=>{for(const r of e?CB(e):l.mount)l.mount.delete(r),l.array.delete(r),t.keepValue||(dU(o,r),dU(s,r)),!t.keepError&&dU(i.errors,r),!t.keepDirty&&dU(i.dirtyFields,r),!t.keepTouched&&dU(i.touchedFields,r),!n.shouldUnregister&&!t.keepDefaultValue&&dU(a,r);h.values.next({values:{...s}}),h.state.next({...i,...t.keepDirty?{isDirty:k()}:{}}),!t.keepIsValid&&v()},L=({disabled:e,name:t,field:r,fields:n})=>{if(pB(e)){const i=e?void 0:fB(s,t,kU(r?r._f:fB(n,t)._f));NB(s,t,i),w(t,i,!1,!1,!0)}},N=(e,t={})=>{let r=fB(o,e);const i=pB(t.disabled);return NB(o,e,{...r||{},_f:{...r&&r._f?r._f:{ref:{name:e}},name:e,mount:!0,...t}}),l.mount.add(e),r?L({field:r,disabled:t.disabled,name:e}):b(e,!0,t.value),{...i?{disabled:t.disabled}:{},...n.progressive?{required:!!t.required,min:AU(t.min),max:AU(t.max),minLength:AU(t.minLength),maxLength:AU(t.maxLength),pattern:AU(t.pattern)}:{},name:e,onChange:T,onBlur:T,ref:i=>{if(i){N(e,t),r=fB(o,e);const n=hB(i.value)&&i.querySelectorAll&&i.querySelectorAll("input,select,textarea")[0]||i,s=vU(n),c=r._f.refs||[];if(s?c.find((e=>e===n)):n===r._f.ref)return;NB(o,e,{_f:{...r._f,...s?{refs:[...c.filter(yU),n,...Array.isArray(fB(a,e))?[{}]:[]],ref:{type:n.type,name:e}}:{ref:n}}}),b(e,!1,void 0,n)}else r=fB(o,e,{}),r._f&&(r._f.mount=!1),(n.shouldUnregister||t.shouldUnregister)&&(!sB(l.array,e)||!c.action)&&l.unMount.add(e)}}},D=()=>n.shouldFocusError&&zB(o,(e=>e&&fB(i.errors,e)),l.mount),z=(e,t)=>async r=>{r&&(r.preventDefault&&r.preventDefault(),r.persist&&r.persist());let a=uB(s);if(h.state.next({isSubmitting:!0}),n.resolver){const{errors:e,values:t}=await _();i.errors=e,a=t}else await S(o);dU(i.errors,"root"),OB(i.errors)?(h.state.next({errors:{}}),await e(a,r)):(t&&await t({...i.errors},r),D(),setTimeout(D)),h.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:OB(i.errors),submitCount:i.submitCount+1,errors:i.errors})},B=(r,n={})=>{const u=r?uB(r):a,p=uB(u),m=r&&!OB(r)?p:a;if(n.keepDefaultValues||(a=u),!n.keepValues){if(n.keepDirtyValues||f)for(const e of l.mount)fB(i.dirtyFields,e)?NB(m,e,fB(s,e)):O(e,fB(m,e));else{if(lB&&hB(r))for(const e of l.mount){const t=fB(o,e);if(t&&t._f){const e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(KB(e)){const t=e.closest("form");if(t){t.reset();break}}}}o={}}s=e.shouldUnregister?n.keepDefaultValues?uB(a):{}:uB(m),h.array.next({values:{...m}}),h.values.next({values:{...m}})}l={mount:new Set,unMount:new Set,array:new Set,watch:new Set,watchAll:!1,focus:""},!c.mount&&t(),c.mount=!d.isValid||!!n.keepIsValid,c.watch=!!e.shouldUnregister,h.state.next({submitCount:n.keepSubmitCount?i.submitCount:0,isDirty:n.keepDirty?i.isDirty:!(!n.keepDefaultValues||mU(r,a)),isSubmitted:!!n.keepIsSubmitted&&i.isSubmitted,dirtyFields:n.keepDirtyValues?i.dirtyFields:n.keepDefaultValues&&r?_U(a,r):{},touchedFields:n.keepTouched?i.touchedFields:{},errors:n.keepErrors?i.errors:{},isSubmitSuccessful:!!n.keepIsSubmitSuccessful&&i.isSubmitSuccessful,isSubmitting:!1})},U=(e,t)=>B(qB(e)?e(s):e,t);return{control:{register:N,unregister:M,getFieldState:R,handleSubmit:z,setError:I,_executeSchema:_,_getWatch:E,_getDirty:k,_updateValid:v,_removeUnmounted:()=>{for(const e of l.unMount){const t=fB(o,e);t&&(t._f.refs?t._f.refs.every((e=>!yU(e))):!yU(t._f.ref))&&M(e)}l.unMount=new Set},_updateFieldArray:(e,t=[],r,n,l=!0,u=!0)=>{if(n&&r){if(c.action=!0,u&&Array.isArray(fB(o,e))){const t=r(fB(o,e),n.argA,n.argB);l&&NB(o,e,t)}if(u&&Array.isArray(fB(i.errors,e))){const t=r(fB(i.errors,e),n.argA,n.argB);l&&NB(i.errors,e,t),CU(i.errors,e)}if(d.touchedFields&&u&&Array.isArray(fB(i.touchedFields,e))){const t=r(fB(i.touchedFields,e),n.argA,n.argB);l&&NB(i.touchedFields,e,t)}d.dirtyFields&&(i.dirtyFields=_U(a,s)),h.state.next({name:e,isDirty:k(e,t),dirtyFields:i.dirtyFields,errors:i.errors,isValid:i.isValid})}else NB(s,e,t)},_updateDisabledField:L,_getFieldArray:t=>dB(fB(c.mount?s:a,t,e.shouldUnregister?fB(a,t,[]):[])),_reset:B,_resetDefaultValues:()=>qB(n.defaultValues)&&n.defaultValues().then((e=>{U(e,n.resetOptions),h.state.next({isLoading:!1})})),_updateFormState:e=>{i={...i,...e}},_subjects:h,_proxyFormState:d,get _fields(){return o},get _formValues(){return s},get _state(){return c},set _state(e){c=e},get _defaultValues(){return a},get _names(){return l},set _names(e){l=e},get _formState(){return i},set _formState(e){i=e},get _options(){return n},set _options(e){n={...n,...e}}},trigger:C,register:N,handleSubmit:z,watch:(e,t)=>qB(e)?h.values.subscribe({next:r=>e(E(void 0,t),r)}):E(e,t,!0),setValue:O,getValues:j,reset:U,resetField:(e,t={})=>{fB(o,e)&&(hB(t.defaultValue)?O(e,fB(a,e)):(O(e,t.defaultValue),NB(a,e,t.defaultValue)),t.keepTouched||dU(i.touchedFields,e),t.keepDirty||(dU(i.dirtyFields,e),i.isDirty=t.defaultValue?k(e,fB(a,e)):k()),t.keepError||(dU(i.errors,e),d.isValid&&v()),h.state.next({...i}))},clearErrors:e=>{e&&CB(e).forEach((e=>dU(i.errors,e))),h.state.next({errors:e?i.errors:{}})},unregister:M,setError:I,setFocus:(e,t={})=>{const r=fB(o,e),n=r&&r._f;if(n){const e=n.refs?n.refs[0]:n.ref;e.focus&&(e.focus(),t.shouldSelect&&e.select())}},getFieldState:R}}function IU(e={}){const t=n.useRef(),r=n.useRef(),[i,o]=n.useState({isDirty:!1,isValidating:!1,isLoading:qB(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},errors:{},defaultValues:qB(e.defaultValues)?void 0:e.defaultValues});t.current||(t.current={...RU(e,(()=>o((e=>({...e}))))),formState:i});const a=t.current.control;return a._options=e,jB({subject:a._subjects.state,next:e=>{TB(e,a._proxyFormState,a._updateFormState,!0)&&o({...a._formState})}}),n.useEffect((()=>{e.values&&!mU(e.values,r.current)?(a._reset(e.values,a._options.resetOptions),r.current=e.values):a._resetDefaultValues()}),[e.values,a]),n.useEffect((()=>{a._state.mount||(a._updateValid(),a._state.mount=!0),a._state.watch&&(a._state.watch=!1,a._subjects.state.next({...a._formState})),a._removeUnmounted()})),t.current.formState=PB(i,a),t.current}var MU,[LU,NU]=ah({name:`${MU="Card"}StylesContext`,errorMessage:`useStyles: "styles" is undefined. Seems you forgot to wrap the components in "<${MU} />" `}),DU=g((function(e,t){const{className:r,children:n,direction:i="column",justify:o,align:a,...s}=ht(e),c=_n("Card",e);return(0,ln.jsx)(cn.div,{ref:t,className:v("chakra-card",r),__css:{display:"flex",flexDirection:i,justifyContent:o,alignItems:a,position:"relative",minWidth:0,wordWrap:"break-word",...c.container},...s,children:(0,ln.jsx)(LU,{value:c,children:n})})})),zU=g((function(e,t){const{className:r,...n}=e,i=NU();return(0,ln.jsx)(cn.div,{ref:t,className:v("chakra-card__body",r),__css:i.body,...n})}));const BU=({value:e,space:t=2})=>(0,ln.jsx)(DU,{background:EP.gray[700],borderRadius:"5px",children:(0,ln.jsx)(zU,{children:(0,ln.jsx)("pre",{style:{whiteSpace:"pre-wrap",fontSize:"12px",lineHeight:"18px"},children:JSON.stringify(e,null,t)})})});var UU=g((function(e,t){var r;const n=xn("FormLabel",e),i=ht(e),{className:o,children:a,requiredIndicator:s=(0,ln.jsx)(FU,{}),optionalIndicator:c=null,...l}=i,u=Wz(),d=null!=(r=null==u?void 0:u.getLabelProps(l,t))?r:{ref:t,...l};return(0,ln.jsxs)(cn.label,{...d,className:v("chakra-form__label",i.className),__css:{display:"block",textAlign:"start",...n},children:[a,(null==u?void 0:u.isRequired)?s:c]})}));UU.displayName="FormLabel";var FU=g((function(e,t){const r=Wz(),n=qz();if(!(null==r?void 0:r.isRequired))return null;const i=v("chakra-form__required-indicator",e.className);return(0,ln.jsx)(cn.span,{...null==r?void 0:r.getRequiredIndicatorProps(e,t),__css:n.requiredIndicator,className:i})}));function $U(e){return n.Children.toArray(e).filter((e=>(0,n.isValidElement)(e)))}FU.displayName="RequiredIndicator";var[HU,VU]=kn({name:"InputGroupStylesContext",errorMessage:"useInputGroupStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),qU=g((function(e,t){const r=_n("Input",e),{children:i,className:o,...a}=ht(e),s=v("chakra-input__group",o),c={},l=$U(i),u=r.field;l.forEach((e=>{var t,n;r&&(u&&"InputLeftElement"===e.type.id&&(c.paddingStart=null!=(t=u.height)?t:u.h),u&&"InputRightElement"===e.type.id&&(c.paddingEnd=null!=(n=u.height)?n:u.h),"InputRightAddon"===e.type.id&&(c.borderEndRadius=0),"InputLeftAddon"===e.type.id&&(c.borderStartRadius=0))}));const d=l.map((t=>{var r,i;const o=oz({size:(null==(r=t.props)?void 0:r.size)||e.size,variant:(null==(i=t.props)?void 0:i.variant)||e.variant});return"Input"!==t.type.id?(0,n.cloneElement)(t,o):(0,n.cloneElement)(t,Object.assign(o,c,t.props))}));return(0,ln.jsx)(cn.div,{className:s,ref:t,__css:{width:"100%",display:"flex",position:"relative",isolation:"isolate",...r.group},"data-group":!0,...a,children:(0,ln.jsx)(HU,{value:r,children:d})})}));function KU(e){const{isDisabled:t,isInvalid:r,isReadOnly:n,isRequired:i,...o}=WU(e);return{...o,disabled:t,readOnly:n,required:i,"aria-invalid":S(r),"aria-required":S(i),"aria-readonly":S(n)}}function WU(e){var t,r,n;const i=Wz(),{id:o,disabled:a,readOnly:s,required:c,isRequired:l,isInvalid:u,isReadOnly:d,isDisabled:h,onFocus:f,onBlur:p,...m}=e,g=e["aria-describedby"]?[e["aria-describedby"]]:[];return(null==i?void 0:i.hasFeedbackText)&&(null==i?void 0:i.isInvalid)&&g.push(i.feedbackId),(null==i?void 0:i.hasHelpText)&&g.push(i.helpTextId),{...m,"aria-describedby":g.join(" ")||void 0,id:null!=o?o:null==i?void 0:i.id,isDisabled:null!=(t=null!=a?a:h)?t:null==i?void 0:i.isDisabled,isReadOnly:null!=(r=null!=s?s:d)?r:null==i?void 0:i.isReadOnly,isRequired:null!=(n=null!=c?c:l)?n:null==i?void 0:i.isRequired,isInvalid:null!=u?u:null==i?void 0:i.isInvalid,onFocus:k(null==i?void 0:i.onFocus,f),onBlur:k(null==i?void 0:i.onBlur,p)}}qU.displayName="InputGroup";var GU=g((function(e,t){const{htmlSize:r,...n}=e,i=_n("Input",n),o=KU(ht(n)),a=v("chakra-input",e.className);return(0,ln.jsx)(cn.input,{size:r,...o,__css:i.field,ref:t,className:a})}));GU.displayName="Input",GU.id="Input";var ZU=cn("div",{baseStyle:{display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",top:"0",zIndex:2}}),YU=g((function(e,t){var r,n;const{placement:i="left",...o}=e,a=VU(),s=a.field,c={["left"===i?"insetStart":"insetEnd"]:"0",width:null!=(r=null==s?void 0:s.height)?r:null==s?void 0:s.h,height:null!=(n=null==s?void 0:s.height)?n:null==s?void 0:s.h,fontSize:null==s?void 0:s.fontSize,...a.element};return(0,ln.jsx)(ZU,{ref:t,__css:c,...o})}));YU.id="InputElement",YU.displayName="InputElement";var XU=g((function(e,t){const{className:r,...n}=e,i=v("chakra-input__left-element",r);return(0,ln.jsx)(YU,{ref:t,placement:"left",className:i,...n})}));XU.id="InputLeftElement",XU.displayName="InputLeftElement";var JU=g((function(e,t){const{className:r,...n}=e,i=v("chakra-input__right-element",r);return(0,ln.jsx)(YU,{ref:t,placement:"right",className:i,...n})}));JU.id="InputRightElement",JU.displayName="InputRightElement";var[QU,eF]=kn({name:"ListStylesContext",errorMessage:"useListStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),tF=g((function(e,t){const r=_n("List",e),{children:n,styleType:i="none",stylePosition:o,spacing:a,...s}=ht(e),c=$U(n),l=a?{"& > *:not(style) ~ *:not(style)":{mt:a}}:{};return(0,ln.jsx)(QU,{value:r,children:(0,ln.jsx)(cn.ul,{ref:t,listStyleType:i,listStylePosition:o,role:"list",__css:{...r.container,...l},...s,children:c})})}));tF.displayName="List";var rF=g(((e,t)=>{const{as:r,...n}=e;return(0,ln.jsx)(tF,{ref:t,as:"ol",styleType:"decimal",marginStart:"1em",...n})}));rF.displayName="OrderedList";var nF=g((function(e,t){const{as:r,...n}=e;return(0,ln.jsx)(tF,{ref:t,as:"ul",styleType:"initial",marginStart:"1em",...n})}));nF.displayName="UnorderedList";var iF=g((function(e,t){const r=eF();return(0,ln.jsx)(cn.li,{ref:t,...e,__css:r.item})}));iF.displayName="ListItem";var oF=g((function(e,t){const r=eF();return(0,ln.jsx)(LA,{ref:t,role:"presentation",...e,__css:r.icon})}));oF.displayName="ListIcon";var aF={exit:{scale:.85,opacity:0,transition:{opacity:{duration:.15,easings:"easeInOut"},scale:{duration:.2,easings:"easeInOut"}}},enter:{scale:1,opacity:1,transition:{opacity:{easings:"easeOut",duration:.2},scale:{duration:.2,ease:[.175,.885,.4,1.1]}}}};function sF(e){return["html","body","#document"].includes(e.localName)?e.ownerDocument.body:VD(e)&&function(e){const t=e.ownerDocument.defaultView||window,{overflow:r,overflowX:n,overflowY:i}=t.getComputedStyle(e);return/auto|scroll|overlay|hidden/.test(r+i+n)}(e)?e:sF(function(e){return"html"===e.localName?e:e.assignedSlot||e.parentElement||e.ownerDocument.documentElement}(e))}var cF=(e,t)=>({var:e,varRef:t?`var(${e}, ${t})`:`var(${e})`}),lF={arrowShadowColor:cF("--popper-arrow-shadow-color"),arrowSize:cF("--popper-arrow-size","8px"),arrowSizeHalf:cF("--popper-arrow-size-half"),arrowBg:cF("--popper-arrow-bg"),transformOrigin:cF("--popper-transform-origin"),arrowOffset:cF("--popper-arrow-offset")};var uF={top:"bottom center","top-start":"bottom left","top-end":"bottom right",bottom:"top center","bottom-start":"top left","bottom-end":"top right",left:"right center","left-start":"right top","left-end":"right bottom",right:"left center","right-start":"left top","right-end":"left bottom"},dF={scroll:!0,resize:!0};function hF(e){let t;return t="object"===typeof e?{enabled:!0,options:{...dF,...e}}:{enabled:e,options:dF},t}var fF={name:"matchWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:({state:e})=>{e.styles.popper.width=`${e.rects.reference.width}px`},effect:({state:e})=>()=>{const t=e.elements.reference;e.elements.popper.style.width=`${t.offsetWidth}px`}},pF={name:"transformOrigin",enabled:!0,phase:"write",fn:({state:e})=>{mF(e)},effect:({state:e})=>()=>{mF(e)}},mF=e=>{var t;e.elements.popper.style.setProperty(lF.transformOrigin.var,(t=e.placement,uF[t]))},gF={name:"positionArrow",enabled:!0,phase:"afterWrite",fn:({state:e})=>{vF(e)}},vF=e=>{var t;if(!e.placement)return;const r=yF(e.placement);if((null==(t=e.elements)?void 0:t.arrow)&&r){Object.assign(e.elements.arrow.style,{[r.property]:r.value,width:lF.arrowSize.varRef,height:lF.arrowSize.varRef,zIndex:-1});const t={[lF.arrowSizeHalf.var]:`calc(${lF.arrowSize.varRef} / 2 - 1px)`,[lF.arrowOffset.var]:`calc(${lF.arrowSizeHalf.varRef} * -1)`};for(const r in t)e.elements.arrow.style.setProperty(r,t[r])}},yF=e=>e.startsWith("top")?{property:"bottom",value:lF.arrowOffset.varRef}:e.startsWith("bottom")?{property:"top",value:lF.arrowOffset.varRef}:e.startsWith("left")?{property:"right",value:lF.arrowOffset.varRef}:e.startsWith("right")?{property:"left",value:lF.arrowOffset.varRef}:void 0,bF={name:"innerArrow",enabled:!0,phase:"main",requires:["arrow"],fn:({state:e})=>{wF(e)},effect:({state:e})=>()=>{wF(e)}},wF=e=>{if(!e.elements.arrow)return;const t=e.elements.arrow.querySelector("[data-popper-arrow-inner]");if(!t)return;const r=(n=e.placement).includes("top")?"1px 1px 0px 0 var(--popper-arrow-shadow-color)":n.includes("bottom")?"-1px -1px 0px 0 var(--popper-arrow-shadow-color)":n.includes("right")?"-1px 1px 0px 0 var(--popper-arrow-shadow-color)":n.includes("left")?"1px -1px 0px 0 var(--popper-arrow-shadow-color)":void 0;var n;r&&t.style.setProperty("--popper-arrow-default-shadow",r),Object.assign(t.style,{transform:"rotate(45deg)",background:lF.arrowBg.varRef,top:0,left:0,width:"100%",height:"100%",position:"absolute",zIndex:"inherit",boxShadow:"var(--popper-arrow-shadow, var(--popper-arrow-default-shadow))"})},xF={"start-start":{ltr:"left-start",rtl:"right-start"},"start-end":{ltr:"left-end",rtl:"right-end"},"end-start":{ltr:"right-start",rtl:"left-start"},"end-end":{ltr:"right-end",rtl:"left-end"},start:{ltr:"left",rtl:"right"},end:{ltr:"right",rtl:"left"}},_F={"auto-start":"auto-end","auto-end":"auto-start","top-start":"top-end","top-end":"top-start","bottom-start":"bottom-end","bottom-end":"bottom-start"};function SF(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function kF(e){return e instanceof SF(e).Element||e instanceof Element}function EF(e){return e instanceof SF(e).HTMLElement||e instanceof HTMLElement}function AF(e){return"undefined"!==typeof ShadowRoot&&(e instanceof SF(e).ShadowRoot||e instanceof ShadowRoot)}var PF=Math.max,OF=Math.min,TF=Math.round;function CF(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}function jF(){return!/^((?!chrome|android).)*safari/i.test(CF())}function RF(e,t,r){void 0===t&&(t=!1),void 0===r&&(r=!1);var n=e.getBoundingClientRect(),i=1,o=1;t&&EF(e)&&(i=e.offsetWidth>0&&TF(n.width)/e.offsetWidth||1,o=e.offsetHeight>0&&TF(n.height)/e.offsetHeight||1);var a=(kF(e)?SF(e):window).visualViewport,s=!jF()&&r,c=(n.left+(s&&a?a.offsetLeft:0))/i,l=(n.top+(s&&a?a.offsetTop:0))/o,u=n.width/i,d=n.height/o;return{width:u,height:d,top:l,right:c+u,bottom:l+d,left:c,x:c,y:l}}function IF(e){var t=SF(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function MF(e){return e?(e.nodeName||"").toLowerCase():null}function LF(e){return((kF(e)?e.ownerDocument:e.document)||window.document).documentElement}function NF(e){return RF(LF(e)).left+IF(e).scrollLeft}function DF(e){return SF(e).getComputedStyle(e)}function zF(e){var t=DF(e),r=t.overflow,n=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(r+i+n)}function BF(e,t,r){void 0===r&&(r=!1);var n=EF(t),i=EF(t)&&function(e){var t=e.getBoundingClientRect(),r=TF(t.width)/e.offsetWidth||1,n=TF(t.height)/e.offsetHeight||1;return 1!==r||1!==n}(t),o=LF(t),a=RF(e,i,r),s={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(n||!n&&!r)&&(("body"!==MF(t)||zF(o))&&(s=function(e){return e!==SF(e)&&EF(e)?{scrollLeft:(t=e).scrollLeft,scrollTop:t.scrollTop}:IF(e);var t}(t)),EF(t)?((c=RF(t,!0)).x+=t.clientLeft,c.y+=t.clientTop):o&&(c.x=NF(o))),{x:a.left+s.scrollLeft-c.x,y:a.top+s.scrollTop-c.y,width:a.width,height:a.height}}function UF(e){var t=RF(e),r=e.offsetWidth,n=e.offsetHeight;return Math.abs(t.width-r)<=1&&(r=t.width),Math.abs(t.height-n)<=1&&(n=t.height),{x:e.offsetLeft,y:e.offsetTop,width:r,height:n}}function FF(e){return"html"===MF(e)?e:e.assignedSlot||e.parentNode||(AF(e)?e.host:null)||LF(e)}function $F(e){return["html","body","#document"].indexOf(MF(e))>=0?e.ownerDocument.body:EF(e)&&zF(e)?e:$F(FF(e))}function HF(e,t){var r;void 0===t&&(t=[]);var n=$F(e),i=n===(null==(r=e.ownerDocument)?void 0:r.body),o=SF(n),a=i?[o].concat(o.visualViewport||[],zF(n)?n:[]):n,s=t.concat(a);return i?s:s.concat(HF(FF(a)))}function VF(e){return["table","td","th"].indexOf(MF(e))>=0}function qF(e){return EF(e)&&"fixed"!==DF(e).position?e.offsetParent:null}function KF(e){for(var t=SF(e),r=qF(e);r&&VF(r)&&"static"===DF(r).position;)r=qF(r);return r&&("html"===MF(r)||"body"===MF(r)&&"static"===DF(r).position)?t:r||function(e){var t=/firefox/i.test(CF());if(/Trident/i.test(CF())&&EF(e)&&"fixed"===DF(e).position)return null;var r=FF(e);for(AF(r)&&(r=r.host);EF(r)&&["html","body"].indexOf(MF(r))<0;){var n=DF(r);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||t&&"filter"===n.willChange||t&&n.filter&&"none"!==n.filter)return r;r=r.parentNode}return null}(e)||t}var WF="top",GF="bottom",ZF="right",YF="left",XF="auto",JF=[WF,GF,ZF,YF],QF="start",e$="end",t$="clippingParents",r$="viewport",n$="popper",i$="reference",o$=JF.reduce((function(e,t){return e.concat([t+"-"+QF,t+"-"+e$])}),[]),a$=[].concat(JF,[XF]).reduce((function(e,t){return e.concat([t,t+"-"+QF,t+"-"+e$])}),[]),s$=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function c$(e){var t=new Map,r=new Set,n=[];function i(e){r.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!r.has(e)){var n=t.get(e);n&&i(n)}})),n.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){r.has(e.name)||i(e)})),n}function l$(e){var t;return function(){return t||(t=new Promise((function(r){Promise.resolve().then((function(){t=void 0,r(e())}))}))),t}}var u$={placement:"bottom",modifiers:[],strategy:"absolute"};function d$(){for(var e=arguments.length,t=new Array(e),r=0;r=0?"x":"y"}function y$(e){var t,r=e.reference,n=e.element,i=e.placement,o=i?m$(i):null,a=i?g$(i):null,s=r.x+r.width/2-n.width/2,c=r.y+r.height/2-n.height/2;switch(o){case WF:t={x:s,y:r.y-n.height};break;case GF:t={x:s,y:r.y+r.height};break;case ZF:t={x:r.x+r.width,y:c};break;case YF:t={x:r.x-n.width,y:c};break;default:t={x:r.x,y:r.y}}var l=o?v$(o):null;if(null!=l){var u="y"===l?"height":"width";switch(a){case QF:t[l]=t[l]-(r[u]/2-n[u]/2);break;case e$:t[l]=t[l]+(r[u]/2-n[u]/2)}}return t}const b$={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,r=e.name;t.modifiersData[r]=y$({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}};var w$={top:"auto",right:"auto",bottom:"auto",left:"auto"};function x$(e){var t,r=e.popper,n=e.popperRect,i=e.placement,o=e.variation,a=e.offsets,s=e.position,c=e.gpuAcceleration,l=e.adaptive,u=e.roundOffsets,d=e.isFixed,h=a.x,f=void 0===h?0:h,p=a.y,m=void 0===p?0:p,g="function"===typeof u?u({x:f,y:m}):{x:f,y:m};f=g.x,m=g.y;var v=a.hasOwnProperty("x"),y=a.hasOwnProperty("y"),b=YF,w=WF,x=window;if(l){var _=KF(r),S="clientHeight",k="clientWidth";if(_===SF(r)&&"static"!==DF(_=LF(r)).position&&"absolute"===s&&(S="scrollHeight",k="scrollWidth"),i===WF||(i===YF||i===ZF)&&o===e$)w=GF,m-=(d&&_===x&&x.visualViewport?x.visualViewport.height:_[S])-n.height,m*=c?1:-1;if(i===YF||(i===WF||i===GF)&&o===e$)b=ZF,f-=(d&&_===x&&x.visualViewport?x.visualViewport.width:_[k])-n.width,f*=c?1:-1}var E,A=Object.assign({position:s},l&&w$),P=!0===u?function(e,t){var r=e.x,n=e.y,i=t.devicePixelRatio||1;return{x:TF(r*i)/i||0,y:TF(n*i)/i||0}}({x:f,y:m},SF(r)):{x:f,y:m};return f=P.x,m=P.y,c?Object.assign({},A,((E={})[w]=y?"0":"",E[b]=v?"0":"",E.transform=(x.devicePixelRatio||1)<=1?"translate("+f+"px, "+m+"px)":"translate3d("+f+"px, "+m+"px, 0)",E)):Object.assign({},A,((t={})[w]=y?m+"px":"",t[b]=v?f+"px":"",t.transform="",t))}const _$={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,r=e.options,n=r.gpuAcceleration,i=void 0===n||n,o=r.adaptive,a=void 0===o||o,s=r.roundOffsets,c=void 0===s||s,l={placement:m$(t.placement),variation:g$(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,x$(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:c})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,x$(Object.assign({},l,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};const S$={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var r=t.styles[e]||{},n=t.attributes[e]||{},i=t.elements[e];EF(i)&&MF(i)&&(Object.assign(i.style,r),Object.keys(n).forEach((function(e){var t=n[e];!1===t?i.removeAttribute(e):i.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,r={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,r.popper),t.styles=r,t.elements.arrow&&Object.assign(t.elements.arrow.style,r.arrow),function(){Object.keys(t.elements).forEach((function(e){var n=t.elements[e],i=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:r[e]).reduce((function(e,t){return e[t]="",e}),{});EF(n)&&MF(n)&&(Object.assign(n.style,o),Object.keys(i).forEach((function(e){n.removeAttribute(e)})))}))}},requires:["computeStyles"]};const k$={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,r=e.options,n=e.name,i=r.offset,o=void 0===i?[0,0]:i,a=a$.reduce((function(e,r){return e[r]=function(e,t,r){var n=m$(e),i=[YF,WF].indexOf(n)>=0?-1:1,o="function"===typeof r?r(Object.assign({},t,{placement:e})):r,a=o[0],s=o[1];return a=a||0,s=(s||0)*i,[YF,ZF].indexOf(n)>=0?{x:s,y:a}:{x:a,y:s}}(r,t.rects,o),e}),{}),s=a[t.placement],c=s.x,l=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[n]=a}};var E$={left:"right",right:"left",bottom:"top",top:"bottom"};function A$(e){return e.replace(/left|right|bottom|top/g,(function(e){return E$[e]}))}var P$={start:"end",end:"start"};function O$(e){return e.replace(/start|end/g,(function(e){return P$[e]}))}function T$(e,t){var r=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(r&&AF(r)){var n=t;do{if(n&&e.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function C$(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function j$(e,t,r){return t===r$?C$(function(e,t){var r=SF(e),n=LF(e),i=r.visualViewport,o=n.clientWidth,a=n.clientHeight,s=0,c=0;if(i){o=i.width,a=i.height;var l=jF();(l||!l&&"fixed"===t)&&(s=i.offsetLeft,c=i.offsetTop)}return{width:o,height:a,x:s+NF(e),y:c}}(e,r)):kF(t)?function(e,t){var r=RF(e,!1,"fixed"===t);return r.top=r.top+e.clientTop,r.left=r.left+e.clientLeft,r.bottom=r.top+e.clientHeight,r.right=r.left+e.clientWidth,r.width=e.clientWidth,r.height=e.clientHeight,r.x=r.left,r.y=r.top,r}(t,r):C$(function(e){var t,r=LF(e),n=IF(e),i=null==(t=e.ownerDocument)?void 0:t.body,o=PF(r.scrollWidth,r.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),a=PF(r.scrollHeight,r.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),s=-n.scrollLeft+NF(e),c=-n.scrollTop;return"rtl"===DF(i||r).direction&&(s+=PF(r.clientWidth,i?i.clientWidth:0)-o),{width:o,height:a,x:s,y:c}}(LF(e)))}function R$(e,t,r,n){var i="clippingParents"===t?function(e){var t=HF(FF(e)),r=["absolute","fixed"].indexOf(DF(e).position)>=0&&EF(e)?KF(e):e;return kF(r)?t.filter((function(e){return kF(e)&&T$(e,r)&&"body"!==MF(e)})):[]}(e):[].concat(t),o=[].concat(i,[r]),a=o[0],s=o.reduce((function(t,r){var i=j$(e,r,n);return t.top=PF(i.top,t.top),t.right=OF(i.right,t.right),t.bottom=OF(i.bottom,t.bottom),t.left=PF(i.left,t.left),t}),j$(e,a,n));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function I$(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function M$(e,t){return t.reduce((function(t,r){return t[r]=e,t}),{})}function L$(e,t){void 0===t&&(t={});var r=t,n=r.placement,i=void 0===n?e.placement:n,o=r.strategy,a=void 0===o?e.strategy:o,s=r.boundary,c=void 0===s?t$:s,l=r.rootBoundary,u=void 0===l?r$:l,d=r.elementContext,h=void 0===d?n$:d,f=r.altBoundary,p=void 0!==f&&f,m=r.padding,g=void 0===m?0:m,v=I$("number"!==typeof g?g:M$(g,JF)),y=h===n$?i$:n$,b=e.rects.popper,w=e.elements[p?y:h],x=R$(kF(w)?w:w.contextElement||LF(e.elements.popper),c,u,a),_=RF(e.elements.reference),S=y$({reference:_,element:b,strategy:"absolute",placement:i}),k=C$(Object.assign({},b,S)),E=h===n$?k:_,A={top:x.top-E.top+v.top,bottom:E.bottom-x.bottom+v.bottom,left:x.left-E.left+v.left,right:E.right-x.right+v.right},P=e.modifiersData.offset;if(h===n$&&P){var O=P[i];Object.keys(A).forEach((function(e){var t=[ZF,GF].indexOf(e)>=0?1:-1,r=[WF,GF].indexOf(e)>=0?"y":"x";A[e]+=O[r]*t}))}return A}const N$={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,r=e.options,n=e.name;if(!t.modifiersData[n]._skip){for(var i=r.mainAxis,o=void 0===i||i,a=r.altAxis,s=void 0===a||a,c=r.fallbackPlacements,l=r.padding,u=r.boundary,d=r.rootBoundary,h=r.altBoundary,f=r.flipVariations,p=void 0===f||f,m=r.allowedAutoPlacements,g=t.options.placement,v=m$(g),y=c||(v===g||!p?[A$(g)]:function(e){if(m$(e)===XF)return[];var t=A$(e);return[O$(e),t,O$(t)]}(g)),b=[g].concat(y).reduce((function(e,r){return e.concat(m$(r)===XF?function(e,t){void 0===t&&(t={});var r=t,n=r.placement,i=r.boundary,o=r.rootBoundary,a=r.padding,s=r.flipVariations,c=r.allowedAutoPlacements,l=void 0===c?a$:c,u=g$(n),d=u?s?o$:o$.filter((function(e){return g$(e)===u})):JF,h=d.filter((function(e){return l.indexOf(e)>=0}));0===h.length&&(h=d);var f=h.reduce((function(t,r){return t[r]=L$(e,{placement:r,boundary:i,rootBoundary:o,padding:a})[m$(r)],t}),{});return Object.keys(f).sort((function(e,t){return f[e]-f[t]}))}(t,{placement:r,boundary:u,rootBoundary:d,padding:l,flipVariations:p,allowedAutoPlacements:m}):r)}),[]),w=t.rects.reference,x=t.rects.popper,_=new Map,S=!0,k=b[0],E=0;E=0,C=T?"width":"height",j=L$(t,{placement:A,boundary:u,rootBoundary:d,altBoundary:h,padding:l}),R=T?O?ZF:YF:O?GF:WF;w[C]>x[C]&&(R=A$(R));var I=A$(R),M=[];if(o&&M.push(j[P]<=0),s&&M.push(j[R]<=0,j[I]<=0),M.every((function(e){return e}))){k=A,S=!1;break}_.set(A,M)}if(S)for(var L=function(e){var t=b.find((function(t){var r=_.get(t);if(r)return r.slice(0,e).every((function(e){return e}))}));if(t)return k=t,"break"},N=p?3:1;N>0;N--){if("break"===L(N))break}t.placement!==k&&(t.modifiersData[n]._skip=!0,t.placement=k,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function D$(e,t,r){return PF(e,OF(t,r))}const z$={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,r=e.options,n=e.name,i=r.mainAxis,o=void 0===i||i,a=r.altAxis,s=void 0!==a&&a,c=r.boundary,l=r.rootBoundary,u=r.altBoundary,d=r.padding,h=r.tether,f=void 0===h||h,p=r.tetherOffset,m=void 0===p?0:p,g=L$(t,{boundary:c,rootBoundary:l,padding:d,altBoundary:u}),v=m$(t.placement),y=g$(t.placement),b=!y,w=v$(v),x="x"===w?"y":"x",_=t.modifiersData.popperOffsets,S=t.rects.reference,k=t.rects.popper,E="function"===typeof m?m(Object.assign({},t.rects,{placement:t.placement})):m,A="number"===typeof E?{mainAxis:E,altAxis:E}:Object.assign({mainAxis:0,altAxis:0},E),P=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,O={x:0,y:0};if(_){if(o){var T,C="y"===w?WF:YF,j="y"===w?GF:ZF,R="y"===w?"height":"width",I=_[w],M=I+g[C],L=I-g[j],N=f?-k[R]/2:0,D=y===QF?S[R]:k[R],z=y===QF?-k[R]:-S[R],B=t.elements.arrow,U=f&&B?UF(B):{width:0,height:0},F=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},$=F[C],H=F[j],V=D$(0,S[R],U[R]),q=b?S[R]/2-N-V-$-A.mainAxis:D-V-$-A.mainAxis,K=b?-S[R]/2+N+V+H+A.mainAxis:z+V+H+A.mainAxis,W=t.elements.arrow&&KF(t.elements.arrow),G=W?"y"===w?W.clientTop||0:W.clientLeft||0:0,Z=null!=(T=null==P?void 0:P[w])?T:0,Y=I+K-Z,X=D$(f?OF(M,I+q-Z-G):M,I,f?PF(L,Y):L);_[w]=X,O[w]=X-I}if(s){var J,Q="x"===w?WF:YF,ee="x"===w?GF:ZF,te=_[x],re="y"===x?"height":"width",ne=te+g[Q],ie=te-g[ee],oe=-1!==[WF,YF].indexOf(v),ae=null!=(J=null==P?void 0:P[x])?J:0,se=oe?ne:te-S[re]-k[re]-ae+A.altAxis,ce=oe?te+S[re]+k[re]-ae-A.altAxis:ie,le=f&&oe?function(e,t,r){var n=D$(e,t,r);return n>r?r:n}(se,te,ce):D$(f?se:ne,te,f?ce:ie);_[x]=le,O[x]=le-te}t.modifiersData[n]=O}},requiresIfExists:["offset"]};const B$={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,r=e.state,n=e.name,i=e.options,o=r.elements.arrow,a=r.modifiersData.popperOffsets,s=m$(r.placement),c=v$(s),l=[YF,ZF].indexOf(s)>=0?"height":"width";if(o&&a){var u=function(e,t){return I$("number"!==typeof(e="function"===typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:M$(e,JF))}(i.padding,r),d=UF(o),h="y"===c?WF:YF,f="y"===c?GF:ZF,p=r.rects.reference[l]+r.rects.reference[c]-a[c]-r.rects.popper[l],m=a[c]-r.rects.reference[c],g=KF(o),v=g?"y"===c?g.clientHeight||0:g.clientWidth||0:0,y=p/2-m/2,b=u[h],w=v-d[l]-u[f],x=v/2-d[l]/2+y,_=D$(b,x,w),S=c;r.modifiersData[n]=((t={})[S]=_,t.centerOffset=_-x,t)}},effect:function(e){var t=e.state,r=e.options.element,n=void 0===r?"[data-popper-arrow]":r;null!=n&&("string"!==typeof n||(n=t.elements.popper.querySelector(n)))&&T$(t.elements.popper,n)&&(t.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function U$(e,t,r){return void 0===r&&(r={x:0,y:0}),{top:e.top-t.height-r.y,right:e.right-t.width+r.x,bottom:e.bottom-t.height+r.y,left:e.left-t.width-r.x}}function F$(e){return[WF,ZF,GF,YF].some((function(t){return e[t]>=0}))}const $$={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,r=e.name,n=t.rects.reference,i=t.rects.popper,o=t.modifiersData.preventOverflow,a=L$(t,{elementContext:"reference"}),s=L$(t,{altBoundary:!0}),c=U$(a,n),l=U$(s,i,o),u=F$(c),d=F$(l);t.modifiersData[r]={referenceClippingOffsets:c,popperEscapeOffsets:l,isReferenceHidden:u,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":d})}};var H$=h$({defaultModifiers:[p$,b$,_$,S$,k$,N$,z$,B$,$$]});function V$(e={}){const{enabled:t=!0,modifiers:r,placement:i="bottom",strategy:o="absolute",arrowPadding:a=8,eventListeners:s=!0,offset:c,gutter:l=8,flip:u=!0,boundary:d="clippingParents",preventOverflow:h=!0,matchWidth:f,direction:p="ltr"}=e,m=(0,n.useRef)(null),g=(0,n.useRef)(null),v=(0,n.useRef)(null),y=function(e,t="ltr"){var r,n;const i=(null==(r=xF[e])?void 0:r[t])||e;return"ltr"===t?i:null!=(n=_F[e])?n:i}(i,p),b=(0,n.useRef)((()=>{})),w=(0,n.useCallback)((()=>{var e;t&&m.current&&g.current&&(null==(e=b.current)||e.call(b),v.current=H$(m.current,g.current,{placement:y,modifiers:[bF,gF,pF,{...fF,enabled:!!f},{name:"eventListeners",...hF(s)},{name:"arrow",options:{padding:a}},{name:"offset",options:{offset:null!=c?c:[0,l]}},{name:"flip",enabled:!!u,options:{padding:8}},{name:"preventOverflow",enabled:!!h,options:{boundary:d}},...null!=r?r:[]],strategy:o}),v.current.forceUpdate(),b.current=v.current.destroy)}),[y,t,r,f,s,a,c,l,u,h,d,o]);(0,n.useEffect)((()=>()=>{var e;m.current||g.current||(null==(e=v.current)||e.destroy(),v.current=null)}),[]);const x=(0,n.useCallback)((e=>{m.current=e,w()}),[w]),_=(0,n.useCallback)(((e={},t=null)=>({...e,ref:Mn(x,t)})),[x]),S=(0,n.useCallback)((e=>{g.current=e,w()}),[w]),k=(0,n.useCallback)(((e={},t=null)=>({...e,ref:Mn(S,t),style:{...e.style,position:o,minWidth:f?void 0:"max-content",inset:"0 auto auto 0"}})),[o,S,f]),E=(0,n.useCallback)(((e={},t=null)=>{const{size:r,shadowColor:n,bg:i,style:o,...a}=e;return{...a,ref:t,"data-popper-arrow":"",style:q$(e)}}),[]),A=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,"data-popper-arrow-inner":""})),[]);return{update(){var e;null==(e=v.current)||e.update()},forceUpdate(){var e;null==(e=v.current)||e.forceUpdate()},transformOrigin:lF.transformOrigin.varRef,referenceRef:x,popperRef:S,getPopperProps:k,getArrowProps:E,getArrowInnerProps:A,getReferenceProps:_}}function q$(e){const{size:t,shadowColor:r,bg:n,style:i}=e,o={...i,position:"absolute"};return t&&(o["--popper-arrow-size"]=t),r&&(o["--popper-arrow-shadow-color"]=r),n&&(o["--popper-arrow-bg"]=n),o}function K$(e={}){const{onClose:t,onOpen:r,isOpen:i,id:o}=e,a=pb(r),s=pb(t),[c,l]=(0,n.useState)(e.defaultIsOpen||!1),u=void 0!==i?i:c,d=void 0!==i,h=(0,n.useId)(),f=null!=o?o:`disclosure-${h}`,p=(0,n.useCallback)((()=>{d||l(!1),null==s||s()}),[d,s]),m=(0,n.useCallback)((()=>{d||l(!0),null==a||a()}),[d,a]),g=(0,n.useCallback)((()=>{u?p():m()}),[u,m,p]);return{isOpen:u,onOpen:m,onClose:p,onToggle:g,isControlled:d,getButtonProps:function(e={}){return{...e,"aria-expanded":u,"aria-controls":f,onClick(t){var r;null==(r=e.onClick)||r.call(e,t),g()}}},getDisclosureProps:function(e={}){return{...e,hidden:!u,id:f}}}}function W$(e,t,r,i){const o=pb(r);return(0,n.useEffect)((()=>{const n="function"===typeof e?e():null!=e?e:document;if(r&&n)return n.addEventListener(t,o,i),()=>{n.removeEventListener(t,o,i)}}),[t,e,i,o,r]),()=>{const r="function"===typeof e?e():null!=e?e:document;null==r||r.removeEventListener(t,o,i)}}var G$=e=>{var t;return(null==(t=e.current)?void 0:t.ownerDocument)||document},Z$=e=>{var t,r;return(null==(r=null==(t=e.current)?void 0:t.ownerDocument)?void 0:r.defaultView)||window};function Y$(e={}){const{openDelay:t=0,closeDelay:r=0,closeOnClick:i=!0,closeOnMouseDown:o,closeOnScroll:a,closeOnPointerDown:s=o,closeOnEsc:c=!0,onOpen:l,onClose:u,placement:d,id:h,isOpen:f,defaultIsOpen:p,arrowSize:m=10,arrowShadowColor:g,arrowPadding:v,modifiers:y,isDisabled:b,gutter:w,offset:x,direction:_,...S}=e,{isOpen:E,onOpen:A,onClose:P}=K$({isOpen:f,defaultIsOpen:p,onOpen:l,onClose:u}),{referenceRef:O,getPopperProps:T,getArrowInnerProps:C,getArrowProps:j}=V$({enabled:E,placement:d,arrowPadding:v,modifiers:y,gutter:w,offset:x,direction:_}),R=(0,n.useId)(),I=`tooltip-${null!=h?h:R}`,M=(0,n.useRef)(null),L=(0,n.useRef)(),N=(0,n.useCallback)((()=>{L.current&&(clearTimeout(L.current),L.current=void 0)}),[]),D=(0,n.useRef)(),z=(0,n.useCallback)((()=>{D.current&&(clearTimeout(D.current),D.current=void 0)}),[]),B=(0,n.useCallback)((()=>{z(),P()}),[P,z]),U=function(e,t){return(0,n.useEffect)((()=>{const r=G$(e);return r.addEventListener(X$,t),()=>r.removeEventListener(X$,t)}),[t,e]),()=>{const t=G$(e),r=Z$(e);t.dispatchEvent(new r.CustomEvent(X$))}}(M,B),F=(0,n.useCallback)((()=>{if(!b&&!L.current){E&&U();const e=Z$(M);L.current=e.setTimeout(A,t)}}),[U,b,E,A,t]),$=(0,n.useCallback)((()=>{N();const e=Z$(M);D.current=e.setTimeout(B,r)}),[r,B,N]),H=(0,n.useCallback)((()=>{E&&i&&$()}),[i,$,E]),V=(0,n.useCallback)((()=>{E&&s&&$()}),[s,$,E]),q=(0,n.useCallback)((e=>{E&&"Escape"===e.key&&$()}),[E,$]);W$((()=>G$(M)),"keydown",c?q:void 0),W$((()=>{if(!a)return null;const e=M.current;if(!e)return null;const t=sF(e);return"body"===t.localName?Z$(M):t}),"scroll",(()=>{E&&a&&B()}),{passive:!0,capture:!0}),(0,n.useEffect)((()=>{b&&(N(),E&&P())}),[b,E,P,N]),(0,n.useEffect)((()=>()=>{N(),z()}),[N,z]),W$((()=>M.current),"pointerleave",$);const K=(0,n.useCallback)(((e={},t=null)=>{const r={...e,ref:Mn(M,t,O),onPointerEnter:k(e.onPointerEnter,(e=>{"touch"!==e.pointerType&&F()})),onClick:k(e.onClick,H),onPointerDown:k(e.onPointerDown,V),onFocus:k(e.onFocus,F),onBlur:k(e.onBlur,$),"aria-describedby":E?I:void 0};return r}),[F,$,V,E,I,H,O]),W=(0,n.useCallback)(((e={},t=null)=>T({...e,style:{...e.style,[lF.arrowSize.var]:m?`${m}px`:void 0,[lF.arrowShadowColor.var]:g}},t)),[T,m,g]),G=(0,n.useCallback)(((e={},t=null)=>{const r={...e.style,position:"relative",transformOrigin:lF.transformOrigin.varRef};return{ref:t,...S,...e,id:I,role:"tooltip",style:r}}),[S,I]);return{isOpen:E,show:F,hide:$,getTriggerProps:K,getTooltipProps:G,getTooltipPositionerProps:W,getArrowProps:j,getArrowInnerProps:C}}var X$="chakra-ui:close-tooltip";var J$=cn(CA.div),Q$=g(((e,t)=>{var r,i;const o=xn("Tooltip",e),a=ht(e),s=gn(),{children:c,label:l,shouldWrapChildren:u,"aria-label":d,hasArrow:h,bg:f,portalProps:p,background:m,backgroundColor:g,bgColor:v,motionProps:y,...b}=a,w=null!=(i=null!=(r=null!=m?m:g)?r:f)?i:v;if(w){o.bg=w;const e=function(e,t,r){var n,i,o;return null!=(o=null==(i=null==(n=e.__cssMap)?void 0:n[`${t}.${r}`])?void 0:i.varRef)?o:r}(s,"colors",w);o[lF.arrowBg.var]=e}const x=Y$({...b,direction:s.direction});let _;if("string"===typeof c||u)_=(0,ln.jsx)(cn.span,{display:"inline-block",tabIndex:0,...x.getTriggerProps(),children:c});else{const e=n.Children.only(c);_=(0,n.cloneElement)(e,x.getTriggerProps(e.props,e.ref))}const S=!!d,k=x.getTooltipProps({},t),E=S?function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(k,["role","id"]):k,A=function(e,t){const r={};for(const n of t)n in e&&(r[n]=e[n]);return r}(k,["role","id"]);return l?(0,ln.jsxs)(ln.Fragment,{children:[_,(0,ln.jsx)(iP,{children:x.isOpen&&(0,ln.jsx)(dP,{...p,children:(0,ln.jsx)(cn.div,{...x.getTooltipPositionerProps(),__css:{zIndex:o.zIndex,pointerEvents:"none"},children:(0,ln.jsxs)(J$,{variants:aF,initial:"exit",animate:"enter",exit:"exit",...y,...E,__css:o,children:[l,S&&(0,ln.jsx)(cn.span,{srOnly:!0,...A,children:d}),h&&(0,ln.jsx)(cn.div,{"data-popper-arrow":!0,className:"chakra-tooltip__arrow-wrapper",children:(0,ln.jsx)(cn.div,{"data-popper-arrow-inner":!0,className:"chakra-tooltip__arrow",__css:{bg:o.bg}})})]})})})})]}):(0,ln.jsx)(ln.Fragment,{children:c})}));Q$.displayName="Tooltip";var eH=r(9685),tH=r.n(eH),rH=r(9378),nH=r.n(rH);const iH="default"in nH()?nH().default:nH(),oH=({address:e,identiconSize:t,...r})=>(0,ln.jsx)(fn,{sx:{canvas:{borderRadius:"4px"}},zIndex:10,background:"white",borderRadius:"4px","data-testid":"identicon",...r,children:(0,ln.jsx)(iH,{background:"white",size:t,string:e,style:{borderRadius:4}})}),aH={stroke:EP.gray[400],borderRadius:"4px",p:"5px",bg:EP.gray[500]},sH=({addressKind:e,size:t="sm",identiconSize:r=20})=>{let n;switch(t){case"sm":n="30px";break;case"md":n="38.5px";break;case"lg":n="45.5px"}switch(e.type){case"secret_key":case"mnemonic":return(0,ln.jsx)(oH,{width:n,height:n,padding:"5px",address:e.pkh,identiconSize:r});case"social":return(0,ln.jsx)(pR,{width:n,height:n,...aH,background:"white"});case"ledger":return(0,ln.jsx)(tR,{width:n,height:n,...aH,color:EP.gray[400]});case"multisig":return(0,ln.jsx)(Kj,{width:n,height:n,...aH});case"contact":return(0,ln.jsx)(_j,{width:n,height:n,...aH});case"unknown":return(0,ln.jsx)(xR,{width:n,height:n,...aH});case"baker":{const t=`https://services.tzkt.io/v1/avatars/${e.pkh}`;return(0,ln.jsx)(uz,{width:"30px",height:"30px",marginRight:"8px","data-testid":"baker-icon",ratio:1,children:(0,ln.jsx)(yR,{src:t})})}}};var cH=r(8614),lH=r(4200),uH=r(1787),dH=r(4516),hH=r(292),fH=r.n(hH);function pH(e,t,r,n){return new(r||(r=Promise))((function(i,o){function a(e){try{c(n.next(e))}catch(t){o(t)}}function s(e){try{c(n.throw(e))}catch(t){o(t)}}function c(e){e.done?i(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(a,s)}c((n=n.apply(e,t||[])).next())}))}"function"===typeof SuppressedError&&SuppressedError;class mH{constructor(e,t,r){this.key=e;const n=e.substring(0,t?5:4);if(!Ys(n))throw new ds(`${hc(Zs.NO_PREFIX_MATCHED)} expecting either '${Fs.EDESK}' or '${Fs.EDSK}'.`);if(this._key=r(yc(this.key,Ks[n])),this._publicKey=this._key.slice(32),!this._key)throw new ds("unable to decode");this.isInit=this.init()}init(){return pH(this,void 0,void 0,(function*(){if(64!==this._key.length){const{publicKey:e,secretKey:t}=(0,Ka._w)(new Uint8Array(this._key));this._publicKey=e,this._key=t}return!0}))}sign(e,t){return pH(this,void 0,void 0,(function*(){yield this.isInit;const r=(0,Ka.Xx)(new Uint8Array(this._key),new Uint8Array(t)),n=qs()(r),i=e+kc(n);return{bytes:e,sig:vc(r,Ks.sig),prefixSig:vc(r,Ks.edsig),sbytes:i}}))}publicKey(){return pH(this,void 0,void 0,(function*(){return yield this.isInit,vc(this._publicKey,Ks.edpk)}))}publicKeyHash(){return pH(this,void 0,void 0,(function*(){return yield this.isInit,vc((0,Wa.hash)(new Uint8Array(this._publicKey),20),Ks.tz1)}))}secretKey(){return pH(this,void 0,void 0,(function*(){yield this.isInit;let e=this._key;const{secretKey:t}=(0,Ka._w)(new Uint8Array(e).slice(0,32));return e=qs()(t),vc(e,Ks.edsk)}))}}const gH={p256:{pk:Ks.p2pk,sk:Ks.p2sk,pkh:Ks.tz3,sig:Ks.p2sig},secp256k1:{pk:Ks.sppk,sk:Ks.spsk,pkh:Ks.tz2,sig:Ks.spsig}};class vH{constructor(e,t,r,n){this.curve=e,this.key=t;const i=t.substring(0,r?5:4);if(!Ys(i))throw new ds(hc(Zs.NO_PREFIX_MATCHED)+` expecting one of the following prefix '${Fs.SPSK}', '${Fs.SPESK}', '${Fs.P2SK}' or '${Fs.P2ESK}'.`);this._key=n(yc(this.key,Ks[i]));const o=new(Hs().ec)(this.curve).keyFromPrivate(this._key),a=o.getPublic().getY().toArray(),s=(a.length<32?a[a.length-1]:a[31])%2?3:2,c=new Array(32).fill(0);this._publicKey=qs()(new Uint8Array([s].concat(c.concat(o.getPublic().getX().toArray()).slice(-32))))}sign(e,t){return pH(this,void 0,void 0,(function*(){const r=new(Hs().ec)(this.curve).keyFromPrivate(this._key).sign(t,{canonical:!0}),n=r.r.toString("hex",64)+r.s.toString("hex",64),i=e+n;return{bytes:e,sig:vc(n,Ks.sig),prefixSig:vc(n,gH[this.curve].sig),sbytes:i}}))}publicKey(){return pH(this,void 0,void 0,(function*(){return vc(this._publicKey,gH[this.curve].pk)}))}publicKeyHash(){return pH(this,void 0,void 0,(function*(){return vc((0,Wa.hash)(new Uint8Array(this._publicKey),20),gH[this.curve].pkh)}))}secretKey(){return pH(this,void 0,void 0,(function*(){return vc(this._key,gH[this.curve].sk)}))}}const yH=vH.bind(null,"p256"),bH=vH.bind(null,"secp256k1");function wH(e){const t=[];for(let r=0;r64)throw new kH(o.length);if(!Object.prototype.hasOwnProperty.call(PH,r))throw new SH(`Unsupported curve "${r}" expecting either "p256" or "secp256k1"`);const a=new $s.ec(r);if(256!==(null===(n=a.n)||void 0===n?void 0:n.bitLength()))throw new _H(`Invalid curve "${r}" with bit size "${null===(i=a.n)||void 0===i?void 0:i.bitLength()}" expecting bit size "256"`);const s=(new TextEncoder).encode(PH[r]);let c=null,l=new Uint8Array,u=0;for(;0===u;){const e=new uH.zU(dH.SHA512,s).update(o).digest();c=new(fH())(e.subarray(0,32)),l=e.subarray(32),c.isZero()||c.cmp(a.n)>=0?o=e:u++}const d=a.keyPair({});return d.priv=c,new e(d,l)}derive(t){const r=new Uint8Array(37);0!==(t&TH)?r.set(this.keyPair.getPrivate().toArray(),1):r.set(this.keyPair.getPublic().encodeCompressed(),0),new DataView(r.buffer).setUint32(33,t);let n=new(fH())(0),i=new Uint8Array,o=0;for(;0===o;){const e=new uH.zU(dH.SHA512,this.chainCode).update(r).digest();n=new(fH())(e.subarray(0,32)),i=e.subarray(32),this.keyPair.ec.n&&n.cmp(this.keyPair.ec.n)<0&&(n=n.add(this.keyPair.getPrivate()).mod(this.keyPair.ec.n),n.isZero()||o++),r.set(i,1),r[0]=1}const a=this.keyPair.ec.keyPair({});return a.priv=n,new e(a,i)}derivePath(e){let t=this;for(const r of e)t=t.derive(r);return t}bytes(){if(!this.keyPair.priv)throw new ds("missing private key");const e=this.keyPair.priv.toArray(),t=new Uint8Array(32);return t.set(e,t.length-e.length),t}};const TH=2147483648;class CH extends Array{static from(e){return super.from(e).map((e=>e>>>0))}static fromString(e){if(0===e.length)return new CH;let t=e.split("/");const r=[];"m"===t[0]&&(t=t.slice(1));for(let n of t){if(0===n.length)throw new ss(e,": Invalid BIP32 path");let t=0;const i=n[n.length-1];"'"!==i&&"h"!==i&&"H"!==i||(t=TH,n=n.slice(0,n.length-1));const o=(parseInt(n,10)|t)>>>0;r.push(o)}return CH.from(r)}}class jH{constructor(e,t){this.priv=e,this.chainCode=t}static fromSeed(e){const t="string"===typeof e?wH(e):e;if(t.length<16||t.length>64)throw new kH(t.length);const r=(new TextEncoder).encode("ed25519 seed"),n=new uH.zU(dH.SHA512,r).update(t).digest();return new jH((0,Ka._w)(n.subarray(0,32)).secretKey,n.subarray(32))}seed(){return this.priv.subarray(0,32)}derive(e){if(0===(e&TH))throw new ss(e.toString(),": Non-hardened derivation path.");const t=new Uint8Array(37);t.set(this.seed(),1),new DataView(t.buffer).setUint32(33,e);const r=new uH.zU(dH.SHA512,this.chainCode).update(t).digest();return new jH((0,Ka._w)(r.subarray(0,32)).secretKey,r.subarray(32))}derivePath(e){let t=this;for(const r of e)t=t.derive(r);return t}}class RH{static fromFundraiser(e,t,r){if(!lH._I(r))throw new xH(r);const n=vc(lH.Z1(r,`${e}${t}`).slice(0,32),Ks.edsk2);return new RH(n)}static fromSecretKey(e,t){return pH(this,void 0,void 0,(function*(){return new RH(e,t)}))}static fromMnemonic({mnemonic:e,password:t="",derivationPath:r="44'/1729'/0'/0'",curve:n="ed25519"}){if(!lH._I(e))throw new xH(e);const i=((e,t,r)=>{const n=CH.fromString(t);let i;switch(r){case"ed25519":return i=jH.fromSeed(e).derivePath(n),vc(i.seed().slice(0,32),Ks.edsk2);case"secp256k1":case"p256":{const t="secp256k1"===r?Ks.spsk:Ks.p2sk;let i=OH.fromSeed(e,r);return i=i.derivePath(n),vc(new Uint8Array(i.keyPair.getPrivate().toArray()),t)}case"bip25519":throw new EH;default:throw new SH(`Unsupported curve "${r}" expecting one of the following "ed25519", "secp256k1", "p256"`)}})(lH.Z1(e,t),r,n);return new RH(i)}constructor(e,t){const r="e"===e.substring(2,3);let n=e=>e;if(r){if(!t)throw new AH("No passphrase provided to decrypt encrypted key");n=e=>{const r=qs()(e.slice(0,8)),n=e.slice(8),i=cH.pbkdf2Sync(t,r,32768,32,"sha512");return(0,xM.openSecretBox)(new Uint8Array(i),new Uint8Array(24),new Uint8Array(n))}}switch(e.substring(0,4)){case"edes":case"edsk":this._key=new mH(e,r,n);break;case"spsk":case"spes":this._key=new bH(e,r,n);break;case"p2sk":case"p2es":this._key=new yH(e,r,n);break;default:throw new ds(`${hc(Zs.NO_PREFIX_MATCHED)} expecting one of the following '${Fs.EDESK}', '${Fs.EDSK}', '${Fs.SPSK}', '${Fs.SPESK}', '${Fs.P2SK}' or '${Fs.P2ESK}'.`)}}sign(e,t){return pH(this,void 0,void 0,(function*(){let r=_c(e);"undefined"!==typeof t&&(r=Sc(t,r));const n=(0,Wa.hash)(r,32);return this._key.sign(e,n)}))}publicKey(){return pH(this,void 0,void 0,(function*(){return this._key.publicKey()}))}publicKeyHash(){return pH(this,void 0,void 0,(function*(){return this._key.publicKeyHash()}))}secretKey(){return pH(this,void 0,void 0,(function*(){return this._key.secretKey()}))}}const IH="44'/1729'/?'/0'",MH={label:"Default - m/44'/1729'/?'/0'",value:IH},LH=[MH,{label:"m/44'/1729'/0'/?'",value:"44'/1729'/0'/?'"},{label:"m/44'/1729'/?'/0'/0'",value:"44'/1729'/?'/0'/0'"},{label:"m/44'/1729'/0'/0'/?'",value:"44'/1729'/0'/0'/?'"}],NH=(e,t)=>e.replace("?",t.toString()),DH=(e,t,r,n,i,o)=>({curve:"ed25519",derivationPath:r,derivationPathPattern:n,pk:e,address:Yu(t),seedFingerPrint:i,label:o,type:"mnemonic"}),zH=()=>CR((e=>e.contacts)),BH=()=>{const e=zH();return{addressExistsInContacts:t=>t in e,nameExistsInContacts:t=>Md(e,t)}},UH=()=>{const e=zH();return t=>t in e?e[t].name:void 0},FH=()=>CR((e=>e.accounts.seedPhrases)),$H=()=>CR((e=>e.accounts.items)),HH=()=>{const e=$H();return t=>e.find((e=>e.address.pkh===t))},VH=()=>{const e=$H(),t=CR((e=>e.multisigs.items));return[...e,...t]},qH=()=>{const e=VH().map((e=>e.label)),t=Object.values(zH()).map((e=>e.name));return r=>![...e,...t].includes(r)},KH=()=>{const e=qH();return(t,r=1)=>{const n=[];for(let i=1;n.length{const e=VH();return t=>e.find((e=>e.address.pkh===t))},GH=()=>{const e=WH();return t=>{const r=e(t);if(!r)throw new Error(`You do not own account:${t}`);return r}},ZH=e=>VH().map((e=>e.address.pkh)).includes(e),YH=()=>{const e=(()=>{const e=$H();return t=>{const r=e.filter((e=>t.signers.some((t=>t.pkh===e.address.pkh))));return 0===r.length&&console.warn("Wallet doesn't own any signers for multisig contract "+t.address.pkh),r}})();return t=>{switch(t.type){case"ledger":case"mnemonic":case"social":case"secret_key":return[t];case"multisig":return e(t)}}},XH=()=>{const e=YH(),t=n3();return r=>(0,Va.maxBy)(e(r),(e=>t(e.address.pkh)||"0"))};var JH=r(4062),QH=r.n(JH);const eV={},tV={},rV=(e,t)=>{tV[e]=t},nV=e=>{class t extends Error{constructor(r,n,i){if(super(r||e,i),Object.setPrototypeOf(this,t.prototype),this.name=e,n)for(const e in n)this[e]=n[e];if(i&&function(e){return"object"===typeof e}(i)&&"cause"in i&&!("cause"in this)){const e=i.cause;this.cause=e,"stack"in e&&(this.stack=this.stack+"\nCAUSE: "+e.stack)}}}return eV[e]=t,t};nV("AccountNameRequired"),nV("AccountNotSupported"),nV("AmountRequired"),nV("BluetoothRequired"),nV("BtcUnmatchedApp"),nV("CantOpenDevice"),nV("CashAddrNotSupported"),nV("ClaimRewardsFeesWarning"),nV("CurrencyNotSupported"),nV("DeviceAppVerifyNotSupported"),nV("DeviceGenuineSocketEarlyClose"),nV("DeviceNotGenuine"),nV("DeviceOnDashboardExpected"),nV("DeviceOnDashboardUnexpected"),nV("DeviceInOSUExpected"),nV("DeviceHalted"),nV("DeviceNameInvalid"),nV("DeviceSocketFail"),nV("DeviceSocketNoBulkStatus"),nV("DeviceSocketNoBulkStatus"),nV("UnresponsiveDeviceError");const iV=nV("DisconnectedDevice"),oV=nV("DisconnectedDeviceDuringOperation"),aV=(nV("DeviceExtractOnboardingStateError"),nV("DeviceOnboardingStatePollingError"),nV("EnpointConfig"),nV("EthAppPleaseEnableContractData"),nV("FeeEstimationFailed"),nV("FirmwareNotRecognized"),nV("HardResetFail"),nV("InvalidXRPTag"),nV("InvalidAddress"),nV("InvalidNonce"),nV("InvalidAddressBecauseDestinationIsAlsoSource"),nV("LatestMCUInstalledError"),nV("UnknownMCU"),nV("LedgerAPIError"),nV("LedgerAPIErrorWithMessage"),nV("LedgerAPINotAvailable"),nV("ManagerAppAlreadyInstalled"),nV("ManagerAppRelyOnBTC"),nV("ManagerAppDepInstallRequired"),nV("ManagerAppDepUninstallRequired"),nV("ManagerDeviceLocked"),nV("ManagerFirmwareNotEnoughSpace"),nV("ManagerNotEnoughSpace"),nV("ManagerUninstallBTCDep"),nV("NetworkDown"),nV("NetworkError"),nV("NoAddressesFound"),nV("NotEnoughBalance"),nV("NotEnoughBalanceToDelegate"),nV("NotEnoughBalanceInParentAccount"),nV("NotEnoughSpendableBalance"),nV("NotEnoughBalanceBecauseDestinationNotCreated"),nV("NoAccessToCamera"),nV("NotEnoughGas"),nV("NotEnoughGasSwap"),nV("NotSupportedLegacyAddress"),nV("GasLessThanEstimate"),nV("PriorityFeeTooLow"),nV("PriorityFeeTooHigh"),nV("PriorityFeeHigherThanMaxFee"),nV("MaxFeeTooLow"),nV("PasswordsDontMatch"),nV("PasswordIncorrect"),nV("RecommendSubAccountsToEmpty"),nV("RecommendUndelegation"),nV("TimeoutTagged"),nV("UnexpectedBootloader"),nV("MCUNotGenuineToDashboard"),nV("RecipientRequired"),nV("UnavailableTezosOriginatedAccountReceive"),nV("UnavailableTezosOriginatedAccountSend"),nV("UpdateFetchFileFail"),nV("UpdateIncorrectHash"),nV("UpdateIncorrectSig"),nV("UpdateYourApp"),nV("UserRefusedDeviceNameChange"),nV("UserRefusedAddress"),nV("UserRefusedFirmwareUpdate"),nV("UserRefusedAllowManager"),nV("UserRefusedOnDevice"),nV("ExpertModeRequired"),nV("TransportOpenUserCancelled")),sV=nV("TransportInterfaceNotAvailable"),cV=nV("TransportRaceCondition"),lV=nV("TransportWebUSBGestureRequired");nV("TransactionHasBeenValidatedError"),nV("TransportExchangeTimeoutError"),nV("DeviceShouldStayInApp"),nV("WebsocketConnectionError"),nV("WebsocketConnectionFailed"),nV("WrongDeviceForAccount"),nV("WrongAppForCurrency"),nV("ETHAddressNonEIP"),nV("CantScanQRCode"),nV("FeeNotLoaded"),nV("FeeNotLoadedSwap"),nV("FeeRequired"),nV("FeeTooHigh"),nV("PendingOperation"),nV("SyncError"),nV("PairingFailed"),nV("PeerRemovedPairing"),nV("GenuineCheckFailed"),nV("LedgerAPI4xx"),nV("LedgerAPI5xx"),nV("FirmwareOrAppUpdateRequired"),nV("ReplacementTransactionUnderpriced"),nV("OpReturnSizeLimit"),nV("DustLimit"),nV("LanguageNotFound"),nV("NoDBPathGiven"),nV("DBWrongPassword"),nV("DBNotReset");var uV;!function(e){e.Unknown="Unknown",e.LocationServicesDisabled="LocationServicesDisabled",e.LocationServicesUnauthorized="LocationServicesUnauthorized",e.BluetoothScanStartFailed="BluetoothScanStartFailed"}(uV||(uV={}));class dV extends Error{constructor(e,t){const r="TransportError";super(e||r),this.name=r,this.message=e,this.stack=new Error(e).stack,this.id=t}}rV("TransportError",(e=>new dV(e.message,e.id)));const hV={ACCESS_CONDITION_NOT_FULFILLED:38916,ALGORITHM_NOT_SUPPORTED:38020,CLA_NOT_SUPPORTED:28160,CODE_BLOCKED:38976,CODE_NOT_INITIALIZED:38914,COMMAND_INCOMPATIBLE_FILE_STRUCTURE:27009,CONDITIONS_OF_USE_NOT_SATISFIED:27013,CONTRADICTION_INVALIDATION:38928,CONTRADICTION_SECRET_CODE_STATUS:38920,CUSTOM_IMAGE_BOOTLOADER:26159,CUSTOM_IMAGE_EMPTY:26158,FILE_ALREADY_EXISTS:27273,FILE_NOT_FOUND:37892,GP_AUTH_FAILED:25344,HALTED:28586,INCONSISTENT_FILE:37896,INCORRECT_DATA:27264,INCORRECT_LENGTH:26368,INCORRECT_P1_P2:27392,INS_NOT_SUPPORTED:27904,DEVICE_NOT_ONBOARDED:27911,DEVICE_NOT_ONBOARDED_2:26129,INVALID_KCV:38021,INVALID_OFFSET:37890,LICENSING:28482,LOCKED_DEVICE:21781,MAX_VALUE_REACHED:38992,MEMORY_PROBLEM:37440,MISSING_CRITICAL_PARAMETER:26624,NO_EF_SELECTED:37888,NOT_ENOUGH_MEMORY_SPACE:27268,OK:36864,PIN_REMAINING_ATTEMPTS:25536,REFERENCED_DATA_NOT_FOUND:27272,SECURITY_STATUS_NOT_SATISFIED:27010,TECHNICAL_PROBLEM:28416,UNKNOWN_APDU:27906,USER_REFUSED_ON_DEVICE:21761,NOT_ENOUGH_SPACE:20738};class fV extends Error{constructor(e,{canBeMappedToChildError:t=!0}={}){const r=Object.keys(hV).find((t=>hV[t]===e))||"UNKNOWN_ERROR",n=function(e){switch(e){case 26368:return"Incorrect length";case 26624:return"Missing critical parameter";case 27010:return"Security not satisfied (dongle locked or have invalid access rights)";case 27013:return"Condition of use not satisfied (denied by the user?)";case 27264:return"Invalid data received";case 27392:return"Invalid parameter received";case 21781:return"Locked device"}if(28416<=e&&e<=28671)return"Internal error, please report"}(e)||r,i=`Ledger device: ${n} (0x${e.toString(16)})`;if(super(i),this.name="TransportStatusError",this.statusCode=e,this.statusText=r,t&&e===hV.LOCKED_DEVICE)return new pV(i)}}class pV extends fV{constructor(e){super(hV.LOCKED_DEVICE,{canBeMappedToChildError:!1}),e&&(this.message=e),this.name="LockedDeviceError"}}rV("TransportStatusError",(e=>new fV(e.statusCode)));let mV=0;const gV=[],vV=(e,t,r)=>{const n={type:e,id:String(++mV),date:new Date};t&&(n.message=t),r&&(n.data=r),wV(n)};class yV{constructor(e,t){this.type=e,this.context=t}trace(e,t){(({type:e,message:t,data:r,context:n})=>{const i={type:e,id:String(++mV),date:new Date};t&&(i.message=t),r&&(i.data=r),n&&(i.context=n),wV(i)})({type:this.type,message:e,data:t,context:this.context})}getContext(){return this.context}setContext(e){this.context=e}updateContext(e){this.context=Object.assign(Object.assign({},this.context),e)}getType(){return this.type}setType(e){this.type=e}withType(e){return new yV(e,this.context)}withContext(e){return new yV(this.type,e)}withUpdatedContext(e){return new yV(this.type,Object.assign(Object.assign({},this.context),e))}}const bV=e=>(gV.push(e),()=>{const t=gV.indexOf(e);-1!==t&&(gV[t]=gV[gV.length-1],gV.pop())});function wV(e){for(let r=0;r_V(this,void 0,void 0,(function*(){const s=this.tracer.withUpdatedContext({function:"send"});if(i.length>=256)throw s.trace("data.length exceeded 256 bytes limit",{dataLength:i.length}),new dV("data.length exceed 256 bytes limit. Got: "+i.length,"DataLengthTooBig");s.trace("Starting an exchange",{abortTimeoutMs:a});const c=yield this.exchange(xV.concat([xV.from([e,t,r,n]),xV.from([i.length]),i]),{abortTimeoutMs:a});s.trace("Received response from exchange");const l=c.readUInt16BE(c.length-2);if(!o.some((e=>e===l)))throw new fV(l);return c})),this._appAPIlock=null,this.tracer=new yV(null!==t&&void 0!==t?t:"transport",e)}exchange(e,{abortTimeoutMs:t}={}){throw new Error("exchange not implemented")}exchangeBulk(e,t){let r=!1;return(()=>_V(this,void 0,void 0,(function*(){if(!r)for(const n of e){const e=yield this.exchange(n);if(r)return;const i=e.readUInt16BE(e.length-2);if(i!==hV.OK)throw new fV(i);t.next(e)}})))().then((()=>!r&&t.complete()),(e=>!r&&t.error(e))),{unsubscribe:()=>{r=!0}}}setScrambleKey(e){}close(){return Promise.resolve()}on(e,t){this._events.on(e,t)}off(e,t){this._events.removeListener(e,t)}emit(e,...t){this._events.emit(e,...t)}setDebugMode(){console.warn("setDebugMode is deprecated. use @ledgerhq/logs instead. No logs are emitted in this anymore.")}setExchangeTimeout(e){this.exchangeTimeout=e}setExchangeUnresponsiveTimeout(e){this.unresponsiveTimeout=e}static create(e=3e3,t){return new Promise(((r,n)=>{let i=!1;const o=this.listen({next:t=>{i=!0,o&&o.unsubscribe(),a&&clearTimeout(a),this.open(t.descriptor,e).then(r,n)},error:e=>{a&&clearTimeout(a),n(e)},complete:()=>{a&&clearTimeout(a),i||n(new dV(this.ErrorMessage_NoDeviceFound,"NoDeviceFound"))}}),a=t?setTimeout((()=>{o.unsubscribe(),n(new dV(this.ErrorMessage_ListenTimeout,"ListenTimeout"))}),t):null}))}exchangeAtomicImpl(e){return _V(this,void 0,void 0,(function*(){const t=this.tracer.withUpdatedContext({function:"exchangeAtomicImpl"});if(t.trace("Starting an atomic APDU exchange",{unresponsiveTimeout:this.unresponsiveTimeout}),this.exchangeBusyPromise)throw t.trace("Atomic exchange is already busy"),new cV("An action was already pending on the Ledger device. Please deny or reconnect.");let r;const n=new Promise((e=>{r=e}));this.exchangeBusyPromise=n;let i=!1;const o=setTimeout((()=>{t.trace('Timeout reached, emitting Transport event "unresponsive"',{unresponsiveTimeout:this.unresponsiveTimeout}),i=!0,this.emit("unresponsive")}),this.unresponsiveTimeout);try{const r=yield e();return i&&(t.trace("Device was unresponsive, emitting responsive"),this.emit("responsive")),r}finally{t.trace("Finalize, clearing busy guard"),clearTimeout(o),r&&r(),this.exchangeBusyPromise=null}}))}decorateAppAPIMethods(e,t,r){for(const n of t)e[n]=this.decorateAppAPIMethod(n,e[n],e,r)}decorateAppAPIMethod(e,t,r,n){return(...i)=>_V(this,void 0,void 0,(function*(){const{_appAPIlock:o}=this;if(o)return Promise.reject(new dV("Ledger Device is busy (lock "+o+")","TransportLocked"));try{return this._appAPIlock=e,this.setScrambleKey(n),yield t.apply(r,i)}finally{this._appAPIlock=null}}))}setTraceContext(e){this.tracer=this.tracer.withContext(e)}updateTraceContext(e){this.tracer.updateContext(e)}getTraceContext(){return this.tracer.getContext()}}SV.ErrorMessage_ListenTimeout="No Ledger device found (timeout)",SV.ErrorMessage_NoDeviceFound="No Ledger device found";const kV=SV;var EV=r(4872).Buffer;function AV(e){const t=EV.alloc(2);return t.writeUInt16BE(e,0),t}const PV={data:EV.alloc(0),dataLength:0,sequence:0},OV=(e,t)=>({makeBlocks(r){let n=EV.concat([AV(r.length),r]);const i=t-5,o=Math.ceil(n.length/i);n=EV.concat([n,EV.alloc(o*i-n.length+1).fill(0)]);const a=[];for(let t=0;ti&&(n=n.slice(0,i)),{data:n,dataLength:i,sequence:o}},getReducedResult(e){if(e&&e.dataLength===e.data.length)return e.data}});var TV=r(5353),CV=r.n(TV);var jV;!function(e){e.blue="blue",e.nanoS="nanoS",e.nanoSP="nanoSP",e.nanoX="nanoX",e.stax="stax"}(jV||(jV={}));const RV={[jV.blue]:{id:jV.blue,productName:"Ledger\xa0Blue",productIdMM:0,legacyUsbProductId:0,usbOnly:!0,memorySize:491520,masks:[822083584,822149120],getBlockSize:e=>4096},[jV.nanoS]:{id:jV.nanoS,productName:"Ledger\xa0Nano\xa0S",productIdMM:16,legacyUsbProductId:1,usbOnly:!0,memorySize:327680,masks:[823132160],getBlockSize:e=>{var t;return CV().lt(null!==(t=CV().coerce(e))&&void 0!==t?t:"","2.0.0")?4096:2048}},[jV.nanoSP]:{id:jV.nanoSP,productName:"Ledger Nano S Plus",productIdMM:80,legacyUsbProductId:5,usbOnly:!0,memorySize:1572864,masks:[856686592],getBlockSize:e=>32},[jV.nanoX]:{id:jV.nanoX,productName:"Ledger\xa0Nano\xa0X",productIdMM:64,legacyUsbProductId:4,usbOnly:!1,memorySize:2097152,masks:[855638016],getBlockSize:e=>4096,bluetoothSpec:[{serviceUuid:"13d63400-2c97-0004-0000-4c6564676572",notifyUuid:"13d63400-2c97-0004-0001-4c6564676572",writeUuid:"13d63400-2c97-0004-0002-4c6564676572",writeCmdUuid:"13d63400-2c97-0004-0003-4c6564676572"}]},[jV.stax]:{id:jV.stax,productName:"Ledger\xa0Stax",productIdMM:96,legacyUsbProductId:6,usbOnly:!1,memorySize:1572864,masks:[857735168],getBlockSize:e=>32,bluetoothSpec:[{serviceUuid:"13d63400-2c97-6004-0000-4c6564676572",notifyUuid:"13d63400-2c97-6004-0001-4c6564676572",writeUuid:"13d63400-2c97-6004-0002-4c6564676572",writeCmdUuid:"13d63400-2c97-6004-0003-4c6564676572"}]}},IV=(jV.blue,jV.nanoS,jV.nanoSP,jV.nanoX,jV.stax,Object.values(RV)),MV=11415,LV=e=>{const t=IV.find((t=>t.legacyUsbProductId===e));if(t)return t;const r=e>>8,n=IV.find((e=>e.productIdMM===r));return n},NV=[],DV={};for(const r in RV){const e=RV[r],{bluetoothSpec:t}=e;if(t)for(let r=0;re.vendorId===MV))}))}var $V=r(4872).Buffer,HV=function(e,t,r,n){return new(r||(r=Promise))((function(i,o){function a(e){try{c(n.next(e))}catch(t){o(t)}}function s(e){try{c(n.throw(e))}catch(t){o(t)}}function c(e){e.done?i(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(a,s)}c((n=n.apply(e,t||[])).next())}))};class VV extends kV{constructor(e,t){super(),this.channel=Math.floor(65535*Math.random()),this.packetSize=64,this._disconnectEmitted=!1,this._emitDisconnect=e=>{this._disconnectEmitted||(this._disconnectEmitted=!0,this.emit("disconnect",e))},this.device=e,this.interfaceNumber=t,this.deviceModel=LV(e.productId)}static request(){return HV(this,void 0,void 0,(function*(){const e=yield UV();return VV.open(e)}))}static openConnected(){return HV(this,void 0,void 0,(function*(){const e=yield FV();return 0===e.length?null:VV.open(e[0])}))}static open(e){return HV(this,void 0,void 0,(function*(){yield e.open(),null===e.configuration&&(yield e.selectConfiguration(1)),yield KV(e);const t=e.configurations[0].interfaces.find((({alternates:e})=>e.some((e=>255===e.interfaceClass))));if(!t)throw new sV("No WebUSB interface found for your Ledger device. Please upgrade firmware or contact techsupport.");const r=t.interfaceNumber;try{yield e.claimInterface(r)}catch(o){throw yield e.close(),new sV(o.message)}const n=new VV(e,r),i=t=>{e===t.device&&(navigator.usb.removeEventListener("disconnect",i),n._emitDisconnect(new iV))};return navigator.usb.addEventListener("disconnect",i),n}))}close(){return HV(this,void 0,void 0,(function*(){yield this.exchangeBusyPromise,yield this.device.releaseInterface(this.interfaceNumber),yield KV(this.device),yield this.device.close()}))}exchange(e){return HV(this,void 0,void 0,(function*(){const t=yield this.exchangeAtomicImpl((()=>HV(this,void 0,void 0,(function*(){const{channel:t,packetSize:r}=this;vV("apdu","=> "+e.toString("hex"));const n=OV(t,r),i=n.makeBlocks(e);for(let e=0;e{if(e&&e.message&&e.message.includes("disconnected"))throw this._emitDisconnect(e),new oV(e.message);throw e}));return t}))}setScrambleKey(){}}VV.isSupported=()=>Promise.resolve(!!navigator&&!!navigator.usb&&"function"===typeof navigator.usb.getDevices),VV.list=FV,VV.listen=e=>{let t=!1;return function(){return zV(this,void 0,void 0,(function*(){const e=yield FV();return e.length>0?e[0]:UV()}))}().then((r=>{if(!t){const t=LV(r.productId);e.next({type:"add",descriptor:r,deviceModel:t}),e.complete()}}),(t=>{window.DOMException&&t instanceof window.DOMException&&18===t.code?e.error(new lV(t.message)):e.error(new aV(t.message))})),{unsubscribe:function(){t=!0}}};const qV=VV;function KV(e){return HV(this,void 0,void 0,(function*(){try{yield e.reset()}catch(Ele){console.warn(Ele)}}))}var WV=r(4872).Buffer;function GV(e,t,r,n){return new(r||(r=Promise))((function(i,o){function a(e){try{c(n.next(e))}catch(t){o(t)}}function s(e){try{c(n.throw(e))}catch(t){o(t)}}function c(e){e.done?i(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(a,s)}c((n=n.apply(e,t||[])).next())}))}"function"===typeof SuppressedError&&SuppressedError;function ZV(e){const t=[];e.split("/").forEach((e=>{let r=parseInt(e,10);Number.isNaN(r)||(e.length>1&&"'"===e[e.length-1]&&(r+=2147483648),t.push(r))}));const r=WV.alloc(1+4*t.length);return r[0]=t.length,t.forEach(((e,t)=>{r.writeUInt32BE(e,1+4*t)})),r}function YV(e,t){const r=WV.alloc(32);r.fill(0);let n=t[e],i=e+1;return n>32&&(i+=n-32,n=32),t.copy(r,32-n,i,i+n),{buffer:r,idxValueStart:i,length:n}}class XV extends Ja{constructor(e){super(),this.message=e,this.name="InvalidLedgerResponseError"}}class JV extends Ja{constructor(e){super(),this.cause=e,this.name="PublicKeyRetrievalError",this.message="Unable to retrieve Public Key from Ledger"}}class QV extends Ja{constructor(){super(),this.name="PublicKeyHashRetrievalError",this.message="Unable to retrieve Public Key Hash from Ledger"}}class eq extends Qa{constructor(e){super(),this.derivationType=e,this.name="InvalidDerivationTypeError",this.message=`Invalid derivation type ${e} expecting one of the following: DerivationType.ED25519, DerivationType.SECP256K1, DerivationType.P256 or DerivationType.BIP32_ED25519`}}var tq;!function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256",e[e.BIP32_ED25519=3]="BIP32_ED25519"}(tq||(tq={}));class rq{constructor(e,t="44'/1729'/0'/0'",r=!0,n=tq.ED25519){if(this.transport=e,this.path=t,this.prompt=r,this.derivationType=n,this.CLA=128,this.INS_GET_PUBLIC_KEY=2,this.INS_PROMPT_PUBLIC_KEY=3,this.INS_SIGN=4,this.FIRST_MESSAGE_SEQUENCE=0,this.LAST_MESSAGE_SEQUENCE=129,this.OTHER_MESSAGE_SEQUENCE=1,this.transport.setScrambleKey("XTZ"),!t.startsWith("44'/1729'"))throw new ss(t,`${hc(Zs.NO_PREFIX_MATCHED)} expecting prefix "44'/1729'".`);if(!Object.values(tq).includes(n))throw new eq(n.toString())}publicKeyHash(){return GV(this,void 0,void 0,(function*(){if(this._publicKeyHash||(yield this.publicKey()),this._publicKeyHash)return this._publicKeyHash;throw new QV}))}publicKey(){return GV(this,void 0,void 0,(function*(){if(this._publicKey)return this._publicKey;const e=yield this.getLedgerPublicKey(),t=e[0],r=function(e,t){return 0===t||3===t?e=e.slice(1):(e[0]=2+(1&e[64]),e=e.slice(0,33)),e}(e.slice(1,1+t),this.derivationType),n=this.getPrefixes(),i=vc(r,n.prefPk),o=vc((0,Wa.hash)(r,20),n.prefPkh);return this._publicKey=i,this._publicKeyHash=o,i}))}getLedgerPublicKey(){return GV(this,void 0,void 0,(function*(){try{let e=this.INS_PROMPT_PUBLIC_KEY;!1===this.prompt&&(e=this.INS_GET_PUBLIC_KEY);return yield this.transport.send(this.CLA,e,this.FIRST_MESSAGE_SEQUENCE,this.derivationType,ZV(this.path))}catch(e){throw new JV(e)}}))}secretKey(){return GV(this,void 0,void 0,(function*(){throw new bs("Secret key cannot be exposed")}))}sign(e,t){return GV(this,void 0,void 0,(function*(){const r=function(e,t){let r=e;"undefined"!==typeof t&&(r=WV.from(t).toString("hex").concat(e));return r}(e,t),n=WV.from(r,"hex");let i=[];i.push(ZV(this.path)),i=function(e,t){let r=0;for(;r!==t.length;){const n=r+230>=t.length?t.length-r:230,i=WV.alloc(n);t.copy(i,0,r,r+n),e.push(i),r+=n}return e}(i,n);const o=yield this.signWithLedger(i);let a;if(this.derivationType===tq.ED25519||this.derivationType===tq.BIP32_ED25519)a=o.slice(0,o.length-2).toString("hex");else{if(!function(e){let t=!0;49!==e[0]&&48!==e[0]&&(t=!1),e[1]+4!==e.length&&(t=!1),2!==e[2]&&(t=!1);const r=e[3];2!==e[4+r]&&(t=!1);const n=5+r;return n+1+e[n]+2!==e.length&&(t=!1),t}(o))throw new XV("Invalid signature return by ledger unable to parse the response");const e=YV(3,o),t=YV(e.idxValueStart+e.length+1,o);a=WV.concat([e.buffer,t.buffer]).toString("hex")}return{bytes:e,sig:vc(a,Ks[Fs.SIG]),prefixSig:vc(a,this.getPrefixes().prefSig),sbytes:e+a}}))}signWithLedger(e){return GV(this,void 0,void 0,(function*(){let t=yield this.transport.send(this.CLA,this.INS_SIGN,this.FIRST_MESSAGE_SEQUENCE,this.derivationType,e[0]);for(let r=1;r{t.push(encodeURIComponent(n)+"="+encodeURIComponent(e))}));continue}t.push(encodeURIComponent(n)+"="+encodeURIComponent(r))}const r=t.join("&");return r?`?${r}`:""}createRequest({url:e,method:t,timeout:r=this.timeout,query:n,headers:i={},json:o=!0},a){return oq(this,void 0,void 0,(function*(){const s=e+this.serialize(n);i["Content-Type"]||(i["Content-Type"]="application/json");const c=new AbortController,l=setTimeout((()=>c.abort()),r);try{const e=yield uq(s,{method:t,headers:i,body:JSON.stringify(a),signal:c.signal});if("undefined"===typeof e)throw new Error("Response is undefined");if(e.status>=400){const t=yield e.text();throw new sq(`Http error response: (${e.status}) ${t}`,e.status,e.statusText,t,s)}return o?e.json():e.text()}catch(u){throw u instanceof Error&&"AbortError"===u.name?new cq(r,s):u instanceof sq?u:new aq(String(t),s,u)}finally{clearTimeout(l)}}))}}function hq(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i{const r=e[t];let i;if("undefined"!==typeof r){if(Array.isArray(r))return i=gq(r),void(n[t]=i);i=new Us(r),n[t]=i}})),n}!function(e){e.GET_BAKING_RIGHTS="getBakingRights",e.GET_BALLOTS="getBallots",e.GET_BALLOT_LIST="getBallotList",e.GET_BIG_MAP_KEY="getBigMapKey",e.GET_BIG_MAP_EXPR="getBigMapExpr",e.GET_BLOCK_HASH="getBlockHash",e.GET_BLOCK="getBlock",e.GET_BLOCK_HEADER="getBlockHeader",e.GET_BLOCK_METADATA="getBlockMetadata",e.GET_BALANCE="getBalance",e.GET_CHAIN_ID="getChainId",e.GET_CONSTANTS="getConstants",e.GET_CONTRACT="getContract",e.GET_CURRENT_PERIOD="getCurrentPeriod",e.GET_CURRENT_PROPOSAL="getCurrentProposal",e.GET_CURRENT_QUORUM="getCurrentQuorum",e.GET_DELEGATE="getDelegate",e.GET_DELEGATES="getDelegates",e.GET_VOTING_INFO="getVotingInfo",e.GET_ENDORSING_RIGHTS="getEndorsingRights",e.GET_ENTRYPOINTS="getEntrypoints",e.GET_LIVE_BLOCKS="getLiveBlocks",e.GET_MANAGER_KEY="getManagerKey",e.GET_NORMALIZED_SCRIPT="getNormalizedScript",e.GET_PROPOSALS="getProposals",e.GET_PROTOCOLS="getProtocols",e.GET_SAPLING_DIFF_BY_CONTRACT="getSaplingDiffByContract",e.GET_SAPLING_DIFF_BY_ID="getSaplingDiffById",e.GET_SCRIPT="getScript",e.GET_STORAGE="getStorage",e.GET_SUCCESSOR_PERIOD="getSuccessorPeriod",e.GET_TX_ROLLUP_INBOX="getTxRollupInbox",e.GET_TX_ROLLUP_STATE="getTxRollupState",e.GET_VOTES_LISTINGS="getVotesListings",e.PACK_DATA="packData",e.GET_STORAGE_USED_SPACE="getStorageUsedSpace",e.GET_STORAGE_PAID_SPACE="getStoragePaidSpace",e.GET_TICKET_BALANCE="getTicketBalance",e.GET_ALL_TICKET_BALANCES="getAllTicketBalances",e.GET_PENDING_OPERATIONS="getPendingOperations",e.GET_ORIGINATION_PROOF="getOriginationProof"}(mq||(mq={}));var vq,yq,bq,wq,xq,_q,Sq,kq,Eq,Aq;!function(e){e.TOO_LARGE="too large"}(vq||(vq={})),function(e){e.BAKING_REWARDS="baking rewards",e.REWARDS="rewards",e.FEES="fees",e.DEPOSITS="deposits",e.LEGACY_REWARDS="legacy_rewards",e.LEGACY_FEES="legacy_fees",e.LEGACY_DEPOSITS="legacy_deposits",e.BLOCK_FEES="block fees",e.NONCE_REVELATION_REWARDS="nonce revelation rewards",e.DOUBLE_SIGNING_EVIDENCE_REWARDS="double signing evidence rewards",e.ENDORSING_REWARDS="endorsing rewards",e.BAKING_BONUSES="baking bonuses",e.STORAGE_FEES="storage fees",e.PUNISHMENTS="punishments",e.LOST_ENDORSING_REWARDS="lost endorsing rewards",e.SUBSIDY="subsidy",e.BURNED="burned",e.COMMITMENT="commitment",e.BOOTSTRAP="bootstrap",e.INVOICE="invoice",e.MINTED="minted",e.TX_ROLLUP_REJECTION_REWARDS="tx_rollup_rejection_rewards",e.TX_ROLLUP_REJECTION_PUNISHMENTS="tx_rollup_rejection_punishments",e.BONDS="bonds"}(yq||(yq={})),function(e){e.WASM2="wasm_2_0_0",e.ARITH="arith"}(bq||(bq={})),function(e){e.START="start",e.MOVE="move"}(wq||(wq={})),function(e){e.INBOX_PROOF="inbox_proof",e.REVEAL_PROOF="reveal_proof",e.FIRST_INPUT="first_input"}(xq||(xq={})),function(e){e.RAW_DATA_PROOF="raw_data_proof",e.METADATA_PROOF="metadata_proof",e.DAL_PAGE_PROOF="dal_page_proof"}(_q||(_q={})),function(e){e.ONGOING="ongoing",e.ENDED="ended"}(Sq||(Sq={})),function(e){e.LOSER="loser",e.DRAW="draw"}(kq||(kq={})),function(e){e.CONFLICT_RESOLVED="conflict_resolved",e.TIMEOUT="timeout"}(Eq||(Eq={})),function(e){e.ORIGINATION="origination",e.DELEGATION="delegation",e.REVEAL="reveal",e.TRANSACTION="transaction",e.ACTIVATION="activate_account",e.ENDORSEMENT="endorsement",e.PREENDORSEMENT="preendorsement",e.SET_DEPOSITS_LIMIT="set_deposits_limit",e.DOUBLE_PREENDORSEMENT_EVIDENCE="double_preendorsement_evidence",e.ENDORSEMENT_WITH_SLOT="endorsement_with_slot",e.SEED_NONCE_REVELATION="seed_nonce_revelation",e.DOUBLE_ENDORSEMENT_EVIDENCE="double_endorsement_evidence",e.DOUBLE_BAKING_EVIDENCE="double_baking_evidence",e.PROPOSALS="proposals",e.BALLOT="ballot",e.FAILING_NOOP="failing_noop",e.REGISTER_GLOBAL_CONSTANT="register_global_constant",e.TX_ROLLUP_ORIGINATION="tx_rollup_origination",e.TX_ROLLUP_SUBMIT_BATCH="tx_rollup_submit_batch",e.TX_ROLLUP_COMMIT="tx_rollup_commit",e.TX_ROLLUP_RETURN_BOND="tx_rollup_return_bond",e.TX_ROLLUP_FINALIZE_COMMITMENT="tx_rollup_finalize_commitment",e.TX_ROLLUP_REMOVE_COMMITMENT="tx_rollup_remove_commitment",e.TX_ROLLUP_REJECTION="tx_rollup_rejection",e.TX_ROLLUP_DISPATCH_TICKETS="tx_rollup_dispatch_tickets",e.TRANSFER_TICKET="transfer_ticket",e.INCREASE_PAID_STORAGE="increase_paid_storage",e.UPDATE_CONSENSUS_KEY="update_consensus_key",e.DRAIN_DELEGATE="drain_delegate",e.VDF_REVELATION="vdf_revelation",e.EVENT="event",e.TICKET_UPDATES="ticket_updates",e.SMART_ROLLUP_ORIGINATE="smart_rollup_originate",e.SMART_ROLLUP_ADD_MESSAGES="smart_rollup_add_messages",e.SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE="smart_rollup_execute_outbox_message",e.SMART_ROLLUP_PUBLISH="smart_rollup_publish",e.SMART_ROLLUP_CEMENT="smart_rollup_cement",e.SMART_ROLLUP_RECOVER_BOND="smart_rollup_recover_bond",e.SMART_ROLLUP_REFUTE="smart_rollup_refute",e.SMART_ROLLUP_TIMEOUT="smart_rollup_timeout"}(Aq||(Aq={}));class Pq{constructor(e,t="main",r=new dq){this.url=e,this.chain=t,this.httpBackend=r}createURL(e){let t=this.url;for(;t.endsWith("/");)t=t.slice(0,-1);return`${t}${e}`}validateAddress(e){const t=oc(e);if(t!==Zs.VALID)throw new is(e,hc(t))}validateContract(e){const t=sc(e);if(t!==Zs.VALID)throw new fs(e,hc(t))}getBlockHash({block:e}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/hash`),method:"GET"})}))}getLiveBlocks({block:e}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/live_blocks`),method:"GET"})}))}getBalance(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){this.validateAddress(e);const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/balance`),method:"GET"});return new Us(r)}))}getStorage(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage`),method:"GET"})}))}getScript(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/script`),method:"GET"})}))}getNormalizedScript(e,t={unparsing_mode:"Readable"},{block:r}=pq){return fq(this,void 0,void 0,(function*(){return this.validateContract(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/contracts/${e}/script/normalized`),method:"POST"},t)}))}getContract(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){this.validateAddress(e);const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}`),method:"GET"});return Object.assign(Object.assign({},r),{balance:new Us(r.balance)})}))}getManagerKey(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return this.validateAddress(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/manager_key`),method:"GET"})}))}getDelegate(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){let r;this.validateAddress(e);try{r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/delegate`),method:"GET"})}catch(n){if(!(n instanceof sq&&n.status===nq.NOT_FOUND))throw n;r=null}return r}))}getBigMapKey(e,t,{block:r}=pq){return fq(this,void 0,void 0,(function*(){return this.validateAddress(e),this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/contracts/${e}/big_map_get`),method:"POST"},t)}))}getBigMapExpr(e,t,{block:r}=pq){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/big_maps/${e}/${t}`),method:"GET"})}))}getDelegates(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){this.validateAddress(e);const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/delegates/${e}`),method:"GET"}),n=gq(r,["balance","full_balance","current_frozen_deposits","frozen_deposits","frozen_balance","frozen_deposits_limit","staking_balance","delegated_balance","voting_power"]);return Object.assign(Object.assign(Object.assign({},r),n),{frozen_balance_by_cycle:r.frozen_balance_by_cycle?r.frozen_balance_by_cycle.map((e=>{var{deposit:t,deposits:r,fees:n,rewards:i}=e,o=hq(e,["deposit","deposits","fees","rewards"]);const a=gq({deposit:t,deposits:r,fees:n,rewards:i},["deposit","deposits","fees","rewards"]);return Object.assign(Object.assign({},o),{deposit:a.deposit,deposits:a.deposits,fees:a.fees,rewards:a.rewards})})):void 0})}))}getVotingInfo(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return this.validateAddress(e),yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/delegates/${e}/voting_info`),method:"GET"})}))}getConstants({block:e}=pq){return fq(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/context/constants`),method:"GET"}),r=gq(t,["time_between_blocks","hard_gas_limit_per_operation","hard_gas_limit_per_block","proof_of_work_threshold","tokens_per_roll","seed_nonce_revelation_tip","block_security_deposit","endorsement_security_deposit","block_reward","endorsement_reward","cost_per_byte","hard_storage_limit_per_operation","test_chain_duration","baking_reward_per_endorsement","delay_per_missing_endorsement","minimal_block_delay","liquidity_baking_subsidy","cache_layout","baking_reward_fixed_portion","baking_reward_bonus_per_slot","endorsing_reward_per_slot","double_baking_punishment","delay_increment_per_round","tx_rollup_commitment_bond","vdf_difficulty","sc_rollup_stake_amount","minimal_stake"]);return Object.assign(Object.assign({},t),r)}))}getBlock({block:e}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}`),method:"GET"})}))}getBlockHeader({block:e}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/header`),method:"GET"})}))}getBlockMetadata({block:e}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/metadata`),method:"GET"})}))}getBakingRights(e={},{block:t}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/baking_rights`),method:"GET",query:e})}))}getEndorsingRights(e={},{block:t}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/endorsing_rights`),method:"GET",query:e})}))}getBallotList({block:e}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/ballot_list`),method:"GET"})}))}getBallots({block:e}=pq){return fq(this,void 0,void 0,(function*(){return gq(yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/ballots`),method:"GET"}),["yay","nay","pass"])}))}getCurrentProposal({block:e}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_proposal`),method:"GET"})}))}getCurrentQuorum({block:e}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_quorum`),method:"GET"})}))}getVotesListings({block:e}=pq){return fq(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/listings`),method:"GET"});return t.map((e=>(e.voting_power&&(e.voting_power=new Us(e.voting_power)),e))),t}))}getProposals({block:e}=pq){return fq(this,void 0,void 0,(function*(){const t=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/proposals`),method:"GET"});return t.map((e=>e[1]=new Us(e[1]))),t}))}forgeOperations(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/forge/operations`),method:"POST"},e)}))}injectOperation(e){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL("/injection/operation"),method:"POST"},e)}))}preapplyOperations(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/preapply/operations`),method:"POST"},e)}))}getEntrypoints(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){this.validateContract(e);return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/entrypoints`),method:"GET"})}))}runOperation(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/run_operation`),method:"POST"},e)}))}simulateOperation(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/simulate_operation`),method:"POST"},e)}))}runCode(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/run_code`),method:"POST"},e)}))}runScriptView(e,t){var{unparsing_mode:r="Readable"}=e,n=hq(e,["unparsing_mode"]),i=(void 0===t?pq:t).block;return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${i}/helpers/scripts/run_script_view`),method:"POST"},Object.assign({unparsing_mode:r},n))}))}runView(e,t){var{unparsing_mode:r="Readable"}=e,n=hq(e,["unparsing_mode"]),i=(void 0===t?pq:t).block;return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${i}/helpers/scripts/run_view`),method:"POST"},Object.assign({unparsing_mode:r},n))}))}getChainId(){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/chain_id`),method:"GET"})}))}packData(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){const r=yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/helpers/scripts/pack_data`),method:"POST"},e),{gas:n}=r,i=hq(r,["gas"]);let o=n;const a=new Us(n||"");return a.isNaN()||(o=a),Object.assign({gas:o},i)}))}getRpcUrl(){return this.url}getCurrentPeriod({block:e}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/current_period`),method:"GET"})}))}getSuccessorPeriod({block:e}=pq){return fq(this,void 0,void 0,(function*(){return yield this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/votes/successor_period`),method:"GET"})}))}getSaplingDiffById(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/sapling/${e}/get_diff`),method:"GET"})}))}getSaplingDiffByContract(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/single_sapling_get_diff`),method:"GET"})}))}getProtocols({block:e}=pq){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${e}/protocols`),method:"GET"})}))}getTxRollupState(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/tx_rollup/${e}/state`),method:"GET"})}))}getTxRollupInbox(e,t,{block:r}=pq){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/tx_rollup/${e}/inbox/${t}`),method:"GET"})}))}getStorageUsedSpace(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage/used_space`),method:"GET"})}))}getStoragePaidSpace(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/storage/paid_space`),method:"GET"})}))}getTicketBalance(e,t,{block:r}=pq){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${r}/context/contracts/${e}/ticket_balance`),method:"POST"},t)}))}getAllTicketBalances(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/contracts/${e}/all_ticket_balances`),method:"GET"})}))}getPendingOperations(e={}){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/mempool/pending_operations`),method:"GET",query:e})}))}getOriginationProof(e,{block:t}=pq){return fq(this,void 0,void 0,(function*(){return this.httpBackend.createRequest({url:this.createURL(`/chains/${this.chain}/blocks/${t}/context/smart_rollups/all/origination_proof`),method:"POST"},e)}))}}function Oq(e){return"function"===typeof e}function Tq(e){var t=e((function(e){Error.call(e),e.stack=(new Error).stack}));return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var Cq=Tq((function(e){return function(t){e(this),this.message=t?t.length+" errors occurred during unsubscription:\n"+t.map((function(e,t){return t+1+") "+e.toString()})).join("\n "):"",this.name="UnsubscriptionError",this.errors=t}}));function jq(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Rq=function(){function e(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var e,t,r,n,i;if(!this.closed){this.closed=!0;var o=this._parentage;if(o)if(this._parentage=null,Array.isArray(o))try{for(var a=SI(o),s=a.next();!s.done;s=a.next()){s.value.remove(this)}}catch(f){e={error:f}}finally{try{s&&!s.done&&(t=a.return)&&t.call(a)}finally{if(e)throw e.error}}else o.remove(this);var c=this.initialTeardown;if(Oq(c))try{c()}catch(p){i=p instanceof Cq?p.errors:[p]}var l=this._finalizers;if(l){this._finalizers=null;try{for(var u=SI(l),d=u.next();!d.done;d=u.next()){var h=d.value;try{Lq(h)}catch(Ele){i=null!==i&&void 0!==i?i:[],Ele instanceof Cq?i=EI(EI([],kI(i)),kI(Ele.errors)):i.push(Ele)}}}catch(m){r={error:m}}finally{try{d&&!d.done&&(n=u.return)&&n.call(u)}finally{if(r)throw r.error}}}if(i)throw new Cq(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)Lq(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=null!==(r=this._finalizers)&&void 0!==r?r:[]).push(t)}},e.prototype._hasParent=function(e){var t=this._parentage;return t===e||Array.isArray(t)&&t.includes(e)},e.prototype._addParent=function(e){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(e),t):t?[t,e]:e},e.prototype._removeParent=function(e){var t=this._parentage;t===e?this._parentage=null:Array.isArray(t)&&jq(t,e)},e.prototype.remove=function(t){var r=this._finalizers;r&&jq(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}(),Iq=Rq.EMPTY;function Mq(e){return e instanceof Rq||e&&"closed"in e&&Oq(e.remove)&&Oq(e.add)&&Oq(e.unsubscribe)}function Lq(e){Oq(e)?e():e.unsubscribe()}var Nq={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},Dq={setTimeout:function(e,t){for(var r=[],n=2;n0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(t){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,t)},t.prototype._subscribe=function(e){return this._throwIfClosed(),this._checkFinalizedStatuses(e),this._innerSubscribe(e)},t.prototype._innerSubscribe=function(e){var t=this,r=this,n=r.hasError,i=r.isStopped,o=r.observers;return n||i?Iq:(this.currentObservers=null,o.push(e),new Rq((function(){t.currentObservers=null,jq(o,e)})))},t.prototype._checkFinalizedStatuses=function(e){var t=this,r=t.hasError,n=t.thrownError,i=t.isStopped;r?e.error(n):i&&e.complete()},t.prototype.asObservable=function(){var e=new tK;return e.source=this,e},t.create=function(e,t){return new oK(e,t)},t}(tK),oK=function(e){function t(t,r){var n=e.call(this)||this;return n.destination=t,n.source=r,n}return yI(t,e),t.prototype.next=function(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===r||r.call(t,e)},t.prototype.error=function(e){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===r||r.call(t,e)},t.prototype.complete=function(){var e,t;null===(t=null===(e=this.destination)||void 0===e?void 0:e.complete)||void 0===t||t.call(e)},t.prototype._subscribe=function(e){var t,r;return null!==(r=null===(t=this.source)||void 0===t?void 0:t.subscribe(e))&&void 0!==r?r:Iq},t}(iK),aK={now:function(){return(aK.delegate||Date).now()},delegate:void 0},sK=function(e){function t(t,r,n){void 0===t&&(t=1/0),void 0===r&&(r=1/0),void 0===n&&(n=aK);var i=e.call(this)||this;return i._bufferSize=t,i._windowTime=r,i._timestampProvider=n,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=r===1/0,i._bufferSize=Math.max(1,t),i._windowTime=Math.max(1,r),i}return yI(t,e),t.prototype.next=function(t){var r=this,n=r.isStopped,i=r._buffer,o=r._infiniteTimeWindow,a=r._timestampProvider,s=r._windowTime;n||(i.push(t),!o&&i.push(a.now()+s)),this._trimBuffer(),e.prototype.next.call(this,t)},t.prototype._subscribe=function(e){this._throwIfClosed(),this._trimBuffer();for(var t=this._innerSubscribe(e),r=this._infiniteTimeWindow,n=this._buffer.slice(),i=0;i0&&d(i)}),void 0,void 0,(function(){(null===o||void 0===o?void 0:o.closed)||null===o||void 0===o||o.unsubscribe(),s=null}))),!l&&d(null!=n?"number"===typeof n?n:+n-c.now():i)}))}function uW(e){throw new cW(e)}function dW(e,t){return Oq(t)?GK(e,t,1):GK(e,1)}function hW(){for(var e=[],t=0;t0&&(t=new Gq({next:function(e){return m.next(e)},error:function(e){u=!0,d(),n=mW(h,i,e),m.error(e)},complete:function(){l=!0,d(),n=mW(h,a),m.complete()}}),bK(e).subscribe(t))}))(e)}}function mW(e,t){for(var r=[],n=2;n=2;return function(n){return n.pipe(e?vW((function(t,r){return e(t,r,n)})):Qq,(o=1)<=0?function(){return _K}:TK((function(e,t){var r=0;e.subscribe(CK(t,(function(e){++r<=o&&(t.next(e),o<=r&&t.complete())})))})),r?function(e){return TK((function(t,r){var n=!1;t.subscribe(CK(r,(function(e){n=!0,r.next(e)}),(function(){n||r.next(e),r.complete()})))}))}(t):(void 0===(i=function(){return new yW})&&(i=bW),TK((function(e,t){var r=!1;e.subscribe(CK(t,(function(e){r=!0,t.next(e)}),(function(){return r?t.complete():t.error(i())})))}))));var i,o}}function xW(e){return TK((function(t,r){var n,i=null,o=!1;i=t.subscribe(CK(r,void 0,void 0,(function(a){n=bK(e(a,xW(e)(t))),i?(i.unsubscribe(),i=null,n.subscribe(r)):o=!0}))),o&&(i.unsubscribe(),i=null,n.subscribe(r))}))}function _W(e,t){return void 0===t&&(t=Qq),e=null!==e&&void 0!==e?e:SW,TK((function(r,n){var i,o=!0;r.subscribe(CK(n,(function(r){var a=t(r);!o&&e(i,a)||(o=!1,i=a,n.next(r))})))}))}function SW(e,t){return e===t}function kW(e){var t;void 0===e&&(e=1/0);var r=(t=e&&"object"===typeof e?e:{count:e}).count,n=void 0===r?1/0:r,i=t.delay,o=t.resetOnSuccess,a=void 0!==o&&o;return n<=0?Qq:TK((function(e,t){var r,o=0,s=function(){var c=!1;r=e.subscribe(CK(t,(function(e){a&&(o=0),t.next(e)}),void 0,(function(e){if(o++{r.set(t,e[t])})),r}typecheckKey(e){this.keySchema&&this.keySchema.Typecheck(e)}typecheckValue(e){this.valueSchema&&this.valueSchema.Typecheck(e)}assertTypecheckValue(e){try{this.typecheckValue(e)}catch(t){throw new DW(e,this.valueSchema,"value",t)}}assertTypecheckKey(e){try{this.typecheckKey(e)}catch(t){throw new DW(e,this.keySchema,"key",t)}}serializeDeterministically(e){return IW()(e)}*keys(){for(const[e]of this.entries())yield e}*values(){for(const[,e]of this.entries())yield e}*entries(){for(const e of this.valueMap.keys())yield[this.keyMap.get(e),this.valueMap.get(e)]}get(e){this.assertTypecheckKey(e);const t=this.serializeDeterministically(e);return this.valueMap.get(t)}set(e,t){this.assertTypecheckKey(e),this.assertTypecheckValue(t);const r=this.serializeDeterministically(e);this.keyMap.set(r,e),this.valueMap.set(r,t)}delete(e){this.assertTypecheckKey(e),this.keyMap.delete(this.serializeDeterministically(e)),this.valueMap.delete(this.serializeDeterministically(e))}has(e){this.assertTypecheckKey(e);const t=this.serializeDeterministically(e);return this.keyMap.has(t)&&this.valueMap.has(t)}clear(){this.keyMap.clear(),this.valueMap.clear()}get size(){return this.keyMap.size}forEach(e){for(const[t,r]of this.entries())e(r,t,this)}}jW=NW;class BW extends Ja{constructor(e,t,r){super(),this.value=e,this.token=t,this.name="TokenValidationError";const n=this.token.annot(),i=n?`[${n}] `:"";this.message=`${i}${r}`}}class UW{constructor(e,t,r){this.val=e,this.idx=t,this.fac=r,this.createToken=this.fac}typeWithoutAnnotations(){const e=t=>{if("object"===typeof t){if(Array.isArray(t)){return t.map((t=>e(t)))}const r=t;return r.args?{prim:r.prim,args:r.args.map((t=>e(t)))}:{prim:r.prim}}return t};return(t=this.val).args?{prim:t.prim,args:t.args.map((t=>e(t)))}:{prim:t.prim};var t}annot(){return(Array.isArray(this.val.annots)&&this.val.annots.length>0?this.val.annots[0]:String(this.idx)).replace(/(%|:)(_Liq_entry_)?/,"")}hasAnnotations(){return Array.isArray(this.val.annots)&&this.val.annots.length}get tokenVal(){return this.val}ExtractSignature(){return[[this.ExtractSchema()]]}}class FW extends UW{compare(e,t){return e===t?0:ethis.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(t.get(e))]})))}EncodeObject(e,t){const r=this.objLitToMichelsonMap(e);return this.validate(r),t&&t[HW.prim]?t[HW.prim](r,this.val):Array.from(r.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(r.get(e))]})))}Execute(e,t){if(t&&t[HW.prim])return t[HW.prim](e,this.val);if(Array.isArray(e)){const t=new zW(this.val);return e.forEach((e=>{t.set(this.KeySchema.ToKey(e.args[0]),this.ValueSchema.Execute(e.args[1]))})),t}if("int"in e)return e.int;throw new $W(e,this,`Big map is expecting either an array (Athens) or an object with an int property (Babylon). Got ${JSON.stringify(e)}`)}findAndReturnTokens(e,t){return HW.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),this.ValueSchema.findAndReturnTokens(e,t),t}}HW.prim="big_map";class VW extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="OrValidationError"}}class qW extends FW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Encode(e){const t=e[e.length-1],r=this.createToken(this.val.args[0],this.idx);let n=1;r instanceof qW&&(n=Object.keys(r.ExtractSchema()).length);const i=this.createToken(this.val.args[1],this.idx+n);if(String(r.annot())!==String(t)||r instanceof qW){if(String(i.annot())!==String(t)||i instanceof qW){if(r instanceof qW){const t=r.Encode(e);if(t)return{prim:"Left",args:[t]}}if(i instanceof qW){const t=i.Encode(e);if(t)return{prim:"Right",args:[t]}}return null}return e.pop(),{prim:"Right",args:[i.Encode(e)]}}return e.pop(),{prim:"Left",args:[r.Encode(e)]}}ExtractSignature(){const e=this.createToken(this.val.args[0],this.idx);let t=1;e instanceof qW&&(t=Object.keys(e.ExtractSchema()).length);const r=this.createToken(this.val.args[1],this.idx+t),n=[];if(e instanceof qW)n.push(...e.ExtractSignature());else for(const i of e.ExtractSignature())n.push([e.annot(),...i]);if(r instanceof qW)n.push(...r.ExtractSignature());else for(const i of r.ExtractSignature())n.push([r.annot(),...i]);return n}EncodeObject(e,t){this.validateJavascriptObject(e);const r=Object.keys(e)[0],n=this.createToken(this.val.args[0],this.idx);let i=1;n instanceof qW&&(i=Object.keys(n.ExtractSchema()).length);const o=this.createToken(this.val.args[1],this.idx+i);if(String(n.annot())!==String(r)||n instanceof qW){if(String(o.annot())!==String(r)||o instanceof qW){if(n instanceof qW){const r=n.EncodeObject(e,t);if(r)return{prim:"Left",args:[r]}}if(o instanceof qW){const r=o.EncodeObject(e,t);if(r)return{prim:"Right",args:[r]}}return null}return{prim:"Right",args:[o.EncodeObject(e[r],t)]}}return{prim:"Left",args:[n.EncodeObject(e[r],t)]}}validateJavascriptObject(e){if("object"!==typeof e||Array.isArray(e)||null===e||1!==Object.keys(e).length)throw new VW(e,this,`EncodeObject expects an object with a single key but got: ${JSON.stringify(e)}`)}Execute(e,t){const r=this.createToken(this.val.args[0],this.idx);let n=1;r instanceof qW&&(n=Object.keys(r.ExtractSchema()).length);const i=this.createToken(this.val.args[1],this.idx+n);if("Right"===e.prim)return i instanceof qW?i.Execute(e.args[0],t):{[i.annot()]:i.Execute(e.args[0],t)};if("Left"===e.prim)return r instanceof qW?r.Execute(e.args[0],t):{[r.annot()]:r.Execute(e.args[0],t)};throw new VW(e,this,`Was expecting Left or Right prim but got: ${JSON.stringify(e.prim)}`)}traversal(e,t,r){const n=this.createToken(this.val.args[0],this.idx);let i,o=1;n instanceof qW?(i=e(n),o=Object.keys(n.ExtractSchema()).length):i={[n.annot()]:e(n)};const a=this.createToken(this.val.args[1],this.idx+o);let s;s=a instanceof qW?t(a):{[a.annot()]:t(a)};return r(i,s)}ExtractSchema(){return this.traversal((e=>e.ExtractSchema()),(e=>e.ExtractSchema()),((e,t)=>Object.assign(Object.assign({},e),t)))}generateSchema(){return{__michelsonType:qW.prim,schema:this.traversal((e=>e instanceof qW?e.generateSchema().schema:e.generateSchema()),(e=>e instanceof qW?e.generateSchema().schema:e.generateSchema()),((e,t)=>Object.assign(Object.assign({},e),t)))}}findToken(e){const t=this.createToken(this.val.args[0],this.idx);let r=1;t instanceof qW&&(r=Object.keys(t.ExtractSchema()).length);const n=this.createToken(this.val.args[1],this.idx+r);if(String(t.annot())===String(e)&&!(t instanceof qW)&&t instanceof FW)return t;if(String(n.annot())===String(e)&&!(n instanceof qW)&&n instanceof FW)return n;if(t instanceof qW){const r=t.findToken(e);if(r)return r}if(n instanceof qW){const t=n.findToken(e);if(t)return t}return null}compare(e,t){const r=Object.keys(e)[0];if(r!==Object.keys(t)[0]){return JSON.stringify(this.EncodeObject(e))r.findAndReturnTokens(e,t)),(r=>r.findAndReturnTokens(e,t)),((e,t)=>Object.assign(Object.assign({},e),t))),t}}qW.prim="or";class KW extends Ja{constructor(e){super(e),this.message=e,this.name="TokenArgumentValidationError"}}class WW extends Ja{constructor(e,t){super(),this.val1=e,this.val2=t,this.name="TokenComparisonError",this.message=`Tokens ${JSON.stringify(e)} and ${JSON.stringify(t)} are not comparable`}}function GW(e,t=ZW.prim){if(Array.isArray(e))return GW({prim:t,args:e},t);if(void 0===e.args)throw new KW(`The value ${JSON.stringify(e)} is an invalid PairToken with no arguments, a pair must have two or more arguments.`);return e.args.length>2?[e.args[0],{prim:t,args:e.args.slice(1)}]:[e.args[0],e.args[1]]}class ZW extends FW{constructor(e,t,r){super(Array.isArray(e)?{prim:ZW.prim,args:e}:e.prim?e:{prim:ZW.prim,args:e},t,r)}args(){return GW(this.val)}tokens(){let e=0;return this.args().map((t=>{const r=this.createToken(t,this.idx+e);return r instanceof ZW?e+=Object.keys(r.ExtractSchema()).length:e++,r}))}Encode(e){return{prim:"Pair",args:this.tokens().map((t=>t.Encode(e)))}}ExtractSignature(){const e=this.args(),t=this.createToken(e[0],this.idx);let r=1;t instanceof qW&&(r=Object.keys(t.ExtractSchema()).length);const n=this.createToken(e[1],this.idx+r),i=[];for(const o of t.ExtractSignature())for(const e of n.ExtractSignature())i.push([...o,...e]);return i}ToBigMapKey(e){return{key:this.EncodeObject(e),type:this.typeWithoutAnnotations()}}ToKey(e){return this.Execute(e)}EncodeObject(e,t){const[r,n]=this.tokens();let i,o;return i=r instanceof ZW&&!r.hasAnnotations()?e:e[r.annot()],o=n instanceof ZW&&!n.hasAnnotations()?e:e[n.annot()],{prim:"Pair",args:[r.EncodeObject(i,t),n.EncodeObject(o,t)]}}traversal(e,t){const r=this.args(),n=this.createToken(r[0],this.idx);let i,o=1;n instanceof ZW&&!n.hasAnnotations()?(i=e(n),n instanceof ZW&&(o=Object.keys(n.ExtractSchema()).length)):i={[n.annot()]:e(n)};const a=this.createToken(r[1],this.idx+o);let s;s=a instanceof ZW&&!a.hasAnnotations()?t(a):{[a.annot()]:t(a)};return Object.assign(Object.assign({},i),s)}Execute(e,t){const r=GW(e,"Pair");return this.traversal((e=>e.Execute(r[0],t)),(e=>e.Execute(r[1],t)))}ExtractSchema(){return this.traversal((e=>e.ExtractSchema()),(e=>e.ExtractSchema()))}generateSchema(){return{__michelsonType:ZW.prim,schema:this.traversal((e=>e instanceof ZW&&!e.hasAnnotations()?e.generateSchema().schema:e.generateSchema()),(e=>e instanceof ZW&&!e.hasAnnotations()?e.generateSchema().schema:e.generateSchema()))}}compare(e,t){const[r,n]=this.tokens(),i=(e,t)=>e instanceof ZW&&!e.hasAnnotations()?t:t[e.annot()];if(r instanceof FW&&n instanceof FW){const o=r.compare(i(r,e),i(r,t));return 0===o?n.compare(i(n,e),i(n,t)):o}throw new WW(e,t)}findAndReturnTokens(e,t){return ZW.prim===e&&t.push(this),this.tokens().map((r=>r.findAndReturnTokens(e,t))),t}}ZW.prim="pair";class YW extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="NatValidationError"}}class XW extends FW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){return new Us(e[Object.keys(e)[0]])}Encode(e){const t=e.pop();return this.validate(t),{int:new Us(t).toFixed()}}validate(e){const t=new Us(e);if(t.isNaN())throw new YW(e,this,`Value is not a number: ${JSON.stringify(e)}`);if(t.isNegative())throw new YW(e,this,`Value cannot be negative: ${JSON.stringify(e)}`)}EncodeObject(e,t){return this.validate(e),t&&t[XW.prim]?t[XW.prim](e):{int:new Us(e).toFixed()}}ExtractSchema(){return XW.prim}generateSchema(){return{__michelsonType:XW.prim,schema:XW.prim}}ToBigMapKey(e){return{key:{int:String(e)},type:{prim:XW.prim}}}ToKey({int:e}){return new Us(e)}compare(e,t){const r=Number(e),n=Number(t);return r===n?0:re.startsWith("tz"),n=r(e),i=r(t);return n&&!i?-1:i&&!n?1:super.compare(e,t)}findAndReturnTokens(e,t){return eG.prim===e&&t.push(this),t}}eG.prim="address";class tG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="MapValidationError"}}class rG extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get ValueSchema(){return this.createToken(this.val.args[1],0)}get KeySchema(){return this.createToken(this.val.args[0],0)}validate(e){if(!zW.isMichelsonMap(e))throw new tG(e,this,`Value ${JSON.stringify(e)} is not a valid MichelsonMap`)}Execute(e,t){const r=new zW(this.val);return e.forEach((e=>{r.set(this.KeySchema.ToKey(e.args[0]),this.ValueSchema.Execute(e.args[1],t))})),r}objLitToMichelsonMap(e){return e instanceof zW?e:"object"===typeof e?0===Object.keys(e).length?new zW:zW.fromLiteral(e):e}Encode(e){const t=this.objLitToMichelsonMap(e.pop());return this.validate(t),Array.from(t.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(t.get(e))]})))}EncodeObject(e,t){const r=this.objLitToMichelsonMap(e);return this.validate(r),t&&t[rG.prim]?t[rG.prim](r):Array.from(r.keys()).sort(((e,t)=>this.KeySchema.compare(e,t))).map((e=>({prim:"Elt",args:[this.KeySchema.EncodeObject(e),this.ValueSchema.EncodeObject(r.get(e))]})))}ExtractSchema(){return{map:{key:this.KeySchema.ExtractSchema(),value:this.ValueSchema.ExtractSchema()}}}generateSchema(){return{__michelsonType:rG.prim,schema:{key:this.KeySchema.generateSchema(),value:this.ValueSchema.generateSchema()}}}findAndReturnTokens(e,t){return rG.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),this.ValueSchema.findAndReturnTokens(e,t),t}}rG.prim="map";class nG extends FW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){return"true"===String(e.prim).toLowerCase()}Encode(e){return{prim:e.pop()?"True":"False"}}EncodeObject(e,t){return t&&t[nG.prim]?t[nG.prim](e):{prim:e?"True":"False"}}ExtractSchema(){return nG.prim}generateSchema(){return{__michelsonType:nG.prim,schema:nG.prim}}ToBigMapKey(e){return{key:this.EncodeObject(e),type:{prim:nG.prim}}}ToKey(e){return this.EncodeObject(e)}compare(e,t){return e&&t||!e&&!t?0:e?1:-1}findAndReturnTokens(e,t){return nG.prim===e&&t.push(this),t}}nG.prim="bool";class iG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="TxRollupL2AddressValidationError"}}class oG extends FW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}ToBigMapKey(e){return{key:{bytes:function(e){const t=Xa().decode(e);return kc(t.slice(3,42))}(e)},type:{prim:"bytes"}}}validate(e){if(oc(e)!==Zs.VALID)throw new iG(e,this,`tx_rollup_l2_address is not valid: ${JSON.stringify(e)}`)}Encode(e){const t=e.pop();if(!t)throw new iG(t,this,`arg missing to encode: this -> "${JSON.stringify(t)}"`);return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[oG.prim]?t[oG.prim](e):{string:e}}Execute(e){if(e.string)return e.string;if(!e.bytes)throw new iG(e,this,`value cannot be missing string and byte value. must have one ${JSON.stringify(e)}`);return wc(e.bytes)}ExtractSchema(){return oG.prim}generateSchema(){return{__michelsonType:oG.prim,schema:oG.prim}}ToKey({bytes:e,string:t}){if(t)return t;if(!e)throw new iG(e,this,`value cannot be missing string and byte value. must have one: bytes = ${JSON.stringify(e)}`);return wc(e)}findAndReturnTokens(e,t){return oG.prim===e&&t.push(this),t}}oG.prim="tx_rollup_l2_address";class aG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ContractValidationError"}}class sG extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(oc(e)!==Zs.VALID)throw new aG(e,this,`Value ${JSON.stringify(e)} is not a valid contract address.`);return null}Execute(e){if(e.string)return e.string;if(!e.bytes)throw new aG(e,this,`Value ${JSON.stringify(e)} is not a valid contract address. must contain bytes or string.`);return bc(e.bytes)}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[sG.prim]?t[sG.prim](e):{string:e}}ExtractSchema(){return sG.prim}generateSchema(){const e=this.createToken(this.val.args[0],0);return{__michelsonType:sG.prim,schema:{parameter:this.val.args[0]?e.generateSchema():{}}}}findAndReturnTokens(e,t){return sG.prim===e&&t.push(this),t}}sG.prim="contract";class cG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ListValidationError"}}class lG extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get valueSchema(){return this.createToken(this.val.args[0],this.idx)}validate(e){if(!Array.isArray(e))throw new cG(e,this,`Value ${JSON.stringify(e)} is not a valid array`)}Encode(e){const t=e.pop();this.validate(t);const r=this.createToken(this.val.args[0],0);return t.reduce(((e,t)=>[...e,r.EncodeObject(t)]),[])}Execute(e,t){const r=this.createToken(this.val.args[0],0);return this.validate(e),e.reduce(((e,n)=>[...e,r.Execute(n,t)]),[])}EncodeObject(e,t){const r=this.createToken(this.val.args[0],0);return this.validate(e),t&&t[lG.prim]?t[lG.prim](e):e.reduce(((e,t)=>[...e,r.EncodeObject(t)]),[])}ExtractSchema(){return{[lG.prim]:this.valueSchema.ExtractSchema()}}generateSchema(){return{__michelsonType:lG.prim,schema:this.valueSchema.generateSchema()}}findAndReturnTokens(e,t){return lG.prim===e&&t.push(this),this.createToken(this.val.args[0],this.idx).findAndReturnTokens(e,t),t}}lG.prim="list";class uG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="MutezValidationError"}}class dG extends FW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){return new Us(e[Object.keys(e)[0]])}ExtractSchema(){return dG.prim}generateSchema(){return{__michelsonType:dG.prim,schema:dG.prim}}validate(e){if(new Us(e).isNaN())throw new uG(e,this,`Value is not a number: ${e}`)}Encode(e){const t=e.pop();return this.validate(t),{int:String(t).toString()}}EncodeObject(e,t){return this.validate(e),t&&t[dG.prim]?t[dG.prim](e):{int:String(e).toString()}}ToBigMapKey(e){return{key:{int:String(e)},type:{prim:dG.prim}}}ToKey({int:e}){return e}compare(e,t){const r=Number(e),n=Number(t);return r===n?0:rthis.KeySchema.compare(e,t))).reduce(((e,t)=>[...e,this.KeySchema.EncodeObject(t)]),[])}Execute(e,t){return e.reduce(((e,r)=>[...e,this.KeySchema.Execute(r,t)]),[])}EncodeObject(e,t){return this.validate(e),t&&t[OG.prim]?t[OG.prim](e):e.sort(((e,t)=>this.KeySchema.compare(e,t))).reduce(((e,t)=>[...e,this.KeySchema.EncodeObject(t)]),[])}ExtractSchema(){return OG.prim}generateSchema(){return{__michelsonType:OG.prim,schema:this.KeySchema.generateSchema()}}findAndReturnTokens(e,t){return OG.prim===e&&t.push(this),this.KeySchema.findAndReturnTokens(e,t),t}}OG.prim="set";class TG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ChainIDValidationError"}}class CG extends FW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(ac(e)!==Zs.VALID)throw new TG(e,this,`Value ${JSON.stringify(e)} is not a valid ChainID`)}Execute(e){return e[Object.keys(e)[0]]}ExtractSchema(){return CG.prim}generateSchema(){return{__michelsonType:CG.prim,schema:CG.prim}}Encode(e){const t=e.pop();return this.validate(t),{string:t}}EncodeObject(e,t){return this.validate(e),t&&t[CG.prim]?t[CG.prim](e):{string:e}}ToKey({string:e}){return e}ToBigMapKey(e){return{key:{string:e},type:{prim:CG.prim}}}findAndReturnTokens(e,t){return CG.prim===e&&t.push(this),t}}CG.prim="chain_id";class jG extends Ja{constructor(){super(),this.name="TicketEncodeError",this.message="Tickets cannot be sent to the blockchain; they are created on-chain"}}const RG={prim:"contract"},IG={prim:"int"};class MG extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get valueToken(){return this.createToken(this.val.args[0],this.idx)}Encode(e){throw new jG}EncodeObject(e,t){if(t&&t[MG.prim])return t[MG.prim](e,this.val);throw new jG}Execute(e,t){if(t&&t[MG.prim])return t[MG.prim](e,this.val);const r=this.createToken(RG,this.idx),n=this.valueToken,i=this.createToken(IG,this.idx);return void 0===e.args[2]&&void 0!==e.args[1].args?{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1].args[0],t),amount:i.Execute(e.args[1].args[1],t)}:{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1],t),amount:i.Execute(e.args[2],t)}}ExtractSchema(){return{ticketer:sG.prim,value:this.valueToken.ExtractSchema(),amount:vG.prim}}generateSchema(){return{__michelsonType:MG.prim,schema:{value:this.valueToken.generateSchema(),ticketer:{__michelsonType:sG.prim,schema:sG.prim},amount:{__michelsonType:vG.prim,schema:vG.prim}}}}findAndReturnTokens(e,t){return MG.prim===e&&t.push(this),this.valueToken.findAndReturnTokens(e,t),t}}MG.prim="ticket";class LG extends Ja{constructor(){super(),this.name="TicketDeprecatedEncodeError",this.message="Ticket_deprecated cannot be sent to the blockchain; they are created on-chain"}}const NG={prim:"contract"},DG={prim:"int"};class zG extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}get valueToken(){return this.createToken(this.val.args[0],this.idx)}Encode(e){throw new LG}EncodeObject(e,t){if(t&&t[zG.prim])return t[zG.prim](e,this.val);throw new LG}Execute(e,t){if(t&&t[zG.prim])return t[zG.prim](e,this.val);const r=this.createToken(NG,this.idx),n=this.valueToken,i=this.createToken(DG,this.idx);return void 0===e.args[2]&&void 0!==e.args[1].args?{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1].args[0],t),amount:i.Execute(e.args[1].args[1],t)}:{ticketer:r.Execute(e.args[0],t),value:n.Execute(e.args[1],t),amount:i.Execute(e.args[2],t)}}ExtractSchema(){return{ticketer:sG.prim,value:this.valueToken.ExtractSchema(),amount:vG.prim}}generateSchema(){return{__michelsonType:zG.prim,schema:{value:this.valueToken.generateSchema(),ticketer:{__michelsonType:sG.prim,schema:sG.prim},amount:{__michelsonType:vG.prim,schema:vG.prim}}}}findAndReturnTokens(e,t){return zG.prim===e&&t.push(this),this.valueToken.findAndReturnTokens(e,t),t}}zG.prim="ticket_deprecated";class BG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="NeverTokenError"}}class UG extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Encode(e){const t=e.pop();throw new BG(t,this,`Assigning a value to the type never is forbidden. Trying to assign ${JSON.stringify(t)}.`)}EncodeObject(e,t){if(t&&t[UG.prim])return t[UG.prim](e);throw new BG(e,this,`Assigning a value to the type never is forbidden. Trying to assign ${JSON.stringify(e)}.`)}Execute(e){throw new BG(e,this,`There is no literal value for the type never. Trying to execute ${JSON.stringify(e)}.`)}ExtractSchema(){return UG.prim}generateSchema(){return{__michelsonType:UG.prim,schema:UG.prim}}findAndReturnTokens(e,t){return UG.prim===e&&t.push(this),t}}UG.prim="never";class FG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="SaplingStateValidationError"}}class $G extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}isValid(e){return"object"===typeof e&&0===Object.keys(e).length}Execute(e,t){if(t&&t[$G.prim])return t[$G.prim](e,this.val);if("int"in e)return e.int;throw new FG(e,this,`Sapling state is expecting an object with an int property. Got ${JSON.stringify(e)}`)}Encode(e){const t=e.pop();if(this.isValid(t))return[];throw new FG(t,this,`Invalid sapling_state. Received: ${JSON.stringify(t)} while expecting: {}`)}EncodeObject(e,t){if(t&&t[$G.prim])return t[$G.prim](e);if(this.isValid(e))return[];throw new FG(e,this,`Invalid sapling_state. Received: ${JSON.stringify(e)} while expecting: {}`)}ExtractSchema(){return{[$G.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:$G.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return $G.prim===e&&t.push(this),t}}$G.prim="sapling_state";class HG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="SaplingTransactionValidationError"}}class VG extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){throw new HG(e,this,`There is no literal value for the sapling_transaction type. Got: ${JSON.stringify(e)}.`)}validateBytes(e){const t=/^(0x|0X)?([0-9a-fA-F]*$)/.exec(e);if(t&&t[2].length%2===0)return t[2];throw new HG(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?MW.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.validateBytes(this.convertUint8ArrayToHexString(t)),{bytes:String(t).toString()}}EncodeObject(e,t){return e=this.validateBytes(this.convertUint8ArrayToHexString(e)),t&&t[VG.prim]?t[VG.prim](e):{bytes:String(e).toString()}}ExtractSchema(){return{[VG.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:VG.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return VG.prim===e&&t.push(this),t}}VG.prim="sapling_transaction";class qG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="SaplingTransactionDeprecatedValidationError"}}class KG extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e){throw new qG(e,this,`There is no literal value for the sapling_transaction_deprecated type. Got: ${JSON.stringify(e)}.`)}validateBytes(e){const t=/^(0x|0X)?([0-9a-fA-F]*$)/.exec(e);if(t&&t[2].length%2===0)return t[2];throw new qG(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?MW.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.validateBytes(this.convertUint8ArrayToHexString(t)),{bytes:String(t).toString()}}EncodeObject(e,t){return e=this.validateBytes(this.convertUint8ArrayToHexString(e)),t&&t[KG.prim]?t[KG.prim](e):{bytes:String(e).toString()}}ExtractSchema(){return{[KG.prim]:{"memo-size":Number(this.val.args[0].int)}}}generateSchema(){return{__michelsonType:KG.prim,schema:{memoSize:this.val.args[0].int}}}findAndReturnTokens(e,t){return KG.prim===e&&t.push(this),t}}KG.prim="sapling_transaction_deprecated";class WG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="Bls12381frValidationError"}}class GG extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new WG(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?MW.from(e).toString("hex"):e}Encode(e){let t=e.pop();return"number"===typeof t?{int:t.toString()}:(t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t})}EncodeObject(e,t){return t&&t[GG.prim]?t[GG.prim](e):"number"===typeof e?{int:e.toString()}:(e=this.convertUint8ArrayToHexString(e),this.validate(e),{bytes:e})}Execute(e){return e.bytes}ExtractSchema(){return GG.prim}generateSchema(){return{__michelsonType:GG.prim,schema:GG.prim}}findAndReturnTokens(e,t){return GG.prim===e&&t.push(this),t}}GG.prim="bls12_381_fr";class ZG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="Bls12381g1ValidationError"}}class YG extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new ZG(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?MW.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[YG.prim]?t[YG.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return YG.prim}generateSchema(){return{__michelsonType:YG.prim,schema:YG.prim}}findAndReturnTokens(e,t){return YG.prim===e&&t.push(this),t}}YG.prim="bls12_381_g1";class XG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="Bls12381g2ValidationError"}}class JG extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new XG(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?MW.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[JG.prim]?t[JG.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return JG.prim}generateSchema(){return{__michelsonType:JG.prim,schema:JG.prim}}findAndReturnTokens(e,t){return JG.prim===e&&t.push(this),t}}JG.prim="bls12_381_g2";class QG extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ChestValidationError"}}class eZ extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!=0)throw new QG(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?MW.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[eZ.prim]?t[eZ.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return eZ.prim}generateSchema(){return{__michelsonType:eZ.prim,schema:eZ.prim}}findAndReturnTokens(e,t){return eZ.prim===e&&t.push(this),t}}eZ.prim="chest";class tZ extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="ChestKeyValidationError"}}class rZ extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}validate(e){if(!/^[0-9a-fA-F]*$/.test(e)||e.length%2!==0)throw new tZ(e,this,`Invalid bytes: ${JSON.stringify(e)}`)}convertUint8ArrayToHexString(e){return e.constructor===Uint8Array?MW.from(e).toString("hex"):e}Encode(e){let t=e.pop();return t=this.convertUint8ArrayToHexString(t),this.validate(t),{bytes:t}}EncodeObject(e,t){return e=this.convertUint8ArrayToHexString(e),this.validate(e),t&&t[rZ.prim]?t[rZ.prim](e):{bytes:e}}Execute(e){return e.bytes}ExtractSchema(){return rZ.prim}generateSchema(){return{__michelsonType:rZ.prim,schema:rZ.prim}}findAndReturnTokens(e,t){return rZ.prim===e&&t.push(this),t}}rZ.prim="chest_key";class nZ extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="GlobalConstantEncodingError"}}class iZ extends BW{constructor(e,t,r){super(e,t,r),this.value=e,this.token=t,this.name="GlobalConstantDecodingError"}}class oZ extends UW{constructor(e,t,r){super(e,t,r),this.val=e,this.idx=t,this.fac=r}Execute(e,t){if(t&&t[oZ.prim])return t[oZ.prim](e,this.val);throw new iZ(e,this,`Unable to decode a value represented by a global constants. Please provide an expanded script to the Michelson-Encoder or semantics for the decoding. The following global constant hash was encountered: ${this.val.args[0].string}.`)}Encode(e){throw new nZ(e,this,`Unable to encode a script containing global constants. Please provide an expanded script to the Michelson-Encoder. The following global constant hash was encountered: ${this.val.args[0].string}.`)}EncodeObject(e,t){if(t&&t[oZ.prim])return t[oZ.prim](e);throw new nZ(e,this,`Unable to encode a script containing global constants. Please provide an expanded script to the Michelson-Encoder. The following global constant hash was encountered: ${this.val.args[0].string}.`)}ExtractSchema(){return oZ.prim}generateSchema(){return{__michelsonType:oZ.prim,schema:{hash:this.val.args[0].string}}}findAndReturnTokens(e,t){return oZ.prim===e&&t.push(this),t}}oZ.prim="constant";const aZ=[ZW,XW,JW,HW,eG,oG,rG,nG,qW,sG,lG,dG,fG,pG,mG,vG,yG,wG,_G,kG,EG,AG,OG,CG,MG,zG,UG,$G,VG,KG,GG,YG,JG,eZ,rZ,oZ];class sZ extends Ja{constructor(e,t){super(e),this.message=e,this.data=t,this.name="Invalid token error"}}function cZ(e,t){if(Array.isArray(e))return new ZW(e,t,cZ);const r=aZ.find((t=>t.prim===e.prim));if(!r)throw new sZ(`Malformed data: ${JSON.stringify(e)}. Expected a value with a valid prim property`,e);return new r(e,t,cZ)}class lZ extends us{constructor(e,t,r,n){super(e,t,r,n),this.viewName=e,this.sigs=t,this.args=r,this.cause=n,this.name="ParameterEncodingError",this.message=`Could not encode parameter ${JSON.stringify(r)} received for name "${e}" expecting one of the following signatures ${JSON.stringify(t)}`}}class uZ extends Ja{constructor(e,t){super(),this.script=e,this.reason=t,this.name="InvalidScriptError";let r="Invalid on-chain view found in the following script.";t&&(r+=` Reason: ${t}.`),r+=`Script: ${JSON.stringify(e)}`,this.message=r}}class dZ extends Ja{constructor(e,t){super(),this.script=e,this.reason=t,this.name="InvalidRpcResponseError";let r="Invalid RPC response passed as argument(s).";t&&(r+=` Reason: ${t}.`),r+=` Received: ${JSON.stringify(e)}`,this.message=r}}class hZ extends Ja{constructor(e){super(e),this.message=e,this.name="InvalidBigMapSchemaError"}}class fZ extends Ja{constructor(e,t){super(e),this.message=e,this.value=t,this.name="InvalidBigMapDiffError"}}class pZ extends Ja{constructor(e,t,r,n){super(),this.details=t,this.schema=r,this.value=n,this.name="BigMapEncodingError",this.message=`Unable to encode the big map ${e}. Schema is: ${JSON.stringify(r)}. The ${e} is: ${JSON.stringify(n)}. Error details: ${t}`}}class mZ extends Ja{constructor(e,t,r,n,i){super(),this.details=t,this.schema=r,this.value=n,this.semantics=i,this.name="StorageEncodingError",this.message=`Unable to encode ${e}. The schema is: ${JSON.stringify(r)}, the value is: ${JSON.stringify(n)}.${i?`And the semantic is: ${JSON.stringify(i)}`:""}. Error details: ${t}`}}class gZ extends Ja{constructor(e){super(e),this.message=e,this.name="MissingArgumentError"}}var vZ;const yZ=Symbol.for("taquito-schema-type-symbol");function bZ(e,t=ZW.prim){var r,n;if(Array.isArray(e))return bZ({prim:t,args:e},t);const i=e;return i.prim===t&&i.args&&i.args.length>2?Object.assign(Object.assign({},i),{args:[null===(r=i.args)||void 0===r?void 0:r[0],{prim:t,args:null===(n=i.args)||void 0===n?void 0:n.slice(1)}]}):i}function wZ(e,t){if(void 0===e||void 0===t)return e===t;const r=bZ(e),n=bZ(t);return r.prim===n.prim&&(void 0===r.args&&void 0===n.args||void 0!==r.args&&void 0!==n.args&&r.args.length===n.args.length&&r.args.every(((e,t)=>{var r,i;return wZ(e,null!==(i=null===(r=n.args)||void 0===r?void 0:r[t])&&void 0!==i?i:{})})))&&(void 0===r.annots&&void 0===n.annots||void 0!==r.annots&&void 0!==n.annots&&r.annots.length===n.annots.length&&r.annots.every(((e,t)=>{var r;return e===(null===(r=n.annots)||void 0===r?void 0:r[t])})))}class xZ{static isSchema(e){return e&&!0===e[yZ]}static fromRPCResponse(e){if(!e)throw new dZ(e,"the RPC response is empty");if(!e.script)throw new dZ(e,"the RPC response has no script");if(!Array.isArray(e.script.code))throw new dZ(e,"The response.script.code should be an array");let t=e.script.code;for(;1===t.length&&Array.isArray(t[0]);)t=t[0];const r=t.find((e=>"prim"in e&&"storage"===e.prim));if(!r||!Array.isArray(r.args))throw new dZ(e,'The response.script.code has an element of type {prim: "storage"}, but its args is not an array');return new xZ(r.args[0])}isExpressionExtended(e){return"prim"in e&&Array.isArray(e.args)}constructor(e){if(this.val=e,this[vZ]=!0,this.root=cZ(e,0),this.root instanceof HW)this.bigMap=this.root;else if(this.isExpressionExtended(e)&&"pair"===e.prim){const t=e.args[0];this.isExpressionExtended(t)&&"big_map"===t.prim&&(this.bigMap=new HW(t,0,cZ))}}removeTopLevelAnnotation(e){return(this.root instanceof ZW||this.root instanceof qW)&&this.root.hasAnnotations()&&"object"===typeof e&&1===Object.keys(e).length?e[Object.keys(e)[0]]:e}Execute(e,t){const r=this.root.Execute(e,t);return this.removeTopLevelAnnotation(r)}Typecheck(e){this.root instanceof HW&&Number.isInteger(Number(e))||this.root instanceof MG&&e.ticketer&&e.value&&e.amount||this.root instanceof zG&&e.ticketer&&e.value&&e.amount||this.root instanceof rG&&this.root.ValueSchema instanceof HW||this.root.EncodeObject(e)}ExecuteOnBigMapDiff(e,t){if(!this.bigMap)throw new hZ("Big map schema is undefined");if(!Array.isArray(e))throw new fZ(`Big map diff must be an array, got: ${JSON.stringify(e)}`,e);const r=e.map((({key:e,value:t})=>({args:[e,t]})));return this.bigMap.Execute(r,t)}ExecuteOnBigMapValue(e,t){if(!this.bigMap)throw new hZ("Big map schema is undefined");return this.bigMap.ValueSchema.Execute(e,t)}EncodeBigMapKey(e){if(!this.bigMap)throw new hZ("Big map schema is undefined");try{return this.bigMap.KeySchema.ToBigMapKey(e)}catch(t){throw new pZ("key",t,this.bigMap.KeySchema,e)}}Encode(e,t){try{return this.root.EncodeObject(e,t)}catch(r){if(r instanceof BW)throw r;throw new mZ("storage object",r,this.root,e,t)}}ExtractSchema(){return this.removeTopLevelAnnotation(this.root.ExtractSchema())}generateSchema(){return this.removeTopLevelAnnotation(this.root.generateSchema())}ComputeState(e,t){if(!this.bigMap)throw new hZ("Big map schema is undefined");const r=e.reduce(((e,t)=>Object.assign(Object.assign({},e),this.ExecuteOnBigMapDiff(t.contents[0].metadata.operation_result.big_map_diff))),{});return Object.assign(Object.assign({},this.Execute(t)),{[this.bigMap.annot()]:r})}FindFirstInTopLevelPair(e,t){return this.findValue(this.root.val,e,t)}findValue(e,t,r){if(wZ(r,e))return t;if(Array.isArray(e)||"pair"===e.prim){const n=bZ(e),i=bZ(t,"Pair");if(void 0===n.args||void 0===i.args)throw new gZ("Tokens have no arguments");if(n.args[0])return this.findValue(n.args[0],i.args[0],r)||this.findValue(n.args[1],i.args[1],r)}}findToken(e){return this.root.findAndReturnTokens(e,[])}}vZ=yZ;class _Z{static fromRPCResponse(e){if(!e)throw new dZ(e,"the RPC response is empty");if(!e.script)throw new dZ(e,"the RPC response has no script");if(!Array.isArray(e.script.code))throw new dZ(e,"The response.script.code should be an array");const t=e.script.code.find((e=>"prim"in e&&"parameter"===e.prim));if(!t)throw new dZ(e,'The response.script.code should have an element of type {prim: "parameter"}');if(!Array.isArray(t.args))throw new dZ(e,'The response.script.code has an element of type {prim: "parameter"}, but its args is not an array');return new _Z(t.args[0])}get isMultipleEntryPoint(){return this.root instanceof qW||this.root instanceof pG&&this.root.subToken()instanceof qW}get hasAnnotation(){return!this.isMultipleEntryPoint||"0"!==Object.keys(this.ExtractSchema())[0]}constructor(e){this.root=cZ(e,0)}Execute(e,t){return this.root.Execute(e,t)}Encode(...e){try{return this.root.Encode(e.reverse())}catch(t){if(t instanceof BW)throw t;throw new lZ("Unable to encode parameter",this.root,e,t)}}EncodeObject(e,t){try{return this.root.EncodeObject(e,t)}catch(r){if(r instanceof BW)throw r;throw new lZ("Unable to encode parameter object",this.root,e,r)}}ExtractSchema(){return this.root.ExtractSchema()}generateSchema(){return this.root.generateSchema()}ExtractSignatures(){return this.root.ExtractSignature()}}class SZ{static fromRPCResponse(e){const t=[],r=e&&e.script&&Array.isArray(e.script.code)&&e.script.code.filter((e=>"view"===e.prim));return r&&r.forEach((e=>{t.push(new SZ(e.args))})),t}constructor(e){if(!e)throw new uZ(e,"the args are not defined");if(4!==e.length)throw new uZ(e,"there should be exactly 4 arguments");if(!("string"in e[0])||!e[0].string)throw new uZ(e,"The first argument should be a string, representing the view name. It should be in the form: { string: 'viewName' }");this.viewName=e[0].string,this.viewArgsType=e[1],this.viewReturnType=e[2],this.instructions=e[3],this.rootArgsType=cZ(this.viewArgsType,0),this.rootReturnType=cZ(this.viewReturnType,0)}encodeViewArgs(e){try{return this.rootArgsType.EncodeObject(e)}catch(t){throw new lZ(this.viewName,void 0,e,t)}}decodeViewResult(e,t){return this.rootReturnType.Execute(e,t)}extractArgsSchema(){return this.rootArgsType.ExtractSchema()}extractResultSchema(){return this.rootReturnType.ExtractSchema()}}class kZ{constructor(e,t){this.tag=e,this.type=t}static fromMichelineValue(e){var t,r;return new kZ(null===(t=e.annots)||void 0===t?void 0:t[0],null===(r=e.args)||void 0===r?void 0:r[0])}static fromRPCResponse(e){const t=[];return e.script.code.forEach((e=>{"prim"in e&&"code"===e.prim&&"args"in e&&e.args&&t.push(...kZ.extractEventsRecursively(e.args))})),kZ.removeDuplicates(t)}static removeDuplicates(e){const t=[];return e.forEach((e=>{const r=t.findIndex((t=>t.tag===e.tag&&wZ(t.type,e.type)));-1===r&&t.push(e)})),t}static extractEventsRecursively(e){return Array.isArray(e)?e.flatMap((e=>kZ.extractEventsRecursively(e))):"prim"in e?"EMIT"===e.prim?[kZ.fromMichelineValue(e)]:"args"in e&&e.args?e.args.flatMap((e=>kZ.extractEventsRecursively(e))):[]:[]}}const EZ=Symbol(),AZ=Symbol("source_reference");class PZ extends Ja{constructor(e,t,r){super(),this.src=e,this.idx=t,this.message=r,this.name="ScanError"}}var OZ;!function(e){e[e.Comment=0]="Comment",e[e.Number=1]="Number",e[e.String=2]="String",e[e.Bytes=3]="Bytes",e[e.Ident=4]="Ident"}(OZ||(OZ={}));const TZ=new RegExp("\\s"),CZ=new RegExp("[:@%_A-Za-z]"),jZ=new RegExp("[@%_\\.A-Za-z0-9]"),RZ=new RegExp("[0-9]"),IZ=new RegExp("[0-9a-fA-F]");function*MZ(e,t=!1){let r=0;for(;r1&&"0x"===e.substring(r,r+2)){for(r+=2;r1&&"/*"===e.substring(r,r+2)){for(r+=2;r1&&"*/"===e.substring(r,r+2));)r++;if(r===e.length)throw new PZ(e,r,"Unterminated C style comment");r+=2,t&&(yield{t:OZ.Comment,v:e.slice(i,r),first:i,last:r})}else{if("("!==n&&")"!==n&&"{"!==n&&"}"!==n&&";"!==n)throw new PZ(e,r,`Invalid character at offset ${r}: \`${n}'`);r++,yield{t:n,v:n,first:i,last:r}}}}const LZ=Symbol("ref_contract");var NZ;!function(e){e.Ps9mPmXa="Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P",e.PtCJ7pwo="PtCJ7pwoxe8JasnHY8YonnLYjcVHmhiARPJvqcC6VfHT5s8k8sY",e.PsYLVpVv="PsYLVpVvgbLhAhoqAkMFUo6gudkJ9weNXhUYCiLDzcUpFpkk8Wt",e.PsddFKi3="PsddFKi32cMJ2qPjf43Qv5GDWLDPZb3T3bF6fLKiF5HtvHNU7aP",e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdoTez="PtEdoTezd3RHSC31mpxxo1npxFjoWWcFgQtxapi51Z8TLu6v6Uq",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangzH="PtHangzHogokSuiMHemCuowEavgYTP8J5qQ9fQS793MHYFpCY3r",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.PsiThaCa="PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakarta="PtJakartaiDz69SfDDLXJSiuZqTSeSKRDbKVZC8MNzJnvRjvnGw",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(NZ||(NZ={}));const DZ=NZ.Psithaca2,zZ={Ps9mPmXaRzmzk35gbAYNCAw6UXdE2qoABTHbN2oEEc1qM7CwT9P:0,PtCJ7pwoxe8JasnHY8YonnLYjcVHmhiARPJvqcC6VfHT5s8k8sY:1,PsYLVpVvgbLhAhoqAkMFUo6gudkJ9weNXhUYCiLDzcUpFpkk8Wt:2,PsddFKi32cMJ2qPjf43Qv5GDWLDPZb3T3bF6fLKiF5HtvHNU7aP:3,Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd:4,PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU:5,PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS:5,PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb:6,PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo:7,PtEdoTezd3RHSC31mpxxo1npxFjoWWcFgQtxapi51Z8TLu6v6Uq:8,PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA:8,PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i:9,PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV:10,PtHangzHogokSuiMHemCuowEavgYTP8J5qQ9fQS793MHYFpCY3r:11,PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx:11,PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP:12,Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A:12,PtJakartaiDz69SfDDLXJSiuZqTSeSKRDbKVZC8MNzJnvRjvnGw:13,PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY:13,PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg:14,PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW:15,PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc:16,PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1:16,PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf:17,ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK:18};function BZ(e,t){return zZ[e][e+1,t])),i+=s,o+=l;break}case"I":o!==r.length&&(a[1]=r[o++]);break;default:throw new UZ(e,`${e.prim}: unexpected character: ${l}`)}return{r:n(s,c,[0,a]),n:i,an:o}}function qZ(e,t,r,n){const i=t[0];switch(i){case"A":return t.length>1?[{prim:"DUP"},{prim:"DIP",args:[[{prim:"CAR",annots:["@%%"]},qZ(e,t.slice(1),[],n)]]},{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:["%@","%@",...r]}]:n.a;case"D":return t.length>1?[{prim:"DUP"},{prim:"DIP",args:[[{prim:"CDR",annots:["@%%"]},qZ(e,t.slice(1),[],n)]]},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@","%@",...r]}]:n.d;default:throw new UZ(e,`${e.prim}: unexpected character: ${i}`)}}function KZ(e,t){let r=e.length;for(;r>0&&e[r-1]===t;)r--;return e.slice(0,r)}function WZ(e){const t=[],r=[];if(void 0!==e)for(const n of e)(0!==n.length&&"%"===n[0]?t:r).push(n);return{fields:t,rest:r}}function GZ({prim:e,annots:t,args:r}){return Object.assign(Object.assign({prim:e},t&&{annots:t}),r&&{args:r})}const ZZ=/^P[PAI]{3,}R$/,YZ=/^UNP[PAI]{2,}R$/,XZ=/^C[AD]{2,}R$/,JZ=/^SET_C[AD]+R$/,QZ=/^MAP_C[AD]+R$/,eY=/^DI{2,}P$/,tY=/^DU+P$/;class rY extends Ja{constructor(e,t){super(),this.token=e,this.message=t,this.name="MichelineParseError"}}class nY extends Ja{constructor(e,t){super(),this.node=e,this.message=t,this.name="JSONParseError"}}const iY=new rY(null,"Unexpected EOF");function oY(e){return e.t===OZ.Ident&&("@"===e.v[0]||"%"===e.v[0]||":"===e.v[0])}const aY=new RegExp("^-?[0-9]+$"),sY=new RegExp("^([0-9a-fA-F]{2})*$");class cY{constructor(e){this.opt=e}expand(e){var t,r,n;if(void 0!==(null===(t=this.opt)||void 0===t?void 0:t.expandGlobalConstant)&&"constant"===e.prim){const t=function(e,t){return void 0!==e.args&&1===e.args.length&&"string"in e.args[0]&&e.args[0].string in t?t[e.args[0].string]:e}(e,this.opt.expandGlobalConstant);return t!==e&&(t[AZ]=Object.assign(Object.assign({},e[AZ]||{first:0,last:0}),{globalConstant:e})),t}if(void 0===(null===(r=this.opt)||void 0===r?void 0:r.expandMacros)||(null===(n=this.opt)||void 0===n?void 0:n.expandMacros)){const t=function(e,t){const r=(null===t||void 0===t?void 0:t.protocol)||DZ;function n(e){return void 0!==e?[{prim:"RENAME",annots:e}]:[]}switch(e.prim){case"CMPEQ":case"CMPNEQ":case"CMPLT":case"CMPGT":case"CMPLE":case"CMPGE":if(FZ(e,0))return[{prim:"COMPARE"},GZ({prim:e.prim.slice(3),annots:e.annots})];break;case"IFEQ":case"IFNEQ":case"IFLT":case"IFGT":case"IFLE":case"IFGE":if(FZ(e,2))return[{prim:e.prim.slice(2)},GZ({prim:"IF",annots:e.annots,args:e.args})];break;case"IFCMPEQ":case"IFCMPNEQ":case"IFCMPLT":case"IFCMPGT":case"IFCMPLE":case"IFCMPGE":if(FZ(e,2))return[{prim:"COMPARE"},{prim:e.prim.slice(5)},GZ({prim:"IF",annots:e.annots,args:e.args})];break;case"FAIL":if(FZ(e,0)&&$Z(e))return[{prim:"UNIT"},{prim:"FAILWITH"}];break;case"ASSERT":if(FZ(e,0)&&$Z(e))return[{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_EQ":case"ASSERT_NEQ":case"ASSERT_LT":case"ASSERT_GT":case"ASSERT_LE":case"ASSERT_GE":if(FZ(e,0)&&$Z(e))return[{prim:e.prim.slice(7)},{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_CMPEQ":case"ASSERT_CMPNEQ":case"ASSERT_CMPLT":case"ASSERT_CMPGT":case"ASSERT_CMPLE":case"ASSERT_CMPGE":if(FZ(e,0)&&$Z(e))return[[{prim:"COMPARE"},{prim:e.prim.slice(10)}],{prim:"IF",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_NONE":if(FZ(e,0)&&$Z(e))return[{prim:"IF_NONE",args:[[],[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_SOME":if(FZ(e,0))return[{prim:"IF_NONE",args:[[[{prim:"UNIT"},{prim:"FAILWITH"}]],n(e.annots)]}];break;case"ASSERT_LEFT":if(FZ(e,0))return[{prim:"IF_LEFT",args:[n(e.annots),[[{prim:"UNIT"},{prim:"FAILWITH"}]]]}];break;case"ASSERT_RIGHT":if(FZ(e,0))return[{prim:"IF_LEFT",args:[[[{prim:"UNIT"},{prim:"FAILWITH"}]],n(e.annots)]}];break;case"IF_SOME":if(FZ(e,2))return[GZ({prim:"IF_NONE",annots:e.annots,args:[e.args[1],e.args[0]]})];break;case"IF_RIGHT":if(FZ(e,2))return[GZ({prim:"IF_LEFT",annots:e.annots,args:[e.args[1],e.args[0]]})];break;case"CAR":case"CDR":if(void 0===e.args)return e;if(FZ(e,1)&&HZ(e,e.args[0])){const t=parseInt(e.args[0].int,10);return GZ({prim:"GET",args:[{int:"CAR"===e.prim?String(2*t+1):String(2*t)}],annots:e.annots})}}if(ZZ.test(e.prim)&&FZ(e,0)){const{fields:t,rest:r}=WZ(e.annots),{r:n}=VZ(e,e.prim.slice(1),t,((e,t,r)=>[...e||[],...t||[],r]));return n.map((([e,t],i)=>{const o=[...KZ(t,null).map((e=>null===e?"%":e)),...0===e&&i===n.length-1?r:[]],a=GZ({prim:"PAIR",annots:0!==o.length?o:void 0});return 0===e?a:{prim:"DIP",args:1===e?[[a]]:[{int:String(e)},[a]]}}))}if(YZ.test(e.prim)){if(BZ(r,NZ.PtEdo2Zk)&&FZ(e,0)){const{r:t}=VZ(e,e.prim.slice(3),e.annots||[],((e,t,r)=>[r,...t||[],...e||[]]));return t.map((([e,t])=>{const r=[{prim:"DUP"},GZ({prim:"CAR",annots:null!==t[0]?[t[0]]:void 0}),{prim:"DIP",args:[[GZ({prim:"CDR",annots:null!==t[1]?[t[1]]:void 0})]]}];return 0===e?r:{prim:"DIP",args:1===e?[[r]]:[{int:String(e)},[r]]}}))}if("UNPAIR"===e.prim)return e;if(FZ(e,0)){const{r:t}=VZ(e,e.prim.slice(3),[],((e,t,r)=>[r,...t||[],...e||[]]));return t.map((([e])=>{const t=GZ({prim:"UNPAIR"});return 0===e?t:{prim:"DIP",args:1===e?[[t]]:[{int:String(e)},[t]]}}))}}if(XZ.test(e.prim)&&FZ(e,0)){const t=[...e.prim.slice(1,e.prim.length-1)];return t.map(((r,n)=>{const i=n===t.length-1?e.annots:void 0;switch(r){case"A":return GZ({prim:"CAR",annots:i});case"D":return GZ({prim:"CDR",annots:i});default:throw new UZ(e,`unexpected character: ${r}`)}}))}if(JZ.test(e.prim)&&FZ(e,0)){const{fields:t,rest:r}=WZ(e.annots);if(t.length>1)throw new UZ(e,`unexpected annotation on macro ${e.prim}: ${t}`);const n=0!==t.length?{a:[{prim:"DUP"},{prim:"CAR",annots:t},{prim:"DROP"},{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:[t[0],"%@"]}],d:[{prim:"DUP"},{prim:"CDR",annots:t},{prim:"DROP"},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@",t[0]]}]}:{a:[{prim:"CDR",annots:["@%%"]},{prim:"SWAP"},{prim:"PAIR",annots:["%","%@"]}],d:[{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@","%"]}]};return qZ(e,e.prim.slice(5,e.prim.length-1),r,n)}if(QZ.test(e.prim)&&FZ(e,1)){const{fields:t}=WZ(e.annots);if(t.length>1)throw new UZ(e,`unexpected annotation on macro ${e.prim}: ${t}`);const r={a:[{prim:"DUP"},{prim:"CDR",annots:["@%%"]},{prim:"DIP",args:[[GZ({prim:"CAR",annots:0!==t.length?["@"+t[0].slice(1)]:void 0}),e.args[0]]]},{prim:"SWAP"},{prim:"PAIR",annots:[0!==t.length?t[0]:"%","%@"]}],d:[{prim:"DUP"},GZ({prim:"CDR",annots:0!==t.length?["@"+t[0].slice(1)]:void 0}),e.args[0],{prim:"SWAP"},{prim:"CAR",annots:["@%%"]},{prim:"PAIR",annots:["%@",0!==t.length?t[0]:"%"]}]};return qZ(e,e.prim.slice(5,e.prim.length-1),[],r)}if(eY.test(e.prim)&&FZ(e,1)){let t=0;for(;"I"===e.prim[1+t];)t++;return GZ({prim:"DIP",args:[{int:String(t)},e.args[0]]})}if(tY.test(e.prim)){let t=0;for(;"U"===e.prim[1+t];)t++;if(BZ(r,NZ.PtEdo2Zk)){if(1===t){if(void 0===e.args)return e;FZ(e,1)&&HZ(e,e.args[0])&&(t=parseInt(e.args[0].int,10))}else FZ(e,0);return 1===t?[GZ({prim:"DUP",annots:e.annots})]:2===t?[{prim:"DIP",args:[[GZ({prim:"DUP",annots:e.annots})]]},{prim:"SWAP"}]:[{prim:"DIP",args:[{int:String(t-1)},[GZ({prim:"DUP",annots:e.annots})]]},{prim:"DIG",args:[{int:String(t)}]}]}if(1===t)return e;if(FZ(e,0))return GZ({prim:"DUP",args:[{int:String(t)}],annots:e.annots})}return e}(e,this.opt);return t!==e&&(t[AZ]=Object.assign(Object.assign({},e[AZ]||{first:0,last:0}),{macro:e})),t}return e}parseListExpr(e,t){var r;const n={first:t.first,last:t.last},i="("===t.t;let o;if(i){if(o=e.next(),o.done)throw iY;n.last=o.value.last}else o={value:t};if(o.value.t!==OZ.Ident)throw new rY(o.value,`not an identifier: ${o.value.v}`);const a={prim:o.value.v,[AZ]:n};for(;;){const t=e.next();if(t.done){if(i)throw iY;break}if(")"===t.value.t){if(!i)throw new rY(t.value,"unexpected closing bracket");n.last=t.value.last;break}if(oY(t.value))a.annots=a.annots||[],a.annots.push(t.value.v),n.last=t.value.last;else{a.args=a.args||[];const i=this.parseExpr(e,t.value);n.last=(null===(r=i[AZ])||void 0===r?void 0:r.last)||n.last,a.args.push(i)}}return this.expand(a)}parseArgs(e,t){var r;const n={first:t.first,last:t.last},i={prim:t.v,[AZ]:n};for(;;){const t=e.next();if(t.done||"}"===t.value.t||";"===t.value.t)return[i,t];if(oY(t.value))n.last=t.value.last,i.annots=i.annots||[],i.annots.push(t.value.v);else{const o=this.parseExpr(e,t.value);n.last=(null===(r=o[AZ])||void 0===r?void 0:r.last)||n.last,i.args=i.args||[],i.args.push(o)}}}parseSequenceExpr(e,t){var r,n;const i={first:t.first,last:t.last},o=[];o[AZ]=i;const a="{"===t.t;let s="{"===t.t?null:{value:t};for(;;){if(null===s&&(s=e.next(),s.done||(i.last=s.value.last)),s.done){if(a)throw iY;return o}if("}"===s.value.t){if(a)return o;throw new rY(s.value,"unexpected closing bracket")}if(s.value.t===OZ.Ident){const[t,n]=this.parseArgs(e,s.value);i.last=(null===(r=t[AZ])||void 0===r?void 0:r.last)||i.last,o.push(this.expand(t)),s=n}else{const t=this.parseExpr(e,s.value);i.last=(null===(n=t[AZ])||void 0===n?void 0:n.last)||i.last,o.push(t),s=null}null===s&&(s=e.next(),s.done||(i.last=s.value.last)),s.done||";"!==s.value.t||(s=null)}}parseExpr(e,t){switch(t.t){case OZ.Ident:return this.expand({prim:t.v,[AZ]:{first:t.first,last:t.last}});case OZ.Number:return{int:t.v,[AZ]:{first:t.first,last:t.last}};case OZ.String:return{string:JSON.parse(t.v),[AZ]:{first:t.first,last:t.last}};case OZ.Bytes:return{bytes:t.v.slice(2),[AZ]:{first:t.first,last:t.last}};case"{":return this.parseSequenceExpr(e,t);default:return this.parseListExpr(e,t)}}parseSequence(e){if("string"!==typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=MZ(e),r=t.next();return r.done?null:this.parseSequenceExpr(t,r.value)}parseList(e){if("string"!==typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=MZ(e),r=t.next();return r.done?null:this.parseListExpr(t,r.value)}parseMichelineExpression(e){if("string"!==typeof e)throw new TypeError(`string type was expected, got ${typeof e} instead`);const t=MZ(e),r=t.next();return r.done?null:this.parseExpr(t,r.value)}parseScript(e){return this.parseSequence(e)}parseData(e){return this.parseList(e)}parseJSON(e){if("object"!==typeof e)throw new TypeError(`object type was expected, got ${typeof e} instead`);if(Array.isArray(e)){const t=[];for(const r of e){if(null===r||"object"!==typeof r)throw new nY(r,`unexpected sequence element: ${r}`);t.push(this.parseJSON(r))}return t}if("prim"in e){const t=e;if("string"===typeof t.prim&&(void 0===t.annots||Array.isArray(t.annots))&&(void 0===t.args||Array.isArray(t.args))){const e={prim:t.prim};if(void 0!==t.annots){for(const e of t.annots)if("string"!==typeof e)throw new nY(e,`string expected: ${e}`);e.annots=t.annots}if(void 0!==t.args){e.args=[];for(const r of t.args){if(null===r||"object"!==typeof r)throw new nY(r,`unexpected argument: ${r}`);e.args.push(this.parseJSON(r))}}return this.expand(e)}throw new nY(e,`malformed prim expression: ${e}`)}if("string"in e){if("string"===typeof e.string)return{string:e.string};throw new nY(e,`malformed string literal: ${e}`)}if("int"in e){if("string"===typeof e.int&&aY.test(e.int))return{int:e.int};throw new nY(e,`malformed int literal: ${e}`)}if("bytes"in e){if("string"===typeof e.bytes&&sY.test(e.bytes))return{bytes:e.bytes};throw new nY(e,`malformed bytes literal: ${e}`)}throw new nY(e,`unexpected object: ${e}`)}}const lY=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],uY=[1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998];class dY extends Ja{constructor(e){super(),this.message=e,this.name="Base58DecodingError"}}function hY(e){const t=(e.length+9)%64,r=0===t?0:64-t;if(e.length>268435455)throw new ls("",`: Invalid length ${e.length} is too big -- SHA-256.`);const n=e.length<<3,i=[...e,128,...new Array(r).fill(0),0,0,0,0,n>>24&255,n>>16&255,n>>8&255,255&n];function o(e,t){return e>>>t|e<<32-t}const a=[...lY],s=new Array(64),c=new Array(8);for(let u=0;u>>3,r=o(s[t-2],17)^o(s[t-2],19)^s[t-2]>>>10;s[t]=(0|r)+s[t-7]+e+s[t-16]|0,t++}for(let r=0;r<8;r++)c[r]=a[r];for(let r=0;r<64;r++){const e=o(c[0],2)^o(c[0],13)^o(c[0],22),t=o(c[4],6)^o(c[4],11)^o(c[4],25),n=c[7]+t+(c[4]&c[5]^~c[4]&c[6])+uY[r]+s[r]|0,i=e+(c[0]&c[1]^c[0]&c[2]^c[1]&c[2])|0;c[7]=c[6],c[6]=c[5],c[5]=c[4],c[4]=c[3]+n|0,c[3]=c[2],c[2]=c[1],c[1]=c[0],c[0]=n+i|0}for(let r=0;r<8;r++)a[r]=a[r]+c[r]|0}const l=[];for(const u of a)l.push(u>>24&255),l.push(u>>16&255),l.push(u>>8&255),l.push(255&u);return l}const fY=[0,1,2,3,4,5,6,7,8,-1,-1,-1,-1,-1,-1,-1,9,10,11,12,13,14,15,16,-1,17,18,19,20,21,-1,22,23,24,25,26,27,28,29,30,31,32,-1,-1,-1,-1,-1,-1,33,34,35,36,37,38,39,40,41,42,43,-1,44,45,46,47,48,49,50,51,52,53,54,55,56,57];function pY(e,t){const r=e.charCodeAt(t)-49;if(r>=fY.length||-1===fY[r])throw new dY(`Unexpected character at position ${t}: ${e[t]}`);return fY[r]}function mY(e){const t=function(e){const t=[];let r=0;for(;r0;)t.push(0);return t.reverse()}(e);if(t.length<4)throw new dY(`Data is too short ${t.length}`);const r=t.slice(0,t.length-4),n=t.slice(t.length-4),i=hY(hY(r));if(n[0]!==i[0]||n[1]!==i[1]||n[2]!==i[2]||n[3]!==i[3])throw new dY("Invalid checksum");return r}class gY extends Qa{constructor(e){super(),this.message=e,this.name="InvalidMichelsonError"}}class vY extends Qa{constructor(e){super(),this.message=e,this.name="InvalidTypeExpressionError"}}class yY extends Qa{constructor(e){super(),this.message=e,this.name="InvalidDataExpressionError"}}class bY extends Qa{constructor(e){super(),this.entrypoint=e,this.name="InvalidEntrypointError",this.message=`Contract has no entrypoint named: "${e}"`}}class wY extends Ja{constructor(e){super(),this.message=e,this.name="LongIntegerError"}}class xY extends Ja{constructor(e,t){super(),this.val=e,this.message=t,this.name="MichelsonError"}}class _Y extends xY{constructor(e,t,r){super(e,t),this.val=e,this.message=t,this.name="MichelsonTypeError",void 0!==r&&(this.data=r)}}class SY{append(e){let t=0;for(;0!==e||t57)throw new wY(`unexpected character in integer constant "${e[t]}"`);this.append(r-48)}}else e<0?(this.neg=!0,this.append(-e)):this.append(e)}cmp(e){if(this.neg!==e.neg)return(e.neg?1:0)-(this.neg?1:0);{let t=0;if(this.buf.length!==e.buf.length)t=this.buf.length=0&&this.buf[r]===e.buf[r];)r--;t=r<0?0:this.buf[r]=0}catch(Zr){return!1}}const PY=/^(@%|@%%|%@|[@:%]([_0-9a-zA-Z][_0-9a-zA-Z.%@]*)?)$/;function OY(e,t){if(Array.isArray(e))return{};let r,n,i;if(void 0!==e.annots)for(const o of e.annots)if(0!==o.length){if(!PY.test(o)||!(null===t||void 0===t?void 0:t.specialVar)&&("@%"===o||"@%%"===o)||!(null===t||void 0===t?void 0:t.specialFields)&&"%@"===o)throw new xY(e,`${e.prim}: unexpected annotation: ${o}`);switch(o[0]){case"%":((null===t||void 0===t?void 0:t.emptyFields)||o.length>1)&&(r=r||[],r.push(o));break;case":":o.length>1&&(n=n||[],n.push(o));break;case"@":((null===t||void 0===t?void 0:t.emptyVar)||o.length>1)&&(i=i||[],i.push(o))}}return{f:r,t:n,v:i}}const TY={BlockHash:[32,[1,52]],OperationHash:[32,[5,116]],OperationListHash:[32,[133,233]],OperationListListHash:[32,[29,159,109]],ProtocolHash:[32,[2,170]],ContextHash:[32,[79,199]],ED25519PublicKeyHash:[20,[6,161,159]],SECP256K1PublicKeyHash:[20,[6,161,161]],P256PublicKeyHash:[20,[6,161,164]],ContractHash:[20,[2,90,121]],CryptoboxPublicKeyHash:[16,[153,103]],ED25519Seed:[32,[13,15,58,7]],ED25519PublicKey:[32,[13,15,37,217]],SECP256K1SecretKey:[32,[17,162,224,201]],P256SecretKey:[32,[16,81,238,189]],ED25519EncryptedSeed:[56,[7,90,60,179,41]],SECP256K1EncryptedSecretKey:[56,[9,237,241,174,150]],P256EncryptedSecretKey:[56,[9,48,57,115,171]],SECP256K1PublicKey:[33,[3,254,226,86]],P256PublicKey:[33,[3,178,139,127]],SECP256K1Scalar:[33,[38,248,136]],SECP256K1Element:[33,[5,92,0]],ED25519SecretKey:[64,[43,246,78,7]],ED25519Signature:[64,[9,245,205,134,18]],SECP256K1Signature:[64,[13,115,101,19,63]],P256Signature:[64,[54,240,44,52]],GenericSignature:[64,[4,130,43]],ChainID:[4,[87,82,0]],RollupAddress:[20,[1,128,120,31]],TxRollupL2Address:[20,[6,161,166]]};function CY(e,...t){const r=mY(e);for(const n of t){const[e,t]=TY[n];if(r.length===e+t.length){let e=0;for(;e0?ZY(e,1):ZY(e,0);break;default:throw new FY(e,"instruction expected")}}return!0}function XY(e){if(qY(e))if(Array.isArray(e)||"pair"===e.prim||"or"===e.prim||"option"===e.prim)aX(e,(e=>XY(e)));else if(!Object.prototype.hasOwnProperty.call(BY,e.prim))throw new FY(e,`${e.prim}: type is not comparable`);return!0}function JY(e){if(qY(e)&&$Y(e)){if(!Object.prototype.hasOwnProperty.call(UY,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim||"ticket"===e.prim)throw new FY(e,`${e.prim}: type can't be used inside PACK/UNPACK instructions`);aX(e,(e=>JY(e)))}return!0}function QY(e){if(qY(e)&&$Y(e)){if(!Object.prototype.hasOwnProperty.call(UY,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim||"ticket"===e.prim||"contract"===e.prim)throw new FY(e,`${e.prim}: type can't be pushed`);aX(e,(e=>QY(e)))}return!0}function eX(e){if(qY(e)&&$Y(e)){if(!Object.prototype.hasOwnProperty.call(UY,e.prim)||"operation"===e.prim||"contract"===e.prim)throw new FY(e,`${e.prim}: type can't be used as part of a storage`);aX(e,(e=>eX(e)))}return!0}function tX(e){if(qY(e)&&$Y(e)){if(!Object.prototype.hasOwnProperty.call(UY,e.prim)||"operation"===e.prim)throw new FY(e,`${e.prim}: type can't be used as part of a parameter`);aX(e,(e=>tX(e)))}return!0}function rX(e){if(qY(e)&&$Y(e)){if(!Object.prototype.hasOwnProperty.call(UY,e.prim)||"big_map"===e.prim||"operation"===e.prim||"sapling_state"===e.prim)throw new FY(e,`${e.prim}: type can't be used inside a big_map`);aX(e,(e=>rX(e)))}return!0}const nX=new RegExp("^[a-zA-Z0-9_.%@]*$");function iX(e){if(e.string.length>NY)throw new FY(e,`view name too long: ${e.string}`);if(!nX.test(e.string))throw new FY(e,`invalid character(s) in view name: ${e.string}`)}function oX(e){if(qY(e)&&$Y(e)){if(!Object.prototype.hasOwnProperty.call(UY,e.prim))throw new FY(e,"type expected");aX(e,(e=>oX(e)))}return!0}function aX(e,t){if(Array.isArray(e)||"pair"===e.prim){const r=Array.isArray(e)?e:e.args;if(void 0===r||r.length<2)throw new FY(e,"at least 2 arguments expected");return r.forEach((e=>{qY(e)&&t(e)})),!0}switch(e.prim){case"option":case"list":ZY(e,1)&&qY(e.args[0])&&t(e.args[0]);break;case"contract":ZY(e,1)&&tX(e.args[0]);break;case"or":ZY(e,2)&&qY(e.args[0])&&qY(e.args[1])&&(t(e.args[0]),t(e.args[1]));break;case"lambda":ZY(e,2)&&(oX(e.args[0]),oX(e.args[1]));break;case"set":ZY(e,1)&&XY(e.args[0]);break;case"map":ZY(e,2)&&qY(e.args[0])&&qY(e.args[1])&&(XY(e.args[0]),t(e.args[1]));break;case"big_map":ZY(e,2)&&qY(e.args[0])&&qY(e.args[1])&&(XY(e.args[0]),rX(e.args[1]),t(e.args[1]));break;case"ticket":ZY(e,1)&&qY(e.args[0])&&XY(e.args[0]);break;case"sapling_state":case"sapling_transaction":ZY(e,1)&&WY(e.args[0]);break;default:ZY(e,0)}return!0}function sX(e){if("int"in e||"string"in e||"bytes"in e)return!0;if(Array.isArray(e)){let t=0;for(const r of e)$Y(r)&&"Elt"===r.prim?(ZY(r,2)&&(sX(r.args[0]),sX(r.args[1])),t++):sX(r);if(0!==t&&t!==e.length)throw new FY(e,"data entries and map elements can't be intermixed");return!0}if(!$Y(e))throw new FY(e,"data entry expected");switch(e.prim){case"Unit":case"True":case"False":case"None":ZY(e,0);break;case"Pair":if(void 0===e.args||e.args.length<2)throw new FY(e,"at least 2 arguments expected");for(const t of e.args)sX(t);break;case"Left":case"Right":case"Some":ZY(e,1)&&sX(e.args[0]);break;case"Lambda_rec":e.args&&YY(e.args);break;default:if(!Object.prototype.hasOwnProperty.call(zY,e.prim))throw new FY(e,"data entry or instruction expected");YY(e)}return!0}function cX(e){if(VY(e)){const t={},r={};for(const n of e)if(HY(n)){if("view"!==n.prim){if(n.prim in t)throw new FY(e,`duplicate contract section: ${n.prim}`);t[n.prim]=!0}switch(n.prim){case"code":ZY(n,1)&&VY(n.args[0])&&YY(n.args[0]);break;case"parameter":if(ZY(n,1)&&tX(n.args[0]),n.annots)throw new FY(n,"Annotation must be part of the parameter type");break;case"storage":ZY(n,1)&&eX(n.args[0]);break;case"view":if(ZY(n,4)){if(GY(n.args[0])){const t=n.args[0];if(t.string in r)throw new FY(e,`duplicate view name: ${t.string}`);r[t.string]=!0,iX(t)}QY(n.args[1]),QY(n.args[2]),VY(n.args[3])&&YY(n.args[3])}break;default:throw new FY(e,`unexpected contract section: ${n.prim}`)}}}return!0}function lX(e){return Object.prototype.hasOwnProperty.call(zY,e.prim)}function uX(e){if(!Array.isArray(e))return!1;for(const t of e)if("prim"in t){if(lX(t))throw new xY(e,`Instruction outside of a lambda: ${JSON.stringify(e)}`);if("Elt"===t.prim)throw new xY(e,`Elt item outside of a map literal: ${JSON.stringify(e)}`)}return!0}"function"===typeof SuppressedError&&SuppressedError;const dX=["parameter","storage","code","False","Elt","Left","None","Pair","Right","Some","True","Unit","PACK","UNPACK","BLAKE2B","SHA256","SHA512","ABS","ADD","AMOUNT","AND","BALANCE","CAR","CDR","CHECK_SIGNATURE","COMPARE","CONCAT","CONS","CREATE_ACCOUNT","CREATE_CONTRACT","IMPLICIT_ACCOUNT","DIP","DROP","DUP","EDIV","EMPTY_MAP","EMPTY_SET","EQ","EXEC","FAILWITH","GE","GET","GT","HASH_KEY","IF","IF_CONS","IF_LEFT","IF_NONE","INT","LAMBDA","LE","LEFT","LOOP","LSL","LSR","LT","MAP","MEM","MUL","NEG","NEQ","NIL","NONE","NOT","NOW","OR","PAIR","PUSH","RIGHT","SIZE","SOME","SOURCE","SENDER","SELF","STEPS_TO_QUOTA","SUB","SWAP","TRANSFER_TOKENS","SET_DELEGATE","UNIT","UPDATE","XOR","ITER","LOOP_LEFT","ADDRESS","CONTRACT","ISNAT","CAST","RENAME","bool","contract","int","key","key_hash","lambda","list","map","big_map","nat","option","or","pair","set","signature","string","bytes","mutez","timestamp","unit","operation","address","SLICE","DIG","DUG","EMPTY_BIG_MAP","APPLY","chain_id","CHAIN_ID","LEVEL","SELF_ADDRESS","never","NEVER","UNPAIR","VOTING_POWER","TOTAL_VOTING_POWER","KECCAK","SHA3","PAIRING_CHECK","bls12_381_g1","bls12_381_g2","bls12_381_fr","sapling_state","sapling_transaction_deprecated","SAPLING_EMPTY_STATE","SAPLING_VERIFY_UPDATE","ticket","TICKET_DEPRECATED","READ_TICKET","SPLIT_TICKET","JOIN_TICKETS","GET_AND_UPDATE","chest","chest_key","OPEN_CHEST","VIEW","view","constant","SUB_MUTEZ","tx_rollup_l2_address","MIN_BLOCK_TIME","sapling_transaction","EMIT","Lambda_rec","LAMBDA_REC","TICKET","BYTES","NAT"];Object.assign({},...dX.map(((e,t)=>({[e]:t}))));var hX;!function(e){e[e.Int=0]="Int",e[e.String=1]="String",e[e.Sequence=2]="Sequence",e[e.Prim0=3]="Prim0",e[e.Prim0Annot=4]="Prim0Annot",e[e.Prim1=5]="Prim1",e[e.Prim1Annot=6]="Prim1Annot",e[e.Prim2=7]="Prim2",e[e.Prim2Annot=8]="Prim2Annot",e[e.Prim=9]="Prim",e[e.Bytes=10]="Bytes"}(hX||(hX={}));const fX=new Error("bounds out of range");class pX{constructor(e,t=0,r=e.length){this.buffer=e,this.idx=t,this.cap=r}get length(){return this.cap-this.idx}readBytes(e){if(this.cap-this.idx>>0}readUint16(){if(this.cap-this.idx<2)throw fX;return(this.buffer[this.idx++]<<8|this.buffer[this.idx++])>>>0}readUint32(){if(this.cap-this.idx<4)throw fX;return(this.buffer[this.idx++]<<24|this.buffer[this.idx++]<<16|this.buffer[this.idx++]<<8|this.buffer[this.idx++])>>>0}readInt8(){if(this.cap-this.idx<1)throw fX;return this.buffer[this.idx++]<<24>>24}readInt16(){if(this.cap-this.idx<2)throw fX;return(this.buffer[this.idx++]<<8|this.buffer[this.idx++])<<16>>16}readInt32(){if(this.cap-this.idx<4)throw fX;return this.buffer[this.idx++]<<24|this.buffer[this.idx++]<<16|this.buffer[this.idx++]<<8|this.buffer[this.idx++]}}var mX,gX,vX;function yX(e){let t;const r=e.readUint8();switch(r){case gX.ED25519:t="ED25519PublicKeyHash";break;case gX.SECP256K1:t="SECP256K1PublicKeyHash";break;case gX.P256:t="P256PublicKeyHash";break;default:throw new Error(`unknown public key hash tag: ${r}`)}return{type:t,hash:e.readBytes(20)}}function bX(e){let t;const r=e.readUint8();switch(r){case mX.Implicit:t=yX(e);break;case mX.Originated:t={type:"ContractHash",hash:e.readBytes(20)},e.readBytes(1);break;default:throw new Error(`unknown address tag: ${r}`)}if(0!==e.length){const r=new TextDecoder;t.entryPoint=r.decode(new Uint8Array(e.readBytes(e.length)))}return t}function wX(e){let t,r;const n=e.readUint8();switch(n){case vX.ED25519:r="ED25519PublicKey",t=32;break;case vX.SECP256K1:r="SECP256K1PublicKey",t=33;break;case vX.P256:r="P256PublicKey",t=33;break;default:throw new Error(`unknown public key tag: ${n}`)}return{type:r,publicKey:e.readBytes(t)}}!function(e){e[e.Implicit=0]="Implicit",e[e.Originated=1]="Originated"}(mX||(mX={})),function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256"}(gX||(gX={})),function(e){e[e.ED25519=0]="ED25519",e[e.SECP256K1=1]="SECP256K1",e[e.P256=2]="P256"}(vX||(vX={}));class xX extends xY{constructor(e,t,r){super(e,r),this.val=e,this.stackState=t,this.message=r,this.name="MichelsonInstructionError"}}function _X(e){return Array.isArray(e)?"pair":e.prim}function SX(e){return"prim"in e?e.args:e}function kX(e,t,r=!1){if(_X(e)!==_X(t))throw new _Y(e,`types mismatch: ${_X(e)} != ${_X(t)}`,void 0);const n=[OY(e),OY(t)];if(n[0].t&&n[1].t&&n[0].t[0]!==n[1].t[0])throw new _Y(e,`${_X(e)}: type names mismatch: ${n[0].t[0]} != ${n[1].t[0]}`,void 0);if(r&&n[0].f&&n[1].f&&n[0].f[0]!==n[1].f[0])throw new _Y(e,`${_X(e)}: field names mismatch: ${n[0].f[0]} != ${n[1].f}`,void 0);if(RY(e)){const r=jY("pair",e),n=jY("pair",t);return kX(r.args[0],n.args[0],!0),void kX(r.args[1],n.args[1],!0)}switch(e.prim){case"option":case"list":case"contract":case"set":case"ticket":kX(e.args[0],t.args[0]);break;case"or":kX(e.args[0],t.args[0],!0),kX(e.args[1],t.args[1],!0);break;case"lambda":case"map":case"big_map":kX(e.args[0],t.args[0]),kX(e.args[1],t.args[1]);break;case"sapling_state":case"sapling_transaction":if(parseInt(e.args[0].int,10)!==parseInt(t.args[0].int,10))throw new _Y(e,`${_X(e)}: type argument mismatch: ${e.args[0].int} != ${t.args[0].int}`,void 0)}}function EX(e,t){if(e.length!==t.length)throw new _Y(e,`stack length mismatch: ${e.length} != ${t.length}`,void 0);for(let r=0;r1)throw new _Y(e,`${e.prim}: at most one type annotation allowed: ${e.annots}`,void 0);if(t){if(((null===(n=o.f)||void 0===n?void 0:n.length)||0)>1)throw new _Y(e,`${e.prim}: at most one field annotation allowed: ${e.annots}`,void 0)}else if(((null===(i=o.f)||void 0===i?void 0:i.length)||0)>0)throw new _Y(e,`${e.prim}: field annotations aren't allowed: ${e.annots}`,void 0)}if(RY(e)){const t=SX(e);for(const e of t)AX(e,!0)}else switch(e.prim){case"option":case"list":case"contract":case"set":AX(e.args[0]);break;case"or":for(const t of e.args)AX(t,!0);break;case"lambda":case"map":case"big_map":AX(e.args[0]),AX(e.args[1])}}function PX(e){if(!Array.isArray(e))return!1;for(const t of e)if(!(Array.isArray(t)&&PX(t)||"prim"in t&&lX(t)))return!1;return!0}function OX(e,t,r){if(RY(t)){if(IY(e)){uX(e);const n=jY("Pair",e),i=jY("pair",t);return OX(n.args[0],i.args[0],r),void OX(n.args[1],i.args[1],r)}throw new _Y(t,`pair expected: ${JSON.stringify(e)}`,e)}switch(t.prim){case"int":if("int"in e&&EY(e.int))return;throw new _Y(t,`integer value expected: ${JSON.stringify(e)}`,e);case"nat":case"mutez":if("int"in e&&AY(e.int))return;throw new _Y(t,`natural value expected: ${JSON.stringify(e)}`,e);case"string":if("string"in e)return;throw new _Y(t,`string value expected: ${JSON.stringify(e)}`,e);case"bytes":case"bls12_381_g1":case"bls12_381_g2":if("bytes"in e&&null!==kY(e.bytes))return;throw new _Y(t,`bytes value expected: ${JSON.stringify(e)}`,e);case"bool":if("prim"in e&&("True"===e.prim||"False"===e.prim))return;throw new _Y(t,`boolean value expected: ${JSON.stringify(e)}`,e);case"key_hash":if("string"in e&&null!==CY(e.string,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash"))return;if("bytes"in e)try{return void function(e){const t=kY(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);yX(new pX(new Uint8Array(t)))}(e)}catch(Ele){}throw new _Y(t,`key hash expected: ${JSON.stringify(e)}`,e);case"timestamp":if(("string"in e||"int"in e)&&null!==LY(e))return;throw new _Y(t,`timestamp expected: ${JSON.stringify(e)}`,e);case"address":if("string"in e){let t=e.string;const r=e.string.indexOf("%");if(r>=0&&(t=e.string.slice(0,r)),null!==CY(t,"ED25519PublicKeyHash","SECP256K1PublicKeyHash","P256PublicKeyHash","ContractHash","TxRollupL2Address","RollupAddress"))return}else if("bytes"in e)try{return void function(e){const t=kY(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);bX(new pX(new Uint8Array(t)))}(e)}catch(Ele){}throw new _Y(t,`address expected: ${JSON.stringify(e)}`,e);case"key":if("string"in e&&null!==CY(e.string,"ED25519PublicKey","SECP256K1PublicKey","P256PublicKey"))return;if("bytes"in e)try{return void function(e){const t=kY(e.bytes);if(null===t)throw new Error(`can't parse bytes: "${e.bytes}"`);wX(new pX(new Uint8Array(t)))}(e)}catch(Ele){}throw new _Y(t,`public key expected: ${JSON.stringify(e)}`,e);case"unit":if("prim"in e&&"Unit"===e.prim)return;throw new _Y(t,`unit value expected: ${JSON.stringify(e)}`,e);case"signature":if("bytes"in e||"string"in e&&null!==CY(e.string,"ED25519Signature","SECP256K1Signature","P256Signature","GenericSignature"))return;throw new _Y(t,`signature expected: ${JSON.stringify(e)}`,e);case"chain_id":if("bytes"in e||"string"in e){if(null!==("string"in e?mY(e.string):kY(e.bytes)))return}throw new _Y(t,`chain id expected: ${JSON.stringify(e)}`,e);case"option":if("prim"in e){if("None"===e.prim)return;if("Some"===e.prim)return void OX(e.args[0],t.args[0],r)}throw new _Y(t,`option expected: ${JSON.stringify(e)}`,e);case"list":case"set":if(uX(e)){for(const n of e)OX(n,t.args[0],r);return}throw new _Y(t,`${t.prim} expected: ${JSON.stringify(e)}`,e);case"or":if("prim"in e){if("Left"===e.prim)return void OX(e.args[0],t.args[0],r);if("Right"===e.prim)return void OX(e.args[0],t.args[1],r)}throw new _Y(t,`union (or) expected: ${JSON.stringify(e)}`,e);case"lambda":if(PX(e)){const n=TX(e,[t.args[0]],r);if("failed"in n)throw new _Y(t,`function is failed with error type: ${n.failed}`,e);if(1!==n.length)throw new _Y(t,"function must return a value",e);return void kX(t.args[1],n[0])}throw new _Y(t,`function expected: ${JSON.stringify(e)}`,e);case"map":case"big_map":if(Array.isArray(e)){for(const n of e){if(!("prim"in n)||"Elt"!==n.prim)throw new _Y(t,`map elements expected: ${JSON.stringify(e)}`,e);OX(n.args[0],t.args[0],r),OX(n.args[1],t.args[1],r)}return}throw new _Y(t,`${t.prim} expected: ${JSON.stringify(e)}`,e);case"bls12_381_fr":if("int"in e&&EY(e.int)||"bytes"in e&&null!==kY(e.bytes))return;throw new _Y(t,`BLS12-381 element expected: ${JSON.stringify(e)}`,e);case"sapling_state":if(Array.isArray(e))return;throw new _Y(t,`sapling state expected: ${JSON.stringify(e)}`,e);case"ticket":return void OX(e,{prim:"pair",args:[{prim:"address"},t.args[0],{prim:"nat"}]},r);default:throw new _Y(t,`type ${_X(t)} don't have Michelson literal representation`,e)}}function TX(e,t,r){const n=(null===r||void 0===r?void 0:r.protocol)||DZ;if(Array.isArray(e))return function(e,t,r){let n=t,i=t,o=0;for(const a of e){const e=TX(a,i,r);if(n=e,"failed"in e)break;i=e,o++}if("failed"in n&&0==n.level&&(!("prim"in n.failed)||"never"!==n.failed.prim)&&o!==e.length-1)throw new xX(e,n,"FAIL must appear in a tail position");if(void 0!==(null===r||void 0===r?void 0:r.traceCallback)){const i={op:e,in:t,out:n};r.traceCallback(i)}return"failed"in n?{failed:n.failed,level:n.level+1}:n}(e,t,r);const i=e;function o(e,...r){if(t.length{try{return e(...r)}catch(Ele){throw Ele instanceof xY?new xX(i,t,Ele.message):Ele}}}function s(e){return r=>{try{return e(r)}catch(Ele){throw Ele instanceof xY?new xX(i,t,Ele.message):Ele}}}const c=a(OY),l=a(EX),u=a(kX),d=s(XY),h=s(JY),f=s(eX),p=s(QY),m=s(rX);function g(e,r){const n=c(i,Object.assign(Object.assign({},r),{emptyFields:void 0!==e.f&&e.f>1,emptyVar:void 0!==e.v&&e.v>1})),o=(e,r,n)=>{if(e&&e.length>(r||0))throw new xX(i,t,`${i.prim}: at most ${r||0} ${n} annotations allowed`)};return o(n.f,e.f,"field"),o(n.t,e.t,"type"),o(n.v,e.v,"variable"),n}function v(e,t){const r=e,n=Array.isArray(r)?{prim:"pair",args:r}:r,i=c(n),o=void 0!==t.v||void 0!==t.t||void 0!==t.f?[...(null===t.v?i.v:t.v)||[],...(null===t.t?i.t:t.t)||[],...(null===t.f?i.f:t.f)||[]]:void 0,a=function(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i["@"+(e.v?e.v[0].slice(1)+".":"")+t];function k(e,t){return"failed"in e||"failed"in t?"failed"in e?t:e:(l(e,t),e)}const E=(e=>{var i,a,s,E,A;switch(e.prim){case"DUP":{const r=e.args?parseInt(e.args[0].int,10):1;if(0===r)throw new xX(e,t,"DUP 0 is forbidden");const n=o(r-1,null)[0];if("ticket"===_X(n))throw new xX(e,t,"ticket can't be DUPed");return[n,...t]}case"SWAP":{const e=o(0,null,null);return g({}),[e[1],e[0],...t.slice(2)]}case"SOME":return[v({prim:"option",args:[o(0,null)[0]]},g({t:1,v:1})),...t.slice(1)];case"UNIT":return[v({prim:"unit"},g({v:1,t:1})),...t];case"PAIR":{const r=e.args?parseInt(e.args[0].int,10):2;if(r<2)throw new xX(e,t,`PAIR ${r} is forbidden`);const n=o(0,...new Array(r).fill(null)),i=g({f:r,t:1,v:1},{specialFields:!0}),a=e=>{const t=e.lastIndexOf(".");return e.slice(t>0?t+1:1)},s=n.map(((e,t)=>{var r;const n=c(e);return v(e,{v:null,t:null,f:i.f&&i.f.length>t&&"%"!==i.f[t]?"%@"===i.f[t]?n.v?["%"+a((null===(r=n.v)||void 0===r?void 0:r[0])||"")]:void 0:[i.f[t]]:void 0})}));return[v({prim:"pair",args:s},{t:i.t,v:i.v}),...t.slice(r)]}case"UNPAIR":{const r=e.args?parseInt(e.args[0].int,10):2;if(r<2)throw new xX(e,t,`UNPAIR ${r} is forbidden`);const n=o(0,["pair"])[0],i=g({f:2,v:2},{specialVar:!0});return[...w(n,r).map(((e,t)=>b(n,e,i,t,0===t?"car":"cdr"))),...t.slice(1)]}case"CAR":case"CDR":{const r=jY("pair",o(0,["pair"])[0]);return[b(r,r.args["CAR"===e.prim?0:1],g({f:1,v:1},{specialVar:!0}),0,e.prim.toLocaleLowerCase()),...t.slice(1)]}case"CONS":{const e=o(0,null,["list"]);return u(e[0],e[1].args[0]),[y({prim:"list",args:[e[1].args[0]]}),...t.slice(2)]}case"SIZE":return o(0,["string","list","set","map","bytes"]),[y({prim:"nat"}),...t.slice(1)];case"MEM":{const e=o(0,null,["set","map","big_map"]);return d(e[0]),u(e[0],e[1].args[0]),[y({prim:"bool"}),...t.slice(2)]}case"GET":if(e.args){const r=parseInt(e.args[0].int,10);return[y(x(o(0,["pair"])[0],r)),...t.slice(1)]}{const e=o(0,null,["map","big_map"]);return d(e[0]),u(e[0],e[1].args[0]),[y({prim:"option",args:[e[1].args[1]]}),...t.slice(2)]}case"UPDATE":if(e.args){const r=parseInt(e.args[0].int,10),n=o(0,null,["pair"]);return[y(_(n[1],n[0],r)),...t.slice(2)]}{const e=o(0,null,["bool","option"]);if(d(e[0]),"bool"===e[1].prim){const r=o(2,["set"]);return u(e[0],r[0].args[0]),[y({prim:"set",args:[v(e[0],{t:null})]}),...t.slice(3)]}const r=o(2,["map","big_map"]);return u(e[0],r[0].args[0]),"map"===r[0].prim?[y({prim:"map",args:[v(e[0],{t:null}),v(e[1].args[0],{t:null})]}),...t.slice(3)]:(m(e[1].args[0]),[y({prim:"big_map",args:[v(e[0],{t:null}),v(e[1].args[0],{t:null})]}),...t.slice(3)])}case"GET_AND_UPDATE":{const e=g({v:2}),r=o(0,null,["option"],["map","big_map"]);d(r[0]),u(r[0],r[2].args[0]),u(r[1].args[0],r[2].args[1]);const n=null===(i=e.v)||void 0===i?void 0:i.map((e=>"@"!==e?[e]:void 0));return"map"===r[2].prim?[v({prim:"option",args:[r[2].args[1]]},{v:null===n||void 0===n?void 0:n[0]}),v({prim:"map",args:[v(r[0],{t:null}),v(r[1].args[0],{t:null})]},{v:null===n||void 0===n?void 0:n[1]}),...t.slice(3)]:(m(r[1].args[0]),[v({prim:"option",args:[r[2].args[1]]},{v:null===n||void 0===n?void 0:n[0]}),v({prim:"big_map",args:[v(r[0],{t:null}),v(r[1].args[0],{t:null})]},{v:null===n||void 0===n?void 0:n[1]}),...t.slice(3)])}case"EXEC":{const e=o(0,null,["lambda"]);return u(e[0],e[1].args[0]),[y(e[1].args[1]),...t.slice(2)]}case"APPLY":{const r=o(0,null,["lambda"]);if(f(r[0]),p(r[0]),!RY(r[1].args[0]))throw new xX(e,t,`${e.prim}: function's argument must be a pair: ${_X(r[1].args[0])}`);const n=r[1].args[0];return u(r[0],SX(n)[0]),[y({prim:"lambda",args:[SX(n)[1],r[1].args[1]]}),...t.slice(2)]}case"FAILWITH":{const e=o(0,null)[0];return BZ(n,NZ.PtEdo2Zk)||h(e),{failed:e,level:0}}case"NEVER":return o(0,["never"]),{failed:{prim:"never"},level:0};case"RENAME":return[y(o(0,null)[0]),...t.slice(1)];case"CONCAT":{const r=o(0,["string","list","bytes"]);if("list"===r[0].prim){if("string"!==_X(r[0].args[0])&&"bytes"!==_X(r[0].args[0]))throw new xX(e,t,`${e.prim}: can't concatenate list of ${_X(r[0].args[0])}'s`);return[y(r[0].args[0]),...t.slice(1)]}const n=o(1,["string","bytes"]);if(r[0].prim!==n[0].prim)throw new xX(e,t,`${e.prim}: can't concatenate ${r[0].prim} with ${n[0].prim}`);return[y(n[0]),...t.slice(2)]}case"SLICE":return[y({prim:"option",args:[o(0,["nat"],["nat"],["string","bytes"])[2]]},"@slice"),...t.slice(3)];case"PACK":{const e=o(0,null)[0];return h(e),[y({prim:"bytes"},"@packed"),...t.slice(1)]}case"ADD":{const r=o(0,["nat","int","timestamp","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"],["nat","int","timestamp","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"]);if("nat"===r[0].prim&&"int"===r[1].prim||"int"===r[0].prim&&"nat"===r[1].prim)return[y({prim:"int"}),...t.slice(2)];if("int"===r[0].prim&&"timestamp"===r[1].prim||"timestamp"===r[0].prim&&"int"===r[1].prim)return[y({prim:"timestamp"}),...t.slice(2)];if(("int"===r[0].prim||"nat"===r[0].prim||"mutez"===r[0].prim||"bls12_381_g1"===r[0].prim||"bls12_381_g2"===r[0].prim||"bls12_381_fr"===r[0].prim)&&r[0].prim===r[1].prim)return[y(r[0]),...t.slice(2)];throw new xX(e,t,`${e.prim}: can't add ${r[0].prim} to ${r[1].prim}`)}case"SUB":{const r=BZ(n,NZ.PsiThaCa)?o(0,["nat","int","timestamp","mutez"],["nat","int","timestamp","mutez"]):o(0,["nat","int","timestamp"],["nat","int","timestamp"]);if(("nat"===r[0].prim||"int"===r[0].prim)&&("nat"===r[1].prim||"int"===r[1].prim)||"timestamp"===r[0].prim&&"timestamp"===r[1].prim)return[y({prim:"int"}),...t.slice(2)];if("timestamp"===r[0].prim&&"int"===r[1].prim)return[y({prim:"timestamp"}),...t.slice(2)];if("mutez"===r[0].prim&&"mutez"===r[1].prim)return[y({prim:"mutez"}),...t.slice(2)];throw new xX(e,t,`${e.prim}: can't subtract ${r[0].prim} from ${r[1].prim}`)}case"SUB_MUTEZ":return o(0,["mutez"],["mutez"]),[y({prim:"option",args:[{prim:"mutez"}]}),...t.slice(2)];case"MUL":{const r=o(0,["nat","int","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"],["nat","int","mutez","bls12_381_g1","bls12_381_g2","bls12_381_fr"]);if("nat"===r[0].prim&&"int"===r[1].prim||"int"===r[0].prim&&"nat"===r[1].prim)return[y({prim:"int"}),...t.slice(2)];if("nat"===r[0].prim&&"mutez"===r[1].prim||"mutez"===r[0].prim&&"nat"===r[1].prim)return[y({prim:"mutez"}),...t.slice(2)];if(("bls12_381_g1"===r[0].prim||"bls12_381_g2"===r[0].prim||"bls12_381_fr"===r[0].prim)&&"bls12_381_fr"===r[1].prim||("nat"===r[0].prim||"int"===r[0].prim)&&r[0].prim===r[1].prim)return[y(r[0]),...t.slice(2)];if(("nat"===r[0].prim||"int"===r[0].prim)&&"bls12_381_fr"===r[1].prim||("nat"===r[1].prim||"int"===r[1].prim)&&"bls12_381_fr"===r[0].prim)return[y({prim:"bls12_381_fr"}),...t.slice(2)];throw new xX(e,t,`${e.prim}: can't multiply ${r[0].prim} by ${r[1].prim}`)}case"EDIV":{const r=(e,t)=>({prim:"option",args:[{prim:"pair",args:[{prim:e},{prim:t}]}]}),n=o(0,["nat","int","mutez"],["nat","int","mutez"]);if("nat"===n[0].prim&&"nat"===n[1].prim)return[y(r("nat","nat")),...t.slice(2)];if(!("nat"!==n[0].prim&&"int"!==n[0].prim||"nat"!==n[1].prim&&"int"!==n[1].prim))return[y(r("int","nat")),...t.slice(2)];if("mutez"===n[0].prim&&"nat"===n[1].prim)return[y(r("mutez","mutez")),...t.slice(2)];if("mutez"===n[0].prim&&"mutez"===n[1].prim)return[y(r("nat","mutez")),...t.slice(2)];throw new xX(e,t,`${e.prim}: can't euclideally divide ${n[0].prim} by ${n[1].prim}`)}case"ABS":return o(0,["int"]),[y({prim:"nat"}),...t.slice(1)];case"ISNAT":return o(0,["int"]),[y({prim:"option",args:[{prim:"nat"}]}),...t.slice(1)];case"INT":return o(0,["nat","bls12_381_fr","bytes"]),[y({prim:"int"}),...t.slice(1)];case"BYTES":return o(0,["nat","int"]),[y({prim:"bytes"}),...t.slice(1)];case"NAT":return o(0,["bytes"]),[y({prim:"nat"}),...t.slice(1)];case"NEG":{const e=o(0,["nat","int","bls12_381_g1","bls12_381_g2","bls12_381_fr"])[0];return"nat"===e.prim||"int"===e.prim?[y({prim:"int"}),...t.slice(1)]:[y(e),...t.slice(1)]}case"LSL":case"LSR":return o(0,["nat","bytes"],["nat","bytes"]),[y({prim:"nat"}),...t.slice(2)];case"OR":case"XOR":{const r=o(0,["nat","bytes","bool"],["nat","bytes","bool"]);if(r[0].prim!==r[1].prim)throw new xX(e,t,`${e.prim}: both arguments must be of the same type: ${r[0].prim}, ${r[1].prim}`);return[y(r[1]),...t.slice(2)]}case"AND":{const r=o(0,["nat","bytes","bool","int"],["nat","bytes","bool"]);if(("int"!==r[0].prim||"nat"!==r[1].prim)&&r[0].prim!==r[1].prim)throw new xX(e,t,`${e.prim}: both arguments must be of the same type: ${r[0].prim}, ${r[1].prim}`);return[y(r[1]),...t.slice(2)]}case"NOT":return"bool"===o(0,["nat","bytes","bool","int"])[0].prim?[y({prim:"bool"}),...t.slice(1)]:[y({prim:"int"}),...t.slice(1)];case"COMPARE":{const e=o(0,null,null);return d(e[0]),d(e[1]),[y({prim:"int"}),...t.slice(2)]}case"EQ":case"NEQ":case"LT":case"GT":case"LE":case"GE":return o(0,["int"]),[y({prim:"bool"}),...t.slice(1)];case"SELF":{if(void 0===(null===r||void 0===r?void 0:r.contract))throw new xX(e,t,`${e.prim}: contract required`);const n=g({f:1,v:1}),i=RX(r.contract,null===(a=n.f)||void 0===a?void 0:a[0]);if(null===i)throw new xX(e,t,`${e.prim}: contract has no entrypoint ${i}`);return[v({prim:"contract",args:[i]},{v:n.v?n.v:["@self"]}),...t]}case"TRANSFER_TOKENS":{const e=o(0,null,["mutez"],["contract"]);return u(e[0],e[2].args[0]),[y({prim:"operation"}),...t.slice(3)]}case"SET_DELEGATE":{const r=o(0,["option"])[0];if("key_hash"!==_X(r.args[0]))throw new xX(e,t,`${e.prim}: key hash expected: ${_X(r.args[0])}`);return[y({prim:"operation"}),...t.slice(1)]}case"IMPLICIT_ACCOUNT":return o(0,["key_hash"]),[y({prim:"contract",args:[{prim:"unit"}]}),...t.slice(1)];case"NOW":return[y({prim:"timestamp"},"@now"),...t];case"AMOUNT":return[y({prim:"mutez"},"@amount"),...t];case"BALANCE":return[y({prim:"mutez"},"@balance"),...t];case"CHECK_SIGNATURE":return o(0,["key"],["signature"],["bytes"]),[y({prim:"bool"}),...t.slice(3)];case"BLAKE2B":case"SHA256":case"SHA512":case"KECCAK":case"SHA3":return o(0,["bytes"]),[y({prim:"bytes"}),...t.slice(1)];case"HASH_KEY":return o(0,["key"]),[y({prim:"key_hash"}),...t.slice(1)];case"SOURCE":return[y({prim:"address"},"@source"),...t];case"SENDER":return[y({prim:"address"},"@sender"),...t];case"ADDRESS":{const e=o(0,["contract"])[0],r=g({v:1});return[v({prim:"address",[LZ]:e},{v:r.v?r.v:S(c(e),"address")}),...t.slice(1)]}case"SELF_ADDRESS":{const e={prim:"address"};return void 0!==(null===r||void 0===r?void 0:r.contract)&&(e[LZ]={prim:"contract",args:[CX(r.contract,"parameter").args[0]]}),[y(e,"@address"),...t]}case"CHAIN_ID":return[y({prim:"chain_id"}),...t];case"DROP":{g({});const r=void 0!==e.args?parseInt(e.args[0].int,10):1;return o(r-1,null),t.slice(r)}case"DIG":{g({});const r=parseInt(e.args[0].int,10);return[o(r,null)[0],...t.slice(0,r),...t.slice(r+1)]}case"DUG":{g({});const r=parseInt(e.args[0].int,10);return[...t.slice(1,r+1),o(0,null)[0],...t.slice(r+1)]}case"NONE":return AX(e.args[0]),[v({prim:"option",args:[e.args[0]]},g({t:1,v:1})),...t];case"LEFT":case"RIGHT":{const r=o(0,null)[0],n=g({f:2,t:1,v:1},{specialFields:!0}),i=c(r),a=[v(r,{t:null,v:null,f:n.f&&n.f.length>0&&"%"!==n.f[0]?"%@"===n.f[0]?i.v?["%"+i.v[0].slice(1)]:void 0:n.f:void 0}),v(e.args[0],{t:null,f:n.f&&n.f.length>1&&"%"!==n.f[1]?n.f:void 0})];return[v({prim:"or",args:"LEFT"===e.prim?a:[a[1],a[0]]},{t:n.t,v:n.v}),...t.slice(1)]}case"NIL":return AX(e.args[0]),[v({prim:"list",args:[e.args[0]]},g({t:1,v:1})),...t];case"UNPACK":return o(0,["bytes"]),AX(e.args[0]),[y({prim:"option",args:[e.args[0]]},"@unpacked"),...t.slice(1)];case"CONTRACT":{const r=o(0,["address"])[0];AX(e.args[0]);const n=g({v:1,f:1}),i=r[LZ];if(void 0!==i){const r=RX(i,null===(s=n.f)||void 0===s?void 0:s[0]);if(null===r)throw new xX(e,t,`${e.prim}: contract has no entrypoint ${r}`);u(r,e.args[0])}return[v({prim:"option",args:[{prim:"contract",args:[e.args[0]]}]},{v:n.v?n.v:S(c(r),"contract")}),...t.slice(1)]}case"CAST":{g({});const r=o(0,null)[0];return AX(e.args[0]),u(e.args[0],r),[e.args[0],...t.slice(1)]}case"IF_NONE":{g({});const n=o(0,["option"])[0],i=t.slice(1);return k(TX(e.args[0],i,r),TX(e.args[1],[v(n.args[0],{t:null,v:S(c(n),"some")}),...i],r))}case"IF_LEFT":{g({});const n=o(0,["or"])[0],i=c(n),a=c(n.args[0]),s=c(n.args[1]),l=t.slice(1);return k(TX(e.args[0],[v(n.args[0],{t:null,v:S(i,a.f?a.f[0].slice(1):"left")}),...l],r),TX(e.args[1],[v(n.args[1],{t:null,v:S(i,s.f?s.f[0].slice(1):"right")}),...l],r))}case"IF_CONS":{g({});const n=o(0,["list"])[0],i=c(n),a=t.slice(1);return k(TX(e.args[0],[v(n.args[0],{t:null,v:S(i,"hd")}),v(n,{t:null,v:S(i,"tl")}),...a],r),TX(e.args[1],a,r))}case"IF":{g({}),o(0,["bool"]);const n=t.slice(1);return k(TX(e.args[0],n,r),TX(e.args[1],n,r))}case"MAP":{const n=o(0,["list","map","option"])[0],i=t.slice(1),a="map"===n.prim?{prim:"pair",args:n.args}:n.args[0],s=TX(e.args[0],[v(a,{t:null,v:S(c(n),"elt")}),...i],r);if("failed"in s){if(!("prim"in s.failed)||"never"!==s.failed.prim)throw new xX(e,t,`${e.prim}: FAIL is not allowed in MAP`);return{failed:s.failed,level:s.level+1}}if(s.length<1)throw new xX(e,t,`${e.prim}: function must return a value`);return l(s.slice(1),i),"list"===n.prim?[y({prim:"list",args:[s[0]]}),...i]:"map"===n.prim?[y({prim:"map",args:[n.args[0],s[0]]}),...i]:[y({prim:"option",args:[s[0]]}),...i]}case"ITER":{g({});const n=o(0,["set","list","map"])[0],i=t.slice(1),a="map"===n.prim?{prim:"pair",args:n.args}:n.args[0],s=TX(e.args[0],[v(a,{t:null,v:S(c(n),"elt")}),...i],r);return"failed"in s?{failed:s.failed,level:s.level+1}:(l(s,i),i)}case"LOOP":{g({}),o(0,["bool"]);const n=t.slice(1),i=TX(e.args[0],n,r);return"failed"in i?{failed:i.failed,level:i.level+1}:(l(i,[{prim:"bool"},...n]),n)}case"LOOP_LEFT":{g({});const n=o(0,["or"])[0],i=t.slice(1),a=TX(e.args[0],[v(n.args[0],{t:null,v:S(c(n),"left")}),...i],r);return"failed"in a?{failed:a.failed,level:a.level+1}:(l(a,[n,...i]),[v(n.args[1],{t:null,v:g({v:1}).v}),...i])}case"DIP":{g({});const n=2===e.args.length?parseInt(e.args[0].int,10):1;o(n-1,null);const i=t.slice(0,n),a=t.slice(n),s=2===e.args.length?TX(e.args[1],a,r):TX(e.args[0],a,r);return"failed"in s?{failed:s.failed,level:s.level+1}:[...i,...s]}case"CREATE_CONTRACT":{const r=g({v:2}),n=o(0,["option"],["mutez"],null);if("key_hash"!==_X(n[0].args[0]))throw new xX(e,t,`${e.prim}: key hash expected: ${_X(n[0].args[0])}`);f(n[2])&&(MX(e.args[0]),kX(CX(e.args[0],"storage").args[0],n[2]));const i=null===(E=r.v)||void 0===E?void 0:E.map((e=>"@"!==e?[e]:void 0));return[v({prim:"operation"},{v:null===i||void 0===i?void 0:i[0]}),v({prim:"address",[LZ]:{prim:"contract",args:[CX(e.args[0],"parameter").args[0]]}},{v:null===i||void 0===i?void 0:i[1]}),...t.slice(3)]}case"PUSH":return AX(e.args[0]),OX(e.args[1],e.args[0],Object.assign(Object.assign({},r),{contract:void 0})),[y(e.args[0]),...t];case"EMPTY_SET":return AX(e.args[0]),d(e.args[0]),[v({prim:"set",args:e.args},g({t:1,v:1})),...t];case"EMPTY_MAP":return AX(e.args[0]),d(e.args[0]),AX(e.args[1]),[v({prim:"map",args:e.args},g({t:1,v:1})),...t];case"EMPTY_BIG_MAP":return AX(e.args[0]),d(e.args[0]),AX(e.args[1]),m(e.args[0]),[v({prim:"big_map",args:e.args},g({t:1,v:1})),...t];case"LAMBDA_REC":case"LAMBDA":{AX(e.args[0]),AX(e.args[1]);const n=[e.args[0]];"LAMBDA_REC"===e.prim&&n.push({prim:"lambda",args:[e.args[0],e.args[1]]});const i=TX(e.args[2],n,Object.assign(Object.assign({},r),{contract:void 0}));if("failed"in i)return{failed:i.failed,level:i.level+1};if(1!==i.length)throw new xX(e,t,`${e.prim}: function must return a value`);return u(e.args[1],i[0]),[y({prim:"lambda",args:[e.args[0],e.args[1]]}),...t]}case"LEVEL":return[y({prim:"nat"},"@level"),...t];case"TOTAL_VOTING_POWER":case"MIN_BLOCK_TIME":return[y({prim:"nat"}),...t];case"VOTING_POWER":return o(0,["key_hash"]),[y({prim:"nat"}),...t.slice(1)];case"TICKET":{const e=o(0,null,["nat"])[0];return d(e),BZ(n,NZ.PtLimaPtL)?[v({prim:"ticket",args:[e]},g({t:1,v:1})),...t.slice(2)]:[y({prim:"option",args:[v({prim:"ticket",args:[e]},g({t:1,v:1}))]}),...t.slice(2)]}case"JOIN_TICKETS":{const r=jY("pair",o(0,["pair"])[0]);if("ticket"!==_X(r.args[0]))throw new xX(e,t,`${e.prim}: ticket expected: ${_X(r.args[0])}`);return u(r.args[0],r.args[1]),[y({prim:"option",args:[v(r.args[0],{t:null})]}),...t.slice(1)]}case"SPLIT_TICKET":{const r=o(0,["ticket"],["pair"]),n=jY("pair",r[1]);if("nat"!==_X(n.args[0]))throw new xX(e,t,`${e.prim}: nat expected: ${_X(n.args[0])}`);return u(n.args[0],n.args[1]),[y({prim:"option",args:[{prim:"pair",args:[v(r[0],{t:null}),v(r[0],{t:null})]}]}),...t.slice(2)]}case"READ_TICKET":{const e=g({v:2}),r=o(0,["ticket"])[0],n=null===(A=e.v)||void 0===A?void 0:A.map((e=>"@"!==e?[e]:void 0));return[v({prim:"pair",args:[{prim:"address"},v(r.args[0],{t:null}),{prim:"nat"}]},{v:null===n||void 0===n?void 0:n[0]}),v(r,{v:null===n||void 0===n?void 0:n[1],t:null}),...t.slice(1)]}case"PAIRING_CHECK":{const r=o(0,["list"])[0].args[0];if(!RY(r))throw new xX(e,t,`${e.prim}: pair expected: ${_X(r)}`);const n=jY("pair",r);if("bls12_381_g1"!==_X(n.args[0]))throw new xX(e,t,`${e.prim}: bls12_381_g1 expected: ${_X(n.args[0])}`);if("bls12_381_g2"!==_X(n.args[1]))throw new xX(e,t,`${e.prim}: bls12_381_g2 expected: ${_X(n.args[1])}`);return[y({prim:"bool"}),...t.slice(1)]}case"SAPLING_EMPTY_STATE":return[v({prim:"sapling_state",args:[e.args[0]]},g({v:1,t:1})),...t];case"SAPLING_VERIFY_UPDATE":{const r=o(0,["sapling_transaction"],["sapling_state"]);if(parseInt(r[0].args[0].int,10)!==parseInt(r[1].args[0].int,10))throw new xX(e,t,`${e.prim}: sapling memo size mismatch: ${r[0].args[0].int} != ${r[1].args[0].int}`);return BZ(n,NZ.PtJakarta)?[y({prim:"option",args:[{prim:"pair",args:[{prim:"int"},v(r[1],{t:null})]}]}),...t.slice(2)]:[y({prim:"option",args:[{prim:"pair",args:[{prim:"bytes"},{prim:"pair",args:[{prim:"int"},v(r[1],{t:null})]}]}]}),...t.slice(2)]}case"OPEN_CHEST":return o(0,["chest_key"],["chest"],["nat"]),[y({prim:"or",args:[{prim:"bytes"},{prim:"bool"}]}),...t.slice(3)];case"VIEW":{const r=o(0,null,["address"]);return p(r[0]),[y({prim:"option",args:[e.args[1]]}),...t.slice(2)]}case"EMIT":{const r=g({f:1,t:1});if(e.args){const n=o(0,null);return u(n[0],e.args[0]),[v({prim:"operation"},r),...t.slice(1)]}return[v({prim:"operation"},r),...t.slice(1)]}default:throw new xY(e,`unexpected instruction: ${e.prim}`)}})(i);if(void 0!==(null===r||void 0===r?void 0:r.traceCallback)){const e={op:i,in:t,out:E};r.traceCallback(e)}return E}function CX(e,t){for(const r of e)if(r.prim===t)return r;throw new xY(e,`missing contract section: ${t}`)}function jX(e){if(Array.isArray(e))for(const t of e)if("prim"in t&&("parameter"===t.prim||"storage"===t.prim||"code"===t.prim))return!0;return!1}function RX(e,t){t=t||"%default";const r=IX(e).find((e=>e[0]===t));return void 0!==r?r[1]:"%default"===t?jX(e)?CX(e,"parameter").args[0]:e:null}function IX(e){if(jX(e)){const t=CX(e,"parameter"),r=IX(t.args[0]),n=OY(t);return n.f?[[n.f[0],t.args[0]],...r]:r}if(function(e){return Array.isArray(e)||"or"===e.prim}(e)){const t=SX(e),r=e=>{const r=OY(t[e]);if("or"===_X(t[e])){const n=IX(t[e]);return r.f?[[r.f[0],t[e]],...n]:n}return r.f?[[r.f[0],t[e]]]:[]};return[...r(0),...r(1)]}return[]}function MX(e,t){const r=(r,n,i,o)=>{AX(r,!0),AX(n);const a=TX(o,[{prim:"pair",args:[Object.assign(Object.assign({},r),{annots:["@parameter"]}),Object.assign(Object.assign({},n),{annots:["@storage"]})]}],Object.assign(Object.assign({},t),{contract:e}));if("failed"in a)return a;try{EX(a,[i])}catch(Ele){throw Ele instanceof xY?new xX(o,a,Ele.message):Ele}return a},n=CX(e,"parameter").args[0],i=CX(e,"storage").args[0],o=r(n,i,{prim:"pair",args:[{prim:"list",args:[{prim:"operation"}]},i]},CX(e,"code").args[0]);for(const a of Object.values(function(e){const t={};for(const r of e)"view"===r.prim&&(t[r.args[0].string]=r);return t}(e)))r(a.args[1],i,a.args[2],a.args[3]);return o}function LX(e,t,r){AX(t),OX(e,t,r||null)}class NX{constructor(e,t){this.contract=e,this.ctx=Object.assign({contract:e},t),this.output=MX(e,this.ctx)}static parse(e,t){const r=new cY(t),n="string"===typeof e?r.parseScript(e):r.parseJSON(e);if(null===n)throw new gY("empty Michelson");if(cX(n))return new NX(n,t)}static parseTypeExpression(e,t){const r=new cY(t),n="string"===typeof e?r.parseScript(e):r.parseJSON(e);if(null===n)throw new vY("empty type expression");if(oX(n))return AX(n),n}static parseDataExpression(e,t){const r=new cY(t),n="string"===typeof e?r.parseScript(e):r.parseJSON(e);if(null===n)throw new yY("empty data expression");if(sX(n))return n;throw void 0}section(e){return CX(this.contract,e)}entryPoints(){return IX(this.contract)}entryPoint(e){return RX(this.contract,e)}assertDataValid(e,t){LX(e,t,this.ctx)}isDataValid(e,t){return function(e,t,r){try{return LX(e,t,r),!0}catch(Zr){return!1}}(e,t,this.ctx)}assertParameterValid(e,t){const r=this.entryPoint(e||void 0);if(null===r)throw new bY(null===e||void 0===e?void 0:e.toString());this.assertDataValid(t,r)}isParameterValid(e,t){try{return this.assertParameterValid(e,t),!0}catch(Zr){return!1}}functionType(e,t){return function(e,t,r){for(const n of t)AX(n);if(void 0!==(null===r||void 0===r?void 0:r.contract))for(const n of["parameter","storage"])AX(CX(r.contract,n).args[0]);return TX(e,t,r||null)}(e,t,this.ctx)}}new NX([{prim:"parameter",args:[{prim:"unit"}]},{prim:"storage",args:[{prim:"unit"}]},{prim:"code",args:[[{prim:"CAR"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PAIR"}]]}]);var DX=r(4872).Buffer;const zX=e=>e.reduce(((e,t)=>e+t.toString(16).padStart(2,"0")),""),BX=(e,t=8)=>e.toString(16).padStart(t,"0");var UX;!function(e){e.SECRET="secret",e.RAW="raw",e.TZ1="tz1",e.BRANCH="branch",e.ZARITH="zarith",e.PUBLIC_KEY="public_key",e.PKH="pkh",e.DELEGATE="delegate",e.SCRIPT="script",e.BALLOT_STATEMENT="ballotStmt",e.PROPOSAL="proposal",e.PROPOSAL_ARR="proposalArr",e.INT32="int32",e.INT16="int16",e.PARAMETERS="parameters",e.ADDRESS="address",e.SMART_CONTRACT_ADDRESS="smart_contract_address",e.SMART_ROLLUP_ADDRESS="smart_rollup_address",e.SMART_ROLLUP_COMMITMENT_HASH="smart_rollup_commitment_hash",e.VALUE="value",e.PADDED_BYTES="padded_bytes",e.SMART_ROLLUP_MESSAGE="smart_rollup_message",e.MANAGER="manager",e.BLOCK_PAYLOAD_HASH="blockPayloadHash",e.ENTRYPOINT="entrypoint",e.OPERATION="operation",e.OP_ACTIVATE_ACCOUNT="activate_account",e.OP_DELEGATION="delegation",e.OP_TRANSACTION="transaction",e.OP_ORIGINATION="origination",e.OP_BALLOT="ballot",e.OP_FAILING_NOOP="failing_noop",e.OP_ENDORSEMENT="endorsement",e.OP_SEED_NONCE_REVELATION="seed_nonce_revelation",e.OP_REVEAL="reveal",e.OP_PROPOSALS="proposals",e.OP_REGISTER_GLOBAL_CONSTANT="register_global_constant",e.OP_TRANSFER_TICKET="transfer_ticket",e.OP_TX_ROLLUP_ORIGINATION="tx_rollup_origination",e.OP_TX_ROLLUP_SUBMIT_BATCH="tx_rollup_submit_batch",e.BURN_LIMIT="burn_limit",e.TX_ROLLUP_ORIGINATION_PARAM="tx_rollup_origination_param",e.TX_ROLLUP_ID="tx_rollup_id",e.TX_ROLLUP_BATCH_CONTENT="tx_rollup_batch_content",e.OP_INCREASE_PAID_STORAGE="increase_paid_storage",e.OP_UPDATE_CONSENSUS_KEY="update_consensus_key",e.OP_DRAIN_DELEGATE="drain_delegate",e.DEPOSITS_LIMIT="deposits_limit",e.OP_SET_DEPOSITS_LIMIT="set_deposits_limit",e.OP_SMART_ROLLUP_ORIGINATE="smart_rollup_originate",e.PVM_KIND="pvm_kind",e.OP_SMART_ROLLUP_ADD_MESSAGES="smart_rollup_add_messages",e.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE="smart_rollup_execute_outbox_message"}(UX||(UX={}));const FX={"00":"parameter","01":"storage","02":"code","03":"False","04":"Elt","05":"Left","06":"None","07":"Pair","08":"Right","09":"Some","0a":"True","0b":"Unit","0c":"PACK","0d":"UNPACK","0e":"BLAKE2B","0f":"SHA256",10:"SHA512",11:"ABS",12:"ADD",13:"AMOUNT",14:"AND",15:"BALANCE",16:"CAR",17:"CDR",18:"CHECK_SIGNATURE",19:"COMPARE","1a":"CONCAT","1b":"CONS","1c":"CREATE_ACCOUNT","1d":"CREATE_CONTRACT","1e":"IMPLICIT_ACCOUNT","1f":"DIP",20:"DROP",21:"DUP",22:"EDIV",23:"EMPTY_MAP",24:"EMPTY_SET",25:"EQ",26:"EXEC",27:"FAILWITH",28:"GE",29:"GET","2a":"GT","2b":"HASH_KEY","2c":"IF","2d":"IF_CONS","2e":"IF_LEFT","2f":"IF_NONE",30:"INT",31:"LAMBDA",32:"LE",33:"LEFT",34:"LOOP",35:"LSL",36:"LSR",37:"LT",38:"MAP",39:"MEM","3a":"MUL","3b":"NEG","3c":"NEQ","3d":"NIL","3e":"NONE","3f":"NOT",40:"NOW",41:"OR",42:"PAIR",43:"PUSH",44:"RIGHT",45:"SIZE",46:"SOME",47:"SOURCE",48:"SENDER",49:"SELF","4a":"STEPS_TO_QUOTA","4b":"SUB","4c":"SWAP","4d":"TRANSFER_TOKENS","4e":"SET_DELEGATE","4f":"UNIT",50:"UPDATE",51:"XOR",52:"ITER",53:"LOOP_LEFT",54:"ADDRESS",55:"CONTRACT",56:"ISNAT",57:"CAST",58:"RENAME",59:"bool","5a":"contract","5b":"int","5c":"key","5d":"key_hash","5e":"lambda","5f":"list",60:"map",61:"big_map",62:"nat",63:"option",64:"or",65:"pair",66:"set",67:"signature",68:"string",69:"bytes","6a":"mutez","6b":"timestamp","6c":"unit","6d":"operation","6e":"address","6f":"SLICE",70:"DIG",71:"DUG",72:"EMPTY_BIG_MAP",73:"APPLY",74:"chain_id",75:"CHAIN_ID",76:"LEVEL",77:"SELF_ADDRESS",78:"never",79:"NEVER","7a":"UNPAIR","7b":"VOTING_POWER","7c":"TOTAL_VOTING_POWER","7d":"KECCAK","7e":"SHA3","7f":"PAIRING_CHECK",80:"bls12_381_g1",81:"bls12_381_g2",82:"bls12_381_fr",83:"sapling_state",84:"sapling_transaction_deprecated",85:"SAPLING_EMPTY_STATE",86:"SAPLING_VERIFY_UPDATE",87:"ticket",88:"TICKET_DEPRECATED",89:"READ_TICKET","8a":"SPLIT_TICKET","8b":"JOIN_TICKETS","8c":"GET_AND_UPDATE","8d":"chest","8e":"chest_key","8f":"OPEN_CHEST",90:"VIEW",91:"view",92:"constant",93:"SUB_MUTEZ",94:"tx_rollup_l2_address",95:"MIN_BLOCK_TIME",96:"sapling_transaction",97:"EMIT",98:"Lambda_rec",99:"LAMBDA_REC","9a":"TICKET","9b":"BYTES","9c":"NAT"},$X=(()=>{const e={};return Object.keys(FX).forEach((t=>{e[FX[t]]=t})),e})(),HX={4:"activate_account",107:"reveal",110:"delegation",108:"transaction",109:"origination",6:"ballot",21:"endorsement",1:"seed_nonce_revelation",5:"proposals",111:"register_global_constant",150:"tx_rollup_origination",151:"tx_rollup_submit_batch",158:"transfer_ticket",112:"set_deposits_limit",113:"increase_paid_storage",114:"update_consensus_key",9:"drain_delegate",200:"smart_rollup_originate",201:"smart_rollup_add_messages",206:"smart_rollup_execute_outbox_message",17:"failing_noop"},VX=(()=>{const e={};return Object.keys(HX).forEach((t=>{const r="string"===typeof t?parseInt(t,10):t;e[HX[r]]=BX(r,2)})),e})(),qX={"00":"default","01":"root","02":"do","03":"set_delegate","04":"remove_delegate","05":"deposit"},KX=(()=>{const e={};return Object.keys(qX).forEach((t=>{e[qX[t]]=t})),e})();class WX extends Qa{constructor(e,t){super(),this.operation=e,this.errorDetail=t,this.name="InvalidOperationSchemaError",this.message="Invalid operation content recevied",t&&(this.message+=` ${t}.`)}}class GX extends Qa{constructor(e){super(),this.entrypoint=e,this.name="OversizedEntryPointError",this.message=`Invalid entrypoint length "${e.length}", maximum length is "31".`}}class ZX extends Qa{constructor(e){super(),this.ballotValue=e,this.name="InvalidBallotValueError",this.message=`Invalid ballot value "${e}" expecting one of the following: "yay", "nay", "pass".`}}class YX extends Qa{constructor(e){super(),this.ballotValue=e,this.name="DecodeBallotValueError",this.message=`Invalid ballot value "${e}", cannot be decoded.`}}class XX extends Qa{constructor(e){super(),this.value=e,this.name="UnexpectedMichelsonValueError",this.message=`Invalid Michelson value "${e}", unalbe to encode.`}}class JX extends Qa{constructor(e){super(),this.message=e,this.name="OperationDecodingError"}}class QX extends Qa{constructor(e){super(),this.message=e,this.name="OperationEncodingError"}}class eJ extends Qa{constructor(e){super(),this.op=e,this.name="UnsupportedOperationError",this.message=`Unsupported operation "${e}", can submit an issue on our github for feature request.`}}class tJ extends Qa{constructor(e){super(),this.pvm=e,this.name="UnsupportedPvmKindError",this.message=`Invalid Pvm kind "${e}" expecting either "arith" or "wasm_2_0_0".`}}class rJ extends Qa{constructor(e){super(),this.pvm=e,this.name="DecodePvmKindError",this.message=`Invalid Pvm kind "${e}", cannot be decoded.`}}class nJ extends Qa{constructor(e,t){super(),this.address=e,this.errorDetail=t,this.name="InvalidSmartRollupAddress",this.message=`Invalid smart rollup address "${e}"`,t&&(this.message+=` ${t}.`)}}class iJ extends Qa{constructor(e,t){super(),this.hash=e,this.errorDetail=t,this.name="InvalidSmartRollupCommitmentHashError",this.message=`Invalid smart rollup commitment hash "${e}"`,t&&(this.message+=` ${t}.`)}}class oJ{static fromHexString(e){const t=e.toLowerCase();if(/^(([a-f]|\d){2})*$/.test(t)){const e=new Uint8Array((t.match(/([a-z]|\d){2}/g)||[]).map((e=>parseInt(e,16))));return new oJ(e)}throw new cs(t)}constructor(e,t=0){this.arr=e,this.offset=t}consume(e){const t=this.arr.subarray(this.offset,this.offset+e);return this.offset+=e,t}get(e){return this.arr[this.offset+e]}length(){return this.arr.length-this.offset}slice(e,t){return new oJ(this.arr.slice(e,t))}}const aJ=e=>{if(Array.isArray(e)){const t=e.map((e=>aJ(e))).join(""),r=t.length/2;return`02${BX(r)}${t}`}if((e=>"prim"in e)(e))return mJ(e);if((e=>"bytes"in e&&"string"===typeof e.bytes)(e))return lJ(e);if((e=>"string"in e&&"string"===typeof e.string)(e))return dJ(e);if((e=>"int"in e&&"string"===typeof e.int)(e))return fJ(e);throw new XX(JSON.stringify(e))},sJ=e=>{const t=e.consume(1);switch(t[0]){case 10:return uJ(e);case 1:return hJ(e);case 0:return pJ(e);case 2:{const t=new oJ(cJ(e)),r=[];for(;t.length()>0;)r.push(sJ(t));return r}default:return gJ(e,t)}},cJ=(e,t=4)=>{const r=e.consume(t),n=parseInt(DX.from(r).toString("hex"),16);return e.consume(n)},lJ=e=>{if(!/^([A-Fa-f0-9]{2})*$/.test(e.bytes))throw new cs(e.bytes);const t=e.bytes.length/2;return`0a${BX(t)}${e.bytes}`},uJ=e=>{const t=cJ(e);return{bytes:DX.from(t).toString("hex")}},dJ=e=>{const t=DX.from(e.string,"utf8").toString("hex"),r=t.length/2;return`01${BX(r)}${t}`},hJ=e=>{const t=cJ(e);return{string:DX.from(t).toString("utf8")}},fJ=({int:e})=>{const t=new Bs(e,10),r="-"===t.toString(2)[0]?"1":"0",n=t.toString(2).replace(/-/g,""),i=n.length<=6?6:(n.length-6)%7?n.length+7-(n.length-6)%7:n.length,o=n.padStart(i,"0").match(/\d{6,7}/g).reverse();o[0]=r+o[0];const a=o.map(((e,t)=>parseInt((t===o.length-1?"0":"1")+e,2).toString(16).padStart(2,"0")));return`00${a.join("")}`},pJ=e=>{let t=e.consume(1)[0];const r=[];for(;128&t;)r.push(t),t=e.consume(1)[0];r.push(t);const n=!!(64&r[0]);r[0]=127&r[0];const i=r.map(((e,t)=>e.toString(2).slice(0===t?-6:-7).padStart(0===t?6:7,"0"))).reverse();let o=new Bs(i.join(""),2);return n&&(o=o.times(-1)),{int:o.toFixed()}},mJ=e=>{const t=+Array.isArray(e.annots),r=Array.isArray(e.args)?e.args.length:0,n=BX(Math.min(2*r+t+3,9),2),i=$X[e.prim];let o=(e.args||[]).map((e=>aJ(e))).join("");const a=Array.isArray(e.annots)?bJ(e.annots):"";return"LAMBDA"!==e.prim&&"LAMBDA_REC"!==e.prim||!r||(o=BX(o.length/2)+o+BX(0)),("pair"===e.prim||"Pair"===e.prim)&&r>2&&(o=""===a?BX(o.length/2)+o+BX(0):BX(o.length/2)+o),"view"===e.prim&&e.args&&(o=BX(o.length/2)+o+BX(0)),`${n}${i}${o}${a}`},gJ=(e,t)=>{const r=(t[0]-3)%2===1;let n=Math.floor((t[0]-3)/2);const i=e.consume(1)[0].toString(16).padStart(2,"0"),o={prim:FX[i]};if("LAMBDA"!==FX[i]&&"LAMBDA_REC"!==FX[i]||e.consume(4),"view"===FX[i])return 0!=n?vJ(e,o):o;let a,s;("pair"===FX[i]||"Pair"===FX[i])&&n>2&&(a=yJ(e),n=0,s=wJ(e));const c=new Array(n).fill(0).map((()=>sJ(e)));return"LAMBDA"!==FX[i]&&"LAMBDA_REC"!==FX[i]||e.consume(4),a?o.args=a:c.length&&(o.args=c),s&&""!==s[0]?o.annots=s:r&&(o.annots=wJ(e)),o},vJ=(e,t)=>(e.consume(4),t.args=new Array(4).fill(0).map((()=>sJ(e))),e.consume(4),t),yJ=e=>{const t=new oJ(cJ(e)),r=[];for(;t.length()>0;)r.push(sJ(t));return r},bJ=e=>{const t=e.map((e=>DX.from(e,"utf8").toString("hex"))).join("20"),r=t.length/2;return`${BX(r)}${t}`},wJ=e=>{const t=e.consume(4),r=parseInt(DX.from(t).toString("hex"),16),n=e.consume(r);return DX.from(n).toString("hex").split("20").map((e=>DX.from(e,"hex").toString("utf8")))},xJ=e=>t=>kc(DX.from(yc(t,Ks[e]))),_J=e=>t=>vc(t.consume(Ws[e]),Ks[e]),SJ=_J(Fs.TZ1),kJ=_J(Fs.B),EJ=e=>{const t=e.consume(1);return 0===t[0]?_J(Fs.TZ1)(e):1===t[0]?_J(Fs.TZ2)(e):2===t[0]?_J(Fs.TZ3)(e):void 0},AJ=xJ(Fs.B),PJ=xJ(Fs.TZ1),OJ=e=>e?"ff":"00",TJ=e=>xJ(Fs.P)(e),CJ=e=>_J(Fs.P)(e),jJ=e=>{switch(e.substring(0,3)){case Fs.TZ1:return"00"+xJ(Fs.TZ1)(e);case Fs.TZ2:return"01"+xJ(Fs.TZ2)(e);case Fs.TZ3:return"02"+xJ(Fs.TZ3)(e);case Fs.TZ4:return"03"+xJ(Fs.TZ4)(e);default:throw new ms(e,hc(Zs.NO_PREFIX_MATCHED)+` expecting one for the following "${Fs.TZ1}", "${Fs.TZ2}", "${Fs.TZ3}" or "${Fs.TZ4}".`)}},RJ=e=>{const t=[];let r=new Us(e,10);if(r.isNaN())throw new TypeError(`Invalid zarith number ${e}`);for(;;){if(r.lt(128)){r.lt(16)&&t.push("0"),t.push(r.toString(16));break}{let e=r.mod(128);r=r.minus(e),r=r.dividedBy(128),e=e.plus(128),t.push(e.toString(16))}}return t.join("")},IJ=e=>{let t=0;for(;t=0;n-=1){const t=127&e.get(n);r=r.multipliedBy(128),r=r.plus(t)}return e.consume(t+1),new Us(r).toString()},MJ=xJ(Fs.VH),LJ=_J(Fs.VH),NJ=xJ(Fs.TXR1),DJ=_J(Fs.TXR1),zJ={branch:UX.BRANCH,contents:[UX.OPERATION]},BJ={pkh:UX.TZ1,secret:UX.SECRET},UJ={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,public_key:UX.PUBLIC_KEY},FJ={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,delegate:UX.DELEGATE},$J={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,amount:UX.ZARITH,destination:UX.ADDRESS,parameters:UX.PARAMETERS},HJ={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,balance:UX.ZARITH,delegate:UX.DELEGATE,script:UX.SCRIPT},VJ={source:UX.PKH,period:UX.INT32,proposal:UX.PROPOSAL,ballot:UX.BALLOT_STATEMENT},qJ={slot:UX.INT16,level:UX.INT32,round:UX.INT32,block_payload_hash:UX.BLOCK_PAYLOAD_HASH},KJ={level:UX.INT32,nonce:UX.RAW},WJ={source:UX.PKH,period:UX.INT32,proposals:UX.PROPOSAL_ARR},GJ={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,value:UX.VALUE},ZJ={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,ticket_contents:UX.VALUE,ticket_ty:UX.VALUE,ticket_ticketer:UX.ADDRESS,ticket_amount:UX.ZARITH,destination:UX.ADDRESS,entrypoint:UX.ENTRYPOINT},YJ={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,tx_rollup_origination:UX.TX_ROLLUP_ORIGINATION_PARAM},XJ={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,rollup:UX.TX_ROLLUP_ID,content:UX.TX_ROLLUP_BATCH_CONTENT,burn_limit:UX.BURN_LIMIT},JJ={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,amount:UX.ZARITH,destination:UX.SMART_CONTRACT_ADDRESS},QJ={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,pk:UX.PUBLIC_KEY},eQ={consensus_key:UX.PKH,delegate:UX.PKH,destination:UX.PKH},tQ={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,limit:UX.DEPOSITS_LIMIT},rQ={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,pvm_kind:UX.PVM_KIND,kernel:UX.PADDED_BYTES,origination_proof:UX.PADDED_BYTES,parameters_ty:UX.VALUE},nQ={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,message:UX.SMART_ROLLUP_MESSAGE},iQ={source:UX.PKH,fee:UX.ZARITH,counter:UX.ZARITH,gas_limit:UX.ZARITH,storage_limit:UX.ZARITH,rollup:UX.SMART_ROLLUP_ADDRESS,cemented_commitment:UX.SMART_ROLLUP_COMMITMENT_HASH,output_proof:UX.PADDED_BYTES},oQ={arbitrary:UX.PADDED_BYTES},aQ=e=>t=>r=>Object.keys(t).reduce(((n,i)=>{const o=t[i];if(r&&Array.isArray(o)){const t=e[o[0]],a=r[i];if(!Array.isArray(a))throw new QX(`Invalid operation value "${JSON.stringify(a)}" of key "${i}, expected value to be Array.`);return n+a.reduce(((e,r)=>e+t(r)),"")}return n+(0,e[o])(r[i])}),""),sQ=e=>t=>r=>Object.keys(t).reduce(((n,i)=>{const o=t[i];if(Array.isArray(o)){const t=e[o[0]],a=[],s=r.length();for(;r.length()>0;)if(a.push(t(r)),s===r.length())throw new JX("Unable to decode value");return Object.assign(Object.assign({},n),{[i]:a})}{const t=(0,e[o])(r);return"undefined"!==typeof t?Object.assign(Object.assign({},n),{[i]:t}):Object.assign({},n)}}),{}),cQ={[UX.SECRET]:e=>zX(e.consume(20)),[UX.RAW]:e=>zX(e.consume(32)),[UX.TZ1]:SJ,[UX.BRANCH]:kJ,[UX.ZARITH]:IJ,[UX.PUBLIC_KEY]:e=>{switch(e.consume(1)[0]){case 0:return _J(Fs.EDPK)(e);case 1:return _J(Fs.SPPK)(e);case 2:return _J(Fs.P2PK)(e);default:throw new hs(e.toString(),hc(Zs.NO_PREFIX_MATCHED))}},[UX.PKH]:EJ,[UX.DELEGATE]:e=>{const t=(e=>255===e.consume(1)[0])(e);if(t)return EJ(e)},[UX.INT32]:e=>{const t=e.consume(4);let r=0;for(let n=0;n{const t=cJ(e),r=cJ(e);return{code:sJ(new oJ(t)),storage:sJ(new oJ(r))}},[UX.BALLOT_STATEMENT]:e=>{const t=e.consume(1);switch(t[0]){case 0:return"yay";case 1:return"nay";case 2:return"pass";default:throw new YX(t[0].toString())}},[UX.PROPOSAL]:CJ,[UX.PROPOSAL_ARR]:e=>{const t=[];for(e.consume(4);e.length()>0;)t.push(CJ(e));return t},[UX.PARAMETERS]:e=>{if(0!==e.consume(1)[0]){const t=(e=>{const t=BX(e.consume(1)[0],2);if(t in qX)return qX[t];{const t=cJ(e,1),r=DX.from(t).toString("utf8");if(r.length>31)throw new GX(r);return r}})(e),r=cJ(e);return{entrypoint:t,value:sJ(new oJ(r))}}},[UX.ADDRESS]:e=>{switch(e.consume(1)[0]){case 0:return EJ(e);case 1:{const t=_J(Fs.KT1)(e);return e.consume(1),t}default:throw new is(e.toString(),": Unable to decode.")}},[UX.SMART_ROLLUP_ADDRESS]:e=>{const t=_J(Fs.SR1)(e);if(t.substring(0,3)!==Fs.SR1)throw new nJ(t,hc(Zs.NO_PREFIX_MATCHED)+` expecting prefix '${Fs.SR1}'.`);return t},[UX.SMART_CONTRACT_ADDRESS]:e=>{if(1===e.consume(1)[0]){const t=_J(Fs.KT1)(e);return e.consume(1),t}throw new fs(e.toString(),hc(Zs.NO_PREFIX_MATCHED))},[UX.SMART_ROLLUP_COMMITMENT_HASH]:e=>{const t=_J(Fs.SRC1)(e);if(t.substring(0,4)!==Fs.SRC1)throw new iJ(t,hc(Zs.NO_PREFIX_MATCHED)+` expecting prefix '${Fs.SRC1}'`);return t},[UX.VALUE]:e=>{const t=cJ(e);return sJ(new oJ(t))},[UX.INT16]:e=>{const t=e.consume(2);let r=0;for(let n=0;n{const t=cJ(e);return DX.from(t).toString("utf8")},[UX.TX_ROLLUP_ORIGINATION_PARAM]:e=>({}),[UX.TX_ROLLUP_ID]:DJ,[UX.TX_ROLLUP_BATCH_CONTENT]:e=>{const t=cJ(e);return DX.from(t).toString("hex")},[UX.BURN_LIMIT]:e=>{const t=e.consume(1);if("00"!==DX.from(t).toString("hex"))return IJ(e)},[UX.DEPOSITS_LIMIT]:e=>{const t=e.consume(1);if("00"!==DX.from(t).toString("hex"))return IJ(e)},[UX.PVM_KIND]:e=>{const t=e.consume(1);switch(t[0]){case 0:return"arith";case 1:return"wasm_2_0_0";default:throw new rJ(t[0].toString())}},[UX.PADDED_BYTES]:e=>{const t=cJ(e);return DX.from(t).toString("hex")},[UX.SMART_ROLLUP_MESSAGE]:e=>{const t=cJ(e),r=((e,t=4)=>{const r=[];let n=e;for(;n.length();){const e=n.consume(t),i=parseInt(DX.from(e).toString("hex"),16);r.push(n.consume(i)),n=n.slice(i+t)}return r})(new oJ(t));return r.map((e=>DX.from(e).toString("hex")))}};cQ[UX.OPERATION]=(e=>t=>{const r=t.consume(1),n=HX[r[0]];if(void 0===n)throw new eJ(r[0].toString());const i=e[n](t);if("object"!==typeof i)throw new JX("Invalid operation, cannot be decoded.");return Object.assign({kind:n},i)})(cQ),cQ[UX.OP_ACTIVATE_ACCOUNT]=e=>sQ(cQ)(BJ)(e),cQ[UX.OP_FAILING_NOOP]=e=>sQ(cQ)(oQ)(e),cQ[UX.OP_DELEGATION]=e=>sQ(cQ)(FJ)(e),cQ[UX.OP_TRANSACTION]=e=>sQ(cQ)($J)(e),cQ[UX.OP_ORIGINATION]=e=>sQ(cQ)(HJ)(e),cQ[UX.OP_BALLOT]=e=>sQ(cQ)(VJ)(e),cQ[UX.OP_ENDORSEMENT]=e=>sQ(cQ)(qJ)(e),cQ[UX.OP_SEED_NONCE_REVELATION]=e=>sQ(cQ)(KJ)(e),cQ[UX.OP_PROPOSALS]=e=>sQ(cQ)(WJ)(e),cQ[UX.OP_REVEAL]=e=>sQ(cQ)(UJ)(e),cQ[UX.OP_REGISTER_GLOBAL_CONSTANT]=e=>sQ(cQ)(GJ)(e),cQ[UX.OP_TRANSFER_TICKET]=e=>sQ(cQ)(ZJ)(e),cQ[UX.OP_TX_ROLLUP_ORIGINATION]=e=>sQ(cQ)(YJ)(e),cQ[UX.OP_TX_ROLLUP_SUBMIT_BATCH]=e=>sQ(cQ)(XJ)(e),cQ[UX.OP_INCREASE_PAID_STORAGE]=e=>sQ(cQ)(JJ)(e),cQ[UX.OP_UPDATE_CONSENSUS_KEY]=e=>sQ(cQ)(QJ)(e),cQ[UX.OP_DRAIN_DELEGATE]=e=>sQ(cQ)(eQ)(e),cQ[UX.OP_SMART_ROLLUP_ORIGINATE]=e=>sQ(cQ)(rQ)(e),cQ[UX.OP_SMART_ROLLUP_ADD_MESSAGES]=e=>sQ(cQ)(nQ)(e),cQ[UX.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE]=e=>sQ(cQ)(iQ)(e),cQ[UX.MANAGER]=sQ(cQ)(zJ),cQ[UX.OP_SET_DEPOSITS_LIMIT]=e=>sQ(cQ)(tQ)(e);const lQ={[UX.SECRET]:e=>e,[UX.RAW]:e=>e,[UX.TZ1]:PJ,[UX.BRANCH]:AJ,[UX.ZARITH]:RJ,[UX.PUBLIC_KEY]:e=>{switch(e.substring(0,4)){case Fs.EDPK:return"00"+xJ(Fs.EDPK)(e);case Fs.SPPK:return"01"+xJ(Fs.SPPK)(e);case Fs.P2PK:return"02"+xJ(Fs.P2PK)(e);default:throw new hs(e,hc(Zs.NO_PREFIX_MATCHED)+` expecting one of the following '${Fs.EDPK}', '${Fs.SPPK}', '${Fs.P2PK}' or '${Fs.BLPK}'.`)}},[UX.PKH]:jJ,[UX.DELEGATE]:e=>e?OJ(!0)+jJ(e):OJ(!1),[UX.SCRIPT]:e=>{const t=aJ(e.code),r=aJ(e.storage);return`${BX(t.length/2,8)}${t}${BX(r.length/2,8)}${r}`},[UX.BALLOT_STATEMENT]:e=>{switch(e){case"yay":return"00";case"nay":return"01";case"pass":return"02";default:throw new ZX(e)}},[UX.PROPOSAL]:TJ,[UX.PROPOSAL_ARR]:e=>BX(32*e.length)+e.map((e=>TJ(e))).join(""),[UX.INT32]:e=>{const t=parseInt(String(e),10),r=[];for(let n=0;n<4;n++){const e=8*(4-(n+1));r.push((t&255<>e)}return DX.from(r).toString("hex")},[UX.PARAMETERS]:e=>{if(!e||"default"===e.entrypoint&&"prim"in e.value&&"Unit"===e.value.prim)return"00";const t=(e=>{if(e in KX)return`${KX[e]}`;if(e.length>31)throw new GX(e);return`ff${aJ({string:e}).slice(8)}`})(e.entrypoint),r=aJ(e.value);return`ff${t}${(r.length/2).toString(16).padStart(8,"0")}${r}`},[UX.ADDRESS]:e=>{switch(e.substring(0,3)){case Fs.TZ1:case Fs.TZ2:case Fs.TZ3:case Fs.TZ4:return"00"+jJ(e);case Fs.KT1:return"01"+xJ(Fs.KT1)(e)+"00";default:throw new is(e,hc(Zs.NO_PREFIX_MATCHED)+` expecting one of the following prefix '${Fs.TZ1}', ${Fs.TZ2}', '${Fs.TZ3}', '${Fs.TZ4}' or '${Fs.KT1}'.`)}},[UX.SMART_ROLLUP_ADDRESS]:e=>{if(e.substring(0,3)!==Fs.SR1)throw new nJ(e,hc(Zs.NO_PREFIX_MATCHED)+` expecting prefix '${Fs.SR1}'.`);return xJ(Fs.SR1)(e)},[UX.SMART_CONTRACT_ADDRESS]:e=>{if(e.substring(0,3)===Fs.KT1)return"01"+xJ(Fs.KT1)(e)+"00";throw new fs(e,hc(Zs.NO_PREFIX_MATCHED)+` expecting prefix '${Fs.KT1}'.`)},[UX.SMART_ROLLUP_COMMITMENT_HASH]:e=>{if(e.substring(0,4)===Fs.SRC1)return xJ(Fs.SRC1)(e);throw new iJ(e,hc(Zs.NO_PREFIX_MATCHED)+` expecting prefix '${Fs.SRC1}'`)},[UX.VALUE]:e=>{const t=aJ(e);return`${BX(t.length/2)}${t}`},[UX.INT16]:e=>{const t=parseInt(String(e),10),r=[];for(let n=0;n<2;n++){const e=8*(2-(n+1));r.push((t&255<>e)}return DX.from(r).toString("hex")},[UX.BLOCK_PAYLOAD_HASH]:MJ,[UX.ENTRYPOINT]:e=>`${aJ({string:e}).slice(2)}`,[UX.TX_ROLLUP_ORIGINATION_PARAM]:e=>"",[UX.TX_ROLLUP_ID]:NJ,[UX.TX_ROLLUP_BATCH_CONTENT]:e=>`${BX(e.length/2)}${e}`,[UX.BURN_LIMIT]:e=>e?`ff${RJ(e)}`:"00",[UX.DEPOSITS_LIMIT]:e=>e?`ff${RJ(e)}`:"00",[UX.PVM_KIND]:e=>{switch(e){case"arith":return"00";case"wasm_2_0_0":return"01";default:throw new tJ(e)}},[UX.PADDED_BYTES]:(e,t=8)=>`${BX(e.length/2,t)}${e}`,[UX.SMART_ROLLUP_MESSAGE]:e=>{const t=e.reduce(((e,t)=>e+`${BX(t.length/2)}${t}`),"");return`${BX(t.length/2)}${t}`}};lQ[UX.OPERATION]=(e=>t=>{if(!(t.kind in e)||!(t.kind in VX))throw new vs(t.kind);return VX[t.kind]+e[t.kind](t)})(lQ),lQ[UX.OP_ACTIVATE_ACCOUNT]=e=>aQ(lQ)(BJ)(e),lQ[UX.OP_DELEGATION]=e=>aQ(lQ)(FJ)(e),lQ[UX.OP_TRANSACTION]=e=>aQ(lQ)($J)(e),lQ[UX.OP_ORIGINATION]=e=>aQ(lQ)(HJ)(e),lQ[UX.OP_BALLOT]=e=>aQ(lQ)(VJ)(e),lQ[UX.OP_ENDORSEMENT]=e=>aQ(lQ)(qJ)(e),lQ[UX.OP_SEED_NONCE_REVELATION]=e=>aQ(lQ)(KJ)(e),lQ[UX.OP_PROPOSALS]=e=>aQ(lQ)(WJ)(e),lQ[UX.OP_REVEAL]=e=>aQ(lQ)(UJ)(e),lQ[UX.OP_REGISTER_GLOBAL_CONSTANT]=e=>aQ(lQ)(GJ)(e),lQ[UX.OP_TRANSFER_TICKET]=e=>aQ(lQ)(ZJ)(e),lQ[UX.OP_TX_ROLLUP_ORIGINATION]=e=>aQ(lQ)(YJ)(e),lQ[UX.OP_TX_ROLLUP_SUBMIT_BATCH]=e=>aQ(lQ)(XJ)(e),lQ[UX.OP_INCREASE_PAID_STORAGE]=e=>aQ(lQ)(JJ)(e),lQ[UX.OP_UPDATE_CONSENSUS_KEY]=e=>aQ(lQ)(QJ)(e),lQ[UX.OP_DRAIN_DELEGATE]=e=>aQ(lQ)(eQ)(e),lQ[UX.OP_SMART_ROLLUP_ORIGINATE]=e=>aQ(lQ)(rQ)(e),lQ[UX.OP_SMART_ROLLUP_ADD_MESSAGES]=e=>aQ(lQ)(nQ)(e),lQ[UX.OP_SMART_ROLLUP_EXECUTE_OUTBOX_MESSAGE]=e=>aQ(lQ)(iQ)(e),lQ[UX.MANAGER]=aQ(lQ)(zJ),lQ[UX.OP_SET_DEPOSITS_LIMIT]=e=>aQ(lQ)(tQ)(e),lQ[UX.OP_FAILING_NOOP]=e=>aQ(lQ)(oQ)(e);const uQ={activate_account:BJ,reveal:UJ,delegation:FJ,transaction:$J,origination:HJ,ballot:VJ,endorsement:qJ,seed_nonce_revelation:KJ,proposals:WJ,register_global_constant:GJ,transfer_ticket:ZJ,tx_rollup_origination:YJ,tx_rollup_submit_batch:XJ,increase_paid_storage:JJ,update_consensus_key:QJ,drain_delegate:eQ,set_deposits_limit:tQ,smart_rollup_originate:rQ,smart_rollup_add_messages:nQ,smart_rollup_execute_outbox_message:iQ,failing_noop:oQ},dQ=e=>{const t=e.kind,r=Object.keys(e),n=(i="kind",r.filter((e=>e!==i)));var i;const o=Object.keys(uQ[t]);return a=n,o.filter((e=>!a.includes(e)));var a};var hQ;!function(e){e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(hQ||(hQ={}));const fQ=hQ.PtMumbai2;class pQ{constructor(e=fQ){var t;this.protocolHash=e,this.codec=(t=UX.MANAGER,this.protocolHash,{encoder:lQ[t],decoder:e=>{const r=oJ.fromHexString(e);return cQ[t](r)}})}forge(e){const t=function(e){return Xs(e,nc)}(e.branch);if(t!==Zs.VALID)throw new os(e.branch,hc(t));for(const i of e.contents){if(r=i.kind,!Object.keys(uQ).includes(r))throw new vs(i.kind);const e=dQ(i);if(1===e.length){if("delegation"===i.kind&&"delegate"===e[0])continue;if("origination"===i.kind&&"delegate"===e[0])continue;if("transaction"===i.kind&&"parameters"===e[0])continue;if("set_deposits_limit"===i.kind&&"limit"===e[0])continue;if("tx_rollup_submit_batch"===i.kind&&"burn_limit"===e[0])continue;throw new WX(i,`missing properties "${e.join(", ")}"`)}if(e.length>1)throw new WX(i,`missing properties "${e.join(", ")}"`)}var r;const n=this.codec.encoder(e).toLowerCase();return Promise.resolve(n)}parse(e){return Promise.resolve(this.codec.decoder(e))}}new pQ;function mQ(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"===typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i(e.on("data",(e=>{t.next(e)})),e.on("error",(e=>{t.error(e)})),e.on("close",(()=>{t.complete()})),()=>{e.close()})))}const SQ=10600,kQ=10600,EQ=10600,AQ=1e3,PQ=1e3,OQ=2e3,TQ=2e3,CQ=1257,jQ=1e4,RQ=1e4,IQ=374,MQ=0,LQ=257,NQ=257,DQ=0;var zQ;!function(e){e.Pt24m4xi="Pt24m4xiPbLDhVgVfABUjirbmda3yohdN82Sp9FeuAXJ4eV9otd",e.PsBABY5H="PsBABY5HQTSkA4297zNHfsZNKtxULfL18y95qb3m53QJiXGmrbU",e.PsBabyM1="PsBabyM1eUXZseaJdmXFApDSBqj8YBfwELoxZHHW77EMcAbbwAS",e.PsCARTHA="PsCARTHAGazKbHtnKfLzQg3kms52kSRpgnDY982a9oYsSXRLQEb",e.PsDELPH1="PsDELPH1Kxsxt8f9eWbxQeRxkjfbxoqM52jvs5Y5fBxWWh4ifpo",e.PtEdo2Zk="PtEdo2ZkT9oKpimTah6x2embF25oss54njMuPzkJTEi5RqfdZFA",e.PsFLorena="PsFLorenaUUuikDWvMDr6fGBRG8kt3e3D3fHoXK1j1BFRxeSH4i",e.PtGRANADs="PtGRANADsDU8R9daYKAgWnQYAJ64omN1o3KMGVCykShA97vQbvV",e.PtHangz2="PtHangz2aRngywmSRGGvrcTyMbbdpWdpFKuS4uMWxg2RaH9i1qx",e.PsiThaCa="PsiThaCaT47Zboaw71QWScM8sXeMM7bbQFncK9FLqYc6EKdpjVP",e.Psithaca2="Psithaca2MLRFYargivpo7YvUr7wUDqyxrdhC5CQq78mRvimz6A",e.PtJakart2="PtJakart2xVj7pYXJBXrqHgd82rdkLey5ZeeGwDgPp9rhQUbSqY",e.PtKathman="PtKathmankSpLLDALzWw7CGD2j2MtyveTwboEYokqUCP4a1LxMg",e.PtLimaPtL="PtLimaPtLMwfNinJi9rCfDPWea8dFgTZ1MeJ9f1m2SRic6ayiwW",e.PtMumbaii="PtMumbaiiFFEGbew1rRjzSPyzRbA51Tm3RVZL5suHPxSZYDhCEc",e.PtMumbai2="PtMumbai2TmsJHNGRkD8v8YDbtao7BLUC3wjASn1inAKLFCjaH1",e.PtNairobi="PtNairobiyssHuh87hEhfVBGCVrK3WnS8Z2FT4ymB5tAa4r1nQf",e.ProtoALpha="ProtoALphaALphaALphaALphaALphaALphaALphaALphaDdp3zK"}(zQ||(zQ={}));zQ.Pt24m4xi,zQ.PsBABY5H,zQ.PsBabyM1,zQ.PsCARTHA,zQ.PsDELPH1,zQ.PtEdo2Zk,zQ.PsFLorena,zQ.PtGRANADs,zQ.PtHangz2,zQ.PsiThaCa,zQ.Psithaca2,zQ.PtJakart2,zQ.PtKathman,zQ.PtLimaPtL,zQ.PtMumbai2,zQ.PtNairobi,zQ.ProtoALpha;var BQ;!function(e){e.MAINNET="NetXdQprcVkpaWU",e.CARTHAGENET="NetXjD3HPJJjmcd",e.DELPHINET="NetXm8tYqnMWky1",e.EDONET="NetXSgo1ZT2DRUG",e.FLORENCENET="NetXxkAx4woPLyu",e.GRANADANET="NetXz969SFaFn8k",e.HANGZHOUNET="NetXZSsxBpMQeAT",e.ITHACANET="NetXbhmtAbMukLc",e.ITHACANET2="NetXnHfVqm9iesp",e.JAKARTANET2="NetXLH1uAxK7CCh",e.KATHMANDUNET="NetXazhm4yetmff",e.LIMANET="NetXizpkH94bocH",e.MUMBAINET="NetXQw6nWSnrJ5t",e.MUMBAINET2="NetXgbcrNtXD2yA",e.NAIROBINET="NetXyuzvDo2Ugzb"}(BQ||(BQ={}));const UQ=e=>Math.round(11*FQ(e)/10),FQ=e=>{switch(e.substring(0,3)){case"tz1":return AQ;case"tz2":return PQ;case"tz3":return OQ;case"tz4":return TQ;default:throw new Error(`Cannot estimate reveal gas limit for ${e}`)}};class $Q extends Qa{constructor(e,t,r){super(),this.smartContractMethodName=e,this.sigs=t,this.invalidParams=r,this.name="InvalidParameterError",this.message=`${e} Received ${r.length} arguments while expecting one of the following signatures (${JSON.stringify(t)})`}}class HQ extends Qa{constructor(e){super(),this.source=e,this.name="InvalidDelegationSource",this.message=`Since Babylon delegation source can no longer be a contract address ${e}. Please use the smart contract abstraction to set your delegate.`}}class VQ extends Qa{constructor(e,t){super(),this.message=e,this.data=t,this.name="InvalidCodeParameter"}}class qQ extends Qa{constructor(e,t){super(),this.message=e,this.data=t,this.name="InvalidInitParameter"}}class KQ extends es{constructor(e,t,r,n){super(),this.message=e,this.viewName=t,this.failWith=r,this.cause=n,this.name="ViewSimulationError"}}const WQ=e=>{try{JSON.parse(e)}catch(t){return!1}return!0};class GQ extends Qa{constructor(e){super(),this.info=e,this.name="InvalidViewSimulationContext",this.message=`${e} Please configure the context of the view execution in the executeView method.`}}class ZQ extends es{constructor(e){super(),this.message=e,this.name="RevealOperationError"}}class YQ extends Qa{constructor(e){super(),this.message=e,this.name}}class XQ extends Qa{constructor(e){super(),this.message=e,this.name="InvalidBalanceError"}}const JQ=({code:e,init:t,balance:r="0",delegate:n,storage:i,fee:o=jQ,gasLimit:a=kQ,storageLimit:s=LQ,mutez:c=!1})=>gQ(void 0,void 0,void 0,(function*(){if(void 0!==i&&void 0!==t)throw new YQ("Storage and Init cannot be set a the same time. Please either use storage or init but not both.");if(!Array.isArray(e))throw new VQ("Wrong code parameter type, expected an array",e);let l;if(void 0!==i){const t=e.find((e=>"prim"in e&&"storage"===e.prim));if(void 0===(null===t||void 0===t?void 0:t.args))throw new VQ("The storage section is missing from the script",e);l=new xZ(t.args[0]).Encode(i)}else{if(void 0===t||"object"!==typeof t)throw new qQ("Wrong init parameter type, expected JSON Michelson",t);l=t}const u={code:e,storage:l};if(isNaN(Number(r)))throw new XQ(`Invalid Balance "${r}", cannot be converted to a number`);const d={kind:Aq.ORIGINATION,fee:o,gas_limit:a,storage_limit:s,balance:c?r.toString():gc("tz","mutez",r).toString(),script:u};return n&&(d.delegate=n),d})),QQ=({to:e,amount:t,parameter:r,fee:n=RQ,gasLimit:i=EQ,storageLimit:o=NQ,mutez:a=!1})=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.TRANSACTION,fee:n,gas_limit:i,storage_limit:o,amount:a?t.toString():gc("tz","mutez",t).toString(),destination:e,parameters:r}})),e0=({delegate:e,source:t,fee:r=CQ,gasLimit:n=SQ,storageLimit:i=MQ})=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.DELEGATION,source:t,fee:r,gas_limit:n,storage_limit:i,delegate:e}})),t0=({fee:e=IQ,gasLimit:t,storageLimit:r=DQ},n,i)=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.REVEAL,fee:e,public_key:i,source:n,gas_limit:null!==t&&void 0!==t?t:UQ(n),storage_limit:r}})),r0=({value:e,source:t,fee:r,gasLimit:n,storageLimit:i})=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.REGISTER_GLOBAL_CONSTANT,value:e,fee:r,gas_limit:n,storage_limit:i,source:t}})),n0=({ticketContents:e,ticketTy:t,ticketTicketer:r,ticketAmount:n,destination:i,entrypoint:o,source:a,fee:s,gasLimit:c,storageLimit:l})=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.TRANSFER_TICKET,fee:s,gas_limit:c,storage_limit:l,source:a,ticket_contents:e,ticket_ty:t,ticket_ticketer:r,ticket_amount:n,destination:i,entrypoint:o}})),i0=({source:e,fee:t,gasLimit:r,storageLimit:n,amount:i,destination:o})=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.INCREASE_PAID_STORAGE,source:e,fee:t,gas_limit:r,storage_limit:n,amount:i,destination:o}})),o0=({source:e,fee:t,gasLimit:r,storageLimit:n,message:i})=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.SMART_ROLLUP_ADD_MESSAGES,source:e,fee:t,gas_limit:r,storage_limit:n,message:i}})),a0=({source:e,fee:t,gasLimit:r,storageLimit:n,pvmKind:i,kernel:o,originationProof:a,parametersType:s})=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.SMART_ROLLUP_ORIGINATE,source:e,fee:t,gas_limit:r,storage_limit:n,pvm_kind:i,kernel:o,origination_proof:a,parameters_ty:s}})),s0=(e,t)=>Object.assign(Object.assign({},e),{kind:t}),c0=(e,t)=>{if(Array.isArray(e)){const r=e.find((e=>e.kind===t));if(r&&l0(r,t))return r}},l0=(e,t)=>e.kind===t,u0=e=>-1!==["transaction","delegation","origination","reveal","register_global_constant","increase_paid_storage","tx_rollup_origination","tx_rollup_submit_batch","transfer_ticket","update_consensus_key","smart_rollup_add_messages","smart_rollup_originate"].indexOf(e.kind),d0=e=>-1!==["transaction","delegation","origination","register_global_constant","increase_paid_storage","tx_rollup_origination","tx_rollup_submit_batch","transfer_ticket","update_consensus_key","smart_rollup_add_messages","smart_rollup_originate"].indexOf(e.kind),h0=e=>"metadata"in e,f0=e=>h0(e)&&"operation_result"in e.metadata;class p0 extends es{constructor(e,t){super(),this.errors=e,this.errorDetails=t,this.name="TezosOperationError";const r=e[e.length-1];this.id=r.id,this.kind=r.kind,this.message=`(${this.kind}) ${this.id}`,(e=>"with"in e)(r)&&(r.with.string?this.message=r.with.string:r.with.int?this.message=r.with.int:this.message=JSON.stringify(r.with))}}class m0 extends Error{constructor(e){super(),this.result=e,this.name="TezosPreapplyFailureError",this.message="Preapply returned an unexpected result"}}const g0=e=>{const t=Array.isArray(e)?e:[e],r=[];for(let n=0;nr.push(e.result))))}return r},v0=(e,t="failed")=>{const r=Array.isArray(e)?e:[e];let n=[];for(let o=0;onew cK(e).pipe(lW({each:1e3*e.timeout,with:()=>lK((()=>new x0("Confirmation polling timed out")))})))),sW((()=>xK((()=>_Q(this.context.stream.subscribeBlock("head")))).pipe(sW((e=>{var t,r;const n=null!==(r=null===(t=this.lastHead)||void 0===t?void 0:t.header.level)&&void 0!==r?r:e.header.level-1;return SK(n+1,e.header.level-n-1).pipe(dW((e=>this.context.readProvider.getBlock(e))),hW(e))})),fW((e=>this.lastHead=e))))),gW({refCount:!0})),this.confirmed$=this.currentHead$.pipe(HK((e=>{for(let t=3;t>=0;t--)e.operations[t].forEach((t=>{t.hash===this.hash&&(this._foundAt=e.header.level)}));if(e.header.level-this._foundAt>=0)return this._foundAt})),vW((e=>void 0!==e)),wW(),gW()),this._foundAt=Number.POSITIVE_INFINITY,dc(this.hash)!==Zs.VALID)throw new gs(this.hash);this.confirmed$.pipe(wW(),xW((()=>DK(_K)))).subscribe()}get revealOperation(){return Array.isArray(this.results)&&this.results.find((e=>"reveal"===e.kind))}get revealStatus(){return this.revealOperation?this.revealOperation.metadata.operation_result.status:"unknown"}get status(){return this.results.map((e=>f0(e)?e.metadata.operation_result.status:"unknown"))[0]||"unknown"}confirmation(e,t){return gQ(this,void 0,void 0,(function*(){if("undefined"!==typeof e&&e<1)throw new w0(e);const{defaultConfirmationCount:r,confirmationPollingTimeoutSecond:n}=this.context.config;this._pollingConfig$.next({timeout:t||n});const i=void 0!==e?e:r;return new Promise(((e,t)=>{this.confirmed$.pipe(sW((()=>this.currentHead$)),vW((e=>e.header.level-this._foundAt>=i-1)),wW()).subscribe((t=>{e(this._foundAt+(i-1))}),t)}))}))}}class k0 extends S0{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}sumProp(e,t){return e.reduce(((e,r)=>t in r?Number(r[t])+e:e),0)}getOriginatedContractAddresses(){const e=this.results.filter((e=>"origination"===e.kind));let t=[];for(const r of e)r.metadata.operation_result.originated_contracts&&(t=[...t,...r.metadata.operation_result.originated_contracts]);return t}get status(){return this.results.filter((e=>-1!==J0.indexOf(e.kind))).map((e=>{if(f0(e)){return e.metadata.operation_result.status}return"unknown"}))[0]||"unknown"}get fee(){return this.sumProp(this.params,"fee")}get gasLimit(){return this.sumProp(this.params,"gas_limit")}get storageLimit(){return this.sumProp(this.params,"storage_limit")}get consumedGas(){return Us.config({DECIMAL_PLACES:0,ROUNDING_MODE:Us.ROUND_UP}),new Us(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(g0({contents:this.results}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(g0({contents:this.results}),"paid_storage_size_diff"))}get errors(){return v0({contents:this.results})}}class E0{get rpc(){return this.context.rpc}get signer(){return this.context.signer}constructor(e){this.context=e}forge({opOb:{branch:e,contents:t,protocol:r},counter:n}){return gQ(this,void 0,void 0,(function*(){return{opbytes:yield this.context.forger.forge({branch:e,contents:t}),opOb:{branch:e,contents:t,protocol:r},counter:n}}))}estimate(e,t){var{fee:r,gasLimit:n,storageLimit:i}=e,o=mQ(e,["fee","gasLimit","storageLimit"]);return gQ(this,void 0,void 0,(function*(){let e=r,a=n,s=i;if(e&&e%1!==0)throw new b0(`Fee value must not be a decimal: ${e}`);if(a&&a%1!==0)throw new b0(`Gas Limit value must not be a decimal: ${a}`);if(s&&s%1!==0)throw new b0(`Storage Limit value must not be a decimal: ${s}`);if(void 0===r||void 0===n||void 0===i){const c=yield t(Object.assign({fee:r,gasLimit:n,storageLimit:i},o));null!==e&&void 0!==e||(e=c.suggestedFeeMutez),null!==a&&void 0!==a||(a=c.gasLimit),null!==s&&void 0!==s||(s=c.storageLimit)}return{fee:e,gasLimit:a,storageLimit:s}}))}getRPCOp(e){return gQ(this,void 0,void 0,(function*(){switch(e.kind){case Aq.TRANSACTION:return QQ(Object.assign({},e));case Aq.ORIGINATION:return JQ(yield this.context.parser.prepareCodeOrigination(Object.assign({},e)));case Aq.DELEGATION:return e0(Object.assign({},e));case Aq.REGISTER_GLOBAL_CONSTANT:return r0(Object.assign({},e));case Aq.INCREASE_PAID_STORAGE:return i0(Object.assign({},e));case Aq.TRANSFER_TICKET:return n0(Object.assign({},e));case Aq.SMART_ROLLUP_ADD_MESSAGES:return o0(Object.assign({},e));case Aq.SMART_ROLLUP_ORIGINATE:return a0(Object.assign({},e));default:throw new vs(e.kind)}}))}runOperation(e){return gQ(this,void 0,void 0,(function*(){return{opResponse:yield this.rpc.runOperation(e),op:e,context:this.context.clone()}}))}simulate(e){return gQ(this,void 0,void 0,(function*(){return{opResponse:yield this.rpc.simulateOperation(e),op:e,context:this.context.clone()}}))}isRevealOpNeeded(e,t){return gQ(this,void 0,void 0,(function*(){return!(!(yield this.isAccountRevealRequired(t))||!this.isRevealRequiredForOpType(e))}))}isAccountRevealRequired(e){return gQ(this,void 0,void 0,(function*(){return!(yield this.context.readProvider.isAccountRevealed(e,"head"))}))}isRevealRequiredForOpType(e){let t=!1;for(const r of e)d0(r)&&(t=!0);return t}signAndInject(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.signer.sign(e.opbytes,new Uint8Array([3]));e.opbytes=t.sbytes,e.opOb.signature=t.prefixSig;const r=[],n=yield this.rpc.preapplyOperations([e.opOb]);if(!Array.isArray(n))throw new m0(n);for(let e=0;egQ(this,void 0,void 0,(function*(){return e}))));case Aq.ORIGINATION:return this.walletProvider.mapOriginateParamsToWalletParams((()=>gQ(this,void 0,void 0,(function*(){return this.context.parser.prepareCodeOrigination(Object.assign({},e))}))));case Aq.DELEGATION:return this.walletProvider.mapDelegateParamsToWalletParams((()=>gQ(this,void 0,void 0,(function*(){return e}))));case Aq.INCREASE_PAID_STORAGE:return this.walletProvider.mapIncreasePaidStorageWalletParams((()=>gQ(this,void 0,void 0,(function*(){return e}))));default:throw new vs(JSON.stringify(e.kind))}}))}with(e){for(const t of e)switch(t.kind){case Aq.TRANSACTION:this.withTransfer(t);break;case Aq.ORIGINATION:this.withOrigination(t);break;case Aq.DELEGATION:this.withDelegation(t);break;case Aq.INCREASE_PAID_STORAGE:this.withIncreasePaidStorage(t);break;default:throw new vs(JSON.stringify(t.kind))}return this}send(){return gQ(this,void 0,void 0,(function*(){const e=[];for(const r of this.operations)e.push(yield this.mapOperation(r));const t=yield this.walletProvider.sendOperations(e);return this.context.operationFactory.createBatchOperation(t)}))}}class P0{constructor(e){this.context=e,this.walletCommand=e=>({send:e})}get walletProvider(){return this.context.walletProvider}pkh({forceRefetch:e}={}){return gQ(this,void 0,void 0,(function*(){return this._pkh&&!e||(this._pkh=yield this.walletProvider.getPKH()),this._pkh}))}originate(e){return this.walletCommand((()=>gQ(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapOriginateParamsToWalletParams((()=>this.context.parser.prepareCodeOrigination(Object.assign({},e)))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createOriginationOperation(r)}))))}setDelegate(e){var t;const r=oc(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&r!==Zs.VALID)throw new is(e.delegate,hc(r));return this.walletCommand((()=>gQ(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapDelegateParamsToWalletParams((()=>gQ(this,void 0,void 0,(function*(){return e})))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createDelegationOperation(r)}))))}signFailingNoop(e){return gQ(this,void 0,void 0,(function*(){const t={kind:Aq.FAILING_NOOP,arbitrary:e.arbitrary},r=yield this.context.readProvider.getBlockHash(e.basedOnBlock),n=yield this.context.forger.forge({branch:r,contents:[t]});return{signature:yield this.walletProvider.sign(n,Uint8Array.from([3])),bytes:n,signedContent:{branch:r,contents:[{kind:Aq.FAILING_NOOP,arbitrary:e.arbitrary}]}}}))}registerDelegate(){return this.walletCommand((()=>gQ(this,void 0,void 0,(function*(){const e=yield this.walletProvider.mapDelegateParamsToWalletParams((()=>gQ(this,void 0,void 0,(function*(){return{delegate:yield this.pkh()}})))),t=yield this.walletProvider.sendOperations([e]);return this.context.operationFactory.createDelegationOperation(t)}))))}transfer(e){const t=oc(e.to);if(t!==Zs.VALID)throw new is(e.to,hc(t));return this.walletCommand((()=>gQ(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapTransferParamsToWalletParams((()=>gQ(this,void 0,void 0,(function*(){return e})))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createTransactionOperation(r)}))))}increasePaidStorage(e){const t=oc(e.destination);if(t!==Zs.VALID)throw new is(e.destination,hc(t));return this.walletCommand((()=>gQ(this,void 0,void 0,(function*(){const t=yield this.walletProvider.mapIncreasePaidStorageWalletParams((()=>gQ(this,void 0,void 0,(function*(){return e})))),r=yield this.walletProvider.sendOperations([t]);return this.context.operationFactory.createIncreasePaidStorageOperation(r)}))))}batch(e){const t=new A0(this.walletProvider,this.context);return Array.isArray(e)&&t.with(e),t}at(e,t=(e=>e)){return gQ(this,void 0,void 0,(function*(){const r=sc(e);if(r!==Zs.VALID)throw new fs(e,hc(r));const n=this.context.withExtensions().rpc,i=this.context.withExtensions().readProvider,o=yield i.getScript(e,"head"),a=yield i.getEntrypoints(e),s=new F0(e,o,this,this.context.contract,a,n,i);return t(s,this.context)}))}getPK(){return this.walletProvider.getPK()}}class O0 extends ts{constructor(){super(),this.name="ConfirmationUndefinedError",this.message="Default confirmation count can not be undefined"}}class T0 extends ns{constructor(e){super(),this.message=e,this.name="ObservableError"}}class C0{operationResults(){return gQ(this,void 0,void 0,(function*(){return this._operationResult.pipe(wW()).toPromise()}))}receipt(){return gQ(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new T0("Unable to get operation results");return((e,{ALLOCATION_BURN:t,ORIGINATION_BURN:r}={ALLOCATION_BURN:257,ORIGINATION_BURN:257})=>{Us.config({DECIMAL_PLACES:0,ROUNDING_MODE:Us.ROUND_UP});const n=g0({contents:e});let i=new Us(0),o=new Us(0),a=new Us(0),s=new Us(0),c=new Us(0),l=new Us(0);return n.forEach((e=>{a=a.plus(e.fee||0),s=s.plus(Array.isArray(e.originated_contracts)?e.originated_contracts.length*r:0),c=c.plus("allocated_destination_contract"in e?t:0),i=i.plus(e.consumed_milligas||0),l=l.plus("paid_storage_size_diff"in e&&Number(e.paid_storage_size_diff)||0)})),o=o.plus(c).plus(s).plus(l),{totalFee:a,totalMilliGas:i,totalGas:i.dividedBy(1e3),totalStorage:o,totalAllocationBurn:c,totalOriginationBurn:s,totalPaidStorageDiff:l,totalStorageBurn:new Us(o.multipliedBy(250))}})(e)}))}constructor(e,t,r){if(this.opHash=e,this.context=t,this._newHead$=r,this._operationResult=new sK(1),this._includedInBlock=new sK(1),this._included=!1,this.newHead$=this._newHead$.pipe(sW((e=>{var t,r;const n=null!==(r=null===(t=this.lastHead)||void 0===t?void 0:t.header.level)&&void 0!==r?r:e.header.level-1;return SK(n+1,e.header.level-n-1).pipe(dW((e=>this.context.readProvider.getBlock(e))),hW(e))})),fW((e=>this.lastHead=e)),pW({connector:()=>new sK(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1})),this.confirmed$=this.newHead$.pipe(HK((e=>{for(const t of e.operations)for(const r of t)if(r.hash===this.opHash)return this._included=!0,this._includedInBlock.next(e),this._operationResult.next(r.contents),e})),vW((e=>"undefined"!==typeof e)),wW(),pW({connector:()=>new sK(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1})),dc(this.opHash)!==Zs.VALID)throw new gs(this.opHash);this.confirmed$.pipe(wW(),xW((()=>DK(void 0)))).subscribe()}getCurrentConfirmation(){return gQ(this,void 0,void 0,(function*(){return this._included?KK([this._includedInBlock,NK(this.context.readProvider.getBlock("head"))]).pipe(HK((([e,t])=>t.header.level-e.header.level+1)),wW()).toPromise():0}))}isInCurrentBranch(e="head"){return gQ(this,void 0,void 0,(function*(){if(!this._included)return!0;const t=yield this.context.readProvider.getBlockLevel(e),r=yield this._includedInBlock.pipe(wW()).toPromise();if(!r)throw new T0("Inclusion block is undefined");const n=t-r.header.level;if(n<=0)return!0;const i=Math.min(r.header.level+n,r.header.level+60);return new Set(yield this.context.readProvider.getLiveBlocks(i)).has(r.hash)}))}confirmationObservable(e){if("undefined"!==typeof e&&e<1)throw new w0(e);const{defaultConfirmationCount:t}=this.context.config,r=void 0!==e?e:t;if(void 0===r)throw new O0;return KK([this._includedInBlock,this.newHead$]).pipe(_W((([,e],[,t])=>e.hash===t.hash)),HK((([e,t])=>({block:t,expectedConfirmation:r,currentConfirmation:t.header.level-e.header.level+1,completed:t.header.level-e.header.level>=r-1,isInCurrentBranch:()=>this.isInCurrentBranch(t.hash)}))),(n=({completed:e})=>!e,void 0===(i=!0)&&(i=!1),TK((function(e,t){var r=0;e.subscribe(CK(t,(function(e){var o=n(e,r++);(o||i)&&t.next(e),!o&&t.complete()})))}))));var n,i}confirmation(e){return this.confirmationObservable(e).toPromise()}}class j0 extends C0{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}revealOperation(){return gQ(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new T0("operationResult returned undefined");return e.find((e=>e.kind===Aq.REVEAL))}))}transactionOperation(){return gQ(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(!e)throw new T0("operationResult returned undefined");return e.find((e=>e.kind===Aq.TRANSACTION))}))}status(){return gQ(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.transactionOperation();return e?e.metadata.operation_result.status:"unknown"}))}}class R0 extends C0{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}originationOperation(){return gQ(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return c0(e,Aq.ORIGINATION);throw new T0("Unable to fetch operation result")}))}revealOperation(){return gQ(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return c0(e,Aq.REVEAL);throw new T0("Unable to fetch operation result")}))}status(){return gQ(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.originationOperation();return e?e.metadata.operation_result.status:"unknown"}))}contract(){return gQ(this,void 0,void 0,(function*(){const e=yield this.originationOperation(),t=((null===e||void 0===e?void 0:e.metadata.operation_result.originated_contracts)||[])[0];return this.context.wallet.at(t)}))}}class I0 extends C0{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}revealOperation(){return gQ(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===Aq.REVEAL));throw new T0("Unable to fetch operation result")}))}delegationOperation(){return gQ(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===Aq.DELEGATION));throw new T0("Unable to fetch operation result")}))}status(){return gQ(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.delegationOperation();return e?e.metadata.operation_result.status:"unknown"}))}}class M0{constructor(e){this.context=e}getPKH(){return gQ(this,void 0,void 0,(function*(){return this.context.signer.publicKeyHash()}))}mapTransferParamsToWalletParams(e){return gQ(this,void 0,void 0,(function*(){return s0(yield e(),Aq.TRANSACTION)}))}mapOriginateParamsToWalletParams(e){return gQ(this,void 0,void 0,(function*(){return s0(yield e(),Aq.ORIGINATION)}))}mapDelegateParamsToWalletParams(e){return gQ(this,void 0,void 0,(function*(){return s0(yield e(),Aq.DELEGATION)}))}mapIncreasePaidStorageWalletParams(e){return gQ(this,void 0,void 0,(function*(){return s0(yield e(),Aq.INCREASE_PAID_STORAGE)}))}sendOperations(e){return gQ(this,void 0,void 0,(function*(){return(yield this.context.batch.batch(e).send()).hash}))}sign(e,t){return gQ(this,void 0,void 0,(function*(){const{prefixSig:r}=yield this.context.signer.sign(e,t);return r}))}getPK(){return this.context.signer.publicKey()}}class L0{constructor(e,t,r,n,i="unit",o=!0,a=!1){this.provider=e,this.address=t,this.parameterSchema=r,this.name=n,this.args=i,this.isMultipleEntrypoint=o,this.isAnonymous=a}getSignature(){return this.isAnonymous?this.parameterSchema.ExtractSchema()[this.name]:this.parameterSchema.ExtractSchema()}send(e={}){return this.provider instanceof P0?this.provider.transfer(this.toTransferParams(e)).send():this.provider.transfer(this.toTransferParams(e))}toTransferParams({fee:e,gasLimit:t,storageLimit:r,source:n,amount:i=0,mutez:o=!1}={}){return{to:this.address,amount:i,fee:e,mutez:o,source:n,gasLimit:t,storageLimit:r,parameter:{entrypoint:this.isMultipleEntrypoint?this.name:B0,value:this.isAnonymous?this.parameterSchema.EncodeObject({[this.name]:this.args}):this.parameterSchema.EncodeObject(this.args)}}}}class N0{constructor(e,t,r,n,i,o=!0,a=!1){this.provider=e,this.address=t,this.parameterSchema=r,this.name=n,this.args=i,this.isMultipleEntrypoint=o,this.isAnonymous=a}validateArgs(e,t,r){const n=t.ExtractSignatures();if(!n.find((t=>t.length===e.length)))throw new $Q(r,n,e)}get schema(){return this.isAnonymous?this.parameterSchema.ExtractSchema()[this.name]:this.parameterSchema.ExtractSchema()}getSignature(){if(!this.isAnonymous){const e=this.parameterSchema.ExtractSignatures();return 1==e.length?e[0]:e}{const e=this.parameterSchema.ExtractSignatures().find((e=>e[0]===this.name));if(e)return e.shift(),e}}send(e={}){return this.provider instanceof P0?this.provider.transfer(this.toTransferParams(e)).send():this.provider.transfer(this.toTransferParams(e))}toTransferParams({fee:e,gasLimit:t,storageLimit:r,source:n,amount:i=0,mutez:o=!1}={}){return{to:this.address,amount:i,fee:e,mutez:o,source:n,gasLimit:t,storageLimit:r,parameter:{entrypoint:this.isMultipleEntrypoint?this.name:B0,value:this.isAnonymous?this.parameterSchema.Encode(this.name,...this.args):this.parameterSchema.Encode(...this.args)}}}}class D0{constructor(e,t,r,n,i,o="Unit"){this._rpc=e,this._readProvider=t,this._contractAddress=r,this._smartContractViewSchema=n,this._contractStorageType=i,this._args=o}getSignature(){return{parameter:this._smartContractViewSchema.extractArgsSchema(),result:this._smartContractViewSchema.extractResultSchema()}}executeView(e){return gQ(this,void 0,void 0,(function*(){this.verifyContextExecution(e);const t=yield this._readProvider.getChainId(),r=this.transformArgsToMichelson(),n={contract:this._contractAddress,view:this._smartContractViewSchema.viewName,input:r,chain_id:t,source:e.viewCaller};return e.source&&(n.payer=e.source),this.executeViewAndDecodeResult(n)}))}verifyContextExecution(e){if(e.source&&oc(e.source)!==Zs.VALID)throw new GQ(`The source account who initialized the view execution is invalid: ${e.source}.`);if(!e.viewCaller||oc(e.viewCaller)!==Zs.VALID)throw new GQ(`The contract which is the caller of view is invalid: ${e.viewCaller}.`)}transformArgsToMichelson(){try{return this._smartContractViewSchema.encodeViewArgs(this._args)}catch(e){throw new us(this._smartContractViewSchema.viewName,this.getSignature(),this._args,e)}}adaptViewCodeToContext(e,t,r){const n={BALANCE:[{prim:"PUSH",args:[{prim:"mutez"},{int:r}]}],SENDER:[{prim:"PUSH",args:[{prim:"address"},{string:t}]}],SELF_ADDRESS:[{prim:"PUSH",args:[{prim:"address"},{string:this._contractAddress}]}],AMOUNT:[{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]}]};return e.forEach(((i,o)=>{i.prim in n&&(e[o]=Object(n)[i.prim]),i.args&&0!==i.args.length?this.adaptViewCodeToContext(i.args,t,r):Array.isArray(i)&&this.adaptViewCodeToContext(i,t,r)})),e}executeViewAndDecodeResult(e){return gQ(this,void 0,void 0,(function*(){let t;try{t=(yield this._rpc.runScriptView(e)).data}catch(r){const e=(e=>{if(WQ(e.body)){const t=JSON.parse(e.body);if(Array.isArray(t)&&"with"in t[t.length-1])return t[t.length-1].with}})(r);throw e?new KQ(`The simulation of the on-chain view named ${this._smartContractViewSchema.viewName} failed with: ${JSON.stringify(e)}`,this._smartContractViewSchema.viewName,e,r):r}return this._smartContractViewSchema.decodeViewResult(t)}))}}class z0{constructor(e,t){this.provider=e,this.contractAddress=t}createContractMethodFlatParams(e,t,r,n=!0,i=!1){return new N0(this.provider,this.contractAddress,e,t,r,n,i)}createContractMethodObjectParam(e,t,r,n=!0,i=!1){return new L0(this.provider,this.contractAddress,e,t,r,n,i)}createContractViewObjectParam(e,t,r,n,i){return new D0(e,t,this.contractAddress,r,n,i)}}const B0="default";class U0{constructor(e,t,r,n,i,o,a){this.currentContract=e,this.name=t,this.callbackParametersSchema=r,this.parameterSchema=n,this.args=i,this.rpc=o,this.readProvider=a}read(e){return gQ(this,void 0,void 0,(function*(){const t=ac(null!==e&&void 0!==e?e:"");if(sc(null!==e&&void 0!==e?e:"")==Zs.VALID)throw new ys("Since version 12, the lambda view no longer depends on a lambda contract. The read method no longer accepts a contract address as a parameter.");if(e&&t!==Zs.VALID)throw new ps(e,hc(t));const r=this.parameterSchema.Encode(...this.args),n=yield this.rpc.runView({contract:this.currentContract.address,entrypoint:this.name,input:r,chain_id:e||(yield this.readProvider.getChainId())});return this.callbackParametersSchema.Execute(n.data)}))}}class F0{constructor(e,t,r,n,i,o,a){this.address=e,this.script=t,this.storageProvider=n,this.entrypoints=i,this.rpc=o,this.readProvider=a,this.methods={},this.methodsObject={},this.views={},this.contractViews={},this.contractMethodFactory=new z0(r,e),this.schema=xZ.fromRPCResponse({script:this.script}),this.parameterSchema=_Z.fromRPCResponse({script:this.script}),this.viewSchema=SZ.fromRPCResponse({script:this.script}),0!==this.viewSchema.length&&this._initializeOnChainViews(this,o,this.readProvider,this.viewSchema),this.eventSchema=kZ.fromRPCResponse({script:this.script}),this._initializeMethods(this,this.entrypoints.entrypoints,this.rpc,this.readProvider)}_initializeMethods(e,t,r,n){const i=this.parameterSchema,o=Object.keys(t);if(i.isMultipleEntryPoint){o.forEach((i=>{const o=new _Z(t[i]);if(this.methods[i]=function(...t){return e.contractMethodFactory.createContractMethodFlatParams(o,i,t)},this.methodsObject[i]=function(t){return e.contractMethodFactory.createContractMethodObjectParam(o,i,t)},(e=>{let t=!1;if("prim"in e&&"pair"===e.prim&&e.args){const r=e.args[e.args.length-1];"prim"in r&&"contract"===r.prim&&(t=!0)}return t})(t[i])){const o=function(...o){const a=t[i].args[0],s=new _Z(a),c=t[i].args[1].args[0],l=new _Z(c);return((e,t,r)=>{const n=t.ExtractSignatures();if(!n.find((t=>t.length===e.length)))throw new $Q(r,n,e)})(o,s,i),new U0(e,i,l,s,o,r,n)};this.views[i]=o}}));const a=Object.keys(i.ExtractSchema()).filter((e=>-1===Object.keys(t).indexOf(e)));a.forEach((t=>{this.methods[t]=function(...r){return e.contractMethodFactory.createContractMethodFlatParams(i,t,r,!1,!0)},this.methodsObject[t]=function(r){return e.contractMethodFactory.createContractMethodObjectParam(i,t,r,!1,!0)}}))}else{const t=this.parameterSchema;this.methods[B0]=function(...r){return e.contractMethodFactory.createContractMethodFlatParams(t,B0,r,!1)},this.methodsObject[B0]=function(r){return e.contractMethodFactory.createContractMethodObjectParam(t,B0,r,!1)}}}_initializeOnChainViews(e,t,r,n){const i=this.schema.val;n.forEach((n=>{this.contractViews[n.viewName]=function(o){return e.contractMethodFactory.createContractViewObjectParam(t,r,n,i,o)}}))}storage(){return this.storageProvider.getStorage(this.address,this.schema)}bigMap(e){return this.storageProvider.getBigMapKey(this.address,e,this.schema)}}const $0=e=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"key_hash"},{string:e}]},{prim:"SOME"},{prim:"SET_DELEGATE"},{prim:"CONS"}],H0=()=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"NONE",args:[{prim:"key_hash"}]},{prim:"SET_DELEGATE"},{prim:"CONS"}],V0=(e,t)=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"key_hash"},{string:e}]},{prim:"IMPLICIT_ACCOUNT"},{prim:"PUSH",args:[{prim:"mutez"},{int:`${t}`}]},{prim:"UNIT"},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}],q0=(e,t)=>[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]},{prim:"PUSH",args:[{prim:"address"},{string:e}]},{prim:"CONTRACT",args:[{prim:"unit"}]},{prim:"IF_NONE",args:[[{prim:"UNIT"},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"mutez"},{int:`${t}`}]},{prim:"UNIT"},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}];class K0{constructor(e,t){this.id=e,this.provider=t}getSaplingDiff(e){return gQ(this,void 0,void 0,(function*(){return this.provider.getSaplingDiffByID(this.id.toString(),e)}))}getId(){return this.id.toString()}}class W0{constructor(e,t,r){this.id=e,this.schema=t,this.provider=r}get(e,t){return gQ(this,void 0,void 0,(function*(){try{return yield this.provider.getBigMapKeyByID(this.id.toString(),e,this.schema,t)}catch(r){if(r instanceof sq&&r.status===nq.NOT_FOUND)return;throw r}}))}getMultipleValues(e,t,r=5){return gQ(this,void 0,void 0,(function*(){return this.provider.getBigMapKeysByID(this.id.toString(),e,this.schema,t,r)}))}toJSON(){return this.id.toString()}toString(){return this.id.toString()}}const G0=e=>({big_map:(t,r)=>{if(t&&"int"in t&&void 0!==t.int){const n=new xZ(r);return new W0(new Us(t.int),n,e)}return{}},sapling_state:t=>t&&"int"in t&&void 0!==t.int?new K0(new Us(t.int),e):{}});var Z0;const Y0=(e,t)=>{var r,n,i;return{fee:null!==(r=e.fee)&&void 0!==r?r:t.fee,gasLimit:null!==(n=e.gasLimit)&&void 0!==n?n:t.gasLimit,storageLimit:null!==(i=e.storageLimit)&&void 0!==i?i:t.storageLimit}};class X0 extends E0{constructor(e){super(e),this.context=e,Z0.set(this,void 0),yQ(this,Z0,{},"f")}getBlockHash(e){return gQ(this,void 0,void 0,(function*(){return this.context.readProvider.getBlockHash(null!==e&&void 0!==e?e:"head~2")}))}getProtocolHash(){return gQ(this,void 0,void 0,(function*(){return this.context.readProvider.getNextProtocol("head")}))}getHeadCounter(e){var t;return gQ(this,void 0,void 0,(function*(){return null!==(t=this.context.readProvider.getCounter(e,"head"))&&void 0!==t?t:"0"}))}adjustGasForBatchOperation(e,t,r){return Us.min(t,e.div(r+1))}getAccountLimits(e,t,r){return gQ(this,void 0,void 0,(function*(){const n=yield this.context.readProvider.getBalance(e,"head"),{hard_gas_limit_per_operation:i,hard_gas_limit_per_block:o,hard_storage_limit_per_operation:a,cost_per_byte:s}=t;return{fee:0,gasLimit:r?Math.floor(this.adjustGasForBatchOperation(o,i,r).toNumber()):i.toNumber(),storageLimit:Math.floor(Us.min(n.dividedBy(s),a).toNumber())}}))}getFee(e,t,r){(!vQ(this,Z0,"f")[t]||vQ(this,Z0,"f")[t]{switch(e.kind){case Aq.ACTIVATION:case Aq.DRAIN_DELEGATE:return Object.assign({},e);case Aq.ORIGINATION:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{balance:"undefined"!==typeof e.balance?`${e.balance}`:"0"}),this.getSource(e,r,n)),this.getFee(e,r,t));case Aq.TRANSACTION:{const i=Object.assign(Object.assign(Object.assign(Object.assign({},e),{amount:"undefined"!==typeof e.amount?`${e.amount}`:"0"}),this.getSource(e,r,n)),this.getFee(e,r,t));if(i.source.toLowerCase().startsWith("kt1"))throw new ys(`KT1 addresses are not supported as source since ${zQ.PsBabyM1}`);return i}case Aq.REVEAL:case Aq.DELEGATION:case Aq.REGISTER_GLOBAL_CONSTANT:case Aq.UPDATE_CONSENSUS_KEY:case Aq.SMART_ROLLUP_ADD_MESSAGES:case Aq.SMART_ROLLUP_ORIGINATE:return Object.assign(Object.assign(Object.assign({},e),this.getSource(e,r,n)),this.getFee(e,r,t));case Aq.TRANSFER_TICKET:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{ticket_amount:`${e.ticket_amount}`}),this.getSource(e,r,n)),this.getFee(e,r,t));case Aq.INCREASE_PAID_STORAGE:return Object.assign(Object.assign(Object.assign(Object.assign({},e),{amount:`${e.amount}`}),this.getSource(e,r,n)),this.getFee(e,r,t));case Aq.BALLOT:case Aq.PROPOSALS:if(void 0===i)throw new _0("Failed to get the current voting period index");return Object.assign(Object.assign({},e),{period:null===i||void 0===i?void 0:i.voting_period.index});default:throw new vs(e.kind)}}))}activate({pkh:e,secret:t}){return gQ(this,void 0,void 0,(function*(){const r=yield(({pkh:e,secret:t})=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.ACTIVATION,pkh:e,secret:t}})))({pkh:e,secret:t}),n=this.convertIntoArray(r),i=yield this.getBlockHash(),o=yield this.getProtocolHash();yQ(this,Z0,{},"f");const a=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:i,contents:this.constructOpContents(n,a,e),protocol:o},counter:a}}))}reveal({fee:e,gasLimit:t,storageLimit:r}){return gQ(this,void 0,void 0,(function*(){const{pkh:n,publicKey:i}=yield this.getKeys();if(!i)throw new ws(n);const o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(n,o),s=Y0({fee:e,storageLimit:r,gasLimit:t},a),c=yield t0({fee:s.fee,gasLimit:s.gasLimit,storageLimit:s.storageLimit},n,i),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();yQ(this,Z0,{},"f");const h=parseInt(yield this.getHeadCounter(n),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,n),protocol:d},counter:h}}))}originate(e,t){var{fee:r,storageLimit:n,gasLimit:i}=e,o=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),a=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getAccountLimits(e,a),c=yield JQ(yield this.context.parser.prepareCodeOrigination(Object.assign(Object.assign({},o),Y0({fee:r,storageLimit:n,gasLimit:i},s)))),l=yield this.addRevealOperationIfNeeded(c,e),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();yQ(this,Z0,{},"f");const f=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,e,t),protocol:h},counter:f}}))}transaction(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(e,o),s=yield QQ(Object.assign(Object.assign({},i),Y0({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();yQ(this,Z0,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}delegation(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(e,o),s=yield e0(Object.assign(Object.assign({},i),Y0({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();yQ(this,Z0,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}registerDelegate({fee:e,storageLimit:t,gasLimit:r},n){return gQ(this,void 0,void 0,(function*(){const{pkh:i}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(i,o),s=Y0({fee:e,storageLimit:t,gasLimit:r},a),c=yield(({fee:e=CQ,gasLimit:t=SQ,storageLimit:r=MQ},n)=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.DELEGATION,fee:e,gas_limit:t,storage_limit:r,delegate:n}})))({fee:s.fee,storageLimit:s.storageLimit,gasLimit:s.gasLimit},i),l=yield this.addRevealOperationIfNeeded(c,i),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();yQ(this,Z0,{},"f");const f=parseInt(yield this.getHeadCounter(i),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,i,n),protocol:h},counter:f}}))}registerGlobalConstant(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(e,o),s=yield r0(Object.assign(Object.assign({},i),Y0({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();yQ(this,Z0,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}updateConsensusKey(e,t){var{fee:r,storageLimit:n,gasLimit:i}=e,o=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),a=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getAccountLimits(e,a),c=yield(({source:e,fee:t,gasLimit:r,storageLimit:n,pk:i})=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.UPDATE_CONSENSUS_KEY,source:e,fee:t,gas_limit:r,storage_limit:n,pk:i}})))(Object.assign(Object.assign({},o),Y0({fee:r,storageLimit:n,gasLimit:i},s))),l=yield this.addRevealOperationIfNeeded(c,e),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();yQ(this,Z0,{},"f");const f=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,e,t),protocol:h},counter:f}}))}increasePaidStorage(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(e,o),s=yield i0(Object.assign(Object.assign({},i),Y0({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();yQ(this,Z0,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}ballot(e){return gQ(this,void 0,void 0,(function*(){const{pkh:t}=yield this.getKeys(),r=yield(({source:e,proposal:t,ballot:r})=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.BALLOT,source:e,proposal:t,ballot:r}})))(Object.assign({},e)),n=this.convertIntoArray(r),i=yield this.getBlockHash(),o=yield this.getProtocolHash();yQ(this,Z0,{},"f");const a=parseInt(yield this.getHeadCounter(t),10);let s;try{s=yield this.rpc.getCurrentPeriod()}catch(c){throw new _0("Failed to get the current voting period index")}return{opOb:{branch:i,contents:this.constructOpContents(n,a,t,void 0,s),protocol:o},counter:a}}))}proposals(e){return gQ(this,void 0,void 0,(function*(){const{pkh:t}=yield this.getKeys(),r=yield(({source:e,proposals:t})=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.PROPOSALS,source:e,proposals:t}})))(Object.assign({},e)),n=this.convertIntoArray(r),i=yield this.getBlockHash(),o=yield this.getProtocolHash();yQ(this,Z0,{},"f");const a=parseInt(yield this.getHeadCounter(t),10);let s;try{s=yield this.rpc.getCurrentPeriod()}catch(c){throw new _0("Failed to get the current voting period index")}return{opOb:{branch:i,contents:this.constructOpContents(n,a,t,void 0,s),protocol:o},counter:a}}))}drainDelegate(e,t){return gQ(this,void 0,void 0,(function*(){const{pkh:r}=yield this.getKeys(),n=yield(({consensus_key:e,delegate:t,destination:r})=>gQ(void 0,void 0,void 0,(function*(){return{kind:Aq.DRAIN_DELEGATE,consensus_key:e,delegate:t,destination:r}})))(Object.assign({},e)),i=this.convertIntoArray(n),o=yield this.getBlockHash(),a=yield this.getProtocolHash();yQ(this,Z0,{},"f");const s=parseInt(yield this.getHeadCounter(r),10);return{opOb:{branch:o,contents:this.constructOpContents(i,s,r,t),protocol:a},counter:s}}))}transferTicket(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(e,o),s=yield n0(Object.assign(Object.assign({},i),Y0({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();yQ(this,Z0,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}smartRollupAddMessages(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.getAccountLimits(e,o),s=yield o0(Object.assign(Object.assign({},i),Y0({fee:t,storageLimit:r,gasLimit:n},a))),c=yield this.addRevealOperationIfNeeded(s,e),l=this.convertIntoArray(c),u=yield this.getBlockHash(),d=yield this.getProtocolHash();yQ(this,Z0,{},"f");const h=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:u,contents:this.constructOpContents(l,h,e,i.source),protocol:d},counter:h}}))}smartRollupOriginate(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){const{pkh:e}=yield this.getKeys(),o=yield this.rpc.getOriginationProof({kind:i.pvmKind,kernel:i.kernel}),a=yield this.context.readProvider.getProtocolConstants("head"),s=yield this.getAccountLimits(e,a),c=yield a0(Object.assign(Object.assign(Object.assign({},Y0({fee:t,storageLimit:r,gasLimit:n},s)),i),{originationProof:o})),l=yield this.addRevealOperationIfNeeded(c,e),u=this.convertIntoArray(l),d=yield this.getBlockHash(),h=yield this.getProtocolHash();yQ(this,Z0,{},"f");const f=parseInt(yield this.getHeadCounter(e),10);return{opOb:{branch:d,contents:this.constructOpContents(u,f,e,i.source),protocol:h},counter:f}}))}batch(e,t){return gQ(this,void 0,void 0,(function*(){const{pkh:r,publicKey:n}=yield this.getKeys(),i=yield this.context.readProvider.getProtocolConstants("head"),o=yield this.getAccountLimits(r,i,e.length),a=yield this.isRevealOpNeeded(e,r),s=[];if(t)for(const d of e)if(u0(d)){const e=t.shift(),r=Y0(d,{fee:e.suggestedFeeMutez,storageLimit:e.storageLimit,gasLimit:e.gasLimit});s.push(yield this.getRPCOp(Object.assign(Object.assign({},d),r)))}else s.push(Object.assign({},d));else for(const t of e)if(u0(t)){const e=Y0(t,o);s.push(yield this.getRPCOp(Object.assign(Object.assign({},t),e)))}else s.push(Object.assign({},t));if(a){if(!n)throw new ws(r);s.unshift(yield t0({fee:IQ,storageLimit:DQ,gasLimit:UQ(r)},r,n))}const c=yield this.getBlockHash(),l=yield this.getProtocolHash();yQ(this,Z0,{},"f");const u=parseInt(yield this.getHeadCounter(r),10);return{opOb:{branch:c,contents:this.constructOpContents(s,u,r),protocol:l},counter:u}}))}contractCall(e){var t,r,n;return gQ(this,void 0,void 0,(function*(){const i=yield this.getBlockHash(),o=yield this.getProtocolHash(),{pkh:a}=yield this.getKeys();yQ(this,Z0,{},"f");const s=parseInt(yield this.getHeadCounter(a),10),c=e.toTransferParams(),l=yield this.context.readProvider.getProtocolConstants("head"),u=yield this.getAccountLimits(a,l),d=Y0({fee:c.fee,storageLimit:c.storageLimit,gasLimit:c.gasLimit},u),h={kind:Aq.TRANSACTION,fee:null!==(t=c.fee)&&void 0!==t?t:d.fee,gas_limit:null!==(r=c.gasLimit)&&void 0!==r?r:d.gasLimit,storage_limit:null!==(n=c.storageLimit)&&void 0!==n?n:d.storageLimit,amount:String(c.amount),destination:c.to,parameters:c.parameter},f=yield this.addRevealOperationIfNeeded(h,a),p=this.convertIntoArray(f);return{opOb:{branch:i,contents:this.constructOpContents(p,s,a),protocol:o},counter:s}}))}toPreapply(e){return gQ(this,void 0,void 0,(function*(){const{opOb:{contents:t,branch:r,protocol:n}}=e,i=this.toForge(e),o=yield this.context.forger.forge(i);return[{contents:t,branch:r,protocol:n,signature:(yield this.context.signer.sign(o,new Uint8Array([3]))).prefixSig}]}))}toForge({opOb:{contents:e,branch:t}}){return{branch:t,contents:e}}}Z0=new WeakMap;const J0=[Aq.ACTIVATION,Aq.ORIGINATION,Aq.TRANSACTION,Aq.DELEGATION];class Q0 extends E0{constructor(e,t){super(e),this.estimator=t,this.operations=[],this.prepare=new X0(this.context)}withTransfer(e){const t=oc(e.to);if(e.amount<0)throw new as(e.amount.toString());if(t!==Zs.VALID)throw new is(e.to,hc(t));return this.operations.push(Object.assign({kind:Aq.TRANSACTION},e)),this}withTransferTicket(e){const t=oc(e.destination);if(t!==Zs.VALID)throw new is(e.destination,hc(t));return this.operations.push(Object.assign({kind:Aq.TRANSFER_TICKET},e)),this}withContractCall(e,t={}){return this.withTransfer(e.toTransferParams(t))}withDelegation(e){var t;const r=oc(e.source);if(e.source&&r!==Zs.VALID)throw new is(e.source,hc(r));const n=oc(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&n!==Zs.VALID)throw new is(e.delegate,hc(n));return this.operations.push(Object.assign({kind:Aq.DELEGATION},e)),this}withActivation({pkh:e,secret:t}){const r=cc(e);if(r!==Zs.VALID)throw new ms(e,hc(r));return this.operations.push({kind:Aq.ACTIVATION,pkh:e,secret:t}),this}withOrigination(e){return this.operations.push(Object.assign({kind:Aq.ORIGINATION},e)),this}withRegisterGlobalConstant(e){return this.operations.push(Object.assign({kind:Aq.REGISTER_GLOBAL_CONSTANT},e)),this}withIncreasePaidStorage(e){return this.operations.push(Object.assign({kind:Aq.INCREASE_PAID_STORAGE},e)),this}withSmartRollupAddMessages(e){return this.operations.push(Object.assign({kind:Aq.SMART_ROLLUP_ADD_MESSAGES},e)),this}withSmartRollupOriginate(e){return this.operations.push(Object.assign({kind:Aq.SMART_ROLLUP_ORIGINATE},e)),this}getRPCOp(e){return gQ(this,void 0,void 0,(function*(){switch(e.kind){case Aq.TRANSACTION:return QQ(Object.assign({},e));case Aq.ORIGINATION:return JQ(yield this.context.parser.prepareCodeOrigination(Object.assign({},e)));case Aq.DELEGATION:return e0(Object.assign({},e));case Aq.REGISTER_GLOBAL_CONSTANT:return r0(Object.assign({},e));case Aq.INCREASE_PAID_STORAGE:return i0(Object.assign({},e));case Aq.TRANSFER_TICKET:return n0(Object.assign({},e));case Aq.SMART_ROLLUP_ADD_MESSAGES:return o0(Object.assign({},e));case Aq.SMART_ROLLUP_ORIGINATE:return a0(Object.assign({},e));default:throw new vs(JSON.stringify(e.kind))}}))}with(e){for(const t of e)switch(t.kind){case Aq.TRANSACTION:this.withTransfer(t);break;case Aq.ORIGINATION:this.withOrigination(t);break;case Aq.DELEGATION:this.withDelegation(t);break;case Aq.ACTIVATION:this.withActivation(t);break;case Aq.REGISTER_GLOBAL_CONSTANT:this.withRegisterGlobalConstant(t);break;case Aq.INCREASE_PAID_STORAGE:this.withIncreasePaidStorage(t);break;case Aq.TRANSFER_TICKET:this.withTransferTicket(t);break;case Aq.SMART_ROLLUP_ADD_MESSAGES:this.withSmartRollupAddMessages(t);break;case Aq.SMART_ROLLUP_ORIGINATE:this.withSmartRollupOriginate(t);break;default:throw new vs(JSON.stringify(t.kind))}return this}send(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=e&&e.source||t,n=yield this.estimator.batch(this.operations);n.length!==this.operations.length&&n.shift();const i=yield this.prepare.batch(this.operations,n),o=yield this.forge(i),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new k0(a,i.opOb.contents,r,c,l,s)}))}}class e1{constructor(e,t){this.context=e,this.estimator=t}batch(e){const t=new Q0(this.context,this.estimator);return Array.isArray(e)&&t.with(e),t}}class t1 extends C0{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t,this.getOriginatedContractAddresses=()=>gQ(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e){const t=e.filter((e=>"origination"===e.kind));let r=[];for(const e of t)e.metadata.operation_result.originated_contracts&&(r=[...r,...e.metadata.operation_result.originated_contracts]);return r}throw new T0("Unable to fetch operation results")}))}revealOperation(){return gQ(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===Aq.REVEAL));throw new T0("Unable to fetch operation results")}))}status(){return gQ(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.operationResults();if(e)return e.filter((e=>-1!==J0.indexOf(e.kind))).map((e=>{if(f0(e)){return e.metadata.operation_result.status}return"unknown"}))[0]||"unknown";throw new T0("Unable to fetch operation results")}))}}class r1 extends C0{constructor(e,t,r){super(e,t,r),this.opHash=e,this.context=t}revealOperation(){return gQ(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===Aq.REVEAL));throw new T0("Unable to fetch operation result")}))}increasePaidStorageOperation(){return gQ(this,void 0,void 0,(function*(){const e=yield this.operationResults();if(e)return e.find((e=>e.kind===Aq.INCREASE_PAID_STORAGE));throw new T0("Unable to fetch operation result")}))}status(){return gQ(this,void 0,void 0,(function*(){if(!this._included)return"pending";const e=yield this.increasePaidStorageOperation();return e?e.metadata.operation_result.status:"unknown"}))}}const n1=(e,t,r)=>{return e.pipe((n=1e3*t.config.confirmationPollingTimeoutSecond,function(e){return new cK(null).pipe(lW({each:n,with:()=>lK((()=>new x0("Confirmation polling timed out")))}),GK((()=>e)))}),pW({connector:()=>new sK(1),resetOnError:!1,resetOnComplete:!1,resetOnRefCountZero:!1}));var n};class i1{constructor(e){this.context=e,this.sharedHeadObs=xK((()=>_Q(this.context.stream.subscribeBlock("head"))))}createNewHeadObservable(){return gQ(this,void 0,void 0,(function*(){return n1(this.sharedHeadObs,this.context)}))}createPastBlockWalker(e,t=1){return NK(this.context.readProvider.getBlock(e)).pipe(sW((e=>1===t?DK(e):SK(e.header.level,t-1).pipe(function(){for(var e=[],t=0;tgQ(this,void 0,void 0,(function*(){return this.context.readProvider.getBlock("number"===typeof e?e:e.header.level)}))))))))}createHeadObservableFromConfig({blockIdentifier:e}){return gQ(this,void 0,void 0,(function*(){const t=[];return e&&t.push(this.createPastBlockWalker(e)),t.push(yield this.createNewHeadObservable()),YK(...t)}))}createOperation(e,t={}){return gQ(this,void 0,void 0,(function*(){return new C0(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createBatchOperation(e,t={}){return gQ(this,void 0,void 0,(function*(){return new t1(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createTransactionOperation(e,t={}){return gQ(this,void 0,void 0,(function*(){return new j0(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createDelegationOperation(e,t={}){return gQ(this,void 0,void 0,(function*(){return new I0(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createOriginationOperation(e,t={}){return gQ(this,void 0,void 0,(function*(){return new R0(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}createIncreasePaidStorageOperation(e,t={}){return gQ(this,void 0,void 0,(function*(){return new r1(e,this.context.clone(),yield this.createHeadObservableFromConfig(t))}))}}class o1 extends E0{constructor(e){super(e),this.prepare=new X0(this.context)}getBalance(e){return gQ(this,void 0,void 0,(function*(){const t=oc(e);if(t!==Zs.VALID)throw new is(e,hc(t));return this.context.readProvider.getBalance(e,"head")}))}getDelegate(e){return gQ(this,void 0,void 0,(function*(){const t=oc(e);if(t!==Zs.VALID)throw new is(e,hc(t));return this.context.readProvider.getDelegate(e,"head")}))}activate(e,t){return gQ(this,void 0,void 0,(function*(){const r=cc(e);if(r!==Zs.VALID)throw new ms(e,hc(r));const n=yield this.prepare.activate({pkh:e,secret:t}),i=yield this.forge(n),o=`${i.opbytes}00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000`;return new S0(yield this.rpc.injectOperation(o),Object.assign(Object.assign({},i),{opbytes:o}),[],this.context.clone())}))}}const a1=100;class s1{constructor(e,t,r,n,i=100){this._milligasLimit=e,this._storageLimit=t,this.opSize=r,this.minimalFeePerStorageByteMutez=n,this.baseFeeMutez=i}get burnFeeMutez(){return this.roundUp(Number(this.storageLimit)*Number(this.minimalFeePerStorageByteMutez))}get storageLimit(){const e=Math.max(Number(this._storageLimit),0);return e>0?e:0}get gasLimit(){return this.roundUp(Number(this._milligasLimit)/1e3+100)}get operationFeeMutez(){return.1*(Number(this._milligasLimit)/1e3+100)+1*Number(this.opSize)}roundUp(e){return Math.ceil(Number(e))}get minimalFeeMutez(){return this.roundUp(a1+this.operationFeeMutez)}get suggestedFeeMutez(){return this.roundUp(this.operationFeeMutez+200)}get usingBaseFeeMutez(){return Math.max(Number(this.baseFeeMutez),a1)+this.roundUp(this.operationFeeMutez)}get totalCost(){return this.minimalFeeMutez+this.burnFeeMutez}get consumedMilligas(){return Number(this._milligasLimit)}static createEstimateInstanceFromProperties(e){let t,r=0,n=0,i=0,o=0;return e.forEach((e=>{r+=e.milligasLimit,n+=e.storageLimit,i+=e.opSize,o=Math.max(e.minimalFeePerStorageByteMutez,o),e.baseFeeMutez&&(t=t?t+e.baseFeeMutez:e.baseFeeMutez)})),new s1(r,n,i,o,t)}static createArrayEstimateInstancesFromProperties(e){return e.map((e=>new s1(e.milligasLimit,e.storageLimit,e.opSize,e.minimalFeePerStorageByteMutez,e.baseFeeMutez)))}}class c1 extends Ja{constructor(){super(),this.name="RevealEstimateError",this.message="Public key is unknown, unable to estimate the reveal operation in Wallet API."}}class l1 extends E0{constructor(){super(...arguments),this.ALLOCATION_STORAGE=257,this.ORIGINATION_STORAGE=257,this.OP_SIZE_REVEAL=128,this.prepare=new X0(this.context)}getKeys(){return gQ(this,void 0,void 0,(function*(){const e=this.context.isAnySignerConfigured();return{publicKeyHash:e?yield this.signer.publicKeyHash():yield this.context.walletProvider.getPKH(),publicKey:e?yield this.signer.publicKey():void 0}}))}getEstimationPropertiesFromOperationContent(e,t,r){const n=g0({contents:[e]});let i=0,o=0;return n.forEach((e=>{o+="originated_contracts"in e&&"undefined"!==typeof e.originated_contracts?e.originated_contracts.length*this.ORIGINATION_STORAGE:0,o+="allocated_destination_contract"in e?this.ALLOCATION_STORAGE:0,i+=Number(e.consumed_milligas)||0,o+="paid_storage_size_diff"in e&&Number(e.paid_storage_size_diff)||0,o+="storage_size"in e&&"global_address"in e&&Number(e.storage_size)||0,o+="genesis_commitment_hash"in e?Number(e.size):0})),u0(e)?{milligasLimit:i||0,storageLimit:Number(o||0),opSize:t,minimalFeePerStorageByteMutez:r.toNumber()}:{milligasLimit:0,storageLimit:0,opSize:t,minimalFeePerStorageByteMutez:r.toNumber(),baseFeeMutez:0}}calculateEstimates(e,t){return gQ(this,void 0,void 0,(function*(){const{opbytes:r,opOb:{branch:n,contents:i}}=yield this.forge(e),o={operation:{branch:n,contents:i},chain_id:yield this.context.readProvider.getChainId()},{opResponse:a}=yield this.simulate(o),{cost_per_byte:s}=t,c=[...v0(a,"backtracked"),...v0(a)];if(c.length)throw new p0(c,"Error occurred during estimation");let l=1;return Array.isArray(e.opOb.contents)&&e.opOb.contents.length>1&&(l="reveal"===a.contents[0].kind?e.opOb.contents.length-1:e.opOb.contents.length),a.contents.map((e=>this.getEstimationPropertiesFromOperationContent(e,"reveal"===e.kind?this.OP_SIZE_REVEAL/2:r.length/2/l,s)))}))}originate(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.prepare.originate(e),r=yield this.context.readProvider.getProtocolConstants("head"),n=yield this.calculateEstimates(t,r);return"reveal"===t.opOb.contents[0].kind&&n.shift(),s1.createEstimateInstanceFromProperties(n)}))}transfer(e){var t,{fee:r,storageLimit:n,gasLimit:i}=e,o=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){const e=oc(o.to);if(e!==Zs.VALID)throw new is(o.to,hc(e));const a=oc(null!==(t=o.source)&&void 0!==t?t:"");if(o.source&&a!==Zs.VALID)throw new is(o.source,hc(a));if(o.amount<0)throw new as(o.amount.toString());const s=yield this.prepare.transaction(Object.assign({fee:r,storageLimit:n,gasLimit:i},o)),c=yield this.context.readProvider.getProtocolConstants("head"),l=yield this.calculateEstimates(s,c);return"reveal"===s.opOb.contents[0].kind&&l.shift(),s1.createEstimateInstanceFromProperties(l)}))}transferTicket(e){var t,{fee:r,storageLimit:n,gasLimit:i}=e,o=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){const e=oc(o.destination);if(e!==Zs.VALID)throw new is(o.destination,hc(e));const a=oc(null!==(t=o.source)&&void 0!==t?t:"");if(o.source&&a!==Zs.VALID)throw new is(o.source,hc(a));const s=yield this.context.readProvider.getProtocolConstants("head"),c=yield this.prepare.transferTicket(Object.assign({fee:r,storageLimit:n,gasLimit:i},o)),l=yield this.calculateEstimates(c,s);return"reveal"===c.opOb.contents[0].kind&&l.shift(),s1.createEstimateInstanceFromProperties(l)}))}setDelegate(e){var t,{fee:r,gasLimit:n,storageLimit:i}=e,o=mQ(e,["fee","gasLimit","storageLimit"]);return gQ(this,void 0,void 0,(function*(){const e=oc(o.source);if(o.source&&e!==Zs.VALID)throw new is(o.source,hc(e));const a=oc(null!==(t=o.delegate)&&void 0!==t?t:"");if(o.delegate&&a!==Zs.VALID)throw new is(o.delegate,hc(a));const s=yield this.prepare.delegation(Object.assign({fee:r,storageLimit:i,gasLimit:n},o)),c=yield this.context.readProvider.getProtocolConstants("head"),l=yield this.calculateEstimates(s,c);return"reveal"===s.opOb.contents[0].kind&&l.shift(),s1.createEstimateInstanceFromProperties(l)}))}batch(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.batch(e),n=yield this.calculateEstimates(r,t);return s1.createArrayEstimateInstancesFromProperties(n)}))}registerDelegate(e,t){var{fee:r,storageLimit:n,gasLimit:i}=e,o=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){const e=(yield this.getKeys()).publicKeyHash,a=yield this.context.readProvider.getProtocolConstants("head"),s=t||e,c=yield this.prepare.registerDelegate(Object.assign({fee:r,storageLimit:n,gasLimit:i},o),s),l=yield this.calculateEstimates(c,a);return"reveal"===c.opOb.contents[0].kind&&l.shift(),s1.createEstimateInstanceFromProperties(l)}))}reveal(e){return gQ(this,void 0,void 0,(function*(){const{publicKeyHash:t,publicKey:r}=yield this.getKeys();if(!r)throw new c1;if(yield this.isAccountRevealRequired(t)){const t=yield this.context.readProvider.getProtocolConstants("head"),r=e?yield this.prepare.reveal(e):yield this.prepare.reveal({}),n=yield this.calculateEstimates(r,t);return s1.createEstimateInstanceFromProperties(n)}}))}registerGlobalConstant(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){const e=yield this.prepare.registerGlobalConstant(Object.assign({fee:t,storageLimit:r,gasLimit:n},i)),o=yield this.context.readProvider.getProtocolConstants("head"),a=yield this.calculateEstimates(e,o);return"reveal"===e.opOb.contents[0].kind&&a.shift(),s1.createEstimateInstanceFromProperties(a)}))}increasePaidStorage(e){var{fee:t,storageLimit:r,gasLimit:n}=e,i=mQ(e,["fee","storageLimit","gasLimit"]);return gQ(this,void 0,void 0,(function*(){if(i.amount<0)throw new as(i.amount.toString());const e=yield this.context.readProvider.getProtocolConstants("head"),o=yield this.prepare.increasePaidStorage(Object.assign({fee:t,storageLimit:r,gasLimit:n},i)),a=yield this.calculateEstimates(o,e);return"reveal"===o.opOb.contents[0].kind&&a.shift(),s1.createEstimateInstanceFromProperties(a)}))}updateConsensusKey(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.updateConsensusKey(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&n.shift(),s1.createEstimateInstanceFromProperties(n)}))}smartRollupAddMessages(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.smartRollupAddMessages(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&n.shift(),s1.createEstimateInstanceFromProperties(n)}))}smartRollupOriginate(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.smartRollupOriginate(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&n.shift(),s1.createEstimateInstanceFromProperties(n)}))}contractCall(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.context.readProvider.getProtocolConstants("head"),r=yield this.prepare.contractCall(e),n=yield this.calculateEstimates(r,t);return"reveal"===r.opOb.contents[0].kind&&n.shift(),s1.createEstimateInstanceFromProperties(n)}))}}class u1 extends S0{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"delegation"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get delegate(){return this.params.delegate}get isRegisterOperation(){return this.delegate===this.source}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return Bs.config({DECIMAL_PLACES:0,ROUNDING_MODE:Bs.ROUND_UP}),this.consumedMilliGas?new Bs(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class d1 extends S0{constructor(e,t,r,n,i,o){super(e,r,n,i),this.params=t,this.contractProvider=o;const a=this.operationResults&&this.operationResults.originated_contracts;Array.isArray(a)&&(this.contractAddress=a[0])}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"origination"===e.kind)),t=e&&f0(e)&&e.metadata.operation_result;return t||void 0}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return Bs.config({DECIMAL_PLACES:0,ROUNDING_MODE:Bs.ROUND_UP}),this.consumedMilliGas?new Bs(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get storageDiff(){const e=this.operationResults&&this.operationResults.paid_storage_size_diff;return e||void 0}get storageSize(){const e=this.operationResults&&this.operationResults.storage_size;return e||void 0}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}contract(e,t){return gQ(this,void 0,void 0,(function*(){if(!this.contractAddress)throw new y0("No contract was originated in this operation");return yield this.confirmation(e,t),this.contractProvider.at(this.contractAddress)}))}}class h1 extends S0{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r,this.globalConstantHash=this.operationResults&&this.operationResults.global_address}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"register_global_constant"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get registeredExpression(){return this.params.value}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}get consumedGas(){return Bs.config({DECIMAL_PLACES:0,ROUNDING_MODE:Bs.ROUND_UP}),this.consumedMilliGas?new Bs(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}}class f1 extends S0{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"reveal"===e.kind));return e?[e]:[]}get status(){const e=this.operationResults[0];return e?e.metadata.operation_result.status:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get publicKey(){return this.params.public_key}sumProp(e,t){return e.reduce(((e,r)=>t in r?Number(r[t])+e:e),0)}get consumedGas(){return Bs.config({DECIMAL_PLACES:0,ROUNDING_MODE:Bs.ROUND_UP}),new Bs(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(g0({contents:this.operationResults}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(g0({contents:this.operationResults}),"paid_storage_size_diff"))}get storageSize(){return String(this.sumProp(g0({contents:this.operationResults}),"storage_size"))}get errors(){return v0({contents:this.operationResults})}}class p1 extends S0{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"transaction"===e.kind));return e?[e]:[]}get status(){const e=this.operationResults[0];return e?e.metadata.operation_result.status:"unknown"}get amount(){return new Us(this.params.amount)}get destination(){return this.params.destination}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}sumProp(e,t){return e.reduce(((e,r)=>t in r?Number(r[t])+e:e),0)}get consumedGas(){return Us.config({DECIMAL_PLACES:0,ROUNDING_MODE:Us.ROUND_UP}),new Us(this.consumedMilliGas).dividedBy(1e3).toString()}get consumedMilliGas(){return String(this.sumProp(g0({contents:this.operationResults}),"consumed_milligas"))}get storageDiff(){return String(this.sumProp(g0({contents:this.operationResults}),"paid_storage_size_diff"))}get storageSize(){return String(this.sumProp(g0({contents:this.operationResults}),"storage_size"))}get errors(){return v0({contents:this.operationResults})}}class m1 extends S0{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"ballot"===e.kind));return e||void 0}get period(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.period}get proposal(){return this.params.proposal}get ballot(){return this.params.ballot}}class g1 extends S0{constructor(e,t,r,n,i){super(e,r,n,i),this.params=t}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"drain_delegate"===e.kind)),t=e&&e.metadata&&e.metadata.balance_updates;return t||void 0}get consensusKey(){return this.params.consensus_key}get delegate(){return this.params.delegate}get destination(){return this.params.destination}}class v1 extends S0{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>e.kind===Aq.TRANSFER_TICKET)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedGas(){return Bs.config({DECIMAL_PLACES:0,ROUNDING_MODE:Bs.ROUND_UP}),this.consumedMilliGas?new Bs(this.consumedMilliGas).dividedBy(1e3).toString():void 0}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}}class y1 extends S0{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"increase_paid_storage"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get amount(){return this.params.amount}get destination(){return this.params.destination}}class b1 extends S0{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"proposals"===e.kind));return e||void 0}get proposals(){return this.params.proposals}get period(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.period}}class w1 extends S0{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"update_consensus_key"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get pk(){return this.params.pk}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class x1 extends S0{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>"smart_rollup_add_messages"===e.kind)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get message(){return this.params.message}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class _1 extends S0{constructor(e,t,r,n,i,o){super(e,n,i,o),this.params=t,this.source=r}get operationResults(){const e=Array.isArray(this.results)&&this.results.find((e=>e.kind===Aq.SMART_ROLLUP_ORIGINATE)),t=e&&e.metadata&&e.metadata.operation_result;return t||void 0}get status(){var e,t;return null!==(t=null===(e=this.operationResults)||void 0===e?void 0:e.status)&&void 0!==t?t:"unknown"}get fee(){return Number(this.params.fee)}get gasLimit(){return Number(this.params.gas_limit)}get storageLimit(){return Number(this.params.storage_limit)}get consumedMilliGas(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.consumed_milligas}get pvmKind(){return this.params.pvm_kind}get kernel(){return this.params.kernel}get originationProof(){return this.params.origination_proof}get errors(){var e;return null===(e=this.operationResults)||void 0===e?void 0:e.errors}}class S1 extends E0{constructor(e,t){super(e),this.estimator=t,this.contractProviderTypeSymbol=Symbol.for("taquito-contract-provider-type-symbol"),this.prepare=new X0(this.context)}getStorage(e,t){return gQ(this,void 0,void 0,(function*(){const r=sc(e);if(r!==Zs.VALID)throw new fs(e,hc(r));const n=yield this.context.readProvider.getScript(e,"head");let i;return t||(t=n),i=xZ.isSchema(t)?t:xZ.fromRPCResponse({script:t}),i.Execute(n.storage,G0(this))}))}getBigMapKey(e,t,r){return gQ(this,void 0,void 0,(function*(){const n=sc(e);if(n!==Zs.VALID)throw new fs(e,hc(n));let i;r||(r=(yield this.rpc.getContract(e)).script),i=xZ.isSchema(r)?r:xZ.fromRPCResponse({script:r});const o=i.EncodeBigMapKey(t),a=yield this.rpc.getBigMapKey(e,o);return i.ExecuteOnBigMapValue(a)}))}getBigMapKeyByID(e,t,r,n){return gQ(this,void 0,void 0,(function*(){const{key:i,type:o}=r.EncodeBigMapKey(t),{packed:a}=yield this.context.packer.packData({data:i,type:o}),s=function(e){return vc(Za().blake2b(_c(e),void 0,32),Ks.expr)}(a),c=n?yield this.context.readProvider.getBigMapValue({id:e.toString(),expr:s},n):yield this.context.readProvider.getBigMapValue({id:e.toString(),expr:s},"head");return r.ExecuteOnBigMapValue(c,G0(this))}))}getBigMapKeysByID(e,t,r,n,i=5){return gQ(this,void 0,void 0,(function*(){const o=yield this.getBlockForRequest(t,n),a=new zW;let s=0,c=[];for(;sthis.getBigMapValueOrUndefined(t,e,r,o)));c=[...c,...yield Promise.all(n)],s+=i}for(let e=0;ee.kind===Aq.ORIGINATION)),i=yield this.forge(r),{hash:o,context:a,forgedBytes:s,opResponse:c}=yield this.signAndInject(i);return new d1(o,n,s,c,a,this)}))}setDelegate(e){var t;return gQ(this,void 0,void 0,(function*(){const r=oc(e.source);if(e.source&&r!==Zs.VALID)throw new is(e.source,hc(r));const n=oc(null!==(t=e.delegate)&&void 0!==t?t:"");if(e.delegate&&n!==Zs.VALID)throw new is(e.delegate,hc(n));if(/kt1/i.test(e.source))throw new HQ(e.source);const i=yield this.signer.publicKeyHash(),o=e.source||i,a=yield this.estimate(e,this.estimator.setDelegate.bind(this.estimator)),s=yield this.prepare.delegation(Object.assign(Object.assign({},e),a)),c=s.opOb.contents.find((e=>e.kind===Aq.DELEGATION)),l=yield this.forge(s),{hash:u,context:d,forgedBytes:h,opResponse:f}=yield this.signAndInject(l);return new u1(u,c,o,h,f,d)}))}registerDelegate(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.estimate(e,this.estimator.registerDelegate.bind(this.estimator)),r=yield this.signer.publicKeyHash(),n=yield this.prepare.registerDelegate(Object.assign(Object.assign({},e),t)),i=n.opOb.contents.find((e=>e.kind===Aq.DELEGATION)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new u1(a,i,r,c,l,s)}))}transfer(e){var t;return gQ(this,void 0,void 0,(function*(){const r=oc(e.to);if(r!==Zs.VALID)throw new is(e.to,hc(r));const n=oc(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&n!==Zs.VALID)throw new is(e.source,hc(n));if(e.amount<0)throw new as(e.amount.toString());const i=yield this.signer.publicKeyHash(),o=yield this.estimate(e,this.estimator.transfer.bind(this.estimator)),a=e.source||i,s=yield this.prepare.transaction(Object.assign(Object.assign({},e),o)),c=s.opOb.contents.find((e=>e.kind===Aq.TRANSACTION)),l=yield this.forge(s),{hash:u,context:d,forgedBytes:h,opResponse:f}=yield this.signAndInject(l);return new p1(u,c,a,h,f,d)}))}transferTicket(e){var t,r;return gQ(this,void 0,void 0,(function*(){const n=oc(e.destination);if(n!==Zs.VALID)throw new is(e.destination,hc(n));const i=oc(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&i!==Zs.VALID)throw new is(e.source,hc(i));const o=yield this.signer.publicKeyHash(),a=null!==(r=e.source)&&void 0!==r?r:o,s=yield this.estimate(e,this.estimator.transferTicket.bind(this.estimator)),c=yield this.prepare.transferTicket(Object.assign(Object.assign({},e),s)),l=c.opOb.contents.find((e=>e.kind===Aq.TRANSFER_TICKET)),u=yield this.forge(c),{hash:d,context:h,forgedBytes:f,opResponse:p}=yield this.signAndInject(u);return new v1(d,l,a,f,p,h)}))}reveal(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimator.reveal(e);if(r){const n=yield this.estimate(e,(()=>gQ(this,void 0,void 0,(function*(){return r})))),i=yield this.prepare.reveal(Object.assign(Object.assign({},e),n)),o=i.opOb.contents.find((e=>e.kind===Aq.REVEAL)),a=yield this.forge(i),{hash:s,context:c,forgedBytes:l,opResponse:u}=yield this.signAndInject(a);return new f1(s,o,t,l,u,c)}throw new ZQ(`The publicKeyHash '${t}' has already been revealed.`)}))}registerGlobalConstant(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.registerGlobalConstant.bind(this.estimator)),n=yield this.prepare.registerGlobalConstant(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===Aq.REGISTER_GLOBAL_CONSTANT)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new h1(a,i,t,c,l,s)}))}increasePaidStorage(e){return gQ(this,void 0,void 0,(function*(){if(e.amount<0)throw new as(e.amount.toString());const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.increasePaidStorage.bind(this.estimator)),n=yield this.prepare.increasePaidStorage(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===Aq.INCREASE_PAID_STORAGE)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new y1(a,i,t,c,l,s)}))}drainDelegate(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.prepare.drainDelegate(e),r=t.opOb.contents.find((e=>e.kind===Aq.DRAIN_DELEGATE)),n=yield this.forge(t),{hash:i,context:o,forgedBytes:a,opResponse:s}=yield this.signAndInject(n);return new g1(i,r,a,s,o)}))}ballot(e){var t,r;return gQ(this,void 0,void 0,(function*(){const n=yield this.signer.publicKeyHash(),i=oc(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&i!==Zs.VALID)throw new is(e.source,hc(i));const o=null!==(r=e.source)&&void 0!==r?r:n,a=yield this.prepare.ballot(Object.assign(Object.assign({},e),{source:o})),s=a.opOb.contents.find((e=>e.kind===Aq.BALLOT)),c=yield this.forge(a),{hash:l,context:u,forgedBytes:d,opResponse:h}=yield this.signAndInject(c);return new m1(l,s,n,d,h,u)}))}proposals(e){var t,r;return gQ(this,void 0,void 0,(function*(){const n=yield this.signer.publicKeyHash(),i=oc(null!==(t=e.source)&&void 0!==t?t:"");if(e.source&&i!==Zs.VALID)throw new is(e.source,hc(i));const o=null!==(r=e.source)&&void 0!==r?r:n,a=yield this.prepare.proposals(Object.assign(Object.assign({},e),{source:o})),s=a.opOb.contents.find((e=>e.kind===Aq.PROPOSALS)),c=yield this.forge(a),{hash:l,context:u,forgedBytes:d,opResponse:h}=yield this.signAndInject(c);return new b1(l,s,n,d,h,u)}))}updateConsensusKey(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.updateConsensusKey.bind(this.estimator)),n=yield this.prepare.updateConsensusKey(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===Aq.UPDATE_CONSENSUS_KEY)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new w1(a,i,t,c,l,s)}))}smartRollupAddMessages(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.smartRollupAddMessages.bind(this.estimator)),n=yield this.prepare.smartRollupAddMessages(Object.assign(Object.assign({},e),r)),i=n.opOb.contents.find((e=>e.kind===Aq.SMART_ROLLUP_ADD_MESSAGES)),o=yield this.forge(n),{hash:a,context:s,forgedBytes:c,opResponse:l}=yield this.signAndInject(o);return new x1(a,i,t,c,l,s)}))}smartRollupOriginate(e){return gQ(this,void 0,void 0,(function*(){const t=yield this.signer.publicKeyHash(),r=yield this.estimate(e,this.estimator.smartRollupOriginate.bind(this.estimator)),n=yield this.rpc.getOriginationProof({kind:e.pvmKind,kernel:e.kernel}),i=Object.assign(Object.assign({},e),{originationProof:n}),o=yield this.prepare.smartRollupOriginate(Object.assign(Object.assign({},i),r)),a=o.opOb.contents.find((e=>e.kind===Aq.SMART_ROLLUP_ORIGINATE)),s=yield this.forge(o),{hash:c,context:l,forgedBytes:u,opResponse:d}=yield this.signAndInject(s);return new _1(c,a,t,u,d,l)}))}failingNoop(e){return gQ(this,void 0,void 0,(function*(){const t={kind:Aq.FAILING_NOOP,arbitrary:e.arbitrary},r=yield this.context.readProvider.getBlockHash(e.basedOnBlock),n=yield this.context.forger.forge({branch:r,contents:[t]}),{prefixSig:i}=yield this.signer.sign(n,new Uint8Array([3]));return{signature:i,bytes:n,signedContent:{branch:r,contents:[{kind:Aq.FAILING_NOOP,arbitrary:e.arbitrary}]}}}))}at(e,t=(e=>e)){return gQ(this,void 0,void 0,(function*(){const r=sc(e);if(r!==Zs.VALID)throw new fs(e,hc(r));const n=this.context.withExtensions().rpc,i=this.context.withExtensions().readProvider,o=yield i.getScript(e,"head"),a=yield i.getEntrypoints(e),s=new F0(e,o,this,this,a,n,i);return t(s,this.context)}))}batch(e){const t=new Q0(this.context,this.estimator);return Array.isArray(e)&&t.with(e),t}}class k1{constructor(e){this.context=e}getNextProto(){return gQ(this,void 0,void 0,(function*(){if(!this.context.proto){const e=yield this.context.readProvider.getNextProtocol("head");this.context.proto=e}return this.context.proto}))}parseScript(e){return gQ(this,void 0,void 0,(function*(){return new cY({protocol:yield this.getNextProto()}).parseScript(e)}))}parseMichelineExpression(e){return gQ(this,void 0,void 0,(function*(){return new cY({protocol:yield this.getNextProto()}).parseMichelineExpression(e)}))}parseJSON(e){return gQ(this,void 0,void 0,(function*(){return new cY({protocol:yield this.getNextProto()}).parseJSON(e)}))}prepareCodeOrigination(e){return gQ(this,void 0,void 0,(function*(){const t=e;if(t.code=yield this.formatCodeParam(e.code),e.init)t.init=yield this.formatInitParam(e.init);else if(e.storage){const r=t.code.find((e=>"prim"in e&&"storage"===e.prim));if(!(null===r||void 0===r?void 0:r.args))throw new VQ("The storage section is missing from the script",e.code);const n=new xZ(r.args[0]),i=yield this.findGlobalConstantsHashAndValue(n);if(0!==Object.keys(i).length){const n=new cY({expandGlobalConstant:i}).parseJSON(r.args[0]),o=new xZ(n);t.init=o.Encode(e.storage)}else t.init=n.Encode(e.storage);delete t.storage}return t}))}formatCodeParam(e){return gQ(this,void 0,void 0,(function*(){let t;if("string"===typeof e){const r=yield this.parseScript(e);if(null===r)throw new VQ("Unable to parse",e);t=r}else{const r=yield this.parseJSON(e),n=["parameter","storage","code"];t=r.sort(((e,t)=>n.indexOf(e.prim)-n.indexOf(t.prim)))}return t}))}formatInitParam(e){return gQ(this,void 0,void 0,(function*(){let t;if("string"===typeof e){const r=yield this.parseMichelineExpression(e);if(null===r)throw new qQ("Invalid init parameter",e);t=r}else t=yield this.parseJSON(e);return t}))}findGlobalConstantsHashAndValue(e){return gQ(this,void 0,void 0,(function*(){const t=e.findToken("constant"),r={};if(0!==t.length)for(const e of t){const t=e.tokenVal.args;if(t){const e=t[0];if(e.string){const t=e.string,n=yield this.context.globalConstantsProvider.getGlobalConstantByHash(t);Object.assign(r,{[t]:n})}}}return r}))}}class E1{constructor(e){this.context=e}packData(e){return gQ(this,void 0,void 0,(function*(){return this.context.rpc.packData(e)}))}}class A1 extends ts{constructor(){super(),this.name="UnconfiguredGlobalConstantsProviderError",this.message="No global constants provider has been configured. Please configure one by calling setGlobalConstantsProvider({globalConstantsProvider}) on your TezosToolkit instance."}}class P1{getGlobalConstantByHash(e){return gQ(this,void 0,void 0,(function*(){throw new A1}))}}class O1{constructor(e){this.rpc=e}getBalance(e,t){return gQ(this,void 0,void 0,(function*(){return this.rpc.getBalance(e,{block:String(t)})}))}getDelegate(e,t){return gQ(this,void 0,void 0,(function*(){return this.rpc.getDelegate(e,{block:String(t)})}))}getNextProtocol(e){return gQ(this,void 0,void 0,(function*(){return(yield this.rpc.getProtocols({block:String(e)})).next_protocol}))}getProtocolConstants(e){return gQ(this,void 0,void 0,(function*(){const{time_between_blocks:t,minimal_block_delay:r,hard_gas_limit_per_operation:n,hard_gas_limit_per_block:i,hard_storage_limit_per_operation:o,cost_per_byte:a,tx_rollup_origination_size:s,smart_rollup_origination_size:c}=yield this.rpc.getConstants({block:String(e)});return{time_between_blocks:t,minimal_block_delay:r,hard_gas_limit_per_operation:n,hard_gas_limit_per_block:i,hard_storage_limit_per_operation:o,cost_per_byte:a,tx_rollup_origination_size:s,smart_rollup_origination_size:c}}))}getScript(e,t){return gQ(this,void 0,void 0,(function*(){const{script:r}=yield this.rpc.getContract(e,{block:String(t)});return r}))}getStorage(e,t){return gQ(this,void 0,void 0,(function*(){return this.rpc.getStorage(e,{block:String(t)})}))}getBlockHash(e){return gQ(this,void 0,void 0,(function*(){const{hash:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getBlockLevel(e){return gQ(this,void 0,void 0,(function*(){const{level:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getCounter(e,t){return gQ(this,void 0,void 0,(function*(){const{counter:r}=yield this.rpc.getContract(e,{block:String(t)});return r||"0"}))}getBlockTimestamp(e){return gQ(this,void 0,void 0,(function*(){const{timestamp:t}=yield this.rpc.getBlockHeader({block:String(e)});return t}))}getBigMapValue(e,t){return gQ(this,void 0,void 0,(function*(){return this.rpc.getBigMapExpr(e.id,e.expr,{block:String(t)})}))}getSaplingDiffById(e,t){return gQ(this,void 0,void 0,(function*(){return this.rpc.getSaplingDiffById(e.id,{block:String(t)})}))}getSaplingDiffByContract(e,t){return gQ(this,void 0,void 0,(function*(){return this.rpc.getSaplingDiffByContract(e,{block:String(t)})}))}getEntrypoints(e){return gQ(this,void 0,void 0,(function*(){return this.rpc.getEntrypoints(e)}))}getChainId(){return gQ(this,void 0,void 0,(function*(){return this.rpc.getChainId()}))}isAccountRevealed(e,t){return gQ(this,void 0,void 0,(function*(){const r=yield this.rpc.getManagerKey(e,{block:String(t)});return r&&"object"===typeof r?!!r.key:!!r}))}getBlock(e){return gQ(this,void 0,void 0,(function*(){return this.rpc.getBlock({block:String(e)})}))}getLiveBlocks(e){return this.rpc.getLiveBlocks({block:String(e)})}}class T1 extends Qa{constructor(e){super(),this.type=e,this.name="UnsupportedEventError",this.message=`Unsupported event type "${e}" expecting one of the "data", "error", or "close".`}}class C1 extends Qa{constructor(e){super(),this.invalidExpression=e,this.name="InvalidFilterExpressionError",this.message="Invalid filter expression expecting the object to contain either and/or property"}}const j1=(e,t)=>"opHash"in t?((e,t)=>e.hash===t.opHash)(e,t):"source"in t?((e,t)=>{switch(e.kind){case"endorsement":return"metadata"in e&&e.metadata.delegate===t.source;case"activate_account":return"metadata"in e&&e.pkh===t.source;default:return"source"in e&&e.source===t.source}})(e,t):"kind"in t?((e,t)=>"kind"in e&&e.kind===t.kind)(e,t):"destination"in t&&((e,t)=>{switch(e.kind){case"delegation":return e.delegate===t.destination;case"origination":if("metadata"in e&&"operation_result"in e.metadata&&"originated_contracts"in e.metadata.operation_result&&Array.isArray(e.metadata.operation_result.originated_contracts))return e.metadata.operation_result.originated_contracts.some((e=>e===t.destination));break;case"transaction":return e.destination===t.destination;default:return!1}})(e,t),R1=(e,t)=>{const r=[];return Array.isArray(t)?r.push(...t):r.push(t),r.every((t=>"and"in t||"or"in t?((e,t)=>{if(Array.isArray(t.and))return t.and.every((t=>R1(e,t)));if(Array.isArray(t.or))return t.or.some((t=>R1(e,t)));throw new C1(t)})(e,t):j1(e,t)))};class I1{constructor(e,t=!1,r=kW()){var n;this.shouldRetry=t,this.operatorFunction=r,this.errorListeners=[],this.messageListeners=[],this.closeListeners=[],this.completed$=new iK,e.pipe((n=this.completed$,TK((function(e,t){bK(n).subscribe(CK(t,(function(){return t.complete()}),Bq)),!t.closed&&e.subscribe(t)}))),fW((e=>{this.call(this.messageListeners,e)}),(e=>{this.call(this.errorListeners,e)}),(()=>{this.call(this.closeListeners)})),this.shouldRetry?r:fW(),xW((()=>XK))).subscribe()}call(e,t){for(const n of e)try{n(t)}catch(r){console.error(r)}}remove(e,t){const r=e.indexOf(t);-1!==r&&e.splice(r,1)}on(e,t){switch(e){case"data":this.messageListeners.push(t);break;case"error":this.errorListeners.push(t);break;case"close":this.closeListeners.push(t);break;default:throw new T1(e)}}off(e,t){switch(e){case"data":this.remove(this.messageListeners,t);break;case"error":this.remove(this.errorListeners,t);break;case"close":this.remove(this.closeListeners,t);break;default:throw new T1(e)}}close(){this.completed$.next()}}const M1={shouldObservableSubscriptionRetry:!1,observableSubscriptionRetryFunction:kW()},L1=e=>dW((t=>new tK((r=>{for(const s of t.operations)for(const c of s)for(const s of c.contents){const l=s.metadata.internal_operation_results;if(l)for(const s of l)n=s,i=null===e||void 0===e?void 0:e.address,o=null===e||void 0===e?void 0:e.tag,a=null===e||void 0===e?void 0:e.excludeFailedOperations,"event"!==n.kind||o&&n.tag!==o||i&&n.source!==i||a&&"applied"!==n.result.status||r.next(Object.assign({opHash:c.hash,blockHash:t.hash,level:t.header.level},s))}var n,i,o,a;r.complete()}))));class N1{constructor(e,t={}){this.context=e,this._config$=new cK(Object.assign(Object.assign({},M1),t)),this.timer$=this._config$.pipe(EW("pollingIntervalMilliseconds"),sW((e=>e?aW(0,e):NK(this.getConfirmationPollingInterval()).pipe(sW((e=>aW(0,e))))))),this.newBlock$=this.timer$.pipe(sW((()=>(e=>NK(e.rpc.getBlock()).pipe(wW()))(this.context))),function(e,t){return _W((function(r,n){return t?t(r[e],n[e]):r[e]===n[e]}))}("hash"),CW(),AW())}get config(){return this._config$.getValue()}getConfirmationPollingInterval(){return gQ(this,void 0,void 0,(function*(){if(!this.config.pollingIntervalMilliseconds){const t=5e3,r=1e3;try{const e=yield this.context.readProvider.getProtocolConstants("head"),n=(e.minimal_block_delay?e.minimal_block_delay.multipliedBy(1e3):e.time_between_blocks?e.time_between_blocks[0].multipliedBy(1e3):new Us(t)).dividedBy(3);this.config.pollingIntervalMilliseconds=0===n.toNumber()?r:n.toNumber()}catch(e){return t}}return this.config.pollingIntervalMilliseconds}))}subscribeBlock(e){return new I1(this.newBlock$,this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribe(e){return new I1(this.newBlock$.pipe(EW("hash")),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribeOperation(e){return new I1(this.newBlock$.pipe((e=>dW((t=>new tK((r=>{for(const n of t.operations)for(const t of n)for(const n of t.contents)R1(Object.assign({hash:t.hash},n),e)&&r.next(Object.assign({hash:t.hash},n));r.complete()})))))(e)),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}subscribeEvent(e){return new I1(this.newBlock$.pipe(L1(e)),this.config.shouldObservableSubscriptionRetry,this.config.observableSubscriptionRetryFunction)}}class D1{constructor(e){this.context=e}getNextProto(){return gQ(this,void 0,void 0,(function*(){if(!this.context.proto){const e=yield this.context.readProvider.getNextProtocol("head");this.context.proto=e}return this.context.proto}))}forge({branch:e,contents:t}){return gQ(this,void 0,void 0,(function*(){return new pQ(yield this.getNextProto()).forge({branch:e,contents:t})}))}}const z1={defaultConfirmationCount:1,confirmationPollingTimeoutSecond:180};class B1{constructor(e,t=new xQ,r,n=new cK(Object.assign({},z1)),i,o,a,s,c,l,u,d){this._rpc=e,this._signer=t,this._proto=r,this._config=n,this.providerDecorator=[],this.tz=new o1(this),this.estimate=new l1(this),this.contract=new S1(this,this.estimate),this.prepare=new X0(this),this.batch=new e1(this,this.estimate),this.wallet=new P0(this),this.withExtensions=()=>{let e=this.clone();return this.providerDecorator.forEach((t=>{e=t(e)})),e},"string"===typeof this._rpc?this._rpcClient=new Pq(this._rpc):this._rpcClient=this._rpc,this._forger=i||new D1(this),this._injector=o||new bQ(this),this.operationFactory=new i1(this),this._walletProvider=s||new M0(this),this._parser=c||new k1(this),this._packer=a||new E1(this),this._globalConstantsProvider=l||new P1,this._readProvider=u||new O1(this._rpcClient),this._stream=d||new N1(this)}get config(){return this._config.getValue()}set config(e){this._config.next(Object.assign({},e))}setPartialConfig(e){this._config.next(Object.assign(Object.assign({},this._config.getValue()),e))}get rpc(){return this._rpcClient}set rpc(e){this._rpcClient=e}get injector(){return this._injector}set injector(e){this._injector=e}get forger(){return this._forger}set forger(e){this._forger=e}get signer(){return this._signer}set signer(e){this._signer=e}get walletProvider(){return this._walletProvider}set walletProvider(e){this._walletProvider=e}set proto(e){this._proto=e}get proto(){return this._proto}get parser(){return this._parser}set parser(e){this._parser=e}get packer(){return this._packer}set packer(e){this._packer=e}get globalConstantsProvider(){return this._globalConstantsProvider}set globalConstantsProvider(e){this._globalConstantsProvider=e}get readProvider(){return this._readProvider}set readProvider(e){this._readProvider=e}get stream(){return this._stream}set stream(e){this._stream=e}isAnyProtocolActive(e=[]){return gQ(this,void 0,void 0,(function*(){if(this._proto)return e.includes(this._proto);{const t=yield this.readProvider.getNextProtocol("head");return e.includes(t)}}))}isAnySignerConfigured(){return!(this.signer instanceof xQ)}clone(){return new B1(this.rpc,this.signer,this.proto,this._config,this.forger,this._injector,this.packer,this._walletProvider,this._parser,this._globalConstantsProvider,this._readProvider,this._stream)}registerProviderDecorator(e){this.providerDecorator.push(e)}}const U1={commitHash:"ff6c3b619e314a09bb0aa65d711ef9eaf81a0ee9",version:"17.5.0"};class F1{constructor(e){this._rpc=e,this._options={},this.format=gc,"string"===typeof this._rpc?this._rpcClient=new Pq(this._rpc):this._rpcClient=this._rpc,this._context=new B1(e),this._wallet=new P0(this._context),this.setProvider({rpc:this._rpcClient}),this.batch=this._context.batch.batch.bind(this._context.batch)}setProvider({rpc:e,stream:t,signer:r,protocol:n,config:i,forger:o,wallet:a,packer:s,globalConstantsProvider:c,readProvider:l,parserProvider:u,injectorProvider:d}){this.setRpcProvider(e),this.setStreamProvider(t),this.setSignerProvider(r),this.setForgerProvider(o),this.setWalletProvider(a),this.setPackerProvider(s),this.setGlobalConstantsProvider(c),this.setReadProvider(l),this.setParserProvider(u),this.setInjectorProvider(d),this._context.proto=n,i&&this._context.setPartialConfig(i)}setSignerProvider(e){this._options.signer||"undefined"!==typeof e?"undefined"!==typeof e&&(this._context.signer=e,this._options.signer=e):(this._context.signer=new xQ,this._options.signer=e)}setRpcProvider(e){"string"===typeof e?this._rpcClient=new Pq(e):void 0===e||(this._rpcClient=e),this._options.rpc=this._rpcClient,this._context.rpc=this._rpcClient}setForgerProvider(e){if("undefined"!==typeof e)this._options.forger=e,this._context.forger=e;else if(void 0===this._options.forger){const e=this.getFactory(D1)();this._options.forger=e,this._context.forger=e}}setStreamProvider(e){if("string"===typeof e){const t=new N1(new B1(new Pq(e)));this._options.stream=t,this._context.stream=t}else if("undefined"!==typeof e)this._options.stream=e,this._context.stream=e;else if(void 0===this._options.stream){const e=this.getFactory(N1)();this._options.stream=e,this._context.stream=e}}setWalletProvider(e){if(this._options.wallet||"undefined"!==typeof e)"undefined"!==typeof e&&(this._options.wallet=e,this._context.walletProvider=e);else{const e=this.getFactory(M0)();this._options.wallet=e,this._context.walletProvider=e}}setPackerProvider(e){if(this._options.packer||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.packer=e,this._options.packer=e);else{const e=this.getFactory(E1)();this._context.packer=e,this._options.packer=e}}setGlobalConstantsProvider(e){if(this._options.globalConstantsProvider||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.globalConstantsProvider=e,this._options.globalConstantsProvider=e);else{const e=new P1;this._context.globalConstantsProvider=e,this._options.globalConstantsProvider=e}}setReadProvider(e){const t=e||new O1(this._context.rpc);this._options.readProvider=t,this._context.readProvider=t}setParserProvider(e){if(this._options.parserProvider||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.parser=e,this._options.parserProvider=e);else{const e=new k1(this._context);this._context.parser=e,this._options.parserProvider=e}}setInjectorProvider(e){if(this._options.injectorProvider||"undefined"!==typeof e)"undefined"!==typeof e&&(this._context.injector=e,this._options.injectorProvider=e);else{const e=new bQ(this._context);this._context.injector=e,this._options.injectorProvider=e}}get tz(){return this._context.tz}get contract(){return this._context.contract}get prepare(){return this._context.prepare}get wallet(){return this._wallet}get operation(){return this._context.operationFactory}get estimate(){return this._context.estimate}get stream(){return this._context.stream}get rpc(){return this._context.rpc}get signer(){return this._context.signer}get globalConstants(){return this._context.globalConstantsProvider}addExtension(e){Array.isArray(e)?e.forEach((e=>e.configureContext(this._context))):e.configureContext(this._context)}getFactory(e){return(...t)=>new e(this._context,...t)}getVersionInfo(){return U1}}class $1{constructor(e,t){this.pk=void 0,this.pkh=void 0,this.pk=e,this.pkh=t}async publicKey(){return this.pk}async publicKeyHash(){return this.pkh}async sign(){throw new Error("`sign` method not available")}async secretKey(){throw new Error("empty secret key")}}const H1={args:[{args:[{annots:["%from_"],prim:"address"},{annots:["%txs"],args:[{args:[{annots:["%to_"],prim:"address"},{args:[{annots:["%token_id"],prim:"nat"},{annots:["%amount"],prim:"nat"}],prim:"pair"}],prim:"pair"}],prim:"list"}],prim:"pair"}],prim:"list"},V1={args:[{annots:[":from"],prim:"address"},{args:[{annots:[":to"],prim:"address"},{annots:[":value"],prim:"nat"}],prim:"pair"}],prim:"pair"},q1=(e,t,r)=>[...K1,{prim:"PUSH",args:[{prim:"address"},{string:e.contract.pkh+"%"+r.entrypoint}]},{prim:"CONTRACT",args:[t]},[{prim:"IF_NONE",args:[[{prim:"UNIT"},{prim:"FAILWITH"}],[]]}],{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"PUSH",args:[t,r.value]},{prim:"TRANSFER_TOKENS"},{prim:"CONS"}],K1=[{prim:"DROP"},{prim:"NIL",args:[{prim:"operation"}]}],W1=e=>(0,Va.isEqual)(e.slice(0,2),K1)?e.slice(2):e,G1=e=>{const t=e.map((e=>(e=>{switch(e.type){case"tez":switch(e.recipient.type){case"implicit":return V0(e.recipient.pkh,Number(e.amount));case"contract":return q0(e.recipient.pkh,Number(e.amount))}case"fa1.2":return q1(e,V1,n2(e));case"fa2":return q1(e,H1,i2(e));case"delegation":return $0(e.recipient.pkh);case"undelegation":return H0();case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}})(e))).flatMap(W1);return[...K1,...t]},Z1=(e,t,r)=>X1(e,t,{int:r}),Y1=(e,t)=>{const r=G1(t);return X1(e,"propose",r)},X1=(e,t,r,n="0")=>({type:"contract_call",contract:e,entrypoint:t,args:r,amount:n}),J1=async(e,t)=>{try{const r=`${t.tzktApiUrl}/v1/accounts/${e}`,{data:{type:n}}=await dj.get(r);return"empty"!==n}catch(r){throw new Error(`Error fetching account from tzkt ${r.message}`)}},Q1=async e=>{const t=(new TextEncoder).encode(e),r=await crypto.subtle.digest("SHA-256",t),n=Array.from(new Uint8Array(r)).map((e=>e.toString(16).padStart(2,"0"))).join("").slice(0,8);return n},e2=async e=>{switch(e.type){case"social":case"mnemonic":case"secret_key":return new RH(e.secretKey);case"ledger":{const t=await qV.list();for(let e=0;e{switch(e){case"ed25519":return tq.ED25519;case"secp256k1":return tq.SECP256K1;case"p256":return tq.P256;case"bip25519":throw new Error("bip25519 is not supported in Tezos")}})(e.account.curve))}case"fake":return new $1(e.signer.pk,e.signer.address.pkh)}},t2=async e=>{const t=new F1(e.network.rpcUrl),r=await e2(e);return t.setSignerProvider(r),t},r2=async e=>{const t=new RH(e);return{pk:await t.publicKey(),pkh:await t.publicKeyHash()}},n2=({sender:e,recipient:t,amount:r})=>({entrypoint:"transfer",value:{prim:"Pair",args:[{string:e.pkh},{prim:"Pair",args:[{string:t.pkh},{int:r}]}]}}),i2=({sender:e,recipient:t,tokenId:r,amount:n})=>({entrypoint:"transfer",value:[{prim:"Pair",args:[{string:e.pkh},[{prim:"Pair",args:[{string:t.pkh},{prim:"Pair",args:[{int:r},{int:n}]}]}]]}]}),o2=e=>{switch(e.type){case"tez":return{kind:Aq.TRANSACTION,to:e.recipient.pkh,amount:parseInt(e.amount),mutez:!0};case"contract_call":return{kind:Aq.TRANSACTION,to:e.contract.pkh,amount:parseInt(e.amount),mutez:!0,parameter:{entrypoint:e.entrypoint,value:e.args}};case"delegation":return{kind:Aq.DELEGATION,source:e.sender.pkh,delegate:e.recipient.pkh};case"undelegation":return{kind:Aq.DELEGATION,source:e.sender.pkh,delegate:void 0};case"fa1.2":return{kind:Aq.TRANSACTION,amount:0,to:e.contract.pkh,parameter:n2(e)};case"fa2":return{kind:Aq.TRANSACTION,amount:0,to:e.contract.pkh,parameter:i2(e)};case"contract_origination":return{kind:Aq.ORIGINATION,...e}}},a2=({type:e,operations:t,sender:r})=>("implicit"===e?t:[Y1(r.address,t)]).map(o2),s2=a2,c2=async(e,t)=>{const r=await t2({type:"fake",signer:e.signer,network:t});try{const t=await r.estimate.batch(a2(e));return n=t.map((e=>Math.max(e.suggestedFeeMutez,e.totalCost).toString())),n.reduce(((e,t)=>e.plus(t)),new Us(0))}catch(Ele){if(!await J1(e.signer.address.pkh,t))throw new Error(`Signer address is not revealed on the ${t.name}.`);throw new Error(l2(Ele))}var n},l2=e=>{let t="";return e.message.includes("subtraction_underflow")?t="Insufficient balance, please make sure you have enough funds.":e.message.includes("contract.non_existing_contract")&&(t="Contract does not exist, please check if the correct network is selected."),t||e};class u2{constructor(e){this.queue=void 0,this.maxConcurrent=void 0,this.count=void 0,this.queue=[],this.maxConcurrent=e,this.count=0}get canAcquire(){return this.countthis.queue.push(e)))}release(){const e=this.queue.shift();e?setTimeout(e,0):this.count--}}const d2="_default";const h2=[encodeURIComponent,encodeURIComponent];encodeURIComponent,encodeURI;function f2(e,t=","){return(r,...n)=>r.reduce(((r,i,o)=>`${r}${i}${((r,n)=>{const i=e[n%e.length];if("undefined"===typeof r)return"";if("object"===typeof r)return Array.isArray(r)?r.map(i).join(t):Object.entries(r).reduce(((e,t)=>[...e,...t]),[]).map(i).join(t);return i(String(r))})(n[o],o)}`),"")}function p2(e=","){return(t,r=h2)=>Object.entries(t).filter((([,e])=>void 0!==e)).map((([t,n])=>f2(r,e)`${t}=${n}`)).join("&")}function m2(...e){const t=e.filter(Boolean).join("&");return t&&`?${t}`}function g2(e,t=h2){const r=f2(t);return Object.entries(e).filter((([,e])=>void 0!==e)).map((([e,n])=>Array.isArray(n)?n.map((t=>r`${e}=${t}`)).join("&"):"object"===typeof n?g2(n,t):r`${e}=${n}`)).join("&")}const v2=p2();p2("|"),p2("%20");const y2=[200,201,202,204];async function b2(e){const t=await e;if(y2.some((e=>e==t.status)))return t.data;throw new w2(t.status,t.data)}class w2 extends Error{status;data;constructor(e,t){super(`Error: ${e}`),this.status=e,this.data=t}}const x2={jsonParameter:(e,t)=>{if(!t)return{};const r={};return Object.entries(t).forEach((([t,n])=>{if(!(n instanceof Object))throw new Error(`Expected ${e} value to be object, received ${typeof n}`);const{jsonPath:i,jsonValue:o}=n;if(void 0===o||null===o)throw new Error(`Expected jsonValue in ${e} -> ${t}, found: ${o}`);const a=[e,i,t].filter((e=>void 0!==e)).join(".");r[a]=o})),r},queryParameter:(e,t)=>{if(!t)return{};const r={};return Object.entries(t).forEach((([t,n])=>{r[`${e}.${t}`]=n})),r},anyofParameter:(e,t)=>{if(!t)return{};const{fields:r}=t;if(!(t=>{if(!Array.isArray(t))throw new Error(`Expected ${e} fields to be Array. Received ${typeof t}.`);return t.forEach((t=>{if("string"!==typeof t)throw new Error(`Expected ${e} fields to be strings. Received ${typeof t}`)})),!0})(r))return{};const n={},i=r.join(".");if(t.value){n[`${e}.${i}`]=t.value}for(const o of["in","eq","null"])if(t[o]){return n[`${e}.${i}.${o}`]=Array.isArray(t[o])?t[o].join(","):t[o],n}return n}},_2=x2,S2=function(e){async function t(e,t){const n=await r(e,t);let i;try{i=await n.text()}catch(Ele){}return{status:n.status,headers:n.headers,contentType:n.headers.get("content-type"),data:i}}async function r(t,r={}){const{baseUrl:n,headers:i,fetch:o,...a}={...e,...r},s=function(...e){return e.filter(Boolean).map(((e,t)=>0===t?e:e.replace(/^\/+/,""))).map(((e,t,r)=>t===r.length-1?e:e.replace(/\/+$/,""))).join("/")}(n,t);var c;return await(o||fetch)(s,{...a,headers:(c={...e.headers,...i},c&&JSON.parse(JSON.stringify(c)))})}return{ok:b2,fetchText:t,fetchJson:async function(e,r={}){const{status:n,headers:i,contentType:o,data:a}=await t(e,{...r,headers:{Accept:"application/json",...r.headers}});return!!o&&o.includes("json")?{status:n,headers:i,data:a?JSON.parse(a):null}:{status:n,headers:i,data:a}},fetchBlob:async function(e,t={}){const n=await r(e,t);let i;try{i=await n.blob()}catch(Ele){}return{status:n.status,headers:n.headers,data:i}},json:({body:e,headers:t,...r})=>({...r,...null!=e&&{body:JSON.stringify(e)},headers:{...t,"Content-Type":"application/json"}}),form:({body:e,headers:t,...r})=>({...r,...null!=e&&{body:v2(e)},headers:{...t,"Content-Type":"application/x-www-form-urlencoded"}}),multipart({body:t,...r}){if(null==t)return r;const n=new(e.formDataConstructor||r.formDataConstructor||FormData);return Object.entries(t).forEach((([e,t])=>{n.append(e,t)})),{...r,body:n}}}}({baseUrl:"https://api.tzkt.io"});function k2({id:e,level:t,timestamp:r,tokenId:n,tokenContract:i,tokenTokenId:o,tokenStandard:a,tokenMetadata:s,tokenHasFilters:c,anyof:l,$from:u,to:d,amount:h,transactionId:f,originationId:p,migrationId:m,indexedAt:g,sort:v,offset:y,limit:b,select:w}={},x){return S2.ok(S2.fetchJson(`/v1/tokens/transfers${m2(g2({"token.HasFilters":c,limit:b,..._2.queryParameter("id",e),..._2.queryParameter("level",t),..._2.queryParameter("timestamp",r),..._2.queryParameter("token.id",n),..._2.queryParameter("token.contract",i),..._2.queryParameter("token.tokenId",o),..._2.queryParameter("token.standard",a),..._2.jsonParameter("token.metadata",s),..._2.anyofParameter("anyof",l),..._2.queryParameter("from",u),..._2.queryParameter("to",d),..._2.queryParameter("amount",h),..._2.queryParameter("transactionId",f),..._2.queryParameter("originationId",p),..._2.queryParameter("migrationId",m),..._2.queryParameter("indexedAt",g),..._2.queryParameter("sort",v),..._2.queryParameter("offset",y),..._2.queryParameter("select",w)}))}`,{...x}))}var E2=r(7786),A2=r.n(E2);const P2=new class{constructor(e=1){this.semaphoreInstances=void 0,this.maxConcurrent=void 0,this.semaphoreInstances={},this.maxConcurrent=e}hasSemaphoreInstance(e=d2){return Boolean(this.semaphoreInstances[e])}getSemaphoreInstance(e=d2){return this.hasSemaphoreInstance(e)||(this.semaphoreInstances[e]=new u2(this.maxConcurrent)),this.semaphoreInstances[e]}tidy(e=d2){this.hasSemaphoreInstance(e)&&0==this.getSemaphoreInstance(e).count&&delete this.semaphoreInstances[e]}canAcquire(e=d2){return this.getSemaphoreInstance(e).canAcquire}acquire(e=d2){return this.getSemaphoreInstance(e).acquire()}release(e=d2){this.getSemaphoreInstance(e).release(),this.tidy(e)}count(e=d2){return this.hasSemaphoreInstance(e)?this.getSemaphoreInstance(e).count:0}hasTasks(e=d2){return this.count(e)>0}async request(e,t=d2){try{return await this.acquire(t),await e()}finally{this.release(t)}}async requestIfAvailable(e,t=d2){return this.canAcquire(t)?this.request(e,t):null}}(10),O2=e=>P2.acquire().then((()=>A2()(e,{retries:3,minTimeout:100}))).finally((()=>P2.release())),T2=async(e,t)=>O2((()=>function({id:e,address:t,$type:r,kind:n,delegate:i,balance:o,staked:a,lastActivity:s,select:c,sort:l,offset:u,limit:d}={},h){return S2.ok(S2.fetchJson(`/v1/accounts${m2(g2({limit:d,..._2.queryParameter("id",e),..._2.queryParameter("address",t),..._2.queryParameter("type",r),..._2.queryParameter("kind",n),..._2.queryParameter("delegate",i),..._2.queryParameter("balance",o),..._2.queryParameter("staked",a),..._2.queryParameter("lastActivity",s),..._2.queryParameter("select",c),..._2.queryParameter("sort",l),..._2.queryParameter("offset",u)}))}`,{...h}))}({address:{in:[e.join(",")]},select:{fields:["address,balance,delegationLevel"]}},{baseUrl:t.tzktApiUrl}))),C2=async(e,t)=>O2((()=>function({id:e,account:t,tokenId:r,tokenContract:n,tokenTokenId:i,tokenStandard:o,tokenMetadata:a,tokenHasFilters:s,balance:c,firstLevel:l,firstTime:u,lastLevel:d,lastTime:h,indexedAt:f,sort:p,offset:m,limit:g,select:v}={},y){return S2.ok(S2.fetchJson(`/v1/tokens/balances${m2(g2({"token.HasFilters":s,limit:g,..._2.queryParameter("id",e),..._2.queryParameter("account",t),..._2.queryParameter("token.id",r),..._2.queryParameter("token.contract",n),..._2.queryParameter("token.tokenId",i),..._2.queryParameter("token.standard",o),..._2.jsonParameter("token.metadata",a),..._2.queryParameter("balance",c),..._2.queryParameter("firstLevel",l),..._2.queryParameter("firstTime",u),..._2.queryParameter("lastLevel",d),..._2.queryParameter("lastTime",h),..._2.queryParameter("indexedAt",f),..._2.queryParameter("sort",p),..._2.queryParameter("offset",m),..._2.queryParameter("select",v)}))}`,{...y}))}({account:{in:[e.join(",")]},balance:{gt:"0"},limit:1e4},{baseUrl:t.tzktApiUrl}))),j2=async(e,t,r)=>O2((()=>function({anyof:e,initiator:t,sender:r,prevDelegate:n,newDelegate:i,level:o,timestamp:a,senderCodeHash:s,status:c,select:l,sort:u,offset:d,limit:h,quote:f}={},p){return S2.ok(S2.fetchJson(`/v1/operations/delegations${m2(g2({limit:h,quote:f,..._2.anyofParameter("anyof",e),..._2.queryParameter("initiator",t),..._2.queryParameter("sender",r),..._2.queryParameter("prevDelegate",n),..._2.queryParameter("newDelegate",i),..._2.queryParameter("level",o),..._2.queryParameter("timestamp",a),..._2.queryParameter("senderCodeHash",s),..._2.queryParameter("status",c),..._2.queryParameter("select",l),..._2.queryParameter("sort",u),..._2.queryParameter("offset",d)}))}`,{...p}))}({sender:{in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl}))),R2=async(e,t,r)=>O2((()=>function({anyof:e,initiator:t,sender:r,target:n,amount:i,id:o,level:a,timestamp:s,senderCodeHash:c,targetCodeHash:l,codeHash:u,entrypoint:d,parameter:h,hasInternals:f,status:p,select:m,sort:g,offset:v,limit:y,micheline:b,quote:w}={},x){return S2.ok(S2.fetchJson(`/v1/operations/transactions${m2(g2({limit:y,micheline:b,quote:w,..._2.anyofParameter("anyof",e),..._2.queryParameter("initiator",t),..._2.queryParameter("sender",r),..._2.queryParameter("target",n),..._2.queryParameter("amount",i),..._2.queryParameter("id",o),..._2.queryParameter("level",a),..._2.queryParameter("timestamp",s),..._2.queryParameter("senderCodeHash",c),..._2.queryParameter("targetCodeHash",l),..._2.queryParameter("codeHash",u),..._2.queryParameter("entrypoint",d),..._2.jsonParameter("parameter",h),..._2.queryParameter("hasInternals",f),..._2.queryParameter("status",p),..._2.queryParameter("select",m),..._2.queryParameter("sort",g),..._2.queryParameter("offset",v)}))}`,{...x}))}({anyof:{fields:["sender","target","initiator"],in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl}))),I2=async(e,t,r)=>O2((()=>function({anyof:e,initiator:t,sender:r,contractManager:n,contractDelegate:i,originatedContract:o,id:a,typeHash:s,codeHash:c,level:l,timestamp:u,senderCodeHash:d,anyCodeHash:h,status:f,select:p,sort:m,offset:g,limit:v,micheline:y,quote:b}={},w){return S2.ok(S2.fetchJson(`/v1/operations/originations${m2(g2({limit:v,micheline:y,quote:b,..._2.anyofParameter("anyof",e),..._2.queryParameter("initiator",t),..._2.queryParameter("sender",r),..._2.queryParameter("contractManager",n),..._2.queryParameter("contractDelegate",i),..._2.queryParameter("originatedContract",o),..._2.queryParameter("id",a),..._2.queryParameter("typeHash",s),..._2.queryParameter("codeHash",c),..._2.queryParameter("level",l),..._2.queryParameter("timestamp",u),..._2.queryParameter("senderCodeHash",d),..._2.queryParameter("anyCodeHash",h),..._2.queryParameter("status",f),..._2.queryParameter("select",p),..._2.queryParameter("sort",m),..._2.queryParameter("offset",g)}))}`,{...w}))}({sender:{in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl}))),M2=async(e,t,r)=>O2((async()=>(await k2({anyof:{fields:["from","to"],in:[e.join(",")]},...r},{baseUrl:t.tzktApiUrl})).map((e=>({...e,type:"token_transfer"}))))),L2=async e=>O2((async()=>{return await(t={baseUrl:e.tzktApiUrl},S2.ok(S2.fetchJson("/v1/blocks/count",{...t})));var t})),N2=async e=>O2((()=>function({active:e,lastActivity:t,select:r,sort:n,offset:i,limit:o}={},a){return S2.ok(S2.fetchJson(`/v1/delegates${m2(g2({limit:o,..._2.queryParameter("active",e),..._2.queryParameter("lastActivity",t),..._2.queryParameter("select",r),..._2.queryParameter("sort",n),..._2.queryParameter("offset",i)}))}`,{...a}))}({sort:{desc:"stakingBalance"},active:{eq:!0},limit:1e4,select:{fields:["address,alias,stakingBalance"]}},{baseUrl:e.tzktApiUrl}))),D2=async(e,t)=>{const r=s2(e);return t.wallet.batch(r).send()},z2=async(e,t)=>{const r=RH.fromMnemonic({mnemonic:e,derivationPath:t,curve:"ed25519"});return{pkh:await r.publicKeyHash(),pk:await r.publicKey()}},B2=()=>{const e=KH();return async(t,r,n,i)=>{const o=await(async(e,t,r)=>{const n=[];let i=0,o=await z2(e,NH(t,i));do{n.push(o),i+=1,o=await z2(e,NH(t,i))}while(await J1(o.pkh,r));return n})(t,n,r),a=await Q1(t),s=e(i,o.length);return o.map((({pk:e,pkh:t},r)=>DH(e,t,NH(n,r),n,a,s[r])))}},U2=()=>{const e=CR((e=>e.accounts.seedPhrases)),t=CR((e=>e.accounts.secretKeys));return async(r,n)=>{if("secret_key"===r.type){const e=t[r.address.pkh];if(!e)throw new Error(`Missing secret key for account ${r.address.pkh}`);return Ic(e,n)}{const t=e[r.seedFingerPrint];if(!t)throw new Error(`Missing seedphrase for account ${r.address.pkh}`);return((e,t,r)=>RH.fromMnemonic({mnemonic:e,derivationPath:t,curve:r}).secretKey())(await Ic(t,n),r.derivationPath,r.curve)}}},F2=()=>CR((e=>e.networks.current)),$2=()=>CR((e=>e.networks.available)),H2=()=>{const e=$2(),t=pi();return r=>{const n=e.find((e=>e.name===r));n&&t(qd.setCurrent(n))}},V2=()=>{const e=F2(),t=CR((t=>t.tokens[e.name]));return(e,r)=>(0,Va.get)(t,[e,r])},q2=(e,t)=>e.length>t?e.slice(0,t-3)+"...":e,K2=e=>gc("tz","mutez",e),W2=e=>gc("mutez","tz",e),G2=e=>{const t=Us(W2(e)).toNumber();return`${new Intl.NumberFormat("en-US",{minimumFractionDigits:6,maximumFractionDigits:6}).format(t)} \ua729`},Z2=e=>`${e.slice(0,5)}...${e.slice(-5)}`,Y2=e=>{const t=CR((e=>e.assets.blockLevel));return null!==t?t-e>=2:null},X2=()=>{const e=e3(),t=CR((e=>e.assets.balances.tokens)),r=Object.keys(t);return(0,Va.fromPairs)(r.map((t=>[t,e(t)])))},J2=()=>{const e=V2(),t=CR((e=>e.assets.balances.tokens));return r=>{const n=t[r]||[];return(0,Va.compact)(n.map((({contract:t,tokenId:r,...n})=>{const i=e(t,r);return i&&{...i,...n}})))}},Q2=()=>{const e=(()=>{const e=J2();return t=>e(t).filter((e=>"fa1.2"===e.type))})(),t=(()=>{const e=J2();return t=>e(t).filter((e=>"fa2"===e.type))})();return r=>[...e(r),...t(r)]},e3=()=>{const e=J2();return t=>e(t).filter((e=>"nft"===e.type))},t3=()=>{const e=CR((e=>e.assets.conversionRate));return t=>null===e?null:new Bs(t).multipliedBy(e).decimalPlaces(2,Bs.ROUND_UP)},r3=()=>{const e=CR((e=>e.assets.balances.mutez)),t=t3(),r=(e=>{const t=(0,Va.compact)(Object.values(e));return 0===t.length?null:t.reduce(((e,t)=>e.plus(t)),new Us(0))})(e);if(null==r)return null;const n=t(W2(r));return{mutez:r.toFixed(),usd:n}},n3=()=>{const e=CR((e=>e.assets.balances.mutez));return t=>e[t]},i3=()=>CR((e=>e.assets.bakers)),o3=e=>{const t=a3(e),r=s3(e),n=c3(e);return t||r||n||{pkh:e.pkh,type:"unknown",label:null}},a3=({pkh:e})=>{const t=WH()(e);return t?{type:t.type,pkh:e,label:t.label}:null},s3=({pkh:e})=>{const t=(()=>{const e=i3();return t=>e.find((e=>e.address===t))})(),r=t(e);return r?{pkh:e,type:"baker",label:r.name}:null},c3=({pkh:e})=>{const t=UH()(e);return t?{pkh:e,type:"contact",label:t}:null},l3=({number:e,size:t="md"})=>{const r="md"===t?"md":"lg",n="md"===t?"sm":"md",{integer:i,decimal:o}=(e=>{const[t,r]=e.split(".");return{integer:t,decimal:r}})(e);return(0,ln.jsxs)(un,{alignItems:"end","data-testid":"pretty-number",children:[(0,ln.jsx)(Sn,{size:r,children:i}),o&&(0,ln.jsxs)(Sn,{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",size:n,children:[".",o]})]})},u3=({address:e,size:t,...r})=>{const n=n3()(e);if(!n)return null;const i=G2(n);return(0,ln.jsx)(fn,{overflow:"hidden",textAlign:"right","data-testid":"account-balance",...r,children:(0,ln.jsx)(l3,{number:i,size:t})})},d3=({address:e,...t})=>{const r=o3(e);return(0,ln.jsx)(Q$,{background:EP.white,hasArrow:!0,label:r.label,placement:"left",children:(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",width:"400px",padding:"9px 10px",background:EP.gray[800],borderRadius:"4px","data-testid":"address-tile",...t,children:[(0,ln.jsxs)(un,{alignItems:"center",children:[(0,ln.jsx)(sH,{addressKind:r}),"unknown"===r.type?(0,ln.jsx)(az,{marginLeft:"10px",color:EP.gray[300],size:"sm",children:e.pkh}):(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(fn,{overflow:"hidden",width:"102px",marginLeft:"12px",whiteSpace:"nowrap",children:(0,ln.jsx)(Sn,{overflow:"hidden",textOverflow:"ellipsis",size:"sm",children:r.label})}),(0,ln.jsx)(az,{width:"89px",marginLeft:"10px",color:EP.gray[300],size:"xs",children:Z2(r.pkh)})]})]}),(0,ln.jsx)(u3,{overflow:"hidden",textAlign:"right",address:e.pkh})]})})},h3=({contacts:e,onChange:t})=>0===e.length?null:(0,ln.jsx)(nF,{position:"absolute",zIndex:2,overflowY:"auto",width:"100%",maxHeight:300,marginTop:"8px",marginLeft:0,background:EP.gray[700],border:"1px solid",borderColor:EP.gray[500],borderRadius:"8px","data-testid":"suggestions-list",listStyleType:"none",children:e.map(((r,n)=>(0,ln.jsx)(fn,{children:(0,ln.jsx)(iF,{marginBottom:n===e.length-1?"5px":0,padding:"5px 15px 0 5px",onMouseDown:()=>{t(r.name)},children:(0,ln.jsx)(d3,{width:"370px",height:"40px",padding:"10px 8px 10px 5px",background:EP.gray[700],borderRadius:"4px",_hover:{background:EP.gray[500]},cursor:"pointer",address:qu(r.pkh)})})},r.pkh)))}),f3=(e,t)=>{if(""===e)return t;return t.filter((t=>t.name.toLowerCase().includes(e.trim().toLowerCase())))},p3=({contacts:e,isDisabled:t,isLoading:r=!1,allowUnknown:i,inputName:o,onUpdate:a,validate:s,label:c,keepValid:l,style:u,size:d})=>{const{register:h,setValue:f,formState:{defaultValues:p},getValues:m}=EB(),g=f,v=(0,n.useId)(),[y,b]=(0,n.useState)((()=>{var t;if(l||!p)return"";const r=(0,Va.get)(p,o);return r?(null===(t=e.find((e=>e.pkh===r)))||void 0===t?void 0:t.name)||r:""})),[w,x]=(0,n.useState)(!0),[_,S]=(0,n.useState)(f3("",e)),k=m(o),E=t=>{b(t),S(f3(t,e));const r=e.find((e=>e.name===t||e.pkh===t));let n;if(void 0!==r)n=r.pkh,x(!0);else if(i&&Ku(t))n=t;else{if(l)return;n=""}g(o,n,{shouldValidate:!0}),a&&a(n)};let A="raw_input";r?A="selected_tile":t?A="disabled_tile":k&&(A="selected_tile");const P=()=>{E(""),x(!1)};return(0,ln.jsxs)(fn,{"data-testid":`address-autocomplete-${o}`,children:[(0,ln.jsx)(UU,{htmlFor:v,children:c}),"disabled_tile"===A&&(0,ln.jsx)(d3,{address:qu(k)}),"selected_tile"===A&&(0,ln.jsx)(fn,{height:"48px",background:EP.gray[800],border:"1px solid",borderColor:EP.gray[500],borderRadius:"4px","data-testid":`selected-address-tile-${k}`,onClick:P,paddingY:0,children:(0,ln.jsxs)(dn,{justifyContent:"space-between",cursor:"pointer","data-testid":"clear-selected-button",children:[(0,ln.jsx)(d3,{width:"short"===d?"338px":"365px",paddingTop:"8px",background:"transparent",address:qu(k)}),l?(0,ln.jsx)(bj,{marginRight:"12px","data-testid":"chevron-icon"}):(0,ln.jsx)(m3,{marginRight:"14px"})]})}),"raw_input"===A&&(0,ln.jsxs)(qU,{children:[(0,ln.jsx)(GU,{...u,"aria-label":o,autoComplete:"off",id:v,onBlur:e=>{if(e.preventDefault(),x(!0),l&&k!==e.target.value)return E(k);E(e.target.value)},onChange:e=>E(e.target.value),onFocus:()=>x(!1),placeholder:"Enter address or contact name",value:y}),(0,ln.jsx)(JU,{children:y?(0,ln.jsx)(m3,{marginRight:"0px",onClick:P}):(0,ln.jsx)(bj,{"data-testid":"chevron-icon"})})]}),(0,ln.jsx)(GU,{...h(o,{required:"Invalid address or contact name",validate:s}),marginBottom:0,"data-testid":`real-address-input-${o}`,name:o,type:"hidden"}),!w&&(0,ln.jsx)(h3,{contacts:_,onChange:E})]})},m3=e=>(0,ln.jsx)(OR,{marginRight:"16px",stroke:EP.gray[450],cursor:"pointer","data-testid":"clear-input-button",...e}),g3=e=>{const t=Object.values(zH()),r=VH().map((e=>({name:e.label,pkh:e.address.pkh})));return(0,ln.jsx)(p3,{...e,contacts:t.concat(r)})},v3=e=>{const t=$H().map((e=>({name:e.label,pkh:e.address.pkh})));return(0,ln.jsx)(p3,{...e,contacts:t})},y3=e=>{const t=VH().map((e=>({name:e.label,pkh:e.address.pkh})));return(0,ln.jsx)(p3,{...e,contacts:t})},b3=e=>{const t=i3().map((e=>({name:e.name,pkh:e.address})));return(0,ln.jsx)(p3,{...e,contacts:t})},w3=e=>{const t=YH()(e.account).map((e=>({name:e.label,pkh:e.address.pkh})));return(0,ln.jsx)(p3,{allowUnknown:!1,contacts:t,isDisabled:1===t.length,...e})},x3=({request:e,onSuccess:t})=>{const r=(()=>{const e=pi();return(t,r,n)=>e(Id.actions.addConnection({dAppId:t,accountPkh:r,networkType:n}))})(),n=$H(),i=IU({mode:"onBlur"}),{getValues:o,formState:{errors:a,isValid:s}}=i;return(0,ln.jsxs)(nz,{children:[(0,ln.jsxs)(iz,{marginBottom:"24px",children:[(0,ln.jsx)(un,{alignItems:"center",justifyContent:"center",children:"Permission Request"}),(0,ln.jsxs)(az,{marginTop:"10px",color:EP.gray[400],textAlign:"center",size:"sm",children:[e.appMetadata.name," is requesting permission to sign this operation."]}),(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"center",marginTop:"10px",children:[(0,ln.jsx)(Sn,{marginRight:"4px",color:EP.gray[450],size:"sm",children:"Network:"}),(0,ln.jsx)(az,{color:EP.gray[400],size:"sm",children:e.network.type})]})]}),(0,ln.jsx)(sz,{}),(0,ln.jsxs)(cz,{"data-testid":"beacon-request-body",children:[e.appMetadata.icon&&(0,ln.jsxs)(un,{alignItems:"center",marginTop:"16px",padding:"15px",borderRadius:"4px",backgroundColor:EP.gray[800],children:[(0,ln.jsx)(uz,{width:"60px",marginRight:"12px",ratio:1,children:(0,ln.jsx)(yR,{borderRadius:"4px",src:e.appMetadata.icon})}),(0,ln.jsx)(Sn,{size:"sm",children:e.appMetadata.name})]}),(0,ln.jsx)(Lz,{marginTop:"16px",allowToggle:!0,children:(0,ln.jsxs)(Nz,{background:EP.gray[800],border:"none",borderRadius:"8px",children:[(0,ln.jsxs)(Dz,{children:[(0,ln.jsx)(Sn,{flex:"1",textAlign:"left",marginY:"10px",size:"md",children:"Request Payload"}),(0,ln.jsx)(zz,{})]}),(0,ln.jsx)(Hz,{children:(0,ln.jsx)(BU,{value:e})})]})}),(0,ln.jsx)(AB,{...i,children:(0,ln.jsxs)(Gz,{marginTop:"24px",isInvalid:!!a.address,children:[(0,ln.jsx)(v3,{allowUnknown:!1,inputName:"address",label:"Select Account"}),a.address&&(0,ln.jsx)(Jz,{children:a.address.message})]})})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(Nn,{width:"100%",isDisabled:!s,onClick:i=>(async()=>{const i=n.find((e=>e.address.pkh===o().address));if(!i)throw new Error("No account selected");const a={type:RM.PermissionResponse,network:{type:e.network.type},scopes:e.scopes,id:e.id,publicKey:i.pk,walletType:"implicit"};await Y7.respond(a),r(e.senderId,i.address.pkh,e.network.type),t()})(),size:"lg",children:"Grant"})})]})};var _3=g(((e,t)=>{const{icon:r,children:i,isRound:o,"aria-label":a,...s}=e,c=r||i,l=(0,n.isValidElement)(c)?(0,n.cloneElement)(c,{"aria-hidden":!0,focusable:!1}):null;return(0,ln.jsx)(Nn,{padding:"0",borderRadius:o?"full":void 0,ref:t,"aria-label":a,...s,children:l})}));function S3(e){return Jj({tag:"svg",attr:{version:"1.1",x:"0px",y:"0px",viewBox:"0 0 48 48",enableBackground:"new 0 0 48 48"},child:[{tag:"path",attr:{fill:"#FFC107",d:"M43.611,20.083H42V20H24v8h11.303c-1.649,4.657-6.08,8-11.303,8c-6.627,0-12-5.373-12-12\r\n\tc0-6.627,5.373-12,12-12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657C34.046,6.053,29.268,4,24,4C12.955,4,4,12.955,4,24\r\n\tc0,11.045,8.955,20,20,20c11.045,0,20-8.955,20-20C44,22.659,43.862,21.35,43.611,20.083z"}},{tag:"path",attr:{fill:"#FF3D00",d:"M6.306,14.691l6.571,4.819C14.655,15.108,18.961,12,24,12c3.059,0,5.842,1.154,7.961,3.039l5.657-5.657\r\n\tC34.046,6.053,29.268,4,24,4C16.318,4,9.656,8.337,6.306,14.691z"}},{tag:"path",attr:{fill:"#4CAF50",d:"M24,44c5.166,0,9.86-1.977,13.409-5.192l-6.19-5.238C29.211,35.091,26.715,36,24,36\r\n\tc-5.202,0-9.619-3.317-11.283-7.946l-6.522,5.025C9.505,39.556,16.227,44,24,44z"}},{tag:"path",attr:{fill:"#1976D2",d:"M43.611,20.083H42V20H24v8h11.303c-0.792,2.237-2.231,4.166-4.087,5.571\r\n\tc0.001-0.001,0.002-0.001,0.003-0.002l6.19,5.238C36.971,39.205,44,34,44,24C44,22.659,43.862,21.35,43.611,20.083z"}}]})(e)}function k3(e){return k3="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},k3(e)}function E3(e){var t=function(e,t){if("object"!==k3(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==k3(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===k3(t)?t:String(t)}function A3(e,t,r){return(t=E3(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}_3.displayName="IconButton";var P3=r(4579),O3=r.n(P3),T3=r(8634),C3=r.n(T3);function j3(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function R3(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{};const r={mode:"cors",headers:{}};(arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}).useAPIKey&&(r.headers=R3(R3({},r.headers),$3()));const n=O3()(r,t,{method:"GET"}),i=await F3(e,n);if(i.ok)return i.json();throw H3(i),i},q3=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const i={mode:"cors",headers:{"Content-Type":"application/json; charset=utf-8"}};n.useAPIKey&&(i.headers=R3(R3({},i.headers),$3()));const o=O3()(i,r,{method:"POST"});return n.isUrlEncodedData?(o.body=t,"application/json; charset=utf-8"===o.headers["Content-Type"]&&delete o.headers["Content-Type"]):o.body=JSON.stringify(t),((e,t)=>{const r=new Promise(((t,r)=>{const n=setTimeout((()=>{clearTimeout(n),r(new Error(`Timed out in ${e}ms`))}),e)}));return Promise.race([t,r])})(n.timeout||6e4,F3(e,o).then((e=>{if(n.logTracingHeader&&function(e){I3.info(`Request tracing with traceID=${e.headers.get("x-web3-correlation-id")}`)}(e),e.ok)return e.json();throw H3(e),e})))},K3=(e,t)=>({jsonrpc:"2.0",method:e,id:10,params:t});function W3(e,t){if(null==e)return{};var r,n,i=function(e,t){if(null==e)return{};var r,n,i={},o=Object.keys(e);for(n=0;n=0||(i[r]=e[r]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(i[r]=e[r])}return i}var G3=r(3521),Z3=r.n(G3);Promise.resolve(!1),Promise.resolve(!0);var Y3=Promise.resolve();function X3(e,t){return e||(e=0),new Promise((function(r){return setTimeout((function(){return r(t)}),e)}))}function J3(){return Math.random().toString(36).substring(2)}var Q3=0,e5=0;function t5(){var e=(new Date).getTime();return e===Q3?1e3*e+ ++e5:(Q3=e,e5=0,1e3*e)}var r5=C3().getLogger("broadcast-channel");r5.setLevel("error");const n5={create:function(e){var t={messagesCallback:null,bc:new BroadcastChannel(e),subFns:[]};return t.bc.onmessage=function(e){t.messagesCallback&&t.messagesCallback(e.data)},t},close:function(e){e.bc.close(),e.subFns=[]},onMessage:function(e,t){e.messagesCallback=t},postMessage:function(e,t){try{return e.bc.postMessage(t,!1),Y3}catch(Ele){return Promise.reject(Ele)}},canBeUsed:function(e){if("undefined"===typeof window)return!1;if(!e.support3PC)return!1;if("function"===typeof BroadcastChannel){if(BroadcastChannel._pubkey)throw new Error("BroadcastChannel: Do not overwrite window.BroadcastChannel with this module, this is not a polyfill");return!0}return!1},type:"native",averageResponseTime:function(){return 150},microSeconds:t5};var i5=function(){function e(e){this.ttl=e,this.map=new Map,this._to=!1}return e.prototype.has=function(e){return this.map.has(e)},e.prototype.add=function(e){var t=this;this.map.set(e,o5()),this._to||(this._to=!0,setTimeout((function(){t._to=!1,function(e){var t=o5()-e.ttl,r=e.map[Symbol.iterator]();for(;;){var n=r.next().value;if(!n)return;var i=n[0];if(!(n[1]0&&void 0!==arguments[0]?arguments[0]:{},t=JSON.parse(JSON.stringify(e));return"undefined"===typeof t.support3PC&&(t.support3PC=function(){if("undefined"===typeof navigator)return!1;var e=Z3().parse(navigator.userAgent);r5.info(JSON.stringify(e),"current browser info");var t=!0;return navigator.brave&&(t=!1),e.engine.name!==Z3().ENGINE_MAP.WebKit&&e.engine.name!==Z3().ENGINE_MAP.Gecko||(t=!1),t}()),"undefined"===typeof t.webWorkerSupport&&(t.webWorkerSupport=!0),t.idb||(t.idb={}),t.idb.ttl||(t.idb.ttl=45e3),t.idb.fallbackInterval||(t.idb.fallbackInterval=150),e.idb&&"function"===typeof e.idb.onclose&&(t.idb.onclose=e.idb.onclose),t.localstorage||(t.localstorage={}),t.localstorage.removeTimeout||(t.localstorage.removeTimeout=6e4),t.server||(t.server={}),t.server.url||(t.server.url="https://broadcast-server.tor.us"),t.server.removeTimeout||(t.server.removeTimeout=3e5),e.methods&&(t.methods=e.methods),t}var s5="pubkey.broadcast-channel-0-",c5="messages",l5={durability:"relaxed"};function u5(){if("undefined"!==typeof indexedDB)return indexedDB;if("undefined"!==typeof window){if("undefined"!==typeof window.mozIndexedDB)return window.mozIndexedDB;if("undefined"!==typeof window.webkitIndexedDB)return window.webkitIndexedDB;if("undefined"!==typeof window.msIndexedDB)return window.msIndexedDB}return!1}function d5(e){e.commit&&e.commit()}function h5(e,t){var r=e.transaction(c5,"readonly",l5),n=r.objectStore(c5),i=[],o=IDBKeyRange.bound(t+1,1/0);if(n.getAll){var a=n.getAll(o);return new Promise((function(e,t){a.onerror=function(e){return t(e)},a.onsuccess=function(t){e(t.target.result)}}))}return new Promise((function(e,a){var s=function(){try{return o=IDBKeyRange.bound(t+1,1/0),n.openCursor(o)}catch(e){return n.openCursor()}}();s.onerror=function(e){return a(e)},s.onsuccess=function(n){var o=n.target.result;o?o.value.ide.lastCursorId&&(e.lastCursorId=t.id),t})).filter((function(t){return function(e,t){return e.uuid!==t.uuid&&!t.eMIs.has(e.id)&&!(e.data.time{P5[A5[e]]=e}));const O5={type:"error",data:"parser error"},T5="function"===typeof Blob||"undefined"!==typeof Blob&&"[object BlobConstructor]"===Object.prototype.toString.call(Blob),C5="function"===typeof ArrayBuffer,j5=e=>"function"===typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer instanceof ArrayBuffer,R5=({type:e,data:t},r,n)=>T5&&t instanceof Blob?r?n(t):I5(t,n):C5&&(t instanceof ArrayBuffer||j5(t))?r?n(t):I5(new Blob([t]),n):n(A5[e]+(t||"")),I5=(e,t)=>{const r=new FileReader;return r.onload=function(){const e=r.result.split(",")[1];t("b"+(e||""))},r.readAsDataURL(e)};function M5(e){return e instanceof Uint8Array?e:e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}let L5;function N5(e,t){return T5&&e.data instanceof Blob?e.data.arrayBuffer().then(M5).then(t):C5&&(e.data instanceof ArrayBuffer||j5(e.data))?t(M5(e.data)):void R5(e,!1,(e=>{L5||(L5=new TextEncoder),t(L5.encode(e))}))}const D5="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",z5="undefined"===typeof Uint8Array?[]:new Uint8Array(256);for(let r=0;r<64;r++)z5[D5.charCodeAt(r)]=r;const B5="function"===typeof ArrayBuffer,U5=(e,t)=>{if("string"!==typeof e)return{type:"message",data:$5(e,t)};const r=e.charAt(0);if("b"===r)return{type:"message",data:F5(e.substring(1),t)};return P5[r]?e.length>1?{type:P5[r],data:e.substring(1)}:{type:P5[r]}:O5},F5=(e,t)=>{if(B5){const r=(e=>{let t,r,n,i,o,a=.75*e.length,s=e.length,c=0;"="===e[e.length-1]&&(a--,"="===e[e.length-2]&&a--);const l=new ArrayBuffer(a),u=new Uint8Array(l);for(t=0;t>4,u[c++]=(15&n)<<4|i>>2,u[c++]=(3&i)<<6|63&o;return l})(e);return $5(r,t)}return{base64:!0,data:e}},$5=(e,t)=>"blob"===t?e instanceof Blob?e:new Blob([e]):e instanceof ArrayBuffer?e:e.buffer,H5=String.fromCharCode(30);let V5;function q5(e){if(e)return function(e){for(var t in q5.prototype)e[t]=q5.prototype[t];return e}(e)}q5.prototype.on=q5.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},q5.prototype.once=function(e,t){function r(){this.off(e,r),t.apply(this,arguments)}return r.fn=t,this.on(e,r),this},q5.prototype.off=q5.prototype.removeListener=q5.prototype.removeAllListeners=q5.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var r,n=this._callbacks["$"+e];if(!n)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var i=0;i(e.hasOwnProperty(r)&&(t[r]=e[r]),t)),{})}const G5=K5.setTimeout,Z5=K5.clearTimeout;function Y5(e,t){t.useNativeTimers?(e.setTimeoutFn=G5.bind(K5),e.clearTimeoutFn=Z5.bind(K5)):(e.setTimeoutFn=K5.setTimeout.bind(K5),e.clearTimeoutFn=K5.clearTimeout.bind(K5))}class X5 extends Error{constructor(e,t,r){super(e),this.description=t,this.context=r,this.type="TransportError"}}class J5 extends q5{constructor(e){super(),this.writable=!1,Y5(this,e),this.opts=e,this.query=e.query,this.socket=e.socket}onError(e,t,r){return super.emitReserved("error",new X5(e,t,r)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return"opening"!==this.readyState&&"open"!==this.readyState||(this.doClose(),this.onClose()),this}send(e){"open"===this.readyState&&this.write(e)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(e){const t=U5(e,this.socket.binaryType);this.onPacket(t)}onPacket(e){super.emitReserved("packet",e)}onClose(e){this.readyState="closed",super.emitReserved("close",e)}pause(e){}createUri(e,t={}){return e+"://"+this._hostname()+this._port()+this.opts.path+this._query(t)}_hostname(){const e=this.opts.hostname;return-1===e.indexOf(":")?e:"["+e+"]"}_port(){return this.opts.port&&(this.opts.secure&&Number(443!==this.opts.port)||!this.opts.secure&&80!==Number(this.opts.port))?":"+this.opts.port:""}_query(e){const t=function(e){let t="";for(let r in e)e.hasOwnProperty(r)&&(t.length&&(t+="&"),t+=encodeURIComponent(r)+"="+encodeURIComponent(e[r]));return t}(e);return t.length?"?"+t:""}}const Q5="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),e6=64,t6={};let r6,n6=0,i6=0;function o6(e){let t="";do{t=Q5[e%e6]+t,e=Math.floor(e/e6)}while(e>0);return t}function a6(){const e=o6(+new Date);return e!==r6?(n6=0,r6=e):e+"."+o6(n6++)}for(;i6{var e;3===r.readyState&&(null===(e=this.opts.cookieJar)||void 0===e||e.parseCookies(r)),4===r.readyState&&(200===r.status||1223===r.status?this.onLoad():this.setTimeoutFn((()=>{this.onError("number"===typeof r.status?r.status:0)}),0))},r.send(this.data)}catch(n){return void this.setTimeoutFn((()=>{this.onError(n)}),0)}"undefined"!==typeof document&&(this.index=h6.requestsCount++,h6.requests[this.index]=this)}onError(e){this.emitReserved("error",e,this.xhr),this.cleanup(!0)}cleanup(e){if("undefined"!==typeof this.xhr&&null!==this.xhr){if(this.xhr.onreadystatechange=u6,e)try{this.xhr.abort()}catch(t){}"undefined"!==typeof document&&delete h6.requests[this.index],this.xhr=null}}onLoad(){const e=this.xhr.responseText;null!==e&&(this.emitReserved("data",e),this.emitReserved("success"),this.cleanup())}abort(){this.cleanup()}}if(h6.requestsCount=0,h6.requests={},"undefined"!==typeof document)if("function"===typeof attachEvent)attachEvent("onunload",f6);else if("function"===typeof addEventListener){addEventListener("onpagehide"in K5?"pagehide":"unload",f6,!1)}function f6(){for(let e in h6.requests)h6.requests.hasOwnProperty(e)&&h6.requests[e].abort()}const p6="function"===typeof Promise&&"function"===typeof Promise.resolve?e=>Promise.resolve().then(e):(e,t)=>t(e,0),m6=K5.WebSocket||K5.MozWebSocket;r(4872).Buffer;const g6="undefined"!==typeof navigator&&"string"===typeof navigator.product&&"reactnative"===navigator.product.toLowerCase();function v6(e,t){return"message"===e.type&&"string"!==typeof e.data&&t[0]>=48&&t[0]<=54}const y6={websocket:class extends J5{constructor(e){super(e),this.supportsBinary=!e.forceBase64}get name(){return"websocket"}doOpen(){if(!this.check())return;const e=this.uri(),t=this.opts.protocols,r=g6?{}:W5(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(r.headers=this.opts.extraHeaders);try{this.ws=g6?new m6(e,t,r):t?new m6(e,t):new m6(e)}catch(Ele){return this.emitReserved("error",Ele)}this.ws.binaryType=this.socket.binaryType||"arraybuffer",this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t{try{this.ws.send(e)}catch(t){}n&&p6((()=>{this.writable=!0,this.emitReserved("drain")}),this.setTimeoutFn)}))}}doClose(){"undefined"!==typeof this.ws&&(this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=a6()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}check(){return!!m6}},webtransport:class extends J5{get name(){return"webtransport"}doOpen(){"function"===typeof WebTransport&&(this.transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name]),this.transport.closed.then((()=>{this.onClose()})).catch((e=>{this.onError("webtransport error",e)})),this.transport.ready.then((()=>{this.transport.createBidirectionalStream().then((e=>{const t=e.readable.getReader();let r;this.writer=e.writable.getWriter();const n=()=>{t.read().then((({done:e,value:t})=>{e||(r||1!==t.byteLength||54!==t[0]?(this.onPacket(function(e,t,r){V5||(V5=new TextDecoder);const n=t||e[0]<48||e[0]>54;return U5(n?e:V5.decode(e),r)}(t,r,"arraybuffer")),r=!1):r=!0,n())})).catch((e=>{}))};n();const i=this.query.sid?`0{"sid":"${this.query.sid}"}`:"0";this.writer.write((new TextEncoder).encode(i)).then((()=>this.onOpen()))}))})))}write(e){this.writable=!1;for(let t=0;t{v6(r,e)&&this.writer.write(Uint8Array.of(54)),this.writer.write(e).then((()=>{n&&p6((()=>{this.writable=!0,this.emitReserved("drain")}),this.setTimeoutFn)}))}))}}doClose(){var e;null===(e=this.transport)||void 0===e||e.close()}},polling:class extends J5{constructor(e){if(super(e),this.polling=!1,"undefined"!==typeof location){const t="https:"===location.protocol;let r=location.port;r||(r=t?"443":"80"),this.xd="undefined"!==typeof location&&e.hostname!==location.hostname||r!==e.port}const t=e&&e.forceBase64;this.supportsBinary=d6&&!t,this.opts.withCredentials&&(this.cookieJar=void 0)}get name(){return"polling"}doOpen(){this.poll()}pause(e){this.readyState="pausing";const t=()=>{this.readyState="paused",e()};if(this.polling||!this.writable){let e=0;this.polling&&(e++,this.once("pollComplete",(function(){--e||t()}))),this.writable||(e++,this.once("drain",(function(){--e||t()})))}else t()}poll(){this.polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){((e,t)=>{const r=e.split(H5),n=[];for(let i=0;i{if("opening"===this.readyState&&"open"===e.type&&this.onOpen(),"close"===e.type)return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(e)})),"closed"!==this.readyState&&(this.polling=!1,this.emitReserved("pollComplete"),"open"===this.readyState&&this.poll())}doClose(){const e=()=>{this.write([{type:"close"}])};"open"===this.readyState?e():this.once("open",e)}write(e){this.writable=!1,((e,t)=>{const r=e.length,n=new Array(r);let i=0;e.forEach(((e,o)=>{R5(e,!1,(e=>{n[o]=e,++i===r&&t(n.join(H5))}))}))})(e,(e=>{this.doWrite(e,(()=>{this.writable=!0,this.emitReserved("drain")}))}))}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return!1!==this.opts.timestampRequests&&(t[this.opts.timestampParam]=a6()),this.supportsBinary||t.sid||(t.b64=1),this.createUri(e,t)}request(e={}){return Object.assign(e,{xd:this.xd,cookieJar:this.cookieJar},this.opts),new h6(this.uri(),e)}doWrite(e,t){const r=this.request({method:"POST",data:e});r.on("success",t),r.on("error",((e,t)=>{this.onError("xhr post error",e,t)}))}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",((e,t)=>{this.onError("xhr poll error",e,t)})),this.pollXhr=e}}},b6=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,w6=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function x6(e){const t=e,r=e.indexOf("["),n=e.indexOf("]");-1!=r&&-1!=n&&(e=e.substring(0,r)+e.substring(r,n).replace(/:/g,";")+e.substring(n,e.length));let i=b6.exec(e||""),o={},a=14;for(;a--;)o[w6[a]]=i[a]||"";return-1!=r&&-1!=n&&(o.source=t,o.host=o.host.substring(1,o.host.length-1).replace(/;/g,":"),o.authority=o.authority.replace("[","").replace("]","").replace(/;/g,":"),o.ipv6uri=!0),o.pathNames=function(e,t){const r=/\/{2,9}/g,n=t.replace(r,"/").split("/");"/"!=t.slice(0,1)&&0!==t.length||n.splice(0,1);"/"==t.slice(-1)&&n.splice(n.length-1,1);return n}(0,o.path),o.queryKey=function(e,t){const r={};return t.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,(function(e,t,n){t&&(r[t]=n)})),r}(0,o.query),o}class _6 extends q5{constructor(e,t={}){super(),this.writeBuffer=[],e&&"object"===typeof e&&(t=e,e=null),e?(e=x6(e),t.hostname=e.host,t.secure="https"===e.protocol||"wss"===e.protocol,t.port=e.port,e.query&&(t.query=e.query)):t.host&&(t.hostname=x6(t.host).host),Y5(this,t),this.secure=null!=t.secure?t.secure:"undefined"!==typeof location&&"https:"===location.protocol,t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||("undefined"!==typeof location?location.hostname:"localhost"),this.port=t.port||("undefined"!==typeof location&&location.port?location.port:this.secure?"443":"80"),this.transports=t.transports||["polling","websocket","webtransport"],this.writeBuffer=[],this.prevBufferLen=0,this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),"string"===typeof this.opts.query&&(this.opts.query=function(e){let t={},r=e.split("&");for(let n=0,i=r.length;n{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this.beforeunloadEventListener,!1)),"localhost"!==this.hostname&&(this.offlineEventListener=()=>{this.onClose("transport close",{description:"network connection lost"})},addEventListener("offline",this.offlineEventListener,!1))),this.open()}createTransport(e){const t=Object.assign({},this.opts.query);t.EIO=4,t.transport=e,this.id&&(t.sid=this.id);const r=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new y6[e](r)}open(){let e;if(this.opts.rememberUpgrade&&_6.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket"))e="websocket";else{if(0===this.transports.length)return void this.setTimeoutFn((()=>{this.emitReserved("error","No transports available")}),0);e=this.transports[0]}this.readyState="opening";try{e=this.createTransport(e)}catch(t){return this.transports.shift(),void this.open()}e.open(),this.setTransport(e)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",(e=>this.onClose("transport close",e)))}probe(e){let t=this.createTransport(e),r=!1;_6.priorWebsocketSuccess=!1;const n=()=>{r||(t.send([{type:"ping",data:"probe"}]),t.once("packet",(e=>{if(!r)if("pong"===e.type&&"probe"===e.data){if(this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;_6.priorWebsocketSuccess="websocket"===t.name,this.transport.pause((()=>{r||"closed"!==this.readyState&&(l(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())}))}else{const e=new Error("probe error");e.transport=t.name,this.emitReserved("upgradeError",e)}})))};function i(){r||(r=!0,l(),t.close(),t=null)}const o=e=>{const r=new Error("probe error: "+e);r.transport=t.name,i(),this.emitReserved("upgradeError",r)};function a(){o("transport closed")}function s(){o("socket closed")}function c(e){t&&e.name!==t.name&&i()}const l=()=>{t.removeListener("open",n),t.removeListener("error",o),t.removeListener("close",a),this.off("close",s),this.off("upgrading",c)};t.once("open",n),t.once("error",o),t.once("close",a),this.once("close",s),this.once("upgrading",c),-1!==this.upgrades.indexOf("webtransport")&&"webtransport"!==e?this.setTimeoutFn((()=>{r||t.open()}),200):t.open()}onOpen(){if(this.readyState="open",_6.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush(),"open"===this.readyState&&this.opts.upgrade){let e=0;const t=this.upgrades.length;for(;e{this.onClose("ping timeout")}),this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}onDrain(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()}flush(){if("closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this.getWritablePackets();this.transport.send(e),this.prevBufferLen=e.length,this.emitReserved("flush")}}getWritablePackets(){if(!(this.maxPayload&&"polling"===this.transport.name&&this.writeBuffer.length>1))return this.writeBuffer;let e=1;for(let r=0;r=57344?r+=3:(n++,r+=4);return r}(t):Math.ceil(1.33*(t.byteLength||t.size))),r>0&&e>this.maxPayload)return this.writeBuffer.slice(0,r);e+=2}var t;return this.writeBuffer}write(e,t,r){return this.sendPacket("message",e,t,r),this}send(e,t,r){return this.sendPacket("message",e,t,r),this}sendPacket(e,t,r,n){if("function"===typeof t&&(n=t,t=void 0),"function"===typeof r&&(n=r,r=null),"closing"===this.readyState||"closed"===this.readyState)return;(r=r||{}).compress=!1!==r.compress;const i={type:e,data:t,options:r};this.emitReserved("packetCreate",i),this.writeBuffer.push(i),n&&this.once("flush",n),this.flush()}close(){const e=()=>{this.onClose("forced close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},r=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return"opening"!==this.readyState&&"open"!==this.readyState||(this.readyState="closing",this.writeBuffer.length?this.once("drain",(()=>{this.upgrading?r():e()})):this.upgrading?r():e()),this}onError(e){_6.priorWebsocketSuccess=!1,this.emitReserved("error",e),this.onClose("transport error",e)}onClose(e,t){"opening"!==this.readyState&&"open"!==this.readyState&&"closing"!==this.readyState||(this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),"function"===typeof removeEventListener&&(removeEventListener("beforeunload",this.beforeunloadEventListener,!1),removeEventListener("offline",this.offlineEventListener,!1)),this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this.prevBufferLen=0)}filterUpgrades(e){const t=[];let r=0;const n=e.length;for(;r"function"===typeof ArrayBuffer.isView?ArrayBuffer.isView(e):e.buffer instanceof ArrayBuffer,E6=Object.prototype.toString,A6="function"===typeof Blob||"undefined"!==typeof Blob&&"[object BlobConstructor]"===E6.call(Blob),P6="function"===typeof File||"undefined"!==typeof File&&"[object FileConstructor]"===E6.call(File);function O6(e){return S6&&(e instanceof ArrayBuffer||k6(e))||A6&&e instanceof Blob||P6&&e instanceof File}function T6(e,t){if(!e||"object"!==typeof e)return!1;if(Array.isArray(e)){for(let t=0,r=e.length;t=0&&e.num{delete this.acks[e];for(let t=0;t{this.io.clearTimeoutFn(i),t.apply(this,[null,...e])}}emitWithAck(e,...t){const r=void 0!==this.flags.timeout||void 0!==this._opts.ackTimeout;return new Promise(((n,i)=>{t.push(((e,t)=>r?e?i(e):n(t):n(e))),this.emit(e,...t)}))}_addToQueue(e){let t;"function"===typeof e[e.length-1]&&(t=e.pop());const r={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push(((e,...n)=>{if(r!==this._queue[0])return;return null!==e?r.tryCount>this._opts.retries&&(this._queue.shift(),t&&t(e)):(this._queue.shift(),t&&t(null,...n)),r.pending=!1,this._drainQueue()})),this._queue.push(r),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||0===this._queue.length)return;const t=this._queue[0];t.pending&&!e||(t.pending=!0,t.tryCount++,this.flags=t.flags,this.emit.apply(this,t.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){"function"==typeof this.auth?this.auth((e=>{this._sendConnectPacket(e)})):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:N6.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t)}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case N6.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case N6.EVENT:case N6.BINARY_EVENT:this.onevent(e);break;case N6.ACK:case N6.BINARY_ACK:this.onack(e);break;case N6.DISCONNECT:this.ondisconnect();break;case N6.CONNECT_ERROR:this.destroy();const t=new Error(e.data.message);t.data=e.data.data,this.emitReserved("connect_error",t)}}onevent(e){const t=e.data||[];null!=e.id&&t.push(this.ack(e.id)),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const r of t)r.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&"string"===typeof e[e.length-1]&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let r=!1;return function(...n){r||(r=!0,t.packet({type:N6.ACK,id:e,data:n}))}}onack(e){const t=this.acks[e.id];"function"===typeof t&&(t.apply(this,e.data),delete this.acks[e.id])}onconnect(e,t){this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach((e=>this.emitEvent(e))),this.receiveBuffer=[],this.sendBuffer.forEach((e=>{this.notifyOutgoingListeners(e),this.packet(e)})),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach((e=>e())),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:N6.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let r=0;r0&&e.jitter<=1?e.jitter:0,this.attempts=0}V6.prototype.duration=function(){var e=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var t=Math.random(),r=Math.floor(t*this.jitter*e);e=0==(1&Math.floor(10*t))?e-r:e+r}return 0|Math.min(e,this.max)},V6.prototype.reset=function(){this.attempts=0},V6.prototype.setMin=function(e){this.ms=e},V6.prototype.setMax=function(e){this.max=e},V6.prototype.setJitter=function(e){this.jitter=e};class q6 extends q5{constructor(e,r){var n;super(),this.nsps={},this.subs=[],e&&"object"===typeof e&&(r=e,e=void 0),(r=r||{}).path=r.path||"/socket.io",this.opts=r,Y5(this,r),this.reconnection(!1!==r.reconnection),this.reconnectionAttempts(r.reconnectionAttempts||1/0),this.reconnectionDelay(r.reconnectionDelay||1e3),this.reconnectionDelayMax(r.reconnectionDelayMax||5e3),this.randomizationFactor(null!==(n=r.randomizationFactor)&&void 0!==n?n:.5),this.backoff=new V6({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(null==r.timeout?2e4:r.timeout),this._readyState="closed",this.uri=e;const i=r.parser||t;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=!1!==r.autoConnect,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,this):this._reconnection}reconnectionAttempts(e){return void 0===e?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return void 0===e?this._reconnectionDelay:(this._reconnectionDelay=e,null===(t=this.backoff)||void 0===t||t.setMin(e),this)}randomizationFactor(e){var t;return void 0===e?this._randomizationFactor:(this._randomizationFactor=e,null===(t=this.backoff)||void 0===t||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return void 0===e?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,null===(t=this.backoff)||void 0===t||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&0===this.backoff.attempts&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new _6(this.uri,this.opts);const t=this.engine,r=this;this._readyState="opening",this.skipReconnect=!1;const n=F6(t,"open",(function(){r.onopen(),e&&e()})),i=t=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",t),e?e(t):this.maybeReconnectOnOpen()},o=F6(t,"error",i);if(!1!==this._timeout){const e=this._timeout,r=this.setTimeoutFn((()=>{n(),i(new Error("timeout")),t.close()}),e);this.opts.autoUnref&&r.unref(),this.subs.push((()=>{this.clearTimeoutFn(r)}))}return this.subs.push(n),this.subs.push(o),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(F6(e,"ping",this.onping.bind(this)),F6(e,"data",this.ondata.bind(this)),F6(e,"error",this.onerror.bind(this)),F6(e,"close",this.onclose.bind(this)),F6(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(t){this.onclose("parse error",t)}}ondecoded(e){p6((()=>{this.emitReserved("packet",e)}),this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,t){let r=this.nsps[e];return r?this._autoConnect&&!r.active&&r.connect():(r=new H6(this,e,t),this.nsps[e]=r),r}_destroy(e){const t=Object.keys(this.nsps);for(const r of t){if(this.nsps[r].active)return}this._close()}_packet(e){const t=this.encoder.encode(e);for(let r=0;re())),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close"),this.engine&&this.engine.close()}disconnect(){return this._close()}onclose(e,t){this.cleanup(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();this._reconnecting=!0;const r=this.setTimeoutFn((()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),e.skipReconnect||e.open((t=>{t?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",t)):e.onreconnect()})))}),t);this.opts.autoUnref&&r.unref(),this.subs.push((()=>{this.clearTimeoutFn(r)}))}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const K6={};function W6(e,t){"object"===typeof e&&(t=e,e=void 0);const r=function(e,t="",r){let n=e;r=r||"undefined"!==typeof location&&location,null==e&&(e=r.protocol+"//"+r.host),"string"===typeof e&&("/"===e.charAt(0)&&(e="/"===e.charAt(1)?r.protocol+e:r.host+e),/^(https?|wss?):\/\//.test(e)||(e="undefined"!==typeof r?r.protocol+"//"+e:"https://"+e),n=x6(e)),n.port||(/^(http|ws)$/.test(n.protocol)?n.port="80":/^(http|ws)s$/.test(n.protocol)&&(n.port="443")),n.path=n.path||"/";const i=-1!==n.host.indexOf(":")?"["+n.host+"]":n.host;return n.id=n.protocol+"://"+i+":"+n.port+t,n.href=n.protocol+"://"+i+(r&&r.port===n.port?"":":"+n.port),n}(e,(t=t||{}).path||"/socket.io"),n=r.source,i=r.id,o=r.path,a=K6[i]&&o in K6[i].nsps;let s;return t.forceNew||t["force new connection"]||!1===t.multiplex||a?s=new q6(n,t):(K6[i]||(K6[i]=new q6(n,t)),s=K6[i]),r.query&&!t.query&&(t.query=r.queryKey),s.socket(r.path,t)}Object.assign(W6,{Manager:q6,Socket:H6,io:W6,connect:W6});var G6=r(8247),Z6=r.n(G6),Y6=r(4872).Buffer;const X6=new $s.ec("secp256k1"),J6=r.g.crypto||r.g.msCrypto||{},Q6=J6.subtle||J6.webkitSubtle,e4=Y6.from("fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141","hex"),t4=Y6.alloc(32,0);function r4(e,t){if(!e)throw new Error(t||"Assertion failed")}function n4(e){return!!function(e){return Y6.isBuffer(e)&&32===e.length}(e)&&(e.compare(t4)>0&&e.compare(e4)<0)}function i4(e){const t=new Uint8Array(e);return"undefined"===typeof J6.getRandomValues?Y6.from(Z6().randomBytes(e)):(J6.getRandomValues(t),Y6.from(t))}async function o4(e){if(Q6){const t=await Q6.digest("SHA-512",e);return new Uint8Array(t)}const t=Z6().createHash("sha512").update(e).digest();return new Uint8Array(t)}function a4(e){return async function(t,r,n){if(Q6){const i={name:"AES-CBC"},o=await Q6.importKey("raw",r,i,!1,[e]),a={name:"AES-CBC",iv:t},s=await Q6[e](a,o,n);return Y6.from(new Uint8Array(s))}if("encrypt"===e){const e=Z6().createCipheriv("aes-256-cbc",r,t),i=e.update(n),o=e.final();return Y6.concat([i,o])}if("decrypt"===e){const e=Z6().createDecipheriv("aes-256-cbc",r,t),i=e.update(n),o=e.final();return Y6.concat([i,o])}throw new Error(`Unsupported operation: ${e}`)}}const s4=a4("encrypt"),c4=a4("decrypt");async function l4(e,t){if(Q6){const r={name:"HMAC",hash:{name:"SHA-256"}},n=await Q6.importKey("raw",new Uint8Array(e),r,!1,["sign","verify"]),i=await Q6.sign("HMAC",n,t);return Y6.from(new Uint8Array(i))}const r=Z6().createHmac("sha256",Y6.from(e));r.update(t);return r.digest()}const u4=function(){let e=i4(32);for(;!n4(e);)e=i4(32);return e},d4=function(e){return r4(32===e.length,"Bad private key"),r4(n4(e),"Bad private key"),Y6.from(X6.keyFromPrivate(e).getPublic("array"))},h4=async function(e,t){return r4(32===e.length,"Bad private key"),r4(n4(e),"Bad private key"),r4(t.length>0,"Message should not be empty"),r4(t.length<=32,"Message is too long"),Y6.from(X6.sign(t,e,{canonical:!0}).toDER())},f4=async function(e,t){r4(Y6.isBuffer(e),"Bad private key"),r4(Y6.isBuffer(t),"Bad public key"),r4(32===e.length,"Bad private key"),r4(n4(e),"Bad private key"),r4(65===t.length||33===t.length,"Bad public key"),65===t.length&&r4(4===t[0],"Bad public key"),33===t.length&&r4(2===t[0]||3===t[0],"Bad public key");const r=X6.keyFromPrivate(e),n=X6.keyFromPublic(t),i=r.derive(n.getPublic());return Y6.from(i.toArray())},p4=async function(e,t){r4(Y6.isBuffer(e),"Bad private key"),r4(Y6.isBuffer(t),"Bad public key"),r4(32===e.length,"Bad private key"),r4(n4(e),"Bad private key"),r4(65===t.length||33===t.length,"Bad public key"),65===t.length&&r4(4===t[0],"Bad public key"),33===t.length&&r4(2===t[0]||3===t[0],"Bad public key");const r=X6.keyFromPrivate(e),n=X6.keyFromPublic(t),i=r.derive(n.getPublic());return Y6.from(i.toString(16,64),"hex")},m4=async function(e,t,r){let n=(r=r||{}).ephemPrivateKey||i4(32);for(;!n4(n);)n=r.ephemPrivateKey||i4(32);const i=d4(n),o=await f4(n,e),a=await o4(o),s=r.iv||i4(16),c=a.slice(0,32),l=a.slice(32),u=await s4(s,Y6.from(c),t),d=Y6.concat([s,i,u]);return{iv:s,ephemPublicKey:i,ciphertext:u,mac:await l4(Y6.from(l),d)}},g4=async function(e,t,r){const n=null!==r&&void 0!==r&&r,i=n?p4:f4,o=await i(e,t.ephemPublicKey),a=await o4(o),s=a.slice(0,32),c=a.slice(32),l=Y6.concat([t.iv,t.ephemPublicKey,t.ciphertext]),u=await async function(e,t,r){return function(e,t){if(e.length!==t.length)return!1;let r=0;for(let n=0;n0||e._addEL.internal.length>0}function W4(e,t,r){e._addEL[t].push(r),function(e){if(!e._iL&&K4(e)){var t=function(t){e._addEL[t.type].forEach((function(r){var n=1e5,i=r.time-n;(t.time>=i||"server"===e.method.type)&&r.fn(t.data)}))},r=e.method.microSeconds();e._prepP?e._prepP.then((function(){e._iL=!0,e.method.onMessage(e._state,t,r)})):(e._iL=!0,e.method.onMessage(e._state,t,r))}}(e)}function G4(e,t,r){e._addEL[t]=e._addEL[t].filter((function(e){return e!==r})),function(e){if(e._iL&&!K4(e)){e._iL=!1;var t=e.method.microSeconds();e.method.onMessage(e._state,null,t)}}(e)}function Z4(e){this.message=e}V4._pubkey=!0,V4.prototype={postMessage:function(e){if(this.closed)throw new Error("BroadcastChannel.postMessage(): Cannot post message after channel has closed "+JSON.stringify(e));return q4(this,"message",e)},postInternal:function(e){return q4(this,"internal",e)},set onmessage(e){var t={time:this.method.microSeconds(),fn:e};G4(this,"message",this._onML),e&&"function"===typeof e?(this._onML=t,W4(this,"message",t)):this._onML=null},addEventListener:function(e,t){W4(this,e,{time:this.method.microSeconds(),fn:t})},removeEventListener:function(e,t){G4(this,e,this._addEL[e].find((function(e){return e.fn===t})))},close:function(){var e=this;if(!this.closed){$4.delete(this),this.closed=!0;var t=this._prepP?this._prepP:Y3;return this._onML=null,this._addEL.message=[],t.then((function(){return Promise.all(Array.from(e._uMP))})).then((function(){return Promise.all(e._befC.map((function(e){return e()})))})).then((function(){return e.method.close(e._state)}))}},get type(){return this.method.type},get isClosed(){return this.closed}},Z4.prototype=new Error,Z4.prototype.name="InvalidCharacterError";var Y4="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(e){var t=String(e).replace(/=+$/,"");if(t.length%4==1)throw new Z4("'atob' failed: The string to be decoded is not correctly encoded.");for(var r,n,i=0,o=0,a="";n=t.charAt(o++);~n&&(r=i%4?64*r+n:n,i++%4)?a+=String.fromCharCode(255&r>>(-2*i&6)):0)n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(n);return a};function X4(e){this.message=e}X4.prototype=new Error,X4.prototype.name="InvalidTokenError";const J4=function(e,t){if("string"!=typeof e)throw new X4("Invalid token specified");var r=!0===(t=t||{}).header?0:1;try{return JSON.parse(function(e){var t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw"Illegal base64url string!"}try{return function(e){return decodeURIComponent(Y4(e).replace(/(.)/g,(function(e,t){var r=t.charCodeAt(0).toString(16).toUpperCase();return r.length<2&&(r="0"+r),"%"+r})))}(t)}catch(e){return Y4(t)}}(e.split(".")[r]))}catch(e){throw new X4("Invalid token specified: "+e.message)}},Q4={MAINNET:"mainnet",TESTNET:"testnet",CYAN:"cyan",AQUA:"aqua",CELESTE:"celeste"},e8={SAPPHIRE_DEVNET:"sapphire_devnet",SAPPHIRE_TESTNET:"sapphire_testnet",SAPPHIRE_MAINNET:"sapphire_mainnet"},t8=[Q4.AQUA,Q4.CELESTE,Q4.CYAN],r8={[Q4.AQUA]:{migrationCompleted:!1,networkIdentifier:"aqua",networkMigratedTo:e8.SAPPHIRE_MAINNET},[Q4.CELESTE]:{migrationCompleted:!1,networkIdentifier:"celeste",networkMigratedTo:e8.SAPPHIRE_MAINNET},[Q4.CYAN]:{migrationCompleted:!1,networkIdentifier:"cyan",networkMigratedTo:e8.SAPPHIRE_MAINNET},[Q4.MAINNET]:{migrationCompleted:!1,networkIdentifier:"mainnet",networkMigratedTo:e8.SAPPHIRE_MAINNET},[Q4.TESTNET]:{migrationCompleted:!0,networkIdentifier:"teal",networkMigratedTo:e8.SAPPHIRE_TESTNET}},n8={[Q4.MAINNET]:"https://signer.tor.us",[Q4.TESTNET]:"https://signer.tor.us",[Q4.CYAN]:"https://signer-polygon.tor.us",[Q4.AQUA]:"https://signer-polygon.tor.us",[Q4.CELESTE]:"https://signer-polygon.tor.us"},i8={[e8.SAPPHIRE_DEVNET]:["https://sapphire-dev-2-1.authnetwork.dev","https://sapphire-dev-2-2.authnetwork.dev","https://sapphire-dev-2-3.authnetwork.dev","https://sapphire-dev-2-4.authnetwork.dev","https://sapphire-dev-2-5.authnetwork.dev"],[e8.SAPPHIRE_TESTNET]:["https://sapphire-dev-2-1.authnetwork.dev","https://sapphire-dev-2-2.authnetwork.dev","https://sapphire-dev-2-3.authnetwork.dev","https://sapphire-dev-2-4.authnetwork.dev","https://sapphire-dev-2-5.authnetwork.dev"],[e8.SAPPHIRE_MAINNET]:["https://sapphire-1.auth.network","https://sapphire-2.auth.network","https://sapphire-3.auth.network","https://sapphire-4.auth.network","https://sapphire-5.auth.network"]},o8=(e,t)=>{const r=i8[e];if(!r||0===r.length)throw new Error(`Unsupported network: ${e}`);const n=r8[t];return r.map((e=>n&&n.networkIdentifier?`${e}/sss/${n.networkIdentifier}/jrpc`:`${e}/sss/jrpc`))},a8=(e,t)=>{const r=i8[e];if(!r||0===r.length)throw new Error(`Unsupported network: ${e}`);const n=r8[t];return r.map((e=>n&&n.networkIdentifier?`${e}/rss/${n.networkIdentifier}`:`${e}/rss`))},s8=(e,t)=>{const r=i8[e];if(!r||0===r.length)throw new Error(`Unsupported network: ${e}`);const n=r8[t];return r.map((e=>n&&n.networkIdentifier?`${e}/tss/${n.networkIdentifier}`:`${e}/tss`))},c8={currentEpoch:"19",torusNodeEndpoints:["https://torus-19.torusnode.com/jrpc","https://torus-node.ens.domains/jrpc","https://torus-node.matic.network/jrpc","https://torus.zilliqa.network/jrpc","https://torus-mainnet.cosmos.network/jrpc","https://torus2.etherscan.com/jrpc","https://torus-node-v2.skalelabs.com/jrpc","https://torus-node.binancex.dev/jrpc","https://torusnode.ont.io/jrpc"],torusIndexes:[1,2,3,4,5,6,7,8,9],torusNodePub:[{X:"bbe83c64177c3775550e6ba6ac2bc059f6847d644c9e4894e42c60d7974d8c2b",Y:"82b49a7caf70def38cdad2740af45c1e4f969650105c5019a29bb18b21a9acb5"},{X:"c208cac4ef9a47d386097a9c915b28e9cb89213abee8d26a17198ee261201b0d",Y:"c7db2fe4631109f40833de9dc78d07e35706549ee48fa557b33e4e75e1047873"},{X:"ca1766bb426d4ca5582818a0c5439d560ea64f5baa060793ab29dd3d0ceacfe",Y:"d46c1d08c40e1306e1bca328c2287b8268166b11a1ba4b8442ea2ad0c5e32152"},{X:"c3934dd2f6f4b3d2e1e398cc501e143c1e1a381b52feb6d1525af34d16253768",Y:"71f5141a5035799099f5ea3e241e66946bc55dc857ac3bd7d6fcdb8dcd3eeeef"},{X:"22e66f1929631d00bf026227581597f085fd94fd952fc0dca9f0833398b5c064",Y:"6088b3912e10a1e9d50355a609c10db7d188f16a2e2fd7357e51bf4f6a74f0a1"},{X:"9dc9fa410f3ce9eb70df70cdea00a49f2c4cc7a31c08c0dab5f863ed35ff5139",Y:"627a291cb87a75c61da3f65d6818e1e05e360217179817ed27e8c73bca7ec122"},{X:"118b9fc07e97b096d899b9f6658463ce6a8caa64038e37fc969df4e6023dd8c6",Y:"baf9fa4e51770f4796ea165dd03a769b8606681a38954a0a92c4cbffd6609ce9"},{X:"8a6d8b925da15a273dec3d8f8395ec35cd6878f274b2b180e4e106999db64043",Y:"96f67f870c157743da0b1eb84d89bf30500d74dc84c11f501ee1cb013acc8c46"},{X:"39cecb62e863729f572f7dfc46c24867981bf04bb405fed0df39e33984bfade5",Y:"61c2364434012e68a2be2e9952805037e52629d7762fafc8e10e9fb5bad8f790"}]},l8={[e8.SAPPHIRE_MAINNET]:[{X:"e0925898fee0e9e941fdca7ee88deec99939ae9407e923535c4d4a3a3ff8b052",Y:"54b9fea924e3f3e40791f9987f4234ae4222412d65b74068032fa5d8b63375c1"},{X:"9124cf1e280aab32ba50dffd2de81cecabc13d82d2c1fe9de82f3b3523f9b637",Y:"fca939a1ceb42ce745c55b21ef094f543b457630cb63a94ef4f1afeee2b1f107"},{X:"555f681a63d469cc6c3a58a97e29ebd277425f0e6159708e7c7bf05f18f89476",Y:"606f2bcc0884fa5b64366fc3e8362e4939841b56acd60d5f4553cf36b891ac4e"},{X:"2b5f58d8e340f1ab922e89b3a69a68930edfe51364644a456335e179bc130128",Y:"4b4daa05939426e3cbe7d08f0e773d2bf36f64c00d04620ee6df2a7af4d2247"},{X:"3ecbb6a68afe72cf34ec6c0a12b5cb78a0d2e83ba402983b6adbc5f36219861a",Y:"dc1031c5cc8f0472bd521a62a64ebca9e163902c247bf05937daf4ae835091e4"}],[e8.SAPPHIRE_TESTNET]:[{X:"f74389b0a4c8d10d2a687ae575f69b20f412d41ab7f1fe6b358aa14871327247",Y:"54e3a73098ed9bced3ef8821736e9794f9264a1420c0c7ad15d2fa617ba35ef7"},{X:"bc38813a6873e526087918507c78fc3a61624670ee851ecfb4f3bef55d027b5a",Y:"ac4b21229f662a0aefdfdac21cf17c3261a392c74a8790db218b34e3e4c1d56a"},{X:"b56541684ea5fa40c8337b7688d502f0e9e092098962ad344c34e94f06d293fb",Y:"759a998cef79d389082f9a75061a29190eec0cac99b8c25ddcf6b58569dad55c"},{X:"7bcb058d4c6ffc6ba4bfdfd93d141af35a66338a62c7c27cdad2ae3f8289b767",Y:"336ab1935e41ed4719e162587f0ab55518db4207a1eb36cc72303f1b86689d2b"},{X:"bf12a136ef94399ea098f926f04e26a4ec4ac70f69cce274e8893704c4951773",Y:"bdd44828020f52ce510e026338216ada184a6867eb4e19fb4c2d495d4a7e15e4"}],[e8.SAPPHIRE_DEVNET]:[{X:"f74389b0a4c8d10d2a687ae575f69b20f412d41ab7f1fe6b358aa14871327247",Y:"54e3a73098ed9bced3ef8821736e9794f9264a1420c0c7ad15d2fa617ba35ef7"},{X:"bc38813a6873e526087918507c78fc3a61624670ee851ecfb4f3bef55d027b5a",Y:"ac4b21229f662a0aefdfdac21cf17c3261a392c74a8790db218b34e3e4c1d56a"},{X:"b56541684ea5fa40c8337b7688d502f0e9e092098962ad344c34e94f06d293fb",Y:"759a998cef79d389082f9a75061a29190eec0cac99b8c25ddcf6b58569dad55c"},{X:"7bcb058d4c6ffc6ba4bfdfd93d141af35a66338a62c7c27cdad2ae3f8289b767",Y:"336ab1935e41ed4719e162587f0ab55518db4207a1eb36cc72303f1b86689d2b"},{X:"bf12a136ef94399ea098f926f04e26a4ec4ac70f69cce274e8893704c4951773",Y:"bdd44828020f52ce510e026338216ada184a6867eb4e19fb4c2d495d4a7e15e4"}]},u8=(e,t)=>({currentEpoch:"1",torusNodeEndpoints:o8(e,t),torusNodeSSSEndpoints:o8(e,t),torusNodeRSSEndpoints:a8(e,t),torusNodeTSSEndpoints:s8(e,t),torusIndexes:[1,2,3,4,5],torusNodePub:l8[e]});const d8=C3().getLogger("fnd");class h8{constructor(){let{network:e=e8.SAPPHIRE_MAINNET,fndServerEndpoint:t,enableLogging:r=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};A3(this,"fndServerEndpoint","https://fnd.tor.us/node-details"),A3(this,"_currentEpoch","1"),A3(this,"_torusNodeEndpoints",[]),A3(this,"_torusNodeRSSEndpoints",[]),A3(this,"_torusNodeSSSEndpoints",[]),A3(this,"_torusNodeTSSEndpoints",[]),A3(this,"_torusNodePub",[]),A3(this,"_torusIndexes",[]),A3(this,"updated",void 0),A3(this,"network",void 0),this.network=e,this.updated=!1,t&&(this.fndServerEndpoint=t),r?d8.enableAll():d8.disableAll()}get _nodeDetails(){return{currentEpoch:this._currentEpoch,torusNodeEndpoints:this._torusNodeEndpoints,torusNodeSSSEndpoints:this._torusNodeSSSEndpoints,torusNodeRSSEndpoints:this._torusNodeRSSEndpoints,torusNodeTSSEndpoints:this._torusNodeTSSEndpoints,torusNodePub:this._torusNodePub,torusIndexes:this._torusIndexes,updated:this.updated}}async getNodeDetails(e){let{verifier:t,verifierId:r}=e;try{if(this.updated&&!t8.includes(this.network))return this._nodeDetails;try{const{nodeDetails:e}=await V3(`${this.fndServerEndpoint}?network=${this.network}&verifier=${t}&verifierId=${r}`);return this.setNodeDetails(e),this._nodeDetails}catch(n){d8.error("Failed to fetch node details from server, using local.",n)}const e=function(e){if(Object.values(e8).includes(e))return u8(e);if(Object.values(Q4).includes(e)){const t=r8[e];if(t.migrationCompleted)return u8(t.networkMigratedTo,e);if(e===Q4.MAINNET)return c8}}(this.network);if(!e)throw new Error("Failed to fetch node details");return this.setNodeDetails(e),this._nodeDetails}catch(n){throw d8.error("Failed to fetch node details",n),n}}setNodeDetails(e){const{currentEpoch:t,torusNodeEndpoints:r,torusNodeSSSEndpoints:n,torusNodeRSSEndpoints:i,torusNodeTSSEndpoints:o,torusNodePub:a,torusIndexes:s}=e;this._torusNodeEndpoints=r,this._torusNodeSSSEndpoints=n||[],this._torusNodeRSSEndpoints=i||[],this._torusNodeTSSEndpoints=o||[],this._torusNodePub=a,this._torusIndexes=s,this._currentEpoch=t,this.updated=!0}}var f8=r(4203),p8=r.n(f8),m8=r(4872).Buffer;const g8="GetPubKeyOrKeyAssign",v8="CommitmentRequest",y8="ImportShare",b8="GetShareOrKeyAssign",w8="https://metadata.tor.us",x8=(e,t)=>{let r=e;if("number"===typeof r&&(r=Array.from({length:r},((e,t)=>t))),t>r.length||t<=0)return[];if(t===r.length)return[r];if(1===t)return r.reduce(((e,t)=>[...e,[t]]),[]);const n=[];let i=[];for(let o=0;o<=r.length-t+1;o+=1){i=x8(r.slice(o+1),t-1);for(let e=0;e{const r={};for(let n=0;n=8?o+=t[a].toUpperCase():o+=t[a];return o}function O8(e,t){const r=e.keyFromPrivate(t.toString("hex",64),"hex").getPublic().encode("hex",!1).slice(2);E8.info(r,"public key");return P8(`0x${A8(m8.from(r,"hex")).slice(26)}`)}function T8(e,t,r){const n=e.keyFromPublic({x:t.toString("hex",64),y:r.toString("hex",64)}),i=n.getPublic().encode("hex",!1).slice(2);E8.info(n.getPublic().encode("hex",!1),"public key");return P8(`0x${A8(m8.from(i,"hex")).slice(26)}`)}E8.disableAll();class C8{constructor(e,t,r){A3(this,"x",void 0),A3(this,"y",void 0),A3(this,"ecCurve",void 0),this.x=new(p8())(e,"hex"),this.y=new(p8())(t,"hex"),this.ecCurve=r}encode(e){switch(e){case"arr":return m8.concat([m8.from("0x04","hex"),m8.from(this.x.toString("hex"),"hex"),m8.from(this.y.toString("hex"),"hex")]);case"elliptic-compressed":{const e=this.ecCurve.keyFromPublic({x:this.x.toString("hex",64),y:this.y.toString("hex",64)},"hex");return m8.from(e.getPublic(!0,"hex"))}default:throw new Error("encoding doesn't exist in Point")}}}class j8{constructor(e,t){A3(this,"share",void 0),A3(this,"shareIndex",void 0),this.share=new(p8())(t,"hex"),this.shareIndex=new(p8())(e,"hex")}static fromJSON(e){const{share:t,shareIndex:r}=e;return new j8(r,t)}toJSON(){return{share:this.share.toString("hex"),shareIndex:this.shareIndex.toString("hex")}}}class R8{constructor(e,t){A3(this,"polynomial",void 0),A3(this,"ecCurve",void 0),this.polynomial=e,this.ecCurve=t}getThreshold(){return this.polynomial.length}polyEval(e){const t=new(p8())(e,"hex");let r=new(p8())(t),n=new(p8())(0);n=n.add(this.polynomial[0]);for(let i=1;i"number"===typeof e?new(p8())(e):e instanceof p8()?e:"string"===typeof e?new(p8())(e,"hex"):e)),r={};for(let n=0;ne.eq(t)))?I8(e):t}const M8=e=>Array.from({length:e},(()=>new(p8())(0))),L8=(e,t,r)=>{let n=M8(r.length);const i=((e,t,r)=>{let n=new(p8())(1);const i=r[t].x;for(let o=r.length-1;o>=0;o-=1)if(t!==o){let t=new(p8())(i);t=t.sub(r[o].x),t=t.umod(e.curve.n),n=n.mul(t),n=n.umod(e.curve.n)}return n})(e,t,r);if(0===i.cmp(new(p8())(0)))throw new Error("Denominator for interpolationPoly is 0");n[0]=i.invm(e.curve.n);for(let o=0;o=0;a-=1){i[a+1]=i[a+1].add(n[a]).umod(e.curve.n);let t=new(p8())(r[o].x);t=t.mul(n[a]).umod(e.curve.n),i[a]=i[a].sub(t).umod(e.curve.n)}n=i}}return n},N8=(e,t)=>{const r=(e=>{const t=[...e];return t.sort(((e,t)=>e.x.cmp(t.x))),t})(t),n=M8(r.length);for(let i=0;it)throw new Error("deterministicShares in generateRandomPolynomial should be less or equal than degree to ensure an element of randomness");const o={};n.forEach((t=>{o[t.shareIndex.toString("hex",64)]=new C8(t.shareIndex,t.share,e)}));for(let a=0;a2&&void 0!==arguments[2]?arguments[2]:{};try{const n=await q3(`${e}/get`,t,r,{useAPIKey:!0});return n&&n.message?new(p8())(n.message,16):new(p8())(0)}catch(n){return C3().error("get metadata error",n),new(p8())(0)}}async function H8(e,t,r,n,i,o){let a;const s=arguments.length>6&&void 0!==arguments[6]&&arguments[6]?"getNonce":"getOrSetNonce";return a=o?function(e,t,r,n){const i=e.keyFromPrivate(n.toString("hex",64)),o={data:r,timestamp:new(p8())(~~(t+Date.now()/1e3)).toString(16)},a=i.sign(A8(m8.from(b4()(o),"utf8")).slice(2));return{pub_key_X:i.getPublic().getX().toString("hex",64),pub_key_Y:i.getPublic().getY().toString("hex",64),set_data:o,signature:m8.from(a.r.toString(16,64)+a.s.toString(16,64)+new(p8())("").toString(16,2),"hex").toString("base64")}}(t,r,s,o):{pub_key_X:n,pub_key_Y:i,set_data:{data:s}},q3(`${e}/get_or_set_nonce`,a,void 0,{useAPIKey:!0})}async function V8(e,t,r,n,i,o){return H8(e,t,r,n,i,o,!0)}const q8={logRequestTracing:!1};class K8 extends Error{constructor(e){let{errors:t,responses:r,predicate:n}=e;super("Unable to resolve enough promises."),A3(this,"errors",void 0),A3(this,"responses",void 0),A3(this,"predicate",void 0),this.errors=t,this.responses=r,this.predicate=n}get message(){return`${super.message}. ${this.errors.length} errors: ${this.errors.map((e=>e.message||e)).join(", ")} and ${this.responses.length} responses: ${JSON.stringify(this.responses)}`}toString(){return this.message}}const W8=(e,t)=>new Promise(((r,n)=>{let i=0;const o={resolved:!1},a=new Array(e.length).fill(void 0),s=new Array(e.length).fill(void 0);let c;return e.forEach(((l,u)=>l.then((e=>{s[u]=e})).catch((e=>{a[u]=e})).finally((()=>{if(!o.resolved)return t(s.slice(0),o).then((e=>{o.resolved=!0,r(e)})).catch((e=>{c=e})).finally((()=>{if(i+=1,i===e.length){const e=Object.values(s.reduce(((e,t)=>{if(t){var r;const{id:i,error:o}=t;(null===o||void 0===o||null===(r=o.data)||void 0===r?void 0:r.length)>0&&(o.data.startsWith("Error occurred while verifying params")?e[i]=(n=o.data).charAt(0).toUpperCase()+n.slice(1):e[i]=o.data)}var n;return e}),{}));if(e.length>0){const t=e.length>1?`\n${e.map((e=>`\u2022 ${e}`)).join("\n")}`:e[0];n(new Error(t))}else{var t;n(new K8({errors:a,responses:s,predicate:(null===(t=c)||void 0===t?void 0:t.message)||c}))}}}))}))))}));function G8(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Z8(e){for(var t=1;t0){if(h.length!==c.length)throw new Error("Invalid imported shares length");w=!0}for(let x=0;x{E8.error("commitment error",e)}));p.push(e)}return W8(p,(e=>{const t=e.filter((e=>!(!e||"object"!==typeof e)&&!e.error));if(h.length>0&&t.length===c.length)return Promise.resolve(e);if(0===h.length&&t.length>=1+~~(3*c.length/4)){if(t.find((e=>{var t;return!(!e||"1"!==(null===(t=e.result)||void 0===t?void 0:t.nodeindex))})))return Promise.resolve(e)}return Promise.reject(new Error(`invalid ${JSON.stringify(e)}`))})).then((e=>{const t=[],r=[];for(let i=0;iE8.error("share req",e)));t.push(n)}else{const e=q3(c[i],K3(b8,{encrypted:"yes",use_temp:!0,item:[Z8(Z8({},u),{},{idtoken:d,nodesignatures:r,verifieridentifier:l},f)],one_key_flow:!0}),null,{logTracingHeader:q8.logRequestTracing}).catch((e=>E8.error("share req",e)));t.push(e)}}let n;return W8(t,(async(e,t)=>{const r=e.filter((e=>!(!e||"object"!==typeof e)&&!e.error)),o=e.map((e=>{if(e&&e.result&&e.result.keys[0].public_key){if(!n&&!u.extended_verifier_id){var t,r;(null===(t=e.result.keys[0].nonce_data)||void 0===t||null===(r=t.pubNonce)||void 0===r?void 0:r.x)&&(n=e.result.keys[0].nonce_data)}return e.result.keys[0].public_key}})),s=_8(o,1+~~(c.length/2));if(!s)throw new Error("invalid result from nodes, threshold number of public key results are not matching");if(!n&&!u.extended_verifier_id&&!r8[a])throw new Error(`invalid metadata result from nodes, nonce metadata is empty for verifier: ${l} and verifierId: ${u.verifier_id}`);const d=h.length>0?c.length:1+~~(c.length/2);if(r.length>=d&&s&&(n||u.extended_verifier_id||r8[a])){const e=[],o=[],a=[],l=[],d=[];for(let t=0;t0)u&&null!==(f=u[0])&&void 0!==f&&f.ephemPublicKey?o.push(F8(u[0],c[0],m).catch((e=>E8.debug("session sig decryption",e)))):o.push(Promise.resolve(m8.from(c[0],"hex")));else o.push(Promise.resolve(void 0));if((null===i||void 0===i?void 0:i.length)>0)s&&null!==(p=s[0])&&void 0!==p&&p.ephemPublicKey?a.push(F8(s[0],i[0],m).catch((e=>E8.debug("session token sig decryption",e)))):a.push(Promise.resolve(m8.from(i[0],"base64")));else a.push(Promise.resolve(void 0));if((null===d||void 0===d?void 0:d.length)>0){const t=n.result.keys[0];l.push(new(p8())(t.node_index)),t.share_metadata&&e.push(F8(t.share_metadata,m8.from(t.share,"base64").toString("binary").padStart(64,"0"),m).catch((e=>E8.debug("share decryption",e))))}else l.push(void 0),e.push(Promise.resolve(void 0))}const h=await Promise.all(e.concat(o).concat(a)),g=h.slice(0,e.length),v=h.slice(e.length,e.length+o.length),y=h.slice(e.length+o.length,h.length),b=v.filter((e=>!!e)),w=1+~~(c.length/2);if(!u.extended_verifier_id&&b.length!!e));if(!u.extended_verifier_id&&x.length{e?d.push({token:e.toString("base64"),signature:v[t].toString("hex"),node_pubx:r[t].result.node_pubx,node_puby:r[t].result.node_puby}):d.push(void 0)})),t.resolved)return;const _=g.reduce(((e,t,r)=>(t&&e.push({index:l[r],value:new(p8())(t)}),e)),[]),S=x8(_.length,1+~~(c.length/2));let k=null;for(let t=0;te.includes(r))),n=r.map((e=>e.value)),o=r.map((e=>e.index)),a=D8(i,n,o);if(!a)continue;const c=d4(m8.from(a.toString(16,64),"hex")).toString("hex"),l=c.slice(2,66),u=c.slice(66);if(0===new(p8())(l,16).cmp(new(p8())(s.X,16))&&0===new(p8())(u,16).cmp(new(p8())(s.Y,16))){k=a;break}}if(void 0===k||null===k)throw new Error("could not derive private key");return{privateKey:k,sessionTokenData:d,thresholdNonceData:n,nodeIndexes:l}}throw new Error("Invalid")}))})).then((async e=>{var o;const{privateKey:s,sessionTokenData:c,thresholdNonceData:l,nodeIndexes:d}=e;let h=l;if(!s)throw new Error("Invalid private key returned");const f=s,p=d4(m8.from(f.toString(16,64),"hex")).toString("hex"),g=p.slice(2,66),v=p.slice(66);let y,b,w=new(p8())(null!==(o=h)&&void 0!==o&&o.nonce?h.nonce.padStart(64,"0"):"0","hex"),x="v1";if(u.extended_verifier_id)x="v2",y=i.keyFromPublic({x:g,y:v}).getPublic();else if(r8[a])if(n)h=await V8(t,i,r,g,v,f),w=new(p8())(h.nonce||"0",16),b={X:h.pubNonce.x,Y:h.pubNonce.y},x=h.typeOfUser,"v2"===x&&(y=i.keyFromPublic({x:g,y:v}).getPublic().add(i.keyFromPublic({x:h.pubNonce.x,y:h.pubNonce.y}).getPublic()));else{x="v1",w=await $8(t,{pub_key_X:g,pub_key_Y:v});const e=f.add(w).umod(i.curve.n);y=i.keyFromPrivate(e.toString(16,64),"hex").getPublic()}else x="v2",y=i.keyFromPublic({x:g,y:v}).getPublic().add(i.keyFromPublic({x:h.pubNonce.x,y:h.pubNonce.y}).getPublic()),b={X:h.pubNonce.x,Y:h.pubNonce.y};const _=O8(i,f),S=T8(i,y.getX(),y.getY());E8.debug("> torus.js/retrieveShares",{finalEvmAddress:S});let k="";if("v1"===x||"v2"===x&&w.gt(new(p8())(0))){k=f.add(w).umod(i.curve.n).toString("hex",64)}let E=!1;return"v1"===x?E=null:"v2"===x&&(E=w.eq(new(p8())("0"))),{finalKeyData:{evmAddress:S,X:y.getX().toString(16,64),Y:y.getY().toString(16,64),privKey:k},oAuthKeyData:{evmAddress:_,X:g,Y:v,privKey:f.toString("hex",64).padStart(64,"0")},sessionData:{sessionTokenData:c,sessionAuthKey:m.toString("hex").padStart(64,"0")},metadata:{pubNonce:b,nonce:w,typeOfUser:x,upgraded:E},nodesData:{nodeIndexes:d.map((e=>e.toNumber()))}}}))}const X8=async(e,t,r)=>{const n=e.map((e=>q3(e,K3("VerifierLookupRequest",{verifier:t,verifier_id:r.toString()})).catch((e=>E8.error("lookup request failed",e)))));return W8(n,(t=>{const r=t.filter((e=>e)),n=_8(r.map((e=>e&&e.error)),1+~~(e.length/2)),i=_8(r.map((e=>e&&e.result)),1+~~(e.length/2));return i||n?Promise.resolve({keyResult:i,errorResult:n}):Promise.reject(new Error(`invalid results ${JSON.stringify(t)}`))}))},J8=async e=>{let t,r,{endpoints:n,torusNodePubs:i,lastPoint:o,firstPoint:a,verifier:s,verifierId:c,signerHost:l,network:u,clientId:d}=e;if(void 0===o?(t=Math.floor(Math.random()*n.length),E8.info("keyassign",t,n[t]),r=t):t=o%n.length,t===a)throw new Error("Looped through all");void 0!==a&&(r=a);const h=K3("KeyAssign",{verifier:s,verifier_id:c.toString()});try{const e=await q3(l,h,{headers:{pubKeyX:i[t].X,pubKeyY:i[t].Y,network:u,clientId:d}},{useAPIKey:!0});return await q3(n[t],Z8(Z8({},h),e),{headers:{"Content-Type":"application/json; charset=utf-8"}})}catch(f){E8.error(f.status,f.message,f,"key assign error");const e=["Timed out","Failed to fetch","cancelled","NetworkError when attempting to fetch resource.","TypeError: Failed to fetch","TypeError: cancelled","TypeError: NetworkError when attempting to fetch resource."];if(502===(null===f||void 0===f?void 0:f.status)||504===(null===f||void 0===f?void 0:f.status)||401===(null===f||void 0===f?void 0:f.status)||e.includes(f.message)||e.some((e=>f.message.includes(e)))||f.message&&f.message.includes("reason: getaddrinfo EAI_AGAIN"))return J8({endpoints:n,torusNodePubs:i,lastPoint:t+1,firstPoint:r,verifier:s,verifierId:c,signerHost:l,network:u,clientId:d});throw new Error(`Sorry, the Torus Network that powers Web3Auth is currently very busy.\n We will generate your key in time. Pls try again later. \n\n ${f.message||""}`)}};function Q8(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function e9(e){for(var t=1;t0&&void 0!==arguments[0])||arguments[0]?(E8.enableAll(),q8.logRequestTracing=!0):E8.disableAll()}static setAPIKey(e){U3(e)}static setEmbedHost(e){B3(e)}static isGetOrSetNonceError(e){return e instanceof k8}static getPostboxKey(e){return"v1"===e.metadata.typeOfUser&&e.finalKeyData.privKey||e.oAuthKeyData.privKey}async retrieveShares(e,t,r,n,i){let o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{};return this.isLegacyNetwork?this.legacyRetrieveShares(e,t,r,n,i,o):Y8({legacyMetadataHost:this.legacyMetadataHost,serverTimeOffset:this.serverTimeOffset,enableOneKey:this.enableOneKey,ecCurve:this.ec,allowHost:this.allowHost,network:this.network,clientId:this.clientId,endpoints:e,verifier:r,verifierParams:n,idToken:i,importedShares:[],extraParams:o})}async getPublicAddress(e,t,r){let{verifier:n,verifierId:i,extendedVerifierId:o}=r;return this.isLegacyNetwork?this.getLegacyPublicAddress(e,t,{verifier:n,verifierId:i},this.enableOneKey):this.getNewPublicAddress(e,{verifier:n,verifierId:i,extendedVerifierId:o},this.enableOneKey)}async importPrivateKey(e,t,r,n,i,o,a){let s=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{};if(this.isLegacyNetwork)throw new Error("This function is not supported on legacy networks");if(e.length!==t.length)throw new Error("length of endpoints array must be same as length of nodeIndexes array");const c=1+~~(e.length/2)-1,l=[],u=this.ec.keyFromPrivate(a.padStart(64,"0"),"hex");for(const x of t)l.push(new(p8())(x));const d=u.getPrivate(),h=new(p8())(u4()),f=d.sub(h).umod(this.ec.curve.n),p=this.ec.keyFromPrivate(f.toString("hex").padStart(64,"0")).getPublic(),m=z8(this.ec,c,f).generateShares(l),g=this.generateNonceMetadataParams("getOrSetNonce",f,h),v=m8.from(b4()(g.set_data),"utf8").toString("base64"),y=[],b=[];for(let x=0;x5&&void 0!==arguments[5]?arguments[5]:{};const a=[];await V3(this.allowHost,{headers:{verifier:r,verifierId:n.verifier_id,network:this.network,clientId:this.clientId}},{useAPIKey:!0});const s=u4(),c=d4(s).toString("hex"),l=c.slice(2,66),u=c.slice(66),d=A8(m8.from(i,"utf8"));for(let h=0;h{E8.error("commitment",e)}));a.push(t)}return W8(a,(t=>{const r=t.filter((e=>!(!e||"object"!==typeof e)&&!e.error));return r.length>=3*~~(e.length/4)+1?Promise.resolve(t):Promise.reject(new Error(`invalid ${JSON.stringify(t)}`))})).then((a=>{const c=[],l=[];for(let e=0;eE8.error("share req",e)));c.push(a)}return W8(c,(async(r,n)=>{const i=r.filter((e=>e)),o=_8(r.map((e=>e&&e.result&&e.result.keys[0].PublicKey)),1+~~(e.length/2));if(i.length>=1+~~(e.length/2)&&o){const i=[],l=[];for(let e=0;e0){n.result.keys.sort(((e,t)=>new(p8())(e.Index,16).cmp(new(p8())(t.Index,16))));const e=n.result.keys[0];if(e.Metadata){const t={ephemPublicKey:m8.from(e.Metadata.ephemPublicKey,"hex"),iv:m8.from(e.Metadata.iv,"hex"),mac:m8.from(e.Metadata.mac,"hex")};i.push(g4(s,e9(e9({},t),{},{ciphertext:m8.from(m8.from(e.Share,"base64").toString("binary").padStart(64,"0"),"hex")})).catch((e=>E8.debug("share decryption",e))))}else i.push(Promise.resolve(m8.from(e.Share.padStart(64,"0"),"hex")))}else i.push(Promise.resolve(void 0));l.push(new(p8())(t[e],16))}const u=await Promise.all(i);if(n.resolved)return;const d=u.reduce(((e,t,r)=>(t&&e.push({index:l[r],value:new(p8())(t)}),e)),[]),h=x8(d.length,1+~~(e.length/2));let f=null;for(let e=0;et.includes(r))),n=r.map((e=>e.value)),i=r.map((e=>e.index)),a=D8(this.ec,n,i);if(!a)continue;const s=d4(m8.from(a.toString(16,64),"hex")).toString("hex"),c=s.slice(2,66),l=s.slice(66);if(0===new(p8())(c,16).cmp(new(p8())(o.X,16))&&0===new(p8())(l,16).cmp(new(p8())(o.Y,16))){f=a;break}}if(void 0===f||null===f)throw new Error("could not derive private key");return f}throw new Error("invalid")}))})).then((async e=>{const t=e;if(!t)throw new Error("Invalid private key returned");const r=d4(m8.from(t.toString(16,64),"hex")).toString("hex"),n=r.slice(2,66),i=r.slice(66);let o,a,s,c="v1";if(this.enableOneKey){const e=await V8(this.legacyMetadataHost,this.ec,this.serverTimeOffset,n,i,t);o=new(p8())(e.nonce||"0",16),c=e.typeOfUser,"v2"===e.typeOfUser&&(a=this.ec.keyFromPublic({x:n,y:i}).getPublic().add(this.ec.keyFromPublic({x:e.pubNonce.x,y:e.pubNonce.y}).getPublic()),s={X:e.pubNonce.x,Y:e.pubNonce.y})}else{o=await $8(this.legacyMetadataHost,{pub_key_X:n,pub_key_Y:i});const e=t.add(o).umod(this.ec.curve.n);a=this.ec.keyFromPrivate(e.toString("hex"),"hex").getPublic()}const l=O8(this.ec,t),u=T8(this.ec,a.getX(),a.getY());E8.debug("> torus.js/retrieveShares",{finalEvmAddress:u});let d="";if("v1"===c||"v2"===c&&o.gt(new(p8())(0))){d=t.add(o).umod(this.ec.curve.n).toString("hex",64).padStart(64,"0")}let h=!1;return"v1"===c?h=null:"v2"===c&&(h=o.eq(new(p8())("0"))),{finalKeyData:{evmAddress:u,X:a?a.getX().toString(16,64):"",Y:a?a.getY().toString(16,64):"",privKey:d},oAuthKeyData:{evmAddress:l,X:n,Y:i,privKey:t.toString("hex",64).padStart(64,"0")},sessionData:{sessionTokenData:[],sessionAuthKey:""},metadata:{pubNonce:s,nonce:o,typeOfUser:c,upgraded:h},nodesData:{nodeIndexes:[]}}}))}async getLegacyPublicAddress(e,t,r,n){let i,{verifier:o,verifierId:a}=r;E8.debug("> torus.js/getPublicAddress",{endpoints:e,torusNodePubs:t,verifier:o,verifierId:a});let s=!1;const{keyResult:c,errorResult:l}=await X8(e,o,a)||{};if(l&&JSON.stringify(l).includes("Verifier not supported"))throw new Error("Verifier not supported. Check if you: \n\n 1. Are on the right network (Torus testnet/mainnet) \n\n 2. Have setup a verifier on dashboard.web3auth.io?");if(l&&JSON.stringify(l).includes("Verifier + VerifierID has not yet been assigned")){await J8({endpoints:e,torusNodePubs:t,lastPoint:void 0,firstPoint:void 0,verifier:o,verifierId:a,signerHost:this.signerHost,network:this.network,clientId:this.clientId});const r=await((e,t,r,n)=>new Promise(((i,o)=>{setTimeout((()=>{X8(e,t,r).then(i).catch(o)}),n)})))(e,o,a,1e3);i=null===r||void 0===r?void 0:r.keyResult,s=!0}else{if(!c)throw new Error(`node results do not match at first lookup ${JSON.stringify(c||{})}, ${JSON.stringify(l||{})}`);i=c}if(E8.debug("> torus.js/getPublicAddress",{finalKeyResult:i,isNewKey:s}),i)return this.formatLegacyPublicKeyData({finalKeyResult:i,isNewKey:s,enableOneKey:n});throw new Error(`node results do not match at final lookup ${JSON.stringify(c||{})}, ${JSON.stringify(l||{})}`)}generateNonceMetadataParams(e,t,r){const n=this.ec.keyFromPrivate(t.toString("hex",64)),i={operation:e,timestamp:new(p8())(~~(this.serverTimeOffset+Date.now()/1e3)).toString(16)};r&&(i.data=r.toString("hex",64));const o=n.sign(A8(m8.from(b4()(i),"utf8")).slice(2));return{pub_key_X:n.getPublic().getX().toString("hex",64),pub_key_Y:n.getPublic().getY().toString("hex",64),set_data:i,signature:m8.from(o.r.toString(16,64)+o.s.toString(16,64)+new(p8())("").toString(16,2),"hex").toString("base64")}}async getNewPublicAddress(e,t,r){let{verifier:n,verifierId:i,extendedVerifierId:o}=t;E8.debug("> torus.js/getPublicAddress",{endpoints:e,verifier:n,verifierId:i});const a=await(async e=>{const{endpoints:t,network:r,verifier:n,verifierId:i,extendedVerifierId:o}=e,a=t.map((e=>q3(e,K3(g8,{verifier:n,verifier_id:i.toString(),extended_verifier_id:o,one_key_flow:!0,fetch_node_index:!0}),null,{logTracingHeader:q8.logRequestTracing}).catch((e=>E8.error(`${g8} request failed`,e)))));let s;const c=[],l=await W8(a,(e=>{const a=e.filter((e=>{if(e&&!e.error){var t,r,n;if(!s)(null===(t=e.result)||void 0===t||null===(r=t.keys[0].nonce_data)||void 0===r||null===(n=r.pubNonce)||void 0===n?void 0:n.x)&&(s=e.result.keys[0].nonce_data);return e}return!1})),l=_8(a.map((e=>e&&e.error)),1+~~(t.length/2)),u=_8(a.map((e=>e&&(e=>{const t={keys:[],is_new_key:e.is_new_key};return e&&e.keys&&e.keys.length>0&&(t.keys=e.keys.map((e=>({pub_key_X:e.pub_key_X,pub_key_Y:e.pub_key_Y,address:e.address})))),t})(e.result))),1+~~(t.length/2));return u&&(s||o||r8[r])||l?(u&&e.forEach((e=>{if(e&&e.result){const t=parseInt(e.result.node_index);t&&c.push(t)}})),Promise.resolve({keyResult:u,nodeIndexes:c,errorResult:l,nonceResult:s})):Promise.reject(new Error(`invalid public key result: ${JSON.stringify(e)} and nonce result:${JSON.stringify(s||{})} for verifier: ${n}, verifierId: ${i} and extendedVerifierId: ${o} `))}));return l})({endpoints:e,network:this.network,verifier:n,verifierId:i,extendedVerifierId:o}),{errorResult:s,keyResult:c,nodeIndexes:l=[]}=a,{nonceResult:u}=a;if(s&&JSON.stringify(s).toLowerCase().includes("verifier not supported"))throw new Error("Verifier not supported. Check if you: \n\n 1. Are on the right network (Torus testnet/mainnet) \n\n 2. Have setup a verifier on dashboard.web3auth.io?");if(s)throw new Error(`node results do not match at first lookup ${JSON.stringify(c||{})}, ${JSON.stringify(s||{})}`);if(E8.debug("> torus.js/getPublicAddress",{keyResult:c}),null===c||void 0===c||!c.keys)throw new Error(`node results do not match at final lookup ${JSON.stringify(c||{})}, ${JSON.stringify(s||{})}`);if(!u&&!o&&!r8[this.network])throw new k8("metadata nonce is missing in share response");const{pub_key_X:d,pub_key_Y:h}=c.keys[0];let f;const p=new(p8())((null===u||void 0===u?void 0:u.nonce)||"0",16);let m,g;if(o)g=this.ec.keyFromPublic({x:d,y:h}).getPublic(),m=g;else{if(r8[this.network])return this.formatLegacyPublicKeyData({isNewKey:c.is_new_key,enableOneKey:r,finalKeyResult:{keys:c.keys}});{const e=u;m=this.ec.keyFromPublic({x:d,y:h}).getPublic(),g=this.ec.keyFromPublic({x:d,y:h}).getPublic().add(this.ec.keyFromPublic({x:e.pubNonce.x,y:e.pubNonce.y}).getPublic()),f={X:e.pubNonce.x,Y:e.pubNonce.y}}}if(!m)throw new Error("Unable to derive oAuthPubKey");const v=m.getX().toString(16,64),y=m.getY().toString(16,64),b=T8(this.ec,m.getX(),m.getY());if(E8.debug("> torus.js/getPublicAddress, oAuthKeyData",{X:v,Y:y,oAuthAddress:b,nonce:null===p||void 0===p?void 0:p.toString(16),pubNonce:f}),!g)throw new Error("Unable to derive finalPubKey");const w=g?g.getX().toString(16,64):"",x=g?g.getY().toString(16,64):"";return{oAuthKeyData:{evmAddress:b,X:v,Y:y},finalKeyData:{evmAddress:g?T8(this.ec,g.getX(),g.getY()):"",X:w,Y:x},metadata:{pubNonce:f,nonce:p,upgraded:(null===u||void 0===u?void 0:u.upgraded)||!1,typeOfUser:"v2"},nodesData:{nodeIndexes:l}}}async formatLegacyPublicKeyData(e){var t,r;const{finalKeyResult:n,enableOneKey:i,isNewKey:o}=e,{pub_key_X:a,pub_key_Y:s}=n.keys[0];let c,l,u,d,h;const f=this.ec.keyFromPublic({x:a,y:s}).getPublic();if(i){try{c=await H8(this.legacyMetadataHost,this.ec,this.serverTimeOffset,a,s,void 0,!o),l=new(p8())(c.nonce||"0",16),d=c.typeOfUser}catch{throw new k8}if("v1"===c.typeOfUser)u=this.ec.keyFromPublic({x:a,y:s}).getPublic().add(this.ec.keyFromPrivate(l.toString(16)).getPublic());else{if("v2"!==c.typeOfUser)throw new Error("getOrSetNonce should always return typeOfUser.");u=this.ec.keyFromPublic({x:a,y:s}).getPublic().add(this.ec.keyFromPublic({x:c.pubNonce.x,y:c.pubNonce.y}).getPublic()),h={X:c.pubNonce.x,Y:c.pubNonce.y}}}else d="v1",l=await $8(this.legacyMetadataHost,{pub_key_X:a,pub_key_Y:s}),u=this.ec.keyFromPublic({x:a,y:s}).getPublic().add(this.ec.keyFromPrivate(l.toString(16)).getPublic());if(!f)throw new Error("Unable to derive oAuthPubKey");const p=f.getX().toString(16,64),m=f.getY().toString(16,64),g=T8(this.ec,f.getX(),f.getY());if(E8.debug("> torus.js/getPublicAddress, oAuthKeyData",{X:p,Y:m,oAuthAddress:g,nonce:null===(t=l)||void 0===t?void 0:t.toString(16),pubNonce:h}),"v2"===d&&!u)throw new Error("Unable to derive finalPubKey");const v=u?u.getX().toString(16,64):"",y=u?u.getY().toString(16,64):"";return{oAuthKeyData:{evmAddress:g,X:p,Y:m},finalKeyData:{evmAddress:u?T8(this.ec,u.getX(),u.getY()):"",X:v,Y:y},metadata:{pubNonce:h,nonce:l,upgraded:(null===(r=c)||void 0===r?void 0:r.upgraded)||!1,typeOfUser:d},nodesData:{nodeIndexes:[]}}}}var r9=r(5505),n9=r(4872).Buffer;function i9(e){return n9.from((0,w4.wn)(e))}const o9=new $s.ec("secp256k1");function a9(e){return{iv:n9.from(e.iv,"hex"),ephemPublicKey:n9.from(e.ephemPublicKey,"hex"),ciphertext:n9.from(e.ciphertext,"hex"),mac:n9.from(e.mac,"hex")}}function s9(e){return{iv:n9.from(e.iv).toString("hex"),ephemPublicKey:n9.from(e.ephemPublicKey).toString("hex"),ciphertext:n9.from(e.ciphertext).toString("hex"),mac:n9.from(e.mac).toString("hex")}}async function c9(e,t){const r=JSON.stringify(t),n=n9.from(r,"utf-8"),i=s9(await m4(d4(n9.from(e,"hex")),n));return JSON.stringify(i)}async function l9(e,t){const r=a9(JSON.parse(t)),n=o9.keyFromPrivate(e),i=(await g4(n9.from(n.getPrivate().toString("hex",64),"hex"),r)).toString("utf-8");return JSON.parse(i)}var u9=r(4872).Buffer;const d9="google",h9="facebook",f9="reddit",p9="discord",m9="twitch",g9="apple",v9="github",y9="linkedin",b9="twitter",w9="weibo",x9="line",_9="email_password",S9="passwordless",k9="jwt",E9="webauthn",A9="single_id_verifier",P9={POPUP:"popup",REDIRECT:"redirect"},O9="localStorage",T9="server",C9="triggerLogin",j9="triggerAggregateLogin",R9="triggerHybridAggregateLogin",I9="fetchNodeDetails",M9="pubAddressLookup",L9="fetchShares";var N9=C3().getLogger("customauth");const D9={[g9]:"apple",[v9]:"github",[y9]:"linkedin",[b9]:"twitter",[w9]:"weibo",[x9]:"line",[_9]:"Username-Password-Authentication",[S9]:"email"},z9=e=>e.href.endsWith("/")?e.href:`${e.href}/`,B9={webWorkerSupport:!1};function U9(e,t){return t?e:e.toLowerCase()}const F9=function(e,t,r){let n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];const{name:i,sub:o}=e;if(r)return U9(e[r],n);switch(t){case S9:case _9:return U9(i,n);case w9:case v9:case b9:case g9:case y9:case x9:case k9:return U9(o,n);default:throw new Error("Invalid login type")}},$9=(e,t)=>{const r=e.split("&").reduce(((e,t)=>{const[r,n]=t.split("=");return e[r]=n,e}),{});N9.info(r,t);let n={},i="";return Object.keys(r).length>0&&r.state?(n=JSON.parse(atob(decodeURIComponent(decodeURIComponent(r.state))))||{},i=r.error_description||r.error||i):Object.keys(t).length>0&&t.state&&(n=JSON.parse(atob(decodeURIComponent(decodeURIComponent(t.state))))||{},t.error&&(i=t.error)),{error:i,instanceParameters:n,hashParameters:r}};function H9(e){const{baseURL:t,query:r,hash:n}=e,i=new URL(t);if(r&&Object.keys(r).forEach((e=>{i.searchParams.append(e,r[e])})),n){const e=new URL(H9({baseURL:t,query:n})).searchParams.toString();i.hash=e}return i.toString()}const V9=e=>{try{return new URL(decodeURIComponent(e))}catch(t){throw new Error(`${(null===t||void 0===t?void 0:t.message)||""}, Note: Your jwt domain: (i.e ${e}) must have http:// or https:// prefix`)}};function q9(e){return e!==h9&&e!==x9||!function(){const e=Z3().getParser(navigator.userAgent).getPlatform();return e.type===Z3().PLATFORMS_MAP.tablet||e.type===Z3().PLATFORMS_MAP.mobile}()?1e4:6e4}class K9 extends JH.EventEmitter{constructor(e){let{url:t,target:r,features:n,timeout:i=3e4}=e;super(),A3(this,"url",void 0),A3(this,"target",void 0),A3(this,"features",void 0),A3(this,"window",void 0),A3(this,"windowTimer",void 0),A3(this,"iClosedWindow",void 0),A3(this,"timeout",void 0),this.url=t,this.target=r||"_blank",this.features=n||function(){const e=void 0!==window.screenLeft?window.screenLeft:window.screenX,t=void 0!==window.screenTop?window.screenTop:window.screenY,r=window.innerWidth?window.innerWidth:document.documentElement.clientWidth?document.documentElement.clientWidth:window.screen.width,n=window.innerHeight?window.innerHeight:document.documentElement.clientHeight?document.documentElement.clientHeight:window.screen.height,i=Math.abs((r-1200)/2/1+e);return`titlebar=0,toolbar=0,status=0,location=0,menubar=0,height=700,width=1200,top=${Math.abs((n-700)/2/1+t)},left=${i}`}(),this.window=void 0,this.windowTimer=void 0,this.iClosedWindow=!1,this.timeout=i,this._setupTimer()}_setupTimer(){this.window&&(this.windowTimer=Number(setInterval((()=>{this.window&&this.window.closed&&(clearInterval(this.windowTimer),setTimeout((()=>{this.iClosedWindow||this.emit("close"),this.iClosedWindow=!1,this.window=void 0}),this.timeout)),void 0===this.window&&clearInterval(this.windowTimer)}),500)))}open(){var e;return this.window=window.open(this.url.href,this.target,this.features),null!==(e=this.window)&&void 0!==e&&e.focus&&this.window.focus(),Promise.resolve()}close(){this.iClosedWindow=!0,this.window&&this.window.close()}redirect(e){e?window.location.replace(this.url.href):window.location.href=this.url.href}}const W9=["access_token","id_token"];function G9(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Z9(e){for(var t=1;t{let n;const i=async t=>{try{const{error:i,data:o}=t,a=o||{},{instanceParams:s,hashParams:{access_token:c,id_token:l}}=a,u=W3(a.hashParams,W9);if(i)return N9.error(t),void r(new Error(`Error: ${i}. Info: ${JSON.stringify(t.data||{})}`));t.data&&s.verifier===this.verifier&&(N9.info(t.data),!this.redirectToOpener&&n&&await n.postMessage({success:!0}),e(Z9(Z9({accessToken:c,idToken:l||""},u),{},{state:s})))}catch(i){N9.error(i),r(i)}};if(this.redirectToOpener){const e=async r=>{if(!r.data)return;const n=r.data;n.channel===`redirect_channel_${this.nonce}`&&(window.removeEventListener("message",e),i(n),t.close())};window.addEventListener("message",e)}else n=new V4(`redirect_channel_${this.nonce}`,B9),n.addEventListener("message",(async e=>{await i(e),n.close(),t.close()}));t.open(),t.once("close",(()=>{n&&n.close(),r(new Error("user closed popup"))}))})):(t.redirect(e.locationReplaceOnRedirect),null)}}class X9 extends Y9{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),A3(this,"clientId",void 0),A3(this,"verifier",void 0),A3(this,"redirect_uri",void 0),A3(this,"typeOfLogin",void 0),A3(this,"uxMode",void 0),A3(this,"redirectToOpener",void 0),A3(this,"jwtParams",void 0),A3(this,"customState",void 0),A3(this,"RESPONSE_TYPE","token"),A3(this,"SCOPE","identify email"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://discord.com/api/oauth2/authorize"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=O3()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await V3("https://discord.com/api/users/@me",{headers:{Authorization:`Bearer ${t}`}}),{id:n,avatar:i,email:o="",username:a="",discriminator:s=""}=r;return{profileImage:null===i?`https://cdn.discordapp.com/embed/avatars/${Number(s)%5}.png`:`https://cdn.discordapp.com/avatars/${n}/${i}.png?size=2048`,name:`${a}#${s}`,email:o,verifierId:n,verifier:this.verifier,typeOfLogin:this.typeOfLogin}}}class J9 extends Y9{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),A3(this,"clientId",void 0),A3(this,"verifier",void 0),A3(this,"redirect_uri",void 0),A3(this,"typeOfLogin",void 0),A3(this,"uxMode",void 0),A3(this,"redirectToOpener",void 0),A3(this,"jwtParams",void 0),A3(this,"customState",void 0),A3(this,"RESPONSE_TYPE","token"),A3(this,"SCOPE","public_profile email"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://www.facebook.com/v15.0/dialog/oauth"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=O3()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await V3("https://graph.facebook.com/me?fields=name,email,picture.type(large)",{headers:{Authorization:`Bearer ${t}`}}),{name:n="",id:i,picture:o,email:a=""}=r;return{email:a,name:n,profileImage:o.data.url||"",verifier:this.verifier,verifierId:i,typeOfLogin:this.typeOfLogin}}}class Q9 extends Y9{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),A3(this,"clientId",void 0),A3(this,"verifier",void 0),A3(this,"redirect_uri",void 0),A3(this,"typeOfLogin",void 0),A3(this,"uxMode",void 0),A3(this,"redirectToOpener",void 0),A3(this,"jwtParams",void 0),A3(this,"customState",void 0),A3(this,"RESPONSE_TYPE","token id_token"),A3(this,"SCOPE","profile email openid"),A3(this,"PROMPT","consent select_account"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://accounts.google.com/o/oauth2/v2/auth"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=O3()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,prompt:this.PROMPT,redirect_uri:this.redirect_uri,scope:this.SCOPE,nonce:this.nonce},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await V3("https://www.googleapis.com/userinfo/v2/me",{headers:{Authorization:`Bearer ${t}`}}),{picture:n="",email:i="",name:o=""}=r;return{email:i,name:o,profileImage:n,verifier:this.verifier,verifierId:i.toLowerCase(),typeOfLogin:this.typeOfLogin}}}let e7=class extends Y9{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),A3(this,"clientId",void 0),A3(this,"verifier",void 0),A3(this,"redirect_uri",void 0),A3(this,"typeOfLogin",void 0),A3(this,"uxMode",void 0),A3(this,"redirectToOpener",void 0),A3(this,"jwtParams",void 0),A3(this,"customState",void 0),A3(this,"SCOPE","openid profile email"),A3(this,"RESPONSE_TYPE","token id_token"),A3(this,"PROMPT","login"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const{domain:e}=this.jwtParams,t=V9(e);t.pathname+=t.pathname.endsWith("/")?"authorize":"/authorize";const r=JSON.parse(JSON.stringify(this.jwtParams));delete r.domain;const n=O3()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,prompt:this.PROMPT,redirect_uri:this.redirect_uri,scope:this.SCOPE,connection:D9[this.typeOfLogin],nonce:this.nonce},r);Object.keys(n).forEach((e=>{n[e]&&t.searchParams.append(e,n[e])})),this.finalURL=t}async getUserInfo(e){const{idToken:t,accessToken:r}=e,{domain:n,verifierIdField:i,isVerifierIdCaseSensitive:o,user_info_route:a="userinfo"}=this.jwtParams;if(r)try{const e=new URL(n),t=await V3(`${z9(e)}${a}`,{headers:{Authorization:`Bearer ${r}`}}),{picture:s,name:c,email:l}=t;return{email:l,name:c,profileImage:s,verifierId:F9(t,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}catch(s){C3().warn(s,"Unable to get userinfo from endpoint")}if(t){const e=J4(t),{name:r,email:n,picture:a}=e;return{profileImage:a,name:r,email:n,verifierId:F9(e,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}throw new Error("Access/id token not available")}};class t7 extends Y9{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),A3(this,"clientId",void 0),A3(this,"verifier",void 0),A3(this,"redirect_uri",void 0),A3(this,"typeOfLogin",void 0),A3(this,"uxMode",void 0),A3(this,"redirectToOpener",void 0),A3(this,"jwtParams",void 0),A3(this,"customState",void 0),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=JSON.parse(JSON.stringify(this.jwtParams));delete e.domain;const t=O3()({state:this.state,client_id:this.clientId,nonce:this.nonce},e);this.finalURL=new URL(H9({baseURL:this.redirect_uri,query:null,hash:t}))}async getUserInfo(e){const{idToken:t,accessToken:r}=e,{domain:n,verifierIdField:i,isVerifierIdCaseSensitive:o,user_info_route:a="userinfo"}=this.jwtParams;if(r)try{const e=new URL(n),t=await V3(`${z9(e)}${a}`,{headers:{Authorization:`Bearer ${r}`}}),{picture:s,name:c,email:l}=t;return{email:l,name:c,profileImage:s,verifierId:F9(t,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}catch(s){C3().warn(s,"Unable to get userinfo from endpoint")}if(t){const e=J4(t),{name:r,email:n,picture:a}=e;return{profileImage:a,name:r,email:n,verifierId:F9(e,this.typeOfLogin,i,o),verifier:this.verifier,typeOfLogin:this.typeOfLogin}}throw new Error("Access/id token not available")}handleLoginWindow(e){const{id_token:t,access_token:r}=this.jwtParams,n=new K9({url:this.finalURL,features:e.popupFeatures});return this.uxMode!==P9.REDIRECT?Promise.resolve({state:{},idToken:t,accessToken:r}):(n.redirect(e.locationReplaceOnRedirect),null)}}const r7=["access_token","id_token"];function n7(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i7(e){for(var t=1;t{if(this.redirectToOpener)return void t(new Error("Cannot use redirect to opener for passwordless"));const r=r=>{try{const{error:n,data:i}=r,o=i||{},{instanceParams:a,hashParams:{access_token:s,id_token:c}}=o,l=W3(o.hashParams,r7);if(n)return N9.error(r.error),void t(new Error(n));r.data&&a.verifier===this.verifier&&(N9.info(r.data),e(i7(i7({accessToken:s,idToken:c||""},l),{},{state:a})))}catch(n){N9.error(n),t(n)}},n=new V4(`redirect_channel_${this.nonce}`,B9);n.addEventListener("message",(async e=>{r(e),n.close()}));try{const{connection:e="email",login_hint:r}=this.jwtParams,n=O3()({client_id:this.clientId,connection:e,email:"email"===e?r:void 0,phone_number:"sms"===e?r:void 0,send:"link",authParams:{scope:this.SCOPE,state:this.state,response_type:this.RESPONSE_TYPE,redirect_uri:this.redirect_uri,nonce:this.nonce,prompt:this.PROMPT}},{authParams:this.jwtParams});q3(this.finalURL.href,JSON.parse(JSON.stringify(n))).then((e=>{N9.info("posted",e)})).catch((e=>{N9.error(e),t(e)}))}catch(i){N9.error(i),t(i)}}))}}class a7 extends Y9{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),A3(this,"clientId",void 0),A3(this,"verifier",void 0),A3(this,"redirect_uri",void 0),A3(this,"typeOfLogin",void 0),A3(this,"uxMode",void 0),A3(this,"redirectToOpener",void 0),A3(this,"jwtParams",void 0),A3(this,"customState",void 0),A3(this,"RESPONSE_TYPE","token"),A3(this,"SCOPE","identity"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://www.reddit.com/api/v1/authorize"+(window.innerWidth<600?".compact":"")),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=O3()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await V3("https://oauth.reddit.com/api/v1/me",{headers:{Authorization:`Bearer ${t}`}}),{icon_img:n="",name:i=""}=r;return{email:"",name:i,profileImage:n.split("?").length>0?n.split("?")[0]:n,verifier:this.verifier,verifierId:i.toLowerCase(),typeOfLogin:this.typeOfLogin}}}class s7 extends Y9{constructor(e,t,r,n,i,o,a,s){super(e,t,r,n,i,o,a,s),A3(this,"clientId",void 0),A3(this,"verifier",void 0),A3(this,"redirect_uri",void 0),A3(this,"typeOfLogin",void 0),A3(this,"uxMode",void 0),A3(this,"redirectToOpener",void 0),A3(this,"jwtParams",void 0),A3(this,"customState",void 0),A3(this,"RESPONSE_TYPE","token"),A3(this,"SCOPE","user:read:email"),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.setFinalUrl()}setFinalUrl(){const e=new URL("https://id.twitch.tv/oauth2/authorize"),t=JSON.parse(JSON.stringify(this.jwtParams||{})),r=O3()({state:this.state,response_type:this.RESPONSE_TYPE,client_id:this.clientId,redirect_uri:this.redirect_uri,scope:this.SCOPE,force_verify:!0},t);Object.keys(r).forEach((t=>{r[t]&&e.searchParams.append(t,r[t])})),this.finalURL=e}async getUserInfo(e){const{accessToken:t}=e,r=await V3("https://api.twitch.tv/helix/users",{headers:{Authorization:`Bearer ${t}`,"Client-ID":this.clientId}}),[{profile_image_url:n="",display_name:i="",email:o="",id:a}]=r.data||[];return{profileImage:n,name:i,email:o,verifierId:a,verifier:this.verifier,typeOfLogin:this.typeOfLogin}}}const c7="https://api.webauthn.openlogin.com";class l7 extends Y9{constructor(e,t,r,n,i,o,a,s,c){super(e,t,r,n,i,o,a,s),A3(this,"clientId",void 0),A3(this,"verifier",void 0),A3(this,"redirect_uri",void 0),A3(this,"typeOfLogin",void 0),A3(this,"uxMode",void 0),A3(this,"redirectToOpener",void 0),A3(this,"jwtParams",void 0),A3(this,"customState",void 0),A3(this,"registerOnly",void 0),this.clientId=e,this.verifier=t,this.redirect_uri=r,this.typeOfLogin=n,this.uxMode=i,this.redirectToOpener=o,this.jwtParams=a,this.customState=s,this.registerOnly=c,this.setFinalUrl()}setFinalUrl(){const{webauthnURL:e}=this.customState||{},t=e?new URL(e):new URL("https://webauthn.openlogin.com"),r=JSON.parse(JSON.stringify(this.jwtParams||{})),n=O3()({register_only:!!this.registerOnly,state:this.state,client_id:this.clientId,redirect_uri:this.redirect_uri},r);Object.keys(n).forEach((e=>{n[e]&&t.searchParams.append(e,n[e])})),this.finalURL=t}async getUserInfo(e){const{idToken:t,ref:r,extraParamsPassed:n,extraParams:i}=e;let o,a,s,c,l,u,d,h,f;if("true"===n){N9.debug("extraParamsPassed is true, using extraParams passed through hashParams");try{({verifier_id:o,signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}=JSON.parse(atob(i)))}catch(p){N9.warn("unable to parse extraParams",p),({verifier_id:o,signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}=await V3(`${c7}/signature/fetch/${t}`))}}else N9.debug("extraParamsPassed is false, using extraParams passed through bridge server"),({verifier_id:o,signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}=await V3(`${c7}/signature/fetch/${t}`));if(a!==t)throw new Error("idtoken should be equal to signature");return{email:"",name:"WebAuthn Login",profileImage:"",verifier:this.verifier,verifierId:o,typeOfLogin:this.typeOfLogin,ref:r,registerOnly:this.registerOnly,extraVerifierParams:{signature:a,clientDataJSON:s,authenticatorData:c,publicKey:l,challenge:u,rpOrigin:d,credId:h,transports:f}}}}const u7=e=>{let{clientId:t,redirect_uri:r,typeOfLogin:n,verifier:i,jwtParams:o,redirectToOpener:a,uxMode:s,customState:c,registerOnly:l}=e;if(!i||!n||!t)throw new Error("Invalid params");const{domain:u,login_hint:d,id_token:h,access_token:f}=o||{};switch(n){case d9:return new Q9(t,i,r,n,s,a,o,c);case h9:return new J9(t,i,r,n,s,a,o,c);case m9:return new s7(t,i,r,n,s,a,o,c);case f9:return new a7(t,i,r,n,s,a,o,c);case p9:return new X9(t,i,r,n,s,a,o,c);case S9:if(!u||!d)throw new Error("Invalid params");return new o7(t,i,r,n,s,a,o,c);case g9:case v9:case y9:case b9:case w9:case x9:case _9:case k9:if(h||f)return new t7(t,i,r,n,s,a,o,c);if(!u)throw new Error("Invalid params");return new e7(t,i,r,n,s,a,o,c);case E9:return new l7(t,i,r,n,s,a,o,c,l);default:throw new Error("Invalid login type")}};class d7{constructor(e){A3(this,"sentry",null),this.sentry=e}startTransaction(e){if(this.sentry)return this.sentry.startTransaction(e)}finishTransaction(e){e&&e.finish()}}class h7{constructor(e){A3(this,"currentStorageMethod",O9),A3(this,"isInitialized",!1),A3(this,"storageServerUrl","https://broadcast-server.tor.us"),this.storageServerUrl=e}init(){const e=function(){var e;const t=Z3().parse(navigator.userAgent);N9.info(JSON.stringify(t),"current browser info");let r=!0;return null!==(e=navigator)&&void 0!==e&&e.brave&&(r=!1),t.engine.name!==Z3().ENGINE_MAP.WebKit&&t.engine.name!==Z3().ENGINE_MAP.Gecko||(r=!1),r}(),t=function(e){let t;try{t=window[e];const r="__storage_test__";return t.setItem(r,r),t.removeItem(r),!0}catch(r){return r&&(22===r.code||1014===r.code||"QuotaExceededError"===r.name||"NS_ERROR_DOM_QUOTA_REACHED"===r.name)&&t&&0!==t.length}}(O9);this.currentStorageMethod=e&&t?O9:T9,this.isInitialized=!0}async storeLoginDetails(e,t){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");if(this.currentStorageMethod===T9){const r=i9(u9.from(t,"utf8")),n=r.toString("hex"),i=d4(r).toString("hex"),o=await c9(n,e),a=(await h4(r,i9(u9.from(o,"utf8")))).toString("hex");await q3(`${this.storageServerUrl}/store/set`,{key:i,data:o,signature:a})}else window.localStorage.setItem(`torus_login_${t}`,JSON.stringify(e))}async retrieveLoginDetails(e){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");if(this.currentStorageMethod===T9){const t=i9(u9.from(e,"utf8")),n=t.toString("hex"),i=d4(t).toString("hex");try{const e=await V3(`${this.storageServerUrl}/store/get?key=${i}`);if(e.message){return await l9(n,e.message)}}catch(r){if(404!==r.status)throw r;N9.warn(r,"Session likely expired")}}const t=window.localStorage.getItem(`torus_login_${e}`);return JSON.parse(t||"{}")}clearLoginDetailsStorage(e){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");this.currentStorageMethod===O9&&window.localStorage.removeItem(`torus_login_${e}`)}clearOrphanedLoginDetails(){if(!this.isInitialized)throw new Error("StorageHelper is not initialized");if(this.currentStorageMethod===O9){Object.keys(window.localStorage).forEach((e=>{e.startsWith("torus_login_")&&window.localStorage.removeItem(e)}))}}}const f7=["access_token","id_token"],p7=["access_token","id_token"],m7=["access_token","id_token"],g7=["args","method"];function v7(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function y7(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{};if(this.storageHelper.init(),t)this.isInitialized=!0;else{if(!e){if(!(await fetch(`${this.config.baseUrl}sw.js`,{cache:"reload"})).ok)throw new Error("Service worker is not being served. Please serve it");try{return await(n=this.config.baseUrl,new Promise(((e,t)=>{const r=`${n}sw.js`;"serviceWorker"in window.navigator?(0,r9.z)(r,{ready(){N9.info("App is being served from cache by a service worker.\n For more details, visit https://goo.gl/AFskqB"),e(void 0)},registered(){N9.info("Service worker has been registered."),e(void 0)},cached(){N9.info("Content has been cached for offline use."),e(void 0)},updatefound(){N9.info("New content is downloading.")},updated(){N9.info("New content is available; please refresh.")},offline(){N9.info("No internet connection found. App is running in offline mode."),t(new Error("App is offline"))},error(e){N9.error("Error during service worker registration:",e),t(e)}}):t(new Error("Service workers are not supported"))}))),void(this.isInitialized=!0)}catch(i){N9.warn(i)}}var n;if(!r)return(()=>{var e,t;return(null===(e=window)||void 0===e||null===(t=e.navigator)||void 0===t?void 0:t.userAgent.toLowerCase().indexOf("firefox"))>-1||!1})()?void(this.isInitialized=!0):void await this.handlePrefetchRedirectUri();this.isInitialized=!0}}async triggerLogin(e){const{verifier:t,typeOfLogin:r,clientId:n,jwtParams:i,hash:o,queryParameters:a,customState:s,registerOnly:c}=e;if(N9.info("Verifier: ",t),!this.isInitialized)throw new Error("Not initialized yet");if(c&&r!==E9)throw new Error("registerOnly flag can only be passed for webauthn");const l=u7({typeOfLogin:r,clientId:n,verifier:t,redirect_uri:this.config.redirect_uri,redirectToOpener:this.config.redirectToOpener,jwtParams:i,uxMode:this.config.uxMode,customState:s,registerOnly:c});let u;if(o&&a){const{error:e,hashParameters:t,instanceParameters:r}=$9(o,a);if(e)throw new Error(e);const{access_token:n,id_token:i}=t;u=y7(y7({accessToken:n,idToken:i},W3(t,f7)),{},{state:r})}else if(this.storageHelper.clearOrphanedLoginDetails(),this.config.uxMode===P9.REDIRECT&&await this.storageHelper.storeLoginDetails({method:C9,args:e},l.nonce),u=await l.handleLoginWindow({locationReplaceOnRedirect:this.config.locationReplaceOnRedirect,popupFeatures:this.config.popupFeatures}),this.config.uxMode===P9.REDIRECT)return null;const d=await l.getUserInfo(u);if(c){const e=this.sentryHandler.startTransaction({name:I9}),r=await this.nodeDetailManager.getNodeDetails({verifier:t,verifierId:d.verifierId});this.sentryHandler.finishTransaction(e);const n=this.sentryHandler.startTransaction({name:M9}),i=await this.torus.getPublicAddress(r.torusNodeEndpoints,r.torusNodePub,{verifier:t,verifierId:d.verifierId});this.sentryHandler.finishTransaction(n);const o={userInfo:y7(y7({},d),u)};return y7(y7(y7({},o),i),{},{finalKeyData:y7(y7({},i.finalKeyData),{},{privKey:void 0}),oAuthKeyData:y7(y7({},i.finalKeyData),{},{privKey:void 0}),metadata:y7(y7({},i.metadata),{},{nonce:void 0}),sessionData:void 0})}return y7(y7({},await this.getTorusKey(t,d.verifierId,{verifier_id:d.verifierId},u.idToken||u.accessToken,d.extraVerifierParams)),{},{userInfo:y7(y7({},d),u)})}async triggerAggregateLogin(e){const{aggregateVerifierType:t,verifierIdentifier:r,subVerifierDetailsArray:n}=e;if(!this.isInitialized)throw new Error("Not initialized yet");if(!t||!r||!Array.isArray(n))throw new Error("Invalid params");if(t===A9&&1!==n.length)throw new Error("Single id verifier can only have one sub verifier");const i=[],o=[];for(const h of n){const{clientId:t,typeOfLogin:r,verifier:n,jwtParams:a,hash:s,queryParameters:c,customState:l}=h,u=u7({typeOfLogin:r,clientId:t,verifier:n,redirect_uri:this.config.redirect_uri,redirectToOpener:this.config.redirectToOpener,jwtParams:a,uxMode:this.config.uxMode,customState:l});let d;if(s&&c){const{error:e,hashParameters:t,instanceParameters:r}=$9(s,c);if(e)throw new Error(e);const{access_token:n,id_token:i}=t;d=y7(y7({accessToken:n,idToken:i},W3(t,p7)),{},{state:r})}else if(this.storageHelper.clearOrphanedLoginDetails(),this.config.uxMode===P9.REDIRECT&&await this.storageHelper.storeLoginDetails({method:j9,args:e},u.nonce),d=await u.handleLoginWindow({locationReplaceOnRedirect:this.config.locationReplaceOnRedirect,popupFeatures:this.config.popupFeatures}),this.config.uxMode===P9.REDIRECT)return null;i.push(u.getUserInfo(d)),o.push(d)}const a=(await Promise.all(i)).map((e=>y7(y7({},e),{},{aggregateVerifier:r}))),s={verify_params:[],sub_verifier_ids:[],verifier_id:""},c=[];let l="",u={};for(let h=0;hy7(y7({},e),o[t])))})}async triggerHybridAggregateLogin(e){const{singleLogin:t,aggregateLoginParams:r}=e;if(!this.isInitialized)throw new Error("Not initialized yet");if(!r.aggregateVerifierType||!r.verifierIdentifier||!Array.isArray(r.subVerifierDetailsArray))throw new Error("Invalid params");if(r.aggregateVerifierType===A9&&1!==r.subVerifierDetailsArray.length)throw new Error("Single id verifier can only have one sub verifier");const{typeOfLogin:n,clientId:i,verifier:o,jwtParams:a,hash:s,queryParameters:c,customState:l}=t,u=u7({typeOfLogin:n,clientId:i,verifier:o,redirect_uri:this.config.redirect_uri,redirectToOpener:this.config.redirectToOpener,jwtParams:a,uxMode:this.config.uxMode,customState:l});let d;if(s&&c){const{error:e,hashParameters:t,instanceParameters:r}=$9(s,c);if(e)throw new Error(e);const{access_token:n,id_token:i}=t;d=y7(y7({accessToken:n,idToken:i},W3(t,m7)),{},{state:r})}else if(this.storageHelper.clearOrphanedLoginDetails(),this.config.uxMode===P9.REDIRECT&&await this.storageHelper.storeLoginDetails({method:R9,args:e},u.nonce),d=await u.handleLoginWindow({locationReplaceOnRedirect:this.config.locationReplaceOnRedirect,popupFeatures:this.config.popupFeatures}),this.config.uxMode===P9.REDIRECT)return null;const h=await u.getUserInfo(d),f=this.getTorusKey(o,h.verifierId,{verifier_id:h.verifierId},d.idToken||d.accessToken,h.extraVerifierParams),{verifierIdentifier:p,subVerifierDetailsArray:m}=r,g={verify_params:[],sub_verifier_ids:[],verifier_id:""},v=[];let y="";for(let S=0;S0&&void 0!==arguments[0]?arguments[0]:{};await this.init({skipInit:!0});const r=new URL(window.location.href),n=r.hash.substring(1),i={};if(r.searchParams.forEach(((e,t)=>{i[t]=e})),e){const e=window.location.origin+window.location.pathname;window.history.replaceState(y7(y7({},window.history.state),{},{as:e,url:e}),"",e)}if(!n&&0===Object.keys(i).length)throw new Error("Unable to fetch result from OAuth login");const{error:o,instanceParameters:a,hashParameters:s}=$9(n,i),{instanceId:c}=a;N9.info(c,"instanceId");const l=await this.storageHelper.retrieveLoginDetails(c),{args:u,method:d}=l,h=W3(l,g7);if(N9.info(u,d),t&&this.storageHelper.clearLoginDetailsStorage(c),o)return{error:o,state:a||{},method:d,result:{},hashParameters:s,args:u};let f;try{if(d===C9){const e=u;e.hash=n,e.queryParameters=i,f=await this.triggerLogin(e)}else if(d===j9){const e=u;e.subVerifierDetailsArray.forEach((e=>{e.hash=n,e.queryParameters=i})),f=await this.triggerAggregateLogin(e)}else if(d===R9){const e=u;e.singleLogin.hash=n,e.singleLogin.queryParameters=i,f=await this.triggerHybridAggregateLogin(e)}}catch(Ele){return N9.error(Ele),y7({error:`Could not get result from torus nodes \n ${(null===Ele||void 0===Ele?void 0:Ele.message)||""}`,state:a||{},method:d,result:{},hashParameters:s,args:u},h)}return y7(f?{method:d,result:f,state:a||{},hashParameters:s,args:u}:{error:"Unsupported method type",state:a||{},method:d,result:{},hashParameters:s,args:u},h)}async handlePrefetchRedirectUri(){return document?new Promise(((e,t)=>{const r=document.createElement("link");r.href=this.config.redirect_uri,window.location.origin!==new URL(this.config.redirect_uri).origin&&(r.crossOrigin="anonymous"),r.type="text/html",r.rel="prefetch";const n=()=>{this.isInitialized=!0,e()};try{r.relList&&r.relList.supports&&r.relList.supports("prefetch")?(r.onload=n,r.onerror=()=>{t(new Error(`Please serve redirect.html present in serviceworker folder of this package on ${this.config.redirect_uri}`))},document.head.appendChild(r)):n()}catch(Ele){n()}})):Promise.resolve()}}const w7=(e,t,r)=>Promise.race([e(),new Promise(((e,n)=>setTimeout((()=>{n(new Error(r||"The operation has timed out"))}),t)))]),x7=async()=>w7((async()=>{const e=new b7({web3AuthClientId:"BBHmFdLXgGDzSiizRVMWtyL_7Dsoxu5B8zep2Pns8sGELslgXDbktJewVDVDDBlknEKkMCtzISLjJtxk60SK2-g",baseUrl:"https://umamiwallet.com/auth/v2/",redirectPathName:"redirect.html",redirectToOpener:!0,uxMode:"popup",network:"mainnet"});await e.init({skipSw:!0});const t=await e.triggerAggregateLogin({verifierIdentifier:"tezos-google",aggregateVerifierType:"single_id_verifier",subVerifierDetailsArray:[{clientId:"1070572364808-d31nlkneam5ee6dr0tu28fjjbsdkfta5.apps.googleusercontent.com",typeOfLogin:"google",verifier:"umami"}]});return{secretKey:vc(t.finalKeyData.privKey||t.oAuthKeyData.privKey,Ks[Fs.SPSK]),email:t.userInfo[0].email}}),6e4),_7=e=>{let t="Something went wrong";"object"===typeof e&&"message"in e?t=e.message:"string"===typeof e&&(t=e);let r="";return"object"===typeof e&&"stack"in e&&(r=e.stack),{timestamp:(new Date).toISOString(),description:t,stacktrace:r}},S7=()=>{const[e,t]=(0,n.useState)(!1),r=sN(),i=TR(),o=async(n,o)=>{if(!e){t(!0);try{return await n()}catch(a){const e=_7(a);throw r({description:e.description,status:"error",..."function"===typeof o?o(a):o}),i(Bd.actions.add(e)),a}finally{t(!1)}}};return{isLoading:e,handleAsyncAction:async(e,t)=>o(e,t).catch((()=>{})),handleAsyncActionUnsafe:o}},k7=({onAuth:e})=>{const{isLoading:t,handleAsyncAction:r}=S7();return(0,ln.jsx)(_3,{width:"48px",background:"white",borderRadius:"full",_disabled:{bg:EP.gray[900]},"aria-label":"Google SSO","data-testid":"google-auth-button",icon:(0,ln.jsx)(S3,{size:"24px"}),isLoading:t,onClick:async()=>r((async()=>{const{secretKey:t,email:r}=await x7();return e(t,r)}),{title:"Social login failed"}),size:"lg",variant:"outline"})},E7=({children:e,...t})=>(0,ln.jsxs)(Jz,{color:EP.orange,fontSize:"12px",...t,children:[(0,ln.jsx)(LA,{as:Cj,marginRight:"6px"}),e]}),A7=({inputName:e,label:t="Password",placeholder:r="Enter your password",required:i="Password is required",validate:o,...a})=>{const{register:s}=EB(),[c,l]=(0,n.useState)(!1);return(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(UU,{children:t}),(0,ln.jsxs)(qU,{marginTop:"12px",children:[(0,ln.jsx)(GU,{"aria-label":t,autoComplete:"off",placeholder:r,type:c?"text":"password",...s(e,{required:i,minLength:{value:i?8:0,message:"Your password must be at least 8 characters long"},validate:o}),...a}),(0,ln.jsx)(JU,{children:(0,ln.jsx)(Nn,{onClick:()=>l((e=>!e)),tabIndex:-1,variant:"unstyled",children:c?(0,ln.jsx)(Mj,{"data-testid":"eye-slash-icon"}):(0,ln.jsx)(Ij,{width:"16.5px","data-testid":"eye-icon"})})})]})]})},P7=({signer:e,onSubmit:t,isLoading:r,isDisabled:n,text:i})=>{const o=IU({mode:"onBlur",defaultValues:{password:""}}),{handleSubmit:a,formState:{errors:s,isValid:c}}=o,l=F2(),u=U2(),d=sN(),{isLoading:h,handleAsyncAction:f}=S7(),p=h||r,m=n||!c,g=async({password:r})=>f((async()=>{const n=await u(e,r);return t(await t2({type:"mnemonic",secretKey:n,network:l}))})),v=async({password:r})=>f((async()=>{const n=await u(e,r);return t(await t2({type:"secret_key",secretKey:n,network:l}))})),y=async()=>f((async()=>{const{secretKey:e}=await x7();t(await t2({type:"social",secretKey:e,network:l}))})),b=async()=>f((async()=>(d({description:"Please open the Tezos app on your Ledger and approve the operation",status:"info",duration:6e4,isClosable:!0}),t(await t2({type:"ledger",account:e,network:l})))));switch(e.type){case"secret_key":case"mnemonic":return(0,ln.jsx)(fn,{width:"100%",children:(0,ln.jsxs)(AB,{...o,children:[(0,ln.jsxs)(Gz,{isInvalid:!!s.password,marginY:"16px",children:[(0,ln.jsx)(A7,{"data-testid":"password",inputName:"password"}),s.password&&(0,ln.jsx)(E7,{children:s.password.message})]}),(0,ln.jsx)(Nn,{width:"100%",marginTop:"8px",isDisabled:m,isLoading:p,onClick:a("mnemonic"===e.type?g:v),size:"lg",type:"submit",children:i||"Submit Transaction"})]})});case"social":return(0,ln.jsx)(Nn,{width:"100%",isDisabled:m,isLoading:p,onClick:y,size:"lg",children:i||"Sign with Google"});case"ledger":return(0,ln.jsx)(Nn,{width:"100%",isDisabled:m,isLoading:p,onClick:b,size:"lg",children:i||"Sign with Ledger"})}},O7=({request:e,onSuccess:t})=>{const r=HH()(e.sourceAddress),n=sN();if(!r)return(0,ln.jsx)("div",{children:'"unknown account"'});return(0,ln.jsxs)(nz,{children:[(0,ln.jsxs)(iz,{children:["Sign payload Request from ",e.appMetadata.name]}),(0,ln.jsx)(sz,{}),(0,ln.jsx)(cz,{children:e.payload}),(0,ln.jsx)(eB,{justifyContent:"center",display:"flex",children:(0,ln.jsx)(P7,{onSubmit:async r=>{const i=await r.signer.sign(e.payload),o={type:RM.SignPayloadResponse,id:e.id,signingType:e.signingType,signature:i.prefixSig};await Y7.respond(o),n({description:"Successfully submitted Beacon operation",status:"success"}),t()},signer:r})})]})},T7=e=>(0,ln.jsx)(LA,{width:"14px",height:"14px",fill:"none",stroke:EP.gray[450],viewBox:"0 0 14 14",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M13 1L7 7M13 1V4.375M13 1H9.625M12.25 7.375V10.6C12.25 11.4401 12.25 11.8601 12.0865 12.181C11.9427 12.4632 11.7132 12.6927 11.431 12.8365C11.1101 13 10.6901 13 9.85 13H3.4C2.55992 13 2.13988 13 1.81901 12.8365C1.53677 12.6927 1.3073 12.4632 1.16349 12.181C1 11.8601 1 11.4401 1 10.6V4.15C1 3.30992 1 2.88988 1.16349 2.56901C1.3073 2.28677 1.53677 2.0573 1.81901 1.91349C2.13988 1.75 2.55992 1.75 3.4 1.75H6.625",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),C7=({hash:e})=>{const t=`${F2().tzktExplorerUrl}/${e}`,{onClose:r}=(0,n.useContext)(pM),i=VO();return(0,ln.jsxs)(nz,{paddingY:"20px",children:[(0,ln.jsx)(sz,{}),(0,ln.jsx)(iz,{textAlign:"center",children:(0,ln.jsx)(Sn,{children:"Operation Submitted"})}),(0,ln.jsx)(cz,{children:(0,ln.jsx)(un,{justifyContent:"center",marginTop:"10px",children:(0,ln.jsx)(az,{color:"text.dark",textAlign:"center",size:"sm",children:"You can follow this operation's progress in the Operations section. It may take up to 30 seconds to appear."})})}),(0,ln.jsxs)(eB,{justifyContent:"center",flexDirection:"column",width:"100%",children:[(0,ln.jsx)(Nn,{width:"100%",onClick:()=>{r(),i("/operations")},size:"lg",children:"See all Operations"}),(0,ln.jsx)(vT,{rel:"noopener noreferrer",target:"_blank",to:t,children:(0,ln.jsx)(un,{alignItems:"center",marginTop:"24px",children:(0,ln.jsxs)(Nn,{variant:"CTAWithIcon",children:[(0,ln.jsx)(az,{marginRight:"4px",children:"View in Tzkt"}),(0,ln.jsx)(T7,{stroke:"currentcolor"})]})})})]})]})},j7=(e,t)=>{const{onClose:r}=(0,n.useContext)(pM),[i,o]=(0,n.useState)(null),a=F2(),{isLoading:s,handleAsyncAction:c}=S7(),{openWith:l}=(0,n.useContext)(pM),u=IU({mode:"onBlur",defaultValues:{signer:e.signer.address.pkh,sender:e.sender.address.pkh}});(0,n.useEffect)((()=>{c((async()=>{const t=await c2(e,a);o(t)}),(e=>(r(),{title:"Error",description:`Error while processing beacon request: ${e.message}`,status:"error"})))}),[a,e]);return{fee:i,form:u,isSigning:s,onSign:async r=>c((async()=>{const{opHash:n}=await D2(e,r);l((0,ln.jsx)(C7,{hash:n})),t(n)}))}},R7=({mutezAmount:e})=>(0,ln.jsxs)(un,{alignItems:"center",height:"60px",padding:"15px",background:EP.gray[800],borderRadius:"4px",children:[(0,ln.jsx)(mR,{marginRight:"12px"}),(0,ln.jsx)(un,{alignItems:"end",children:(0,ln.jsx)(l3,{number:G2(e)})})]}),I7=({fee:e})=>(0,ln.jsxs)(un,{alignItems:"center",children:[(0,ln.jsx)(Sn,{marginRight:"4px",color:EP.gray[450],size:"sm",children:"Fee:"}),(0,ln.jsx)(az,{color:EP.gray[400],"data-testid":"fee",size:"sm",children:G2(e)})]}),M7=cn(iz,{baseStyle:{padding:0,paddingBottom:"32px",textAlign:"center"}}),L7=({title:e="Send",subTitle:t="Send one or insert into batch"})=>(0,ln.jsxs)(M7,{children:[(0,ln.jsx)(Sn,{size:"2xl",children:e}),(0,ln.jsx)(az,{color:EP.gray[400],textAlign:"center",size:"sm",children:t}),(0,ln.jsx)(sz,{})]});function N7(e){const{viewBox:t="0 0 24 24",d:r,displayName:i,defaultProps:o={}}=e,a=n.Children.toArray(e.path),s=g(((e,n)=>(0,ln.jsx)(LA,{ref:n,viewBox:t,...o,...e,children:a.length?a:(0,ln.jsx)("path",{fill:"currentColor",d:r})})));return s.displayName=i,s}var D7=N7({d:"M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z",displayName:"ArrowBackIcon"});const z7=({onClick:e})=>(0,ln.jsx)(_3,{...FP,"aria-label":"Back",icon:(0,ln.jsx)(D7,{width:"24px",height:"20px"}),onClick:e,size:"sm",variant:"ghost"}),B7=(e,t)=>{let r;switch(e){case"implicit":r="batch"===t?"Submit":"Confirm";break;case"proposal":r="Propose"}switch(t){case"single":return`${r} Transaction`;case"batch":return`${r} Batch`}},U7=e=>{switch(e.type){case"ledger":case"social":return;case"mnemonic":case"secret_key":return"Enter your password to confirm this transaction."}},F7=({goBack:e,mode:t,operationsType:r,signer:n})=>(0,ln.jsxs)(M7,{children:[e&&(0,ln.jsx)(z7,{onClick:e}),(0,ln.jsx)(Sn,{size:"2xl",children:B7(r,t)}),(0,ln.jsx)(az,{color:EP.gray[400],textAlign:"center",size:"sm",children:U7(n)}),(0,ln.jsx)(sz,{})]}),$7=({operation:e,onBeaconSuccess:t})=>{const{amount:r,contract:n,entrypoint:i,args:o}=e.operations[0],{isSigning:a,form:s,onSign:c,fee:l}=j7(e,t);return l?(0,ln.jsx)(AB,{...s,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(F7,{mode:"single",operationsType:e.type,signer:e.signer}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(R7,{mutezAmount:r}),(0,ln.jsx)(un,{alignItems:"center",justifyContent:"end",marginTop:"12px",children:(0,ln.jsx)(I7,{fee:l})}),(0,ln.jsx)(UU,{marginTop:"24px",children:"From "}),(0,ln.jsx)(d3,{address:e.sender.address}),(0,ln.jsx)(UU,{marginTop:"24px",children:"To "}),(0,ln.jsx)(d3,{address:n}),(0,ln.jsx)(UU,{marginTop:"24px",children:"Parameter"}),(0,ln.jsx)(Lz,{allowToggle:!0,children:(0,ln.jsxs)(Nz,{background:EP.gray[800],border:"none",borderRadius:"8px",children:[(0,ln.jsxs)(Dz,{children:[(0,ln.jsx)(fn,{flex:"1",textAlign:"left",children:"JSON"}),(0,ln.jsx)(zz,{})]}),(0,ln.jsx)(Hz,{children:(0,ln.jsx)(BU,{value:{entrypoint:i,values:o}})})]})})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(P7,{isLoading:a,onSubmit:c,signer:e.signer,text:B7(e.type,"single")})})]})})}):null},H7=({operation:e,onBeaconSuccess:t})=>{const{recipient:r}=e.operations[0],{isSigning:n,form:i,onSign:o,fee:a}=j7(e,t);return a?(0,ln.jsx)(AB,{...i,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(F7,{mode:"single",operationsType:e.type,signer:e.signer}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(UU,{children:"From"}),(0,ln.jsx)(d3,{address:e.signer.address}),(0,ln.jsx)(un,{alignItems:"center",justifyContent:"end",marginTop:"12px",marginBottom:"24px",paddingX:"4px",children:(0,ln.jsx)(un,{alignItems:"center",children:(0,ln.jsx)(I7,{fee:a})})}),(0,ln.jsx)(UU,{children:"To"}),(0,ln.jsx)(d3,{address:r})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(P7,{isLoading:n,onSubmit:o,signer:e.signer,text:B7(e.type,"single")})})]})})}):null},V7=({operation:e,onBeaconSuccess:t})=>{const{amount:r,recipient:n}=e.operations[0],{isSigning:i,form:o,onSign:a,fee:s}=j7(e,t);return s?(0,ln.jsx)(AB,{...o,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(F7,{mode:"single",operationsType:e.type,signer:e.signer}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(R7,{mutezAmount:r}),(0,ln.jsx)(un,{alignItems:"center",justifyContent:"end",marginTop:"12px",children:(0,ln.jsx)(I7,{fee:s})}),(0,ln.jsx)(UU,{marginTop:"24px",children:"From "}),(0,ln.jsx)(d3,{address:e.sender.address}),(0,ln.jsx)(UU,{marginTop:"24px",children:"To "}),(0,ln.jsx)(d3,{address:n})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(P7,{isLoading:i,onSubmit:a,signer:e.signer,text:B7(e.type,"single")})})]})})}):null},q7=({operation:e,onBeaconSuccess:t})=>{const{isSigning:r,form:n,onSign:i,fee:o}=j7(e,t);return o?(0,ln.jsx)(AB,{...n,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(F7,{mode:"single",operationsType:e.type,signer:e.signer}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(UU,{children:"From"}),(0,ln.jsx)(d3,{address:e.signer.address}),(0,ln.jsx)(un,{alignItems:"center",justifyContent:"end",marginTop:"12px",paddingX:"4px",children:(0,ln.jsx)(I7,{fee:o})})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(P7,{isLoading:r,onSubmit:i,signer:e.signer,text:B7(e.type,"single")})})]})})}):null},K7=({operation:e,onBeaconSuccess:t})=>{switch(e.operations[0].type){case"tez":return(0,ln.jsx)(V7,{onBeaconSuccess:t,operation:e});case"contract_call":return(0,ln.jsx)($7,{onBeaconSuccess:t,operation:e});case"delegation":return(0,ln.jsx)(H7,{onBeaconSuccess:t,operation:e});case"undelegation":return(0,ln.jsx)(q7,{onBeaconSuccess:t,operation:e});case"fa1.2":case"fa2":case"contract_origination":throw new Error("Unsupported operation type")}},W7=({message:e,onClose:t})=>{const r=HH(),n=sN();switch(e.type){case RM.PermissionRequest:return(0,ln.jsx)(x3,{onSuccess:t,request:e});case RM.SignPayloadRequest:return(0,ln.jsx)(O7,{onSuccess:t,request:e});case RM.OperationRequest:{const o=r(e.sourceAddress);if(!o)return(0,ln.jsxs)(fn,{children:["Account not in this wallet ",e.sourceAddress]});try{const r=G7(e,o),i=async r=>{const i={type:RM.OperationResponse,id:e.id,transactionHash:r};try{await Y7.respond(i)}catch(o){console.warn("Failed to parse Beacon request",o),n({description:`Failed to confirm Beacon operation: ${o.message}`})}finally{t()}};return(0,ln.jsx)(K7,{onBeaconSuccess:i,operation:r})}catch(i){return(0,ln.jsxs)(fn,{children:["Error handling operation request: ",i.message]})}}default:return(0,ln.jsxs)("div",{children:["Unsupported request: ",e.type]})}},G7=({operationDetails:e},t)=>{if(0===e.length)throw new Error("Empty operation details!");if(e.length>1)throw new Error("Batch operation is not supported");const r=e[0],n=((e,t)=>{switch(e.kind){case LM.TRANSACTION:{const{destination:t,amount:r,parameters:n}=e;return Wu(t)&&n?{type:"contract_call",amount:r,contract:Zu(t),entrypoint:n.entrypoint,args:n.value}:{type:"tez",amount:r,recipient:Yu(e.destination)}}case LM.DELEGATION:{const{delegate:r}=e;return r?{type:"delegation",sender:t.address,recipient:Yu(r)}:{type:"undelegation",sender:t.address}}default:return null}})(e[0],t);if(!n)throw new Error(`Unsupported operation: ${r.kind}`);return{type:"implicit",operations:[n],sender:t,signer:t}},Z7=Hu.object({id:Hu.string(),type:Hu.string(),name:Hu.string(),publicKey:Hu.string(),version:Hu.string(),icon:Hu.string().optional(),relayServer:Hu.string().optional()}).parse,Y7=new aN({name:"Umami",iconUrl:"",appUrl:"https://umamiwallet.com/"}),X7="beaconPeers",J7=()=>{const e=(0,Fn.useQueryClient)();return()=>e.refetchQueries(X7)},Q7=()=>{const e=J7(),t=(()=>{const e=pi();return t=>e(Id.actions.removeConnection({dAppId:t}))})();return r=>Y7.removePeer(r).then((()=>t(r.senderId))).then(e)},eee=()=>{const e=J7(),t=sN();return r=>{(new xL).deserialize(r).then(Z7).then((t=>{Y7.addPeer(t).then(e)})).catch((e=>{t({description:"Beacon sync code in the clipboard is invalid. Please copy a beacon sync code from the dApp",status:"error"}),console.error(e)}))}},tee=({children:e})=>{const{openWith:t,onClose:r}=(0,n.useContext)(pM);return(0,n.useEffect)((()=>{Y7.init().then((()=>{Y7.connect((e=>{t((0,ln.jsx)(W7,{message:e,onClose:r}))}))})).catch(console.error)}),[r,t]),(0,ln.jsx)(ln.Fragment,{children:e})},ree=1963879877,nee=-1890025422,iee=e=>({address:Zu(e.address),threshold:Number(e.storage.threshold),signers:e.storage.signers.map(Yu),pendingOperationsBigmapId:e.storage.pending_ops}),oee=async(e,t)=>O2((async()=>{const r=await(e=>O2((async()=>{try{const t=`${e.tzktApiUrl}/v1/contracts?typeHash=1963879877&codeHash=-1890025422&includeStorage=true&limit=10000`,{data:r}=await dj.get(t);return r}catch(t){throw new Error(`Error fetching same contracts from tzkt: ${t.message}`)}})))(t);return r.filter((({storage:{signers:t}})=>{if(!(0,Va.every)(t,Gu))return!1;const r=t.filter((t=>e.has(t)));return r.length>0})).map(iee)})),aee=e=>{const{bigmap:t,key:r,value:n}=e;if(null===r||null===n)throw new Error("parseMultisigOperation failed");return{id:r,bigmapId:t,rawActions:n.actions,approvals:n.approvals.map(Yu)}},see=async(e,t)=>0===e.length?[]:O2((async()=>{const r=e.map((e=>e.pendingOperationsBigmapId)),n=await((e,t)=>0===e.length?Promise.resolve([]):O2((async()=>{const r=`${t.tzktApiUrl}/v1/bigmaps/keys?active=true&bigmap.in=${e.join(",")}&limit=10000`,{data:n}=await dj.get(r);return n})))(r,t);return(0,Va.compact)(n.map(aee))})),cee=async(e,t,r)=>{const n=await see(r,t);e($d.setPendingOperations(n.flat()))},lee=async(e,t,r)=>{const n=await T2(r,t);e(Ed.updateTezBalance(n.flat()))},uee=async(e,t,r)=>{const n=await C2(r,t),i=n.flat().map((({token:e,lastLevel:t})=>({...e,lastLevel:t})));e(Gd.addTokens({network:t,tokens:i})),e(Ed.updateTokenBalance(n.flat()))},dee=async e=>{const t=await(async()=>{const{data:{data:{priceUsd:e}}}=await dj.get("https://api.coincap.io/v2/assets/tezos");return null!==e&&void 0!==e?e:null})();e(Ed.updateConversionRate({rate:t}))},hee=()=>{const e=TR(),t=$H(),r=CR((e=>e.assets.refetchTrigger)),i=F2(),o=(0,Fn.useQueryClient)(),a=sN(),s=t.map((e=>e.address.pkh)),c=(0,Fn.useQuery)("allAssets",{queryFn:()=>(async(e,t,r)=>{try{e(Ed.setIsLoading(!0));const n=await oee(new Set(r),t);e($d.setMultisigs(n));const i=[...r,...n.map((e=>e.address.pkh))];await Promise.all([cee(e,t,n),lee(e,t,i),uee(e,t,i)]),e(Ed.setLastTimeUpdated((new Date).toUTCString()))}finally{e(Ed.setIsLoading(!1))}})(e,i,s),onError:t=>{e(Bd.actions.add(_7(t))),a({description:`Data fetching error: ${t.message}`,status:"error",isClosable:!0})},retry:!1,refetchInterval:15e3,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),l=(0,Fn.useQuery)("conversionRate",{queryFn:()=>dee(e),refetchInterval:3e5,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),u=(0,Fn.useQuery)("blockNumber",{queryFn:()=>(async(e,t)=>{const r=await L2(t);e(Ed.updateBlockLevel(r))})(e,i),retry:!1,refetchInterval:15e3,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),d=(0,Fn.useQuery)("bakers",{queryFn:()=>(async(e,t)=>{const r=(await N2(t)).map((({address:e,alias:t,stakingBalance:r})=>({address:e,stakingBalance:r,name:null!==t&&void 0!==t?t:"Unknown baker"})));e(Ed.updateBakers(r))})(e,i),retry:!1,refetchInterval:72e5,refetchIntervalInBackground:!0,refetchOnWindowFocus:!1}),h=(0,n.useRef)(l),f=(0,n.useRef)(u),p=(0,n.useRef)(c),m=(0,n.useRef)(d);(0,n.useEffect)((()=>{o.cancelQueries({queryKey:"allAssets"}),o.cancelQueries({queryKey:"conversionRate"}),o.cancelQueries({queryKey:"blockNumber"}),o.cancelQueries({queryKey:"bakers"}),h.current.refetch(),f.current.refetch(),p.current.refetch(),m.current.refetch()}),[i,r,o])},fee=()=>{const e=sN(),t=eee(),r=(0,n.useRef)(t),i=(0,n.useRef)(e),o=(e,t)=>{const n=t.replace(":///","://");if(n.startsWith("umami://auth/")){const e=(e=>{const t=e.replace("umami://auth/",""),r=new URLSearchParams(t),n={instanceParams:{insanceId:r.get("instanceId"),verifier:r.get("verifier"),typeOfLogin:r.get("typeOfLogin"),redirectToOpener:r.get("redirectToOpener")},hashParams:{state:r.get("state"),access_token:r.get("access_token"),token_type:r.get("token_type"),expires_in:r.get("expires_in"),scope:r.get("scope"),id_token:r.get("id_token"),authuser:r.get("authuser"),hd:r.get("hd"),prompt:r.get("prompt")}};return{channel:r.get("channel"),data:n,error:r.get("error")}})(n);window.postMessage(e)}else if(n.startsWith("umami://?type=tzip10&data=")){const e=new URL(n).searchParams.get("data");e?r.current(e):i.current({title:"Linkhandler",description:"Data Payload missing"})}else i.current({title:"Linkhandler",description:"Unsupported link type"})};(0,n.useEffect)((()=>{const e=window;return e&&e.electronAPI&&e.electronAPI.onDeeplink(o),()=>{}}),[])};var pee=g(((e,t)=>{var r;const{overflow:n,overflowX:i,className:o,...a}=e;return(0,ln.jsx)(cn.div,{ref:t,className:v("chakra-table__container",o),...a,__css:{display:"block",whiteSpace:"nowrap",WebkitOverflowScrolling:"touch",overflowX:null!=(r=null!=n?n:i)?r:"auto",overflowY:"hidden",maxWidth:"100%"}})})),[mee,gee]=kn({name:"TableStylesContext",errorMessage:"useTableStyles returned is 'undefined'. Seems you forgot to wrap the components in \"
\" "}),vee=g(((e,t)=>{const r=_n("Table",e),{className:n,layout:i,...o}=ht(e);return(0,ln.jsx)(mee,{value:r,children:(0,ln.jsx)(cn.table,{ref:t,__css:{tableLayout:i,...r.table},className:v("chakra-table",n),...o})})}));vee.displayName="Table";var yee=g(((e,t)=>{const r=gee();return(0,ln.jsx)(cn.tbody,{...e,ref:t,__css:r.tbody})})),bee=g(((e,t)=>{const r=gee();return(0,ln.jsx)(cn.tr,{...e,ref:t,__css:r.tr})})),wee=g((({isNumeric:e,...t},r)=>{const n=gee();return(0,ln.jsx)(cn.td,{...t,ref:r,__css:n.td,"data-is-numeric":e})}));function xee(e){return Jj({tag:"svg",attr:{fill:"currentColor",viewBox:"0 0 16 16"},child:[{tag:"path",attr:{d:"M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"}},{tag:"path",attr:{d:"M10.97 4.97a.235.235 0 0 0-.02.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-1.071-1.05z"}}]})(e)}function _ee(e){return Jj({tag:"svg",attr:{fill:"currentColor",viewBox:"0 0 16 16"},child:[{tag:"path",attr:{d:"M3 9.5a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3zm5 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3z"}}]})(e)}function See(e){return Jj({tag:"svg",attr:{viewBox:"0 0 15 15",fill:"none"},child:[{tag:"path",attr:{fillRule:"evenodd",clipRule:"evenodd",d:"M7.49991 0.877045C3.84222 0.877045 0.877075 3.84219 0.877075 7.49988C0.877075 11.1575 3.84222 14.1227 7.49991 14.1227C11.1576 14.1227 14.1227 11.1575 14.1227 7.49988C14.1227 3.84219 11.1576 0.877045 7.49991 0.877045ZM1.82708 7.49988C1.82708 4.36686 4.36689 1.82704 7.49991 1.82704C10.6329 1.82704 13.1727 4.36686 13.1727 7.49988C13.1727 10.6329 10.6329 13.1727 7.49991 13.1727C4.36689 13.1727 1.82708 10.6329 1.82708 7.49988ZM10.1589 5.53774C10.3178 5.31191 10.2636 5.00001 10.0378 4.84109C9.81194 4.68217 9.50004 4.73642 9.34112 4.96225L6.51977 8.97154L5.35681 7.78706C5.16334 7.59002 4.84677 7.58711 4.64973 7.78058C4.45268 7.97404 4.44978 8.29061 4.64325 8.48765L6.22658 10.1003C6.33054 10.2062 6.47617 10.2604 6.62407 10.2483C6.77197 10.2363 6.90686 10.1591 6.99226 10.0377L10.1589 5.53774Z",fill:"currentColor"}}]})(e)}function kee(e){return Jj({tag:"svg",attr:{viewBox:"0 0 15 15",fill:"none"},child:[{tag:"path",attr:{fillRule:"evenodd",clipRule:"evenodd",d:"M12.8536 2.85355C13.0488 2.65829 13.0488 2.34171 12.8536 2.14645C12.6583 1.95118 12.3417 1.95118 12.1464 2.14645L7.5 6.79289L2.85355 2.14645C2.65829 1.95118 2.34171 1.95118 2.14645 2.14645C1.95118 2.34171 1.95118 2.65829 2.14645 2.85355L6.79289 7.5L2.14645 12.1464C1.95118 12.3417 1.95118 12.6583 2.14645 12.8536C2.34171 13.0488 2.65829 13.0488 2.85355 12.8536L7.5 8.20711L12.1464 12.8536C12.3417 13.0488 12.6583 13.0488 12.8536 12.8536C13.0488 12.6583 13.0488 12.3417 12.8536 12.1464L8.20711 7.5L12.8536 2.85355Z",fill:"currentColor"}}]})(e)}const Eee="TOAST_ID",Aee=({pkh:e,formatAddress:t=!0,copyable:r=!0,iconColor:n=EP.gray[600],...i})=>(0,ln.jsx)(Pee,{copyValue:r?e:void 0,displayText:t?Z2(e):e,iconColor:n,toastMessage:"Address copied to clipboard",...i}),Pee=({displayText:e,copyValue:t,toastMessage:r,iconColor:n,...i})=>{const o=sN();return(0,ln.jsxs)(un,{alignItems:"center",...i,children:[(0,ln.jsx)(az,{marginRight:"6px",color:EP.gray[400],size:"sm",children:e}),t&&(0,ln.jsx)(Uj,{stroke:EP.gray[450],_hover:{stroke:EP.green},cursor:"pointer",onClick:()=>(async()=>{t&&(await navigator.clipboard.writeText(t),r&&!o.isActive(Eee)&&o({id:Eee,render:()=>(0,ln.jsx)(Oee,{message:r,onClose:()=>{o.close(Eee)}})}))})()})]})},Oee=({message:e,onClose:t})=>(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",padding:2,borderRadius:"4px",backgroundColor:"white",children:[(0,ln.jsxs)(un,{alignItems:"center",children:[(0,ln.jsx)(LA,{as:xee,margin:1,color:EP.green}),(0,ln.jsx)(az,{color:"black",children:e})]}),(0,ln.jsx)(LA,{as:kee,color:"black",_hover:{color:EP.gray[600]},cursor:"pointer",onClick:t})]}),Tee=({title:e,buttonText:t,contact:r})=>{const i=TR(),o=WH(),{isOpen:a,onClose:s}=(0,n.useContext)(pM),{handleSubmit:c,formState:{isValid:l,errors:u},register:d,reset:h,getValues:f}=IU({mode:"onBlur",defaultValues:r}),p=void 0!==r,m=VH(),{nameExistsInContacts:g,addressExistsInContacts:v}=BH(),y=(0,n.useRef)(h);return(0,n.useEffect)((()=>{a&&y.current(r)}),[a,r]),(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{onSubmit:c((({name:e,pkh:t})=>{var r;r={name:e.trim(),pkh:t},o(r.pkh)||(i(Dd.upsert(r)),s()),h()})),children:[(0,ln.jsx)(iz,{textAlign:"center",children:e}),(0,ln.jsx)(sz,{}),(0,ln.jsxs)(cz,{children:[(0,ln.jsxs)(Gz,{isInvalid:!!u.name,marginY:5,children:[(0,ln.jsx)(UU,{children:"Name"}),(0,ln.jsx)(GU,{type:"text",...d("name",{required:"Name is required",validate:e=>m.map((e=>e.label)).includes(e)?"Name already used in accounts":!g(e.trim())||"Name already registered"}),placeholder:"Enter contact's name"}),u.name&&(0,ln.jsx)(E7,{children:u.name.message})]}),(0,ln.jsxs)(Gz,{isInvalid:!!u.pkh,marginY:5,children:[(0,ln.jsx)(UU,{children:"Address"}),(0,ln.jsx)(GU,{type:"text",...d("pkh",{required:"Address is required",validate:e=>Ku(e)?p?f("name")!==r.name:o(e)?"Address already used in accounts":!v(e)||"Address already registered":"Invalid address"}),disabled:p,placeholder:"Enter contact\u2019s tz address",value:null===r||void 0===r?void 0:r.pkh,variant:p?"filled":void 0}),u.pkh&&(0,ln.jsx)(E7,{children:u.pkh.message})]})]}),(0,ln.jsx)(eB,{padding:"16px 0 0 0",children:(0,ln.jsx)(fn,{width:"100%",children:(0,ln.jsx)(Nn,{width:"100%",marginBottom:2,isDisabled:!l,size:"lg",type:"submit",children:t})})})]})})},Cee=({contact:e})=>{const t=TR(),{onClose:r}=(0,n.useContext)(pM);return(0,ln.jsxs)(nz,{children:[(0,ln.jsx)(iz,{textAlign:"center",children:"Delete Contact"}),(0,ln.jsx)(sz,{}),(0,ln.jsx)(cz,{children:(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",flexDirection:"column",children:[(0,ln.jsx)(az,{color:EP.gray[400],size:"sm",children:"Are you sure you want to remove this contact?"}),(0,ln.jsxs)(fn,{marginTop:5,children:[(0,ln.jsx)(Sn,{marginBottom:3,textAlign:"center",size:"md",children:e.name}),(0,ln.jsx)(Aee,{pkh:e.pkh})]})]})}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(fn,{width:"100%",children:(0,ln.jsx)(Nn,{width:"100%",marginBottom:2,onClick:()=>{t(Dd.remove(e.pkh)),r()},variant:"warning",children:"Delete"})})})]})};var jee=g((function(e,t){const{borderLeftWidth:r,borderBottomWidth:n,borderTopWidth:i,borderRightWidth:o,borderWidth:a,borderStyle:s,borderColor:c,...l}=xn("Divider",e),{className:u,orientation:d="horizontal",__css:h,...f}=ht(e),p={vertical:{borderLeftWidth:r||o||a||"1px",height:"100%"},horizontal:{borderBottomWidth:n||i||a||"1px",width:"100%"}};return(0,ln.jsx)(cn.hr,{ref:t,"aria-orientation":d,...f,__css:{...l,border:"0",borderColor:c,borderStyle:s,...p[d],...h},className:v("chakra-divider",u)})}));function Ree(e){const{isOpen:t,ref:r}=e,[i,o]=(0,n.useState)(t),[a,s]=(0,n.useState)(!1);(0,n.useEffect)((()=>{a||(o(t),s(!0))}),[t,a,i]),W$((()=>r.current),"animationend",(()=>{o(t)}));return{present:!(!t&&!i),onComplete(){var e;const t=function(e){var t,r;return null!=(r=null==(t=qD(e))?void 0:t.defaultView)?r:window}(r.current),n=new t.CustomEvent("animationend",{bubbles:!0});null==(e=r.current)||e.dispatchEvent(n)}}}jee.displayName="Divider";var Iee=()=>"undefined"!==typeof window;var Mee=e=>Iee()&&e.test(function(){var e;const t=navigator.userAgentData;return null!=(e=null==t?void 0:t.platform)?e:navigator.platform}()),Lee=()=>Mee(/mac|iphone|ipad|ipod/i)&&(e=>Iee()&&e.test(navigator.vendor))(/apple/i);function Nee(e){const t=e.current;if(!t)return!1;const r=function(e){return qD(e).activeElement}(t);return!!r&&(!t.contains(r)&&!(!((n=r)&&VD(n)&&ZD(n))||WD(n)));var n}function Dee(e,t){const{shouldFocus:r,visible:n,focusRef:i}=t,o=r&&!n;mb((()=>{if(!o)return;if(Nee(e))return;const t=(null==i?void 0:i.current)||e.current;let r;return t?(r=requestAnimationFrame((()=>{t.focus({preventScroll:!0})})),()=>{cancelAnimationFrame(r)}):void 0}),[o,e,i])}var zee={preventScroll:!0,shouldFocus:!1};function Bee(e){const{wasSelected:t,enabled:r,isSelected:n,mode:i="unmount"}=e;return!r||(!!n||!("keepMounted"!==i||!t))}var Uee={click:"click",hover:"hover"};function Fee(e={}){const{closeOnBlur:t=!0,closeOnEsc:r=!0,initialFocusRef:i,id:o,returnFocusOnClose:a=!0,autoFocus:s=!0,arrowSize:c,arrowShadowColor:l,trigger:u=Uee.click,openDelay:d=200,closeDelay:h=200,isLazy:f,lazyBehavior:p="unmount",computePositionOnMount:m,...g}=e,{isOpen:v,onClose:y,onOpen:b,onToggle:w}=K$(e),x=(0,n.useRef)(null),_=(0,n.useRef)(null),S=(0,n.useRef)(null),E=(0,n.useRef)(!1),A=(0,n.useRef)(!1);v&&(A.current=!0);const[P,O]=(0,n.useState)(!1),[T,C]=(0,n.useState)(!1),j=(0,n.useId)(),R=null!=o?o:j,[I,M,L,N]=["popover-trigger","popover-content","popover-header","popover-body"].map((e=>`${e}-${R}`)),{referenceRef:D,getArrowProps:z,getPopperProps:B,getArrowInnerProps:U,forceUpdate:F}=V$({...g,enabled:v||!!m}),$=Ree({isOpen:v,ref:S});!function(e){const{ref:t,elements:r,enabled:n}=e,i=()=>{var e,r;return null!=(r=null==(e=t.current)?void 0:e.ownerDocument)?r:document};W$(i,"pointerdown",(e=>{if(!Lee()||!n)return;const o=e.target,a=(null!=r?r:[t]).some((e=>{const t="current"in e?e.current:e;return(null==t?void 0:t.contains(o))||t===o}));i().activeElement!==o&&a&&(e.preventDefault(),o.focus())}))}({enabled:v,ref:_}),Dee(S,{focusRef:_,visible:v,shouldFocus:a&&u===Uee.click}),function(e,t=zee){const{focusRef:r,preventScroll:i,shouldFocus:o,visible:a}=t,s="current"in e?e.current:e,c=o&&a,l=(0,n.useRef)(c),u=(0,n.useRef)(a);yh((()=>{!u.current&&a&&(l.current=c),u.current=a}),[a,c]);const d=(0,n.useCallback)((()=>{if(a&&s&&l.current&&(l.current=!1,!s.contains(document.activeElement)))if(null==r?void 0:r.current)requestAnimationFrame((()=>{var e;null==(e=r.current)||e.focus({preventScroll:i})}));else{const e=QD(s);e.length>0&&requestAnimationFrame((()=>{e[0].focus({preventScroll:i})}))}}),[a,i,s,r]);mb((()=>{d()}),[d]),W$(s,"transitionend",d)}(S,{focusRef:i,visible:v,shouldFocus:s&&u===Uee.click});const H=Bee({wasSelected:A.current,enabled:f,mode:p,isSelected:$.present}),V=(0,n.useCallback)(((e={},n=null)=>{const i={...e,style:{...e.style,transformOrigin:lF.transformOrigin.varRef,[lF.arrowSize.var]:c?`${c}px`:void 0,[lF.arrowShadowColor.var]:l},ref:Mn(S,n),children:H?e.children:null,id:M,tabIndex:-1,role:"dialog",onKeyDown:k(e.onKeyDown,(e=>{r&&"Escape"===e.key&&y()})),onBlur:k(e.onBlur,(e=>{const r=Hee(e),n=$ee(S.current,r),i=$ee(_.current,r);v&&t&&(!n&&!i)&&y()})),"aria-labelledby":P?L:void 0,"aria-describedby":T?N:void 0};return u===Uee.hover&&(i.role="tooltip",i.onMouseEnter=k(e.onMouseEnter,(()=>{E.current=!0})),i.onMouseLeave=k(e.onMouseLeave,(e=>{null!==e.nativeEvent.relatedTarget&&(E.current=!1,setTimeout((()=>y()),h))}))),i}),[H,M,P,L,T,N,u,r,y,v,t,h,l,c]),q=(0,n.useCallback)(((e={},t=null)=>B({...e,style:{visibility:v?"visible":"hidden",...e.style}},t)),[v,B]),K=(0,n.useCallback)(((e,t=null)=>({...e,ref:Mn(t,x,D)})),[x,D]),W=(0,n.useRef)(),G=(0,n.useRef)(),Z=(0,n.useCallback)((e=>{null==x.current&&D(e)}),[D]),Y=(0,n.useCallback)(((e={},r=null)=>{const n={...e,ref:Mn(_,r,Z),id:I,"aria-haspopup":"dialog","aria-expanded":v,"aria-controls":M};return u===Uee.click&&(n.onClick=k(e.onClick,w)),u===Uee.hover&&(n.onFocus=k(e.onFocus,(()=>{void 0===W.current&&b()})),n.onBlur=k(e.onBlur,(e=>{const r=Hee(e),n=!$ee(S.current,r);v&&t&&n&&y()})),n.onKeyDown=k(e.onKeyDown,(e=>{"Escape"===e.key&&y()})),n.onMouseEnter=k(e.onMouseEnter,(()=>{E.current=!0,W.current=window.setTimeout((()=>b()),d)})),n.onMouseLeave=k(e.onMouseLeave,(()=>{E.current=!1,W.current&&(clearTimeout(W.current),W.current=void 0),G.current=window.setTimeout((()=>{!1===E.current&&y()}),h)}))),n}),[I,v,M,u,Z,w,b,t,y,d,h]);(0,n.useEffect)((()=>()=>{W.current&&clearTimeout(W.current),G.current&&clearTimeout(G.current)}),[]);const X=(0,n.useCallback)(((e={},t=null)=>({...e,id:L,ref:Mn(t,(e=>{O(!!e)}))})),[L]),J=(0,n.useCallback)(((e={},t=null)=>({...e,id:N,ref:Mn(t,(e=>{C(!!e)}))})),[N]);return{forceUpdate:F,isOpen:v,onAnimationComplete:$.onComplete,onClose:y,getAnchorProps:K,getArrowProps:z,getArrowInnerProps:U,getPopoverPositionerProps:q,getPopoverProps:V,getTriggerProps:Y,getHeaderProps:X,getBodyProps:J}}function $ee(e,t){return e===t||(null==e?void 0:e.contains(t))}function Hee(e){var t;const r=e.currentTarget.ownerDocument.activeElement;return null!=(t=e.relatedTarget)?t:r}var[Vee,qee]=kn({name:"PopoverContext",errorMessage:"usePopoverContext: `context` is undefined. Seems you forgot to wrap all popover components within ``"}),[Kee,Wee]=kn({name:"PopoverStylesContext",errorMessage:"usePopoverStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "});function Gee(e){const t=_n("Popover",e),{children:r,...n}=ht(e),i=Fee({...n,direction:gn().direction});return(0,ln.jsx)(Vee,{value:i,children:(0,ln.jsx)(Kee,{value:t,children:w(r,{isOpen:i.isOpen,onClose:i.onClose,forceUpdate:i.forceUpdate})})})}function Zee(e){const t=n.Children.only(e.children),{getTriggerProps:r}=qee();return(0,n.cloneElement)(t,r(t.props,t.ref))}function Yee(e){if(e)return{enter:{...e.enter,visibility:"visible"},exit:{...e.exit,transitionEnd:{visibility:"hidden"}}}}Gee.displayName="Popover",Zee.displayName="PopoverTrigger";var Xee={exit:{opacity:0,scale:.95,transition:{duration:.1,ease:[.4,0,1,1]}},enter:{scale:1,opacity:1,transition:{duration:.15,ease:[0,0,.2,1]}}},Jee=cn(CA.section),Qee=g((function(e,t){const{variants:r=Xee,...n}=e,{isOpen:i}=qee();return(0,ln.jsx)(Jee,{ref:t,variants:Yee(r),initial:!1,animate:i?"enter":"exit",...n})}));Qee.displayName="PopoverTransition";var ete=g((function(e,t){const{rootProps:r,motionProps:n,...i}=e,{getPopoverProps:o,getPopoverPositionerProps:a,onAnimationComplete:s}=qee(),c=Wee(),l={position:"relative",display:"flex",flexDirection:"column",...c.content};return(0,ln.jsx)(cn.div,{...a(r),__css:c.popper,className:"chakra-popover__popper",children:(0,ln.jsx)(Qee,{...n,...o(i,t),onAnimationComplete:E(s,i.onAnimationComplete),className:v("chakra-popover__content",e.className),__css:l})})}));ete.displayName="PopoverContent";var tte=g((function(e,t){const{getBodyProps:r}=qee(),n=Wee();return(0,ln.jsx)(cn.div,{...r(e,t),className:v("chakra-popover__body",e.className),__css:n.body})}));tte.displayName="PopoverBody";const rte=e=>{const{onOpen:t,onClose:r,isOpen:n}=zR();return(0,ln.jsxs)(Gee,{isOpen:n,onClose:r,onOpen:t,placement:"bottom-start",children:[(0,ln.jsx)(Zee,{children:(0,ln.jsx)(Nn,{minWidth:"24px",height:"24px",padding:"0",background:n?EP.green:EP.gray[500],border:"none",borderRadius:"full",_hover:{bg:n?EP.green:EP.gray[450]},"data-testid":"popover-cta",variant:"unstyled",children:(0,ln.jsx)(dn,{children:(0,ln.jsx)(LA,{as:_ee,display:"inline",color:EP.white})})})}),(0,ln.jsx)(ete,{width:"100px",background:EP.gray[700],children:(0,ln.jsx)(tte,{borderRadius:"lg",children:e.children})})]})},nte=({onRename:e,onRemove:t})=>(0,ln.jsx)(un,{alignItems:"center",children:(0,ln.jsx)(rte,{children:(0,ln.jsxs)(fn,{paddingY:"0",children:[(0,ln.jsx)(Nn,{height:t?"24px":"28px",onClick:e,variant:"popover",children:(0,ln.jsxs)(un,{alignItems:"center",children:[(0,ln.jsx)(az,{marginRight:"4px",children:"Rename"}),(0,ln.jsx)(cR,{stroke:"inherit"})]})}),t&&(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(jee,{marginY:"4px"}),(0,ln.jsx)(Nn,{"data-testid":"popover-remove",onClick:t,variant:"popover",children:(0,ln.jsxs)(un,{alignItems:"center",children:[(0,ln.jsx)(az,{marginRight:"4px",children:"Remove"}),(0,ln.jsx)(wR,{stroke:"inherit"})]})})]})]})})}),ite=({onClick:e,...t})=>(0,ln.jsxs)(Nn,{width:"60px",onClick:e,variant:"specialCTA",...t,children:[(0,ln.jsx)(sR,{stroke:"currentcolor"}),(0,ln.jsx)(az,{marginLeft:"4px",children:"Send"})]}),ote=({sender:e,operationType:t,isLoading:r,reEstimate:n})=>{switch(t){case"proposal":return(0,ln.jsx)(Gz,{marginTop:"24px","data-testid":"signer-selector",children:(0,ln.jsx)(w3,{account:e,inputName:"signer",isLoading:r,keepValid:!0,label:"Select Proposer",onUpdate:n})});case"implicit":return null}},ate=(e,t,r)=>{switch(e.type){case"ledger":case"mnemonic":case"social":case"secret_key":if(e.address.pkh!==t.address.pkh)throw new Error("Sender and Signer must be the same");return{type:"implicit",operations:r,signer:e,sender:e};case"multisig":return{type:"proposal",operations:r,sender:e,signer:t}}},ste=()=>{const e=TR(),t=F2();return r=>e(jd.clear({pkh:r.address.pkh,network:t}))},cte=({isLoading:e,isValid:t,onSingleSubmit:r,onAddToBatch:n,showPreview:i=!0})=>(0,ln.jsx)(ln.Fragment,{children:(0,ln.jsxs)(fn,{width:"100%",children:[i&&(0,ln.jsx)(Nn,{width:"100%",marginBottom:"16px",isDisabled:!t,isLoading:e,onClick:r,size:"lg",type:"submit",children:"Preview"}),(0,ln.jsx)(Nn,{width:"100%",isDisabled:!t,isLoading:e,onClick:n,size:"lg",type:"submit",variant:"tertiary",children:"Insert Into Batch"})]})}),lte=({sender:e,form:t})=>t||(e?{sender:e.address.pkh}:{}),ute=(e,t,r)=>{const[i,o]=(0,n.useState)(!1),a=(()=>{const e=HH();return t=>e(t)})(),[s,c]=(0,n.useState)(e),[l,u]=(0,n.useState)(t),d=F2(),h=ste(),{isLoading:f,handleAsyncAction:p,handleAsyncActionUnsafe:m}=S7(),{openWith:g}=(0,n.useContext)(pM),v=IU({mode:"onBlur",defaultValues:{signer:l.signer.address.pkh,sender:l.sender.address.pkh}}),y=v.watch("signer");return{fee:s,estimationFailed:i,operations:l,isLoading:f,form:v,signer:a(y),reEstimate:async e=>m((async()=>{const t={...l,signer:a(e)};c(await c2(l,d)),u(t),o(!1)}),{isClosable:!0,duration:null}).catch((()=>o(!0))),onSign:async e=>p((async()=>{const t=await D2(l,e);return"batch"===r&&h(l.sender),g((0,ln.jsx)(C7,{hash:t.opHash})),t})),handleAsyncAction:p}},dte=e=>{const t=GH(),r=XH();return n=>{const i=t(n.sender);return ate(i,r(i),[e(n)])}},hte=e=>{e<0&&(console.warn("Decimals cannot be negative"),e=0);return`${0===e?"":"0."+(0,Va.repeat)("0",e-1)}1`},fte=e=>t=>{if(t.includes(".")){if(t.split(".")[1].length>e)return`Please enter a value with up to ${e} decimal places`}return!0},pte=e=>{const{mode:t,operations:r,fee:n}=e,{fee:i,operations:o,estimationFailed:a,isLoading:s,form:c,signer:l,reEstimate:u,onSign:d}=ute(n,r,t),{amount:h,recipient:f}=o.operations[0];return(0,ln.jsx)(AB,{...c,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(F7,{...e,operationsType:o.type,signer:o.signer}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(R7,{mutezAmount:h}),(0,ln.jsx)(un,{alignItems:"center",justifyContent:"end",marginTop:"12px",children:(0,ln.jsx)(I7,{fee:i})}),(0,ln.jsx)(UU,{marginTop:"24px",children:"From "}),(0,ln.jsx)(d3,{address:o.sender.address}),(0,ln.jsx)(UU,{marginTop:"24px",children:"To "}),(0,ln.jsx)(d3,{address:f}),(0,ln.jsx)(ote,{isLoading:s,operationType:o.type,reEstimate:u,sender:o.sender})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(P7,{isDisabled:a,isLoading:s,onSubmit:d,signer:l,text:B7(o.type,t)})})]})})})},mte=(e,t)=>async r=>{await c2(e,t),r(jd.add({operations:e,network:t}))},gte=({SignPage:e,signPageExtraData:t,FormPage:r,defaultFormPageProps:i,toOperation:o})=>{const{openWith:a}=(0,n.useContext)(pM),s=dte(o),c=F2();return async n=>{const o=s(n);a((0,ln.jsx)(e,{data:t,fee:await c2(o,c),goBack:()=>{a((0,ln.jsx)(r,{...i,form:n}))},mode:"single",operations:o}))}},vte=e=>{const{onClose:t}=(0,n.useContext)(pM),r=F2(),i=dte(e),o=TR(),a=sN();return async e=>{const n=i(e);await o(mte(n,r)),a({description:"Transaction added to batch!",status:"success"}),t()}},yte=e=>{const{handleAsyncAction:t,isLoading:r}=S7();return{onFormSubmitActionHandlers:e.map((e=>async r=>t((()=>e(r))))),isLoading:r}},bte=({showPreview:e=!0,...t})=>{const r=gte({SignPage:pte,signPageExtraData:void 0,FormPage:bte,defaultFormPageProps:t,toOperation:wte}),n=vte(wte),{onFormSubmitActionHandlers:[i,o],isLoading:a}=yte([r,n]),s=IU({mode:"onBlur",defaultValues:lte(t)}),{formState:{isValid:c,errors:l},register:u,handleSubmit:d}=s;return(0,ln.jsx)(AB,{...s,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(L7,{}),(0,ln.jsxs)(cz,{children:[(0,ln.jsxs)(Gz,{isInvalid:!!l.prettyAmount,children:[(0,ln.jsx)(UU,{children:"Amount"}),(0,ln.jsxs)(qU,{children:[(0,ln.jsx)(GU,{isDisabled:a,step:hte(6),type:"number",...u("prettyAmount",{required:"Amount is required",validate:fte(6)}),placeholder:"0.000000"}),(0,ln.jsx)(JU,{children:"\ua729"})]}),l.prettyAmount&&(0,ln.jsx)(E7,{"data-testid":"amount-error",children:l.prettyAmount.message})]}),(0,ln.jsxs)(Gz,{marginTop:"24px",isInvalid:!!l.sender,children:[(0,ln.jsx)(y3,{allowUnknown:!1,inputName:"sender",isDisabled:!!t.sender,label:"From"}),l.sender&&(0,ln.jsx)(E7,{"data-testid":"from-error",children:l.sender.message})]}),(0,ln.jsxs)(Gz,{marginTop:"24px",isInvalid:!!l.recipient,children:[(0,ln.jsx)(g3,{allowUnknown:!0,inputName:"recipient",label:"To"}),l.recipient&&(0,ln.jsx)(E7,{"data-testid":"recipient-error",children:l.recipient.message})]})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(cte,{isLoading:a,isValid:c,onAddToBatch:d(o),onSingleSubmit:d(i),showPreview:e})})]})})})},wte=e=>({type:"tez",amount:K2(e.prettyAmount).toFixed(),recipient:qu(e.recipient)}),xte=({contacts:e})=>{const{openWith:t}=(0,n.useContext)(pM);return(0,ln.jsx)(fn,{overflow:"auto",background:EP.gray[900],borderRadius:"8px",paddingX:"30px",children:(0,ln.jsx)(pee,{overflowX:"unset",overflowY:"unset",children:(0,ln.jsx)(vee,{children:(0,ln.jsx)(yee,{children:e.map(((r,n)=>{const i=n===e.length-1?"transparent":EP.gray[700];return(0,ln.jsxs)(bee,{"data-testid":"contact-row",children:[(0,ln.jsx)(wee,{borderColor:i,"data-testid":"contact-row-name",paddingX:"0",children:(0,ln.jsxs)(un,{alignItems:"center",children:[(0,ln.jsx)(fn,{width:"150px",marginRight:"40px",children:(0,ln.jsx)(az,{overflow:"hidden",fontWeight:600,whiteSpace:"nowrap",textOverflow:"ellipsis",children:r.name})}),(0,ln.jsx)(Aee,{justifyContent:"space-between","data-testid":"contact-row-pkh",formatAddress:!1,iconColor:EP.gray[400],pkh:r.pkh})]})}),(0,ln.jsx)(wee,{borderColor:i,paddingX:"0",children:(0,ln.jsxs)(un,{justifyContent:"end",children:[(0,ln.jsx)(ite,{marginRight:"20px",onClick:()=>t((0,ln.jsx)(bte,{form:{sender:"",recipient:r.pkh,prettyAmount:""}}))}),(0,ln.jsx)(nte,{onRemove:()=>{t((0,ln.jsx)(Cee,{contact:r}))},onRename:()=>{t((0,ln.jsx)(Tee,{buttonText:"Update",contact:r,title:"Edit contact"}))}})]})})]},r.pkh)}))})})})})};function _te(e,t={}){const{ssr:r=!0,fallback:i}=t,{getWindow:o}=function({defer:e}={}){const[,t]=(0,n.useReducer)((e=>e+1),0);return yh((()=>{e&&t()}),[e]),(0,n.useContext)(_h)}(),a=Array.isArray(e)?e:[e];let s=Array.isArray(i)?i:[i];s=s.filter((e=>null!=e));const[c,l]=(0,n.useState)((()=>a.map(((e,t)=>({media:e,matches:r?!!s[t]:o().matchMedia(e).matches})))));return(0,n.useEffect)((()=>{const e=o();l(a.map((t=>({media:t,matches:e.matchMedia(t).matches}))));const t=a.map((t=>e.matchMedia(t))),r=e=>{l((t=>t.slice().map((t=>t.media===e.media?{...t,matches:e.matches}:t))))};return t.forEach((e=>{"function"===typeof e.addListener?e.addListener(r):e.addEventListener("change",r)})),()=>{t.forEach((e=>{"function"===typeof e.removeListener?e.removeListener(r):e.removeEventListener("change",r)}))}}),[o]),c.map((e=>e.matches))}function Ste(e){return e?Math[e]:Math.trunc}Math.pow(10,8);const kte=6048e5,Ete=864e5,Ate=43200;function Pte(e){const t=Object.prototype.toString.call(e);return e instanceof Date||"object"===typeof e&&"[object Date]"===t?new e.constructor(+e):"number"===typeof e||"[object Number]"===t||"string"===typeof e||"[object String]"===t?new Date(e):new Date(NaN)}function Ote(e,t){return Pte(e).getTime()-Pte(t).getTime()}function Tte(e,t,r){const n=Ote(e,t)/6e4;return Ste(r?.roundingMethod)(n)}function Cte(e,t){const r=Pte(e),n=Pte(t),i=r.getTime()-n.getTime();return i<0?-1:i>0?1:i}function jte(e,t){const r=Pte(e),n=Pte(t);return 12*(r.getFullYear()-n.getFullYear())+(r.getMonth()-n.getMonth())}function Rte(e){const t=Pte(e);return t.setHours(23,59,59,999),t}function Ite(e){const t=Pte(e),r=t.getMonth();return t.setFullYear(t.getFullYear(),r+1,0),t.setHours(23,59,59,999),t}function Mte(e){const t=Pte(e);return+Rte(t)===+Ite(t)}function Lte(e,t){const r=Pte(e),n=Pte(t),i=Cte(r,n),o=Math.abs(jte(r,n));let a;if(o<1)a=0;else{1===r.getMonth()&&r.getDate()>27&&r.setDate(30),r.setMonth(r.getMonth()-i*o);let t=Cte(r,n)===-i;Mte(Pte(e))&&1===o&&1===Cte(e,n)&&(t=!1),a=i*(o-Number(t))}return 0===a?0:a}function Nte(e,t,r){const n=Ote(e,t)/1e3;return Ste(r?.roundingMethod)(n)}const Dte={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function zte(e){return(t={})=>{const r=t.width?String(t.width):e.defaultWidth;return e.formats[r]||e.formats[e.defaultWidth]}}const Bte={date:zte({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:zte({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:zte({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},Ute={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function Fte(e){return(t,r)=>{let n;if("formatting"===(r?.context?String(r.context):"standalone")&&e.formattingValues){const t=e.defaultFormattingWidth||e.defaultWidth,i=r?.width?String(r.width):t;n=e.formattingValues[i]||e.formattingValues[t]}else{const t=e.defaultWidth,i=r?.width?String(r.width):e.defaultWidth;n=e.values[i]||e.values[t]}return n[e.argumentCallback?e.argumentCallback(t):t]}}const $te={ordinalNumber:(e,t)=>{const r=Number(e),n=r%100;if(n>20||n<10)switch(n%10){case 1:return r+"st";case 2:return r+"nd";case 3:return r+"rd"}return r+"th"},era:Fte({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:Fte({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:Fte({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:Fte({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:Fte({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})};function Hte(e){return(t,r={})=>{const n=r.width,i=n&&e.matchPatterns[n]||e.matchPatterns[e.defaultMatchWidth],o=t.match(i);if(!o)return null;const a=o[0],s=n&&e.parsePatterns[n]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(s)?function(e,t){for(let r=0;re.test(a))):function(e,t){for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t(e[r]))return r;return}(s,(e=>e.test(a)));let l;l=e.valueCallback?e.valueCallback(c):c,l=r.valueCallback?r.valueCallback(l):l;return{value:l,rest:t.slice(a.length)}}}const Vte={ordinalNumber:(qte={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,t={})=>{const r=e.match(qte.matchPattern);if(!r)return null;const n=r[0],i=e.match(qte.parsePattern);if(!i)return null;let o=qte.valueCallback?qte.valueCallback(i[0]):i[0];return o=t.valueCallback?t.valueCallback(o):o,{value:o,rest:e.slice(n.length)}}),era:Hte({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:Hte({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:Hte({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:Hte({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:Hte({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};var qte;const Kte={code:"en-US",formatDistance:(e,t,r)=>{let n;const i=Dte[e];return n="string"===typeof i?i:1===t?i.one:i.other.replace("{{count}}",t.toString()),r?.addSuffix?r.comparison&&r.comparison>0?"in "+n:n+" ago":n},formatLong:Bte,formatRelative:(e,t,r,n)=>Ute[e],localize:$te,match:Vte,options:{weekStartsOn:0,firstWeekContainsDate:1}};let Wte={};function Gte(){return Wte}function Zte(e){const t=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return t.setUTCFullYear(e.getFullYear()),e.getTime()-t.getTime()}function Yte(e,t,r){const n=Gte(),i=r?.locale??n.locale??Kte,o=Cte(e,t);if(isNaN(o))throw new RangeError("Invalid time value");const a=Object.assign({},r,{addSuffix:r?.addSuffix,comparison:o});let s,c;o>0?(s=Pte(t),c=Pte(e)):(s=Pte(e),c=Pte(t));const l=Nte(c,s),u=(Zte(c)-Zte(s))/1e3,d=Math.round((l-u)/60);let h;if(d<2)return r?.includeSeconds?l<5?i.formatDistance("lessThanXSeconds",5,a):l<10?i.formatDistance("lessThanXSeconds",10,a):l<20?i.formatDistance("lessThanXSeconds",20,a):l<40?i.formatDistance("halfAMinute",0,a):l<60?i.formatDistance("lessThanXMinutes",1,a):i.formatDistance("xMinutes",1,a):0===d?i.formatDistance("lessThanXMinutes",1,a):i.formatDistance("xMinutes",d,a);if(d<45)return i.formatDistance("xMinutes",d,a);if(d<90)return i.formatDistance("aboutXHours",1,a);if(d<1440){const e=Math.round(d/60);return i.formatDistance("aboutXHours",e,a)}if(d<2520)return i.formatDistance("xDays",1,a);if(d{const t=F2(),r="mainnet"===t.name,n=r?"Buy Tez":"Request Tez from faucet",i=IU({mode:"onBlur",defaultValues:{address:e}}),{formState:{isValid:o,errors:a}}=i;let s=t.buyTezUrl;return t.buyTezUrl&&r&&(s+="/default/widget/"),(0,ln.jsx)(AB,{...i,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{action:s,rel:"noreferrer noopener",target:"_blank",children:[(0,ln.jsx)(sz,{}),(0,ln.jsx)(iz,{textAlign:"center",children:"Buy Tez"}),r&&(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)("input",{name:"commodity",type:"hidden",value:"XTZ:Tezos"}),(0,ln.jsx)(az,{color:EP.gray[400],textAlign:"center",size:"sm",children:"Please select the recipient account."}),(0,ln.jsx)(cz,{children:(0,ln.jsxs)(Gz,{"data-testid":"buy-tez-selector",isInvalid:!!a.address,paddingY:5,children:[(0,ln.jsx)(v3,{allowUnknown:!1,inputName:"address",isDisabled:!!e,label:"Recipient Account"}),a.address&&(0,ln.jsx)(E7,{children:a.address.message})]})})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(fn,{width:"100%","data-testid":"buy-tez-button",children:(0,ln.jsx)(Nn,{width:"100%",marginBottom:2,isDisabled:!o,size:"lg",type:"submit",children:n})})})]})})})},Jte=e=>(0,ln.jsx)(LA,{width:"15px",height:"11px",fill:"none",stroke:"white",viewBox:"0 0 15 11",xmlns:"http://www.w3.org/2000/svg",...e,children:(0,ln.jsx)("path",{d:"M1.16602 5.98371L5.06345 9.85408L13.8327 1.14575",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"1.2"})}),Qte=()=>{const e=TR(),t=CR((e=>e.assets.isLoading)),r=CR((e=>e.assets.lastTimeUpdated)),[i,o]=(0,n.useState)(!1),[a,s]=(0,n.useState)(!1),[c]=_te("(max-width: 1200px)");if((0,n.useEffect)((()=>{if(r){o(!0),s(!0);const e=setTimeout((()=>{o(!1)}),2e3),t=setTimeout((()=>{s(!1)}),3500);return()=>{clearTimeout(e),clearTimeout(t)}}}),[r]),c||null===r)return null;const l=Tte(new Date,new Date(r))>=2,u={opacity:i?1:0,transition:"opacity 2s ease-in-out"};return(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsxs)(az,{display:"inline",color:EP.gray[400],size:"sm",style:a?u:void 0,children:[a&&"Updated just now",l&&`Updated ${Yte(new Date(r),new Date)} ago`]}),(0,ln.jsx)(_3,{marginRight:"36px",marginLeft:"8px",_active:{color:"white",bg:EP.green},"aria-label":"refetch",backgroundColor:a?EP.green:EP.gray[500],"data-testid":"refetch-button",icon:a?(0,ln.jsx)(Jte,{style:u}):(0,ln.jsx)(zj,{color:"white"}),isLoading:t,onClick:()=>{e(Ed.refetch())},variant:"circle_without_hover_color"})]})},ere=({title:e,subtitle:t})=>{const{openWith:r}=(0,n.useContext)(pM);return(0,ln.jsxs)(fn,{children:[(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",height:"88px",children:[(0,ln.jsxs)(un,{alignItems:"end",children:[(0,ln.jsx)(Sn,{marginRight:"6px",size:"xl",children:e}),(0,ln.jsx)(az,{color:EP.gray[450],"data-testid":"nft-total-amount",size:"xs",children:t})]}),(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(Qte,{}),(0,ln.jsx)(Nn,{onClick:()=>r((0,ln.jsx)(Xte,{})),variant:"tertiary",children:"Buy Tez"}),(0,ln.jsx)(Nn,{marginLeft:4,onClick:()=>r((0,ln.jsx)(bte,{})),children:"Send"})]})]}),(0,ln.jsx)(jee,{})]})},tre=()=>{const{openWith:e}=(0,n.useContext)(pM);return(0,ln.jsxs)(Nn,{alignItems:"center",justifyContent:"end",marginTop:"16px",marginBottom:"16px",cursor:"pointer",onClick:()=>e((0,ln.jsx)(Tee,{buttonText:"Add to Contact",title:"Add contact"})),variant:"CTAWithIcon",children:[(0,ln.jsx)(pj,{stroke:"currentcolor"}),(0,ln.jsx)(az,{marginLeft:"4px",size:"sm",children:"Add contact"})]})},rre=()=>{const e=(()=>{const e=zH();return Object.values(e).sort(((e,t)=>e.name.localeCompare(t.name)))})();return(0,ln.jsxs)(un,{flexDirection:"column",height:"100%",children:[(0,ln.jsx)(ere,{title:"Address Book"}),(0,ln.jsx)(un,{flexDirection:"row-reverse",children:(0,ln.jsx)(tre,{})}),(0,ln.jsx)(xte,{contacts:e})]})};var nre=r(9095),ire=r.n(nre);const ore=({account:{address:e},...t})=>{const r=VH().find((t=>t.address.pkh===e.pkh)),n=n3()(e.pkh),i=o3(e);return r?(0,ln.jsxs)(un,{alignItems:"space-between",cursor:"pointer","data-testid":"account-small-tile",...t,children:[(0,ln.jsx)(sH,{addressKind:i}),(0,ln.jsxs)(un,{alignSelf:"center",height:"20px",marginLeft:"12px",children:[(0,ln.jsx)(Sn,{marginRight:"10px","data-testid":"account-small-tile-label",size:"sm",children:r.label}),(0,ln.jsx)(az,{marginRight:"35px",color:EP.gray[300],"data-testid":"account-small-tile-pkh",size:"xs",children:Z2(e.pkh)}),n&&(0,ln.jsx)(Sn,{"data-testid":"account-small-tile-balance",size:"sm",children:G2(n)})]})]}):null};function are(e,t){var r;const n=e.target;if(n){if(!MR(n).contains(n))return!1}return!(null==(r=t.current)?void 0:r.contains(n))}var sre=(e,t)=>t?`${e}.${t}, ${t}`:void 0;function cre(e){var t;const{bg:r,bgColor:n,backgroundColor:i,shadow:o,boxShadow:a,shadowColor:s}=e,{getArrowProps:c,getArrowInnerProps:l}=qee(),u=Wee(),d=null!=(t=null!=r?r:n)?t:i,h=null!=o?o:a;return(0,ln.jsx)(cn.div,{...c(),className:"chakra-popover__arrow-positioner",children:(0,ln.jsx)(cn.div,{className:v("chakra-popover__arrow",e.className),...l(e),__css:{"--popper-arrow-shadow-color":sre("colors",s),"--popper-arrow-bg":sre("colors",d),"--popper-arrow-shadow":sre("shadows",h),...u.arrow}})})}cre.displayName="PopoverArrow";const lre=({addressKind:{type:e},...t})=>{switch(e){case"multisig":return(0,ln.jsx)(Kj,{"data-testid":`${e}-icon`,...t});case"fa1.2":return(0,ln.jsx)(Lj,{"data-testid":`${e}-icon`,...t,fill:t.stroke,stroke:"none"});case"fa2":return(0,ln.jsx)(Nj,{"data-testid":`${e}-icon`,...t,fill:t.stroke,stroke:"none"});case"baker":return(0,ln.jsx)(gj,{"data-testid":`${e}-icon`,...t});case"contact":return(0,ln.jsx)(_j,{"data-testid":`${e}-icon`,...t});case"unknown":case"implicit":return null}},ure=({addressKind:{type:e,pkh:t},addressPillMode:r,...i})=>{const{addressExistsInContacts:o}=BH(),{openWith:a}=(0,n.useContext)(pM);if("removable"===r.type)return(0,ln.jsx)(OR,{cursor:"pointer",onClick:r.onRemove,...i});return["implicit","multisig","baker"].includes(e)||o(t)?null:(0,ln.jsx)(ln.Fragment,{children:(0,ln.jsx)(pj,{"data-testid":"add-contact-icon",onClick:()=>{a((0,ln.jsx)(Tee,{buttonText:"Add to Contact",contact:{name:"",pkh:t},title:"Add contact"}))},...i})})},dre=({addressKind:{pkh:e,label:t},showPkh:r,alias:n,...i})=>{const o=UH(),a=Z2(e),s=o(e)||t||n;return r?(0,ln.jsx)(az,{...i,children:a}):(0,ln.jsx)(az,{...i,children:s?q2(s,21):a})},hre=e=>{const t=a3(e);if(!t)return null;const{pkh:r,label:n}=t;return{type:"multisig"===t.type?"multisig":"implicit",pkh:r,label:n}},fre=({pkh:e})=>{const t=(e=>{const t=CR((t=>t.tokens[e.name]));return e=>{if(!t||!(e in t))return;const r=t[e],n=Object.keys(r)[0];return n?r[n].type:void 0}})(F2()),r=t(e);if(!r)return null;switch(r){case"fa1.2":return{pkh:e,type:"fa1.2",label:null};case"fa2":case"nft":return{pkh:e,type:"fa2",label:null}}},pre=({address:e,mode:t={type:"default"},...r})=>{const i=!("pkh"in e&&"type"in e),o=i?qu(e.address):e,a=(e=>{const t=hre(e),r=fre(e),n=s3(e),i=c3(e);return t||r||n||i||{pkh:e.pkh,type:"unknown",label:null}})(o),s="no_icons"!==t.type,{onOpen:c,onClose:l,isOpen:u}=zR(),[d,h]=(0,n.useState)(!1),f=(0,n.useRef)(null);let p,m,g;return function(e){const{ref:t,handler:r,enabled:i=!0}=e,o=DR(r),a=(0,n.useRef)({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}).current;(0,n.useEffect)((()=>{if(!i)return;const e=e=>{are(e,t)&&(a.isPointerDown=!0)},n=e=>{a.ignoreEmulatedMouseEvents?a.ignoreEmulatedMouseEvents=!1:a.isPointerDown&&r&&are(e,t)&&(a.isPointerDown=!1,o(e))},s=e=>{a.ignoreEmulatedMouseEvents=!0,r&&a.isPointerDown&&are(e,t)&&(a.isPointerDown=!1,o(e))},c=MR(t.current);return c.addEventListener("mousedown",e,!0),c.addEventListener("mouseup",n,!0),c.addEventListener("touchstart",e,!0),c.addEventListener("touchend",s,!0),()=>{c.removeEventListener("mousedown",e,!0),c.removeEventListener("mouseup",n,!0),c.removeEventListener("touchstart",e,!0),c.removeEventListener("touchend",s,!0)}}),[r,t,o,a,i])}({ref:f,handler:()=>{h(!1)}}),u?(p=EP.green,m=EP.gray[300],g="white"):d?(p=EP.gray[450],m=EP.gray[400],g=EP.gray[200]):(p=EP.gray[500],m=EP.gray[450],g=EP.gray[300]),(0,ln.jsx)(fn,{maxWidth:"max-content","data-testid":"address-pill",...r,children:(0,ln.jsxs)(un,{ref:f,alignItems:"center",background:p,borderRadius:"full",onMouseEnter:()=>{h(!0)},onMouseLeave:()=>{h(!1)},paddingX:"4px",children:[s&&(0,ln.jsx)(lre,{marginLeft:"4px",stroke:m,addressKind:a,"data-testid":"address-pill-left-icon"}),(0,ln.jsxs)(Gee,{autoFocus:!1,isOpen:u,onOpen:async()=>{await navigator.clipboard.writeText(o.pkh),c(),setTimeout(l,1e3)},children:[(0,ln.jsx)(Zee,{children:(0,ln.jsx)(Nn,{height:"24px",_focus:{boxShadow:"none"},onClick:e=>e.stopPropagation(),variant:"unstyled",children:(0,ln.jsx)(dre,{color:g,cursor:"pointer",addressKind:a,alias:i&&e.alias?e.alias:void 0,"data-testid":"address-pill-text",marginX:"4px",showPkh:!s,size:"sm"})})}),(0,ln.jsxs)(ete,{maxWidth:"max-content",background:"white",children:[(0,ln.jsx)(cre,{background:"white !important"}),(0,ln.jsx)(tte,{children:(0,ln.jsx)(az,{color:"black",size:"sm",children:"Copied!"})})]})]}),s&&(0,ln.jsx)(ure,{marginRight:"4px",stroke:EP.gray[300],cursor:"pointer",addressKind:a,addressPillMode:t,"data-testid":"address-pill-right-icon"})]})})},mre=({operation:e})=>{let t;switch(e.type){case"undelegation":case"contract_origination":t=void 0;break;case"tez":case"fa1.2":case"fa2":case"delegation":t=e.recipient;break;case"contract_call":t=e.contract}return t?(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(az,{marginRight:"6px",color:EP.gray[450],children:"To:"}),(0,ln.jsx)(pre,{address:t,"data-testid":"recipient"})]}):(0,ln.jsx)(az,{color:EP.gray[500],"data-testid":"recipient",children:"N/A"})},gre=e=>null===e||void 0===e?void 0:e.replace("ipfs://","https://ipfs.io/ipfs/"),vre=e=>(0,Va.orderBy)(e,["lastLevel","id","owner"],["desc"]),yre=({operation:e})=>{const t=V2(),r=F2();switch(e.type){case"tez":return(0,ln.jsxs)(un,{children:[(0,ln.jsx)(sR,{marginRight:"8px"}),(0,ln.jsx)(Sn,{size:"sm",children:G2(e.amount)})]});case"fa1.2":case"fa2":{const n=t(e.contract.pkh,e.tokenId);return"nft"===(null===n||void 0===n?void 0:n.type)?(0,ln.jsxs)(un,{children:[(0,ln.jsx)(sR,{marginRight:"8px"}),Number(e.amount)>1&&(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsxs)(Sn,{color:EP.gray[450],size:"sm",children:["x",e.amount]}),"\xa0"]}),(0,ln.jsx)(Sn,{size:"sm",children:(0,ln.jsx)(Q$,{padding:"8px",background:EP.gray[700],border:"1px solid",borderColor:EP.gray[500],borderRadius:"8px",label:(0,ln.jsx)(uz,{width:"170px",height:"170px",ratio:1,children:(0,ln.jsx)(yR,{src:gre(dd(n))})}),children:(0,ln.jsx)(zn,{"data-testid":"link",href:pd(n,r),children:rd(n)})})})]}):(0,ln.jsxs)(un,{children:[(0,ln.jsx)(sR,{marginRight:"8px"}),(0,ln.jsx)(Sn,{size:"sm",children:(0,ln.jsx)(zn,{"data-testid":"link",href:n?pd(n,r):void 0,children:jre(n,e.amount)})})]})}case"delegation":return(0,ln.jsxs)(un,{children:[(0,ln.jsx)(gj,{marginRight:"8px"}),(0,ln.jsx)(Sn,{size:"sm",children:"Delegate"})]});case"undelegation":return(0,ln.jsxs)(un,{children:[(0,ln.jsx)(gj,{marginRight:"8px"}),(0,ln.jsx)(Sn,{size:"sm",children:"End Delegation"})]});case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}},bre=({addressKind:e})=>{switch(e.type){case"secret_key":case"mnemonic":return(0,ln.jsx)(oH,{width:"48px",height:"48px",padding:"8px",address:e.pkh,identiconSize:32});case"social":case"contact":case"ledger":case"multisig":case"unknown":case"baker":{const t="social"===e.type?"white":EP.gray[500];return(0,ln.jsx)(un,{alignItems:"center",justifyContent:"center",padding:"4px",background:t,borderRadius:"4px",children:(0,ln.jsx)(sH,{addressKind:e,size:"md"})})}}},wre=(0,n.createContext)({selectedAccount:null,selectAccount:()=>{}}),xre=({icon:e,leftElement:t,rightElement:r,...n})=>(0,ln.jsxs)(un,{alignItems:"center",height:90,marginBottom:4,padding:4,border:`1px solid ${EP.gray[800]}`,borderRadius:4,...n,children:[e,(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",flex:1,children:[t,r]})]}),_re=({label:e,pkh:t})=>(0,ln.jsxs)(fn,{margin:4,"data-testid":"account-identifier",children:[e&&(0,ln.jsx)(Sn,{size:"md",children:e}),(0,ln.jsx)(un,{alignItems:"center",children:(0,ln.jsx)(az,{color:"text.dark","data-testid":"short-address",size:"sm",children:Z2(t)})})]}),Sre=({account:e,radius:t,left:r="0px",top:n="0px",mainBackgroundColor:i=EP.gray[900],opacity:o="60"})=>{let a;switch(e.type){case"mnemonic":case"secret_key":s=e.address.pkh,a=`#${tH()(s).slice(0,6)}`;break;case"ledger":case"multisig":a=EP.gray[450];break;case"social":a="#EA4335"}var s;return a+=o,`radial-gradient(circle farthest-side at ${r} ${n}, ${a} 0%, ${a} ${parseInt(t)/4}px, transparent ${t}), ${i}`},kre=({account:e,balance:t})=>{const{selectedAccount:r,selectAccount:i}=(0,n.useContext)(wre),o=(null===r||void 0===r?void 0:r.address.pkh)===e.address.pkh,a=o3(e.address),{address:{pkh:s}}=e,c=!!CR((e=>e.assets.delegationLevels))[s],l=e3(),u=vre(l(s));return(0,ln.jsxs)(fn,{zIndex:2,background:Sre({left:"-10px",top:"-10px",account:e,radius:u.length>0?"120px":"100px"}),borderWidth:"1px",borderStyle:"solid",borderColor:o?EP.orangeL:EP.gray[900],borderRadius:"8px",_hover:{borderColor:o?EP.orangeL:EP.gray[700]},cursor:"pointer","data-testid":"account-tile-container",onClick:()=>i(e),paddingX:"21px",children:[(0,ln.jsx)(xre,{align:"bottom",marginBottom:0,padding:0,border:"none","data-testid":`account-tile-${s}`+(o?"-selected":""),icon:(0,ln.jsx)(bre,{addressKind:a}),leftElement:(0,ln.jsx)(_re,{label:a.label,pkh:s}),rightElement:(0,ln.jsxs)(un,{flexDirection:"column",children:[(0,ln.jsx)(az,{align:"right",color:EP.gray[450],fontWeight:700,size:"sm",children:c?"Delegated":(0,ln.jsx)(ln.Fragment,{children:"\xa0"})}),t&&(0,ln.jsx)(Sn,{alignSelf:"flex-end",size:"lg",children:G2(t)})]})}),u.length>0&&(0,ln.jsxs)(un,{flexDirection:"column","data-testid":"nfts-list",children:[(0,ln.jsx)(jee,{}),(0,ln.jsx)(un,{marginY:"21px",children:u.slice(0,7).map(((e,t)=>{const r=gre(dd(e));return 6===t?(0,ln.jsx)(vT,{"data-testid":"show-more-nfts-link",to:`/nfts?accounts=${s}`,children:(0,ln.jsx)(fn,{height:"32px",marginLeft:"4px",background:EP.gray[600],borderRadius:"4px",children:(0,ln.jsx)(az,{align:"center",width:"32px",color:EP.gray[450],fontWeight:700,children:"..."})})},"last"):(0,ln.jsx)(vT,{"data-testid":"nft-link",to:`/home/${s}/${td(e)}`,children:(0,ln.jsx)(uz,{width:"32px",height:"32px",marginLeft:t>0?"4px":0,ratio:1,children:(0,ln.jsx)(yR,{borderRadius:"4px",src:r})})},td(e))}))})]})]})},Ere=({title:e,description:t,buttonLabel:r,onSubmit:i})=>{const{onClose:o}=(0,n.useContext)(pM);return(0,ln.jsxs)(nz,{children:[(0,ln.jsxs)(iz,{marginBottom:"10px",textAlign:"center",children:[(0,ln.jsx)(fn,{children:(0,ln.jsx)(PR,{width:"40px",height:"40px",marginBottom:"16px"})}),(0,ln.jsx)(Sn,{children:e}),(0,ln.jsx)(sz,{})]}),t&&(0,ln.jsx)(cz,{children:(0,ln.jsx)(az,{align:"center",color:EP.gray[400],"data-testid":"description",children:t})}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(Nn,{width:"100%",onClick:()=>{i(),o()},size:"lg",variant:"warning",children:r})})]})},Are=({title:e,fee:t,transactionCount:r,signer:n})=>(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(L7,{subTitle:U7(n),title:e}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(UU,{children:"From"}),(0,ln.jsx)(d3,{address:n.address}),(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",marginY:"12px",paddingX:"4px",children:[(0,ln.jsxs)(un,{children:[(0,ln.jsx)(az,{marginRight:1,color:EP.gray[450],size:"sm",children:"Transactions:"}),(0,ln.jsx)(az,{color:EP.gray[400],"data-testid":"transaction-length",size:"sm",children:r})]}),(0,ln.jsx)(I7,{fee:t})]})]})]}),Pre=({initialOperations:e,initialFee:t})=>{const{fee:r,operations:n,estimationFailed:i,isLoading:o,signer:a,form:s,reEstimate:c,onSign:l}=ute(t,e,"batch"),u=B7(n.type,"batch");return(0,ln.jsx)(AB,{...s,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(Are,{fee:r,signer:a,title:u,transactionCount:n.operations.length}),(0,ln.jsx)(ote,{isLoading:o,operationType:n.type,reEstimate:c,sender:n.sender}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(P7,{isDisabled:i,isLoading:o,onSubmit:l,signer:a,text:u})})]})})})},Ore=({operations:e})=>{const{type:t,sender:r,operations:i}=e,{openWith:o}=(0,n.useContext)(pM),{handleAsyncAction:a,isLoading:s}=S7(),c=F2();return(0,ln.jsxs)(fn,{alignItems:"center",justifyContent:"space-between","data-testid":"right-header",children:[(0,ln.jsx)(az,{display:"inline-block",color:EP.gray[400],size:"sm",children:ire()("transaction",i.length,!0)}),(0,ln.jsx)(Nn,{marginLeft:"30px",isLoading:s,onClick:()=>a((async()=>{const t=await c2(e,c);o((0,ln.jsx)(Pre,{initialFee:t,initialOperations:e}))})),variant:"primary",children:B7(t,"batch")}),(0,ln.jsx)(_3,{marginLeft:"16px",borderRadius:"4px","aria-label":"remove-batch","data-testid":"remove-batch",icon:(0,ln.jsx)(wR,{stroke:EP.gray[300]}),onClick:()=>o((0,ln.jsx)(Cre,{sender:r}),"sm"),variant:"circle"})]})},Tre=e=>{switch(e.type){case"fa1.2":case"fa2":return"Token Transfer";case"undelegation":case"delegation":return"Delegation";case"tez":return"\ua729 Transfer";case"contract_origination":case"contract_call":throw new Error(`${e.type} is not supported yet`)}},Cre=({sender:e})=>{const t=ste();return(0,ln.jsx)(Ere,{buttonLabel:"Delete Batch",description:"Are you sure you want to remove all transactions from the batch?",onSubmit:()=>t(e),title:"Delete Batch"})},jre=(e,t)=>{if(!e)return`${t} Unknown Token`;const r=nd(e),n=ld(t,e,{showSymbol:!1}),i=r?void 0:od(e);return(0,Va.compact)([n,i,r]).join(" ")},Rre=({operations:e})=>{const{operations:t,sender:r}=e,n=(()=>{const e=TR(),t=F2();return(r,n)=>e(jd.removeItem({pkh:r.address.pkh,index:n,network:t}))})(),i=t.length>9;return(0,ln.jsxs)(fn,{width:"100%",marginBottom:"16px","data-testid":`batch-table-${r.address.pkh}`,children:[(0,ln.jsxs)(un,{justifyContent:"space-between",padding:"20px 23px 20px 30px",background:Sre({top:"-10px",left:"-10px",account:r,radius:"100px",opacity:"40",mainBackgroundColor:EP.gray[800]}),borderTopRadius:"8px","data-testid":"header",children:[(0,ln.jsx)(un,{alignItems:"center",children:(0,ln.jsx)(ore,{paddingLeft:0,account:r})}),(0,ln.jsx)(Ore,{operations:e})]}),(0,ln.jsx)(un,{flexDirection:"column",background:EP.gray[900],borderBottomRadius:i?0:"8px",paddingX:"30px",paddingY:"20px",children:t.map(((e,i)=>(0,ln.jsxs)(fn,{"data-testid":"operation",children:[(0,ln.jsxs)(un,{flexDirection:"column",height:"50px",children:[(0,ln.jsx)(un,{children:(0,ln.jsx)(yre,{operation:e})}),(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",width:"100%",marginTop:"8px",children:[(0,ln.jsx)(un,{children:(0,ln.jsx)(mre,{operation:e})}),(0,ln.jsxs)(un,{children:[(0,ln.jsx)(az,{alignSelf:"flex-end",color:EP.gray[450],size:"sm",children:Tre(e)}),(0,ln.jsx)(_3,{width:"24px",marginLeft:"12px",borderRadius:"full","aria-label":"Remove",icon:(0,ln.jsx)(wR,{stroke:EP.gray[300]}),onClick:()=>n(r,i),size:"xs",variant:"circle"})]})]})]}),icrypto.getRandomValues(new Uint8Array(e)).reduce(((e,t)=>e+((t&=63)<36?t.toString(36):t<62?(t-26).toString(36).toUpperCase():t>62?"-":"_")),""))())))}),i&&(0,ln.jsx)(un,{justifyContent:"end",verticalAlign:"middle",padding:"20px 23px 20px 30px",background:EP.gray[800],borderRadius:"0 0 8px 8px","data-testid":"footer",children:(0,ln.jsx)(Ore,{operations:e})})]})};var Ire=r(5199),Mre=r.n(Ire);function Lre(e){const t=new Bs(e);return t.isLessThan(0)?null:t.toFixed()}const Nre=(e,t,r)=>{const n=t.filter((e=>e.length>0)),i=n.length;if(i<2||4{const e=F2(),t=sN(),r=V2(),i=TR(),o=GH(),a=XH(),{onClose:s}=(0,n.useContext)(pM),{isLoading:c,handleAsyncAction:l}=S7(),u=IU({mode:"onBlur"}),{handleSubmit:d,formState:{isValid:h,errors:f}}=u;return(0,ln.jsx)(AB,{...u,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{onSubmit:d((async({file:n,sender:c})=>l((async()=>{const l=o(c),u=await new Promise((e=>{Mre().parse(n[0],{skipEmptyLines:!0,complete:e})}));if(u.errors.length>0)throw new Error("Error loading csv file: "+u.errors.map((e=>e.message)).join(", "));const d=[];for(let e=0;e{const{openWith:e}=(0,n.useContext)(pM);return(0,ln.jsxs)(Nn,{onClick:()=>e((0,ln.jsx)(Dre,{})),variant:"CTAWithIcon",children:[(0,ln.jsx)(az,{marginRight:"4px",size:"sm",children:"Load CSV file"}),(0,ln.jsx)(Bj,{stroke:"currentcolor"})]})},Bre=({href:e,children:t,...r})=>(0,ln.jsx)(zn,{alignItems:"center",display:"flex",_hover:{textDecoration:"none"},href:e,rel:"noopener noreferrer",role:"link",target:"_blank",...r,children:t}),Ure=({batchPending:e})=>(0,ln.jsxs)(un,{alignItems:"center",marginTop:"24px",marginBottom:"24px",children:[(0,ln.jsxs)(Sn,{flex:1,color:EP.orangeL,size:"sm",children:[e," Pending"]}),(0,ln.jsx)(zre,{}),(0,ln.jsx)(Bre,{marginLeft:"8px",href:"https://github.com/trilitech/umami-v1/blob/main/CSV_FILE_SPEC.md",children:(0,ln.jsxs)(Nn,{paddingRight:"0",variant:"CTAWithIcon",children:[(0,ln.jsx)(az,{marginRight:"4px",size:"sm",children:"See file specs"}),(0,ln.jsx)(Rj,{stroke:"currentcolor"})]})})]}),Fre=()=>{const e=(()=>{const e=F2(),t=CR((t=>t.batches[e.name]));return t||[]})();return(0,ln.jsxs)(un,{flexDirection:"column",height:"100%",children:[(0,ln.jsx)(ere,{title:"Batch"}),(0,ln.jsx)(Ure,{batchPending:e.length}),(0,ln.jsx)(fn,{overflowY:"auto",minHeight:"80%",children:e.length>0?e.map((e=>(0,ln.jsx)(Rre,{operations:e},e.sender.address.pkh))):(0,ln.jsx)($re,{})})]})},$re=()=>{const{openWith:e}=(0,n.useContext)(pM);return(0,ln.jsx)(dn,{height:"100%",textAlign:"center",children:(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(Sn,{size:"3xl",children:"No 'batch' to show"}),(0,ln.jsx)(az,{marginTop:"10px",color:EP.gray[400],size:"xl",children:"There is no batch transaction to show..."}),(0,ln.jsx)(un,{justifyContent:"space-around",marginTop:"30px",children:(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(Nn,{onClick:()=>e((0,ln.jsx)(bte,{showPreview:!1})),children:"Start a Batch"}),(0,ln.jsx)(Nn,{marginLeft:"15px",onClick:()=>e((0,ln.jsx)(Dre,{})),variant:"tertiary",children:"Load CSV file"})]})})]})})};var Hre=g((function(e,t){const{templateAreas:r,gap:n,rowGap:i,columnGap:o,column:a,row:s,autoFlow:c,autoRows:l,templateRows:u,autoColumns:d,templateColumns:h,...f}=e,p={display:"grid",gridTemplateAreas:r,gridGap:n,gridRowGap:i,gridColumnGap:o,gridAutoColumns:d,gridColumn:a,gridRow:s,gridAutoFlow:c,gridAutoRows:l,gridTemplateRows:u,gridTemplateColumns:h};return(0,ln.jsx)(cn.div,{ref:t,__css:p,...f})}));function Vre(e){return lz(e,(e=>"auto"===e?"auto":`span ${e}/span ${e}`))}Hre.displayName="Grid";var qre=g((function(e,t){const{area:r,colSpan:n,colStart:i,colEnd:o,rowEnd:a,rowSpan:s,rowStart:c,...l}=e,u=oz({gridArea:r,gridColumn:Vre(n),gridRow:Vre(s),gridColumnStart:i,gridColumnEnd:o,gridRowStart:c,gridRowEnd:a});return(0,ln.jsx)(cn.div,{ref:t,__css:u,...l})}));qre.displayName="GridItem";const Kre=({onClick:e,children:t,isSelected:r,...n})=>(0,ln.jsx)(DU,{justifyContent:"center",height:"66px",marginBottom:"10px",padding:"24px",border:"1px solid",borderColor:r?` ${EP.orangeL}`:"transparent",borderRadius:"lg",_hover:{border:`1px solid ${EP.gray[500]}`,bg:EP.gray[800]},cursor:e?"pointer":void 0,backgroundColor:EP.gray[900],onClick:e,...n,children:(0,ln.jsx)(zU,{padding:0,children:t})}),Wre=({left:e,isSelected:t,onClick:r})=>(0,ln.jsx)(Kre,{isSelected:t,onClick:r,children:(0,ln.jsx)(un,{alignItems:"center",height:"100%",children:(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",width:"100%",children:[(0,ln.jsx)(Sn,{size:"sm",children:e}),(0,ln.jsx)(wj,{})]})})}),Gre=()=>(0,ln.jsxs)(Hre,{gridGap:"1",gridTemplateRows:"0fr 1fr 1fr",gridTemplateColumns:"1fr 1fr",gridTemplateAreas:'\n "header header"\n "main main"\n "main main"\n ',height:"100%",children:[(0,ln.jsx)(qre,{gridArea:"header",children:(0,ln.jsx)(ere,{title:"Help"})}),(0,ln.jsxs)(qre,{gridArea:"main",marginTop:1,children:[(0,ln.jsx)(Yre,{title:"Learn More",children:(0,ln.jsx)(Zre,{about:"Browse Articles",externalLink:"https://medium.com/umamiwallet"})}),(0,ln.jsxs)(Yre,{title:"Need Help?",children:[(0,ln.jsx)(Zre,{about:"Contact our Support Team",externalLink:"mailto:umami-support@trili.tech",linkDescription:"umami-support@trili.tech"}),(0,ln.jsx)(Zre,{about:"Get in touch with the Community",externalLink:"https://join.slack.com/t/tezos-dev/shared_invite/zt-1ur1ymxrp-G_X_bFHrvWXwoeiy53J8lg",linkDescription:"Slack #Umami"})]}),(0,ln.jsx)(Yre,{title:"Terms of Use",children:(0,ln.jsx)(Zre,{about:"Read Terms of Service",externalLink:"https://umamiwallet.com/tos.html"})})]})]}),Zre=({about:e,externalLink:t,linkDescription:r})=>(0,ln.jsx)(vT,{rel:"noopener noreferrer",target:"_blank",to:t,children:(0,ln.jsx)(Kre,{cursor:"pointer",isSelected:!1,children:(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",children:[(0,ln.jsx)(Sn,{size:"sm",children:e}),(0,ln.jsxs)(un,{alignItems:"center",children:[r&&(0,ln.jsx)(az,{marginRight:"4px",color:EP.gray[400],size:"sm",children:r}),(0,ln.jsx)(Rj,{})]})]})})}),Yre=({title:e,children:t})=>(0,ln.jsx)(fn,{"data-testid":"help-card",marginY:"10px",children:(0,ln.jsx)(un,{children:(0,ln.jsxs)(fn,{width:"550px",children:[(0,ln.jsx)(Sn,{marginBottom:"16px",size:"lg",children:e}),t]})})});var[Xre,Jre]=kn(),Qre={start:{ltr:"left",rtl:"right"},end:{ltr:"right",rtl:"left"}};function ene(e){var t;const{isOpen:r,onClose:n,placement:i="right",children:o,...a}=e,s=gn(),c=null==(t=s.components)?void 0:t.Drawer,l=function(e,t){var r,n;if(e)return null!=(n=null==(r=Qre[e])?void 0:r[t])?n:e}(i,s.direction);return(0,ln.jsx)(Xre,{value:{placement:l},children:(0,ln.jsx)(rI,{isOpen:r,onClose:n,styleConfig:c,...a,children:o})})}var tne={exit:{duration:.15,ease:nI.easeInOut},enter:{type:"spring",damping:25,stiffness:180}},rne={exit:({direction:e,transition:t,transitionEnd:r,delay:n})=>{var i;const{exit:o}=cI({direction:e});return{...o,transition:null!=(i=null==t?void 0:t.exit)?i:dI(tne.exit,n),transitionEnd:null==r?void 0:r.exit}},enter:({direction:e,transitionEnd:t,transition:r,delay:n})=>{var i;const{enter:o}=cI({direction:e});return{...o,transition:null!=(i=null==r?void 0:r.enter)?i:uI(tne.enter,n),transitionEnd:null==t?void 0:t.enter}}},nne=(0,n.forwardRef)((function(e,t){const{direction:r="right",style:n,unmountOnExit:i,in:o,className:a,transition:s,transitionEnd:c,delay:l,motionProps:u,...d}=e,h=cI({direction:r}),f=Object.assign({position:"fixed"},h.position,n),p=!i||o&&i,m=o||i?"enter":"exit",g={transitionEnd:c,transition:s,direction:r,delay:l};return(0,ln.jsx)(iP,{custom:g,children:p&&(0,ln.jsx)(CA.div,{...d,ref:t,initial:"exit",className:v("chakra-slide",a),animate:m,exit:"exit",custom:g,variants:rne,style:f,...u})})}));nne.displayName="Slide";var ine=cn(nne),one=g(((e,t)=>{const{className:r,children:n,motionProps:i,containerProps:o,...a}=e,{getDialogProps:s,getDialogContainerProps:c,isOpen:l}=tI(),u=s(a,t),d=c(o),h=v("chakra-modal__content",r),f=QR(),p={display:"flex",flexDirection:"column",position:"relative",width:"100%",outline:0,...f.dialog},m={display:"flex",width:"100vw",height:"$100vh",position:"fixed",left:0,top:0,...f.dialogContainer},{placement:g}=Jre();return(0,ln.jsx)(rz,{children:(0,ln.jsx)(cn.div,{...d,className:"chakra-modal__content-container",__css:m,children:(0,ln.jsx)(ine,{motionProps:i,direction:g,in:l,className:h,...u,__css:p,children:n})})})}));one.displayName="DrawerContent";const ane=({onRemove:e,onCreate:t})=>(0,ln.jsx)(rte,{children:(0,ln.jsxs)(fn,{paddingY:"0",children:[(0,ln.jsx)(Nn,{height:t?"24px":"28px","data-testid":"popover-remove",onClick:e,variant:"popover",children:(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",flex:1,children:[(0,ln.jsx)(az,{marginRight:"4px",children:"Remove"}),(0,ln.jsx)(wR,{stroke:"inherit"})]})}),t&&(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(jee,{marginY:"4px"}),(0,ln.jsx)(Nn,{onClick:t,variant:"popover",children:(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",flex:1,children:[(0,ln.jsx)(az,{marginRight:"4px",children:"Create"}),(0,ln.jsx)(lR,{width:"18px",height:"18px",stroke:"inherit"})]})})]})]})});var sne=e=>(0,ln.jsx)(cn.div,{className:"chakra-stack__item",...e,__css:{display:"inline-block",flex:"0 0 auto",minWidth:0,...e.__css}});sne.displayName="StackItem";var cne=g(((e,t)=>{const{isInline:r,direction:i,align:o,justify:a,spacing:s="0.5rem",wrap:c,children:l,divider:u,className:d,shouldWrapChildren:h,...f}=e,p=r?"row":null!=i?i:"column",m=(0,n.useMemo)((()=>function(e){const{spacing:t,direction:r}=e,n={column:{my:t,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},"column-reverse":{my:t,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},row:{mx:t,my:0,borderLeftWidth:"1px",borderBottomWidth:0},"row-reverse":{mx:t,my:0,borderLeftWidth:"1px",borderBottomWidth:0}};return{"&":lz(r,(e=>n[e]))}}({spacing:s,direction:p})),[s,p]),g=!!u,y=!h&&!g,b=(0,n.useMemo)((()=>{const e=$U(l);return y?e:e.map(((t,r)=>{const i="undefined"!==typeof t.key?t.key:r,o=r+1===e.length,a=h?(0,ln.jsx)(sne,{children:t},i):t;if(!g)return a;const s=(0,n.cloneElement)(u,{__css:m}),c=o?null:s;return(0,ln.jsxs)(n.Fragment,{children:[a,c]},i)}))}),[u,m,g,y,h,l]),w=v("chakra-stack",d);return(0,ln.jsx)(cn.div,{ref:t,display:"flex",alignItems:o,justifyContent:a,flexDirection:p,flexWrap:c,gap:g?void 0:s,className:w,...f,children:b})}));cne.displayName="Stack";var lne=g(((e,t)=>(0,ln.jsx)(cne,{align:"center",...e,direction:"column",ref:t})));lne.displayName="VStack";const une=({icon:e,size:t,onClick:r=(()=>{})})=>(0,ln.jsx)(fn,{width:t,height:t,margin:"auto",background:EP.gray[700],borderRadius:"full",onClick:r,children:(0,ln.jsx)(dn,{height:"100%",children:e})}),dne=({children:e,icon:t,title:r,subtitle:n})=>(0,ln.jsxs)(lne,{maxHeight:"83vh",spacing:0,children:[(0,ln.jsx)(fn,{marginBottom:"20px",children:(0,ln.jsx)(une,{icon:t,size:"48px"})}),(0,ln.jsxs)(dn,{flexDirection:"column",marginBottom:"32px",children:[(0,ln.jsx)(Sn,{size:"xl",children:r}),n&&(0,ln.jsx)(az,{marginTop:"10px",color:EP.gray[400],textAlign:"center",size:"sm",children:n})]}),e]}),hne=({onSubmit:e,isLoading:t})=>{const r=IU({mode:"onBlur"}),{handleSubmit:n,formState:{errors:i,isValid:o}}=r;return(0,ln.jsx)(dne,{icon:(0,ln.jsx)(nR,{}),subtitle:"Enter your master password for Umami.",title:"Umami Master Password",children:(0,ln.jsx)(AB,{...r,children:(0,ln.jsxs)("form",{onSubmit:n((t=>{e(t.password)})),style:{width:"100%"},children:[(0,ln.jsxs)(Gz,{isInvalid:!!i.password,children:[(0,ln.jsx)(A7,{"data-testid":"password",inputName:"password"}),i.password&&(0,ln.jsx)(E7,{children:i.password.message})]}),(0,ln.jsx)(Nn,{width:"100%",marginTop:"32px",isDisabled:!o,isLoading:t,size:"lg",type:"submit",children:"Submit"})]})})})},fne=({onSubmit:e,title:t="Name Your Account",subtitle:r})=>{const{register:n,handleSubmit:i}=IU({mode:"onChange"});return(0,ln.jsx)(dne,{icon:(0,ln.jsx)(Tj,{}),subtitle:r,title:t,children:(0,ln.jsxs)("form",{onSubmit:i(e),style:{width:"100%"},children:[(0,ln.jsxs)(Gz,{children:[(0,ln.jsx)(UU,{children:"Account name"}),(0,ln.jsx)(GU,{"data-testid":"name",type:"text",...n("accountName",{required:!1}),placeholder:"Optional"})]}),(0,ln.jsx)(Nn,{width:"100%",marginTop:"32px",size:"lg",type:"submit",children:"Continue"})]})})},pne=e=>{const[t,r]=(0,n.useState)();return void 0===t?(0,ln.jsx)(fne,{onSubmit:e=>r(e.accountName),subtitle:e.subtitle,title:e.title}):(0,ln.jsx)(hne,{isLoading:e.isLoading,onSubmit:r=>e.onSubmit({name:t,password:r})})},mne=e=>(0,ln.jsx)(fn,{overflowY:"auto",height:"100%",children:e.children}),gne=({goToStep:e})=>{const t=$H().length>0;return(0,ln.jsx)(dne,{icon:(0,ln.jsx)(rR,{}),title:"Connect or Import Account",children:(0,ln.jsxs)(lne,{width:"100%",spacing:"16px",children:[(0,ln.jsx)(Nn,{width:"100%",onClick:t=>e({type:Aie.restoreMnemonic}),size:"lg",children:"Import with Seed Phrase"}),(0,ln.jsx)(Nn,{width:"100%",onClick:t=>e({type:Aie.restoreSecretKey}),size:"lg",variant:"tertiary",children:"Import with Secret Key"}),!t&&(0,ln.jsx)(Nn,{width:"100%",onClick:t=>{e({type:Aie.restoreBackup})},size:"lg",variant:"tertiary",children:"Restore from Backup"}),(0,ln.jsx)(Nn,{width:"100%",onClick:t=>{e({type:Aie.nameAccount,account:{type:"ledger"}})},size:"lg",variant:"tertiary",children:"Connect ledger"})]})})},vne=({secretKey:e,label:t,password:r})=>async n=>{const{account:i,encryptedSecretKey:o}=await(async({secretKey:e,label:t,password:r})=>{const{pk:n,pkh:i}=await r2(e),o=await Rc(e,r);return{account:{type:"secret_key",pk:n,label:t,address:Yu(i)},encryptedSecretKey:o}})({secretKey:e,label:t,password:r});n(Nc.actions.addAccount(i)),n(Nc.actions.addSecretKey({pkh:i.address.pkh,encryptedSecretKey:o}))},yne=e=>async t=>{t(Nc.actions.removeSecretKey(e)),t(Nc.actions.removeAccount(e))},{addAccount:bne,removeMnemonicAndAccounts:wne,removeNonMnemonicAccounts:xne}=Nc.actions,_ne=()=>{const e=F2(),t=B2(),r=pi();return async({mnemonic:n,password:i,derivationPath:o,label:a})=>{const s=await Q1(n),c=await t(n,e,o,a),l=await Rc(n,i);r(Nc.actions.addMnemonicAccounts({seedFingerprint:s,accounts:c,encryptedMnemonic:l}))}},Sne=()=>{const e=TR();return(t,r,n,i)=>{e(bne({derivationPath:t,curve:"ed25519",type:"ledger",pk:r,address:{type:"implicit",pkh:n},label:i}))}},kne=({goToStep:e,closeModal:t})=>{const{handleAsyncAction:r}=S7(),n=(()=>{const e=TR();return(t,r,n)=>{e(bne({type:"social",pk:t,address:{type:"implicit",pkh:r},idp:"google",label:n}))}})(),i=sN();return(0,ln.jsx)(dne,{icon:(0,ln.jsx)(AR,{}),title:"Connect or Create Account",children:(0,ln.jsxs)(lne,{width:"100%",spacing:"16px",children:[(0,ln.jsx)(Nn,{width:"100%",onClick:t=>e({type:Aie.notice}),size:"lg",children:"Create a new Account"}),(0,ln.jsx)(Nn,{width:"100%",onClick:t=>e({type:Aie.connectOptions}),size:"lg",variant:"tertiary",children:"I already have a wallet"}),(0,ln.jsxs)(un,{width:"100%",paddingTop:"14px",paddingBottom:"6px",children:[(0,ln.jsx)(jee,{marginTop:"11px"}),(0,ln.jsx)(az,{minWidth:"160px",color:EP.gray[400],textAlign:"center",noOfLines:1,size:"sm",children:"Continue with Google"}),(0,ln.jsx)(jee,{marginTop:"11px"})]}),(0,ln.jsx)(k7,{onAuth:(e,o)=>r((async()=>{const{pk:r,pkh:a}=await r2(e);n(r,a,o),i({description:`Successfully added ${o} account`,status:"success"}),t()}))})]})})},Ene=({selected:e,options:t,onChange:r})=>{const[i,o]=(0,n.useState)(e),[a,s]=(0,n.useState)(!1);return(0,ln.jsxs)(fn,{children:[(0,ln.jsxs)(un,{justifyContent:"space-between",height:"48px",padding:"12px 15px 15px 15px",color:EP.gray[300],background:EP.gray[800],border:"1px solid",borderColor:EP.gray[500],borderRadius:"4px",_hover:{borderColor:EP.gray[450]},cursor:"pointer","data-testid":"select-input",onClick:()=>s((e=>!e)),children:[(0,ln.jsx)(az,{size:"sm",children:i.label}),(0,ln.jsx)(bj,{})]}),a&&(0,ln.jsx)(nF,{position:"absolute",zIndex:2,width:"100%",margin:0,marginTop:"8px",padding:"15px",background:EP.gray[700],border:"1px solid",borderColor:EP.gray[500],borderRadius:"8px","data-testid":"select-options",listStyleType:"none",children:t.map((e=>(0,ln.jsx)(iF,{marginBottom:"5px",padding:"11px",color:EP.gray[300],background:"transparent",borderRadius:"4px",_hover:{background:EP.gray[500]},cursor:"pointer",onClick:()=>{s(!1),o(e),r(e.value)},children:(0,ln.jsx)(az,{size:"sm",children:e.label})},e.value)))})]})},Ane=({goToStep:e,account:t})=>{const{handleSubmit:r,setValue:n,formState:{errors:i}}=IU({mode:"onBlur",defaultValues:{derivationPath:IH}});return(0,ln.jsx)(dne,{icon:(0,ln.jsx)(hR,{}),subtitle:"Choose a custom derivation path or select the default derivation path and use the default key.",title:"Derivation Path",children:(0,ln.jsxs)("form",{onSubmit:r((async({derivationPath:r})=>{switch(t.type){case"ledger":e({type:Aie.restoreLedger,account:{...t,derivationPath:r}});break;case"mnemonic":e({type:Aie.masterPassword,account:{...t,derivationPath:r}})}})),style:{width:"100%"},children:[(0,ln.jsxs)(Gz,{marginBottom:"20px",children:[(0,ln.jsx)(UU,{children:"Select Path"}),(0,ln.jsx)(Ene,{onChange:e=>n("derivationPath",e),options:LH,selected:MH}),i.derivationPath&&(0,ln.jsx)(E7,{"data-testid":"error-message",children:i.derivationPath.message})]}),(0,ln.jsx)(Nn,{width:"100%",marginTop:"12px",size:"lg",type:"submit",children:"Continue"}),(0,ln.jsx)(Bre,{display:"block",width:"100%",marginTop:"32px",textAlign:"center",href:"https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki",children:(0,ln.jsx)(Q$,{backgroundColor:"white",defaultIsOpen:!1,hasArrow:!0,label:"Derivation path is a set of directions that helps create different secret keys; it starts from a master key or seed.",children:(0,ln.jsx)(az,{color:EP.blue,fontWeight:600,textDecoration:"underline",_hover:{textDecoration:"underline"},size:"sm",children:"What's a Derivation Path?"})})})]})})};var[Pne,One]=kn({name:"CheckboxGroupContext",strict:!1});function Tne(e){return(0,ln.jsx)(cn.svg,{width:"1.2em",viewBox:"0 0 12 10",style:{fill:"none",strokeWidth:2,stroke:"currentColor",strokeDasharray:16},...e,children:(0,ln.jsx)("polyline",{points:"1.5 6 4.5 9 10.5 1"})})}function Cne(e){return(0,ln.jsx)(cn.svg,{width:"1.2em",viewBox:"0 0 24 24",style:{stroke:"currentColor",strokeWidth:4},...e,children:(0,ln.jsx)("line",{x1:"21",x2:"3",y1:"12",y2:"12"})})}function jne(e){const{isIndeterminate:t,isChecked:r,...n}=e,i=t?Cne:Tne;return r||t?(0,ln.jsx)(cn.div,{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%"},children:(0,ln.jsx)(i,{...n})}):null}var Rne={border:"0",clip:"rect(0, 0, 0, 0)",height:"1px",width:"1px",margin:"-1px",padding:"0",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"};var Ine=()=>"undefined"!==typeof document;var Mne=!1,Lne=null,Nne=!1,Dne=!1,zne=new Set;function Bne(e,t){zne.forEach((r=>r(e,t)))}var Une="undefined"!==typeof window&&null!=window.navigator&&/^Mac/.test(window.navigator.platform);function Fne(e){Nne=!0,function(e){return!(e.metaKey||!Une&&e.altKey||e.ctrlKey||"Control"===e.key||"Shift"===e.key||"Meta"===e.key)}(e)&&(Lne="keyboard",Bne("keyboard",e))}function $ne(e){if(Lne="pointer","mousedown"===e.type||"pointerdown"===e.type){Nne=!0;const t=e.composedPath?e.composedPath()[0]:e.target;let r=!1;try{r=t.matches(":focus-visible")}catch{}if(r)return;Bne("pointer",e)}}function Hne(e){var t;(0===(t=e).mozInputSource&&t.isTrusted||0===t.detail&&!t.pointerType)&&(Nne=!0,Lne="virtual")}function Vne(e){e.target!==window&&e.target!==document&&(Nne||Dne||(Lne="virtual",Bne("virtual",e)),Nne=!1,Dne=!1)}function qne(){Nne=!1,Dne=!0}function Kne(){return"pointer"!==Lne}function Wne(){if(!Ine()||Mne)return;const{focus:e}=HTMLElement.prototype;HTMLElement.prototype.focus=function(...t){Nne=!0,e.apply(this,t)},document.addEventListener("keydown",Fne,!0),document.addEventListener("keyup",Fne,!0),document.addEventListener("click",Hne,!0),window.addEventListener("focus",Vne,!0),window.addEventListener("blur",qne,!1),"undefined"!==typeof PointerEvent?(document.addEventListener("pointerdown",$ne,!0),document.addEventListener("pointermove",$ne,!0),document.addEventListener("pointerup",$ne,!0)):(document.addEventListener("mousedown",$ne,!0),document.addEventListener("mousemove",$ne,!0),document.addEventListener("mouseup",$ne,!0)),Mne=!0}function Gne(e){Wne(),e(Kne());const t=()=>e(Kne());return zne.add(t),()=>{zne.delete(t)}}function Zne(e={}){const t=WU(e),{isDisabled:r,isReadOnly:i,isRequired:o,isInvalid:a,id:s,onBlur:c,onFocus:l,"aria-describedby":u}=t,{defaultChecked:d,isChecked:h,isFocusable:f,onChange:p,isIndeterminate:m,name:g,value:v,tabIndex:y,"aria-label":b,"aria-labelledby":w,"aria-invalid":x,...S}=e,E=function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(S,["isDisabled","isReadOnly","isRequired","isInvalid","id","onBlur","onFocus","aria-describedby"]),A=pb(p),P=pb(c),O=pb(l),[T,C]=(0,n.useState)(!1),[j,R]=(0,n.useState)(!1),[I,M]=(0,n.useState)(!1),[L,N]=(0,n.useState)(!1);(0,n.useEffect)((()=>Gne(C)),[]);const D=(0,n.useRef)(null),[z,B]=(0,n.useState)(!0),[U,F]=(0,n.useState)(!!d),$=void 0!==h,H=$?h:U,V=(0,n.useCallback)((e=>{i||r?e.preventDefault():($||F(H?e.target.checked:!!m||e.target.checked),null==A||A(e))}),[i,r,H,$,m,A]);yh((()=>{D.current&&(D.current.indeterminate=Boolean(m))}),[m]),mb((()=>{r&&R(!1)}),[r,R]),yh((()=>{const e=D.current;if(!(null==e?void 0:e.form))return;const t=()=>{F(!!d)};return e.form.addEventListener("reset",t),()=>{var r;return null==(r=e.form)?void 0:r.removeEventListener("reset",t)}}),[]);const q=r&&!f,K=(0,n.useCallback)((e=>{" "===e.key&&N(!0)}),[N]),W=(0,n.useCallback)((e=>{" "===e.key&&N(!1)}),[N]);yh((()=>{if(!D.current)return;D.current.checked!==H&&F(D.current.checked)}),[D.current]);const G=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,"data-active":_(L),"data-hover":_(I),"data-checked":_(H),"data-focus":_(j),"data-focus-visible":_(j&&T),"data-indeterminate":_(m),"data-disabled":_(r),"data-invalid":_(a),"data-readonly":_(i),"aria-hidden":!0,onMouseDown:k(e.onMouseDown,(e=>{j&&e.preventDefault(),N(!0)})),onMouseUp:k(e.onMouseUp,(()=>N(!1))),onMouseEnter:k(e.onMouseEnter,(()=>M(!0))),onMouseLeave:k(e.onMouseLeave,(()=>M(!1)))})),[L,H,r,j,T,I,m,a,i]),Z=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,"data-active":_(L),"data-hover":_(I),"data-checked":_(H),"data-focus":_(j),"data-focus-visible":_(j&&T),"data-indeterminate":_(m),"data-disabled":_(r),"data-invalid":_(a),"data-readonly":_(i)})),[L,H,r,j,T,I,m,a,i]),Y=(0,n.useCallback)(((e={},t=null)=>({...E,...e,ref:Mn(t,(e=>{e&&B("LABEL"===e.tagName)})),onClick:k(e.onClick,(()=>{var e;z||(null==(e=D.current)||e.click(),requestAnimationFrame((()=>{var e;null==(e=D.current)||e.focus({preventScroll:!0})})))})),"data-disabled":_(r),"data-checked":_(H),"data-invalid":_(a)})),[E,r,H,a,z]),X=(0,n.useCallback)(((e={},t=null)=>({...e,ref:Mn(D,t),type:"checkbox",name:g,value:v,id:s,tabIndex:y,onChange:k(e.onChange,V),onBlur:k(e.onBlur,P,(()=>R(!1))),onFocus:k(e.onFocus,O,(()=>R(!0))),onKeyDown:k(e.onKeyDown,K),onKeyUp:k(e.onKeyUp,W),required:o,checked:H,disabled:q,readOnly:i,"aria-label":b,"aria-labelledby":w,"aria-invalid":x?Boolean(x):a,"aria-describedby":u,"aria-disabled":r,style:Rne})),[g,v,s,V,P,O,K,W,o,H,q,i,b,w,x,a,u,r,y]),J=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,onMouseDown:k(e.onMouseDown,Yne),"data-disabled":_(r),"data-checked":_(H),"data-invalid":_(a)})),[H,r,a]);return{state:{isInvalid:a,isFocused:j,isChecked:H,isActive:L,isHovered:I,isIndeterminate:m,isDisabled:r,isReadOnly:i,isRequired:o},getRootProps:Y,getCheckboxProps:G,getIndicatorProps:Z,getInputProps:X,getLabelProps:J,htmlProps:E}}function Yne(e){e.preventDefault(),e.stopPropagation()}var Xne={display:"inline-flex",alignItems:"center",justifyContent:"center",verticalAlign:"top",userSelect:"none",flexShrink:0},Jne={cursor:"pointer",display:"inline-flex",alignItems:"center",verticalAlign:"top",position:"relative"},Qne=Cn({from:{opacity:0,strokeDashoffset:16,transform:"scale(0.95)"},to:{opacity:1,strokeDashoffset:0,transform:"scale(1)"}}),eie=Cn({from:{opacity:0},to:{opacity:1}}),tie=Cn({from:{transform:"scaleX(0.65)"},to:{transform:"scaleX(1)"}}),rie=g((function(e,t){const r=One(),i=_n("Checkbox",{...r,...e}),o=ht(e),{spacing:a="0.5rem",className:s,children:c,iconColor:l,iconSize:u,icon:d=(0,ln.jsx)(jne,{}),isChecked:h,isDisabled:f=(null==r?void 0:r.isDisabled),onChange:p,inputProps:m,...g}=o;let y=h;(null==r?void 0:r.value)&&o.value&&(y=r.value.includes(o.value));let b=p;(null==r?void 0:r.onChange)&&o.value&&(b=E(r.onChange,p));const{state:w,getInputProps:x,getCheckboxProps:_,getLabelProps:S,getRootProps:k}=Zne({...g,isDisabled:f,isChecked:y,onChange:b}),A=function(e){const[t,r]=(0,n.useState)(e),[i,o]=(0,n.useState)(!1);return e!==t&&(o(!0),r(e)),i}(w.isChecked),P=(0,n.useMemo)((()=>({animation:A?w.isIndeterminate?`${eie} 20ms linear, ${tie} 200ms linear`:`${Qne} 200ms linear`:void 0,fontSize:u,color:l,...i.icon})),[l,u,A,w.isIndeterminate,i.icon]),O=(0,n.cloneElement)(d,{__css:P,isIndeterminate:w.isIndeterminate,isChecked:w.isChecked});return(0,ln.jsxs)(cn.label,{__css:{...Jne,...i.container},className:v("chakra-checkbox",s),...k(),children:[(0,ln.jsx)("input",{className:"chakra-checkbox__input",...x(m,t)}),(0,ln.jsx)(cn.span,{__css:{...Xne,...i.control},className:"chakra-checkbox__control",..._(),children:O}),c&&(0,ln.jsx)(cn.span,{className:"chakra-checkbox__label",...S(),__css:{marginStart:a,...i.label},children:c})]})}));rie.displayName="Checkbox";const nie=({goToStep:e})=>{const[t,r]=n.useState(!1);return(0,ln.jsx)(dne,{icon:(0,ln.jsx)(Aj,{}),title:"Accept to Continue",children:(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsxs)(rie,{paddingBottom:"24px",fontWeight:"600",onChange:e=>r(e.target.checked),children:["I confirm that I have read and agreed with the"," ",(0,ln.jsx)(zn,{textDecoration:"underline",_hover:{color:EP.green},href:"https://umamiwallet.com/tos.html",rel:"noopener noreferrer",target:"_blank",children:"Terms of Service"})," ","and the"," ",(0,ln.jsx)(zn,{textDecoration:"underline",_hover:{color:EP.green},href:"https://umamiwallet.com/privacypolicy.html",rel:"noopener noreferrer",target:"_blank",children:"Privacy Policy"})]}),(0,ln.jsx)(Nn,{width:"100%",isDisabled:!t,onClick:()=>{e({type:Aie.connectOrCreate})},size:"lg",children:"Continue"})]})})},iie=({onClose:e})=>{const{register:t,handleSubmit:r,formState:{errors:n}}=IU({mode:"onBlur"}),i=Sne();return(0,ln.jsx)(dne,{icon:(0,ln.jsx)(AR,{}),title:"Add a Fake Account",children:(0,ln.jsxs)("form",{onSubmit:r((async({pkh:t,name:r})=>{const n=new Pq(Ad.rpcUrl),o=await n.getManagerKey(t),a="string"===typeof o?o:o.key;i(IH,a,t,r),e()})),style:{width:"100%"},children:[(0,ln.jsx)(az,{children:"It will be restored as a ledger account"}),(0,ln.jsxs)(Gz,{isInvalid:!!n.pkh,children:[(0,ln.jsx)(UU,{children:"Address"}),(0,ln.jsx)(GU,{...t("pkh",{required:!0}),autoComplete:"off",placeholder:"Please enter the account address"})]}),(0,ln.jsxs)(Gz,{isInvalid:!!n.name,children:[(0,ln.jsx)(UU,{children:"Name"}),(0,ln.jsx)(GU,{...t("name",{required:!0}),autoComplete:"off",placeholder:"Please enter the account name"})]}),(0,ln.jsx)(Nn,{width:"100%",marginTop:2,size:"lg",type:"submit",children:"Add account"})]})})},oie=({onSubmit:e,isLoading:t})=>{const r=IU({mode:"onBlur"}),{handleSubmit:n,formState:{errors:i,isValid:o},getValues:a}=r;return(0,ln.jsx)(dne,{icon:(0,ln.jsx)(nR,{}),subtitle:"Please choose a master password for Umami. You will need to use this password in order to perform any operations within Umami.",title:"Umami Master Password",children:(0,ln.jsx)(AB,{...r,children:(0,ln.jsxs)("form",{onSubmit:n((async t=>{e(t.confirm)})),style:{width:"100%"},children:[(0,ln.jsxs)(Gz,{isInvalid:!!i.password,children:[(0,ln.jsx)(A7,{"data-testid":"password",inputName:"password",placeholder:"Enter master password"}),i.password&&(0,ln.jsx)(E7,{children:i.password.message})]}),(0,ln.jsxs)(Gz,{marginTop:"24px",isInvalid:!!i.confirm,children:[(0,ln.jsx)(A7,{"data-testid":"confirmation",inputName:"confirm",label:"Confirm Password",placeholder:"Confirm your password",required:"Confirmation is required",validate:e=>a("password")===e||"Your passwords do no match"}),i.confirm&&(0,ln.jsx)(E7,{children:i.confirm.message})]}),(0,ln.jsx)(Nn,{width:"100%",marginTop:"32px",isDisabled:!o||t,isLoading:t,size:"lg",type:"submit",children:"Submit"})]})})})},aie=({account:e,onClose:t})=>{const r=_ne(),n=(()=>{const e=TR();return(t,r,n)=>e(vne({secretKey:t,password:r,label:n}))})(),i=(()=>{const e=FH(),t=Object.values(e)[0];return t?async e=>{await Ic(t,e)}:null})(),o=null!==i,{isLoading:a,handleAsyncAction:s}=S7(),c=sN(),l=a=>s((async()=>{switch(o&&await i(a),e.type){case"secret_key":await n(e.secretKey,a,e.label);break;case"mnemonic":await r({...e,password:a})}c({description:"Account successfully created!",status:"success"}),t()}));return o?(0,ln.jsx)(hne,{isLoading:a,onSubmit:l}):(0,ln.jsx)(oie,{isLoading:a,onSubmit:l})},sie=({goToStep:e})=>(0,ln.jsx)(dne,{icon:(0,ln.jsx)(aR,{}),subtitle:"Please read the following before you continue to see your secret Seed Phrase.",title:"Important Notice",children:(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(rF,{spacing:"16px",variant:"onboardingNotice",children:[{content:"Write down your seed phrase and store it in a safe place."},{content:"Make sure there is no one around you or looking over your shoulder."},{content:"Do not copy and paste the Seed Phrase or store it on your device."},{content:"Do not take a screenshot of your Seed Phrase."}].map(((e,t)=>(0,ln.jsx)(iF,{fontSize:"16px",fontWeight:600,children:e.content},t)))}),(0,ln.jsx)(Nn,{width:"100%",marginTop:"28px",onClick:()=>e({type:Aie.showSeedphrase,account:{type:"mnemonic",mnemonic:(0,lH.OF)(256)}}),size:"lg",children:"I understand"}),(0,ln.jsx)(Nn,{width:"100%",marginTop:"16px",onClick:()=>e({type:Aie.restoreMnemonic}),size:"lg",variant:"tertiary",children:"I already have a Seed Phrase"})]})}),cie=function(e,t,r){var n=r||!1,i=Oo(Ba,za,t&&t.enhancer?t.enhancer:void 0),o=function(e){i.dispatch({type:ba,key:e})},a=function(t,r,o){var a={type:ma,payload:r,err:o,key:t};e.dispatch(a),i.dispatch(a),n&&s.getState().bootstrapped&&(n(),n=!1)},s=Na({},i,{purge:function(){var t=[];return e.dispatch({type:ya,result:function(e){t.push(e)}}),Promise.all(t)},flush:function(){var t=[];return e.dispatch({type:pa,result:function(e){t.push(e)}}),Promise.all(t)},pause:function(){e.dispatch({type:ga})},persist:function(){e.dispatch({type:va,register:o,rehydrate:a})}});return t&&t.manualPersist||s.persist(),s}(Xd),lie=()=>{const e=IU({mode:"onBlur"}),{handleSubmit:t,register:r,formState:{errors:n,isValid:i}}=e,{handleAsyncAction:o}=S7(),a=(()=>{const e=_ne();return async(t,r)=>{const n=t.recoveryPhrases,i=t.derivationPaths.map((e=>"m/"===e.slice(0,2)?e.slice(2):e));localStorage.clear();try{for(const[t,o]of n.entries()){const n=await Ic(o,r,"V1");await e({mnemonic:n,password:r,label:Oie,derivationPath:i[t]})}}catch(o){throw new Error("Invalid password.")}await cie.flush()}})();return(0,ln.jsx)(dne,{icon:(0,ln.jsx)(dR,{}),subtitle:"Select a JSON backup file and enter the password you used to encrypt it.",title:"Restore from Backup",children:(0,ln.jsx)(AB,{...e,children:(0,ln.jsx)("form",{onSubmit:t((({password:e,file:t})=>o((async()=>{const r=await t[0].text(),n=JSON.parse(r);if(n.recoveryPhrases&&n.derivationPaths)await a(n,e);else{if(!n["persist:accounts"])throw new Error("Invalid backup file.");await(async(e,t)=>{const r=e["persist:accounts"];if(!r)throw new Error("Invalid backup file.");const n=JSON.parse(r),i=JSON.parse(n.seedPhrases);try{for(const e of Object.values(i))await Ic(e,t,"V2")}catch(o){throw new Error("Invalid password.")}cie.pause(),localStorage.clear(),localStorage.setItem("persist:accounts",r),localStorage.setItem("persist:root",e["persist:root"]),cie.persist()})(n,e)}window.location.reload()})))),style:{width:"100%"},children:(0,ln.jsxs)(cz,{children:[(0,ln.jsxs)(Gz,{isInvalid:!!n.file,children:[(0,ln.jsx)(UU,{children:"Upload File"}),(0,ln.jsx)(un,{children:(0,ln.jsx)(GU,{padding:"2px","data-testid":"file-input",...r("file",{required:"File is required"}),accept:".json",type:"file",variant:"unstyled"})}),n.file&&(0,ln.jsx)(Jz,{"data-testid":"file",children:n.file.message})]}),(0,ln.jsxs)(Gz,{marginTop:"24px",children:[(0,ln.jsx)(A7,{"data-testid":"password-input",inputName:"password",label:"Your password (if you have one)",required:!1}),n.password&&(0,ln.jsx)(Jz,{"data-testid":"password",children:n.password.message})]}),(0,ln.jsx)(Nn,{width:"100%",marginTop:"32px",isDisabled:!i,size:"lg",type:"submit",children:"Import Wallet"})]})})})})},uie=({closeModal:e,account:t})=>{const r=Sne(),n=sN(),{isLoading:i,handleAsyncAction:o}=S7();return(0,ln.jsx)(dne,{icon:(0,ln.jsx)(_R,{}),subtitle:"Complete the steps to connect.",title:"Connect Ledger",children:(0,ln.jsxs)(lne,{overflowY:"auto",spacing:"24px",children:[(0,ln.jsx)(rF,{spacing:4,children:[{content:"Plug your Ledger into your computer using a USB cable."},{content:"Unlock your Ledger."},{content:"Make sure your Ledger has the latest firmware version."},{content:"Install and open the Tezos Wallet app on your Ledger."},{content:"Click the button below and confirm the action on your Ledger."}].map(((e,t)=>(0,ln.jsx)(iF,{children:e.content},t)))}),(0,ln.jsx)(Nn,{width:"100%",isLoading:i,onClick:()=>o((()=>w7((async()=>{const i=n({description:"Please open the Tezos app on your Ledger and approve the operation",status:"info"}),o=NH(t.derivationPath,0),{pk:a,pkh:s}=await(async e=>{const t=await qV.create(),r=new rq(t,e,!0),n=await r.publicKey(),i=await r.publicKeyHash();return await t.close(),{pk:n,pkh:i}})(o);r(o,a,s,t.label),n.close(i),n({description:"Account successfully created!",status:"success"}),e()}),6e4)),(e=>"PublicKeyRetrievalError"===e.name?{description:"Request rejected. Please unlock your Ledger and open the Tezos app"}:"InvalidStateError"===e.name?{description:"Request pending. Check your ledger..."}:{description:`Ledger error. ${e.message||e.name}`})),size:"lg",children:"Export Public Key"})]})})};var die=N7({displayName:"ChevronDownIcon",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"}),hie=g((function(e,t){const{children:r,placeholder:n,className:i,...o}=e;return(0,ln.jsxs)(cn.select,{...o,ref:t,className:v("chakra-select",i),children:[n&&(0,ln.jsx)("option",{value:"",children:n}),r]})}));hie.displayName="SelectField";var fie=g(((e,t)=>{var r;const n=_n("Select",e),{rootProps:i,placeholder:o,icon:a,color:s,height:c,h:l,minH:u,minHeight:d,iconColor:h,iconSize:f,...p}=ht(e),[m,g]=function(e,t){const r={},n={};for(const[i,o]of Object.entries(e))t.includes(i)?r[i]=o:n[i]=o;return[r,n]}(p,tt),v=KU(g),y={width:"100%",height:"fit-content",position:"relative",color:s},b={paddingEnd:"2rem",...n.field,_focus:{zIndex:"unset",...null==(r=n.field)?void 0:r._focus}};return(0,ln.jsxs)(cn.div,{className:"chakra-select__wrapper",__css:y,...m,...i,children:[(0,ln.jsx)(hie,{ref:t,height:null!=l?l:c,minH:null!=u?u:d,placeholder:o,...v,__css:b,children:e.children}),(0,ln.jsx)(gie,{"data-disabled":_(v.disabled),...(h||s)&&{color:h||s},__css:n.icon,...f&&{fontSize:f},children:a})]})}));fie.displayName="Select";var pie=e=>(0,ln.jsx)("svg",{viewBox:"0 0 24 24",...e,children:(0,ln.jsx)("path",{fill:"currentColor",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"})}),mie=cn("div",{baseStyle:{position:"absolute",display:"inline-flex",alignItems:"center",justifyContent:"center",pointerEvents:"none",top:"50%",transform:"translateY(-50%)"}}),gie=e=>{const{children:t=(0,ln.jsx)(pie,{}),...r}=e,i=(0,n.cloneElement)(t,{role:"presentation",className:"chakra-select__icon",focusable:!1,"aria-hidden":!0,style:{width:"1em",height:"1em",color:"currentColor"}});return(0,ln.jsx)(mie,{...r,className:"chakra-select__icon-wrapper",children:(0,n.isValidElement)(t)?i:null})};gie.displayName="SelectIcon";const vie=({inputName:e,validate:t,inputProps:r,listProps:i})=>{const[o,a]=(0,n.useState)(!0),{register:s,setValue:c,watch:l}=EB(),u=l(e),d=lH.ET.EN.filter((e=>u&&e.startsWith(u))).sort(),h=!o&&d.length>0&&(d.length>1||d[0]!==u);return(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(GU,{zIndex:0,autoComplete:"off","data-testid":"mnemonic-input",onFocus:()=>a(!1),placeholder:"Type here...",...s(e,{required:"Required",validate:t,onChange:()=>a(!1),onBlur:()=>a(!0)}),...r}),h&&(0,ln.jsx)(nF,{"data-testid":"suggestions",variant:"suggestions",...i,children:d.map((t=>(0,ln.jsx)(iF,{paddingTop:"2px",fontSize:"14px",fontWeight:600,"data-testid":"suggestion",onMouseDown:()=>c(e,t),paddingX:"7px",children:t},t)))})]})},yie=[12,15,18,24],bie=({goToStep:e})=>{const t=IU({mode:"onBlur"}),{handleSubmit:r,setValue:i,trigger:o,formState:{isValid:a}}=t,{handleAsyncAction:s}=S7(),[c,l]=(0,n.useState)(24);return(0,ln.jsx)(dne,{icon:(0,ln.jsx)(Kj,{width:"24px",height:"24px",stroke:EP.gray[450]}),subtitle:"Please fill in the Seed Phrase in sequence.",title:"Import Seed Phrase",children:(0,ln.jsx)(fn,{overflowX:"hidden",children:(0,ln.jsx)(AB,{...t,children:(0,ln.jsx)("form",{onSubmit:r((t=>s((async()=>{const r=Object.values(t).join(" ").trim();if(!(0,lH._I)(r))throw new Error(`Invalid Mnemonic: "${r}"`);e({type:Aie.nameAccount,account:{type:"mnemonic",mnemonic:r}})})))),style:{width:"100%"},children:(0,ln.jsxs)(lne,{width:"100%",spacing:4,children:[(0,ln.jsx)(fie,{height:"48px",color:EP.gray[450],"data-testid":"select",icon:(0,ln.jsx)(die,{}),onChange:e=>(e=>{const t=Number(e);yie.includes(t)&&(l((e=>(e>t&&(0,Va.range)(t,Math.max(...yie)).forEach((e=>{i(`word${e}`,void 0)})),t))),o())})(e.target.value),value:c,children:yie.reverse().map((e=>(0,ln.jsxs)("option",{value:e,children:[e," Words"]},e)))}),(0,ln.jsx)(Hre,{gridGap:3,gridTemplateColumns:"repeat(3, 1fr)",paddingBottom:"20px",children:(0,Va.range)(c).map((e=>{const t=`word${e}`;return(0,ln.jsxs)(qre,{display:"flex",height:"38px",padding:"4px",fontSize:"sm",background:EP.gray[800],border:"1px solid",borderColor:EP.gray[500],borderRadius:"4px",children:[(0,ln.jsx)(Sn,{width:"18px",marginRight:"6px",paddingTop:"6px",color:EP.gray[400],textAlign:"right",size:"sm",children:e+1}),(0,ln.jsx)(vie,{inputName:t,inputProps:{onPaste:async e=>{e.preventDefault();(e=>{s((async()=>{const t=e.split(" ");if(!yie.includes(t.length))throw new Error(`the mnemonic must be ${yie.join(", ")} words long`);t.slice(0,c).forEach(((e,t)=>{i(`word${t}`,e)})),o()}))})(await navigator.clipboard.readText())},border:"none",size:"xsmall"},listProps:{width:"126px",marginTop:"38px",marginLeft:"-5px"}})]},e)}))}),(0,ln.jsx)(Nn,{width:"100%",isDisabled:!a,size:"lg",type:"submit",children:"Continue"})]})})})})})};var wie=["h","minH","height","minHeight"],xie=g(((e,t)=>{const r=xn("Textarea",e),{className:n,rows:i,...o}=ht(e),a=KU(o),s=i?function(e,t=[]){const r=Object.assign({},e);for(const n of t)n in r&&delete r[n];return r}(r,wie):r;return(0,ln.jsx)(cn.textarea,{ref:t,rows:i,...a,className:v("chakra-textarea",n),__css:s})}));xie.displayName="Textarea";const _ie=({goToStep:e})=>{const{register:t,handleSubmit:r,formState:{errors:n}}=IU({mode:"onBlur"});return(0,ln.jsx)(dne,{icon:(0,ln.jsx)(Kj,{width:"24px",height:"24px",stroke:EP.gray[450]}),title:"Insert Secret Key",children:(0,ln.jsxs)("form",{onSubmit:r((({secretKey:t})=>e({type:Aie.nameAccount,account:{type:"secret_key",secretKey:t.trim()}}))),style:{width:"100%"},children:[(0,ln.jsxs)(Gz,{isInvalid:!!n.secretKey,children:[(0,ln.jsx)(UU,{children:"Secret Key"}),(0,ln.jsx)(xie,{minHeight:"130px","data-testid":"name",...t("secretKey",{required:"Secret key is required"}),placeholder:"Your secret key"}),n.secretKey&&(0,ln.jsx)(Jz,{children:n.secretKey.message})]}),(0,ln.jsx)(Nn,{width:"100%",marginTop:"32px",isDisabled:!!n.secretKey,size:"lg",type:"submit",children:"Continue"})]})})};var Sie=g((function(e,t){const{columns:r,spacingX:n,spacingY:i,spacing:o,minChildWidth:a,...s}=e,c=gn(),l=a?function(e,t){return lz(e,(e=>{const r=yn("sizes",e,function(e){return"number"===typeof e?`${e}px`:e}(e))(t);return null===e?null:`repeat(auto-fit, minmax(${r}, 1fr))`}))}(a,c):lz(r,(e=>null===e?null:`repeat(${e}, minmax(0, 1fr))`));return(0,ln.jsx)(Hre,{ref:t,gap:o,columnGap:n,rowGap:i,templateColumns:l,...s})}));Sie.displayName="SimpleGrid";const kie=({goToStep:e,account:t})=>(0,ln.jsx)(dne,{icon:(0,ln.jsx)(Kj,{width:"24px",height:"24px",stroke:EP.gray[450]}),subtitle:"Please record the following 24 words in sequence in order to restore it in the future.",title:"Record Seed Phrase",children:(0,ln.jsxs)(lne,{children:[(0,ln.jsx)(Sie,{columns:3,spacing:2,children:t.mnemonic.split(" ").map(((e,t)=>(0,ln.jsxs)(un,{width:"126px",padding:"6px",border:"1px dashed",borderColor:EP.gray[500],borderRadius:"4px",children:[(0,ln.jsx)(Sn,{width:"18px",marginRight:"10px",paddingTop:"2px",color:EP.gray[450],textAlign:"right",size:"sm",children:t+1}),(0,ln.jsx)(az,{"data-testid":`mnemonic-word-${t}`,size:"sm",children:e})]},t)))}),(0,ln.jsx)(Nn,{width:"100%",marginTop:"20px",onClick:r=>{e({type:Aie.verifySeedphrase,account:t})},size:"lg",children:"OK, I've recorded it"})]})}),Eie=({goToStep:e,account:t})=>{const r=t.mnemonic.split(" "),i=IU({mode:"onBlur"}),{handleSubmit:o,formState:{errors:a,isValid:s}}=i,[c]=(0,n.useState)(((e,t)=>(0,Va.shuffle)(e.map(((e,t)=>({value:e,index:t})))).slice(0,t).sort(((e,t)=>e.index-t.index)))(r,5));return(0,ln.jsx)(dne,{icon:(0,ln.jsx)(Pj,{}),subtitle:"To verify, please type in the word that corresponds to each sequence number.",title:"Verify Seed Phrase",children:(0,ln.jsx)(fn,{overflowX:"hidden",overflowY:"auto",width:"100%",children:(0,ln.jsx)(AB,{...i,children:(0,ln.jsxs)("form",{onSubmit:o((()=>e({type:Aie.nameAccount,account:t}))),children:[c.map(((e,t)=>{const r=`${e.index}`,n=a[r];return(0,ln.jsxs)(Gz,{marginBottom:"12px",isInvalid:!!n,children:[(0,ln.jsx)(az,{position:"absolute",zIndex:1,width:"26px",marginTop:"12px",marginLeft:"4px",textAlign:"right","data-testid":"mnemonic-index",children:e.index+1}),(0,ln.jsx)(fn,{width:"100%",children:(0,ln.jsx)(vie,{inputName:r,inputProps:{paddingLeft:"36px",size:"md"},listProps:{marginTop:"6px"},validate:t=>{if(t!==e.value)return"Word doesn't match"}})}),(null===n||void 0===n?void 0:n.message)&&(0,ln.jsx)(E7,{children:n.message})]},t)})),(0,ln.jsx)(Nn,{width:"100%",marginTop:"20px",isDisabled:!s,size:"lg",type:"submit",children:"Continue"})]})})})})};let Aie=function(e){return e.eula="eula",e.connectOrCreate="connectOrCreate",e.connectOptions="connectOptions",e.notice="notice",e.restoreMnemonic="restoreMnemonic",e.restoreSecretKey="restoreSecretKey",e.restoreLedger="restoreLedger",e.restoreBackup="restoreBackup",e.showSeedphrase="showSeedphrase",e.verifySeedphrase="verifySeedphrase",e.nameAccount="nameAccount",e.derivationPath="derivationPath",e.masterPassword="masterPassword",e.fakeAccount="fakeAccount",e}({});const Pie=e=>{const{isOpen:t,onOpen:r,onClose:i}=zR(),o=0!==$H().length,a=(e=>{const[t,r]=(0,n.useState)(e),[i,o]=(0,n.useState)([t]),a=1===i.length;return{reset:()=>{r(e),o([e])},goToStep:e=>{r(e),o([...i,e])},currentStep:t,goBack:()=>{if(a)return;i.pop();const e=i[i.length-1];o(i),r(e)},atInitialStep:a,fullHistory:i}})({type:o?Aie.connectOrCreate:Aie.eula}),{currentStep:s,goToStep:c}=a,l=()=>{a.reset(),e&&e(),i()};return{modalElement:(0,ln.jsxs)(rI,{autoFocus:!1,closeOnOverlayClick:!1,isCentered:!0,isOpen:t,onClose:l,children:[o&&(0,ln.jsx)(gI,{}),(0,ln.jsxs)(nz,{children:[!a.atInitialStep&&(0,ln.jsx)(z7,{onClick:a.goBack}),(0,ln.jsx)(sz,{onClick:l}),(()=>{switch(s.type){case Aie.eula:return(0,ln.jsx)(nie,{goToStep:c});case Aie.connectOrCreate:return(0,ln.jsx)(kne,{closeModal:l,goToStep:c});case Aie.connectOptions:return(0,ln.jsx)(gne,{goToStep:c});case Aie.notice:return(0,ln.jsx)(sie,{goToStep:c});case Aie.restoreMnemonic:return(0,ln.jsx)(bie,{goToStep:c});case Aie.restoreBackup:return(0,ln.jsx)(lie,{});case Aie.showSeedphrase:return(0,ln.jsx)(kie,{goToStep:c,...s});case Aie.verifySeedphrase:return(0,ln.jsx)(Eie,{goToStep:c,...s});case Aie.nameAccount:return(0,ln.jsx)(Tie,{goToStep:c,...s});case Aie.derivationPath:return(0,ln.jsx)(Ane,{goToStep:c,...s});case Aie.restoreLedger:return(0,ln.jsx)(uie,{closeModal:l,...s});case Aie.masterPassword:return(0,ln.jsx)(aie,{onClose:l,...s});case Aie.fakeAccount:return(0,ln.jsx)(iie,{onClose:i});case Aie.restoreSecretKey:return(0,ln.jsx)(_ie,{goToStep:c})}})()]})]}),onOpen:r}},Oie="Account",Tie=({goToStep:e,account:t})=>{const r=KH();return(0,ln.jsx)(fne,{onSubmit:n=>{const i=n.accountName.trim()||Oie,o=r(i)[0];switch(t.type){case"secret_key":return e({type:Aie.masterPassword,account:{...t,label:o}});case"ledger":return e({type:Aie.derivationPath,account:{...t,label:o}});case"mnemonic":return e({type:Aie.derivationPath,account:{...t,label:i}})}},subtitle:"Please choose a name for your first account. You can edit your account name later."})},Cie=e=>{const t=TR(),{openWith:r}=(0,n.useContext)(pM),{mode:i,operations:o,fee:a,data:{threshold:s,signers:c,name:l,sender:u}}=e,{fee:d,operations:h,estimationFailed:f,isLoading:p,form:m,signer:g,onSign:v,handleAsyncAction:y}=ute(a,o,i);return(0,ln.jsx)(AB,{...m,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(F7,{...e,operationsType:h.type,signer:h.signer}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(UU,{children:"Contract Name"}),(0,ln.jsx)(az,{marginBottom:"24px",padding:"14px",color:EP.gray[50],background:EP.gray[800],borderRadius:"6px","data-testid":"contract-name",children:l}),(0,ln.jsxs)(fn,{marginBottom:"24px",children:[(0,ln.jsx)(UU,{children:"Owner"}),(0,ln.jsx)(d3,{marginBottom:"12px",address:qu(u),"data-testid":"multisig-owner"}),(0,ln.jsx)(un,{justifyContent:"flex-end",children:(0,ln.jsx)(I7,{fee:d})})]}),(0,ln.jsx)(UU,{children:"Approvers"}),(0,ln.jsx)(fn,{"data-testid":"approvers",children:c.map((e=>(0,ln.jsx)(d3,{marginBottom:"12px",address:qu(e.val),"data-testid":`approver-${e.val}`},e.val)))}),(0,ln.jsxs)(un,{alignItems:"center",marginTop:"24px",marginBottom:"24px",children:[(0,ln.jsx)(Sn,{marginRight:"12px",size:"md",children:"Min No. of approvals:"}),(0,ln.jsx)(dn,{width:"100px",height:"48px",background:EP.gray[800],borderRadius:"4px",children:(0,ln.jsxs)(az,{textAlign:"center","data-testid":"threshold",children:[s," out of ",c.length]})})]})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(P7,{isDisabled:f,isLoading:p,onSubmit:async e=>y((async()=>{const n=await v(e);if(!n)throw new Error("An error occurred during contract origination");const i=(await n.getOriginatedContractAddresses())[0];t($d.addMultisigLabel({pkh:i,label:l})),r((0,ln.jsx)(C7,{hash:n.opHash}))})),signer:g,text:B7(h.type,i)})})]})})})},jie=[{prim:"storage",args:[{prim:"pair",args:[{prim:"address",annots:["%owner"]},{prim:"pair",args:[{prim:"set",args:[{prim:"address"}],annots:["%signers"]},{prim:"pair",args:[{prim:"nat",annots:["%threshold"]},{prim:"pair",args:[{prim:"nat",annots:["%last_op_id"]},{prim:"pair",args:[{prim:"big_map",args:[{prim:"nat"},{prim:"pair",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"list",args:[{prim:"operation"}]}],annots:["%actions"]},{prim:"set",args:[{prim:"address"}],annots:["%approvals"]}]}],annots:["%pending_ops"]},{prim:"big_map",args:[{prim:"string"},{prim:"bytes"}],annots:["%metadata"]}]}]}]}]}]}]},{prim:"parameter",args:[{prim:"or",args:[{prim:"or",args:[{prim:"or",args:[{prim:"bytes",annots:["%set_metadata_uri"]},{prim:"unit",annots:["%default"]}]},{prim:"or",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"list",args:[{prim:"operation"}]}],annots:["%propose"]},{prim:"nat",annots:["%approve"]}]}]},{prim:"nat",annots:["%execute"]}]}]},{prim:"code",args:[[{prim:"NIL",args:[{prim:"operation"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"UNPAIR"},{prim:"DIP",args:[{int:"1"},[{prim:"UNPAIR",args:[{int:"6"}]}]]},{prim:"IF_LEFT",args:[[{prim:"IF_LEFT",args:[[{prim:"IF_LEFT",args:[[{prim:"DUP",args:[{int:"2"}]},{prim:"SENDER"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"INVALID_CALLER"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"7"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"SOME"},{prim:"PUSH",args:[{prim:"string"},{string:""}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}],[{prim:"DROP",args:[{int:"1"}]},{prim:"DUP",args:[{int:"3"}]},{prim:"DUP",args:[{int:"3"}]},{prim:"SIZE"},{prim:"COMPARE"},{prim:"GE"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"FUNDING BLOCKED SINCE PARAMS ARE INVALID"}]},{prim:"FAILWITH"}],[]]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}]]}],[{prim:"IF_LEFT",args:[[{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"AMOUNT"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"TO FUND CONTRACT, PLEASE USE THE DEFAULT ENTRYPOINT"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"3"}]},{prim:"SENDER"},{prim:"MEM"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ONLY FOR SIGNERS"}]},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"nat"},{int:"1"}]},{prim:"DUP",args:[{int:"6"}]},{prim:"ADD"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"4"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"4"}]},{prim:"DUP",args:[{int:"6"}]},{prim:"DUP",args:[{int:"6"}]},{prim:"MEM"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"KEY_EXISTS"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[{prim:"DUP",args:[{int:"6"}]},{prim:"EMPTY_SET",args:[{prim:"address"}]},{prim:"PUSH",args:[{prim:"bool"},{prim:"True"}]},{prim:"SENDER"},{prim:"UPDATE"},{prim:"DUP",args:[{int:"3"}]},{prim:"PAIR"},{prim:"SOME"},{prim:"DUP",args:[{int:"7"}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"5"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"5"}]}]]},{prim:"DROP",args:[{int:"1"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}],[{prim:"DUP",args:[{int:"6"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"INVALID OP ID"}]},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"AMOUNT"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"TO FUND CONTRACT, PLEASE USE THE DEFAULT ENTRYPOINT"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"4"}]},{prim:"SENDER"},{prim:"MEM"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ONLY FOR SIGNERS"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP"},{prim:"CDR"},{prim:"SENDER"},{prim:"MEM"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ALREADY APPROVED"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"7"}]},{prim:"DUP",args:[{int:"8"}]},{prim:"DUP",args:[{int:"4"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"ASSET_NOT_FOUND"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[]]},{prim:"UNPAIR"},{prim:"SWAP"},{prim:"DROP",args:[{int:"1"}]},{prim:"DUP",args:[{int:"9"}]},{prim:"DUP",args:[{int:"5"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"ASSET_NOT_FOUND"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[]]},{prim:"CDR"},{prim:"PUSH",args:[{prim:"bool"},{prim:"True"}]},{prim:"SENDER"},{prim:"UPDATE"},{prim:"SWAP"},{prim:"PAIR"},{prim:"SOME"},{prim:"DUP",args:[{int:"4"}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"2"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}]]}]]}],[{prim:"DUP",args:[{int:"6"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"INVALID OP ID"}]},{prim:"FAILWITH"}],[]]},{prim:"PUSH",args:[{prim:"mutez"},{int:"0"}]},{prim:"AMOUNT"},{prim:"COMPARE"},{prim:"EQ"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"TO FUND CONTRACT, PLEASE USE THE DEFAULT ENTRYPOINT"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"4"}]},{prim:"SENDER"},{prim:"MEM"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"ONLY FOR SIGNERS"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"5"}]},{prim:"DUP",args:[{int:"2"}]},{prim:"CDR"},{prim:"SIZE"},{prim:"COMPARE"},{prim:"GE"},{prim:"NOT"},{prim:"IF",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"NOT YET APPROVED"}]},{prim:"FAILWITH"}],[]]},{prim:"DUP",args:[{int:"7"}]},{prim:"DUP",args:[{int:"3"}]},{prim:"GET"},{prim:"IF_NONE",args:[[{prim:"PUSH",args:[{prim:"string"},{string:"pending_ops"}]},{prim:"PUSH",args:[{prim:"string"},{string:"ASSET_NOT_FOUND"}]},{prim:"PAIR"},{prim:"FAILWITH"}],[]]},{prim:"CAR"},{prim:"PUSH",args:[{prim:"unit"},{prim:"Unit"}]},{prim:"EXEC"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"8"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"8"}]},{prim:"DUP",args:[{int:"7"}]},{prim:"NONE",args:[{prim:"pair",args:[{prim:"lambda",args:[{prim:"unit"},{prim:"list",args:[{prim:"operation"}]}]},{prim:"set",args:[{prim:"address"}]}]}]},{prim:"DUP",args:[{int:"4"}]},{prim:"UPDATE"},{prim:"DIP",args:[{int:"1"},[{prim:"DIG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"1"}]}]]},{prim:"DUG",args:[{int:"6"}]},{prim:"DROP",args:[{int:"2"}]},{prim:"PAIR",args:[{int:"6"}]},{prim:"DIG",args:[{int:"1"}]},{prim:"PAIR"}]]}]]}],Rie=e=>{return{type:"contract_origination",sender:qu(e.sender),code:jie,storage:(t=e.sender,r=e.signers.map((e=>e.val)),n=String(e.threshold),{owner:t,signers:r,threshold:n,last_op_id:"0",pending_ops:[],metadata:[]})};var t,r,n},Iie=e=>{const t=IU({mode:"onBlur",defaultValues:{signers:[{val:""}],threshold:1,...lte(e)}}),{formState:{errors:r,isValid:i},control:o,register:a,handleSubmit:s,getValues:c,watch:l}=t,u=function(e){const t=EB(),{control:r=t.control,name:i,keyName:o="id",shouldUnregister:a}=e,[s,c]=n.useState(r._getFieldArray(i)),l=n.useRef(r._getFieldArray(i).map(BB)),u=n.useRef(s),d=n.useRef(i),h=n.useRef(!1);d.current=i,u.current=s,r._names.array.add(i),e.rules&&r.register(i,e.rules),jB({next:({values:e,name:t})=>{if(t===d.current||!t){const t=fB(e,d.current);Array.isArray(t)&&(c(t),l.current=t.map(BB))}},subject:r._subjects.array});const f=n.useCallback((e=>{h.current=!0,r._updateFieldArray(i,e)}),[r,i]);return n.useEffect((()=>{if(r._state.action=!1,$B(i,r._names)&&r._subjects.state.next({...r._formState}),h.current&&(!FB(r._options.mode).isOnSubmit||r._formState.isSubmitted))if(r._options.resolver)r._executeSchema([i]).then((e=>{const t=fB(e.errors,i),n=fB(r._formState.errors,i);(n?!t&&n.type||t&&(n.type!==t.type||n.message!==t.message):t&&t.type)&&(t?NB(r._formState.errors,i,t):dU(r._formState.errors,i),r._subjects.state.next({errors:r._formState.errors}))}));else{const e=fB(r._fields,i);e&&e._f&&nU(e,r._formValues,r._options.criteriaMode===gB.all,r._options.shouldUseNativeValidation,!0).then((e=>!OB(e)&&r._subjects.state.next({errors:HB(r._formState.errors,e,i)})))}r._subjects.values.next({name:i,values:{...r._formValues}}),r._names.focus&&zB(r._fields,(e=>!!e&&e.startsWith(r._names.focus||""))),r._names.focus="",r._updateValid(),h.current=!1}),[s,i,r]),n.useEffect((()=>(!fB(r._formValues,i)&&r._updateFieldArray(i),()=>{(r._options.shouldUnregister||a)&&r.unregister(i)})),[i,r,o,a]),{swap:n.useCallback(((e,t)=>{const n=r._getFieldArray(i);uU(n,e,t),uU(l.current,e,t),f(n),c(n),r._updateFieldArray(i,n,uU,{argA:e,argB:t},!1)}),[f,i,r]),move:n.useCallback(((e,t)=>{const n=r._getFieldArray(i);sU(n,e,t),sU(l.current,e,t),f(n),c(n),r._updateFieldArray(i,n,sU,{argA:e,argB:t},!1)}),[f,i,r]),prepend:n.useCallback(((e,t)=>{const n=CB(uB(e)),o=cU(r._getFieldArray(i),n);r._names.focus=UB(i,0,t),l.current=cU(l.current,n.map(BB)),f(o),c(o),r._updateFieldArray(i,o,cU,{argA:oU(e)})}),[f,i,r]),append:n.useCallback(((e,t)=>{const n=CB(uB(e)),o=iU(r._getFieldArray(i),n);r._names.focus=UB(i,o.length-1,t),l.current=iU(l.current,n.map(BB)),f(o),c(o),r._updateFieldArray(i,o,iU,{argA:oU(e)})}),[f,i,r]),remove:n.useCallback((e=>{const t=lU(r._getFieldArray(i),e);l.current=lU(l.current,e),f(t),c(t),r._updateFieldArray(i,t,lU,{argA:e})}),[f,i,r]),insert:n.useCallback(((e,t,n)=>{const o=CB(uB(t)),a=aU(r._getFieldArray(i),e,o);r._names.focus=UB(i,e,n),l.current=aU(l.current,e,o.map(BB)),f(a),c(a),r._updateFieldArray(i,a,aU,{argA:e,argB:oU(t)})}),[f,i,r]),update:n.useCallback(((e,t)=>{const n=uB(t),o=hU(r._getFieldArray(i),e,n);l.current=[...o].map(((t,r)=>t&&r!==e?l.current[r]:BB())),f(o),c([...o]),r._updateFieldArray(i,o,hU,{argA:e,argB:n},!0,!1)}),[f,i,r]),replace:n.useCallback((e=>{const t=CB(uB(e));l.current=t.map(BB),f([...t]),c([...t]),r._updateFieldArray(i,[...t],(e=>e),{},!0,!1)}),[f,i,r]),fields:n.useMemo((()=>s.map(((e,t)=>({...e,[o]:l.current[t]||BB()})))),[s,o])}}({control:o,name:"signers",rules:{minLength:1}}),d=l("signers").length,h=gte({SignPage:Cie,signPageExtraData:l(),FormPage:Iie,defaultFormPageProps:{},toOperation:Rie}),{onFormSubmitActionHandlers:[f],isLoading:p}=yte([h]),m=qH();return(0,ln.jsx)(AB,{...t,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{onSubmit:s(f),children:[(0,ln.jsx)(L7,{subTitle:"Name your contract, select an owner and the signers of the contract.",title:"Create Multisig"}),(0,ln.jsxs)(cz,{children:[(0,ln.jsxs)(Gz,{isInvalid:!!r.name,children:[(0,ln.jsx)(UU,{children:"Name the Contract"}),(0,ln.jsx)(qU,{children:(0,ln.jsx)(GU,{type:"text",...a("name",{required:"Name is required",validate:e=>{if(!m(e))return"Name must be unique across all accounts and contacts"}}),placeholder:"The name is only stored locally"})}),r.name&&(0,ln.jsx)(E7,{"data-testid":"name-error",children:r.name.message})]}),(0,ln.jsxs)(Gz,{isInvalid:!!r.sender,marginY:"24px",children:[(0,ln.jsx)(v3,{allowUnknown:!1,inputName:"sender",label:"Select Owner"}),r.sender&&(0,ln.jsx)(E7,{"data-testid":"owner-error",children:r.sender.message})]}),u.fields.map(((e,t)=>{var n;const i=r.signers&&r.signers[t],o=`${0===t?"Select ":""}${t+1} signer`,a=d>1?"short":"default",s="short"===a?"368px":"100%";return(0,ln.jsxs)(Gz,{display:"inline-block",width:s,marginBottom:"8px","data-testid":`signer-input-${t}`,isInvalid:!!i,children:[(0,ln.jsx)(v3,{allowUnknown:!0,inputName:`signers.${t}.val`,label:o,size:a,style:{width:s},validate:e=>{if(!Gu(e))return"Signer must be valid TZ address";const t=c("signers").map((e=>e.val));return t.length>new Set(t).size?"Duplicate signer":void 0}}),d>1&&(0,ln.jsx)(_3,{position:"absolute",height:"24px",marginTop:"-36px",marginLeft:"374px",background:EP.gray[500],"aria-label":"Remove","data-testid":`remove-signer-${t}`,icon:(0,ln.jsx)(wR,{width:"12px",height:"14px",stroke:EP.gray[300]}),isRound:!0,onClick:()=>u.remove(t),size:"xs",variant:"tertiary"}),i&&(0,ln.jsx)(E7,{"data-testid":`signer-${t}-error`,children:null===(n=i.val)||void 0===n?void 0:n.message})]},e.id)})),(0,ln.jsx)(Nn,{paddingLeft:0,onClick:()=>u.append({val:""}),variant:"specialCTA",children:"+ Add Signer"}),(0,ln.jsxs)(Gz,{marginTop:"24px",isInvalid:!!r.threshold,children:[(0,ln.jsxs)(UU,{display:"inline",children:["Min No. of approvals:",(0,ln.jsx)(qU,{display:"inline",marginLeft:"10px",children:(0,ln.jsx)(GU,{width:"60px",color:"white","data-testid":"threshold-input",step:1,type:"number",...a("threshold",{required:"No. of approvals is required",max:{value:d,message:`Max no. of approvals is ${d}`},min:{value:1,message:"Min no. of approvals is 1"}})})})]}),(0,ln.jsxs)(az,{display:"inline","data-testid":"max-signers",children:["out of ",d]}),r.threshold&&(0,ln.jsx)(E7,{"data-testid":"threshold-error",children:r.threshold.message})]})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(Nn,{width:"100%",isDisabled:!i,isLoading:p,size:"lg",type:"submit",children:"Review"})})]})})})},Mie=()=>{const{onOpen:e,modalElement:t}=Pie();return(0,ln.jsxs)(un,{flexDirection:"row-reverse",marginTop:"12px",marginBottom:"16px",children:[(0,ln.jsxs)(Nn,{paddingRight:"0",onClick:e,variant:"CTAWithIcon",children:[(0,ln.jsx)(fj,{stroke:"currentcolor"}),(0,ln.jsx)(az,{marginLeft:"4px",size:"sm",children:"Add Account"})]}),t]})},Lie=({groupLabel:e,accounts:t,balances:r})=>{const i=t[0],o="multisig"===i.type,a="mnemonic"===i.type,{openWith:s,onClose:c}=(0,n.useContext)(pM),l=(()=>{const e=TR();return t=>{e(wne({fingerPrint:t}))}})(),u=(()=>{const e=TR();return t=>{e(xne({accountType:t}))}})(),d=$H().length===t.length;let h,f="Remove All";const p=Nie(i);d?(h="Removing all your accounts will off-board you from Umami. This will remove or reset all customised settings to their defaults. Personal data (including saved contacts, password and accounts) won't be affected.",f="Remove & Off-board"):h=a?`Are you sure you want to remove all accounts derived from ${p}?`:`Are you sure you want to remove all of your ${p}?`;return(0,ln.jsxs)(fn,{"data-testid":`account-group-${e}`,children:[(0,ln.jsxs)(un,{justifyContent:"space-between",children:[(0,ln.jsx)(Sn,{marginBottom:4,"data-testid":"account-group-title",size:"md",children:e}),!o&&(0,ln.jsx)(ane,{onCreate:a?()=>{if(!a)throw new Error("Can't derive a non mnemonic account!");s((0,ln.jsx)(zie,{fingerprint:i.seedFingerPrint,onDone:c}))}:void 0,onRemove:()=>{s((0,ln.jsx)(Ere,{buttonLabel:f,description:h,onSubmit:()=>{a?l(i.seedFingerPrint):u(i.type),c()},title:"Remove All Accounts"}))}})]}),t.map((e=>(0,ln.jsx)(fn,{marginBottom:"16px",children:(0,ln.jsx)(kre,{account:e,balance:r[e.address.pkh]})},e.address.pkh)))]})},Nie=e=>{switch(e.type){case"mnemonic":return`Seedphrase ${e.seedFingerPrint}`;case"social":return"Social Accounts";case"ledger":return"Ledger Accounts";case"secret_key":return"Secret Key Accounts";case"multisig":return"Multisig Accounts"}},Die=()=>{const e=VH(),t=CR((e=>e.assets.balances.mutez)),r=(0,Va.groupBy)(e,Nie),{openWith:i}=(0,n.useContext)(pM),o=Object.entries(r).map((([e,r])=>(0,ln.jsx)(Lie,{accounts:r,balances:t,groupLabel:e},e)));return(0,ln.jsx)(ln.Fragment,{children:(0,ln.jsx)(fn,{height:"100%",marginRight:0,children:(0,ln.jsxs)(mne,{children:[(0,Va.compact)(o),(0,ln.jsx)(Nn,{width:"100%",height:"90px",background:EP.black,border:"1px dashed",borderColor:EP.gray[500],onClick:()=>i((0,ln.jsx)(Iie,{})),variant:"outline",children:(0,ln.jsxs)(az,{display:"block",width:"100%",margin:5,color:EP.gray[400],textAlign:"center",children:[(0,ln.jsx)(Kj,{marginRight:1,stroke:EP.gray[450]}),"Create New Multisig"]})})]})})})},zie=e=>{const{isLoading:t,handleAsyncAction:r}=S7(),n=sN(),i=(()=>{const e=FH(),t=$H(),r=KH(),n=pi();return async({fingerPrint:i,password:o,label:a})=>{const s=e[i];if(!s)throw new Error(`No seedphrase found with fingerprint: ${i}`);const c=await Ic(s,o),l=t.filter((e=>"mnemonic"===e.type&&e.seedFingerPrint===i)),u=l.length,d=l[0].derivationPathPattern,h=NH(d,u),{pk:f,pkh:p}=await z2(c,h),m=r(a,1)[0],g=DH(f,p,h,d,i,m);n(Nc.actions.addAccount(g))}})();return(0,ln.jsxs)(nz,{children:[(0,ln.jsx)(sz,{}),(0,ln.jsx)(pne,{isLoading:t,onSubmit:({name:t,password:o})=>r((async()=>{await i({fingerPrint:e.fingerprint,password:o,label:t.trim()||Oie}),e.onDone(),n({description:`New account created! Successfully derived account from ${e.fingerprint}`})}),{title:"Failed to derive new account"}),subtitle:`Name the new account derived from ${e.fingerprint}`})]})},Bie=({onClose:e})=>(0,ln.jsx)(un,{justifyContent:"flex-end",paddingBottom:"30px",cursor:"pointer",children:(0,ln.jsx)(Uie,{onClose:e})}),Uie=({onClose:e})=>(0,ln.jsxs)(Nn,{onClick:e,variant:"CTAWithIcon",children:[(0,ln.jsx)(jj,{stroke:"currentcolor"}),(0,ln.jsx)(az,{marginLeft:"4px",children:"Close"})]});function Fie(e){const t=e.target,{tagName:r,isContentEditable:n}=t;return"INPUT"!==r&&"TEXTAREA"!==r&&!0!==n}function $ie(e={}){const{ref:t,isDisabled:r,isFocusable:i,clickOnEnter:o=!0,clickOnSpace:a=!0,onMouseDown:s,onMouseUp:c,onClick:l,onKeyDown:u,onKeyUp:d,tabIndex:h,onMouseOver:f,onMouseLeave:p,...m}=e,[g,v]=(0,n.useState)(!0),[y,b]=(0,n.useState)(!1),w=function(){const e=(0,n.useRef)(new Map),t=e.current,r=(0,n.useCallback)(((t,r,n,i)=>{e.current.set(n,{type:r,el:t,options:i}),t.addEventListener(r,n,i)}),[]),i=(0,n.useCallback)(((t,r,n,i)=>{t.removeEventListener(r,n,i),e.current.delete(n)}),[]);return(0,n.useEffect)((()=>()=>{t.forEach(((e,t)=>{i(e.el,e.type,t,e.options)}))}),[i,t]),{add:r,remove:i}}(),x=g?h:h||0,S=r&&!i,k=(0,n.useCallback)((e=>{if(r)return e.stopPropagation(),void e.preventDefault();e.currentTarget.focus(),null==l||l(e)}),[r,l]),E=(0,n.useCallback)((e=>{y&&Fie(e)&&(e.preventDefault(),e.stopPropagation(),b(!1),w.remove(document,"keyup",E,!1))}),[y,w]),A=(0,n.useCallback)((e=>{if(null==u||u(e),r||e.defaultPrevented||e.metaKey)return;if(!Fie(e.nativeEvent)||g)return;const t=o&&"Enter"===e.key;if(a&&" "===e.key&&(e.preventDefault(),b(!0)),t){e.preventDefault();e.currentTarget.click()}w.add(document,"keyup",E,!1)}),[r,g,u,o,a,w,E]),P=(0,n.useCallback)((e=>{if(null==d||d(e),r||e.defaultPrevented||e.metaKey)return;if(!Fie(e.nativeEvent)||g)return;if(a&&" "===e.key){e.preventDefault(),b(!1);e.currentTarget.click()}}),[a,g,r,d]),O=(0,n.useCallback)((e=>{0===e.button&&(b(!1),w.remove(document,"mouseup",O,!1))}),[w]),T=(0,n.useCallback)((e=>{if(0!==e.button)return;if(r)return e.stopPropagation(),void e.preventDefault();g||b(!0);e.currentTarget.focus({preventScroll:!0}),w.add(document,"mouseup",O,!1),null==s||s(e)}),[r,g,s,w,O]),C=(0,n.useCallback)((e=>{0===e.button&&(g||b(!1),null==c||c(e))}),[c,g]),j=(0,n.useCallback)((e=>{r?e.preventDefault():null==f||f(e)}),[r,f]),R=(0,n.useCallback)((e=>{y&&(e.preventDefault(),b(!1)),null==p||p(e)}),[y,p]),I=Mn(t,(e=>{e&&"BUTTON"!==e.tagName&&v(!1)}));return g?{...m,ref:I,type:"button","aria-disabled":S?void 0:r,disabled:S,onClick:k,onMouseDown:s,onMouseUp:c,onKeyUp:d,onKeyDown:u,onMouseOver:f,onMouseLeave:p}:{...m,ref:I,role:"button","data-active":_(y),"aria-disabled":r?"true":void 0,tabIndex:S?void 0:x,onClick:k,onMouseDown:T,onMouseUp:C,onKeyUp:P,onKeyDown:A,onMouseOver:j,onMouseLeave:R}}var[Hie,Vie,qie,Kie]=xz();var[Wie,Gie]=kn({name:"TabsContext",errorMessage:"useTabsContext: `context` is undefined. Seems you forgot to wrap all tabs components within "});var[Zie,Yie]=kn({});function Xie(e,t){return`${e}--tab-${t}`}function Jie(e,t){return`${e}--tabpanel-${t}`}var[Qie,eoe]=kn({name:"TabsStylesContext",errorMessage:"useTabsStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),toe=g((function(e,t){const r=_n("Tabs",e),{children:i,className:o,...a}=ht(e),{htmlProps:s,descendants:c,...l}=function(e){var t;const{defaultIndex:r,onChange:i,index:o,isManual:a,isLazy:s,lazyBehavior:c="unmount",orientation:l="horizontal",direction:u="ltr",...d}=e,[h,f]=(0,n.useState)(null!=r?r:0),[p,m]=Cz({defaultValue:null!=r?r:0,value:o,onChange:i});(0,n.useEffect)((()=>{null!=o&&f(o)}),[o]);const g=qie(),v=(0,n.useId)();return{id:`tabs-${null!=(t=e.id)?t:v}`,selectedIndex:p,focusedIndex:h,setSelectedIndex:m,setFocusedIndex:f,isManual:a,isLazy:s,lazyBehavior:c,orientation:l,descendants:g,direction:u,htmlProps:d}}(a),u=(0,n.useMemo)((()=>l),[l]),{isFitted:d,...h}=s,f={position:"relative",...r.root};return(0,ln.jsx)(Hie,{value:c,children:(0,ln.jsx)(Wie,{value:u,children:(0,ln.jsx)(Qie,{value:r,children:(0,ln.jsx)(cn.div,{className:v("chakra-tabs",o),ref:t,...h,__css:f,children:i})})})})}));toe.displayName="Tabs";var roe=g((function(e,t){const r=function(e){const{focusedIndex:t,orientation:r,direction:i}=Gie(),o=Vie(),a=(0,n.useCallback)((e=>{const n=()=>{var e;const r=o.nextEnabled(t);r&&(null==(e=r.node)||e.focus())},a=()=>{var e;const r=o.prevEnabled(t);r&&(null==(e=r.node)||e.focus())},s="horizontal"===r,c="vertical"===r,l=e.key,u={["ltr"===i?"ArrowLeft":"ArrowRight"]:()=>s&&a(),["ltr"===i?"ArrowRight":"ArrowLeft"]:()=>s&&n(),ArrowDown:()=>c&&n(),ArrowUp:()=>c&&a(),Home:()=>{var e;const t=o.firstEnabled();t&&(null==(e=t.node)||e.focus())},End:()=>{var e;const t=o.lastEnabled();t&&(null==(e=t.node)||e.focus())}},d=u[l];d&&(e.preventDefault(),d(e))}),[o,t,r,i]);return{...e,role:"tablist","aria-orientation":r,onKeyDown:k(e.onKeyDown,a)}}({...e,ref:t}),i={display:"flex",...eoe().tablist};return(0,ln.jsx)(cn.div,{...r,className:v("chakra-tabs__tablist",e.className),__css:i})}));roe.displayName="TabList";var noe=g((function(e,t){const r=function(e){const t=Gie(),{id:r,selectedIndex:i}=t,o=$U(e.children).map(((e,t)=>(0,n.createElement)(Zie,{key:t,value:{isSelected:t===i,id:Jie(r,t),tabId:Xie(r,t),selectedIndex:i}},e)));return{...e,children:o}}(e),i=eoe();return(0,ln.jsx)(cn.div,{...r,width:"100%",ref:t,className:v("chakra-tabs__tab-panels",e.className),__css:i.tabpanels})}));noe.displayName="TabPanels";var ioe=g((function(e,t){const r=function(e){const{children:t,...r}=e,{isLazy:i,lazyBehavior:o}=Gie(),{isSelected:a,id:s,tabId:c}=Yie(),l=(0,n.useRef)(!1);return a&&(l.current=!0),{tabIndex:0,...r,children:Bee({wasSelected:l.current,isSelected:a,enabled:i,mode:o})?t:null,role:"tabpanel","aria-labelledby":c,hidden:!a,id:s}}({...e,ref:t}),i=eoe();return(0,ln.jsx)(cn.div,{outline:"0",...r,className:v("chakra-tabs__tab-panel",e.className),__css:i.tabpanel})}));function ooe(e){const t=Pte(e);return t.setHours(0,0,0,0),t}ioe.displayName="TabPanel";function aoe(e,t){const r=ooe(e),n=ooe(t),i=r.getTime()-Zte(r),o=n.getTime()-Zte(n);return Math.round((i-o)/Ete)}function soe(e){return e instanceof Date||"object"===typeof e&&"[object Date]"===Object.prototype.toString.call(e)}function coe(e){if(!soe(e)&&"number"!==typeof e)return!1;const t=Pte(e);return!isNaN(Number(t))}function loe(e,t){return e instanceof Date?new e.constructor(t):new Date(t)}function uoe(e){const t=Pte(e),r=loe(e,0);return r.setFullYear(t.getFullYear(),0,1),r.setHours(0,0,0,0),r}function doe(e){const t=Pte(e);return aoe(t,uoe(t))+1}function hoe(e,t){const r=Gte(),n=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,i=Pte(e),o=i.getDay(),a=(o=i.getTime()?r+1:t.getTime()>=a.getTime()?r:r-1}function moe(e){const t=poe(e),r=loe(e,0);return r.setFullYear(t,0,4),r.setHours(0,0,0,0),foe(r)}function goe(e){const t=Pte(e),r=foe(t).getTime()-moe(t).getTime();return Math.round(r/kte)+1}function voe(e,t){const r=Pte(e),n=r.getFullYear(),i=Gte(),o=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1,a=loe(e,0);a.setFullYear(n+1,0,o),a.setHours(0,0,0,0);const s=hoe(a,t),c=loe(e,0);c.setFullYear(n,0,o),c.setHours(0,0,0,0);const l=hoe(c,t);return r.getTime()>=s.getTime()?n+1:r.getTime()>=l.getTime()?n:n-1}function yoe(e,t){const r=Gte(),n=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,i=voe(e,t),o=loe(e,0);o.setFullYear(i,0,n),o.setHours(0,0,0,0);return hoe(o,t)}function boe(e,t){const r=Pte(e),n=hoe(r,t).getTime()-yoe(r,t).getTime();return Math.round(n/kte)+1}function woe(e,t){return(e<0?"-":"")+Math.abs(e).toString().padStart(t,"0")}const xoe={y(e,t){const r=e.getFullYear(),n=r>0?r:1-r;return woe("yy"===t?n%100:n,t.length)},M(e,t){const r=e.getMonth();return"M"===t?String(r+1):woe(r+1,2)},d:(e,t)=>woe(e.getDate(),t.length),a(e,t){const r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.toUpperCase();case"aaa":return r;case"aaaaa":return r[0];default:return"am"===r?"a.m.":"p.m."}},h:(e,t)=>woe(e.getHours()%12||12,t.length),H:(e,t)=>woe(e.getHours(),t.length),m:(e,t)=>woe(e.getMinutes(),t.length),s:(e,t)=>woe(e.getSeconds(),t.length),S(e,t){const r=t.length,n=e.getMilliseconds();return woe(Math.floor(n*Math.pow(10,r-3)),t.length)}},_oe="midnight",Soe="noon",koe="morning",Eoe="afternoon",Aoe="evening",Poe="night",Ooe={G:function(e,t,r){const n=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return r.era(n,{width:"abbreviated"});case"GGGGG":return r.era(n,{width:"narrow"});default:return r.era(n,{width:"wide"})}},y:function(e,t,r){if("yo"===t){const t=e.getFullYear(),n=t>0?t:1-t;return r.ordinalNumber(n,{unit:"year"})}return xoe.y(e,t)},Y:function(e,t,r,n){const i=voe(e,n),o=i>0?i:1-i;if("YY"===t){return woe(o%100,2)}return"Yo"===t?r.ordinalNumber(o,{unit:"year"}):woe(o,t.length)},R:function(e,t){return woe(poe(e),t.length)},u:function(e,t){return woe(e.getFullYear(),t.length)},Q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(n);case"QQ":return woe(n,2);case"Qo":return r.ordinalNumber(n,{unit:"quarter"});case"QQQ":return r.quarter(n,{width:"abbreviated",context:"formatting"});case"QQQQQ":return r.quarter(n,{width:"narrow",context:"formatting"});default:return r.quarter(n,{width:"wide",context:"formatting"})}},q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(n);case"qq":return woe(n,2);case"qo":return r.ordinalNumber(n,{unit:"quarter"});case"qqq":return r.quarter(n,{width:"abbreviated",context:"standalone"});case"qqqqq":return r.quarter(n,{width:"narrow",context:"standalone"});default:return r.quarter(n,{width:"wide",context:"standalone"})}},M:function(e,t,r){const n=e.getMonth();switch(t){case"M":case"MM":return xoe.M(e,t);case"Mo":return r.ordinalNumber(n+1,{unit:"month"});case"MMM":return r.month(n,{width:"abbreviated",context:"formatting"});case"MMMMM":return r.month(n,{width:"narrow",context:"formatting"});default:return r.month(n,{width:"wide",context:"formatting"})}},L:function(e,t,r){const n=e.getMonth();switch(t){case"L":return String(n+1);case"LL":return woe(n+1,2);case"Lo":return r.ordinalNumber(n+1,{unit:"month"});case"LLL":return r.month(n,{width:"abbreviated",context:"standalone"});case"LLLLL":return r.month(n,{width:"narrow",context:"standalone"});default:return r.month(n,{width:"wide",context:"standalone"})}},w:function(e,t,r,n){const i=boe(e,n);return"wo"===t?r.ordinalNumber(i,{unit:"week"}):woe(i,t.length)},I:function(e,t,r){const n=goe(e);return"Io"===t?r.ordinalNumber(n,{unit:"week"}):woe(n,t.length)},d:function(e,t,r){return"do"===t?r.ordinalNumber(e.getDate(),{unit:"date"}):xoe.d(e,t)},D:function(e,t,r){const n=doe(e);return"Do"===t?r.ordinalNumber(n,{unit:"dayOfYear"}):woe(n,t.length)},E:function(e,t,r){const n=e.getDay();switch(t){case"E":case"EE":case"EEE":return r.day(n,{width:"abbreviated",context:"formatting"});case"EEEEE":return r.day(n,{width:"narrow",context:"formatting"});case"EEEEEE":return r.day(n,{width:"short",context:"formatting"});default:return r.day(n,{width:"wide",context:"formatting"})}},e:function(e,t,r,n){const i=e.getDay(),o=(i-n.weekStartsOn+8)%7||7;switch(t){case"e":return String(o);case"ee":return woe(o,2);case"eo":return r.ordinalNumber(o,{unit:"day"});case"eee":return r.day(i,{width:"abbreviated",context:"formatting"});case"eeeee":return r.day(i,{width:"narrow",context:"formatting"});case"eeeeee":return r.day(i,{width:"short",context:"formatting"});default:return r.day(i,{width:"wide",context:"formatting"})}},c:function(e,t,r,n){const i=e.getDay(),o=(i-n.weekStartsOn+8)%7||7;switch(t){case"c":return String(o);case"cc":return woe(o,t.length);case"co":return r.ordinalNumber(o,{unit:"day"});case"ccc":return r.day(i,{width:"abbreviated",context:"standalone"});case"ccccc":return r.day(i,{width:"narrow",context:"standalone"});case"cccccc":return r.day(i,{width:"short",context:"standalone"});default:return r.day(i,{width:"wide",context:"standalone"})}},i:function(e,t,r){const n=e.getDay(),i=0===n?7:n;switch(t){case"i":return String(i);case"ii":return woe(i,t.length);case"io":return r.ordinalNumber(i,{unit:"day"});case"iii":return r.day(n,{width:"abbreviated",context:"formatting"});case"iiiii":return r.day(n,{width:"narrow",context:"formatting"});case"iiiiii":return r.day(n,{width:"short",context:"formatting"});default:return r.day(n,{width:"wide",context:"formatting"})}},a:function(e,t,r){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"});case"aaa":return r.dayPeriod(n,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return r.dayPeriod(n,{width:"narrow",context:"formatting"});default:return r.dayPeriod(n,{width:"wide",context:"formatting"})}},b:function(e,t,r){const n=e.getHours();let i;switch(i=12===n?Soe:0===n?_oe:n/12>=1?"pm":"am",t){case"b":case"bb":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"bbb":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return r.dayPeriod(i,{width:"narrow",context:"formatting"});default:return r.dayPeriod(i,{width:"wide",context:"formatting"})}},B:function(e,t,r){const n=e.getHours();let i;switch(i=n>=17?Aoe:n>=12?Eoe:n>=4?koe:Poe,t){case"B":case"BB":case"BBB":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"BBBBB":return r.dayPeriod(i,{width:"narrow",context:"formatting"});default:return r.dayPeriod(i,{width:"wide",context:"formatting"})}},h:function(e,t,r){if("ho"===t){let t=e.getHours()%12;return 0===t&&(t=12),r.ordinalNumber(t,{unit:"hour"})}return xoe.h(e,t)},H:function(e,t,r){return"Ho"===t?r.ordinalNumber(e.getHours(),{unit:"hour"}):xoe.H(e,t)},K:function(e,t,r){const n=e.getHours()%12;return"Ko"===t?r.ordinalNumber(n,{unit:"hour"}):woe(n,t.length)},k:function(e,t,r){let n=e.getHours();return 0===n&&(n=24),"ko"===t?r.ordinalNumber(n,{unit:"hour"}):woe(n,t.length)},m:function(e,t,r){return"mo"===t?r.ordinalNumber(e.getMinutes(),{unit:"minute"}):xoe.m(e,t)},s:function(e,t,r){return"so"===t?r.ordinalNumber(e.getSeconds(),{unit:"second"}):xoe.s(e,t)},S:function(e,t){return xoe.S(e,t)},X:function(e,t,r,n){const i=(n._originalDate||e).getTimezoneOffset();if(0===i)return"Z";switch(t){case"X":return Coe(i);case"XXXX":case"XX":return joe(i);default:return joe(i,":")}},x:function(e,t,r,n){const i=(n._originalDate||e).getTimezoneOffset();switch(t){case"x":return Coe(i);case"xxxx":case"xx":return joe(i);default:return joe(i,":")}},O:function(e,t,r,n){const i=(n._originalDate||e).getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+Toe(i,":");default:return"GMT"+joe(i,":")}},z:function(e,t,r,n){const i=(n._originalDate||e).getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+Toe(i,":");default:return"GMT"+joe(i,":")}},t:function(e,t,r,n){const i=n._originalDate||e;return woe(Math.floor(i.getTime()/1e3),t.length)},T:function(e,t,r,n){return woe((n._originalDate||e).getTime(),t.length)}};function Toe(e,t=""){const r=e>0?"-":"+",n=Math.abs(e),i=Math.floor(n/60),o=n%60;return 0===o?r+String(i):r+String(i)+t+woe(o,2)}function Coe(e,t){if(e%60===0){return(e>0?"-":"+")+woe(Math.abs(e)/60,2)}return joe(e,t)}function joe(e,t=""){const r=e>0?"-":"+",n=Math.abs(e);return r+woe(Math.floor(n/60),2)+t+woe(n%60,2)}const Roe=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},Ioe=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},Moe={p:Ioe,P:(e,t)=>{const r=e.match(/(P+)(p+)?/)||[],n=r[1],i=r[2];if(!i)return Roe(e,t);let o;switch(n){case"P":o=t.dateTime({width:"short"});break;case"PP":o=t.dateTime({width:"medium"});break;case"PPP":o=t.dateTime({width:"long"});break;default:o=t.dateTime({width:"full"})}return o.replace("{{date}}",Roe(n,t)).replace("{{time}}",Ioe(i,t))}},Loe=/^D+$/,Noe=/^Y+$/,Doe=["D","DD","YY","YYYY"];function zoe(e,t,r){const n=function(e,t,r){const n="Y"===e[0]?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${n} to the input \`${r}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}(e,t,r);if(console.warn(n),Doe.includes(e))throw new RangeError(n)}const Boe=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Uoe=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Foe=/^'([^]*?)'?$/,$oe=/''/g,Hoe=/[a-zA-Z]/;function Voe(e,t,r){const n=Gte(),i=r?.locale??n.locale??Kte,o=r?.firstWeekContainsDate??r?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,a=r?.weekStartsOn??r?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,s=Pte(e);if(!coe(s))throw new RangeError("Invalid time value");const c={firstWeekContainsDate:o,weekStartsOn:a,locale:i,_originalDate:s},l=t.match(Uoe).map((function(e){const t=e[0];if("p"===t||"P"===t){return(0,Moe[t])(e,i.formatLong)}return e})).join("").match(Boe).map((function(n){if("''"===n)return"'";const o=n[0];if("'"===o)return function(e){const t=e.match(Foe);if(!t)return e;return t[1].replace($oe,"'")}(n);const a=Ooe[o];if(a)return!r?.useAdditionalWeekYearTokens&&function(e){return Noe.test(e)}(n)&&zoe(n,t,String(e)),!r?.useAdditionalDayOfYearTokens&&function(e){return Loe.test(e)}(n)&&zoe(n,t,String(e)),a(s,n,i.localize,c);if(o.match(Hoe))throw new RangeError("Format string contains an unescaped latin alphabet character `"+o+"`");return n})).join("");return l}function qoe(e,t,r){const n=Pte(e),i=Pte(t),o=Gte(),a=r?.locale??o.locale??Kte,s=r?.weekStartsOn??r?.locale?.options?.weekStartsOn??o.weekStartsOn??o.locale?.options?.weekStartsOn??0,c=aoe(n,i);if(isNaN(c))throw new RangeError("Invalid time value");let l;l=c<-6?"other":c<-1?"lastWeek":c<0?"yesterday":c<1?"today":c<2?"tomorrow":c<7?"nextWeek":"other";return Voe(n,a.formatRelative(l,n,i,{locale:a,weekStartsOn:s}),{locale:a,weekStartsOn:s})}const Koe=({title:e,children:t,small:r=!1})=>{const n=r?"md":"3xl";return(0,ln.jsx)(un,{alignItems:"center",justifyContent:"center",width:"100%",height:"100%",children:(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(Sn,{padding:"42px",size:n,children:e}),(0,ln.jsx)(dn,{children:t})]})})},Woe=({small:e})=>(0,ln.jsx)(Koe,{small:e,title:"No NFTs found",children:(0,ln.jsx)(Bre,{href:"https://objkt.com",children:(0,ln.jsx)(Nn,{size:e?"md":"lg",children:"Buy your first NFT"})})}),Goe=({small:e})=>(0,ln.jsx)(Koe,{small:e,title:"No operations found"}),Zoe=({small:e,onDelegate:t})=>(0,ln.jsx)(Koe,{small:e,title:"Currently not delegating",children:(0,ln.jsx)(Nn,{onClick:t,size:e?"md":"lg",children:"Start delegating"})}),Yoe=e=>{const{mode:t,operations:r,fee:n}=e,{fee:i,operations:o,estimationFailed:a,isLoading:s,form:c,signer:l,reEstimate:u,onSign:d}=ute(n,r,t),h=o.operations[0].recipient;return(0,ln.jsx)(AB,{...c,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(F7,{...e,operationsType:o.type,signer:o.signer}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(UU,{children:"From"}),(0,ln.jsx)(d3,{address:l.address}),(0,ln.jsx)(un,{alignItems:"center",justifyContent:"end",marginTop:"12px",marginBottom:"24px",paddingX:"4px",children:(0,ln.jsx)(un,{alignItems:"center",children:(0,ln.jsx)(I7,{fee:i})})}),(0,ln.jsx)(UU,{children:"To"}),(0,ln.jsx)(d3,{address:h}),(0,ln.jsx)(ote,{isLoading:s,operationType:o.type,reEstimate:u,sender:o.sender})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(P7,{isDisabled:a,isLoading:s,onSubmit:d,signer:l,text:B7(o.type,t)})})]})})})},Xoe=e=>{var t;const r=null===(t=e.form)||void 0===t?void 0:t.baker,n=gte({SignPage:Yoe,signPageExtraData:void 0,FormPage:Xoe,defaultFormPageProps:e,toOperation:Joe}),i=vte(Joe),{onFormSubmitActionHandlers:[o,a],isLoading:s}=yte([n,i]),c=IU({mode:"onBlur",defaultValues:lte(e)}),{formState:{isValid:l,errors:u},handleSubmit:d}=c;return(0,ln.jsx)(AB,{...c,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsxs)(M7,{children:[(0,ln.jsx)(az,{fontWeight:"600",size:"2xl",children:r?"Change Baker":"Delegate"}),(0,ln.jsx)(sz,{})]}),(0,ln.jsxs)(cz,{children:[(0,ln.jsxs)(Gz,{isInvalid:!!u.sender,children:[(0,ln.jsx)(y3,{allowUnknown:!1,inputName:"sender",isDisabled:!!e.sender,label:"From"}),u.sender&&(0,ln.jsx)(E7,{"data-testid":"from-error",children:u.sender.message})]}),(0,ln.jsxs)(Gz,{marginTop:"24px","data-testid":"baker",isInvalid:!!u.baker,children:[(0,ln.jsx)(b3,{allowUnknown:!0,inputName:"baker",label:"Baker"}),u.baker&&(0,ln.jsx)(E7,{children:u.baker.message})]})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(cte,{isLoading:s,isValid:l,onAddToBatch:d(a),onSingleSubmit:d(o)})})]})})})},Joe=e=>({type:"delegation",sender:qu(e.sender),recipient:Yu(e.baker)}),Qoe=e=>{const{mode:t,operations:r,fee:n}=e,{fee:i,operations:o,estimationFailed:a,isLoading:s,form:c,signer:l,reEstimate:u,onSign:d}=ute(n,r,t);return(0,ln.jsx)(AB,{...c,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(F7,{...e,operationsType:o.type,signer:o.signer}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(UU,{children:"From"}),(0,ln.jsx)(d3,{address:l.address}),(0,ln.jsx)(un,{alignItems:"center",justifyContent:"end",marginTop:"12px",paddingX:"4px",children:(0,ln.jsx)(I7,{fee:i})}),(0,ln.jsx)(ote,{isLoading:s,operationType:o.type,reEstimate:u,sender:o.sender})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(P7,{isDisabled:a,isLoading:s,onSubmit:d,signer:l,text:B7(o.type,t)})})]})})})},eae=e=>{var t;const{sender:r}=e,n=null===(t=e.form)||void 0===t?void 0:t.baker,i=gte({SignPage:Qoe,signPageExtraData:void 0,FormPage:eae,defaultFormPageProps:{sender:r},toOperation:tae}),o=vte(tae),{onFormSubmitActionHandlers:[a,s],isLoading:c}=yte([i,o]),l=IU({mode:"onBlur",defaultValues:lte({sender:r})}),{handleSubmit:u}=l;return(0,ln.jsx)(AB,{...l,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(L7,{subTitle:"Select preview to end delegation or insert this transaction into a Batch.",title:"End delegation"}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(Gz,{children:(0,ln.jsx)(y3,{allowUnknown:!1,inputName:"sender",isDisabled:!0,label:"From"})}),(0,ln.jsx)(UU,{marginTop:"24px",children:"Baker"}),n&&(0,ln.jsx)(d3,{address:qu(n)})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(cte,{isLoading:c,isValid:!0,onAddToBatch:u(s),onSingleSubmit:u(a)})})]})})})},tae=e=>({type:"undelegation",sender:qu(e.sender)}),rae=({label:e,value:t,...r})=>(0,ln.jsxs)(un,{alignItems:"center",height:"50px",padding:"16px","data-testid":e,...r,children:[(0,ln.jsx)(fn,{flex:1,children:(0,ln.jsx)(Sn,{color:EP.gray[400],size:"sm",children:e})}),(0,ln.jsx)(fn,{flex:1,children:"string"===typeof t?(0,ln.jsx)(az,{size:"sm",children:t}):t})]}),nae=({delegation:e,account:t})=>{const{openWith:r}=(0,n.useContext)(pM),i=GH(),o=(()=>{const e=n3();return t=>{const r=e(t.sender),n=new Date;return{initialBalance:G2(t.amount),currentBalance:r&&G2(r),duration:`Since ${qoe(new Date(t.timestamp),n)}`}}})();if(!e)return(0,ln.jsx)(Zoe,{onDelegate:()=>{r((0,ln.jsx)(Xoe,{sender:t}))},small:!0});const{currentBalance:a,duration:s,initialBalance:c}=o(e),{sender:l,delegate:{address:u}}=e,d=i(l);return(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(rae,{borderBottom:`1px solid ${EP.gray[700]}`,borderTopRadius:"8px",_odd:{bg:EP.gray[800]},label:"Initial Balance:",value:c}),a&&(0,ln.jsx)(rae,{_odd:{bg:EP.gray[800]},label:"Current Balance:",value:a}),(0,ln.jsx)(rae,{borderBottom:`1px solid ${EP.gray[700]}`,_odd:{bg:EP.gray[800]},label:"Duration:",value:s}),(0,ln.jsx)(rae,{borderBottomRadius:"8px",_odd:{bg:EP.gray[800]},label:"Baker:",value:(0,ln.jsx)(pre,{address:qu(e.delegate.address)})}),(0,ln.jsxs)(un,{marginTop:"24px",children:[(0,ln.jsx)(Nn,{flex:1,marginRight:"16px",onClick:()=>r((0,ln.jsx)(eae,{form:{sender:l,baker:u},sender:d})),variant:"warning",children:"End Delegation"}),(0,ln.jsx)(Nn,{flex:1,onClick:()=>{r((0,ln.jsx)(Xoe,{form:{sender:l,baker:u},sender:d}))},variant:"tertiary",children:"Change Baker"})]})]})};function iae(e){return Jj({tag:"svg",attr:{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},child:[{tag:"line",attr:{x1:"7",y1:"17",x2:"17",y2:"7"}},{tag:"polyline",attr:{points:"7 7 17 7 17 17"}}]})(e)}const oae=({operation:e})=>{switch(e.type){case"delegation":return(0,ln.jsxs)(fn,{margin:1,paddingLeft:5,"data-testid":"decoded-item-delegate",marginY:6,children:["Delegate to ",(0,ln.jsx)(pre,{address:e.recipient})]});case"undelegation":return(0,ln.jsx)(fn,{margin:1,paddingLeft:5,"data-testid":"decoded-item-undelegate",marginY:6,children:"End Delegation"});case"tez":case"fa1.2":case"fa2":return(0,ln.jsxs)(fn,{marginY:6,children:[(0,ln.jsx)(aae,{operation:e}),(0,ln.jsxs)(un,{alignItems:"center",margin:1,paddingLeft:5,children:[(0,ln.jsx)(Sn,{marginRight:2,color:EP.gray[400],size:"sm",children:"Send to :"}),(0,ln.jsx)(pre,{address:e.recipient})]})]});case"contract_origination":case"contract_call":throw new Error(`${e.type} is not suported yet`)}},aae=({operation:e})=>{const t=V2();switch(e.type){case"tez":return(0,ln.jsxs)(un,{alignItems:"center","data-testid":"decoded-tez-amount",children:[(0,ln.jsx)(LA,{as:iae,width:5,height:5,color:EP.gray[400]}),(0,ln.jsxs)(az,{marginLeft:1,textAlign:"center",children:["-",G2(e.amount)]})]});case"fa1.2":case"fa2":{const r=t(e.contract.pkh,e.tokenId);if(!r)return null;const n=rd(r),i="nft"===r.type;return(0,ln.jsxs)(un,{alignItems:"center","data-testid":"decoded-fa-amount",children:[(0,ln.jsx)(LA,{as:iae,width:5,height:5,color:EP.gray[400]}),i?(0,ln.jsxs)(az,{marginLeft:1,textAlign:"center",children:[e.amount," ",n]}):(0,ln.jsxs)(az,{marginLeft:1,textAlign:"center",children:["-",ld(e.amount,r,{showSymbol:!0})]})]})}case"delegation":case"undelegation":case"contract_origination":case"contract_call":return null}},sae=e=>Hu.string().regex(new RegExp(`^${e}$`,"i")),cae=e=>Hu.object({prim:sae(e)}),lae=Hu.object({prim:Hu.literal("PUSH"),args:Hu.tuple([Hu.object({prim:Hu.literal("key_hash")}),Hu.object({bytes:Hu.string()})])}),uae=Hu.object({prim:Hu.literal("PUSH"),args:Hu.tuple([Hu.object({prim:Hu.literal("address")}),Hu.object({bytes:Hu.string()})])}),dae=(e,t)=>Hu.object({prim:Hu.literal("Pair"),args:Hu.tuple([e,t])}),hae=Hu.object({prim:Hu.literal("PUSH"),args:Hu.tuple([Hu.object({prim:Hu.literal("mutez")}),Hu.object({int:Hu.literal("0")})])}),fae=[cae("TRANSFER_TOKENS"),cae("CONS")],pae=Hu.object({prim:Hu.literal("CONTRACT")}),mae=Hu.tuple([Hu.object({prim:Hu.literal("DROP")}),Hu.object({prim:Hu.literal("NIL"),args:Hu.array(Hu.object({prim:Hu.literal("operation")}))})]),gae=Hu.object({prim:Hu.literal("PUSH"),args:Hu.tuple([Hu.object({prim:Hu.literal("mutez")}),Hu.object({int:Hu.string()})])}),vae=Hu.tuple([lae,cae("IMPLICIT_ACCOUNT"),gae,cae("UNIT"),...fae]),yae=Hu.tuple([uae,pae,cae("IF_NONE"),gae,cae("UNIT"),...fae]),bae=Hu.tuple([lae,cae("SOME"),cae("SET_DELEGATE"),cae("CONS")]),wae=Hu.tuple([Hu.object({prim:Hu.literal("NONE"),args:Hu.tuple([Hu.object({prim:Hu.literal("key_hash")})])}),cae("SET_DELEGATE"),cae("CONS")]),xae=Hu.tuple([uae,pae,Hu.tuple([cae("IF_NONE")]),hae,Hu.object({prim:Hu.literal("PUSH"),args:Hu.tuple([cae("list"),Hu.array(dae(Hu.object({bytes:Hu.string({description:"from"})}),Hu.array(dae(Hu.object({bytes:Hu.string({description:"to"})}),dae(Hu.object({int:Hu.string({description:"token_id"})}),Hu.object({int:Hu.string({description:"amount"})}))))))])}),...fae]),_ae=Hu.tuple([uae,pae,Hu.tuple([cae("IF_NONE")]),hae,Hu.object({prim:Hu.literal("PUSH"),args:Hu.tuple([cae("Pair"),dae(Hu.object({bytes:Hu.string({description:"from"})}),dae(Hu.object({bytes:Hu.string({description:"to"})}),Hu.object({int:Hu.string({description:"amount"})})))])}),...fae]);class Sae extends Error{}const kae=e=>(42===e.length&&(e="00"+e),bc(e)),Eae=[{schema:vae,parsingFn:e=>{const t=vae.parse(e),r=t[0].args[1].bytes,n=t[2].args[1].int;return{type:"tez",recipient:Yu(kae(r)),amount:n}}},{schema:yae,parsingFn:e=>{const t=yae.parse(e),r=t[0].args[1].bytes,n=t[3].args[1].int;return{type:"tez",recipient:Zu(kae(r)),amount:n}}},{schema:xae,parsingFn:e=>{const t=xae.parse(e),r=Zu(kae(t[0].args[1].bytes));return t[4].args[1].flatMap((e=>{const t=e.args[0].bytes;return e.args[1].map((e=>{const n=e.args[0].bytes,i=e.args[1].args[0].int,o=e.args[1].args[1].int;return{type:"fa2",contract:r,sender:qu(kae(t)),recipient:qu(kae(n)),tokenId:i,amount:o}}))}))}},{schema:_ae,parsingFn:e=>{const t=_ae.parse(e),r=t[0],n=t[4].args[1],i=n.args[0].bytes,o=n.args[1].args[0].bytes;return{type:"fa1.2",amount:n.args[1].args[1].int,contract:Zu(kae(r.args[1].bytes)),recipient:qu(kae(o)),sender:qu(kae(i)),tokenId:"0"}}},{schema:bae,parsingFn:(e,t)=>{const r=bae.parse(e);return{type:"delegation",sender:t.address,recipient:Yu(kae(r[0].args[1].bytes))}}},{schema:wae,parsingFn:(e,t)=>({type:"undelegation",sender:t.address})}],Aae=(e,t,r=[])=>{if(0===e.length)return r;for(let n=0;n((e=>{mae.parse(e.slice(0,2))})(e),Aae(e.slice(2),t)),Oae=(e,t)=>{const r=JSON.parse(e);return Pae(r,t)},Tae=({rawActions:e,sender:t})=>{try{const r=Oae(e,t);return(0,ln.jsx)(fn,{children:r.map(((e,t)=>(0,ln.jsx)(oae,{operation:e},t)))})}catch(Ele){return Ele instanceof Sae?(0,ln.jsx)(Cae,{unrecoginizedRawActions:e}):(0,ln.jsxs)(fn,{children:["Invalid michelson code: ",Ele.message]})}},Cae=({unrecoginizedRawActions:e})=>(0,ln.jsx)(Lz,{width:"70%",marginBottom:2,allowMultiple:!0,children:(0,ln.jsxs)(Nz,{marginBottom:"2",background:"umami.gray.800",border:"none",borderRadius:"8px",children:[(0,ln.jsx)("h2",{children:(0,ln.jsxs)(Dz,{children:[(0,ln.jsx)(fn,{as:"span",flex:"1",paddingLeft:1,textAlign:"left",children:"Unrecognized operation"}),(0,ln.jsx)(zz,{})]})}),(0,ln.jsx)(Hz,{overflowY:"scroll",height:"400px",paddingBottom:3,children:(0,ln.jsx)(BU,{space:1,value:JSON.parse(e)})})]})});function jae(e){return Jj({tag:"svg",attr:{viewBox:"0 0 24 24",fill:"none"},child:[{tag:"path",attr:{d:"M13 6H11V7C11 7.55228 11.4477 8 12 8C12.5523 8 13 7.55228 13 7V6Z",fill:"currentColor"}},{tag:"path",attr:{fillRule:"evenodd",clipRule:"evenodd",d:"M6 2V4H7V7C7 9.76142 9.23858 12 12 12C9.23858 12 7 14.2386 7 17V20H6V22H18V20H17V17C17 14.2386 14.7614 12 12 12C14.7614 12 17 9.76142 17 7V4H18V2H6ZM9 4H15V7C15 8.65685 13.6569 10 12 10C10.3431 10 9 8.65685 9 7V4ZM9 17V20H15V17C15 15.3431 13.6569 14 12 14C10.3431 14 9 15.3431 9 17Z",fill:"currentColor"}}]})(e)}const Rae=({icon:e,onClick:t=(()=>{}),label:r,iconWidth:n=4,iconHeight:i=4,textMargin:o="4px",iconColor:a,textFirst:s,...c})=>{const l=(0,ln.jsx)(LA,{as:e,width:n,height:i,color:a}),u=s?{mr:o}:{ml:o},d=(0,ln.jsx)(az,{...u,fontSize:"sm",children:r});return(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",color:"text.dark",_hover:{color:EP.gray[300]},cursor:"pointer",onClick:t,role:"button",...c,children:[s?d:null,l,s?null:d]})},Iae=({onClickApproveExecute:e,isLoading:t=!1,signerState:r})=>{switch(r){case"awaitingApprovalByExternalSigner":return(0,ln.jsx)(Rae,{"data-testid":"multisig-signer-awaiting-approval",icon:jae,iconColor:EP.orange,iconHeight:5,iconWidth:5,label:"Awaiting Approval"});case"approved":return(0,ln.jsx)(Rae,{"data-testid":"multisig-signer-approved",icon:See,iconColor:EP.greenL,iconHeight:5,iconWidth:5,label:"Approved"});case"executable":return(0,ln.jsx)(Nn,{"data-testid":"multisig-signer-button",isLoading:t,onClick:e,children:"Execute"});case"approvable":return(0,ln.jsx)(Nn,{"data-testid":"multisig-signer-button",isLoading:t,onClick:e,children:"Approve"})}},Mae=({signer:e,fee:t,operation:r,actionType:i,transactionCount:o})=>{const{handleAsyncAction:a}=S7(),{openWith:s}=(0,n.useContext)(pM),c=`${(0,Va.capitalize)(i)} transaction`;return(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(Are,{fee:t,signer:e,title:c,transactionCount:o}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(P7,{onSubmit:e=>a((async()=>{const{opHash:t}=await D2(r,e);s((0,ln.jsx)(C7,{hash:t}))}),{title:`Failed ${i}`}),signer:e,text:c})})]})})},Lae=({pendingApprovals:e,sender:t,operation:r,signerAddress:i})=>{const o=o3(i),a=HH(),{isLoading:s,handleAsyncAction:c}=S7(),{openWith:l}=(0,n.useContext)(pM),u=F2(),d=a(i.pkh),h=0===e,f=Nae({approvals:r.approvals,signerAddress:i,operationIsExecutable:h,signerAccount:d});return(0,ln.jsx)(xre,{icon:(0,ln.jsx)(bre,{addressKind:o}),leftElement:(0,ln.jsx)(_re,{label:o.label,pkh:o.pkh}),rightElement:(0,ln.jsx)(Iae,{isLoading:s,onClickApproveExecute:()=>c((async()=>{if(!d)throw new Error("Can't approve or execute with an account you don't own");const e=h?"execute":"approve",n=ate(d,d,[Z1(t.address,e,r.id)]),i=await c2(n,u),o=Oae(r.rawActions,t).length;l((0,ln.jsx)(Mae,{actionType:e,fee:i,operation:n,signer:d,transactionCount:o}))})),signerState:f})})},Nae=({signerAccount:e,operationIsExecutable:t,approvals:r,signerAddress:n})=>{const i=!!r.find((e=>e.pkh===n.pkh));return e?i&&!t?"approved":t?"executable":"approvable":i?"approved":"awaitingApprovalByExternalSigner"},Dae=({operation:e,sender:t})=>{const{signers:r,threshold:n}=t,i=Math.max(n-e.approvals.length,0);return(0,ln.jsx)(fn,{padding:3,paddingBottom:0,background:EP.gray[800],borderRadius:6,"data-testid":"multisig-pending-operation-"+e.id,marginY:3,children:(0,ln.jsxs)(Nz,{border:"none",borderRadius:"8px",children:[(0,ln.jsx)("h2",{children:(0,ln.jsxs)(Dz,{flex:"1",marginBottom:0,paddingBottom:0,textAlign:"left",children:[(0,ln.jsxs)(Sn,{width:"100%",size:"sm",children:["Pending #",e.id]}),(0,ln.jsx)(zz,{})]})}),(0,ln.jsxs)(Hz,{children:[(0,ln.jsxs)(un,{alignItems:"end",justifyContent:"space-between",marginY:2,children:[(0,ln.jsx)(Tae,{rawActions:e.rawActions,sender:t}),(0,ln.jsxs)(un,{alignItems:"center",marginBottom:"6",children:[(0,ln.jsx)(Sn,{marginRight:1,color:EP.gray[400],size:"sm",children:"Pending Approvals:"}),(0,ln.jsx)(az,{color:"w","data-testid":"pending-approvals-count",children:i})]})]}),(0,ln.jsx)(fn,{marginY:5,children:r.map((r=>(0,ln.jsx)(Lae,{operation:e,pendingApprovals:i,sender:t,signerAddress:r},r.pkh)))})]})]})})},zae=({account:e})=>{const t=(()=>{const e=CR((e=>e.multisigs.pendingOperations));return t=>{var r;return[...null!==(r=e[t.pendingOperationsBigmapId])&&void 0!==r?r:[]].sort(((e,t)=>Number(t.id)-Number(e.id)))}})(),r=t(e);return 0===r.length?(0,ln.jsx)(Koe,{small:!0,title:"No multisig pending operations"}):(0,ln.jsx)(fn,{width:"100%",children:(0,ln.jsx)(Lz,{allowMultiple:!0,defaultIndex:(0,Va.range)(r.length),children:r.map((t=>(0,ln.jsx)(Dae,{operation:t,sender:e},t.id)))})})},Bae=({to:e})=>(0,ln.jsx)(dn,{children:(0,ln.jsxs)(zn,{as:vT,color:EP.gray[300],stroke:EP.gray[450],_hover:{color:EP.green,stroke:EP.green},to:e,children:[(0,ln.jsx)(uR,{display:"inline",stroke:"inherit"}),(0,ln.jsx)(az,{display:"inline",size:"sm",children:"\xa0View All"})]})}),Uae=({owner:e,nfts:t,...r})=>{if(0===t.length)return(0,ln.jsx)(Woe,{small:!0});const n=vre(t).slice(0,18);return(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(Sie,{marginBottom:"35px",spacing:"12px",...r,children:n.map((t=>{const r=gre(dd(t)),n={width:"100%",height:40,fallbackSrc:gre(t.displayUri),src:r};return(0,ln.jsx)(vT,{"data-testid":"nft-link",to:`/home/${e}/${td(t)}`,children:(0,ln.jsx)(DU,{background:EP.gray[800],children:(0,ln.jsxs)(zU,{overflow:"hidden",padding:"8px",borderRadius:"6px",children:[(0,ln.jsx)(dn,{children:(0,ln.jsxs)(fn,{position:"relative",width:"100%",height:"100%",children:[(0,ln.jsx)(uz,{zIndex:2,width:"100%",opacity:"0",ratio:1,children:(0,ln.jsx)(yR,{...n,width:"100%",height:40})}),(0,ln.jsx)(uz,{position:"absolute",zIndex:0,top:"0",width:"100%",filter:"blur(20px)",ratio:1,children:(0,ln.jsx)(yR,{...n,width:"100%",height:40})}),(0,ln.jsx)(uz,{position:"absolute",zIndex:1,top:"0",width:"100%",ratio:1,children:(0,ln.jsx)(yR,{...n,width:"100%",height:40})})]})}),Number(t.balance)>1&&(0,ln.jsx)(az,{position:"absolute",display:"inline",height:"20px",marginTop:"-24px",marginLeft:"4px",padding:"0 8px",borderRadius:"100px",backgroundColor:"rgba(33, 33, 33, 0.75)","data-testid":"nft-owned-count",size:"xs",children:"x"+t.balance})]})})},`${e}:${td(t)}`)}))}),t.length>18&&(0,ln.jsx)(Bae,{to:`/nfts?accounts=${e}`})]})},Fae=n.createContext({mode:"page"}),$ae=["bakerFee","storageFee","allocationFee"],Hae=({operation:e})=>{const t=(0,n.useContext)(Fae),r=ZH(e.sender.address);if("drawer"===t.mode)return null;if(!r)return null;const i=$ae.reduce(((t,r)=>r in e?t.plus((0,Va.get)(e,r)||0):t),Bs(0));return i.eq(0)?null:(0,ln.jsxs)(dn,{children:[(0,ln.jsx)(Sn,{marginRight:"4px",color:EP.gray[450],size:"md",children:"Fee:"}),(0,ln.jsx)(az,{color:EP.gray[400],"data-testid":"fee",children:G2(i)})]})},Vae=({level:e,status:t})=>{const r=Y2(e);return void 0===t||"applied"===t?r?(0,ln.jsx)(yj,{"data-testid":"checkmark"}):(0,ln.jsx)(Vj,{"data-testid":"hourglass"}):(0,ln.jsx)(kj,{"data-testid":"crossed-circle"})},qae=({children:e})=>"drawer"===(0,n.useContext)(Fae).mode?null:(0,ln.jsx)(az,{marginRight:"4px",color:EP.gray[300],"data-testid":"operation-type",size:"sm",children:e});function Kae(e,t){const r=Pte(e),n=Pte(t),i=Wae(r,n),o=Math.abs(aoe(r,n));r.setDate(r.getDate()-i*o);const a=i*(o-Number(Wae(r,n)===-i));return 0===a?0:a}function Wae(e,t){const r=e.getFullYear()-t.getFullYear()||e.getMonth()-t.getMonth()||e.getDate()-t.getDate()||e.getHours()-t.getHours()||e.getMinutes()-t.getMinutes()||e.getSeconds()-t.getSeconds()||e.getMilliseconds()-t.getMilliseconds();return r<0?-1:r>0?1:r}const Gae=({timestamp:e})=>e?(0,ln.jsx)(az,{color:EP.gray[400],"data-testid":"timestamp",size:"sm",children:Zae(e)}):null,Zae=e=>{const t=new Date,r=new Date(e);return Kae(t,r)<2?Yte(r,t,{addSuffix:!0}):Voe(r,"dd MMM yyyy")},Yae=({hash:e,counter:t,transactionId:r,originationId:n,migrationId:i,children:o,...a})=>{const{tzktExplorerUrl:s}=F2();let c=s;return e?c=(0,Va.compact)([s,e,t]).join("/"):i?c=`${c}/migrations/${i}`:n?c=`${c}/originations/${n}`:r?c=`${c}/transactions/${r}`:console.warn("No id provided to TzktLink"),(0,ln.jsx)(zn,{"data-testid":"tzkt-link",href:c,isExternal:!0,...a,children:o})},Xae=e=>{const t=(0,n.useContext)(Fae);return!!e&&("page"===t.mode||t.selectedAddress.pkh!==e)},Jae=({operation:e})=>{var t;const r=Xae(e.target.address),n=Xae(e.sender.address),i=!r&&!n;return(0,ln.jsxs)(un,{flexDirection:"column",width:"100%","data-testid":"operation-tile-contract-call",children:[(0,ln.jsxs)(un,{justifyContent:"space-between",marginBottom:"10px",children:[(0,ln.jsxs)(dn,{children:[(0,ln.jsx)(Sj,{marginRight:"8px"}),(0,ln.jsx)(Yae,{marginRight:"8px",counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,ln.jsxs)(Sn,{size:"md",children:["Contract Call: ",null===(t=e.parameter)||void 0===t?void 0:t.entrypoint]})}),(0,ln.jsx)(Hae,{operation:e})]}),(0,ln.jsx)(un,{alignSelf:"flex-end",children:(0,ln.jsx)(Gae,{timestamp:e.timestamp})})]}),(0,ln.jsx)(fn,{children:(0,ln.jsxs)(un,{justifyContent:"space-between",children:[(0,ln.jsxs)(un,{children:[r&&(0,ln.jsxs)(un,{marginRight:"15px","data-testid":"to",children:[(0,ln.jsx)(az,{marginRight:"6px",color:EP.gray[450],children:"To:"}),(0,ln.jsx)(pre,{address:e.target})]}),(n||i)&&(0,ln.jsxs)(un,{"data-testid":"from",children:[(0,ln.jsx)(az,{marginRight:"6px",color:EP.gray[450],children:"From:"}),(0,ln.jsx)(pre,{address:e.sender})]})]}),(0,ln.jsxs)(dn,{children:[(0,ln.jsx)(qae,{children:"Contract Call"}),(0,ln.jsx)(Vae,{...e})]})]})})]})},Qae=({operation:e})=>{const t=!!e.newDelegate,r=t?"Delegate":"Delegation Ended",n=Xae(e.sender.address);return(0,ln.jsxs)(un,{flexDirection:"column",width:"100%","data-testid":"operation-tile-delegation",children:[(0,ln.jsxs)(un,{justifyContent:"space-between",marginBottom:"10px",children:[(0,ln.jsxs)(dn,{children:[(0,ln.jsx)(gj,{marginRight:"8px"}),(0,ln.jsx)(Yae,{marginRight:"8px",counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,ln.jsx)(Sn,{size:"md",children:r})}),(0,ln.jsx)(Hae,{operation:e})]}),(0,ln.jsx)(un,{alignSelf:"flex-end",children:(0,ln.jsx)(Gae,{timestamp:e.timestamp})})]}),(0,ln.jsx)(fn,{children:(0,ln.jsxs)(un,{justifyContent:"space-between",children:[(0,ln.jsxs)(un,{children:[t&&(0,ln.jsxs)(un,{marginRight:"15px","data-testid":"to",children:[(0,ln.jsx)(az,{marginRight:"6px",color:EP.gray[450],children:"To:"}),(0,ln.jsx)(pre,{address:e.newDelegate})]}),n&&(0,ln.jsxs)(un,{"data-testid":"from",children:[(0,ln.jsx)(az,{marginRight:"6px",color:EP.gray[450],children:"From:"}),(0,ln.jsx)(pre,{address:e.sender})]}),!t&&!n&&(0,ln.jsx)(az,{color:EP.gray[450],children:"N/A"})]}),(0,ln.jsxs)(dn,{children:[(0,ln.jsx)(qae,{children:r}),(0,ln.jsx)(Vae,{...e})]})]})})]})},ese=({operation:e})=>{var t;const r=(null===(t=e.originatedContract)||void 0===t?void 0:t.codeHash)===nee&&e.originatedContract.typeHash===ree?"Multisig Account Created":"Contract Origination",n=Xae(e.sender.address);return(0,ln.jsxs)(un,{flexDirection:"column",width:"100%","data-testid":"operation-tile-origination",children:[(0,ln.jsxs)(un,{justifyContent:"space-between",marginBottom:"10px",children:[(0,ln.jsxs)(dn,{children:[(0,ln.jsx)(Sj,{marginRight:"8px"}),(0,ln.jsx)(Yae,{marginRight:"8px",counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,ln.jsx)(Sn,{size:"md",children:r})}),(0,ln.jsx)(Hae,{operation:e})]}),(0,ln.jsx)(un,{alignSelf:"flex-end",children:(0,ln.jsx)(Gae,{timestamp:e.timestamp})})]}),(0,ln.jsx)(fn,{children:(0,ln.jsxs)(un,{justifyContent:"space-between",children:[(0,ln.jsx)(un,{"data-testid":"from",children:n?(0,ln.jsxs)(un,{marginRight:"15px",children:[(0,ln.jsx)(az,{marginRight:"6px",color:EP.gray[450],children:"From:"}),(0,ln.jsx)(pre,{address:e.sender})]}):(0,ln.jsx)(az,{color:EP.gray[450],children:"N/A"})}),(0,ln.jsxs)(dn,{children:[(0,ln.jsx)(qae,{children:"Contract Origination"}),(0,ln.jsx)(Vae,{...e})]})]})})]})},tse=({isOutgoing:e,...t})=>e?(0,ln.jsx)(sR,{"data-testid":"outgoing-arrow",...t}):(0,ln.jsx)(qj,{"data-testid":"incoming-arrow",...t}),rse=({operation:e,tokenTransfer:t,token:r})=>{var n,i;const o=t.amount,a=Xae(t.to.address),s=Xae((null===(n=t.from)||void 0===n?void 0:n.address)||""),c=!a&&!s,l=ZH((null===(i=t.from)||void 0===i?void 0:i.address)||""),u="nft"===r.type,d=ld(o,r,{showSymbol:!0}),h=l?EP.orange:EP.green,f=u?"white":h,p=l?"-":"+",m=u?(0,ln.jsx)(Q$,{padding:"8px",background:EP.gray[700],border:"1px solid",borderColor:EP.gray[500],borderRadius:"8px","data-testid":"nft-tooltip",label:(0,ln.jsx)(uz,{width:"170px",height:"170px",ratio:1,children:(0,ln.jsx)(yR,{src:gre(dd(r))})}),children:(0,ln.jsx)(un,{children:(0,ln.jsxs)(Yae,{marginRight:"8px",color:f,"data-testid":"title",migrationId:t.migrationId,originationId:t.originationId,transactionId:t.transactionId,children:[(0,ln.jsxs)(az,{display:"inline",color:h,fontWeight:"600",children:[p,d]}),(0,ln.jsxs)(az,{display:"inline",fontWeight:"600",children:[" ",rd(r)]})]})})}):(0,ln.jsx)(Yae,{marginRight:"8px",color:f,"data-testid":"title",migrationId:t.migrationId,originationId:t.originationId,transactionId:t.transactionId,children:(0,ln.jsxs)(az,{display:"inline",color:h,fontWeight:"600",children:[p,d]})});return(0,ln.jsxs)(un,{flexDirection:"column",width:"100%","data-testid":"operation-tile-token-transfer",children:[(0,ln.jsxs)(un,{justifyContent:"space-between",marginBottom:"10px",children:[(0,ln.jsxs)(dn,{children:[(0,ln.jsx)(tse,{marginRight:"8px",isOutgoing:l}),m,e&&(0,ln.jsx)(Hae,{operation:e})]}),(0,ln.jsx)(un,{alignSelf:"flex-end",children:(0,ln.jsx)(Gae,{timestamp:t.timestamp})})]}),(0,ln.jsx)(fn,{children:(0,ln.jsxs)(un,{justifyContent:"space-between",children:[(0,ln.jsxs)(un,{children:[(a||c)&&(0,ln.jsxs)(un,{marginRight:"15px","data-testid":"to",children:[(0,ln.jsx)(az,{marginRight:"6px",color:EP.gray[450],children:"To:"}),(0,ln.jsx)(pre,{address:t.to})]}),s&&(0,ln.jsxs)(un,{"data-testid":"from",children:[(0,ln.jsx)(az,{marginRight:"6px",color:EP.gray[450],children:"From:"}),(0,ln.jsx)(pre,{address:t.from})]})]}),(0,ln.jsxs)(dn,{children:[(0,ln.jsx)(qae,{children:"Token Transfer"}),(0,ln.jsx)(Vae,{level:t.level})]})]})})]})},nse=({operation:e})=>{const t=ZH(e.sender.address),r=G2(String(e.amount)),n=Xae(e.target.address),i=Xae(e.sender.address),o=!n&&!i,a=t?EP.orange:EP.green,s=t?"-":"+";return(0,ln.jsxs)(un,{flexDirection:"column",width:"100%","data-testid":"operation-tile-transaction",children:[(0,ln.jsxs)(un,{justifyContent:"space-between",marginBottom:"10px",children:[(0,ln.jsxs)(dn,{children:[(0,ln.jsx)(tse,{marginRight:"8px",isOutgoing:t}),(0,ln.jsx)(Yae,{marginRight:"8px",color:a,counter:e.counter,"data-testid":"title",hash:e.hash,children:(0,ln.jsxs)(az,{color:a,fontWeight:"600",children:[s," ",r]})}),(0,ln.jsx)(Hae,{operation:e})]}),(0,ln.jsx)(un,{alignSelf:"flex-end",children:(0,ln.jsx)(Gae,{timestamp:e.timestamp})})]}),(0,ln.jsx)(fn,{children:(0,ln.jsxs)(un,{justifyContent:"space-between",children:[(0,ln.jsxs)(un,{children:[(n||o)&&(0,ln.jsxs)(un,{marginRight:"15px","data-testid":"to",children:[(0,ln.jsx)(az,{marginRight:"6px",color:EP.gray[450],children:"To:"}),(0,ln.jsx)(pre,{address:qu(e.target.address)})]}),i&&(0,ln.jsxs)(un,{"data-testid":"from",children:[(0,ln.jsx)(az,{marginRight:"6px",color:EP.gray[450],children:"From:"}),(0,ln.jsx)(pre,{address:qu(e.sender.address)})]})]}),(0,ln.jsxs)(dn,{children:[(0,ln.jsx)(qae,{children:"Transaction"}),(0,ln.jsx)(Vae,{...e})]})]})})]})},ise=({operation:e})=>{const t=(()=>{const e=CR((e=>e.assets.transfers.tokens));return t=>e[t]})();switch(e.type){case"token_transfer":{const t=ed(e.token);return t?(0,ln.jsx)(rse,{token:t,tokenTransfer:e}):(console.warn(`Could not parse token transfer ${e.id}`),null)}case"transaction":{const r=!!e.parameter,n=t(e.id);if(n){const t=ed(n.token);return t?(0,ln.jsx)(rse,{operation:e,token:t,tokenTransfer:n}):(0,ln.jsx)(nse,{operation:e})}return r?(0,ln.jsx)(Jae,{operation:e}):(0,ln.jsx)(nse,{operation:e})}case"delegation":return(0,ln.jsx)(Qae,{operation:e});case"origination":return(0,ln.jsx)(ese,{operation:e})}},ose=({owner:e,operations:t})=>{if(0===t.length)return(0,ln.jsx)(Goe,{small:!0});const r=t.slice(0,20);return(0,ln.jsxs)(ln.Fragment,{children:[r.map(((e,t)=>(0,ln.jsxs)(fn,{height:"90px",children:[(0,ln.jsx)(ise,{operation:e}),t20&&(0,ln.jsx)(Bae,{to:`/operations?accounts=${e}`})]})},ase=["KT1XnTn74bUtxHfDtBmm2bGZAQfhPbvKWR8o","KT1PWx2mnDueood7fEmfbBDKx1D9BAnnXitn","KT1XRPEPXbZK25r3Htzp2o1x7xdMMmfocKNW","KT1XRPEPXbZK25r3Htzp2o1x7xdMMmfocKNW","KT1XRPEPXbZK25r3Htzp2o1x7xdMMmfocKNW","KT1K9gCRgaLRFKTErYt1wVxA3Frb9FjasjTV","KT1Ha4yFVeyzw6KRAdkzq6TxDHB97KG4pZe8","KT1JBNFcB5tiycHNdYGYCtR3kk6JaJysUCi8","KT1Xobej4mc6XgEjDoJoHtTKgbD1ELMvcQuL","KT1JVjgXPMMSaa6FkzeJcgb8q9cUaLmwaJUX","KT193D4vozYnhGJQVtw7CoxxqphqUEEwK6Vb","KT1LN4LPSqTMS7Sd2CJw4bbDGRkMv2t68Fy9","KT1914CUZ7EegAFPbfgQMRkw8Uz5mYkEz2ui","KT1UsSfaXyqcjSVPeiD7U1bWgKy3taYN7NWY","KT19ovJhcsUn4YU8Q5L3BGovKSixfbWcecEA","KT1TgmD7kXQzofpuc9VbTRMdZCS2e6JDuTtc","KT1F1mn2jbqQCJcsNgYKVAQjvenecNMY2oPK","KT1ErKVqEhG9jxXgUG2KGLW3bNM7zXHX8SDF","KT1A5P4ejnLix13jtadsfV9GCnXLMNnab8UT","KT1AM3PV1cwmGRw28DVTgsjjsjHvmL6z4rGh","KT1UsSfaXyqcjSVPeiD7U1bWgKy3taYN7NWY","KT1SjXiUX63QvdNMcM2m492f7kuf8JxXRLp4","KT1MZg99PxMDEENwB4Fi64xkqAVh5d1rv8Z9","KT1UsSfaXyqcjSVPeiD7U1bWgKy3taYN7NWY","KT1XTxpQvo7oRCqp85LikEZgAZ22uDxhbWJv","KT1VaEsVNiBoA56eToEK6n6BcPgh1tdx9eXi"],sse=({token:e,...t})=>{const r=ase.includes(e.contract);return(0,ln.jsxs)(un,{alignItems:"center",children:[(0,ln.jsx)(az,{...t,marginRight:"4px",children:rd(e)}),r&&(0,ln.jsx)(SR,{})]})},cse=({owner:e,tokens:t})=>{if(0===t.length)return(0,ln.jsx)(Koe,{small:!0,title:"No tokens found"});const r=t.slice(0,20);return(0,ln.jsxs)(fn,{children:[r.map((e=>(0,ln.jsx)(lse,{token:e},td(e)))),t.length>20&&(0,ln.jsx)(Bae,{to:`/tokens?accounts=${e}`})]})},lse=({token:e})=>{const t=ld(e.balance,e,{showSymbol:!1});return(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-around",height:20,borderBottom:`1px solid ${EP.gray[800]}`,"data-testid":"token-tile",children:[(0,ln.jsxs)(un,{alignItems:"center",flex:1,children:[(0,ln.jsx)(bR,{width:"38px",background:EP.gray[500],borderRadius:"4px",contract:e.contract}),(0,ln.jsx)(fn,{marginLeft:"16px",children:(0,ln.jsx)(sse,{fontWeight:600,"data-testid":"token-name",token:e})})]}),(0,ln.jsx)(Sn,{"data-testid":"token-balance",size:"lg",children:t})]})},use=(e,t)=>`${e.tzktExplorerUrl}/${t}`,dse=e=>{const t=F2(),[r,i]=(0,n.useState)([]),[o,a]=(0,n.useState)(!0),[s,c]=(0,n.useState)(!0),{isLoading:l,handleAsyncAction:u}=S7(),[d,h]=(0,n.useState)(e),f=TR(),[p,m]=(0,n.useState)(0);(0,n.useEffect)((()=>{const e=setInterval((()=>{u((async()=>{var e;const n=null===(e=r[0])||void 0===e?void 0:e.id,o=await hse(f,t,d,{lastId:n,sort:"asc"});i((e=>(0,Va.uniqBy)([...o.reverse(),...e],(e=>e.id))))}))}),15e3);return()=>clearInterval(e)}),[p]);const g=d.join(",");(0,n.useEffect)((()=>{i([]),a(!0),u((async()=>{const e=await hse(f,t,g.split(","));i(e),a(e.length>0),m((e=>e+1))})).finally((()=>{c(!1)}))}),[t,g,f]);return{operations:fse(r),isFirstLoad:s,isLoading:l,hasMore:o,loadMore:async()=>{var e;const n=null===(e=r[r.length-1])||void 0===e?void 0:e.id;if(n)return u((async()=>{const e=await hse(f,t,d,{lastId:n});a(e.length>0),i((t=>[...t,...e]))}))},setAddresses:h}},hse=async(e,t,r,n)=>{const i=await(async(e,t,r)=>{var n;const i=(null===r||void 0===r?void 0:r.limit)||100,o=null!==(n=null===r||void 0===r?void 0:r.sort)&&void 0!==n?n:"desc",a={limit:i,offset:null!==r&&void 0!==r&&r.lastId?{cr:r.lastId}:void 0,sort:{[o]:"id"}},s=await Promise.all([R2(e,t,a),j2(e,t,a),I2(e,t,a),M2(e,t,a)]);return(0,Va.sortBy)(s.flat(),(e=>"asc"===o?e.id:-e.id)).slice(0,i)})(r,t,n),o=i.filter((e=>"transaction"===e.type)).map((e=>e.id)),a=await(async(e,t)=>0===e.length?[]:O2((()=>k2({transactionId:{in:[e.join(",")]}},{baseUrl:t.tzktApiUrl}))))(o,t),s=[...a,...i.filter((e=>"token_transfer"===e.type))];return e(Ed.updateTokenTransfers(s)),e(Gd.addTokens({network:t,tokens:s.map((e=>e.token))})),i},fse=e=>{const t=[];for(let r=0;r{i(l)}))}),id:Xie(a,l),role:"tab",tabIndex:d?0:-1,type:"button","aria-selected":d,"aria-controls":Jie(a,l),onFocus:t?void 0:k(e.onFocus,(()=>{s(l),!o&&(!t||!r)&&i(l)}))}}({...e,ref:t}),i={outline:"0",display:"flex",alignItems:"center",justifyContent:"center",...r.tab};return(0,ln.jsx)(cn.button,{...n,className:v("chakra-tabs__tab",e.className),__css:i})}));pse.displayName="Tab";const mse=({children:e,...t})=>(0,ln.jsx)(pse,{...t,fontSize:"sm",paddingX:3,children:e}),gse=({tokens:e,nfts:t,account:r,delegation:n})=>{const i="multisig"===r.type,o=F2(),{operations:a,isFirstLoad:s}=dse([r.address.pkh]);return(0,ln.jsxs)(toe,{flexDirection:"column",display:"flex",overflow:"hidden",width:"100%",marginTop:"60px","data-testid":"asset-panel",children:[(0,ln.jsxs)(roe,{justifyContent:"space-between","data-testid":"asset-panel-tablist",children:[(0,ln.jsxs)(un,{children:[i&&(0,ln.jsx)(mse,{"data-testid":"account-card-pending-tab",children:"Pending"}),(0,ln.jsx)(mse,{children:"Operations"}),(0,ln.jsx)(mse,{children:"Delegation"}),(0,ln.jsx)(mse,{children:"NFTs"}),(0,ln.jsx)(mse,{children:"Tokens"})]}),(0,ln.jsx)(Bre,{href:use(o,r.address.pkh),children:(0,ln.jsxs)(Nn,{paddingRight:0,variant:"CTAWithIcon",children:[(0,ln.jsx)(az,{marginRight:"7px",size:"sm",children:"View on Tzkt"}),(0,ln.jsx)(Rj,{stroke:"currentcolor"})]})})]}),(0,ln.jsxs)(noe,{height:"100%",paddingBottom:"60px",children:[i&&(0,ln.jsx)(ioe,{overflowX:"hidden",height:"100%",paddingTop:"24px",paddingBottom:"60px","data-testid":"account-card-pending-tab-panel",children:(0,ln.jsx)(zae,{account:r})}),(0,ln.jsx)(ioe,{overflowX:"hidden",height:"100%",paddingTop:"24px",paddingBottom:"60px","data-testid":"account-card-operations-tab",children:(0,ln.jsx)(Fae.Provider,{value:{mode:"drawer",selectedAddress:r.address},children:s?(0,ln.jsx)(az,{color:EP.gray[500],textAlign:"center",children:"Loading..."}):(0,ln.jsx)(ose,{operations:a,owner:r.address.pkh})})}),(0,ln.jsx)(ioe,{overflowX:"hidden",paddingTop:"24px","data-testid":"account-card-delegation-tab",children:(0,ln.jsx)(nae,{account:r,delegation:n})}),(0,ln.jsx)(ioe,{overflowX:"hidden",height:"100%",paddingTop:"24px","data-testid":"account-card-nfts-tab",children:(0,ln.jsx)(Uae,{columns:3,nfts:t,owner:r.address.pkh})}),(0,ln.jsx)(ioe,{overflowX:"hidden",height:"100%",paddingTop:"24px","data-testid":"account-card-tokens-tab",children:(0,ln.jsx)(cse,{owner:r.address.pkh,tokens:e})})]})]})};var vse=g((function(e,t){const{spacing:r="0.5rem",spacingX:i,spacingY:o,children:a,justify:s,direction:c,align:l,className:u,shouldWrapChildren:d,...h}=e,f=(0,n.useMemo)((()=>d?n.Children.map(a,((e,t)=>(0,ln.jsx)(yse,{children:e},t))):a),[a,d]);return(0,ln.jsx)(cn.div,{ref:t,className:v("chakra-wrap",u),...h,children:(0,ln.jsx)(cn.ul,{className:"chakra-wrap__list",__css:{display:"flex",flexWrap:"wrap",justifyContent:s,alignItems:l,flexDirection:c,listStyleType:"none",gap:r,columnGap:i,rowGap:o,padding:"0"},children:f})})}));vse.displayName="Wrap";var yse=g((function(e,t){const{className:r,...n}=e;return(0,ln.jsx)(cn.li,{ref:t,__css:{display:"flex",alignItems:"flex-start"},className:v("chakra-wrap__listitem",r),...n})}));yse.displayName="WrapItem";const bse=({signers:e})=>(0,ln.jsx)(fn,{width:"100%",marginTop:"60px",padding:"15px",background:EP.gray[800],borderRadius:"8px",children:(0,ln.jsx)(Lz,{allowToggle:!0,defaultIndex:0,children:(0,ln.jsxs)(Nz,{background:EP.gray[800],border:"none",borderRadius:"8px",children:[(0,ln.jsx)("h2",{children:(0,ln.jsxs)(Dz,{as:"span",flex:"1",textAlign:"left",children:[(0,ln.jsx)(Sn,{width:"100%",size:"sm",children:"Approvers"}),(0,ln.jsx)(zz,{cursor:"pointer"})]})}),(0,ln.jsx)(Hz,{children:(0,ln.jsx)(vse,{marginTop:"3","data-testid":"multisig-tag-section",children:e.map((e=>(0,ln.jsx)(yse,{padding:"3px 8px",borderRadius:"100px",children:(0,ln.jsx)(pre,{address:e})},e.pkh)))})})]})})}),wse=({account:e})=>{const t=TR(),{onClose:r}=(0,n.useContext)(pM),i=({name:n})=>{t(((e,t)=>(r,n)=>{const{accounts:i,multisigs:o,contacts:a}=n(),s="multisig"===e.type,c=i.items.map((e=>e.label));[c,o.items.map((e=>e.label)),Object.values(a).map((e=>e.name))].flat().includes(t)||r(s?Fd.actions.setName({newName:t,account:e}):Nc.actions.renameAccount({newName:t,account:e}))})(e,n)),r()},{handleSubmit:o,formState:{isValid:a,errors:s},register:c,reset:l}=IU({mode:"onBlur",defaultValues:{name:e.label}}),u=VH(),{nameExistsInContacts:d}=BH();return(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{onSubmit:o((({name:e})=>{i({name:e.trim()}),l()})),children:[(0,ln.jsx)(L7,{subTitle:"Edit your account name here.",title:"Edit Name"}),(0,ln.jsx)(sz,{}),(0,ln.jsx)(cz,{children:(0,ln.jsxs)(Gz,{isInvalid:!!s.name,marginY:"20px",children:[(0,ln.jsx)(UU,{children:"Account name"}),(0,ln.jsx)(GU,{type:"text",...c("name",{required:"Name is required",validate:e=>u.map((e=>e.label)).includes(e)?"Name already used in accounts":!d(e.trim())||"Name already registered in address book"}),placeholder:"Enter contact's name"}),s.name&&(0,ln.jsx)(Jz,{"data-testid":"name-error",children:s.name.message})]})}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(Nn,{width:"100%",marginBottom:"8px",isDisabled:!a,size:"lg",type:"submit",children:"Save"})})]})})},xse=({account:e})=>{const{openWith:t,onClose:r}=(0,n.useContext)(pM),i=TR(),o=VO(),a=1===$H().length;let s;switch(e.type){case"secret_key":s=yne;break;case"ledger":case"social":s=()=>Nc.actions.removeAccount(e)}let c="Are you sure you want to remove this account?",l="Remove Account";a&&(c="Removing your last account will off-board you from Umami. This will remove or reset all customized settings to their defaults. Personal data (including saved contacts, password and accounts) won't be affected.",l="Remove & Off-board");const u=s?()=>{t((0,ln.jsx)(Ere,{buttonLabel:l,description:c,onSubmit:()=>{i(s(e)),r(),o("/")},title:"Remove Account"}))}:void 0;return(0,ln.jsx)(nte,{onRemove:u,onRename:()=>t((0,ln.jsx)(wse,{account:e}))})},_se=e=>(0,ln.jsxs)(fn,{textAlign:e.center?"center":"initial",children:[(0,ln.jsx)(Sn,{size:"md",children:G2(e.balance)}),null!==e.dollarBalance&&(0,ln.jsxs)(az,{marginTop:"6px",color:EP.gray[400],size:"sm",children:["$",e.dollarBalance.toFixed(2)]})]}),Sse=({icon:e,label:t,onClick:r=(()=>{})})=>(0,ln.jsxs)(fn,{className:"account-drawer-cta-button",color:EP.gray[300],textAlign:"center",_hover:{color:EP.green},cursor:"pointer",marginX:"24px",onClick:r,children:[(0,ln.jsx)(_3,{className:"account-drawer-cta-button-icon",marginBottom:"8px","aria-label":"button",icon:e,size:"lg",variant:"circle_without_color"}),(0,ln.jsx)(az,{cursor:"pointer",size:"sm",children:t})]}),kse=({onSend:e,onReceive:t=(()=>{}),balance:r,dollarBalance:i,tokens:o,nfts:a,account:s})=>{const c="multisig"===s.type,{openWith:l}=(0,n.useContext)(pM),u=o3(s.address),d=F2(),[h,f]=(0,n.useState)(null),{handleAsyncAction:p}=S7();return(0,n.useEffect)((()=>{p((async()=>{const e=await((e,t)=>j2([e],t,{limit:1,sort:{desc:"id"}}).then(Va.first))(s.address.pkh,d);e&&f((e=>{var t,r,n;const i=null===(t=e.sender)||void 0===t?void 0:t.address,o=null===(r=e.newDelegate)||void 0===r?void 0:r.address,a=e.timestamp,s=e.id,c=e.amount;return null==i||null==o||null==a||null==s||null==c?null:{sender:i,timestamp:a,id:s,amount:new Bs(c),delegate:{address:o,alias:(null===(n=e.newDelegate)||void 0===n?void 0:n.alias)||void 0}}})(e))}))}),[s.address.pkh,d]),(0,ln.jsxs)(un,{zIndex:2,alignItems:"center",flexDirection:"column",height:"100%","data-testid":`account-card-${s.address.pkh}`,children:[(0,ln.jsx)(bre,{addressKind:u}),(0,ln.jsx)(Sn,{marginTop:"24px",size:"md",children:s.label}),(0,ln.jsxs)(un,{alignItems:"center",marginTop:"8px",marginBottom:"30px",children:[(0,ln.jsx)(pre,{marginRight:"4px",address:s.address,mode:{type:"no_icons"}}),(0,ln.jsx)(xse,{account:s})]}),r&&(0,ln.jsx)(_se,{balance:r,center:!0,dollarBalance:i}),(0,ln.jsxs)(dn,{marginTop:"34px",children:[(0,ln.jsx)(Sse,{icon:(0,ln.jsx)(sR,{width:"24px",height:"24px",stroke:"currentcolor"}),label:"Send",onClick:e}),(0,ln.jsx)(Sse,{icon:(0,ln.jsx)(qj,{width:"24px",height:"24px",stroke:"currentcolor"}),label:"Receive",onClick:t}),!c&&(0,ln.jsx)(Sse,{icon:(0,ln.jsx)(lR,{stroke:"currentcolor"}),label:"Buy tez",onClick:()=>{l((0,ln.jsx)(Xte,{recipient:s.address.pkh}))}}),(0,ln.jsx)(Sse,{icon:(0,ln.jsx)(gj,{width:"24px",height:"24px",stroke:"currentcolor"}),label:"Delegate",onClick:()=>{l((0,ln.jsx)(Xoe,{form:h?{baker:h.delegate.address,sender:s.address.pkh}:void 0,sender:s}))}})]}),c&&(0,ln.jsx)(bse,{signers:s.signers}),(0,ln.jsx)(gse,{account:s,delegation:h,nfts:a,tokens:o})]})};var Ese=r(2083);const Ase=({pkh:e})=>{const t=WH()(e);return(0,ln.jsxs)(nz,{children:[(0,ln.jsx)(L7,{subTitle:"You can receive tez or other digital assets by scanning or sharing this QR code",title:"Receive"}),(0,ln.jsx)(cz,{children:(0,ln.jsx)(un,{alignItems:"center",justifyContent:"space-between",flexDirection:"column",children:(0,ln.jsx)(fn,{padding:"8px",background:"white",borderRadius:"8px",children:(0,ln.jsx)(Ese.QRCode,{size:232,value:e})})})}),(0,ln.jsx)(eB,{children:(0,ln.jsxs)(fn,{width:"100%",children:[t&&(0,ln.jsx)(Sn,{textAlign:"center",marginY:2,children:t.label}),(0,ln.jsx)(un,{justifyContent:"center",width:"100%",children:(0,ln.jsx)(pre,{address:qu(e),mode:{type:"no_icons"}})})]})})]})},Pse=({account:e})=>{const t=n3(),r=(()=>{const e=t3(),t=n3();return r=>{const n=t(r);if(null==n)return null;const i=W2(n);return e(i)}})(),i=Q2(),o=e3(),{openWith:a}=(0,n.useContext)(pM),s=t(e.address.pkh),c=r(e.address.pkh),l=i(e.address.pkh),u=vre(o(e.address.pkh));return(0,ln.jsx)(kse,{account:e,balance:s,dollarBalance:c,nfts:u,onReceive:()=>{a((0,ln.jsx)(Ase,{pkh:e.address.pkh}))},onSend:()=>a((0,ln.jsx)(bte,{sender:e})),tokens:l})};var Ose=r(4606),Tse=r.n(Ose);const Cse=({nft:e,style:t})=>{const r=e.metadata.attributes;return r&&0!==r.length?(0,ln.jsxs)(Nz,{background:EP.gray[800],"data-testid":"attributes-section",style:t,children:[(0,ln.jsxs)(Dz,{paddingY:"16px",children:[(0,ln.jsx)(Sn,{flex:"1",textAlign:"left",size:"md",children:"Attributes"}),(0,ln.jsx)(zz,{})]}),(0,ln.jsx)(Hz,{children:(0,ln.jsx)(vse,{marginLeft:"0",spacing:"10px",children:r.map((e=>(0,ln.jsx)(yse,{flex:"1","data-testid":"nft-attribute",children:(0,ln.jsx)(DU,{width:"160px",height:"128px",marginBottom:"2px",background:EP.gray[700],children:(0,ln.jsxs)(zU,{padding:"16px",children:[(0,ln.jsx)(az,{color:EP.gray[400],size:"sm",children:e.name}),(0,ln.jsx)(Sn,{size:"md",children:e.value})]})})},e.name)))})})]}):null},jse=({text:e,maxLength:t})=>e.length<=t?(0,ln.jsx)(az,{"data-testid":"truncated-text",children:e}):(0,ln.jsx)(Q$,{label:e,children:(0,ln.jsx)(az,{"data-testid":"truncated-text",children:q2(e,t)})}),Rse=({url:e,...t})=>(0,ln.jsx)("a",{"data-testid":"tzkt-link",href:e,rel:"noopener noreferrer",target:"_blank",children:(0,ln.jsx)(T7,{...t})}),Ise=({nft:e})=>{if(!e.metadata.creators||0===e.metadata.creators.length)return(0,ln.jsx)(ln.Fragment,{children:"-"});const t=e.metadata.creators[0];return t.startsWith("tz")?(0,ln.jsx)(pre,{marginRight:1,address:qu(t)}):(0,ln.jsx)(jse,{maxLength:15,text:t})},Mse=({nft:e,style:t})=>{const r=(e=>{const t=e.metadata.royalties;if(!t)return[];const r=Math.pow(10,Number(t.decimals)),n=Object.entries(t.shares).map((([e,t])=>({address:e,share:100*Number(t)/r})));return n.sort(((e,t)=>e.sharee+t.share),0).toFixed(2),i=F2();return(0,ln.jsxs)(Nz,{background:EP.gray[800],style:t,children:[(0,ln.jsxs)(Dz,{paddingY:"16px",children:[(0,ln.jsx)(Sn,{flex:"1",textAlign:"left",size:"md",children:"Properties"}),(0,ln.jsx)(zz,{})]}),(0,ln.jsx)(Hz,{children:(0,ln.jsx)(pee,{children:(0,ln.jsx)(vee,{variant:"stripped",children:(0,ln.jsxs)(yee,{fontSize:"14px",children:[(0,ln.jsxs)(bee,{background:EP.gray[900],borderColor:EP.gray[700],borderBottomWidth:"1px",borderRadius:"8px",children:[(0,ln.jsx)(wee,{width:"20%",padding:"16px 0 16px 15px",paddingRight:"0",color:EP.gray[400],borderTopLeftRadius:"8px","data-testid":"nft-editions",children:"Editions:"}),(0,ln.jsx)(wee,{width:"30%",padding:"16px 0 16px 5px",borderColor:EP.gray[700],borderRightWidth:"1px","data-testid":"nft-editions-value",children:e.totalSupply||"?"}),(0,ln.jsx)(wee,{width:"20%",padding:"16px 0 16px 15px",color:EP.gray[400],children:"Token ID:"}),(0,ln.jsx)(wee,{width:"30%",padding:"16px 0 16px 5px",borderTopRightRadius:"8px",children:e.tokenId})]}),(0,ln.jsxs)(bee,{background:EP.gray[800],borderColor:EP.gray[700],borderBottomWidth:"1px",children:[(0,ln.jsxs)(wee,{padding:"16px 0 16px 15px",color:EP.gray[400],"data-testid":"nft-royalty",children:["Royalties",r.length>1?" ("+r.length+")":"",":"]}),(0,ln.jsx)(wee,{padding:"16px 0 16px 5px",borderColor:EP.gray[700],borderRightWidth:"1px","data-testid":"nft-royalty-value",children:r.length>0?n+"%":"-"}),(0,ln.jsx)(wee,{padding:"16px 0 16px 15px",color:EP.gray[400],"data-testid":"nft-mime",children:"MIME type:"}),(0,ln.jsx)(wee,{width:"30%",padding:"16px 0 16px 5px","data-testid":"nft-mime-value",children:hd(e)||"-"})]}),(0,ln.jsxs)(bee,{background:EP.gray[900],borderColor:EP.gray[700],borderBottomWidth:"1px",children:[(0,ln.jsx)(wee,{padding:"16px 0 16px 15px",color:EP.gray[400],children:"Contract:"}),(0,ln.jsx)(wee,{padding:"16px 0 16px 5px",borderColor:EP.gray[700],borderRightWidth:"1px",children:(0,ln.jsx)(pre,{marginRight:1,address:qu(e.contract)})}),(0,ln.jsx)(wee,{padding:"16px 0 16px 15px",color:EP.gray[400],children:"Metadata:"}),(0,ln.jsxs)(wee,{width:"30%",padding:"16px 0 16px 5px",children:["TzKT ",(0,ln.jsx)(Rse,{url:fd(e,i)})]})]}),(0,ln.jsxs)(bee,{background:EP.gray[800],borderColor:EP.gray[700],borderBottomWidth:"1px",children:[(0,ln.jsx)(wee,{padding:"16px 0 16px 15px",color:EP.gray[400],"data-testid":"nft-creator",children:"Creator:"}),(0,ln.jsx)(wee,{padding:"16px 0 16px 5px",borderColor:EP.gray[700],borderRightWidth:"1px","data-testid":"nft-creator-value",children:(0,ln.jsx)(Ise,{nft:e})}),(0,ln.jsx)(wee,{padding:"16px 0 16px 15px",color:EP.gray[400],children:"License:"}),(0,ln.jsx)(wee,{width:"30%",padding:"16px 0 16px 5px",children:(0,ln.jsx)(jse,{maxLength:15,text:e.metadata.rights||"-"})})]})]})})})})]})},Lse=({nft:e})=>{const t=e.metadata.tags;return t&&0!==t.length?(0,ln.jsx)(vse,{marginTop:"20px","data-testid":"tags-section",children:t.map((e=>(0,ln.jsx)(yse,{padding:"3px 8px",background:EP.gray[600],borderRadius:"100px",children:(0,ln.jsx)(az,{color:EP.gray[400],"data-testid":"nft-tag",children:e})},e)))}):null},Nse=({nft:e})=>{const t=gre(dd(e)),r=gre(e.displayUri);return(0,ln.jsx)(fn,{width:"100%","aria-label":"nft",children:(0,ln.jsxs)(un,{alignItems:"center",height:"60px",padding:3,background:EP.gray[800],borderRadius:"4px","data-testid":"nft-name",children:[(0,ln.jsx)(uz,{width:"30px",height:"30px",ratio:1,children:(0,ln.jsx)(yR,{fallbackSrc:r,src:t})}),e.metadata.name&&(0,ln.jsx)(Sn,{marginLeft:4,size:"sm",children:q2(e.metadata.name,45)})]})})},Dse=e=>{const{mode:t,operations:r,fee:n,data:{nft:i}}=e,{fee:o,operations:a,estimationFailed:s,isLoading:c,form:l,signer:u,reEstimate:d,onSign:h}=ute(n,r,t),{recipient:f}=a.operations[0];return(0,ln.jsx)(AB,{...l,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(F7,{...e,operationsType:a.type,signer:a.signer}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(un,{marginBottom:"12px",children:(0,ln.jsx)(Nse,{nft:i})}),(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",marginY:"12px",paddingX:"4px",children:[(0,ln.jsxs)(un,{alignItems:"center",children:[(0,ln.jsx)(Sn,{marginRight:"4px",color:EP.gray[450],size:"sm",children:"Owned:"}),(0,ln.jsx)(az,{color:EP.gray[400],"data-testid":"nft-owned",size:"sm",children:i.balance})]}),(0,ln.jsx)(I7,{fee:o})]}),(0,ln.jsxs)(un,{alignItems:"center",marginTop:"12px",marginBottom:"24px",children:[(0,ln.jsx)(Sn,{marginRight:"12px",size:"md",children:"Quantity:"}),(0,ln.jsx)(dn,{width:"100px",height:"48px",background:EP.gray[800],borderRadius:"4px",children:(0,ln.jsxs)(az,{textAlign:"center",children:[a.operations[0].amount," out of ",i.balance]})})]}),(0,ln.jsx)(UU,{children:"From"}),(0,ln.jsx)(d3,{marginBottom:"24px",address:a.sender.address}),(0,ln.jsx)(UU,{children:"To"}),(0,ln.jsx)(d3,{address:f}),(0,ln.jsx)(ote,{isLoading:c,operationType:a.type,reEstimate:d,sender:a.sender})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(P7,{isDisabled:s,isLoading:c,onSubmit:h,signer:u,text:B7(a.type,t)})})]})})})},zse=e=>{const{nft:t}=e,r=gte({SignPage:Dse,signPageExtraData:{nft:t},FormPage:zse,defaultFormPageProps:e,toOperation:Bse(t)}),n=vte(Bse(t)),{onFormSubmitActionHandlers:[i,o],isLoading:a}=yte([r,n]),s=IU({mode:"onBlur",defaultValues:{quantity:1,...lte(e)}}),{formState:{isValid:c,errors:l},register:u,handleSubmit:d}=s;return(0,ln.jsx)(AB,{...s,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(L7,{}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(un,{marginBottom:"12px",children:(0,ln.jsx)(Nse,{nft:e.nft})}),(0,ln.jsxs)(un,{alignItems:"center",children:[(0,ln.jsx)(Sn,{marginRight:"4px",color:EP.gray[450],size:"sm",children:"Owned:"}),(0,ln.jsx)(az,{color:EP.gray[400],"data-testid":"nft-owned",size:"sm",children:t.balance})]}),(0,ln.jsxs)(Gz,{marginTop:"24px",isInvalid:!!l.quantity,children:[(0,ln.jsx)(UU,{children:(0,ln.jsxs)(un,{alignItems:"center",children:[(0,ln.jsx)(Sn,{marginRight:"8px",size:"md",children:"Quantity:"}),(0,ln.jsxs)(un,{alignItems:"center",children:[(0,ln.jsx)(qU,{width:"75px",children:(0,ln.jsx)(GU,{width:"60px",color:"white","data-testid":"quantity-input",step:1,type:"number",...u("quantity",{required:"Quantity is required",max:{value:t.balance,message:`Max quantity is ${t.balance}`},min:{value:1,message:"Min quantity is 1"}})})}),(0,ln.jsxs)(az,{"data-testid":"out-of-nft",children:["out of ",t.balance]})]})]})}),l.quantity&&(0,ln.jsx)(E7,{"data-testid":"quantity-error",children:l.quantity.message})]}),(0,ln.jsxs)(Gz,{marginTop:"24px",isInvalid:!!l.sender,children:[(0,ln.jsx)(y3,{allowUnknown:!1,inputName:"sender",isDisabled:!0,label:"From"}),l.sender&&(0,ln.jsx)(E7,{"data-testid":"from-error",children:l.sender.message})]}),(0,ln.jsxs)(Gz,{marginTop:"24px",isInvalid:!!l.recipient,children:[(0,ln.jsx)(g3,{allowUnknown:!0,inputName:"recipient",label:"To"}),l.recipient&&(0,ln.jsx)(E7,{"data-testid":"recipient-error",children:l.recipient.message})]})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(cte,{isLoading:a,isValid:c,onAddToBatch:d(o),onSingleSubmit:d(i)})})]})})})},Bse=e=>t=>({type:"fa2",sender:qu(t.sender),recipient:qu(t.recipient),contract:Zu(e.contract),tokenId:e.tokenId,amount:t.quantity.toString()}),Use=({nft:e,ownerPkh:t})=>{var r;const i=gre(ud(e)),o=gre(e.displayUri),a=GH(),{openWith:s}=(0,n.useContext)(pM),c=null===(r=hd(e))||void 0===r?void 0:r.startsWith("video/"),l=nd(e),u={border:"none",borderRadius:"8px",marginBottom:"20px"};return(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(DU,{width:"534px",height:"534px",background:EP.gray[800],children:(0,ln.jsxs)(zU,{padding:"24px",children:[(0,ln.jsx)(fn,{position:"relative",width:"486px",height:"486px",children:c?(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(fn,{position:"absolute",zIndex:1,width:"486px",height:"486px",children:(0,ln.jsx)(Tse(),{width:"100%",height:"100%",loop:!0,playing:!0,url:i})}),(0,ln.jsx)(yR,{position:"absolute",zIndex:0,top:"0",width:"486px",height:"486px",objectFit:"contain",alt:l,filter:"blur(20px)",src:o})]}):(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(yR,{position:"absolute",zIndex:1,width:"486px",height:"486px",objectFit:"contain",alt:l,fallbackSrc:o,src:i}),(0,ln.jsx)(yR,{position:"absolute",zIndex:0,top:"0",width:"486px",height:"486px",objectFit:"contain",alt:l,"data-testid":"nft-image",fallbackSrc:o,filter:"blur(20px)",src:i})]})}),Number(e.balance)>1&&(0,ln.jsx)(az,{position:"absolute",display:"inline",height:"24px",marginTop:"-38px",marginLeft:"16px",borderRadius:"100px",backgroundColor:"rgba(33, 33, 33, 0.75)","data-testid":"nft-owned-count",paddingX:"8px",children:"x"+e.balance})]})}),(0,ln.jsx)(Lse,{nft:e}),l&&(0,ln.jsx)(Sn,{marginTop:"16px",marginBottom:"14px","data-testid":"nft-name",size:"lg",children:l}),e.metadata.description&&(0,ln.jsx)(az,{color:EP.gray[400],"data-testid":"nft-description",size:"sm",children:e.metadata.description}),(0,ln.jsx)(Nn,{marginTop:"20px",onClick:()=>{s((0,ln.jsx)(zse,{nft:e,sender:a(t)}))},children:"Send"}),(0,ln.jsxs)(Lz,{marginTop:"32px",allowMultiple:!0,children:[(0,ln.jsx)(Cse,{nft:e,style:u}),(0,ln.jsx)(Mse,{nft:e,style:u}),(0,ln.jsxs)(Nz,{background:EP.gray[800],style:u,children:[(0,ln.jsxs)(Dz,{paddingY:"16px",children:[(0,ln.jsx)(Sn,{flex:"1",textAlign:"left",size:"md",children:"JSON"}),(0,ln.jsx)(zz,{})]}),(0,ln.jsx)(Hz,{children:(0,ln.jsx)(BU,{value:e})})]})]})]})},Fse=({ownerPkh:e,nft:t,onCloseDrawer:r})=>(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",paddingBottom:"22px",color:EP.gray[400],"data-testid":"nft-drawer-body",children:[(0,ln.jsx)(pre,{address:qu(e)}),(0,ln.jsx)(Uie,{onClose:r})]}),(0,ln.jsx)(Use,{nft:t,ownerPkh:e})]}),$se=()=>{const[e,t]=(0,n.useState)(null),{ownerPkh:r,nftId:i}=function(){let{matches:e}=n.useContext(BO),t=e[e.length-1];return t?t.params:{}}(),o=X2(),a=r&&(0,Va.get)(o,[r],[]).find((e=>td(e)===i)),s=!!a,{isOpen:c,onOpen:l,onClose:u}=zR({defaultIsOpen:s}),{isOpen:d}=mM(),h=VO(),f=(0,n.useCallback)((()=>{t(null),u(),h("/home")}),[u,h]);(0,n.useEffect)((()=>{const e=e=>{"Escape"===e.key&&f()};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}),[f]);const p=(0,n.useMemo)((()=>({selectedAccount:e,selectAccount:e=>{t(e),l()}})),[e,l]);return(0,ln.jsxs)(wre.Provider,{value:p,children:[(0,ln.jsx)(Die,{}),(0,ln.jsxs)(ene,{autoFocus:!1,blockScrollOnMount:!d,isOpen:c,onClose:f,placement:"right",children:[(0,ln.jsx)(gI,{}),(0,ln.jsxs)(one,{children:[s&&(0,ln.jsx)(cz,{children:(0,ln.jsx)(Fse,{nft:a,onCloseDrawer:f,ownerPkh:r})}),!s&&e&&(0,ln.jsxs)(cz,{overflow:"hidden",background:Sre({account:e,radius:"350px",opacity:"35",mainBackgroundColor:"transparent",left:"300px",top:"-125px"}),children:[(0,ln.jsx)(Bie,{onClose:f}),(0,ln.jsx)(Pse,{account:e})]})]})]})]})},Hse=()=>(0,ln.jsxs)(un,{flexDirection:"column",height:"100%",children:[(0,ln.jsx)(ere,{title:"Accounts"}),(0,ln.jsx)(un,{flex:1,minHeight:1,children:(0,ln.jsxs)(un,{flexDirection:"column",flex:1,marginRight:"12px",paddingBottom:"12px",children:[(0,ln.jsx)(Mie,{}),(0,ln.jsx)(fn,{flex:1,overflow:"hidden",borderRadius:"8px",children:(0,ln.jsx)($se,{})})]})})]}),Vse=({nft:e,onClick:t})=>{const r=gre(dd(e)),n=gre(e.displayUri),i=e.metadata.name,o=$O().pathname.includes(`${e.owner}/${td(e)}`),a={width:"100%",minWidth:"242px",minHeight:"242px",objectFit:"contain",aspectRatio:"1",fallbackSrc:n,src:r};return(0,ln.jsx)(DU,{minWidth:"274px",borderRadius:"8px",cursor:"pointer","data-testid":"nft-card",onClick:t,children:(0,ln.jsxs)(zU,{padding:"16px",background:EP.gray[900],border:"1px solid",borderColor:o?EP.orangeL:"transparent",borderRadius:"8px",_hover:{bg:EP.gray[700],borderColor:`${EP.gray[500]}`},children:[(0,ln.jsx)(dn,{children:(0,ln.jsxs)(fn,{position:"relative",width:"100%",children:[(0,ln.jsx)(yR,{...a,zIndex:2,opacity:"0"}),(0,ln.jsx)(yR,{...a,position:"absolute",zIndex:0,top:"0",filter:"blur(20px)"}),(0,ln.jsx)(yR,{...a,position:"absolute",zIndex:1,top:"0","data-testid":"nft-image"})]})}),Number(e.balance)>1&&(0,ln.jsx)(az,{position:"absolute",display:"inline",height:"24px",marginTop:"-36px",marginLeft:"10px",paddingTop:"1px",fontSize:"14px",borderRadius:"full",backgroundColor:"rgba(33, 33, 33, 0.75)","data-testid":"nft-owned-count",paddingX:"8px",children:"x"+e.balance}),(0,ln.jsx)(fn,{overflow:"hidden","data-testid":"nft-card-name",children:(0,ln.jsx)(Sn,{overflow:"hidden",marginTop:"15px",marginBottom:"8px",fontSize:"sm",whiteSpace:"nowrap",textOverflow:"ellipsis",children:i})}),(0,ln.jsx)(pre,{address:qu(e.owner)})]})})},qse=({nftsByOwner:e,onSelect:t})=>{const r=Object.entries(e).flatMap((([e,t])=>(t||[]).map((t=>({owner:e,...t})))));let n="repeat(auto-fit, minmax(min(100%/2, max(274px, 100%/7)), 1fr))";return r.length<3&&(n=`repeat(auto-fit, min(100% / ${r.length} - 16px, 450px))`),(0,ln.jsx)(Sie,{gridTemplateColumns:n,marginBottom:"16px",minChildWidth:"340px",spacing:"16px",children:vre(r).map((e=>(0,ln.jsx)(Vse,{nft:e,onClick:()=>t(e)},`${e.owner}:${td(e)}`)))})};function Kse(e={}){const{timeout:t=300,preventDefault:r=(()=>!0)}=e,[i,o]=(0,n.useState)([]),a=(0,n.useRef)(),s=()=>{a.current&&(clearTimeout(a.current),a.current=null)};return(0,n.useEffect)((()=>s),[]),function(e){return n=>{if("Backspace"===n.key){const e=[...i];return e.pop(),void o(e)}if(function(e){const{key:t}=e;return 1===t.length||t.length>1&&/[^a-zA-Z0-9]/.test(t)}(n)){const c=i.concat(n.key);r(n)&&(n.preventDefault(),n.stopPropagation()),o(c),e(c.join("")),s(),a.current=setTimeout((()=>{o([]),a.current=null}),t)}}}}function Wse(e,t){var r;const n=e.target;if(n){if(!Gse(n).contains(n))return!1}return!(null==(r=t.current)?void 0:r.contains(n))}function Gse(e){var t;return null!=(t=null==e?void 0:e.ownerDocument)?t:document}var[Zse,Yse,Xse,Jse]=xz(),[Qse,ece]=kn({strict:!1,name:"MenuContext"});function tce(e){var t;return null!=(t=null==e?void 0:e.ownerDocument)?t:document}function rce(e){return tce(e).activeElement===e}function nce(e={}){const{id:t,closeOnSelect:r=!0,closeOnBlur:i=!0,initialFocusRef:o,autoSelect:a=!0,isLazy:s,isOpen:c,defaultIsOpen:l,onClose:u,onOpen:d,placement:h="bottom-start",lazyBehavior:f="unmount",direction:p,computePositionOnMount:m=!1,...g}=e,v=(0,n.useRef)(null),y=(0,n.useRef)(null),b=Xse(),w=(0,n.useCallback)((()=>{requestAnimationFrame((()=>{var e;null==(e=v.current)||e.focus({preventScroll:!1})}))}),[]),x=(0,n.useCallback)((()=>{const e=setTimeout((()=>{var e;if(o)null==(e=o.current)||e.focus();else{const e=b.firstEnabled();e&&C(e.index)}}));L.current.add(e)}),[b,o]),_=(0,n.useCallback)((()=>{const e=setTimeout((()=>{const e=b.lastEnabled();e&&C(e.index)}));L.current.add(e)}),[b]),S=(0,n.useCallback)((()=>{null==d||d(),a?x():w()}),[a,x,w,d]),{isOpen:k,onOpen:E,onClose:A,onToggle:P}=K$({isOpen:c,defaultIsOpen:l,onClose:u,onOpen:S});!function(e){const{ref:t,handler:r,enabled:i=!0}=e,o=pb(r),a=(0,n.useRef)({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}).current;(0,n.useEffect)((()=>{if(!i)return;const e=e=>{Wse(e,t)&&(a.isPointerDown=!0)},n=e=>{a.ignoreEmulatedMouseEvents?a.ignoreEmulatedMouseEvents=!1:a.isPointerDown&&r&&Wse(e,t)&&(a.isPointerDown=!1,o(e))},s=e=>{a.ignoreEmulatedMouseEvents=!0,r&&a.isPointerDown&&Wse(e,t)&&(a.isPointerDown=!1,o(e))},c=Gse(t.current);return c.addEventListener("mousedown",e,!0),c.addEventListener("mouseup",n,!0),c.addEventListener("touchstart",e,!0),c.addEventListener("touchend",s,!0),()=>{c.removeEventListener("mousedown",e,!0),c.removeEventListener("mouseup",n,!0),c.removeEventListener("touchstart",e,!0),c.removeEventListener("touchend",s,!0)}}),[r,t,o,a,i])}({enabled:k&&i,ref:v,handler:e=>{var t;(null==(t=y.current)?void 0:t.contains(e.target))||A()}});const O=V$({...g,enabled:k||m,placement:h,direction:p}),[T,C]=(0,n.useState)(-1);mb((()=>{k||C(-1)}),[k]),Dee(v,{focusRef:y,visible:k,shouldFocus:!0});const j=Ree({isOpen:k,ref:v}),[R,I]=function(e,...t){const r=(0,n.useId)(),i=e||r;return(0,n.useMemo)((()=>t.map((e=>`${e}-${i}`))),[i,t])}(t,"menu-button","menu-list"),M=(0,n.useCallback)((()=>{E(),w()}),[E,w]),L=(0,n.useRef)(new Set([]));(0,n.useEffect)((()=>{const e=L.current;return()=>{e.forEach((e=>clearTimeout(e))),e.clear()}}),[]);const N=(0,n.useCallback)((()=>{E(),x()}),[x,E]),D=(0,n.useCallback)((()=>{E(),_()}),[E,_]),z=(0,n.useCallback)((()=>{var e,t;const r=tce(v.current),n=null==(e=v.current)?void 0:e.contains(r.activeElement);if(!(k&&!n))return;const i=null==(t=b.item(T))?void 0:t.node;null==i||i.focus({preventScroll:!0})}),[k,T,b]),B=(0,n.useRef)(null);return{openAndFocusMenu:M,openAndFocusFirstItem:N,openAndFocusLastItem:D,onTransitionEnd:z,unstable__animationState:j,descendants:b,popper:O,buttonId:R,menuId:I,forceUpdate:O.forceUpdate,orientation:"vertical",isOpen:k,onToggle:P,onOpen:E,onClose:A,menuRef:v,buttonRef:y,focusedIndex:T,closeOnSelect:r,closeOnBlur:i,autoSelect:a,setFocusedIndex:C,isLazy:s,lazyBehavior:f,initialFocusRef:o,rafId:B}}function ice(e){var t;return function(e){var t;if(!function(e){return null!=e&&"object"==typeof e&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}(e))return!1;const r=null!=(t=e.ownerDocument.defaultView)?t:window;return e instanceof r.HTMLElement}(e)&&!!(null==(t=null==e?void 0:e.getAttribute("role"))?void 0:t.startsWith("menuitem"))}function oce(e={},t=null){const{onMouseEnter:r,onMouseMove:i,onMouseLeave:o,onClick:a,onFocus:s,isDisabled:c,isFocusable:l,closeOnSelect:u,type:d,...h}=e,f=ece(),{setFocusedIndex:p,focusedIndex:m,closeOnSelect:g,onClose:v,menuRef:y,isOpen:b,menuId:w,rafId:x}=f,_=(0,n.useRef)(null),S=`${w}-menuitem-${(0,n.useId)()}`,{index:k,register:E}=Jse({disabled:c&&!l}),A=(0,n.useCallback)((e=>{null==r||r(e),c||p(k)}),[p,k,c,r]),P=(0,n.useCallback)((e=>{null==i||i(e),_.current&&!rce(_.current)&&A(e)}),[A,i]),O=(0,n.useCallback)((e=>{null==o||o(e),c||p(-1)}),[p,c,o]),T=(0,n.useCallback)((e=>{null==a||a(e),ice(e.currentTarget)&&(null!=u?u:g)&&v()}),[v,a,g,u]),C=(0,n.useCallback)((e=>{null==s||s(e),p(k)}),[p,s,k]),j=k===m,R=c&&!l;mb((()=>{if(b)return j&&!R&&_.current?(x.current&&cancelAnimationFrame(x.current),x.current=requestAnimationFrame((()=>{var e;null==(e=_.current)||e.focus({preventScroll:!0}),x.current=null}))):y.current&&!rce(y.current)&&y.current.focus({preventScroll:!0}),()=>{x.current&&cancelAnimationFrame(x.current)}}),[j,R,y,b]);const I=$ie({onClick:T,onFocus:C,onMouseEnter:A,onMouseMove:P,onMouseLeave:O,ref:Mn(E,_,t),isDisabled:c,isFocusable:l});return{...h,...I,type:null!=d?d:I.type,id:S,role:"menuitem",tabIndex:j?0:-1}}var[ace,sce]=kn({name:"MenuStylesContext",errorMessage:"useMenuStyles returned is 'undefined'. Seems you forgot to wrap the components in \"\" "}),cce=e=>{const{children:t}=e,r=_n("Menu",e),i=ht(e),{direction:o}=gn(),{descendants:a,...s}=nce({...i,direction:o}),c=(0,n.useMemo)((()=>s),[s]),{isOpen:l,onClose:u,forceUpdate:d}=c;return(0,ln.jsx)(Zse,{value:a,children:(0,ln.jsx)(Qse,{value:c,children:(0,ln.jsx)(ace,{value:r,children:w(t,{isOpen:l,onClose:u,forceUpdate:d})})})})};cce.displayName="Menu";var lce=g(((e,t)=>{const r=sce();return(0,ln.jsx)(cn.button,{ref:t,...e,__css:{display:"inline-flex",appearance:"none",alignItems:"center",outline:0,...r.button}})})),uce=g(((e,t)=>{const{children:r,as:i,...o}=e,a=function(e={},t=null){const r=ece(),{onToggle:i,popper:o,openAndFocusFirstItem:a,openAndFocusLastItem:s}=r,c=(0,n.useCallback)((e=>{const t=e.key,r={Enter:a,ArrowDown:a,ArrowUp:s}[t];r&&(e.preventDefault(),e.stopPropagation(),r(e))}),[a,s]);return{...e,ref:Mn(r.buttonRef,t,o.referenceRef),id:r.buttonId,"data-active":_(r.isOpen),"aria-expanded":r.isOpen,"aria-haspopup":"menu","aria-controls":r.menuId,onClick:k(e.onClick,i),onKeyDown:k(e.onKeyDown,c)}}(o,t),s=i||lce;return(0,ln.jsx)(s,{...a,className:v("chakra-menu__menu-button",e.className),children:(0,ln.jsx)(cn.span,{__css:{pointerEvents:"none",flex:"1 1 auto",minW:0},children:e.children})})}));uce.displayName="MenuButton";var dce={enter:{visibility:"visible",opacity:1,scale:1,transition:{duration:.2,ease:[.4,0,.2,1]}},exit:{transitionEnd:{visibility:"hidden"},opacity:0,scale:.8,transition:{duration:.1,easings:"easeOut"}}},hce=cn(CA.div),fce=g((function(e,t){var r,i;const{rootProps:o,motionProps:a,...s}=e,{isOpen:c,onTransitionEnd:l,unstable__animationState:u}=ece(),d=function(e={},t=null){const r=ece();if(!r)throw new Error("useMenuContext: context is undefined. Seems you forgot to wrap component within ");const{focusedIndex:i,setFocusedIndex:o,menuRef:a,isOpen:s,onClose:c,menuId:l,isLazy:u,lazyBehavior:d,unstable__animationState:h}=r,f=Yse(),p=Kse({preventDefault:e=>" "!==e.key&&ice(e.target)}),m=(0,n.useCallback)((e=>{if(!e.currentTarget.contains(e.target))return;const t=e.key,r={Tab:e=>e.preventDefault(),Escape:c,ArrowDown:()=>{const e=f.nextEnabled(i);e&&o(e.index)},ArrowUp:()=>{const e=f.prevEnabled(i);e&&o(e.index)}},n=r[t];if(n)return e.preventDefault(),void n(e);const a=p((e=>{const t=function(e,t,r,n){if(null==t)return n;if(!n)return e.find((e=>r(e).toLowerCase().startsWith(t.toLowerCase())));const i=e.filter((e=>r(e).toLowerCase().startsWith(t.toLowerCase())));if(i.length>0){let t;return i.includes(n)?(t=i.indexOf(n)+1,t===i.length&&(t=0),i[t]):(t=e.indexOf(i[0]),e[t])}return n}(f.values(),e,(e=>{var t,r;return null!=(r=null==(t=null==e?void 0:e.node)?void 0:t.textContent)?r:""}),f.item(i));if(t){const e=f.indexOf(t.node);o(e)}}));ice(e.target)&&a(e)}),[f,i,p,c,o]),g=(0,n.useRef)(!1);s&&(g.current=!0);const v=Bee({wasSelected:g.current,enabled:u,mode:d,isSelected:h.present});return{...e,ref:Mn(a,t),children:v?e.children:null,tabIndex:-1,role:"menu",id:l,style:{...e.style,transformOrigin:"var(--popper-transform-origin)"},"aria-orientation":"vertical",onKeyDown:k(e.onKeyDown,m)}}(s,t),h=function(e={}){const{popper:t,isOpen:r}=ece();return t.getPopperProps({...e,style:{visibility:r?"visible":"hidden",...e.style}})}(o),f=sce();return(0,ln.jsx)(cn.div,{...h,__css:{zIndex:null!=(i=e.zIndex)?i:null==(r=f.list)?void 0:r.zIndex},children:(0,ln.jsx)(hce,{variants:dce,initial:!1,animate:c?"enter":"exit",__css:{outline:0,...f.list},...a,className:v("chakra-menu__menu-list",d.className),...d,onUpdate:l,onAnimationComplete:E(u.onComplete,d.onAnimationComplete)})})}));fce.displayName="MenuList";var pce=g(((e,t)=>{const r=sce();return(0,ln.jsx)(cn.span,{ref:t,...e,__css:r.command,className:"chakra-menu__command"})}));pce.displayName="MenuCommand";var mce=g(((e,t)=>{const{type:r,...i}=e,o=sce(),a=i.as||r?null!=r?r:void 0:"button",s=(0,n.useMemo)((()=>({textDecoration:"none",color:"inherit",userSelect:"none",display:"flex",width:"100%",alignItems:"center",textAlign:"start",flex:"0 0 auto",outline:0,...o.item})),[o.item]);return(0,ln.jsx)(cn.button,{ref:t,type:a,...i,__css:s})})),gce=e=>{const{className:t,children:r,...i}=e,o=sce(),a=n.Children.only(r),s=(0,n.isValidElement)(a)?(0,n.cloneElement)(a,{focusable:"false","aria-hidden":!0,className:v("chakra-menu__icon",a.props.className)}):null,c=v("chakra-menu__icon-wrapper",t);return(0,ln.jsx)(cn.span,{className:c,...i,__css:o.icon,children:s})};gce.displayName="MenuIcon";var vce=g(((e,t)=>{const{icon:r,iconSpacing:n="0.75rem",command:i,commandSpacing:o="0.75rem",children:a,...s}=e,c=oce(s,t),l=r||i?(0,ln.jsx)("span",{style:{pointerEvents:"none",flex:1},children:a}):a;return(0,ln.jsxs)(mce,{...c,className:v("chakra-menu__menuitem",c.className),children:[r&&(0,ln.jsx)(gce,{fontSize:"0.8em",marginEnd:n,children:r}),l,i&&(0,ln.jsx)(pce,{marginStart:o,children:i})]})}));vce.displayName="MenuItem";const yce=({accounts:e,onSelect:t})=>(0,ln.jsx)(fce,{zIndex:"docked",overflowY:"scroll",maxHeight:"300px",padding:0,background:EP.gray[900],children:e.map((e=>(0,ln.jsx)(vce,{width:"100%",minHeight:"48px",padding:"5px",background:EP.gray[700],"aria-label":e.label,onClick:()=>{t(e)},value:e.address.pkh,children:(0,ln.jsx)(d3,{width:"370px",height:"40px",padding:"5px",background:EP.gray[700],borderRadius:"4px",_hover:{background:EP.gray[500]},cursor:"pointer",address:e.address})},e.address.pkh)))}),bce=()=>{const e=VH(),[t,r]=wT(),n=t.getAll("accounts"),i=e.filter((e=>n.includes(e.address.pkh))),o=(0,Va.differenceBy)(e,i,(e=>e.address.pkh)),a=i.length===e.length;return{selectedAccounts:0===i.length?e:i,accountsFilter:(0,ln.jsxs)(dn,{children:[(0,ln.jsx)(fn,{alignSelf:"flex-start",children:(0,ln.jsxs)(cce,{children:[(0,ln.jsx)(uce,{as:Nn,maxHeight:"26px",paddingLeft:0,fontWeight:"normal",_hover:{bg:"none"},_active:{bg:"none"},"data-testid":"account-filter",isDisabled:a,marginY:"16px",rightIcon:(0,ln.jsx)(die,{}),variant:"ghost",children:"Filter by Account"}),(0,ln.jsx)(yce,{accounts:o,onSelect:e=>{r({...t,accounts:[...i,e].map((e=>e.address.pkh))})}})]})}),(0,ln.jsx)(vse,{width:"100%",children:i.map((e=>(0,ln.jsx)(pre,{address:e.address,"data-testid":"account-pill",mode:{type:"removable",onRemove:()=>{r({...t,accounts:n.filter((t=>t!==e.address.pkh))})}}},e.address.pkh)))})]})}},wce=()=>{const e=X2(),{isOpen:t}=mM(),{accountsFilter:r,selectedAccounts:i}=bce(),[o,a]=(0,n.useState)(void 0);(0,n.useEffect)((()=>{const e=e=>{"Escape"===e.key&&a(void 0)};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}),[]);const s=(0,Va.pick)(e,i.map((e=>e.address.pkh))),c=(0,Va.sumBy)(Object.values(s).flat(),(e=>Number((null===e||void 0===e?void 0:e.balance)||0))),l=(0,Va.every)(s,(e=>!e||0===e.length));return(0,ln.jsxs)(un,{flexDirection:"column",height:"100%",children:[(0,ln.jsx)(ere,{subtitle:`(${c})`,title:"NFTs"}),r,l?(0,ln.jsx)(Woe,{}):(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(fn,{overflowY:"scroll",children:(0,ln.jsx)(qse,{nftsByOwner:s,onSelect:e=>a(e)})}),(0,ln.jsxs)(ene,{autoFocus:!1,blockScrollOnMount:!t,isOpen:!!o,onClose:()=>a(void 0),placement:"right",children:[(0,ln.jsx)(gI,{}),(0,ln.jsx)(one,{children:(0,ln.jsx)(cz,{children:o&&(0,ln.jsx)(Fse,{nft:o,onCloseDrawer:()=>a(void 0),ownerPkh:o.owner})})})]})]})]})},xce=()=>{const{accountsFilter:e,selectedAccounts:t}=bce(),{operations:r,loadMore:i,hasMore:o,setAddresses:a,isLoading:s}=dse(t.map((e=>e.address.pkh))),c=t.map((e=>e.address.pkh)).join(",");(0,n.useEffect)((()=>{a(c.split(","))}),[a,c]);const l=(0,ln.jsx)(az,{color:EP.gray[500],textAlign:"center",paddingY:"20px",children:"Loading..."});return(0,ln.jsxs)(un,{flexDirection:"column",height:"100%",children:[(0,ln.jsx)(ere,{title:"Operations"}),e,0===r.length&&s&&l,0===r.length&&!s&&(0,ln.jsx)(Goe,{}),r.length>0&&(0,ln.jsx)(fn,{overflowY:"scroll",marginBottom:"20px",background:EP.gray[900],borderRadius:"8px",onScroll:async e=>{if(!o||s)return;const t=e.target;t.scrollHeight-t.scrollTop-t.clientHeight<100&&i()},paddingX:"20px",children:(0,ln.jsxs)(Fae.Provider,{value:{mode:"page"},children:[r.map(((e,t)=>{const n=t===r.length-1;return(0,ln.jsxs)(fn,{height:"90px",marginBottom:n?"10px":0,paddingY:"20px",children:[(0,ln.jsx)(ise,{operation:e}),!n&&(0,ln.jsx)(fn,{children:(0,ln.jsx)(jee,{marginTop:"20px"})})]},e.id)})),s&&(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(jee,{}),l]})]})})]})},_ce=()=>{const{data:e}=(0,Fn.useQuery)(X7,(()=>Y7.getPeers())),t=Q7(),[r,i]=(0,n.useState)([]);return(0,n.useEffect)((()=>{(async()=>{const t=await Promise.all((e||[]).map((async e=>({...e,senderId:await dL(e.publicKey)}))));i(t)})()}),[e]),0===r.length?null:(0,ln.jsx)(Sce,{peerInfos:r,removePeer:t})},Sce=({peerInfos:e,removePeer:t})=>(0,ln.jsx)(fn,{children:e.map((e=>(0,ln.jsxs)(n.Fragment,{children:[(0,ln.jsx)(jee,{}),(0,ln.jsx)(kce,{onRemove:()=>t(e),peerInfo:e})]},e.name)))}),kce=({peerInfo:e,onRemove:t})=>(0,ln.jsxs)(un,{justifyContent:"space-between",height:"106px","data-testid":"peer-row",paddingY:"30px",children:[(0,ln.jsxs)(un,{children:[(0,ln.jsx)(uz,{width:"48px",marginRight:"16px",ratio:1,children:(0,ln.jsx)(yR,{width:"100%",src:e.icon})}),(0,ln.jsxs)(dn,{alignItems:"flex-start",flexDirection:"column",children:[(0,ln.jsx)(Sn,{marginBottom:"6px",size:"md",children:e.name}),(0,ln.jsx)(Ece,{peerInfo:e})]})]}),(0,ln.jsx)(dn,{children:(0,ln.jsx)(_3,{"aria-label":"Remove Peer",icon:(0,ln.jsx)(wR,{}),onClick:t,size:"xs",variant:"circle"})})]}),Ece=({peerInfo:e})=>{const t=(e=>{const t=CR((e=>e.beacon));return t[e]})(e.senderId);return t?(0,ln.jsxs)(un,{children:[(0,ln.jsx)(pre,{marginRight:"10px",address:qu(t.accountPkh)}),(0,ln.jsx)(jee,{marginRight:"10px",orientation:"vertical"}),(0,ln.jsx)(az,{marginTop:"2px",marginRight:"4px",color:EP.gray[450],fontWeight:650,size:"sm",children:"Network:"}),(0,ln.jsx)(az,{marginTop:"2px",color:EP.white,"data-testid":"dapp-connection-network",size:"sm",children:(0,Va.capitalize)(t.networkType)})]}):null},Ace=()=>{const{isOpen:e,onClose:t,onOpen:r}=zR(),{isOpen:n}=mM();return(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(Wre,{left:"dApps",isSelected:e,onClick:r}),(0,ln.jsxs)(ene,{autoFocus:!1,blockScrollOnMount:!n,isOpen:e,onClose:t,placement:"right",children:[(0,ln.jsx)(gI,{}),(0,ln.jsx)(one,{children:(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(Bie,{onClose:t}),(0,ln.jsx)(Pce,{})]})})]})]})},Pce=()=>{const e=eee();return(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(un,{alignItems:"center",justifyContent:"space-between",height:24,children:(0,ln.jsx)(Sn,{size:"xl",children:"dApps"})}),(0,ln.jsx)(Nn,{onClick:()=>navigator.clipboard.readText().then((t=>{e(t)})),children:"Paste a peer request code"}),(0,ln.jsx)(az,{marginTop:"16px",marginBottom:"32px",color:"text.dark",children:"or open a deeplink from inside the dApp..."}),(0,ln.jsx)(_ce,{})]})};function Oce(e){return Jj({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"}},{tag:"path",attr:{d:"M464 688a48 48 0 1 0 96 0 48 48 0 1 0-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z"}}]})(e)}const Tce=()=>{const{isOpen:e,onClose:t,onOpen:r}=zR(),{isOpen:n}=mM();return(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(Wre,{left:"ErrorLogs",isSelected:e,onClick:r}),(0,ln.jsxs)(ene,{blockScrollOnMount:!n,isOpen:e,onClose:t,placement:"right",children:[(0,ln.jsx)(gI,{}),(0,ln.jsx)(one,{children:(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(Bie,{onClose:t}),(0,ln.jsx)(Cce,{})]})})]})]})},Cce=()=>{const e=[...CR((e=>e.errors))].reverse(),t=pi();return(0,ln.jsxs)(un,{flexDirection:"column",height:"100%",children:[(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",height:"50px",marginBottom:"20px",children:[(0,ln.jsx)(Sn,{size:"xl",children:"Error Logs"}),(0,ln.jsxs)(fn,{children:[(0,ln.jsx)("a",{download:"UmamiErrorLogs.json",href:`data:application/json;charset=utf-8,${encodeURIComponent(JSON.stringify(e))}`,children:(0,ln.jsx)(Nn,{variant:"tertiary",children:"Download error logs"})}),(0,ln.jsx)(Nn,{marginLeft:"8px",onClick:()=>{t(Bd.actions.reset())},variant:"warning",children:"Clear All"})]})]}),e.map((e=>(0,ln.jsx)(jce,{errorLog:e},na())))]})},jce=({errorLog:e})=>(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(jee,{marginY:1}),(0,ln.jsx)(un,{justifyContent:"space-between",paddingY:3,children:(0,ln.jsxs)(un,{children:[(0,ln.jsx)(LA,{as:Oce,marginTop:"1px",marginRight:2}),(0,ln.jsxs)(un,{flexDirection:"column",children:[(0,ln.jsx)(Sn,{wordBreak:"break-all",size:"sm",children:e.description}),(0,ln.jsx)(az,{color:EP.gray[400],size:"sm",children:e.timestamp})]})]})})]});function Rce(e={}){const{onChange:t,value:r,defaultValue:i,name:o,isDisabled:a,isFocusable:s,isNative:c,...l}=e,[u,d]=(0,n.useState)(i||""),h="undefined"!==typeof r,f=h?r:u,p=(0,n.useRef)(null),m=(0,n.useCallback)((()=>{const e=p.current;if(!e)return;let t="input:not(:disabled):checked";const r=e.querySelector(t);if(r)return void r.focus();t="input:not(:disabled)";const n=e.querySelector(t);null==n||n.focus()}),[]),g=(0,n.useId)(),v=o||`radio-${g}`,b=(0,n.useCallback)((e=>{const r=function(e){return e&&y(e)&&y(e.target)}(e)?e.target.value:e;h||d(r),null==t||t(String(r))}),[t,h]);return{getRootProps:(0,n.useCallback)(((e={},t=null)=>({...e,ref:Mn(t,p),role:"radiogroup"})),[]),getRadioProps:(0,n.useCallback)(((e={},t=null)=>{const r=c?"checked":"isChecked";return{...e,ref:t,name:v,[r]:null!=f?e.value===f:void 0,onChange(e){b(e)},"data-radiogroup":!0}}),[c,v,b,f]),name:v,ref:p,focus:m,setValue:d,value:f,onChange:b,isDisabled:a,isFocusable:s,htmlProps:l}}var[Ice,Mce]=kn({name:"RadioGroupContext",strict:!1}),Lce=g(((e,t)=>{const{colorScheme:r,size:i,variant:o,children:a,className:s,isDisabled:c,isFocusable:l,...u}=e,{value:d,onChange:h,getRootProps:f,name:p,htmlProps:m}=Rce(u),g=(0,n.useMemo)((()=>({name:p,size:i,onChange:h,colorScheme:r,value:d,variant:o,isDisabled:c,isFocusable:l})),[p,i,h,r,d,o,c,l]);return(0,ln.jsx)(Ice,{value:g,children:(0,ln.jsx)(cn.div,{...f(m,t),className:v("chakra-radio-group",s),children:a})})}));Lce.displayName="RadioGroup";var Nce={border:"0",clip:"rect(0, 0, 0, 0)",height:"1px",width:"1px",margin:"-1px",padding:"0",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"};function Dce(e){e.preventDefault(),e.stopPropagation()}var zce=g(((e,t)=>{var r;const i=Mce(),{onChange:o,value:a}=e,s=_n("Radio",{...i,...e}),c=ht(e),{spacing:l="0.5rem",children:u,isDisabled:d=(null==i?void 0:i.isDisabled),isFocusable:h=(null==i?void 0:i.isFocusable),inputProps:f,...p}=c;let m=e.isChecked;null!=(null==i?void 0:i.value)&&null!=a&&(m=i.value===a);let g=o;(null==i?void 0:i.onChange)&&null!=a&&(g=E(i.onChange,o));const v=null!=(r=null==e?void 0:e.name)?r:null==i?void 0:i.name,{getInputProps:y,getCheckboxProps:b,getLabelProps:w,getRootProps:x,htmlProps:A}=function(e={}){const{defaultChecked:t,isChecked:r,isFocusable:i,isDisabled:o,isReadOnly:a,isRequired:s,onChange:c,isInvalid:l,name:u,value:d,id:h,"data-radiogroup":f,"aria-describedby":p,...m}=e,g=`radio-${(0,n.useId)()}`,v=Wz(),y=Mce();let b=!v||y||f?g:v.id;b=null!=h?h:b;const w=null!=o?o:null==v?void 0:v.isDisabled,x=null!=a?a:null==v?void 0:v.isReadOnly,E=null!=s?s:null==v?void 0:v.isRequired,A=null!=l?l:null==v?void 0:v.isInvalid,[P,O]=(0,n.useState)(!1),[T,C]=(0,n.useState)(!1),[j,R]=(0,n.useState)(!1),[I,M]=(0,n.useState)(!1),[L,N]=(0,n.useState)(Boolean(t)),D="undefined"!==typeof r,z=D?r:L;(0,n.useEffect)((()=>Gne(O)),[]);const B=(0,n.useCallback)((e=>{x||w?e.preventDefault():(D||N(e.target.checked),null==c||c(e))}),[D,w,x,c]),U=(0,n.useCallback)((e=>{" "===e.key&&M(!0)}),[M]),F=(0,n.useCallback)((e=>{" "===e.key&&M(!1)}),[M]),$=(0,n.useCallback)(((e={},t=null)=>({...e,ref:t,"data-active":_(I),"data-hover":_(j),"data-disabled":_(w),"data-invalid":_(A),"data-checked":_(z),"data-focus":_(T),"data-focus-visible":_(T&&P),"data-readonly":_(x),"aria-hidden":!0,onMouseDown:k(e.onMouseDown,(()=>M(!0))),onMouseUp:k(e.onMouseUp,(()=>M(!1))),onMouseEnter:k(e.onMouseEnter,(()=>R(!0))),onMouseLeave:k(e.onMouseLeave,(()=>R(!1)))})),[I,j,w,A,z,T,x,P]),{onFocus:H,onBlur:V}=null!=v?v:{},q=(0,n.useCallback)(((e={},t=null)=>{const r=w&&!i;return{...e,id:b,ref:t,type:"radio",name:u,value:d,onChange:k(e.onChange,B),onBlur:k(V,e.onBlur,(()=>C(!1))),onFocus:k(H,e.onFocus,(()=>C(!0))),onKeyDown:k(e.onKeyDown,U),onKeyUp:k(e.onKeyUp,F),checked:z,disabled:r,readOnly:x,required:E,"aria-invalid":S(A),"aria-disabled":S(r),"aria-required":S(E),"data-readonly":_(x),"aria-describedby":p,style:Nce}}),[w,i,b,u,d,B,V,H,U,F,z,x,E,A,p]);return{state:{isInvalid:A,isFocused:T,isChecked:z,isActive:I,isHovered:j,isDisabled:w,isReadOnly:x,isRequired:E},getCheckboxProps:$,getRadioProps:$,getInputProps:q,getLabelProps:(e={},t=null)=>({...e,ref:t,onMouseDown:k(e.onMouseDown,Dce),"data-disabled":_(w),"data-checked":_(z),"data-invalid":_(A)}),getRootProps:(e,t=null)=>({...e,ref:t,"data-disabled":_(w),"data-checked":_(z),"data-invalid":_(A)}),htmlProps:m}}({...p,isChecked:m,isFocusable:h,isDisabled:d,onChange:g,name:v}),[P,O]=function(e,t){const r={},n={};for(const[i,o]of Object.entries(e))t.includes(i)?r[i]=o:n[i]=o;return[r,n]}(A,tt),T=b(O),C=y(f,t),j=w(),R=Object.assign({},P,x()),I={display:"inline-flex",alignItems:"center",verticalAlign:"top",cursor:"pointer",position:"relative",...s.container},M={display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0,...s.control},L={userSelect:"none",marginStart:l,...s.label};return(0,ln.jsxs)(cn.label,{className:"chakra-radio",...R,__css:I,children:[(0,ln.jsx)("input",{className:"chakra-radio__input",...C}),(0,ln.jsx)(cn.span,{className:"chakra-radio__control",...T,__css:M}),u&&(0,ln.jsx)(cn.span,{className:"chakra-radio__label",...j,__css:L,children:u})]})}));zce.displayName="Radio";const Bce=({network:e})=>{const t=e?"edit":"create",{onClose:r}=(0,n.useContext)(pM),i=pi(),o=$2(),{formState:{errors:a,isValid:s},register:c,handleSubmit:l}=IU({mode:"onBlur",defaultValues:e});return(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{onSubmit:l((e=>{i(qd.upsertNetwork(e)),r()})),children:[(0,ln.jsxs)(iz,{textAlign:"center",children:["edit"===t?"Edit":"Add"," Network",(0,ln.jsx)(sz,{})]}),(0,ln.jsxs)(cz,{children:["create"===t&&(0,ln.jsxs)(Gz,{marginTop:"32px",marginBottom:"24px",isInvalid:!!a.name,children:[(0,ln.jsx)(UU,{children:"Name"}),(0,ln.jsx)(GU,{placeholder:"mainnet",...c("name",{required:"Name is required",validate:e=>{if(o.find((t=>t.name===e)))return"Network with this name already exists"}})}),a.name&&(0,ln.jsx)(E7,{children:a.name.message})]}),(0,ln.jsxs)(Gz,{marginBottom:"24px",isInvalid:!!a.rpcUrl,children:[(0,ln.jsx)(UU,{children:"RPC URL"}),(0,ln.jsx)(GU,{placeholder:"https://prod.tcinfra.net/rpc/mainnet",...c("rpcUrl",{required:"RPC URL is required"})}),a.rpcUrl&&(0,ln.jsx)(E7,{children:a.rpcUrl.message})]}),(0,ln.jsxs)(Gz,{marginBottom:"24px",isInvalid:!!a.tzktApiUrl,children:[(0,ln.jsx)(UU,{children:"Tzkt API URL"}),(0,ln.jsx)(GU,{placeholder:"https://api.ghostnet.tzkt.io",...c("tzktApiUrl",{required:"Tzkt API URL is required"})}),a.tzktApiUrl&&(0,ln.jsx)(E7,{children:a.tzktApiUrl.message})]}),(0,ln.jsxs)(Gz,{marginBottom:"24px",isInvalid:!!a.tzktExplorerUrl,children:[(0,ln.jsx)(UU,{children:"Tzkt Explorer URL"}),(0,ln.jsx)(GU,{placeholder:"https://ghostnet.tzkt.io",...c("tzktExplorerUrl",{required:"Tzkt Explorer URL is required"})}),a.tzktExplorerUrl&&(0,ln.jsx)(E7,{children:a.tzktExplorerUrl.message})]}),(0,ln.jsxs)(Gz,{children:[(0,ln.jsx)(UU,{children:"Buy Tez URL"}),(0,ln.jsx)(GU,{placeholder:"https://faucet.ghostnet.teztnets.xyz",...c("buyTezUrl")})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(Nn,{width:"100%",isDisabled:!s,onClick:()=>{},type:"submit",children:"edit"===t?"Save changes":"Add network"})})]})]})})},Uce=()=>{const{openWith:e}=(0,n.useContext)(pM),t=F2(),r=H2(),i=$2(),o=TR();return(0,ln.jsxs)(un,{flexDirection:"column",children:[(0,ln.jsxs)(dn,{justifyContent:"space-between",children:[(0,ln.jsx)(Sn,{children:"Network Settings"}),(0,ln.jsxs)(Nn,{paddingRight:"0",onClick:()=>e((0,ln.jsx)(Bce,{})),variant:"CTAWithIcon",children:[(0,ln.jsx)(az,{size:"sm",children:"Add Network"}),(0,ln.jsx)(lR,{width:"18px",height:"18px",marginLeft:"4px",stroke:"currentcolor"})]})]}),(0,ln.jsx)(Lce,{marginTop:"60px",onChange:r,value:t.name,children:(0,ln.jsx)(cne,{children:i.map((t=>(0,ln.jsxs)(n.Fragment,{children:[(0,ln.jsx)(jee,{borderColor:EP.gray[700]}),(0,ln.jsxs)(un,{justifyContent:"space-between","data-testid":`network-${t.name}`,children:[(0,ln.jsx)(zce,{height:"100px",value:t.name,variant:"primary",children:(0,ln.jsxs)(un,{flexDirection:"column",marginLeft:"16px",children:[(0,ln.jsx)(Sn,{marginBottom:"4px",size:"sm",children:t.name}),(0,ln.jsx)(az,{color:EP.gray[400],children:t.rpcUrl})]})}),!Pd(t)&&(0,ln.jsx)(dn,{"data-testid":"popover-menu",children:(0,ln.jsxs)(rte,{children:[(0,ln.jsxs)(Nn,{onClick:()=>e((0,ln.jsx)(Bce,{network:t})),variant:"popover",children:[(0,ln.jsx)(az,{marginRight:"4px",children:"Edit"}),(0,ln.jsx)(cR,{stroke:"inherit"})]}),(0,ln.jsx)(jee,{marginTop:"4px"}),(0,ln.jsxs)(Nn,{onClick:()=>(e=>{o(qd.removeNetwork(e))})(t),variant:"popover",children:[(0,ln.jsx)(az,{marginRight:"4px",children:"Remove"}),(0,ln.jsx)(wR,{stroke:"inherit"})]})]})})]})]},t.name)))})})]})},Fce=()=>{const{isOpen:e,onClose:t,onOpen:r}=zR(),{isOpen:i}=(0,n.useContext)(pM);return(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(Wre,{left:"Network Settings",isSelected:e,onClick:r}),(0,ln.jsxs)(ene,{blockScrollOnMount:!i,isOpen:e,onClose:t,placement:"right",children:[(0,ln.jsx)(gI,{}),(0,ln.jsx)(one,{children:(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(Bie,{onClose:t}),(0,ln.jsx)(Uce,{})]})})]})]})},$ce="2.0.0-beta1",Hce=()=>{const{onClose:e}=(0,n.useContext)(pM),t=IU({mode:"onBlur"}),r=sN(),i=TR(),{handleAsyncAction:o,isLoading:a}=S7(),{handleSubmit:s,formState:{isValid:c,errors:l},getValues:u}=t;return(0,ln.jsx)(AB,{...t,children:(0,ln.jsx)(nz,{background:EP.gray[700],"data-testid":"change-password-modal",children:(0,ln.jsxs)("form",{onSubmit:s((async({currentPassword:t,newPassword:n,newPasswordConfirmation:a})=>{t!==n&&n===a&&o((async()=>{await i(Mc({currentPassword:t,newPassword:n})).unwrap(),r({description:"Password updated",status:"success"}),e()}))})),children:[(0,ln.jsx)(sz,{}),(0,ln.jsx)(iz,{textAlign:"center",children:(0,ln.jsx)(Sn,{children:"Change Password"})}),(0,ln.jsxs)(cz,{children:[(0,ln.jsxs)(Gz,{marginTop:"32px",isInvalid:!!l.currentPassword,children:[(0,ln.jsx)(A7,{"data-testid":"current-password",inputName:"currentPassword",label:"Current Password",placeholder:"Enter your current password",required:"Current password is required"}),l.currentPassword&&(0,ln.jsx)(E7,{"data-testid":"current-password-error",children:l.currentPassword.message})]}),(0,ln.jsxs)(Gz,{isInvalid:!!l.newPassword,marginY:6,children:[(0,ln.jsx)(A7,{"data-testid":"new-password",inputName:"newPassword",label:"New Password",placeholder:"Enter new password",required:"New password is required",validate:e=>u("currentPassword")!==e||"Cannot be the same as old password"}),l.newPassword&&(0,ln.jsx)(E7,{"data-testid":"new-password-error",children:l.newPassword.message})]}),(0,ln.jsxs)(Gz,{marginTop:3,isInvalid:!!l.newPasswordConfirmation,children:[(0,ln.jsx)(A7,{"data-testid":"new-password-confirmation",inputName:"newPasswordConfirmation",label:"Confirm New Password",placeholder:"Confirm new password",required:"Confirmation is required",validate:e=>u("newPassword")===e||"Your new passwords do no match"}),l.newPasswordConfirmation&&(0,ln.jsx)(E7,{"data-testid":"new-password-confirmation-error",children:l.newPasswordConfirmation.message})]})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(Nn,{width:"100%",isDisabled:!c,isLoading:a,size:"lg",type:"submit",children:"Update Password"})})]})})})},Vce="wasabi",qce=()=>{const e=()=>{localStorage.clear(),window.location.reload()},t=IU({mode:"onBlur"}),{register:r,handleSubmit:n,formState:{isValid:i,errors:o},getValues:a}=t;return(0,ln.jsx)(AB,{...t,children:(0,ln.jsxs)("form",{onSubmit:n((()=>{a("check")&&a("confirmationCode")===Vce&&e()})),children:[(0,ln.jsx)(sz,{}),(0,ln.jsx)(iz,{marginBottom:"12px",textAlign:"center",children:(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(PR,{width:10,height:10,marginBottom:5}),(0,ln.jsx)(Sn,{children:"Off-board Wallet"})]})}),(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(az,{marginBottom:2,color:EP.gray[400],fontWeight:"bold",textAlign:"center",size:"sm",children:"This will permanently remove any data from this computer."}),(0,ln.jsxs)(az,{color:EP.gray[400],textAlign:"center",size:"sm",children:["Please enter \xab ",Vce," \xbb to confirm. The accounts are still available to be imported in the future; in order to regain access to your accounts, please make sure that you keep the recovery phrase."]}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(jee,{borderColor:EP.gray[700],marginY:5}),(0,ln.jsx)(Gz,{isInvalid:!!o.check,children:(0,ln.jsx)(rie,{...r("check",{required:!0}),children:(0,ln.jsx)(az,{marginLeft:2,fontWeight:"bold",children:"I have read the warning and I am certain I want to remove my private keys locally. I also made sure to keep my recovery phrase."})})}),(0,ln.jsx)(jee,{borderColor:EP.gray[700],marginY:5}),(0,ln.jsxs)(Gz,{isInvalid:!!o.confirmationCode,paddingY:5,children:[(0,ln.jsx)(GU,{type:"text",...r("confirmationCode",{required:"Confirmation is required",validate:e=>e===Vce||"Confirmation code does not match"}),placeholder:"Enter code word to confirm"}),o.confirmationCode&&(0,ln.jsx)(E7,{children:o.confirmationCode.message})]})]})]}),(0,ln.jsx)(eB,{padding:0,children:(0,ln.jsx)(Nn,{width:"100%",marginBottom:2,isDisabled:!i,size:"lg",type:"submit",variant:"warning",children:"Confirm"})})]})})},Kce=()=>(0,ln.jsxs)(un,{flexDirection:"column",height:"100%",children:[(0,ln.jsx)(ere,{title:"Settings"}),(0,ln.jsxs)(fn,{overflowY:"scroll",children:[(0,ln.jsx)(fn,{marginTop:"16px",children:(0,ln.jsx)(Wce,{})}),(0,ln.jsx)(Gce,{}),(0,ln.jsx)(Yce,{}),(0,ln.jsx)(Xce,{})]})]}),Wce=()=>(0,ln.jsxs)(Jce,{title:"General",children:[(0,ln.jsx)(Fce,{}),(0,ln.jsx)(Tce,{})]}),Gce=()=>null,Zce=()=>{const e={version:$ce,"persist:accounts":localStorage.getItem("persist:accounts"),"persist:root":localStorage.getItem("persist:root")},t=`data:text/json;chatset=utf-8,${encodeURIComponent(JSON.stringify(e))}`,r=document.createElement("a");r.href=t,r.download="UmamiV2Backup.json",r.click()},Yce=()=>(0,ln.jsx)(Jce,{title:"Backup",children:(0,ln.jsx)(Kre,{isSelected:!1,onClick:Zce,children:(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",children:[(0,ln.jsx)(Sn,{size:"sm",children:"Download backup file"}),(0,ln.jsx)(Nn,{onClick:Zce,variant:"unstyled",children:(0,ln.jsx)(Oj,{cursor:"pointer"})})]})})}),Xce=()=>{const{modalElement:e,onOpen:t}=(()=>{const{isOpen:e,onOpen:t,onClose:r}=zR();return{modalElement:(0,ln.jsxs)(rI,{isCentered:!0,isOpen:e,onClose:r,children:[(0,ln.jsx)(gI,{}),(0,ln.jsx)(nz,{background:EP.gray[900],children:(0,ln.jsx)(qce,{})})]}),onOpen:t}})(),{openWith:r}=(0,n.useContext)(pM);return(0,ln.jsxs)(Jce,{title:"Advanced Settings",children:[(0,ln.jsx)(Ace,{}),(0,ln.jsx)(Wre,{left:"Off-board Wallet",isSelected:!1,onClick:t}),(0,ln.jsx)(Wre,{left:"Change Password",isSelected:!1,onClick:()=>r((0,ln.jsx)(Hce,{}))}),e]})},Jce=({title:e,children:t})=>(0,ln.jsx)(fn,{marginTop:"8px",children:(0,ln.jsx)(un,{children:(0,ln.jsxs)(fn,{width:"550px",children:[(0,ln.jsx)(Sn,{marginBottom:"16px",size:"lg",children:e}),t]})})}),Qce=({token:e,amount:t,...r})=>{const{contract:n}=e,i=ld(t,e),o=id(e);return(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"start",width:"400px",padding:"15px",background:EP.gray[800],borderRadius:"4px","data-testid":"token-tile",...r,children:[(0,ln.jsx)(un,{alignItems:"center",children:(0,ln.jsx)(uz,{width:"30px",height:"30px",marginRight:"12px",ratio:1,children:(0,ln.jsx)(bR,{padding:"6.25px",background:EP.gray[500],borderRadius:"4px",contract:n})})}),(0,ln.jsx)(l3,{number:i}),(0,ln.jsx)(az,{marginLeft:"4px",size:"sm",children:o})]})},ele=e=>{const{mode:t,operations:r,fee:n,data:{token:i}}=e,{fee:o,operations:a,estimationFailed:s,isLoading:c,form:l,signer:u,reEstimate:d,onSign:h}=ute(n,r,t),{amount:f,recipient:p}=a.operations[0];return(0,ln.jsx)(AB,{...l,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(F7,{...e,operationsType:a.type,signer:a.signer}),(0,ln.jsxs)(cz,{children:[(0,ln.jsx)(Qce,{amount:f,token:i}),(0,ln.jsx)(un,{alignItems:"center",justifyContent:"end",marginTop:"12px",marginBottom:"24px",paddingX:"4px",children:(0,ln.jsx)(un,{children:(0,ln.jsx)(I7,{fee:o})})}),(0,ln.jsx)(UU,{children:"From"}),(0,ln.jsx)(d3,{marginBottom:"24px",address:a.sender.address}),(0,ln.jsx)(UU,{children:"To"}),(0,ln.jsx)(d3,{address:p}),(0,ln.jsx)(ote,{isLoading:c,operationType:a.type,reEstimate:d,sender:a.sender})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(P7,{isDisabled:s,isLoading:c,onSubmit:h,signer:u,text:B7(a.type,t)})})]})})})},tle=e=>{const{token:t}=e,r=gte({SignPage:ele,signPageExtraData:{token:t},FormPage:tle,defaultFormPageProps:e,toOperation:rle(t)}),n=vte(rle(t)),{onFormSubmitActionHandlers:[i,o],isLoading:a}=yte([r,n]),s=IU({mode:"onBlur",defaultValues:lte(e)}),{formState:{isValid:c,errors:l},register:u,handleSubmit:d}=s,h=ad(t),f=cd(t.balance,h),p=hte(Number(h));return(0,ln.jsx)(AB,{...s,children:(0,ln.jsx)(nz,{children:(0,ln.jsxs)("form",{children:[(0,ln.jsx)(L7,{}),(0,ln.jsxs)(cz,{children:[(0,ln.jsxs)(Gz,{isInvalid:!!l.prettyAmount,children:[(0,ln.jsx)(UU,{children:"Amount"}),(0,ln.jsxs)(qU,{children:[(0,ln.jsx)(GU,{isDisabled:a,step:p,type:"number",...u("prettyAmount",{required:"Amount is required",max:{value:f.toString(),message:`Max amount is ${f}`},validate:fte(Number(h))}),placeholder:p}),(0,ln.jsx)(JU,{paddingRight:"12px","data-testid":"token-symbol",children:id(t)})]}),l.prettyAmount&&(0,ln.jsx)(E7,{"data-testid":"amount-error",children:l.prettyAmount.message})]}),(0,ln.jsxs)(Gz,{marginTop:"24px",isInvalid:!!l.sender,children:[(0,ln.jsx)(y3,{allowUnknown:!1,inputName:"sender",isDisabled:!0,label:"From"}),l.sender&&(0,ln.jsx)(E7,{"data-testid":"from-error",children:l.sender.message})]}),(0,ln.jsxs)(Gz,{marginTop:"24px",isInvalid:!!l.recipient,children:[(0,ln.jsx)(g3,{allowUnknown:!0,inputName:"recipient",label:"To"}),l.recipient&&(0,ln.jsx)(E7,{"data-testid":"recipient-error",children:l.recipient.message})]})]}),(0,ln.jsx)(eB,{children:(0,ln.jsx)(cte,{isLoading:a,isValid:c,onAddToBatch:d(o),onSingleSubmit:d(i)})})]})})})},rle=e=>t=>{const r={type:"fa2",sender:qu(t.sender),recipient:qu(t.recipient),contract:Zu(e.contract),tokenId:e.tokenId,amount:sd(e,t.prettyAmount)};return"fa2"===e.type?r:{...r,type:"fa1.2",tokenId:"0"}},nle=({account:e})=>{const{address:t,label:r}=e,n=o3(t);return(0,ln.jsxs)(un,{alignItems:"center",height:"78px",background:Sre({left:"-10px",top:"-10px",account:e,radius:"100px",mainBackgroundColor:EP.gray[800]}),borderTopRadius:"8px","data-testid":"header",paddingX:"30px",children:[(0,ln.jsx)(sH,{addressKind:n,identiconSize:35,size:"lg"}),(0,ln.jsxs)(un,{justifyContent:"space-between",flex:1,children:[(0,ln.jsxs)(fn,{marginLeft:"16px","data-testid":"account-identifier",children:[(0,ln.jsx)(Sn,{marginBottom:"4px",size:"md",children:r}),(0,ln.jsx)(az,{color:EP.gray[300],size:"sm",children:Z2(t.pkh)})]}),(0,ln.jsx)(un,{flexDirection:"column-reverse",children:(0,ln.jsx)(u3,{verticalAlign:"bottom",address:e.address.pkh})})]})]})},ile=({account:e,tokens:t})=>{const{openWith:r}=(0,n.useContext)(pM);return(0,ln.jsxs)(DU,{overflowX:"auto",marginBottom:"16px",borderBottomRadius:"8px",backgroundColor:EP.gray[900],children:[(0,ln.jsx)(nle,{account:e}),(0,ln.jsx)(pee,{paddingX:"30px",children:(0,ln.jsx)(vee,{children:(0,ln.jsx)(yee,{children:t.map(((n,i)=>{const o=i===t.length-1?"transparent":EP.gray[700];return(0,ln.jsxs)(bee,{"data-testid":"token-tile",children:[(0,ln.jsx)(wee,{width:"20%",minWidth:"240px",borderColor:o,paddingX:"0",children:(0,ln.jsxs)(un,{alignItems:"center",children:[(0,ln.jsx)(bR,{display:"inline-block",width:"38px",contract:n.contract}),(0,ln.jsx)(Sn,{display:"inline-block",marginLeft:"16px",size:"sm",children:(0,ln.jsx)(sse,{token:n})})]})}),(0,ln.jsx)(wee,{width:"20%",minWidth:"200px",borderColor:o,paddingX:"0",children:(0,ln.jsx)(pre,{address:Zu(n.contract)})}),(0,ln.jsx)(wee,{width:"15%",minWidth:"160px",borderColor:o,paddingX:"0",children:(0,ln.jsx)(Sn,{size:"sm",children:ld(n.balance,n,{showSymbol:!1})})}),(0,ln.jsx)(wee,{textAlign:"right",borderColor:o,paddingX:"0",children:(0,ln.jsx)(ite,{onClick:()=>{r((0,ln.jsx)(tle,{sender:e,token:n}))}})})]},td(n))}))})})})]})},ole=()=>{const{accountsFilter:e,selectedAccounts:t}=bce(),r=Q2(),n=t.map((e=>[e,r(e.address.pkh)])).filter((([,e])=>e.length>0));return(0,ln.jsxs)(un,{flexDirection:"column",height:"100%",children:[(0,ln.jsx)(ere,{title:"Tokens"}),e,0===n.length?(0,ln.jsx)(Koe,{title:"No Tokens found"}):(0,ln.jsx)(fn,{overflowY:"auto",children:n.map((([e,t])=>(0,ln.jsx)(ile,{account:e,tokens:t},e.address.pkh)))})]})},ale=e=>(0,ln.jsxs)(az,{color:EP.gray[450],...e,children:["Umami v",$ce]}),sle=e=>{const t=F2();return(0,ln.jsx)(oR,{background:"white",borderRadius:"8px",fishColor:"mainnet"===t.name?"#F74F18":"black",...e})},cle=()=>{const e=F2(),t=$2(),r=H2();return(0,ln.jsx)(fn,{width:"105px",children:(0,ln.jsx)(fie,{padding:0,color:EP.green,fontSize:"14px",fontWeight:600,border:"1px solid transparent","data-testid":"network-selector",onChange:e=>r(e.target.value),size:"xs",value:e.name,children:t.map((e=>(0,ln.jsx)("option",{value:e.name,children:(0,Va.capitalize)(e.name)},e.name)))})})},lle=()=>{const[e,t]=(0,n.useState)(!1),r=window;(0,n.useEffect)((()=>{r&&r.electronAPI&&r.electronAPI.onAppUpdateDownloaded((e=>t(!0)))}),[r]);return e?(0,ln.jsx)(fn,{marginTop:"24px",marginBottom:"6px",children:(0,ln.jsxs)(Nn,{justifyContent:"flex-start",width:"100%",height:"32px",paddingTop:"7px",paddingRight:"8px",paddingBottom:"7px",paddingLeft:"8px",color:EP.black,background:EP.green,_hover:{color:EP.black,background:EP.greenL},onClick:()=>{r&&r.electronAPI&&r.electronAPI.installAppUpdateAndQuit()},children:[(0,ln.jsx)(Fj,{}),(0,ln.jsx)(az,{marginLeft:"4px",size:"sm",children:"Update Umami"})]})}):null},ule=()=>(0,ln.jsxs)(un,{flexDirection:"column",width:"236px",padding:"30px 30px 30px 30px",background:EP.gray[900],children:[(0,ln.jsxs)(fn,{children:[(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"space-between",height:"30px",children:[(0,ln.jsx)(sle,{width:"38px",height:"38px"}),(0,ln.jsx)(cle,{})]}),(0,ln.jsx)(jee,{marginTop:"28px"})]}),(0,ln.jsxs)(un,{justifyContent:"space-between",flexDirection:"column",flex:1,children:[(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(lle,{}),(0,ln.jsx)(hle,{}),(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(dle,{icon:(0,ln.jsx)(hj,{}),label:"Accounts",to:"/home"}),(0,ln.jsx)(dle,{icon:(0,ln.jsx)(Ej,{}),label:"NFTs",to:"/nfts"}),(0,ln.jsx)(dle,{icon:(0,ln.jsx)(uR,{width:"24px",height:"24px"}),label:"Operations",to:"/operations"}),(0,ln.jsx)(dle,{icon:(0,ln.jsx)(xj,{}),label:"Tokens",to:"/tokens"}),(0,ln.jsx)(dle,{icon:(0,ln.jsx)(vj,{}),label:"Batch",to:"/batch"})]})]}),(0,ln.jsxs)(fn,{children:[(0,ln.jsx)(jee,{}),(0,ln.jsx)(dle,{marginTop:"22px",icon:(0,ln.jsx)(mj,{}),label:"Address Book",to:"/address-book"}),(0,ln.jsx)(dle,{icon:(0,ln.jsx)($j,{}),label:"Settings",to:"/settings"}),(0,ln.jsx)(dle,{icon:(0,ln.jsx)(Hj,{}),label:"Help",to:"/help"}),(0,ln.jsx)(dle,{icon:(0,ln.jsx)(Dj,{}),label:"Share Feedback",target:"_blank",to:`mailto:umami-support@trili.tech?subject=Umami V2 feedback&body=${Bn}`}),(0,ln.jsx)(ale,{marginTop:"24px",fontSize:"14px"})]})]})]}),dle=({icon:e,target:t,label:r,to:n,...i})=>{const o=$O().pathname.startsWith(n);return(0,ln.jsx)(vT,{rel:"noopener noreferrer",target:t,to:n,children:(0,ln.jsxs)(un,{alignItems:"center",justifyContent:"flex-start",width:"176px",marginBottom:"8px",padding:"10px",background:o?EP.gray[600]:"transparent",borderRadius:"4px",_hover:{background:o?EP.gray[600]:EP.gray[800]},cursor:"pointer",...i,children:[e,(0,ln.jsx)(az,{marginLeft:"10px",size:"sm",children:r})]})})},hle=()=>{const e=r3(),[t]=_te("(max-height: 900px)");return(0,ln.jsxs)(fn,{marginTop:"24px",marginBottom:t?"30px":"100px",children:[(0,ln.jsx)(az,{marginBottom:"4px",size:"sm",children:"Balance"}),null!==e&&(0,ln.jsx)(_se,{balance:e.mutez,dollarBalance:e.usd})]})},fle=e=>(0,ln.jsxs)(un,{height:"100vh",children:[(0,ln.jsx)(ule,{}),(0,ln.jsx)(fn,{flex:1,overflowX:"hidden",height:"100%",background:"linear-gradient(180deg, rgba(0, 231, 182, 0.35) -41.53%, rgba(0, 231, 182, 0.00) 34.71%)",paddingX:6,children:e})]}),ple=r.p+"static/media/accounts.5f47a2af4c8394165d1e.png",mle=r.p+"static/media/background_image.a833e862a22ad4910526.png",gle=r.p+"static/media/batch.5ba4eb38fa8c4e1ed39b.png",vle=r.p+"static/media/multisig.3ab2bbc3bda7df25ea83.png";var yle=r(2602);const ble=({children:e})=>{const t={background:EP.gray[400],width:"10px",height:"10px",display:"inline-block",margin:"0 4px 60px 4px",borderRadius:"5px"};return(0,ln.jsx)(fn,{backgroundImage:"linear-gradient(180deg, rgba(18, 18, 18, 0.00) 36.43%, rgba(18, 18, 18, 0.50) 53.65%, #121212 76.24%)",borderRightRadius:"30px",backgroundColor:"#323131",children:(0,ln.jsx)(yle.lr,{autoPlay:!0,dynamicHeight:!1,infiniteLoop:!0,interval:5e3,renderIndicator:(e,r,n)=>r?(0,ln.jsx)("li",{style:{...t,background:"#00C39A",width:"24px"}}):(0,ln.jsx)("li",{onClick:e,onKeyDown:e,role:"button",style:t,tabIndex:0,value:n},n),showArrows:!1,showStatus:!1,showThumbs:!1,transitionTime:1e3,children:e})})},wle=({item:e})=>(0,ln.jsx)(fn,{height:"730px",paddingTop:"500px",paddingBottom:"35px",backgroundImage:e.image,backgroundSize:"cover",backgroundRepeat:"no-repeat","data-testid":`slide-${e.id}`,children:(0,ln.jsxs)(dn,{flexDirection:"column",paddingBottom:"50px",children:[(0,ln.jsx)(une,{icon:e.icon,size:"58px"}),(0,ln.jsx)(az,{width:"400px",margin:"16px 50px 0 50px",children:e.text})]})}),xle=()=>{const[e,t]=(0,n.useState)(!0),{onOpen:r,modalElement:i}=Pie((()=>t(!0))),o=[{id:1,text:(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(az,{as:"span",fontWeight:600,size:"md",children:"Streamline asset management:\xa0"}),(0,ln.jsx)(az,{as:"span",size:"md",children:"one mnemonic, multiple accounts, full control."})]}),icon:(0,ln.jsx)(fR,{}),image:ple},{id:2,text:(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(az,{as:"span",size:"md",children:"Enhance security with\xa0"}),(0,ln.jsx)(az,{as:"span",fontWeight:600,size:"md",children:"Multi-sig"}),(0,ln.jsx)(az,{as:"span",size:"md",children:", requiring multiple signatures for transaction executions."})]}),icon:(0,ln.jsx)(Kj,{width:"32px",height:"32px",stroke:EP.gray[450],strokeWidth:"0.9"}),image:vle},{id:3,text:(0,ln.jsxs)(ln.Fragment,{children:[(0,ln.jsx)(az,{as:"span",size:"md",children:"Utilize the\xa0"}),(0,ln.jsx)(az,{as:"span",fontWeight:600,size:"md",children:"Batch\xa0"}),(0,ln.jsx)(az,{as:"span",size:"md",children:"feature to bundle transactions, improving efficiency and reducing costs."})]}),icon:(0,ln.jsx)(vj,{width:"32px",height:"32px",strokeWidth:"0.9"}),image:gle}];return(0,ln.jsxs)(dn,{height:"100vh",padding:"60px",backgroundImage:mle,backgroundSize:"cover",children:[e&&(0,ln.jsxs)(Sie,{boxShadow:"0px 0px 30px rgba(0, 0, 0, 0.30)",columns:[1,1,2],children:[(0,ln.jsx)(dn,{width:"100%",maxWidth:"660px",background:EP.gray[800],borderLeftRadius:"30px",children:(0,ln.jsxs)(lne,{maxWidth:"400px",padding:"32px",spacing:"0",children:[(0,ln.jsx)(sle,{width:"48px",height:"48px",marginBottom:"24px"}),(0,ln.jsx)(Sn,{marginBottom:"16px",size:"3xl",children:"Welcome to Umami"}),(0,ln.jsx)(jee,{maxWidth:"400px",marginBottom:"16px"}),(0,ln.jsx)(az,{marginBottom:"32px",color:EP.gray[450],children:"A powerful Tezos wallet"}),(0,ln.jsx)(Nn,{width:"100%",marginBottom:"24px",onClick:()=>{t(!1),r()},size:"lg",children:"Get started"}),(0,ln.jsx)(ale,{fontSize:"13px"})]})}),(0,ln.jsx)(fn,{maxWidth:"660px",children:(0,ln.jsx)(ble,{children:o.map((e=>(0,ln.jsx)(wle,{item:e},e.id)))})})]}),i]})},_le=()=>{fee();return $H().length>0?(0,ln.jsx)(Sle,{}):(0,ln.jsx)(kle,{})},Sle=()=>{hee();const e=mM();return(0,ln.jsx)(pT,{children:(0,ln.jsx)(pM.Provider,{value:e,children:(0,ln.jsxs)(tee,{children:[(0,ln.jsx)(jR,{}),(0,ln.jsxs)(sT,{children:[(0,ln.jsx)(oT,{element:fle((0,ln.jsx)(Hse,{})),path:"/home"}),(0,ln.jsx)(oT,{element:fle((0,ln.jsx)(Hse,{})),path:"/home/:ownerPkh/:nftId"}),(0,ln.jsx)(oT,{element:fle((0,ln.jsx)(wce,{})),path:"/nfts"}),(0,ln.jsx)(oT,{element:fle((0,ln.jsx)(xce,{})),path:"/operations"}),(0,ln.jsx)(oT,{element:fle((0,ln.jsx)(ole,{})),path:"/tokens"}),(0,ln.jsx)(oT,{element:fle((0,ln.jsx)(rre,{})),path:"/address-book"}),(0,ln.jsx)(oT,{element:fle((0,ln.jsx)(Kce,{})),path:"/settings"}),(0,ln.jsx)(oT,{element:fle((0,ln.jsx)(Gre,{})),path:"/help"}),(0,ln.jsx)(oT,{element:fle((0,ln.jsx)(Fre,{})),path:"/batch"}),(0,ln.jsx)(oT,{element:(0,ln.jsx)(iT,{to:"/home"}),path:"/*"})]}),e.content]})})})},kle=()=>{const e=(()=>{const e=pi();return()=>e(Id.actions.reset())})();return(0,n.useEffect)((()=>{(async()=>{await Y7.removeAllAccounts(),await Y7.removeAllAppMetadata(),await Y7.removeAllPeers(),await Y7.removeAllPermissions()})().then(e)}),[e]),(0,ln.jsx)(pT,{children:(0,ln.jsxs)(sT,{children:[(0,ln.jsx)(oT,{element:(0,ln.jsx)(iT,{to:"/welcome"}),path:"/*"}),(0,ln.jsx)(oT,{element:(0,ln.jsx)(xle,{}),path:"/welcome"})]})})};o.createRoot(document.getElementById("root")).render((0,ln.jsx)(n.StrictMode,{children:(0,ln.jsx)(YP,{children:(0,ln.jsx)(Jd,{children:(0,ln.jsx)(m,{loading:null,persistor:cie,children:(0,ln.jsx)(c,{fallback:(0,ln.jsx)(Un,{}),onError:(e,t)=>{const r={..._7(e),stacktrace:String(t.componentStack)};Xd.dispatch(Bd.actions.add(r))},children:(0,ln.jsx)(Hn,{children:(0,ln.jsx)(_le,{})})})})})})}))})()})(); +//# sourceMappingURL=main.43413829.js.map \ No newline at end of file diff --git a/static/js/main.18219ce4.js.LICENSE.txt b/static/js/main.43413829.js.LICENSE.txt similarity index 100% rename from static/js/main.18219ce4.js.LICENSE.txt rename to static/js/main.43413829.js.LICENSE.txt diff --git a/static/js/main.18219ce4.js.map b/static/js/main.43413829.js.map similarity index 65% rename from static/js/main.18219ce4.js.map rename to static/js/main.43413829.js.map index 544ff7d87a..284de73cf6 100644 --- a/static/js/main.18219ce4.js.map +++ b/static/js/main.43413829.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/main.18219ce4.js","mappings":"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Ks2D,WAAWzpB,OAAO7sC,KAAKi4D,WACrC,EAEA1F,EAAUhiD,UAAUw5B,MAAQ,WAC1B,OAAOwc,EAAM/2C,OAAOxP,KAAKO,UAAW,OAAO0qC,aAC7C,EAEAnd,EAAOtxB,QAAU+1D,WChEjBzkC,EAAOtxB,QAAU,CACfyrD,QAAS,CACPG,KAAM,EACNK,OAAQ,CACN,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,kEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,sEAINN,IAAK,CACH5kB,IAAK,EACLklB,OAAQ,CACN,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,iEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,kEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,mEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oEAEF,CACE,mEACA,oGCrwBR,IAAIlC,EAAQ/pD,EACRm0B,EAAKpxB,EAAQ,KACb24D,EAAY34D,EAAQ,KACpB44D,EAAW54D,EAAQ,MAEvBgnD,EAAMlnD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GAClB,OAAOS,EAAUM,cAAcf,EAAK,GAAIA,EAAK,GAC/C,IAKA,CACE,CAAC,MAAO,IACR,CAAC,SAAU,MACX,CAAC,gEAAiE,QAClE,CAAC,kCAAmC,OACpC,CAAC,QAAS,KACV,CAAC,uFAAwF,QACzF,CAAC,oBAAqB,QACtB,CAAC,uBAAwB,UACzB,CAAC,sBAAuB,MACxB,CAAC,2FAA4F,MAC7F,CAAC,qEAAsE,SACvE,CAAC,iCAAkC,MACnC,CAAC,oBAAqB,QACtB,CAAC,4FAA6F,QAC9F,CAAC,yGAA0G,QAC3G,CAAC,8FAA+F,QAChG,CAAC,0BAA2B,OAC5B,CAAC,+BAAgC,QACjC,CAAC,sBAAuB,QACxB,CAAC,oBAAqB,UACtB,CAAC,eAAgB,MACjB,CAAC,YAAa,MACd,CAAC,QAAS,QACVxtE,SAAQ,SAAUwtE,GAClB,OAAOS,EAAUQ,gBAAgBjB,EAAK,GAAIA,EAAK,GACjD,IAKA,CAEE,YACA,SACA,SACA,MACA,WACA,UACA,OACA,YACA,QACA,YACA,QACA,QACA,QACA,QACA,UACA,SACA,OACA,OACA,UACA,QACA,WACA,MACA,WACA,cACA,QACA,SACA,WACA,YACA,MACA,SACA,YACA,YACA,YACA,WACA,WACA,MACA,UACA,UACA,WACA,WACA,eACA,SACA,SACA,YACA,WACA,YACA,cACA,QACA,UACA,QACA,SACA,aACA,YACA,WACA,OACA,QACA,OACA,QACA,QACA,MACA,QACA,OACA,OACA,YACA,OACA,WACA,SACA,SACA,YACA,WACA,OACA,WACA,OACA,SACA,WACA,SACA,SACA,WACA,SACA,WACA,UACA,QACA,QACA,SACA,UACA,iBACA,QACA,OACA,SACA,UACA,UACA,aACA,WACA,MACA,kBAEA,gBACA,SACA,SACA,YACA,WACA,QACA,WACAxtE,QAAQiuE,EAAUS,oBAEbT,CACT,CAhfqBA,aCLrB,IAOIY,EACAC,EARAj7G,EAAUktB,EAAOtxB,QAAU,CAAC,EAUhC,SAASs/G,IACL,MAAM,IAAIv+G,MAAM,kCACpB,CACA,SAASw+G,IACL,MAAM,IA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","sources":["../node_modules/@chaitanyapotti/register-service-worker/index.js","../node_modules/@noble/hashes/src/_assert.ts","../node_modules/@noble/hashes/src/_sha2.ts","../node_modules/@noble/hashes/src/_u64.ts","../node_modules/@noble/hashes/src/crypto.ts","../node_modules/@noble/hashes/src/hmac.ts","../node_modules/@noble/hashes/src/pbkdf2.ts","../node_modules/@noble/hashes/src/sha256.ts","../node_modules/@noble/hashes/src/sha3.ts","../node_modules/@noble/hashes/src/sha512.ts","../node_modules/@noble/hashes/src/utils.ts","../node_modules/@stablelib/binary/binary.ts","../node_modules/@stablelib/blake2b/blake2b.ts","../node_modules/@stablelib/bytes/bytes.ts","../node_modules/@stablelib/constant-time/constant-time.ts","../node_modules/@stablelib/ed25519/ed25519.ts","../node_modules/@stablelib/hash/hash.ts","../node_modules/@stablelib/hmac/hmac.ts","../node_modules/@stablelib/int/int.ts","../node_modules/@stablelib/nacl/box.ts","../node_modules/@stablelib/nacl/nacl.ts","../node_modules/@stablelib/nacl/secretbox.ts","../node_modules/@stablelib/poly1305/poly1305.ts","../node_modules/@stablelib/random/random.ts","../node_modules/@stablelib/random/source/browser.ts","../node_modules/@stablelib/random/source/node.ts","../node_modules/@stablelib/random/source/system.ts","../node_modules/@stablelib/salsa20/salsa20.ts","../node_modules/@stablelib/sha512/sha512.ts","../node_modules/@stablelib/utf8/utf8.ts","../node_modules/@stablelib/wipe/wipe.ts","../node_modules/@stablelib/x25519-session/keyagreement.ts","../node_modules/@stablelib/x25519-session/x25519-session.ts","../node_modules/@stablelib/x25519/x25519.ts","../node_modules/@stablelib/xsalsa20/xsalsa20.ts","../node_modules/@taquito/utils/node_modules/base-x/src/index.js","../node_modules/@taquito/utils/node_modules/bs58/index.js","../node_modules/@taquito/utils/node_modules/bs58check/base.js","../node_modules/@taquito/utils/node_modules/bs58check/index.js","../node_modules/@toruslabs/torus.js/node_modules/bn.js/lib/bn.js","../node_modules/base-x/src/index.js","../node_modules/base64-js/index.js","../node_modules/bip39/src/_wordlists.js","../node_modules/bip39/src/index.js","../node_modules/blakejs/blake2b.js","../node_modules/blakejs/blake2s.js","../node_modules/blakejs/index.js","../node_modules/blakejs/util.js","../node_modules/bn.js/lib/bn.js","../node_modules/bowser/es5.js","../node_modules/brorand/index.js","../node_modules/bs58/index.js","../node_modules/bs58check/base.js","../node_modules/bs58check/index.js","../node_modules/buffer/index.js","../node_modules/charenc/charenc.js","../node_modules/cipher-base/index.js","../node_modules/classnames/index.js","../node_modules/create-hash/browser.js","../node_modules/create-hash/md5.js","../node_modules/crypt/crypt.js","../node_modules/deepmerge/dist/cjs.js","../node_modules/elliptic/lib/elliptic.js","../node_modules/elliptic/lib/elliptic/curve/base.js","../node_modules/elliptic/lib/elliptic/curve/edwards.js","../node_modules/elliptic/lib/elliptic/curve/index.js","../node_modules/elliptic/lib/elliptic/curve/mont.js","../node_modules/elliptic/lib/elliptic/curve/short.js","../node_modules/elliptic/lib/elliptic/curves.js","../node_modules/elliptic/lib/elliptic/ec/index.js","../node_modules/elliptic/lib/elliptic/ec/key.js","../node_modules/elliptic/lib/elliptic/ec/signature.js","../node_modules/elliptic/lib/elliptic/eddsa/index.js","../node_modules/elliptic/lib/elliptic/eddsa/key.js","../node_modules/elliptic/lib/elliptic/eddsa/signature.js","../node_modules/elliptic/lib/elliptic/precomputed/secp256k1.js","../node_modules/elliptic/lib/elliptic/utils.js","../node_modules/err-code/index.js","../node_modules/ethereum-cryptography/keccak.js","../node_modules/ethereum-cryptography/utils.js","../node_modules/events/events.js","../node_modules/fast-json-stable-stringify/index.js","../node_modules/hash-base/index.js","../node_modules/hash.js/lib/hash.js","../node_modules/hash.js/lib/hash/common.js","../node_modules/hash.js/lib/hash/hmac.js","../node_modules/hash.js/lib/hash/ripemd.js","../node_modules/hash.js/lib/hash/sha.js","../node_modules/hash.js/lib/hash/sha/1.js","../node_modules/hash.js/lib/hash/sha/224.js","../node_modules/hash.js/lib/hash/sha/256.js","../node_modules/hash.js/lib/hash/sha/384.js","../node_modules/hash.js/lib/hash/sha/512.js","../node_modules/hash.js/lib/hash/sha/common.js","../node_modules/hash.js/lib/hash/utils.js","../node_modules/hmac-drbg/lib/hmac-drbg.js","../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../node_modules/hoist-non-react-statics/node_modules/react-is/cjs/react-is.production.min.js","../node_modules/hoist-non-react-statics/node_modules/react-is/index.js","../node_modules/ieee754/index.js","../node_modules/inherits/inherits_browser.js","../node_modules/is-buffer/index.js","../node_modules/json-stable-stringify/index.js","../node_modules/jsonify/index.js","../node_modules/jsonify/lib/parse.js","../node_modules/jsonify/lib/stringify.js","../node_modules/load-script/index.js","../node_modules/lodash.isequal/index.js","../node_modules/lodash.merge/index.js","../node_modules/lodash.mergewith/index.js","../node_modules/lodash/lodash.js","../node_modules/loglevel/lib/loglevel.js","../node_modules/lru-cache/index.js","../node_modules/md5.js/index.js","../node_modules/md5/md5.js","../node_modules/memoize-one/dist/memoize-one.esm.js","../node_modules/minimalistic-assert/index.js","../node_modules/minimalistic-crypto-utils/lib/utils.js","../node_modules/node-fetch/browser.js","../node_modules/papaparse/papaparse.min.js","../node_modules/pbkdf2/browser.js","../node_modules/pbkdf2/lib/async.js","../node_modules/pbkdf2/lib/default-encoding.js","../node_modules/pbkdf2/lib/precondition.js","../node_modules/pbkdf2/lib/sync-browser.js","../node_modules/pbkdf2/lib/to-buffer.js","../node_modules/pluralize/pluralize.js","../node_modules/process/browser.js","../node_modules/promise-retry/index.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/qrcode-generator/qrcode.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react-dom/client.js","../node_modules/react-dom/index.js","../node_modules/react-easy-swipe/lib/index.js","../node_modules/react-easy-swipe/lib/react-swipe.js","../node_modules/react-fast-compare/index.js","../node_modules/react-identicons/build/index.js","../node_modules/react-is/cjs/react-is.production.min.js","../node_modules/react-is/index.js","../node_modules/react-player/lib/Player.js","../node_modules/react-player/lib/ReactPlayer.js","../node_modules/react-player/lib/index.js","../node_modules/react-player/lib/patterns.js","../node_modules/react-player/lib/players/index.js","../node_modules/react-player/lib/props.js","../node_modules/react-player/lib/utils.js","../node_modules/react-qrcode-logo/dist/index.js","../node_modules/react-query/es/core/focusManager.js","../node_modules/react-query/es/core/logger.js","../node_modules/react-query/es/core/notifyManager.js","../node_modules/react-query/es/core/onlineManager.js","../node_modules/react-query/es/core/query.js","../node_modules/react-query/es/core/queryCache.js","../node_modules/react-query/es/core/mutation.js","../node_modules/react-query/es/core/mutationCache.js","../node_modules/react-query/es/core/infiniteQueryBehavior.js","../node_modules/react-query/es/core/queryClient.js","../node_modules/react-query/es/core/retryer.js","../node_modules/react-query/es/core/subscribable.js","../node_modules/react-query/es/core/utils.js","../node_modules/react-query/es/react/reactBatchedUpdates.js","../node_modules/react-query/es/react/setBatchUpdatesFn.js","../node_modules/react-query/es/react/logger.js","../node_modules/react-query/es/react/setLogger.js","../node_modules/react-query/es/react/QueryClientProvider.js","../node_modules/react-query/es/core/queryObserver.js","../node_modules/react-query/es/react/QueryErrorResetBoundary.js","../node_modules/react-query/es/react/useQuery.js","../node_modules/react-query/es/react/useBaseQuery.js","../node_modules/react-query/es/react/utils.js","../node_modules/react-responsive-carousel/lib/js/CSSTranslate.js","../node_modules/react-responsive-carousel/lib/js/components/Carousel/animations.js","../node_modules/react-responsive-carousel/lib/js/components/Carousel/index.js","../node_modules/react-responsive-carousel/lib/js/components/Carousel/utils.js","../node_modules/react-responsive-carousel/lib/js/components/Thumbs.js","../node_modules/react-responsive-carousel/lib/js/cssClasses.js","../node_modules/react-responsive-carousel/lib/js/dimensions.js","../node_modules/react-responsive-carousel/lib/js/index.js","../node_modules/react-responsive-carousel/lib/js/shims/document.js","../node_modules/react-responsive-carousel/lib/js/shims/window.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/cjs/react.production.min.js","../node_modules/react/index.js","../node_modules/react/jsx-runtime.js","../node_modules/readable-stream/errors-browser.js","../node_modules/readable-stream/lib/_stream_duplex.js","../node_modules/readable-stream/lib/_stream_passthrough.js","../node_modules/readable-stream/lib/_stream_readable.js","../node_modules/readable-stream/lib/_stream_transform.js","../node_modules/readable-stream/lib/_stream_writable.js","../node_modules/readable-stream/lib/internal/streams/async_iterator.js","../node_modules/readable-stream/lib/internal/streams/buffer_list.js","../node_modules/readable-stream/lib/internal/streams/destroy.js","../node_modules/readable-stream/lib/internal/streams/end-of-stream.js","../node_modules/readable-stream/lib/internal/streams/from-browser.js","../node_modules/readable-stream/lib/internal/streams/pipeline.js","../node_modules/readable-stream/lib/internal/streams/state.js","../node_modules/readable-stream/lib/internal/streams/stream-browser.js","../node_modules/readable-stream/readable-browser.js","../node_modules/redux-persist/lib/storage/createWebStorage.js","../node_modules/redux-persist/lib/storage/getStorage.js","../node_modules/redux-persist/lib/storage/index.js","../node_modules/retry/index.js","../node_modules/retry/lib/retry.js","../node_modules/retry/lib/retry_operation.js","../node_modules/ripemd160/index.js","../node_modules/safe-buffer/index.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/index.js","../node_modules/semver/classes/comparator.js","../node_modules/semver/classes/range.js","../node_modules/semver/classes/semver.js","../node_modules/semver/functions/clean.js","../node_modules/semver/functions/cmp.js","../node_modules/semver/functions/coerce.js","../node_modules/semver/functions/compare-build.js","../node_modules/semver/functions/compare-loose.js","../node_modules/semver/functions/compare.js","../node_modules/semver/functions/diff.js","../node_modules/semver/functions/eq.js","../node_modules/semver/functions/gt.js","../node_modules/semver/functions/gte.js","../node_modules/semver/functions/inc.js","../node_modules/semver/functions/lt.js","../node_modules/semver/functions/lte.js","../node_modules/semver/functions/major.js","../node_modules/semver/functions/minor.js","../node_modules/semver/functions/neq.js","../node_modules/semver/functions/parse.js","../node_modules/semver/functions/patch.js","../node_modules/semver/functions/prerelease.js","../node_modules/semver/functions/rcompare.js","../node_modules/semver/functions/rsort.js","../node_modules/semver/functions/satisfies.js","../node_modules/semver/functions/sort.js","../node_modules/semver/functions/valid.js","../node_modules/semver/index.js","../node_modules/semver/internal/constants.js","../node_modules/semver/internal/debug.js","../node_modules/semver/internal/identifiers.js","../node_modules/semver/internal/parse-options.js","../node_modules/semver/internal/re.js","../node_modules/semver/ranges/gtr.js","../node_modules/semver/ranges/intersects.js","../node_modules/semver/ranges/ltr.js","../node_modules/semver/ranges/max-satisfying.js","../node_modules/semver/ranges/min-satisfying.js","../node_modules/semver/ranges/min-version.js","../node_modules/semver/ranges/outside.js","../node_modules/semver/ranges/simplify.js","../node_modules/semver/ranges/subset.js","../node_modules/semver/ranges/to-comparators.js","../node_modules/semver/ranges/valid.js","../node_modules/sha.js/hash.js","../node_modules/sha.js/index.js","../node_modules/sha.js/sha.js","../node_modules/sha.js/sha1.js","../node_modules/sha.js/sha224.js","../node_modules/sha.js/sha256.js","../node_modules/sha.js/sha384.js","../node_modules/sha.js/sha512.js","../node_modules/stream-browserify/index.js","../node_modules/string_decoder/lib/string_decoder.js","../node_modules/typedarray-to-buffer/index.js","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js","../node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js","../node_modules/use-sync-external-store/shim/index.js","../node_modules/use-sync-external-store/shim/with-selector.js","../node_modules/util-deprecate/browser.js","../node_modules/yallist/iterator.js","../node_modules/yallist/yallist.js","../node_modules/@toruslabs/broadcast-channel/node_modules/@babel/runtime/helpers/regeneratorRuntime.js","../node_modules/@toruslabs/broadcast-channel/node_modules/@babel/runtime/helpers/typeof.js","../node_modules/@toruslabs/broadcast-channel/node_modules/@babel/runtime/regenerator/index.js","../node_modules/react-query/node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/react-query/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/react-query/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../webpack/bootstrap","../webpack/runtime/compat get default export","../webpack/runtime/create fake namespace object","../webpack/runtime/define property getters","../webpack/runtime/ensure chunk","../webpack/runtime/get javascript chunk filename","../webpack/runtime/get mini-css chunk filename","../webpack/runtime/global","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/load script","../webpack/runtime/make namespace object","../webpack/runtime/node module decorator","../webpack/runtime/publicPath","../webpack/runtime/jsonp chunk loading","../webpack/runtime/nonce","../node_modules/react-error-boundary/dist/react-error-boundary.esm.js","../node_modules/redux-persist/es/constants.js","../node_modules/redux-persist/es/stateReconciler/autoMergeLevel1.js","../node_modules/redux-persist/es/createPersistoid.js","../node_modules/redux-persist/es/getStoredState.js","../node_modules/redux-persist/es/purgeStoredState.js","../node_modules/redux-persist/es/persistReducer.js","../node_modules/redux/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/redux/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/redux/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/redux/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/redux/node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../node_modules/redux/es/redux.js","../node_modules/redux-persist/es/persistStore.js","../node_modules/redux-persist/es/integration/react.js","../node_modules/@chakra-ui/system/src/forward-ref.tsx","../node_modules/@chakra-ui/shared-utils/dist/index.mjs","../node_modules/@chakra-ui/styled-system/dist/index.mjs","../node_modules/@chakra-ui/system/src/should-forward-prop.ts","../node_modules/@chakra-ui/color-mode/src/color-mode-context.ts","../node_modules/@chakra-ui/utils/dist/chunk-YTQ3XZ3T.mjs","../node_modules/@chakra-ui/utils/dist/chunk-M3TFMUOL.mjs","../node_modules/@chakra-ui/utils/dist/chunk-Y5FGD7DM.mjs","../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/@emotion/memoize/dist/emotion-memoize.esm.js","../node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js","../node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js","../node_modules/stylis/src/Utility.js","../node_modules/stylis/src/Tokenizer.js","../node_modules/stylis/src/Enum.js","../node_modules/stylis/src/Serializer.js","../node_modules/stylis/src/Parser.js","../node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js","../node_modules/stylis/src/Middleware.js","../node_modules/@emotion/weak-memoize/dist/emotion-weak-memoize.esm.js","../node_modules/@emotion/unitless/dist/emotion-unitless.esm.js","../node_modules/@emotion/serialize/dist/emotion-serialize.browser.esm.js","../node_modules/@emotion/hash/dist/emotion-hash.esm.js","../node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.browser.esm.js","../node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","../node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js","../node_modules/@chakra-ui/system/src/system.ts","../node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.esm.js","../node_modules/@emotion/styled/dist/emotion-styled.browser.esm.js","../node_modules/@chakra-ui/object-utils/dist/chunk-OLTBUDV5.mjs","../node_modules/@chakra-ui/system/src/factory.ts","../node_modules/@chakra-ui/layout/src/flex.tsx","../node_modules/@chakra-ui/layout/src/center.tsx","../node_modules/@chakra-ui/layout/src/box.tsx","../node_modules/@chakra-ui/system/src/use-theme.ts","../node_modules/@chakra-ui/system/src/hooks.ts","../node_modules/@chakra-ui/system/src/use-style-config.ts","../node_modules/@chakra-ui/layout/src/heading.tsx","../node_modules/@chakra-ui/react-context/src/index.ts","../node_modules/@chakra-ui/button/src/button-context.ts","../node_modules/@chakra-ui/button/src/button-icon.tsx","../node_modules/@emotion/react/dist/emotion-react.browser.esm.js","../node_modules/@chakra-ui/spinner/src/spinner.tsx","../node_modules/@chakra-ui/button/src/button-spinner.tsx","../node_modules/@chakra-ui/react-use-merge-refs/src/index.ts","../node_modules/@chakra-ui/button/src/button.tsx","../node_modules/@chakra-ui/button/src/use-button-type.tsx","../node_modules/@chakra-ui/layout/src/link.tsx","components/ErrorPage.tsx","providers/ReactQueryProvider.tsx","../node_modules/react-redux/es/utils/batch.js","../node_modules/react-redux/es/components/Context.js","../node_modules/react-redux/es/hooks/useReduxContext.js","../node_modules/react-redux/es/hooks/useSelector.js","../node_modules/react-redux/es/utils/useSyncExternalStore.js","../node_modules/react-redux/es/utils/Subscription.js","../node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js","../node_modules/react-redux/es/components/connect.js","../node_modules/react-redux/es/components/Provider.js","../node_modules/react-redux/es/hooks/useStore.js","../node_modules/react-redux/es/hooks/useDispatch.js","../node_modules/immer/src/utils/errors.ts","../node_modules/immer/src/utils/common.ts","../node_modules/immer/src/utils/plugins.ts","../node_modules/immer/src/core/scope.ts","../node_modules/immer/src/core/finalize.ts","../node_modules/immer/src/core/proxy.ts","../node_modules/immer/src/core/immerClass.ts","../node_modules/immer/src/core/current.ts","../node_modules/immer/src/plugins/es5.ts","../node_modules/react-redux/es/index.js","../node_modules/immer/src/immer.ts","../node_modules/immer/src/utils/env.ts","../node_modules/redux-thunk/es/index.js","../node_modules/@reduxjs/toolkit/src/devtoolsExtension.ts","../node_modules/@reduxjs/toolkit/src/isPlainObject.ts","../node_modules/@reduxjs/toolkit/src/createAction.ts","../node_modules/@reduxjs/toolkit/src/utils.ts","../node_modules/@reduxjs/toolkit/src/getDefaultMiddleware.ts","../node_modules/@reduxjs/toolkit/src/mapBuilders.ts","../node_modules/@reduxjs/toolkit/src/createSlice.ts","../node_modules/@reduxjs/toolkit/src/createReducer.ts","../node_modules/@reduxjs/toolkit/src/nanoid.ts","../node_modules/@reduxjs/toolkit/src/createAsyncThunk.ts","../node_modules/@reduxjs/toolkit/src/listenerMiddleware/index.ts","../node_modules/@reduxjs/toolkit/src/listenerMiddleware/task.ts","../node_modules/@reduxjs/toolkit/src/autoBatchEnhancer.ts","../node_modules/@reduxjs/toolkit/src/index.ts","utils/redux/slices/announcementSlice.ts","utils/redux/migrations.ts","../node_modules/bignumber.js/bignumber.mjs","utils/crypto/KDF.ts","utils/crypto/AES.ts","utils/redux/thunks/changeMnemonicPassword.ts","utils/redux/slices/accountsSlice.ts","../node_modules/zod/lib/index.mjs","types/Address.ts","types/Token.ts","types/TokenBalance.ts","utils/redux/slices/assetsSlice.ts","types/Network.ts","utils/redux/slices/batches.ts","utils/redux/slices/beaconSlice.ts","utils/hooks/contactsUtils.ts","utils/redux/slices/contactsSlice.ts","utils/redux/slices/errorsSlice.ts","utils/redux/slices/multisigsSlice.ts","utils/redux/slices/networks.ts","utils/redux/slices/tokensSlice.ts","utils/redux/reducer.ts","../node_modules/redux-persist/es/createMigrate.js","utils/redux/store.ts","../node_modules/@reduxjs/toolkit/src/configureStore.ts","providers/ReduxStore.tsx","../node_modules/@chakra-ui/css-reset/src/css-reset.tsx","../node_modules/@chakra-ui/portal/src/portal-manager.tsx","../node_modules/@chakra-ui/react-utils/dist/chunk-ITIKTQWJ.mjs","../node_modules/@chakra-ui/system/src/providers.tsx","../node_modules/@chakra-ui/color-mode/src/color-mode.utils.ts","../node_modules/@chakra-ui/color-mode/src/storage-manager.ts","../node_modules/@chakra-ui/react-use-safe-layout-effect/src/index.ts","../node_modules/@chakra-ui/color-mode/src/color-mode-provider.tsx","../node_modules/@chakra-ui/react-env/src/env.tsx","../node_modules/@chakra-ui/provider/src/chakra-provider.tsx","../node_modules/@chakra-ui/theme/src/foundations/transition.ts","../node_modules/@chakra-ui/theme/src/foundations/z-index.ts","../node_modules/@chakra-ui/theme/src/foundations/borders.ts","../node_modules/@chakra-ui/theme/src/foundations/breakpoints.ts","../node_modules/@chakra-ui/theme/src/foundations/colors.ts","../node_modules/@chakra-ui/theme/src/foundations/radius.ts","../node_modules/@chakra-ui/theme/src/foundations/shadows.ts","../node_modules/@chakra-ui/theme/src/foundations/blur.ts","../node_modules/@chakra-ui/theme/src/foundations/typography.ts","../node_modules/@chakra-ui/theme/src/foundations/spacing.ts","../node_modules/@chakra-ui/theme/src/foundations/sizes.ts","../node_modules/@chakra-ui/theme/src/foundations/index.ts","../node_modules/@chakra-ui/theme/src/components/stepper.ts","../node_modules/@chakra-ui/anatomy/src/anatomy.ts","../node_modules/@chakra-ui/anatomy/src/components.ts","../node_modules/@chakra-ui/theme-tools/src/css-var.ts","../node_modules/@chakra-ui/theme-tools/src/css-calc.ts","../node_modules/@chakra-ui/theme/src/components/switch.ts","../node_modules/@chakra-ui/theme-tools/src/component.ts","../node_modules/@chakra-ui/theme/src/components/table.ts","../node_modules/color2k/src/guard.ts","../node_modules/color2k/src/ColorError.ts","../node_modules/color2k/src/parseToRgba.ts","../node_modules/color2k/src/rgba.ts","../node_modules/color2k/src/transparentize.ts","../node_modules/@chakra-ui/theme-tools/src/color.ts","../node_modules/.pnpm/dlv@1.1.3/node_modules/dlv/index.js","../node_modules/color2k/src/toHex.ts","../node_modules/@chakra-ui/theme/src/components/tabs.ts","../node_modules/@chakra-ui/theme/src/components/badge.ts","../node_modules/@chakra-ui/theme/src/components/tag.ts","../node_modules/@chakra-ui/theme/src/components/input.ts","../node_modules/@chakra-ui/theme/src/components/textarea.ts","../node_modules/@chakra-ui/theme/src/components/tooltip.ts","../node_modules/@chakra-ui/theme/src/components/progress.ts","../node_modules/@chakra-ui/theme/src/utils/run-if-fn.ts","../node_modules/@chakra-ui/theme/src/components/checkbox.ts","../node_modules/@chakra-ui/theme/src/components/select.ts","../node_modules/@chakra-ui/theme/src/components/radio.ts","../node_modules/@chakra-ui/theme/src/components/skeleton.ts","../node_modules/@chakra-ui/theme/src/components/skip-link.ts","../node_modules/@chakra-ui/theme/src/components/slider.ts","../node_modules/@chakra-ui/theme/src/components/spinner.ts","../node_modules/@chakra-ui/theme/src/components/stat.ts","../node_modules/@chakra-ui/theme/src/components/kbd.ts","../node_modules/@chakra-ui/theme/src/components/link.ts","../node_modules/@chakra-ui/theme/src/components/list.ts","../node_modules/@chakra-ui/theme/src/components/menu.ts","../node_modules/@chakra-ui/theme/src/components/modal.ts","../node_modules/@chakra-ui/theme/src/components/number-input.ts","../node_modules/@chakra-ui/theme/src/components/pin-input.ts","../node_modules/@chakra-ui/theme/src/components/popover.ts","../node_modules/@chakra-ui/theme/src/components/drawer.ts","../node_modules/@chakra-ui/theme/src/components/editable.ts","../node_modules/@chakra-ui/theme/src/components/form-control.ts","../node_modules/@chakra-ui/theme/src/components/form-error.ts","../node_modules/@chakra-ui/theme/src/components/form-label.ts","../node_modules/@chakra-ui/theme/src/components/heading.ts","../node_modules/@chakra-ui/theme/src/components/breadcrumb.ts","../node_modules/@chakra-ui/theme/src/components/button.ts","../node_modules/@chakra-ui/theme/src/components/card.ts","../node_modules/@chakra-ui/theme/src/components/close-button.ts","../node_modules/@chakra-ui/theme/src/components/code.ts","../node_modules/@chakra-ui/theme/src/components/container.ts","../node_modules/@chakra-ui/theme/src/components/divider.ts","../node_modules/@chakra-ui/theme/src/components/accordion.ts","../node_modules/@chakra-ui/theme/src/components/alert.ts","../node_modules/@chakra-ui/theme/src/components/avatar.ts","../node_modules/@chakra-ui/theme/src/components/index.ts","../node_modules/@chakra-ui/theme/src/semantic-tokens.ts","../node_modules/@chakra-ui/theme/src/styles.ts","../node_modules/@chakra-ui/theme/src/index.ts","../node_modules/@chakra-ui/toast/src/toast.utils.ts","../node_modules/@chakra-ui/react-use-callback-ref/src/index.ts","../node_modules/@chakra-ui/react-use-update-effect/src/index.ts","../node_modules/framer-motion/dist/es/context/PresenceContext.mjs","../node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs","../node_modules/framer-motion/dist/es/context/MotionConfigContext.mjs","../node_modules/framer-motion/dist/es/context/MotionContext/index.mjs","../node_modules/framer-motion/dist/es/utils/is-browser.mjs","../node_modules/framer-motion/dist/es/utils/use-isomorphic-effect.mjs","../node_modules/framer-motion/dist/es/context/LazyContext.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/camel-to-dash.mjs","../node_modules/framer-motion/dist/es/animation/optimized-appear/data-id.mjs","../node_modules/framer-motion/dist/es/utils/GlobalConfig.mjs","../node_modules/framer-motion/dist/es/frameloop/render-step.mjs","../node_modules/framer-motion/dist/es/frameloop/batcher.mjs","../node_modules/framer-motion/dist/es/frameloop/microtask.mjs","../node_modules/framer-motion/dist/es/utils/is-ref-object.mjs","../node_modules/framer-motion/dist/es/render/utils/is-variant-label.mjs","../node_modules/framer-motion/dist/es/animation/utils/is-animation-controls.mjs","../node_modules/framer-motion/dist/es/render/utils/variant-props.mjs","../node_modules/framer-motion/dist/es/render/utils/is-controlling-variants.mjs","../node_modules/framer-motion/dist/es/context/MotionContext/create.mjs","../node_modules/framer-motion/dist/es/context/MotionContext/utils.mjs","../node_modules/framer-motion/dist/es/motion/features/definitions.mjs","../node_modules/framer-motion/dist/es/context/LayoutGroupContext.mjs","../node_modules/framer-motion/dist/es/context/SwitchLayoutGroupContext.mjs","../node_modules/framer-motion/dist/es/motion/utils/symbol.mjs","../node_modules/framer-motion/dist/es/motion/index.mjs","../node_modules/framer-motion/dist/es/motion/features/load-features.mjs","../node_modules/framer-motion/dist/es/motion/utils/use-visual-element.mjs","../node_modules/framer-motion/dist/es/motion/utils/use-motion-ref.mjs","../node_modules/framer-motion/dist/es/render/dom/motion-proxy.mjs","../node_modules/framer-motion/dist/es/render/svg/lowercase-elements.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/is-svg-component.mjs","../node_modules/framer-motion/dist/es/projection/styles/scale-correction.mjs","../node_modules/framer-motion/dist/es/render/html/utils/transform.mjs","../node_modules/framer-motion/dist/es/motion/utils/is-forced-motion-value.mjs","../node_modules/framer-motion/dist/es/value/utils/is-motion-value.mjs","../node_modules/framer-motion/dist/es/render/html/utils/build-transform.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/is-css-variable.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/get-as-type.mjs","../node_modules/framer-motion/dist/es/utils/clamp.mjs","../node_modules/framer-motion/dist/es/value/types/numbers/index.mjs","../node_modules/framer-motion/dist/es/value/types/utils.mjs","../node_modules/framer-motion/dist/es/value/types/numbers/units.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/type-int.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/number.mjs","../node_modules/framer-motion/dist/es/render/html/utils/build-styles.mjs","../node_modules/framer-motion/dist/es/render/html/utils/create-render-state.mjs","../node_modules/framer-motion/dist/es/render/html/use-props.mjs","../node_modules/framer-motion/dist/es/motion/utils/valid-prop.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/filter-props.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/transform-origin.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/path.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/build-attrs.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/create-render-state.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/is-svg-tag.mjs","../node_modules/framer-motion/dist/es/render/svg/use-props.mjs","../node_modules/framer-motion/dist/es/render/dom/use-render.mjs","../node_modules/framer-motion/dist/es/render/html/utils/render.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/camel-case-attrs.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/render.mjs","../node_modules/framer-motion/dist/es/render/html/utils/scrape-motion-values.mjs","../node_modules/framer-motion/dist/es/render/svg/utils/scrape-motion-values.mjs","../node_modules/framer-motion/dist/es/render/utils/resolve-variants.mjs","../node_modules/framer-motion/dist/es/utils/use-constant.mjs","../node_modules/framer-motion/dist/es/animation/utils/is-keyframes-target.mjs","../node_modules/framer-motion/dist/es/utils/resolve-value.mjs","../node_modules/framer-motion/dist/es/value/utils/resolve-motion-value.mjs","../node_modules/framer-motion/dist/es/motion/utils/use-visual-state.mjs","../node_modules/framer-motion/dist/es/utils/noop.mjs","../node_modules/framer-motion/dist/es/frameloop/frame.mjs","../node_modules/framer-motion/dist/es/render/svg/config-motion.mjs","../node_modules/framer-motion/dist/es/render/html/config-motion.mjs","../node_modules/framer-motion/dist/es/events/add-dom-event.mjs","../node_modules/framer-motion/dist/es/events/utils/is-primary-pointer.mjs","../node_modules/framer-motion/dist/es/events/event-info.mjs","../node_modules/framer-motion/dist/es/events/add-pointer-event.mjs","../node_modules/framer-motion/dist/es/utils/pipe.mjs","../node_modules/framer-motion/dist/es/gestures/drag/utils/lock.mjs","../node_modules/framer-motion/dist/es/motion/features/Feature.mjs","../node_modules/framer-motion/dist/es/gestures/hover.mjs","../node_modules/framer-motion/dist/es/gestures/utils/is-node-or-child.mjs","../node_modules/framer-motion/dist/es/gestures/press.mjs","../node_modules/framer-motion/dist/es/motion/features/viewport/observers.mjs","../node_modules/framer-motion/dist/es/motion/features/viewport/index.mjs","../node_modules/framer-motion/dist/es/motion/features/gestures.mjs","../node_modules/framer-motion/dist/es/gestures/focus.mjs","../node_modules/framer-motion/dist/es/utils/shallow-compare.mjs","../node_modules/framer-motion/dist/es/render/utils/resolve-dynamic-variants.mjs","../node_modules/framer-motion/dist/es/utils/errors.mjs","../node_modules/framer-motion/dist/es/utils/time-conversion.mjs","../node_modules/framer-motion/dist/es/utils/use-instant-transition-state.mjs","../node_modules/framer-motion/dist/es/easing/utils/is-bezier-definition.mjs","../node_modules/framer-motion/dist/es/animation/animators/waapi/easing.mjs","../node_modules/framer-motion/dist/es/easing/cubic-bezier.mjs","../node_modules/framer-motion/dist/es/easing/ease.mjs","../node_modules/framer-motion/dist/es/easing/utils/is-easing-array.mjs","../node_modules/framer-motion/dist/es/easing/modifiers/mirror.mjs","../node_modules/framer-motion/dist/es/easing/modifiers/reverse.mjs","../node_modules/framer-motion/dist/es/easing/circ.mjs","../node_modules/framer-motion/dist/es/easing/back.mjs","../node_modules/framer-motion/dist/es/easing/utils/map.mjs","../node_modules/framer-motion/dist/es/easing/anticipate.mjs","../node_modules/framer-motion/dist/es/value/types/color/utils.mjs","../node_modules/framer-motion/dist/es/value/types/color/rgba.mjs","../node_modules/framer-motion/dist/es/value/types/color/hex.mjs","../node_modules/framer-motion/dist/es/value/types/color/hsla.mjs","../node_modules/framer-motion/dist/es/value/types/color/index.mjs","../node_modules/framer-motion/dist/es/utils/mix.mjs","../node_modules/framer-motion/dist/es/utils/hsla-to-rgba.mjs","../node_modules/framer-motion/dist/es/utils/mix-color.mjs","../node_modules/framer-motion/dist/es/value/types/complex/index.mjs","../node_modules/framer-motion/dist/es/utils/mix-complex.mjs","../node_modules/framer-motion/dist/es/utils/progress.mjs","../node_modules/framer-motion/dist/es/utils/interpolate.mjs","../node_modules/framer-motion/dist/es/utils/offsets/default.mjs","../node_modules/framer-motion/dist/es/utils/offsets/fill.mjs","../node_modules/framer-motion/dist/es/animation/generators/keyframes.mjs","../node_modules/framer-motion/dist/es/utils/offsets/time.mjs","../node_modules/framer-motion/dist/es/utils/velocity-per-second.mjs","../node_modules/framer-motion/dist/es/animation/generators/utils/velocity.mjs","../node_modules/framer-motion/dist/es/animation/generators/spring/find.mjs","../node_modules/framer-motion/dist/es/animation/generators/spring/index.mjs","../node_modules/framer-motion/dist/es/animation/generators/inertia.mjs","../node_modules/framer-motion/dist/es/frameloop/sync-time.mjs","../node_modules/framer-motion/dist/es/animation/animators/js/driver-frameloop.mjs","../node_modules/framer-motion/dist/es/animation/generators/utils/calc-duration.mjs","../node_modules/framer-motion/dist/es/animation/animators/js/index.mjs","../node_modules/framer-motion/dist/es/animation/animators/waapi/create-accelerated-animation.mjs","../node_modules/framer-motion/dist/es/utils/memo.mjs","../node_modules/framer-motion/dist/es/animation/animators/waapi/index.mjs","../node_modules/framer-motion/dist/es/animation/animators/waapi/utils/get-final-keyframe.mjs","../node_modules/framer-motion/dist/es/animation/utils/default-transitions.mjs","../node_modules/framer-motion/dist/es/animation/utils/is-animatable.mjs","../node_modules/framer-motion/dist/es/value/types/complex/filter.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/defaults.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/animatable-none.mjs","../node_modules/framer-motion/dist/es/utils/is-zero-value-string.mjs","../node_modules/framer-motion/dist/es/animation/utils/is-none.mjs","../node_modules/framer-motion/dist/es/animation/utils/transitions.mjs","../node_modules/framer-motion/dist/es/animation/interfaces/motion-value.mjs","../node_modules/framer-motion/dist/es/animation/utils/keyframes.mjs","../node_modules/framer-motion/dist/es/animation/animators/instant.mjs","../node_modules/framer-motion/dist/es/value/use-will-change/is.mjs","../node_modules/framer-motion/dist/es/utils/is-numerical-string.mjs","../node_modules/framer-motion/dist/es/utils/array.mjs","../node_modules/framer-motion/dist/es/utils/subscription-manager.mjs","../node_modules/framer-motion/dist/es/value/index.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/test.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/dimensions.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/type-auto.mjs","../node_modules/framer-motion/dist/es/render/dom/value-types/find.mjs","../node_modules/framer-motion/dist/es/render/utils/setters.mjs","../node_modules/framer-motion/dist/es/animation/interfaces/visual-element-target.mjs","../node_modules/framer-motion/dist/es/animation/interfaces/visual-element-variant.mjs","../node_modules/framer-motion/dist/es/render/utils/animation-state.mjs","../node_modules/framer-motion/dist/es/animation/interfaces/visual-element.mjs","../node_modules/framer-motion/dist/es/motion/features/animation/exit.mjs","../node_modules/framer-motion/dist/es/motion/features/animations.mjs","../node_modules/framer-motion/dist/es/motion/features/animation/index.mjs","../node_modules/framer-motion/dist/es/utils/distance.mjs","../node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs","../node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs","../node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs","../node_modules/framer-motion/dist/es/projection/geometry/models.mjs","../node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs","../node_modules/framer-motion/dist/es/projection/geometry/conversion.mjs","../node_modules/framer-motion/dist/es/projection/utils/has-transform.mjs","../node_modules/framer-motion/dist/es/projection/geometry/delta-apply.mjs","../node_modules/framer-motion/dist/es/projection/utils/measure.mjs","../node_modules/framer-motion/dist/es/utils/get-context-window.mjs","../node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs","../node_modules/framer-motion/dist/es/gestures/pan/index.mjs","../node_modules/framer-motion/dist/es/projection/node/state.mjs","../node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs","../node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs","../node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs","../node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs","../node_modules/framer-motion/dist/es/projection/geometry/copy.mjs","../node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs","../node_modules/framer-motion/dist/es/projection/geometry/utils.mjs","../node_modules/framer-motion/dist/es/projection/shared/stack.mjs","../node_modules/framer-motion/dist/es/projection/styles/transform.mjs","../node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs","../node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs","../node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs","../node_modules/framer-motion/dist/es/debug/record.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs","../node_modules/framer-motion/dist/es/utils/delay.mjs","../node_modules/framer-motion/dist/es/animation/interfaces/single-value.mjs","../node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs","../node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs","../node_modules/framer-motion/dist/es/motion/features/drag.mjs","../node_modules/framer-motion/dist/es/gestures/drag/index.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/css-variables-conversion.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/unit-conversion.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/parse-dom-variant.mjs","../node_modules/framer-motion/dist/es/utils/reduced-motion/state.mjs","../node_modules/framer-motion/dist/es/render/store.mjs","../node_modules/framer-motion/dist/es/render/VisualElement.mjs","../node_modules/framer-motion/dist/es/utils/reduced-motion/index.mjs","../node_modules/framer-motion/dist/es/render/utils/motion-values.mjs","../node_modules/framer-motion/dist/es/render/dom/DOMVisualElement.mjs","../node_modules/framer-motion/dist/es/render/html/HTMLVisualElement.mjs","../node_modules/framer-motion/dist/es/render/svg/SVGVisualElement.mjs","../node_modules/framer-motion/dist/es/render/dom/create-visual-element.mjs","../node_modules/framer-motion/dist/es/render/dom/motion.mjs","../node_modules/framer-motion/dist/es/motion/features/layout.mjs","../node_modules/framer-motion/dist/es/render/dom/utils/create-config.mjs","../node_modules/@chakra-ui/toast/src/toast.component.tsx","../node_modules/@chakra-ui/react-use-timeout/src/index.ts","../node_modules/@chakra-ui/toast/src/toast.placement.ts","../node_modules/@chakra-ui/icon/src/icon.tsx","../node_modules/@chakra-ui/alert/src/icons.tsx","../node_modules/@chakra-ui/alert/src/alert-context.ts","../node_modules/@chakra-ui/alert/src/alert.tsx","../node_modules/@chakra-ui/alert/src/alert-icon.tsx","../node_modules/@chakra-ui/alert/src/alert-title.tsx","../node_modules/@chakra-ui/alert/src/alert-description.tsx","../node_modules/@chakra-ui/close-button/src/close-button.tsx","../node_modules/@chakra-ui/toast/src/toast.store.ts","../node_modules/@chakra-ui/toast/src/toast.tsx","../node_modules/framer-motion/dist/es/utils/use-is-mounted.mjs","../node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs","../node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs","../node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs","../node_modules/framer-motion/dist/es/utils/use-force-update.mjs","../node_modules/framer-motion/dist/es/utils/use-unmount-effect.mjs","../node_modules/@chakra-ui/portal/src/portal.tsx","../node_modules/@chakra-ui/toast/src/toast.provider.tsx","../node_modules/@chakra-ui/react/src/chakra-provider.tsx","../node_modules/@chakra-ui/color-mode/src/color-mode-script.tsx","../node_modules/@chakra-ui/theme/src/utils/is-chakra-theme.ts","../node_modules/@chakra-ui/theme-utils/dist/chunk-LIR5QAZY.mjs","style/colors.ts","style/theme/button.ts","style/theme/checkbox.ts","style/theme/drawer.ts","style/theme/list.ts","style/theme/modal.ts","style/theme/radio.ts","style/theme/tabs.ts","style/theme.ts","providers/UmamiTheme.tsx","../node_modules/@remix-run/router/history.ts","../node_modules/@remix-run/router/utils.ts","../node_modules/@remix-run/router/router.ts","../node_modules/react-router/lib/context.ts","../node_modules/react-router/lib/hooks.tsx","../node_modules/react-router/lib/components.tsx","../node_modules/react-router-dom/dom.ts","../node_modules/react-router-dom/index.tsx","../node_modules/axios/lib/helpers/bind.js","../node_modules/axios/lib/utils.js","../node_modules/axios/lib/core/AxiosError.js","../node_modules/axios/lib/helpers/toFormData.js","../node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../node_modules/axios/lib/helpers/buildURL.js","../node_modules/axios/lib/core/InterceptorManager.js","../node_modules/axios/lib/defaults/transitional.js","../node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../node_modules/axios/lib/platform/browser/classes/FormData.js","../node_modules/axios/lib/platform/browser/classes/Blob.js","../node_modules/axios/lib/platform/browser/index.js","../node_modules/axios/lib/helpers/formDataToJSON.js","../node_modules/axios/lib/defaults/index.js","../node_modules/axios/lib/helpers/toURLEncodedForm.js","../node_modules/axios/lib/helpers/parseHeaders.js","../node_modules/axios/lib/core/AxiosHeaders.js","../node_modules/axios/lib/core/transformData.js","../node_modules/axios/lib/cancel/isCancel.js","../node_modules/axios/lib/cancel/CanceledError.js","../node_modules/axios/lib/helpers/cookies.js","../node_modules/axios/lib/core/buildFullPath.js","../node_modules/axios/lib/helpers/isAbsoluteURL.js","../node_modules/axios/lib/helpers/combineURLs.js","../node_modules/axios/lib/helpers/isURLSameOrigin.js","../node_modules/axios/lib/helpers/speedometer.js","../node_modules/axios/lib/adapters/xhr.js","../node_modules/axios/lib/core/settle.js","../node_modules/axios/lib/helpers/parseProtocol.js","../node_modules/axios/lib/adapters/adapters.js","../node_modules/axios/lib/helpers/null.js","../node_modules/axios/lib/core/dispatchRequest.js","../node_modules/axios/lib/core/mergeConfig.js","../node_modules/axios/lib/env/data.js","../node_modules/axios/lib/helpers/validator.js","../node_modules/axios/lib/core/Axios.js","../node_modules/axios/lib/cancel/CancelToken.js","../node_modules/axios/lib/helpers/HttpStatusCode.js","../node_modules/axios/lib/axios.js","../node_modules/axios/lib/helpers/spread.js","../node_modules/axios/lib/helpers/isAxiosError.js","assets/icons/Accounts.tsx","assets/icons/AddAccount.tsx","assets/icons/AddContact.tsx","assets/icons/AddressBook.tsx","assets/icons/Baker.tsx","assets/icons/Batch.tsx","assets/icons/Checkmark.tsx","assets/icons/ChevronDown.tsx","assets/icons/ChevronRight.tsx","assets/icons/Coin.tsx","assets/icons/Contact.tsx","assets/icons/Contract.tsx","assets/icons/CrossedCircle.tsx","assets/icons/Diamond.tsx","assets/icons/Document.tsx","assets/icons/DoubleCheckmark.tsx","assets/icons/Download.tsx","assets/icons/EditAccount.tsx","assets/icons/Exclamation.tsx","assets/icons/ExitArrow.tsx","assets/icons/ExternalLink.tsx","assets/icons/Eye.tsx","assets/icons/EyeSlash.tsx","assets/icons/FA1.2.tsx","assets/icons/FA2.tsx","assets/icons/Feedback.tsx","assets/icons/Fetching.tsx","assets/icons/FileArrowDown.tsx","assets/icons/FileCopy.tsx","assets/icons/FlipForwardEnergy.tsx","assets/icons/Gear.tsx","assets/icons/Help.tsx","assets/icons/Hourglass.tsx","assets/icons/IncomingArrow.tsx","assets/icons/Key.tsx","../node_modules/react-icons/lib/esm/iconsManifest.js","../node_modules/react-icons/lib/esm/iconContext.js","../node_modules/react-icons/lib/esm/iconBase.js","../node_modules/react-icons/md/index.esm.js","assets/icons/Ledger.tsx","assets/icons/Link.tsx","assets/icons/Lock.tsx","assets/icons/Maintenance.tsx","assets/icons/Maki.tsx","assets/icons/Notice.tsx","assets/icons/OutgoingArrow.tsx","assets/icons/Pen.tsx","assets/icons/Plus.tsx","assets/icons/RefreshClock.tsx","assets/icons/Rotate.tsx","assets/icons/Slash.tsx","assets/icons/Sliders.tsx","assets/icons/Social.tsx","assets/icons/Tez.tsx","../node_modules/@chakra-ui/image/src/native-image.tsx","../node_modules/utilities/object-utils/src/omit.ts","../node_modules/@chakra-ui/image/src/image.tsx","../node_modules/@chakra-ui/image/src/use-image.ts","assets/icons/Token.tsx","assets/icons/Trash.tsx","assets/icons/UnknownContact.tsx","assets/icons/USB.tsx","assets/icons/Verified.tsx","assets/icons/WalletPlus.tsx","assets/icons/Warning.tsx","assets/icons/XMark.tsx","utils/redux/hooks.ts","components/AnnouncementBanner.tsx","../node_modules/@chakra-ui/hooks/src/use-id.ts","../node_modules/@chakra-ui/utils/dist/chunk-O3SWHQEE.mjs","../node_modules/@chakra-ui/hooks/src/use-safe-layout-effect.ts","../node_modules/@chakra-ui/hooks/src/use-callback-ref.ts","../node_modules/@chakra-ui/hooks/src/use-disclosure.ts","../node_modules/@chakra-ui/hooks/src/use-controllable.ts","../node_modules/@chakra-ui/modal/src/modal-manager.ts","../node_modules/aria-hidden/dist/es2015/index.js","../node_modules/@chakra-ui/modal/src/use-modal.ts","../node_modules/@chakra-ui/modal/src/modal.tsx","../node_modules/@chakra-ui/transition/src/transition-utils.ts","../node_modules/@chakra-ui/transition/src/fade.tsx","../node_modules/@chakra-ui/modal/src/modal-overlay.tsx","../node_modules/tslib/tslib.es6.mjs","../node_modules/react-remove-scroll-bar/dist/es2015/constants.js","../node_modules/use-callback-ref/dist/es2015/useMergeRef.js","../node_modules/use-callback-ref/dist/es2015/useRef.js","../node_modules/use-callback-ref/dist/es2015/assignRef.js","../node_modules/use-sidecar/dist/es2015/medium.js","../node_modules/react-remove-scroll/dist/es2015/medium.js","../node_modules/react-remove-scroll/dist/es2015/UI.js","../node_modules/use-sidecar/dist/es2015/exports.js","../node_modules/get-nonce/dist/es2015/index.js","../node_modules/react-style-singleton/dist/es2015/singleton.js","../node_modules/react-style-singleton/dist/es2015/component.js","../node_modules/react-style-singleton/dist/es2015/hook.js","../node_modules/react-remove-scroll-bar/dist/es2015/utils.js","../node_modules/react-remove-scroll-bar/dist/es2015/component.js","../node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js","../node_modules/react-remove-scroll/dist/es2015/handleScroll.js","../node_modules/react-remove-scroll/dist/es2015/SideEffect.js","../node_modules/react-remove-scroll/dist/es2015/sidecar.js","../node_modules/react-remove-scroll/dist/es2015/Combination.js","components/DynamicModal.tsx","../../../../src/utils/keys.ts","../../../../src/utils/exposed-promise.ts","../../../../src/utils/crypto.ts","../../../../src/utils/generate-uuid.ts","../../../../../src/types/beacon/BeaconMessageType.ts","../../../../../src/types/beacon/PermissionScope.ts","../../../../../src/types/beacon/NetworkType.ts","../../../../../src/types/tezos/OperationTypes.ts","../../../../src/types/Origin.ts","../../../../src/types/ExtensionMessageTarget.ts","../../../../src/types/BeaconErrorType.ts","../../../../../src/types/transport/TransportStatus.ts","../../../../../src/types/transport/TransportType.ts","../../../../../src/types/storage/StorageKey.ts","../../../../../src/types/storage/Storage.ts","../../../../../src/types/storage/StorageKeyReturnDefaults.ts","../../../../src/types/P2PPairingRequest.ts","../../../../../src/types/beacon/SigningType.ts","../../../../src/types/ColorMode.ts","../../../../src/types/Regions.ts","../../../../src/types/P2PPairingResponse.ts","../../../../src/types/PostMessagePairingRequest.ts","../../../../src/types/WalletConnectPairingRequest.ts","../../../src/constants.ts","../../../src/MockWindow.ts","../../../src/MockAnalytics.ts","../../../../../src/clients/beacon-client/BeaconClient.ts","../../../../src/managers/StorageManager.ts","../../../../src/utils/get-account-identifier.ts","../../../../src/managers/PermissionValidator.ts","../../../../src/managers/AccountManager.ts","../../../../src/utils/get-sender-id.ts","../../../src/debug.ts","../../../../src/utils/Logger.ts","../../../../../src/clients/client/Client.ts","../../../../src/transports/Transport.ts","../../../../src/storage/LocalStorage.ts","../../../../src/storage/getStorage.ts","../../../src/Serializer.ts","../../../../src/managers/AppMetadataManager.ts","../../../../src/managers/PermissionManager.ts","../../../../src/managers/PeerManager.ts","../../../../../src/transports/clients/CommunicationClient.ts","../../../../src/storage/IndexedDBStorage.ts","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/bind.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/utils.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/AxiosError.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/toFormData.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/buildURL.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/InterceptorManager.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/defaults/transitional.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/platform/browser/index.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/platform/browser/classes/FormData.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/platform/browser/classes/Blob.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/platform/common/utils.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/platform/index.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/formDataToJSON.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/defaults/index.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/toURLEncodedForm.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/parseHeaders.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/AxiosHeaders.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/transformData.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/cancel/isCancel.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/cancel/CanceledError.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/cookies.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/buildFullPath.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/isAbsoluteURL.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/combineURLs.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/isURLSameOrigin.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/speedometer.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/adapters/xhr.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/settle.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/parseProtocol.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/adapters/adapters.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/null.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/dispatchRequest.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/mergeConfig.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/env/data.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/validator.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/core/Axios.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/cancel/CancelToken.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/HttpStatusCode.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/axios.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/spread.js","../node_modules/@airgap/beacon-transport-matrix/node_modules/axios/lib/helpers/isAxiosError.js","../../../../../src/matrix-client/models/MatrixMessage.ts","../../../../../src/matrix-client/utils/events.ts","../../../../../src/matrix-client/models/MatrixRoom.ts","../../../../src/matrix-client/MatrixClientStore.ts","../../../../src/matrix-client/MatrixHttpClient.ts","../../../../../src/matrix-client/services/MatrixRoomService.ts","../../../../../src/matrix-client/services/MatrixUserService.ts","../../../../../src/matrix-client/services/MatrixEventService.ts","../../../../src/matrix-client/EventEmitter.ts","../../../../../src/matrix-client/models/MatrixClientEvent.ts","../../../../src/matrix-client/MatrixClientEventEmitter.ts","../../../../src/matrix-client/MatrixClient.ts","../../../../src/communication-client/P2PCommunicationClient.ts","../../../src/P2PTransport.ts","../../../../src/transports/WalletP2PTransport.ts","../../../../src/interceptors/IncomingRequestInterceptor.ts","../../../../src/interceptors/OutgoingResponseInterceptor.ts","../../../src/index.ts","../../../../src/client/WalletClient.ts","../node_modules/@chakra-ui/toast/src/use-toast.tsx","../node_modules/@chakra-ui/transition/src/slide-fade.tsx","../node_modules/@chakra-ui/transition/src/scale-fade.tsx","../node_modules/@chakra-ui/modal/src/modal-transition.tsx","../node_modules/react-focus-lock/node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/focus-lock/dist/es2015/constants.js","../node_modules/react-focus-lock/dist/es2015/FocusGuard.js","../node_modules/react-focus-lock/dist/es2015/medium.js","../node_modules/react-focus-lock/dist/es2015/Lock.js","../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/react-clientside-effect/lib/index.es.js","../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../node_modules/react-clientside-effect/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/focus-lock/dist/es2015/utils/array.js","../node_modules/focus-lock/dist/es2015/utils/is.js","../node_modules/focus-lock/dist/es2015/utils/tabOrder.js","../node_modules/focus-lock/dist/es2015/utils/tabUtils.js","../node_modules/focus-lock/dist/es2015/utils/tabbables.js","../node_modules/focus-lock/dist/es2015/utils/DOMutils.js","../node_modules/focus-lock/dist/es2015/utils/getActiveElement.js","../node_modules/focus-lock/dist/es2015/utils/safe.js","../node_modules/focus-lock/dist/es2015/utils/all-affected.js","../node_modules/focus-lock/dist/es2015/focusInside.js","../node_modules/focus-lock/dist/es2015/utils/correctFocus.js","../node_modules/focus-lock/dist/es2015/utils/firstFocus.js","../node_modules/focus-lock/dist/es2015/solver.js","../node_modules/focus-lock/dist/es2015/utils/auto-focus.js","../node_modules/focus-lock/dist/es2015/utils/parenting.js","../node_modules/focus-lock/dist/es2015/focusSolver.js","../node_modules/focus-lock/dist/es2015/moveFocusInside.js","../node_modules/focus-lock/dist/es2015/commands.js","../node_modules/react-focus-lock/dist/es2015/util.js","../node_modules/react-focus-lock/dist/es2015/Trap.js","../node_modules/focus-lock/dist/es2015/focusIsHidden.js","../node_modules/focus-lock/dist/es2015/focusables.js","../node_modules/react-focus-lock/dist/es2015/Combination.js","../node_modules/react-focus-lock/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/react-focus-lock/dist/es2015/index.js","../node_modules/@chakra-ui/dom-utils/dist/chunk-3XANSPY5.mjs","../node_modules/@chakra-ui/dom-utils/dist/chunk-ROURZMX4.mjs","../node_modules/@chakra-ui/dom-utils/dist/index.mjs","../node_modules/@chakra-ui/focus-lock/src/focus-lock.tsx","../node_modules/@chakra-ui/modal/src/modal-focus.tsx","../node_modules/@chakra-ui/modal/src/modal-content.tsx","../node_modules/@chakra-ui/modal/src/modal-header.tsx","../node_modules/@chakra-ui/object-utils/dist/chunk-R3DH46PF.mjs","../node_modules/@chakra-ui/layout/src/text.tsx","../node_modules/@chakra-ui/modal/src/modal-close-button.tsx","../node_modules/@chakra-ui/modal/src/modal-body.tsx","../node_modules/@chakra-ui/breakpoint-utils/dist/chunk-G72KV6MB.mjs","../node_modules/@chakra-ui/layout/src/aspect-ratio.tsx","../node_modules/@chakra-ui/descendant/src/utils.ts","../node_modules/@chakra-ui/descendant/src/descendant.ts","../node_modules/@chakra-ui/descendant/src/use-descendant.ts","../node_modules/@chakra-ui/accordion/src/accordion-context.ts","../node_modules/@chakra-ui/react-use-controllable-state/src/index.ts","../node_modules/@chakra-ui/accordion/src/use-accordion.ts","../node_modules/@chakra-ui/accordion/src/accordion.tsx","../node_modules/@chakra-ui/accordion/src/accordion-item.tsx","../node_modules/@chakra-ui/accordion/src/accordion-button.tsx","../node_modules/@chakra-ui/accordion/src/accordion-icon.tsx","../node_modules/@chakra-ui/transition/src/collapse.tsx","../node_modules/@chakra-ui/accordion/src/accordion-panel.tsx","../node_modules/@chakra-ui/form-control/src/form-control.tsx","../node_modules/@chakra-ui/form-control/src/form-error.tsx","../node_modules/@chakra-ui/modal/src/modal-footer.tsx","../node_modules/react-hook-form/src/utils/isCheckBoxInput.ts","../node_modules/react-hook-form/src/utils/isDateObject.ts","../node_modules/react-hook-form/src/utils/isNullOrUndefined.ts","../node_modules/react-hook-form/src/utils/isObject.ts","../node_modules/react-hook-form/src/logic/getEventValue.ts","../node_modules/react-hook-form/src/logic/isNameInFieldArray.ts","../node_modules/react-hook-form/src/logic/getNodeParentName.ts","../node_modules/react-hook-form/src/utils/isPlainObject.ts","../node_modules/react-hook-form/src/utils/isWeb.ts","../node_modules/react-hook-form/src/utils/cloneObject.ts","../node_modules/react-hook-form/src/utils/compact.ts","../node_modules/react-hook-form/src/utils/isUndefined.ts","../node_modules/react-hook-form/src/utils/get.ts","../node_modules/react-hook-form/src/utils/isBoolean.ts","../node_modules/react-hook-form/src/constants.ts","../node_modules/react-hook-form/src/useFormContext.tsx","../node_modules/react-hook-form/src/logic/getProxyFormState.ts","../node_modules/react-hook-form/src/utils/isEmptyObject.ts","../node_modules/react-hook-form/src/logic/shouldRenderFormState.ts","../node_modules/react-hook-form/src/utils/convertToArrayPayload.ts","../node_modules/react-hook-form/src/useSubscribe.ts","../node_modules/react-hook-form/src/utils/isString.ts","../node_modules/react-hook-form/src/logic/generateWatchOutput.ts","../node_modules/react-hook-form/src/utils/isKey.ts","../node_modules/react-hook-form/src/utils/stringToPath.ts","../node_modules/react-hook-form/src/utils/set.ts","../node_modules/react-hook-form/src/logic/appendErrors.ts","../node_modules/react-hook-form/src/logic/focusFieldBy.ts","../node_modules/react-hook-form/src/logic/generateId.ts","../node_modules/react-hook-form/src/logic/getFocusFieldName.ts","../node_modules/react-hook-form/src/logic/getValidationModes.ts","../node_modules/react-hook-form/src/logic/isWatched.ts","../node_modules/react-hook-form/src/logic/updateFieldArrayRootError.ts","../node_modules/react-hook-form/src/utils/isFileInput.ts","../node_modules/react-hook-form/src/utils/isFunction.ts","../node_modules/react-hook-form/src/utils/isHTMLElement.ts","../node_modules/react-hook-form/src/utils/isMessage.ts","../node_modules/react-hook-form/src/utils/isRadioInput.ts","../node_modules/react-hook-form/src/utils/isRegex.ts","../node_modules/react-hook-form/src/logic/getCheckboxValue.ts","../node_modules/react-hook-form/src/logic/getRadioValue.ts","../node_modules/react-hook-form/src/logic/getValidateError.ts","../node_modules/react-hook-form/src/logic/getValueAndMessage.ts","../node_modules/react-hook-form/src/logic/validateField.ts","../node_modules/react-hook-form/src/utils/append.ts","../node_modules/react-hook-form/src/utils/fillEmptyArray.ts","../node_modules/react-hook-form/src/utils/insert.ts","../node_modules/react-hook-form/src/utils/move.ts","../node_modules/react-hook-form/src/utils/prepend.ts","../node_modules/react-hook-form/src/utils/remove.ts","../node_modules/react-hook-form/src/utils/swap.ts","../node_modules/react-hook-form/src/utils/unset.ts","../node_modules/react-hook-form/src/utils/update.ts","../node_modules/react-hook-form/src/utils/createSubject.ts","../node_modules/react-hook-form/src/utils/isPrimitive.ts","../node_modules/react-hook-form/src/utils/deepEqual.ts","../node_modules/react-hook-form/src/utils/isMultipleSelect.ts","../node_modules/react-hook-form/src/utils/isRadioOrCheckbox.ts","../node_modules/react-hook-form/src/utils/live.ts","../node_modules/react-hook-form/src/utils/objectHasFunction.ts","../node_modules/react-hook-form/src/logic/getDirtyFields.ts","../node_modules/react-hook-form/src/logic/getFieldValueAs.ts","../node_modules/react-hook-form/src/logic/getFieldValue.ts","../node_modules/react-hook-form/src/logic/getResolverOptions.ts","../node_modules/react-hook-form/src/logic/getRuleValue.ts","../node_modules/react-hook-form/src/logic/hasValidation.ts","../node_modules/react-hook-form/src/logic/schemaErrorLookup.ts","../node_modules/react-hook-form/src/logic/skipValidation.ts","../node_modules/react-hook-form/src/logic/unsetEmptyArray.ts","../node_modules/react-hook-form/src/logic/createFormControl.ts","../node_modules/react-hook-form/src/useForm.ts","../node_modules/@chakra-ui/card/src/card-context.tsx","../node_modules/@chakra-ui/card/src/card.tsx","../node_modules/@chakra-ui/card/src/card-body.tsx","components/AccountDrawer/JsValueWrap.tsx","../node_modules/@chakra-ui/form-control/src/form-label.tsx","../node_modules/@chakra-ui/react-children-utils/dist/index.mjs","../node_modules/@chakra-ui/input/src/input-group.tsx","../node_modules/@chakra-ui/form-control/src/use-form-control.ts","../node_modules/@chakra-ui/input/src/input.tsx","../node_modules/@chakra-ui/input/src/input-element.tsx","../node_modules/@chakra-ui/layout/src/list.tsx","../node_modules/@chakra-ui/tooltip/src/tooltip.transition.tsx","../node_modules/@chakra-ui/dom-utils/dist/chunk-4WEUWBTD.mjs","../node_modules/@chakra-ui/popper/src/utils.ts","../node_modules/@chakra-ui/popper/src/modifiers.ts","../node_modules/@chakra-ui/popper/src/popper.placement.ts","../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../node_modules/@popperjs/core/lib/utils/math.js","../node_modules/@popperjs/core/lib/utils/userAgent.js","../node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js","../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../node_modules/@popperjs/core/lib/enums.js","../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../node_modules/@popperjs/core/lib/utils/debounce.js","../node_modules/@popperjs/core/lib/createPopper.js","../node_modules/@popperjs/core/lib/utils/mergeByName.js","../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../node_modules/@popperjs/core/lib/utils/getVariation.js","../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../node_modules/@popperjs/core/lib/modifiers/offset.js","../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../node_modules/@popperjs/core/lib/dom-utils/contains.js","../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../node_modules/@popperjs/core/lib/modifiers/flip.js","../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../node_modules/@popperjs/core/lib/utils/within.js","../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../node_modules/@popperjs/core/lib/modifiers/arrow.js","../node_modules/@popperjs/core/lib/modifiers/hide.js","../node_modules/@popperjs/core/lib/popper.js","../node_modules/@chakra-ui/popper/src/use-popper.ts","../node_modules/@chakra-ui/react-use-disclosure/src/index.ts","../node_modules/@chakra-ui/react-use-event-listener/src/index.ts","../node_modules/@chakra-ui/tooltip/src/use-tooltip.ts","../node_modules/@chakra-ui/tooltip/src/tooltip.tsx","../node_modules/utilities/object-utils/src/pick.ts","components/Identicon.tsx","components/AddressTile/AddressTileIcon.tsx","utils/account/derivationPathUtils.ts","utils/account/makeMnemonicAccount.ts","utils/hooks/contactsHooks.ts","utils/hooks/getAccountDataHooks.ts","utils/hooks/multisigHooks.ts","../node_modules/@ledgerhq/errors/src/helpers.ts","../node_modules/@ledgerhq/errors/src/index.ts","../node_modules/@ledgerhq/logs/src/index.ts","../node_modules/@ledgerhq/hw-transport/src/Transport.ts","../node_modules/@ledgerhq/devices/src/hid-framing.ts","../node_modules/@ledgerhq/devices/src/index.ts","../node_modules/@ledgerhq/hw-transport-webusb/src/webusb.ts","../node_modules/@ledgerhq/hw-transport-webusb/src/TransportWebUSB.ts","../node_modules/rxjs/src/internal/util/isFunction.ts","../node_modules/rxjs/src/internal/util/createErrorClass.ts","../node_modules/rxjs/src/internal/util/UnsubscriptionError.ts","../node_modules/rxjs/src/internal/util/arrRemove.ts","../node_modules/rxjs/src/internal/Subscription.ts","../node_modules/rxjs/src/internal/config.ts","../node_modules/rxjs/src/internal/scheduler/timeoutProvider.ts","../node_modules/rxjs/src/internal/util/reportUnhandledError.ts","../node_modules/rxjs/src/internal/util/noop.ts","../node_modules/rxjs/src/internal/NotificationFactories.ts","../node_modules/rxjs/src/internal/util/errorContext.ts","../node_modules/rxjs/src/internal/Subscriber.ts","../node_modules/rxjs/src/internal/symbol/observable.ts","../node_modules/rxjs/src/internal/util/identity.ts","../node_modules/rxjs/src/internal/util/pipe.ts","../node_modules/rxjs/src/internal/Observable.ts","../node_modules/rxjs/src/internal/util/ObjectUnsubscribedError.ts","../node_modules/rxjs/src/internal/Subject.ts","../node_modules/rxjs/src/internal/scheduler/dateTimestampProvider.ts","../node_modules/rxjs/src/internal/ReplaySubject.ts","../node_modules/rxjs/src/internal/BehaviorSubject.ts","../node_modules/rxjs/src/internal/observable/throwError.ts","../node_modules/rxjs/src/internal/util/isArrayLike.ts","../node_modules/rxjs/src/internal/util/isPromise.ts","../node_modules/rxjs/src/internal/util/isInteropObservable.ts","../node_modules/rxjs/src/internal/util/isAsyncIterable.ts","../node_modules/rxjs/src/internal/util/throwUnobservableError.ts","../node_modules/rxjs/src/internal/symbol/iterator.ts","../node_modules/rxjs/src/internal/util/isIterable.ts","../node_modules/rxjs/src/internal/util/isReadableStreamLike.ts","../node_modules/rxjs/src/internal/observable/innerFrom.ts","../node_modules/rxjs/src/internal/observable/defer.ts","../node_modules/rxjs/src/internal/observable/empty.ts","../node_modules/rxjs/src/internal/observable/range.ts","../node_modules/rxjs/src/internal/util/isScheduler.ts","../node_modules/rxjs/src/internal/util/args.ts","../node_modules/rxjs/src/internal/util/executeSchedule.ts","../node_modules/rxjs/src/internal/util/lift.ts","../node_modules/rxjs/src/internal/operators/OperatorSubscriber.ts","../node_modules/rxjs/src/internal/operators/observeOn.ts","../node_modules/rxjs/src/internal/operators/subscribeOn.ts","../node_modules/rxjs/src/internal/scheduled/scheduleAsyncIterable.ts","../node_modules/rxjs/src/internal/scheduled/scheduled.ts","../node_modules/rxjs/src/internal/scheduled/scheduleObservable.ts","../node_modules/rxjs/src/internal/scheduled/scheduleArray.ts","../node_modules/rxjs/src/internal/scheduled/schedulePromise.ts","../node_modules/rxjs/src/internal/scheduled/scheduleIterable.ts","../node_modules/rxjs/src/internal/scheduled/scheduleReadableStreamLike.ts","../node_modules/rxjs/src/internal/observable/from.ts","../node_modules/rxjs/src/internal/observable/of.ts","../node_modules/rxjs/src/internal/util/argsArgArrayOrObject.ts","../node_modules/rxjs/src/internal/operators/map.ts","../node_modules/rxjs/src/internal/util/mapOneOrManyArgs.ts","../node_modules/rxjs/src/internal/observable/combineLatest.ts","../node_modules/rxjs/src/internal/util/createObject.ts","../node_modules/rxjs/src/internal/operators/mergeMap.ts","../node_modules/rxjs/src/internal/operators/mergeInternals.ts","../node_modules/rxjs/src/internal/operators/concatAll.ts","../node_modules/rxjs/src/internal/operators/mergeAll.ts","../node_modules/rxjs/src/internal/observable/concat.ts","../node_modules/rxjs/src/internal/observable/never.ts","../node_modules/rxjs/src/internal/scheduler/Action.ts","../node_modules/rxjs/src/internal/scheduler/intervalProvider.ts","../node_modules/rxjs/src/internal/scheduler/AsyncAction.ts","../node_modules/rxjs/src/internal/Scheduler.ts","../node_modules/rxjs/src/internal/scheduler/AsyncScheduler.ts","../node_modules/rxjs/src/internal/scheduler/async.ts","../node_modules/rxjs/src/internal/util/isDate.ts","../node_modules/rxjs/src/internal/observable/timer.ts","../node_modules/rxjs/src/internal/operators/switchMap.ts","../node_modules/rxjs/src/internal/operators/timeout.ts","../node_modules/rxjs/src/internal/operators/concatMap.ts","../node_modules/rxjs/src/internal/operators/endWith.ts","../node_modules/rxjs/src/internal/operators/tap.ts","../node_modules/rxjs/src/internal/operators/share.ts","../node_modules/rxjs/src/internal/operators/shareReplay.ts","../node_modules/rxjs/src/internal/operators/filter.ts","../node_modules/rxjs/src/internal/util/EmptyError.ts","../node_modules/rxjs/src/internal/operators/throwIfEmpty.ts","../node_modules/rxjs/src/internal/operators/first.ts","../node_modules/rxjs/src/internal/operators/take.ts","../node_modules/rxjs/src/internal/operators/defaultIfEmpty.ts","../node_modules/rxjs/src/internal/operators/catchError.ts","../node_modules/rxjs/src/internal/operators/distinctUntilChanged.ts","../node_modules/rxjs/src/internal/operators/retry.ts","../node_modules/rxjs/src/internal/operators/pluck.ts","../node_modules/rxjs/src/internal/operators/refCount.ts","../node_modules/rxjs/src/internal/observable/ConnectableObservable.ts","../node_modules/rxjs/src/internal/operators/connect.ts","../node_modules/rxjs/src/internal/observable/fromSubscribable.ts","../node_modules/rxjs/src/internal/operators/publish.ts","../node_modules/rxjs/src/internal/operators/multicast.ts","../node_modules/rxjs/src/internal/operators/takeWhile.ts","../node_modules/rxjs/src/internal/operators/startWith.ts","../node_modules/rxjs/src/internal/operators/takeUntil.ts","../node_modules/rxjs/src/internal/operators/distinctUntilKeyChanged.ts","utils/tezos/fakeSigner.ts","multisig/multisigUtils.ts","types/Operation.ts","utils/tezos/helpers.ts","utils/tezos/estimate.ts","../node_modules/@chriscdn/promise-semaphore/src/index.ts","../node_modules/@tzkt/oazapfts/src/runtime/util.ts","../node_modules/@tzkt/oazapfts/src/runtime/query.ts","../node_modules/@tzkt/oazapfts/src/index.ts","../node_modules/@tzkt/sdk-api/src/queryParamParsers.ts","../node_modules/@tzkt/sdk-api/src/index.ts","../node_modules/@tzkt/oazapfts/src/runtime/index.ts","utils/tezos/consts.ts","utils/tezos/fetch.ts","utils/tezos/execute.ts","utils/mnemonic.ts","utils/hooks/accountUtils.ts","utils/hooks/networkHooks.ts","utils/hooks/tokensHooks.ts","utils/format.ts","utils/hooks/assetsHooks.ts","components/AddressTile/useAddressKind.ts","components/PrettyNumber.tsx","components/AccountBalance.tsx","components/AddressTile/AddressTile.tsx","components/AddressAutocomplete/Suggestions.tsx","components/AddressAutocomplete/AddressAutocomplete.tsx","utils/beacon/BeaconNotification/panels/PermissionRequestPanel.tsx","utils/hooks/beaconHooks.ts","../node_modules/@chakra-ui/button/src/icon-button.tsx","../node_modules/react-icons/fc/index.esm.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@toruslabs/http-helpers/src/index.ts","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/util.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/methods/native.js","../node_modules/oblivious-set/src/index.ts","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/options.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/methods/indexed-db.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/methods/localstorage.js","../node_modules/@toruslabs/broadcast-channel/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../node_modules/engine.io-parser/build/esm/commons.js","../node_modules/engine.io-parser/build/esm/encodePacket.browser.js","../node_modules/engine.io-parser/build/esm/contrib/base64-arraybuffer.js","../node_modules/engine.io-parser/build/esm/decodePacket.browser.js","../node_modules/engine.io-parser/build/esm/index.js","../node_modules/@socket.io/component-emitter/index.mjs","../node_modules/engine.io-client/build/esm/globalThis.browser.js","../node_modules/engine.io-client/build/esm/util.js","../node_modules/engine.io-client/build/esm/transport.js","../node_modules/engine.io-client/build/esm/contrib/parseqs.js","../node_modules/engine.io-client/build/esm/contrib/yeast.js","../node_modules/engine.io-client/build/esm/contrib/has-cors.js","../node_modules/engine.io-client/build/esm/transports/xmlhttprequest.browser.js","../node_modules/engine.io-client/build/esm/transports/polling.js","../node_modules/engine.io-client/build/esm/transports/websocket-constructor.browser.js","../node_modules/engine.io-client/build/esm/transports/websocket.js","../node_modules/engine.io-client/build/esm/transports/webtransport.js","../node_modules/engine.io-client/build/esm/transports/index.js","../node_modules/engine.io-client/build/esm/contrib/parseuri.js","../node_modules/engine.io-client/build/esm/socket.js","../node_modules/engine.io-client/build/esm/index.js","../node_modules/socket.io-parser/build/esm/is-binary.js","../node_modules/socket.io-parser/build/esm/binary.js","../node_modules/socket.io-parser/build/esm/index.js","../node_modules/socket.io-client/build/esm/on.js","../node_modules/socket.io-client/build/esm/socket.js","../node_modules/socket.io-client/build/esm/contrib/backo2.js","../node_modules/socket.io-client/build/esm/manager.js","../node_modules/socket.io-client/build/esm/index.js","../node_modules/socket.io-client/build/esm/url.js","../node_modules/@toruslabs/eccrypto/src/index.ts","../node_modules/@toruslabs/broadcast-channel/node_modules/@toruslabs/http-helpers/src/index.ts","../node_modules/@toruslabs/broadcast-channel/node_modules/@toruslabs/metadata-helpers/src/utils.ts","../node_modules/@toruslabs/broadcast-channel/node_modules/@toruslabs/metadata-helpers/src/webAuthnShareResolver.ts","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/methods/server.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/methods/simulate.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/method-chooser.js","../node_modules/@toruslabs/broadcast-channel/dist/esbrowser/broadcast-channel.js","../node_modules/jwt-decode/lib/atob.js","../node_modules/jwt-decode/lib/index.js","../node_modules/jwt-decode/lib/base64_url_decode.js","../node_modules/@toruslabs/constants/src/constants.ts","../node_modules/@toruslabs/fnd-base/src/endpoints.ts","../node_modules/@toruslabs/fnd-base/src/legacyMainnetConfig.ts","../node_modules/@toruslabs/fnd-base/src/pubKeys.ts","../node_modules/@toruslabs/fnd-base/src/sapphireNetworkConfig.ts","../node_modules/@toruslabs/fetch-node-details/src/nodeDetailManager.ts","../node_modules/@toruslabs/fnd-base/src/utils.ts","../node_modules/@toruslabs/torus.js/src/constants.ts","../node_modules/@toruslabs/torus.js/src/helpers/common.ts","../node_modules/@toruslabs/torus.js/src/helpers/errorUtils.ts","../node_modules/@toruslabs/torus.js/src/loglevel.ts","../node_modules/@toruslabs/torus.js/src/helpers/keyUtils.ts","../node_modules/@toruslabs/torus.js/src/Point.ts","../node_modules/@toruslabs/torus.js/src/Share.ts","../node_modules/@toruslabs/torus.js/src/Polynomial.ts","../node_modules/@toruslabs/torus.js/src/helpers/langrangeInterpolatePoly.ts","../node_modules/@toruslabs/torus.js/src/helpers/metadataUtils.ts","../node_modules/@toruslabs/torus.js/src/config.ts","../node_modules/@toruslabs/torus.js/src/some.ts","../node_modules/@toruslabs/torus.js/src/helpers/nodeUtils.ts","../node_modules/@toruslabs/torus.js/src/torus.ts","../node_modules/@toruslabs/metadata-helpers/src/utils.ts","../node_modules/@toruslabs/metadata-helpers/src/webAuthnShareResolver.ts","../node_modules/@toruslabs/customauth/src/utils/enums.ts","../node_modules/@toruslabs/customauth/src/utils/loglevel.ts","../node_modules/@toruslabs/customauth/src/utils/helpers.ts","../node_modules/@toruslabs/customauth/src/utils/PopupHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/AbstractLoginHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/DiscordHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/FacebookHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/GoogleHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/JwtHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/MockLoginHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/PasswordlessHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/RedditHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/TwitchHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/WebAuthnHandler.ts","../node_modules/@toruslabs/customauth/src/handlers/HandlerFactory.ts","../node_modules/@toruslabs/customauth/src/sentry.ts","../node_modules/@toruslabs/customauth/src/utils/StorageHelper.ts","../node_modules/@toruslabs/customauth/src/login.ts","../node_modules/@toruslabs/customauth/src/registerServiceWorker.ts","utils/withTimeout.ts","GoogleAuth/getGoogleCredentials.ts","utils/getErrorContext.ts","utils/hooks/useAsyncActionHandler.ts","GoogleAuth/GoogleAuth.tsx","components/FormErrorMessage.tsx","components/PasswordInput.tsx","components/SendFlow/SignButton.tsx","utils/beacon/BeaconNotification/panels/SignPayloadRequestPanel.tsx","assets/icons/WindowLink.tsx","components/SendFlow/SuccessStep.tsx","components/SendFlow/Beacon/useSignWithBeacon.tsx","components/AssetTiles/TezTile.tsx","components/SendFlow/SignPageFee.tsx","components/SendFlow/FormPageHeader.tsx","../node_modules/@chakra-ui/icon/src/create-icon.tsx","../node_modules/@chakra-ui/icons/src/ArrowBack.tsx","components/ModalBackButton.tsx","components/SendFlow/SignPageHeader.tsx","components/SendFlow/Beacon/ContractCallSignPage.tsx","components/SendFlow/Beacon/DelegationSignPage.tsx","components/SendFlow/Beacon/TezSignPage.tsx","components/SendFlow/Beacon/UndelegationSignPage.tsx","components/SendFlow/Beacon/BeaconSignPage.tsx","utils/beacon/BeaconNotification/BeaconRequestNotification.tsx","utils/beacon/types.ts","utils/beacon/beacon.tsx","utils/multisig/fetch.ts","utils/multisig/helpers.ts","utils/useAssetsPolling.ts","utils/useDeeplinkHandler.ts","GoogleAuth/parseTorusRedirectParams.ts","../node_modules/@chakra-ui/table/src/table-container.tsx","../node_modules/@chakra-ui/table/src/table.tsx","../node_modules/@chakra-ui/table/src/tbody.tsx","../node_modules/@chakra-ui/table/src/tr.tsx","../node_modules/@chakra-ui/table/src/td.tsx","../node_modules/react-icons/bs/index.esm.js","../node_modules/react-icons/rx/index.esm.js","components/CopyableText.tsx","components/ContactModal.tsx","../node_modules/@chakra-ui/layout/src/divider.tsx","../node_modules/@chakra-ui/react-use-animation-state/src/index.ts","../node_modules/@chakra-ui/react-use-focus-on-pointer-down/src/index.ts","../node_modules/@chakra-ui/react-use-focus-effect/src/index.ts","../node_modules/@chakra-ui/lazy-utils/dist/index.mjs","../node_modules/@chakra-ui/popover/src/use-popover.ts","../node_modules/@chakra-ui/popover/src/popover-context.ts","../node_modules/@chakra-ui/popover/src/popover.tsx","../node_modules/@chakra-ui/popover/src/popover-trigger.tsx","../node_modules/@chakra-ui/popover/src/popover-transition.tsx","../node_modules/@chakra-ui/popover/src/popover-content.tsx","../node_modules/@chakra-ui/popover/src/popover-body.tsx","components/PopoverMenu.tsx","components/RenameRemoveMenu.tsx","components/SendButton.tsx","components/SendFlow/OperationSignerSelector.tsx","types/AccountOperations.ts","utils/hooks/batchesHooks.ts","components/SendFlow/utils.tsx","components/SendFlow/Tez/SignPage.tsx","utils/redux/thunks/estimateAndUpdateBatch.ts","components/SendFlow/onSubmitFormActionHooks.tsx","components/SendFlow/Tez/FormPage.tsx","views/addressBook/ContactTable.tsx","../node_modules/@chakra-ui/media-query/src/use-media-query.ts","../node_modules/date-fns/_lib/getRoundingMethod.mjs","../node_modules/date-fns/constants.mjs","../node_modules/date-fns/toDate.mjs","../node_modules/date-fns/differenceInMilliseconds.mjs","../node_modules/date-fns/differenceInMinutes.mjs","../node_modules/date-fns/compareAsc.mjs","../node_modules/date-fns/differenceInCalendarMonths.mjs","../node_modules/date-fns/endOfDay.mjs","../node_modules/date-fns/endOfMonth.mjs","../node_modules/date-fns/isLastDayOfMonth.mjs","../node_modules/date-fns/differenceInMonths.mjs","../node_modules/date-fns/differenceInSeconds.mjs","../node_modules/date-fns/locale/en-US/_lib/formatDistance.mjs","../node_modules/date-fns/locale/_lib/buildFormatLongFn.mjs","../node_modules/date-fns/locale/en-US/_lib/formatLong.mjs","../node_modules/date-fns/locale/en-US/_lib/formatRelative.mjs","../node_modules/date-fns/locale/_lib/buildLocalizeFn.mjs","../node_modules/date-fns/locale/en-US/_lib/localize.mjs","../node_modules/date-fns/locale/_lib/buildMatchFn.mjs","../node_modules/date-fns/locale/en-US/_lib/match.mjs","../node_modules/date-fns/locale/_lib/buildMatchPatternFn.mjs","../node_modules/date-fns/locale/en-US.mjs","../node_modules/date-fns/_lib/defaultOptions.mjs","../node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.mjs","../node_modules/date-fns/formatDistance.mjs","components/BuyTez/BuyTezForm.tsx","assets/icons/CheckIcon.tsx","components/TopBar.tsx","views/addressBook/AddressBookView.tsx","views/batch/AccountSmallTile.tsx","../node_modules/@chakra-ui/hooks/src/use-outside-click.ts","../node_modules/@chakra-ui/popover/src/popover-arrow.tsx","components/AddressPill/AddressPillIcon.tsx","components/AddressPill/AddressPillText.tsx","components/AddressPill/useAddressKind.ts","components/AddressPill/AddressPill.tsx","views/batch/OperationRecipient.tsx","utils/token/utils.ts","views/batch/OperationView.tsx","components/AccountTile/AccountTileIcon.tsx","views/home/SelectedAccountContext.ts","components/AccountTile/AccountTile.tsx","components/ConfirmationModal.tsx","components/SendFlow/BatchModalBody.tsx","components/SendFlow/Batch/SignPage.tsx","views/batch/BatchView.tsx","../node_modules/nanoid/index.browser.js","utils/helpers.ts","components/CSVFileUploader/utils.ts","components/CSVFileUploader/CSVFileUploadForm.tsx","components/CSVFileUploader/index.tsx","components/ExternalLink.tsx","views/batch/BatchPage.tsx","../node_modules/@chakra-ui/layout/src/grid.tsx","../node_modules/@chakra-ui/layout/src/grid-item.tsx","components/ClickableCard.tsx","views/help/HelpView.tsx","../node_modules/@chakra-ui/modal/src/drawer.tsx","../node_modules/@chakra-ui/transition/src/slide.tsx","../node_modules/@chakra-ui/modal/src/drawer-content.tsx","views/home/AccountGroupPopover.tsx","../node_modules/@chakra-ui/layout/src/stack/stack-item.tsx","../node_modules/@chakra-ui/layout/src/stack/stack.tsx","../node_modules/@chakra-ui/layout/src/stack/stack.utils.tsx","../node_modules/@chakra-ui/layout/src/stack/v-stack.tsx","components/CircleIcon.tsx","components/Onboarding/ModalContentWrapper.tsx","components/Onboarding/masterPassword/password/EnterPassword.tsx","components/Onboarding/nameAccount/NameAccountDisplay.tsx","views/home/DeriveAccountDisplay.tsx.tsx","components/NestedScroll.tsx","components/Onboarding/connectOptions/ConnectOptions.tsx","utils/redux/thunks/secretKeyAccount.ts","utils/hooks/setAccountDataHooks.ts","components/Onboarding/connectOrCreate/ConnectOrCreate.tsx","components/Select.tsx","components/Onboarding/derivationPath/DerivationPath.tsx","../node_modules/@chakra-ui/checkbox/src/checkbox-context.ts","../node_modules/@chakra-ui/checkbox/src/checkbox-icon.tsx","../node_modules/@chakra-ui/visually-hidden/src/visually-hidden.style.ts","../node_modules/@zag-js/dom-query/src/platform.ts","../node_modules/@zag-js/dom-query/src/index.ts","../node_modules/@zag-js/focus-visible/src/index.ts","../node_modules/@chakra-ui/checkbox/src/use-checkbox.ts","../node_modules/@chakra-ui/checkbox/src/checkbox.tsx","../node_modules/@chakra-ui/checkbox/src/use-initial-animation-state.tsx","components/Onboarding/eula/Eula.tsx","components/Onboarding/FakeAccount.tsx","components/Onboarding/masterPassword/password/EnterAndConfirmPassword.tsx","components/Onboarding/masterPassword/MasterPassword.tsx","components/Onboarding/notice/Notice.tsx","components/Onboarding/restoreBackupFile/RestoreBackupFile.tsx","components/Onboarding/restoreBackupFile/utils.ts","components/Onboarding/restoreLedger/RestoreLedger.tsx","utils/ledger/pk.ts","../node_modules/@chakra-ui/icons/src/ChevronDown.tsx","../node_modules/@chakra-ui/select/src/select-field.tsx","../node_modules/@chakra-ui/select/src/select.tsx","../node_modules/utilities/object-utils/src/split.ts","components/MnemonicAutocomplete.tsx","components/Onboarding/restoreMnemonic/RestoreMnemonic.tsx","../node_modules/@chakra-ui/textarea/src/textarea.tsx","components/Onboarding/restoreSecretKey/RestoreSecretKey.tsx","../node_modules/@chakra-ui/layout/src/simple-grid.tsx","components/Onboarding/showSeedphrase/ShowSeedphrase.tsx","components/Onboarding/verifySeedphrase/VerifySeedphrase.tsx","components/Onboarding/useOnboardingModal.tsx","components/useStepHistory.tsx","components/Onboarding/nameAccount/NameAccount.tsx","components/SendFlow/MultisigAccount/SignPage.tsx","multisig/multisigContract.ts","components/SendFlow/MultisigAccount/FormPage.tsx","../node_modules/react-hook-form/src/useFieldArray.ts","views/home/AccountsList.tsx","views/home/DrawerTopButtons.tsx","../node_modules/@chakra-ui/clickable/src/use-clickable.ts","../node_modules/@chakra-ui/clickable/src/use-event-listeners.ts","../node_modules/@chakra-ui/tabs/src/use-tabs.ts","../node_modules/@chakra-ui/tabs/src/tabs.tsx","../node_modules/@chakra-ui/tabs/src/tab-list.tsx","../node_modules/@chakra-ui/tabs/src/tab-panels.tsx","../node_modules/@chakra-ui/tabs/src/tab-panel.tsx","../node_modules/date-fns/startOfDay.mjs","../node_modules/date-fns/differenceInCalendarDays.mjs","../node_modules/date-fns/isDate.mjs","../node_modules/date-fns/isValid.mjs","../node_modules/date-fns/constructFrom.mjs","../node_modules/date-fns/startOfYear.mjs","../node_modules/date-fns/getDayOfYear.mjs","../node_modules/date-fns/startOfWeek.mjs","../node_modules/date-fns/startOfISOWeek.mjs","../node_modules/date-fns/getISOWeekYear.mjs","../node_modules/date-fns/startOfISOWeekYear.mjs","../node_modules/date-fns/getISOWeek.mjs","../node_modules/date-fns/getWeekYear.mjs","../node_modules/date-fns/startOfWeekYear.mjs","../node_modules/date-fns/getWeek.mjs","../node_modules/date-fns/_lib/addLeadingZeros.mjs","../node_modules/date-fns/_lib/format/lightFormatters.mjs","../node_modules/date-fns/_lib/format/formatters.mjs","../node_modules/date-fns/_lib/format/longFormatters.mjs","../node_modules/date-fns/_lib/protectedTokens.mjs","../node_modules/date-fns/format.mjs","../node_modules/date-fns/formatRelative.mjs","components/NoItems/index.tsx","components/SendFlow/Delegation/SignPage.tsx","components/SendFlow/Delegation/FormPage.tsx","components/SendFlow/Undelegation/SignPage.tsx","components/SendFlow/Undelegation/FormPage.tsx","components/AccountDrawer/AssetsPanel/DelegationDisplay.tsx","utils/hooks/delegationHooks.ts","../node_modules/react-icons/fi/index.esm.js","components/AccountDrawer/AssetsPanel/MultisigPendingAccordion/MultisigDecodedOperationItem.tsx","multisig/decode/schemas.ts","multisig/decode/UnrecognizedMichelsonError.ts","multisig/decode/decodeLambda.ts","components/AccountDrawer/AssetsPanel/MultisigPendingAccordion/MultisigDecodedOperations.tsx","../node_modules/react-icons/cg/index.esm.js","components/IconAndTextBtn.tsx","components/AccountDrawer/AssetsPanel/MultisigPendingAccordion/MultisigActionButton.tsx","components/SendFlow/Multisig/SignPage.tsx","components/AccountDrawer/AssetsPanel/MultisigPendingAccordion/MultisigSignerTile.tsx","components/AccountDrawer/AssetsPanel/MultisigPendingAccordion/MultisigPendingAccordionItem.tsx","components/AccountDrawer/AssetsPanel/MultisigPendingAccordion/index.tsx","components/AccountDrawer/AssetsPanel/ViewAllLink.tsx","components/AccountDrawer/AssetsPanel/NFTsGrid.tsx","components/OperationTile/OperationTileContext.ts","components/OperationTile/Fee.tsx","components/OperationTile/OperationStatus.tsx","components/OperationTile/OperationTypeWrapper.tsx","../node_modules/date-fns/differenceInDays.mjs","components/OperationTile/Timestamp.tsx","components/OperationTile/TzktLink.tsx","components/OperationTile/useShowAddress.tsx","components/OperationTile/ContractCallTile.tsx","components/OperationTile/DelegationTile.tsx","components/OperationTile/OriginationTile.tsx","components/OperationTile/TransactionDirectionIcon.tsx","components/OperationTile/TokenTransferTile.tsx","components/OperationTile/TransactionTile.tsx","components/OperationTile/OperationTile.tsx","components/AccountDrawer/AssetsPanel/OperationListDisplay.tsx","views/tokens/TokenNameWithIcon.tsx","components/AccountDrawer/AssetsPanel/TokenList.tsx","utils/tzkt/helpers.ts","views/operations/useGetOperations.tsx","../node_modules/@chakra-ui/tabs/src/tab.tsx","components/SmallTab.tsx","components/AccountDrawer/AssetsPanel/AssetsPanel.tsx","../node_modules/@chakra-ui/layout/src/wrap.tsx","components/AccountDrawer/MultisigApprovers.tsx","components/AccountDrawer/RenameAccountModal.tsx","utils/redux/thunks/renameAccount.ts","components/AccountDrawer/RenameRemoveMenuSwitch.tsx","components/TezRecapDisplay.tsx","components/AccountDrawer/AccountDrawerDisplay.tsx","types/Delegation.ts","components/ReceiveModal.tsx","components/AccountDrawer/index.tsx","views/nfts/drawer/AttributesAccordionItem.tsx","components/TruncatedTextWithTooltip.tsx","components/TzktLink.tsx","views/nfts/drawer/PropertiesAccordionItem.tsx","views/nfts/drawer/TagsSection.tsx","components/SendFlow/SendNFTRecapTile.tsx","components/SendFlow/NFT/SignPage.tsx","components/SendFlow/NFT/FormPage.tsx","views/nfts/NFTDrawerCard.tsx","views/nfts/NFTDrawerBody.tsx","views/home/AccountListWithDrawer.tsx","views/home/HomeView.tsx","views/nfts/NFTCard.tsx","views/nfts/NFTGallery.tsx","../node_modules/@chakra-ui/menu/src/use-shortcut.ts","../node_modules/@chakra-ui/react-use-outside-click/src/index.ts","../node_modules/@chakra-ui/menu/src/use-menu.ts","../node_modules/@chakra-ui/menu/src/menu.tsx","../node_modules/@chakra-ui/menu/src/menu-button.tsx","../node_modules/@chakra-ui/menu/src/menu-list.tsx","../node_modules/@chakra-ui/menu/src/get-next-item-from-search.ts","../node_modules/@chakra-ui/menu/src/menu-command.tsx","../node_modules/@chakra-ui/menu/src/styled-menu-item.tsx","../node_modules/@chakra-ui/menu/src/menu-icon.tsx","../node_modules/@chakra-ui/menu/src/menu-item.tsx","components/AccountSelector/AccountListDisplay.tsx","components/useAccountsFilter.tsx","views/nfts/NftsView.tsx","views/operations/OperationsView.tsx","utils/beacon/BeaconPeers.tsx","views/settings/BeaconDrawerCard.tsx","../node_modules/react-icons/ai/index.esm.js","views/settings/ErrorLogsDrawerCard.tsx","../node_modules/@chakra-ui/radio/src/use-radio-group.ts","../node_modules/@chakra-ui/radio/src/radio-group.tsx","../node_modules/@chakra-ui/radio/src/use-radio.ts","../node_modules/@chakra-ui/radio/src/radio.tsx","views/settings/network/UpsertNetworkModal.tsx","views/settings/network/NetworkSettingsDrawerBody.tsx","views/settings/network/NetworkSettingsDrawerCard.tsx","components/ChangePassword/ChangePasswordForm.tsx","components/Offboarding/OffboardingForm.tsx","views/settings/SettingsView.tsx","components/Offboarding/useOffboardingModal.tsx","components/TokenTile.tsx","components/SendFlow/Token/SignPage.tsx","components/SendFlow/Token/FormPage.tsx","views/tokens/AccountTokens.tsx","views/tokens/TokensPage.tsx","components/AppVersion.tsx","components/MakiLogo.tsx","components/NetworkSelector.tsx","components/UpdateAppButton.tsx","components/SideNavbar.tsx","views/withSideMenu.tsx","components/Slider.tsx","components/SliderItem.tsx","WelcomeScreen.tsx","Router.tsx","index.tsx"],"sourcesContent":["// Register a service worker to serve assets from local cache.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on the \"N+1\" visit to a page, since previously\n// cached resources are updated in the background.\n\nvar isLocalhost = function () { return Boolean(\n window.location.hostname === \"localhost\" ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === \"[::1]\" ||\n // 127.0.0.1/8 is considered localhost for IPv4.\n window.location.hostname.match(/^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/)\n ); };\n\nvar waitWindowLoad;\n// https://github.com/yyx990803/register-service-worker/pull/33#discussion_r394181861\nif (typeof window !== \"undefined\") {\n // Typically, a browser that supports `serviceWorker` should also have supported\n // `Promise`. But as this package can be used in environments without service\n // worker support (in that case it would do nothing), there's a chance that\n // `Promise` does not exist. So we must check for its existence first.\n if (typeof document !== \"undefined\" && (document.readyState === \"interactive\" || document.readyState === \"complete\")) {\n waitWindowLoad = Promise.resolve();\n } else if (typeof Promise !== \"undefined\") {\n waitWindowLoad = new Promise(function (resolve) { return window.addEventListener(\"load\", resolve); });\n } else {\n waitWindowLoad = { then: function (cb) { return window.addEventListener(\"load\", cb); } };\n }\n}\n\nexports.register = function register(swUrl, hooks) {\n if ( hooks === void 0 ) hooks = {};\n\n var registrationOptions = hooks.registrationOptions; if ( registrationOptions === void 0 ) registrationOptions = {};\n delete hooks.registrationOptions;\n\n var emit = function (hook) {\n var args = [], len = arguments.length - 1;\n while ( len-- > 0 ) args[ len ] = arguments[ len + 1 ];\n\n if (hooks && hooks[hook]) {\n hooks[hook].apply(hooks, args);\n }\n };\n\n if (\"serviceWorker\" in navigator) {\n waitWindowLoad.then(function () {\n if (isLocalhost()) {\n // This is running on localhost. Lets check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, emit, registrationOptions);\n navigator.serviceWorker.ready.then(function (registration) {\n emit(\"ready\", registration);\n });\n } else {\n // Is not local host. Just register service worker\n registerValidSW(swUrl, emit, registrationOptions);\n navigator.serviceWorker.ready.then(function (registration) {\n emit(\"ready\", registration);\n });\n }\n });\n }\n}\n\nfunction handleError(emit, error) {\n if (!navigator.onLine) {\n emit(\"offline\");\n }\n emit(\"error\", error);\n}\n\nfunction registerValidSW(swUrl, emit, registrationOptions) {\n navigator.serviceWorker\n .register(swUrl, registrationOptions)\n .then(function (registration) {\n emit(\"registered\", registration);\n if (registration.waiting) {\n emit(\"updated\", registration);\n return;\n }\n registration.onupdatefound = function () {\n emit(\"updatefound\", registration);\n var installingWorker = registration.installing;\n installingWorker.onstatechange = function () {\n if (installingWorker.state === \"installed\") {\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and\n // the fresh content will have been added to the cache.\n // It's the perfect time to display a \"New content is\n // available; please refresh.\" message in your web app.\n emit(\"updated\", registration);\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n emit(\"cached\", registration);\n }\n }\n };\n };\n })\n .catch(function (error) { return handleError(emit, error); });\n}\n\nfunction checkValidServiceWorker(swUrl, emit, registrationOptions) {\n // Check if the service worker can be found.\n fetch(swUrl)\n .then(function (response) {\n // Ensure service worker exists, and that we really are getting a JS file.\n if (response.status === 404) {\n // No service worker found.\n emit(\"error\", new Error((\"Service worker not found at \" + swUrl)));\n unregister();\n } else if (response.headers.get(\"content-type\").indexOf(\"javascript\") === -1) {\n emit(\"error\", new Error(\"Expected \" + swUrl + \" to have javascript content-type, \" + \"but received \" + (response.headers.get(\"content-type\"))));\n unregister();\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, emit, registrationOptions);\n }\n })\n .catch(function (error) { return handleError(emit, error); });\n}\n\nexports.unregister = function unregister() {\n if (\"serviceWorker\" in navigator) {\n navigator.serviceWorker.ready.then(function (registration) {\n registration.unregister();\n });\n }\n}\n","export function number(n: number) {\n if (!Number.isSafeInteger(n) || n < 0) throw new Error(`Wrong positive integer: ${n}`);\n}\n\nexport function bool(b: boolean) {\n if (typeof b !== 'boolean') throw new Error(`Expected boolean, not ${b}`);\n}\n\nexport function bytes(b: Uint8Array | undefined, ...lengths: number[]) {\n if (!(b instanceof Uint8Array)) throw new TypeError('Expected Uint8Array');\n if (lengths.length > 0 && !lengths.includes(b.length))\n throw new TypeError(`Expected Uint8Array of length ${lengths}, not of length=${b.length}`);\n}\n\ntype Hash = {\n (data: Uint8Array): Uint8Array;\n blockLen: number;\n outputLen: number;\n create: any;\n};\nexport function hash(hash: Hash) {\n if (typeof hash !== 'function' || typeof hash.create !== 'function')\n throw new Error('Hash should be wrapped by utils.wrapConstructor');\n number(hash.outputLen);\n number(hash.blockLen);\n}\n\nexport function exists(instance: any, checkFinished = true) {\n if (instance.destroyed) throw new Error('Hash instance has been destroyed');\n if (checkFinished && instance.finished) throw new Error('Hash#digest() has already been called');\n}\nexport function output(out: any, instance: any) {\n bytes(out);\n const min = instance.outputLen;\n if (out.length < min) {\n throw new Error(`digestInto() expects output buffer of length at least ${min}`);\n }\n}\n\nconst assert = {\n number,\n bool,\n bytes,\n hash,\n exists,\n output,\n};\n\nexport default assert;\n","import assert from './_assert.js';\nimport { Hash, createView, Input, toBytes } from './utils.js';\n\n// Polyfill for Safari 14\nfunction setBigUint64(view: DataView, byteOffset: number, value: bigint, isLE: boolean): void {\n if (typeof view.setBigUint64 === 'function') return view.setBigUint64(byteOffset, value, isLE);\n const _32n = BigInt(32);\n const _u32_max = BigInt(0xffffffff);\n const wh = Number((value >> _32n) & _u32_max);\n const wl = Number(value & _u32_max);\n const h = isLE ? 4 : 0;\n const l = isLE ? 0 : 4;\n view.setUint32(byteOffset + h, wh, isLE);\n view.setUint32(byteOffset + l, wl, isLE);\n}\n\n// Base SHA2 class (RFC 6234)\nexport abstract class SHA2> extends Hash {\n protected abstract process(buf: DataView, offset: number): void;\n protected abstract get(): number[];\n protected abstract set(...args: number[]): void;\n abstract destroy(): void;\n protected abstract roundClean(): void;\n // For partial updates less than block size\n protected buffer: Uint8Array;\n protected view: DataView;\n protected finished = false;\n protected length = 0;\n protected pos = 0;\n protected destroyed = false;\n\n constructor(\n readonly blockLen: number,\n public outputLen: number,\n readonly padOffset: number,\n readonly isLE: boolean\n ) {\n super();\n this.buffer = new Uint8Array(blockLen);\n this.view = createView(this.buffer);\n }\n update(data: Input): this {\n assert.exists(this);\n const { view, buffer, blockLen } = this;\n data = toBytes(data);\n const len = data.length;\n for (let pos = 0; pos < len; ) {\n const take = Math.min(blockLen - this.pos, len - pos);\n // Fast path: we have at least one block in input, cast it to view and process\n if (take === blockLen) {\n const dataView = createView(data);\n for (; blockLen <= len - pos; pos += blockLen) this.process(dataView, pos);\n continue;\n }\n buffer.set(data.subarray(pos, pos + take), this.pos);\n this.pos += take;\n pos += take;\n if (this.pos === blockLen) {\n this.process(view, 0);\n this.pos = 0;\n }\n }\n this.length += data.length;\n this.roundClean();\n return this;\n }\n digestInto(out: Uint8Array) {\n assert.exists(this);\n assert.output(out, this);\n this.finished = true;\n // Padding\n // We can avoid allocation of buffer for padding completely if it\n // was previously not allocated here. But it won't change performance.\n const { buffer, view, blockLen, isLE } = this;\n let { pos } = this;\n // append the bit '1' to the message\n buffer[pos++] = 0b10000000;\n this.buffer.subarray(pos).fill(0);\n // we have less than padOffset left in buffer, so we cannot put length in current block, need process it and pad again\n if (this.padOffset > blockLen - pos) {\n this.process(view, 0);\n pos = 0;\n }\n // Pad until full block byte with zeros\n for (let i = pos; i < blockLen; i++) buffer[i] = 0;\n // Note: sha512 requires length to be 128bit integer, but length in JS will overflow before that\n // You need to write around 2 exabytes (u64_max / 8 / (1024**6)) for this to happen.\n // So we just write lowest 64 bits of that value.\n setBigUint64(view, blockLen - 8, BigInt(this.length * 8), isLE);\n this.process(view, 0);\n const oview = createView(out);\n const len = this.outputLen;\n // NOTE: we do division by 4 later, which should be fused in single op with modulo by JIT\n if (len % 4) throw new Error('_sha2: outputLen should be aligned to 32bit');\n const outLen = len / 4;\n const state = this.get();\n if (outLen > state.length) throw new Error('_sha2: outputLen bigger than state');\n for (let i = 0; i < outLen; i++) oview.setUint32(4 * i, state[i], isLE);\n }\n digest() {\n const { buffer, outputLen } = this;\n this.digestInto(buffer);\n const res = buffer.slice(0, outputLen);\n this.destroy();\n return res;\n }\n _cloneInto(to?: T): T {\n to ||= new (this.constructor as any)() as T;\n to.set(...this.get());\n const { blockLen, buffer, length, finished, destroyed, pos } = this;\n to.length = length;\n to.pos = pos;\n to.finished = finished;\n to.destroyed = destroyed;\n if (length % blockLen) to.buffer.set(buffer);\n return to;\n }\n}\n","const U32_MASK64 = BigInt(2 ** 32 - 1);\nconst _32n = BigInt(32);\n\n// We are not using BigUint64Array, because they are extremely slow as per 2022\nexport function fromBig(n: bigint, le = false) {\n if (le) return { h: Number(n & U32_MASK64), l: Number((n >> _32n) & U32_MASK64) };\n return { h: Number((n >> _32n) & U32_MASK64) | 0, l: Number(n & U32_MASK64) | 0 };\n}\n\nexport function split(lst: bigint[], le = false) {\n let Ah = new Uint32Array(lst.length);\n let Al = new Uint32Array(lst.length);\n for (let i = 0; i < lst.length; i++) {\n const { h, l } = fromBig(lst[i], le);\n [Ah[i], Al[i]] = [h, l];\n }\n return [Ah, Al];\n}\n\nexport const toBig = (h: number, l: number) => (BigInt(h >>> 0) << _32n) | BigInt(l >>> 0);\n// for Shift in [0, 32)\nconst shrSH = (h: number, l: number, s: number) => h >>> s;\nconst shrSL = (h: number, l: number, s: number) => (h << (32 - s)) | (l >>> s);\n// Right rotate for Shift in [1, 32)\nconst rotrSH = (h: number, l: number, s: number) => (h >>> s) | (l << (32 - s));\nconst rotrSL = (h: number, l: number, s: number) => (h << (32 - s)) | (l >>> s);\n// Right rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotrBH = (h: number, l: number, s: number) => (h << (64 - s)) | (l >>> (s - 32));\nconst rotrBL = (h: number, l: number, s: number) => (h >>> (s - 32)) | (l << (64 - s));\n// Right rotate for shift===32 (just swaps l&h)\nconst rotr32H = (h: number, l: number) => l;\nconst rotr32L = (h: number, l: number) => h;\n// Left rotate for Shift in [1, 32)\nconst rotlSH = (h: number, l: number, s: number) => (h << s) | (l >>> (32 - s));\nconst rotlSL = (h: number, l: number, s: number) => (l << s) | (h >>> (32 - s));\n// Left rotate for Shift in (32, 64), NOTE: 32 is special case.\nconst rotlBH = (h: number, l: number, s: number) => (l << (s - 32)) | (h >>> (64 - s));\nconst rotlBL = (h: number, l: number, s: number) => (h << (s - 32)) | (l >>> (64 - s));\n\n// JS uses 32-bit signed integers for bitwise operations which means we cannot\n// simple take carry out of low bit sum by shift, we need to use division.\n// Removing \"export\" has 5% perf penalty -_-\nexport function add(Ah: number, Al: number, Bh: number, Bl: number) {\n const l = (Al >>> 0) + (Bl >>> 0);\n return { h: (Ah + Bh + ((l / 2 ** 32) | 0)) | 0, l: l | 0 };\n}\n// Addition with more than 2 elements\nconst add3L = (Al: number, Bl: number, Cl: number) => (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0);\nconst add3H = (low: number, Ah: number, Bh: number, Ch: number) =>\n (Ah + Bh + Ch + ((low / 2 ** 32) | 0)) | 0;\nconst add4L = (Al: number, Bl: number, Cl: number, Dl: number) =>\n (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0);\nconst add4H = (low: number, Ah: number, Bh: number, Ch: number, Dh: number) =>\n (Ah + Bh + Ch + Dh + ((low / 2 ** 32) | 0)) | 0;\nconst add5L = (Al: number, Bl: number, Cl: number, Dl: number, El: number) =>\n (Al >>> 0) + (Bl >>> 0) + (Cl >>> 0) + (Dl >>> 0) + (El >>> 0);\nconst add5H = (low: number, Ah: number, Bh: number, Ch: number, Dh: number, Eh: number) =>\n (Ah + Bh + Ch + Dh + Eh + ((low / 2 ** 32) | 0)) | 0;\n\n// prettier-ignore\nconst u64 = {\n fromBig, split, toBig,\n shrSH, shrSL,\n rotrSH, rotrSL, rotrBH, rotrBL,\n rotr32H, rotr32L,\n rotlSH, rotlSL, rotlBH, rotlBL,\n add, add3L, add3H, add4L, add4H, add5H, add5L,\n};\nexport default u64;\n","declare const globalThis: Record | undefined;\nexport const crypto =\n typeof globalThis === 'object' && 'crypto' in globalThis ? globalThis.crypto : undefined;\n","import assert from './_assert.js';\nimport { Hash, CHash, Input, toBytes } from './utils.js';\n// HMAC (RFC 2104)\nclass HMAC> extends Hash> {\n oHash: T;\n iHash: T;\n blockLen: number;\n outputLen: number;\n private finished = false;\n private destroyed = false;\n\n constructor(hash: CHash, _key: Input) {\n super();\n assert.hash(hash);\n const key = toBytes(_key);\n this.iHash = hash.create() as T;\n if (typeof this.iHash.update !== 'function')\n throw new TypeError('Expected instance of class which extends utils.Hash');\n this.blockLen = this.iHash.blockLen;\n this.outputLen = this.iHash.outputLen;\n const blockLen = this.blockLen;\n const pad = new Uint8Array(blockLen);\n // blockLen can be bigger than outputLen\n pad.set(key.length > blockLen ? hash.create().update(key).digest() : key);\n for (let i = 0; i < pad.length; i++) pad[i] ^= 0x36;\n this.iHash.update(pad);\n // By doing update (processing of first block) of outer hash here we can re-use it between multiple calls via clone\n this.oHash = hash.create() as T;\n // Undo internal XOR && apply outer XOR\n for (let i = 0; i < pad.length; i++) pad[i] ^= 0x36 ^ 0x5c;\n this.oHash.update(pad);\n pad.fill(0);\n }\n update(buf: Input) {\n assert.exists(this);\n this.iHash.update(buf);\n return this;\n }\n digestInto(out: Uint8Array) {\n assert.exists(this);\n assert.bytes(out, this.outputLen);\n this.finished = true;\n this.iHash.digestInto(out);\n this.oHash.update(out);\n this.oHash.digestInto(out);\n this.destroy();\n }\n digest() {\n const out = new Uint8Array(this.oHash.outputLen);\n this.digestInto(out);\n return out;\n }\n _cloneInto(to?: HMAC): HMAC {\n // Create new instance without calling constructor since key already in state and we don't know it.\n to ||= Object.create(Object.getPrototypeOf(this), {});\n const { oHash, iHash, finished, destroyed, blockLen, outputLen } = this;\n to = to as this;\n to.finished = finished;\n to.destroyed = destroyed;\n to.blockLen = blockLen;\n to.outputLen = outputLen;\n to.oHash = oHash._cloneInto(to.oHash);\n to.iHash = iHash._cloneInto(to.iHash);\n return to;\n }\n destroy() {\n this.destroyed = true;\n this.oHash.destroy();\n this.iHash.destroy();\n }\n}\n\n/**\n * HMAC: RFC2104 message authentication code.\n * @param hash - function that would be used e.g. sha256\n * @param key - message key\n * @param message - message data\n */\nexport const hmac = (hash: CHash, key: Input, message: Input): Uint8Array =>\n new HMAC(hash, key).update(message).digest();\nhmac.create = (hash: CHash, key: Input) => new HMAC(hash, key);\n","import assert from './_assert.js';\nimport { hmac } from './hmac.js';\nimport { Hash, CHash, Input, createView, toBytes, checkOpts, asyncLoop } from './utils.js';\n\n// PBKDF (RFC 2898)\nexport type Pbkdf2Opt = {\n c: number; // Iterations\n dkLen?: number; // Desired key length in bytes (Intended output length in octets of the derived key\n asyncTick?: number; // Maximum time in ms for which async function can block execution\n};\n// Common prologue and epilogue for sync/async functions\nfunction pbkdf2Init(hash: CHash, _password: Input, _salt: Input, _opts: Pbkdf2Opt) {\n assert.hash(hash);\n const opts = checkOpts({ dkLen: 32, asyncTick: 10 }, _opts);\n const { c, dkLen, asyncTick } = opts;\n assert.number(c);\n assert.number(dkLen);\n assert.number(asyncTick);\n if (c < 1) throw new Error('PBKDF2: iterations (c) should be >= 1');\n const password = toBytes(_password);\n const salt = toBytes(_salt);\n // DK = PBKDF2(PRF, Password, Salt, c, dkLen);\n const DK = new Uint8Array(dkLen);\n // U1 = PRF(Password, Salt + INT_32_BE(i))\n const PRF = hmac.create(hash, password);\n const PRFSalt = PRF._cloneInto().update(salt);\n return { c, dkLen, asyncTick, DK, PRF, PRFSalt };\n}\n\nfunction pbkdf2Output>(\n PRF: Hash,\n PRFSalt: Hash,\n DK: Uint8Array,\n prfW: Hash,\n u: Uint8Array\n) {\n PRF.destroy();\n PRFSalt.destroy();\n if (prfW) prfW.destroy();\n u.fill(0);\n return DK;\n}\n\n/**\n * PBKDF2-HMAC: RFC 2898 key derivation function\n * @param hash - hash function that would be used e.g. sha256\n * @param password - password from which a derived key is generated\n * @param salt - cryptographic salt\n * @param opts - {c, dkLen} where c is work factor and dkLen is output message size\n */\nexport function pbkdf2(hash: CHash, password: Input, salt: Input, opts: Pbkdf2Opt) {\n const { c, dkLen, DK, PRF, PRFSalt } = pbkdf2Init(hash, password, salt, opts);\n let prfW: any; // Working copy\n const arr = new Uint8Array(4);\n const view = createView(arr);\n const u = new Uint8Array(PRF.outputLen);\n // DK = T1 + T2 + ⋯ + Tdklen/hlen\n for (let ti = 1, pos = 0; pos < dkLen; ti++, pos += PRF.outputLen) {\n // Ti = F(Password, Salt, c, i)\n const Ti = DK.subarray(pos, pos + PRF.outputLen);\n view.setInt32(0, ti, false);\n // F(Password, Salt, c, i) = U1 ^ U2 ^ ⋯ ^ Uc\n // U1 = PRF(Password, Salt + INT_32_BE(i))\n (prfW = PRFSalt._cloneInto(prfW)).update(arr).digestInto(u);\n Ti.set(u.subarray(0, Ti.length));\n for (let ui = 1; ui < c; ui++) {\n // Uc = PRF(Password, Uc−1)\n PRF._cloneInto(prfW).update(u).digestInto(u);\n for (let i = 0; i < Ti.length; i++) Ti[i] ^= u[i];\n }\n }\n return pbkdf2Output(PRF, PRFSalt, DK, prfW, u);\n}\n\nexport async function pbkdf2Async(hash: CHash, password: Input, salt: Input, opts: Pbkdf2Opt) {\n const { c, dkLen, asyncTick, DK, PRF, PRFSalt } = pbkdf2Init(hash, password, salt, opts);\n let prfW: any; // Working copy\n const arr = new Uint8Array(4);\n const view = createView(arr);\n const u = new Uint8Array(PRF.outputLen);\n // DK = T1 + T2 + ⋯ + Tdklen/hlen\n for (let ti = 1, pos = 0; pos < dkLen; ti++, pos += PRF.outputLen) {\n // Ti = F(Password, Salt, c, i)\n const Ti = DK.subarray(pos, pos + PRF.outputLen);\n view.setInt32(0, ti, false);\n // F(Password, Salt, c, i) = U1 ^ U2 ^ ⋯ ^ Uc\n // U1 = PRF(Password, Salt + INT_32_BE(i))\n (prfW = PRFSalt._cloneInto(prfW)).update(arr).digestInto(u);\n Ti.set(u.subarray(0, Ti.length));\n await asyncLoop(c - 1, asyncTick, (i) => {\n // Uc = PRF(Password, Uc−1)\n PRF._cloneInto(prfW).update(u).digestInto(u);\n for (let i = 0; i < Ti.length; i++) Ti[i] ^= u[i];\n });\n }\n return pbkdf2Output(PRF, PRFSalt, DK, prfW, u);\n}\n","import { SHA2 } from './_sha2.js';\nimport { rotr, wrapConstructor } from './utils.js';\n\n// Choice: a ? b : c\nconst Chi = (a: number, b: number, c: number) => (a & b) ^ (~a & c);\n// Majority function, true if any two inpust is true\nconst Maj = (a: number, b: number, c: number) => (a & b) ^ (a & c) ^ (b & c);\n\n// Round constants:\n// first 32 bits of the fractional parts of the cube roots of the first 64 primes 2..311)\n// prettier-ignore\nconst SHA256_K = new Uint32Array([\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n]);\n\n// Initial state (first 32 bits of the fractional parts of the square roots of the first 8 primes 2..19):\n// prettier-ignore\nconst IV = new Uint32Array([\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19\n]);\n\n// Temporary buffer, not used to store anything between runs\n// Named this way because it matches specification.\nconst SHA256_W = new Uint32Array(64);\nclass SHA256 extends SHA2 {\n // We cannot use array here since array allows indexing by variable\n // which means optimizer/compiler cannot use registers.\n A = IV[0] | 0;\n B = IV[1] | 0;\n C = IV[2] | 0;\n D = IV[3] | 0;\n E = IV[4] | 0;\n F = IV[5] | 0;\n G = IV[6] | 0;\n H = IV[7] | 0;\n\n constructor() {\n super(64, 32, 8, false);\n }\n protected get(): [number, number, number, number, number, number, number, number] {\n const { A, B, C, D, E, F, G, H } = this;\n return [A, B, C, D, E, F, G, H];\n }\n // prettier-ignore\n protected set(\n A: number, B: number, C: number, D: number, E: number, F: number, G: number, H: number\n ) {\n this.A = A | 0;\n this.B = B | 0;\n this.C = C | 0;\n this.D = D | 0;\n this.E = E | 0;\n this.F = F | 0;\n this.G = G | 0;\n this.H = H | 0;\n }\n protected process(view: DataView, offset: number): void {\n // Extend the first 16 words into the remaining 48 words w[16..63] of the message schedule array\n for (let i = 0; i < 16; i++, offset += 4) SHA256_W[i] = view.getUint32(offset, false);\n for (let i = 16; i < 64; i++) {\n const W15 = SHA256_W[i - 15];\n const W2 = SHA256_W[i - 2];\n const s0 = rotr(W15, 7) ^ rotr(W15, 18) ^ (W15 >>> 3);\n const s1 = rotr(W2, 17) ^ rotr(W2, 19) ^ (W2 >>> 10);\n SHA256_W[i] = (s1 + SHA256_W[i - 7] + s0 + SHA256_W[i - 16]) | 0;\n }\n // Compression function main loop, 64 rounds\n let { A, B, C, D, E, F, G, H } = this;\n for (let i = 0; i < 64; i++) {\n const sigma1 = rotr(E, 6) ^ rotr(E, 11) ^ rotr(E, 25);\n const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;\n const sigma0 = rotr(A, 2) ^ rotr(A, 13) ^ rotr(A, 22);\n const T2 = (sigma0 + Maj(A, B, C)) | 0;\n H = G;\n G = F;\n F = E;\n E = (D + T1) | 0;\n D = C;\n C = B;\n B = A;\n A = (T1 + T2) | 0;\n }\n // Add the compressed chunk to the current hash value\n A = (A + this.A) | 0;\n B = (B + this.B) | 0;\n C = (C + this.C) | 0;\n D = (D + this.D) | 0;\n E = (E + this.E) | 0;\n F = (F + this.F) | 0;\n G = (G + this.G) | 0;\n H = (H + this.H) | 0;\n this.set(A, B, C, D, E, F, G, H);\n }\n protected roundClean() {\n SHA256_W.fill(0);\n }\n destroy() {\n this.set(0, 0, 0, 0, 0, 0, 0, 0);\n this.buffer.fill(0);\n }\n}\n// Constants from https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.180-4.pdf\nclass SHA224 extends SHA256 {\n A = 0xc1059ed8 | 0;\n B = 0x367cd507 | 0;\n C = 0x3070dd17 | 0;\n D = 0xf70e5939 | 0;\n E = 0xffc00b31 | 0;\n F = 0x68581511 | 0;\n G = 0x64f98fa7 | 0;\n H = 0xbefa4fa4 | 0;\n constructor() {\n super();\n this.outputLen = 28;\n }\n}\n\n/**\n * SHA2-256 hash function\n * @param message - data that would be hashed\n */\nexport const sha256 = wrapConstructor(() => new SHA256());\nexport const sha224 = wrapConstructor(() => new SHA224());\n","import assert from './_assert.js';\nimport u64 from './_u64.js';\nimport {\n Hash,\n u32,\n Input,\n toBytes,\n wrapConstructor,\n wrapConstructorWithOpts,\n HashXOF,\n} from './utils.js';\n\n// Various per round constants calculations\nconst [SHA3_PI, SHA3_ROTL, _SHA3_IOTA]: [number[], number[], bigint[]] = [[], [], []];\nconst _0n = BigInt(0);\nconst _1n = BigInt(1);\nconst _2n = BigInt(2);\nconst _7n = BigInt(7);\nconst _256n = BigInt(256);\nconst _0x71n = BigInt(0x71);\nfor (let round = 0, R = _1n, x = 1, y = 0; round < 24; round++) {\n // Pi\n [x, y] = [y, (2 * x + 3 * y) % 5];\n SHA3_PI.push(2 * (5 * y + x));\n // Rotational\n SHA3_ROTL.push((((round + 1) * (round + 2)) / 2) % 64);\n // Iota\n let t = _0n;\n for (let j = 0; j < 7; j++) {\n R = ((R << _1n) ^ ((R >> _7n) * _0x71n)) % _256n;\n if (R & _2n) t ^= _1n << ((_1n << BigInt(j)) - _1n);\n }\n _SHA3_IOTA.push(t);\n}\nconst [SHA3_IOTA_H, SHA3_IOTA_L] = u64.split(_SHA3_IOTA, true);\n\n// Left rotation (without 0, 32, 64)\nconst rotlH = (h: number, l: number, s: number) =>\n s > 32 ? u64.rotlBH(h, l, s) : u64.rotlSH(h, l, s);\nconst rotlL = (h: number, l: number, s: number) =>\n s > 32 ? u64.rotlBL(h, l, s) : u64.rotlSL(h, l, s);\n\n// Same as keccakf1600, but allows to skip some rounds\nexport function keccakP(s: Uint32Array, rounds: number = 24) {\n const B = new Uint32Array(5 * 2);\n // NOTE: all indices are x2 since we store state as u32 instead of u64 (bigints to slow in js)\n for (let round = 24 - rounds; round < 24; round++) {\n // Theta θ\n for (let x = 0; x < 10; x++) B[x] = s[x] ^ s[x + 10] ^ s[x + 20] ^ s[x + 30] ^ s[x + 40];\n for (let x = 0; x < 10; x += 2) {\n const idx1 = (x + 8) % 10;\n const idx0 = (x + 2) % 10;\n const B0 = B[idx0];\n const B1 = B[idx0 + 1];\n const Th = rotlH(B0, B1, 1) ^ B[idx1];\n const Tl = rotlL(B0, B1, 1) ^ B[idx1 + 1];\n for (let y = 0; y < 50; y += 10) {\n s[x + y] ^= Th;\n s[x + y + 1] ^= Tl;\n }\n }\n // Rho (ρ) and Pi (π)\n let curH = s[2];\n let curL = s[3];\n for (let t = 0; t < 24; t++) {\n const shift = SHA3_ROTL[t];\n const Th = rotlH(curH, curL, shift);\n const Tl = rotlL(curH, curL, shift);\n const PI = SHA3_PI[t];\n curH = s[PI];\n curL = s[PI + 1];\n s[PI] = Th;\n s[PI + 1] = Tl;\n }\n // Chi (χ)\n for (let y = 0; y < 50; y += 10) {\n for (let x = 0; x < 10; x++) B[x] = s[y + x];\n for (let x = 0; x < 10; x++) s[y + x] ^= ~B[(x + 2) % 10] & B[(x + 4) % 10];\n }\n // Iota (ι)\n s[0] ^= SHA3_IOTA_H[round];\n s[1] ^= SHA3_IOTA_L[round];\n }\n B.fill(0);\n}\n\nexport class Keccak extends Hash implements HashXOF {\n protected state: Uint8Array;\n protected pos = 0;\n protected posOut = 0;\n protected finished = false;\n protected state32: Uint32Array;\n protected destroyed = false;\n // NOTE: we accept arguments in bytes instead of bits here.\n constructor(\n public blockLen: number,\n public suffix: number,\n public outputLen: number,\n protected enableXOF = false,\n protected rounds: number = 24\n ) {\n super();\n // Can be passed from user as dkLen\n assert.number(outputLen);\n // 1600 = 5x5 matrix of 64bit. 1600 bits === 200 bytes\n if (0 >= this.blockLen || this.blockLen >= 200)\n throw new Error('Sha3 supports only keccak-f1600 function');\n this.state = new Uint8Array(200);\n this.state32 = u32(this.state);\n }\n protected keccak() {\n keccakP(this.state32, this.rounds);\n this.posOut = 0;\n this.pos = 0;\n }\n update(data: Input) {\n assert.exists(this);\n const { blockLen, state } = this;\n data = toBytes(data);\n const len = data.length;\n for (let pos = 0; pos < len; ) {\n const take = Math.min(blockLen - this.pos, len - pos);\n for (let i = 0; i < take; i++) state[this.pos++] ^= data[pos++];\n if (this.pos === blockLen) this.keccak();\n }\n return this;\n }\n protected finish() {\n if (this.finished) return;\n this.finished = true;\n const { state, suffix, pos, blockLen } = this;\n // Do the padding\n state[pos] ^= suffix;\n if ((suffix & 0x80) !== 0 && pos === blockLen - 1) this.keccak();\n state[blockLen - 1] ^= 0x80;\n this.keccak();\n }\n protected writeInto(out: Uint8Array): Uint8Array {\n assert.exists(this, false);\n assert.bytes(out);\n this.finish();\n const bufferOut = this.state;\n const { blockLen } = this;\n for (let pos = 0, len = out.length; pos < len; ) {\n if (this.posOut >= blockLen) this.keccak();\n const take = Math.min(blockLen - this.posOut, len - pos);\n out.set(bufferOut.subarray(this.posOut, this.posOut + take), pos);\n this.posOut += take;\n pos += take;\n }\n return out;\n }\n xofInto(out: Uint8Array): Uint8Array {\n // Sha3/Keccak usage with XOF is probably mistake, only SHAKE instances can do XOF\n if (!this.enableXOF) throw new Error('XOF is not possible for this instance');\n return this.writeInto(out);\n }\n xof(bytes: number): Uint8Array {\n assert.number(bytes);\n return this.xofInto(new Uint8Array(bytes));\n }\n digestInto(out: Uint8Array) {\n assert.output(out, this);\n if (this.finished) throw new Error('digest() was already called');\n this.writeInto(out);\n this.destroy();\n return out;\n }\n digest() {\n return this.digestInto(new Uint8Array(this.outputLen));\n }\n destroy() {\n this.destroyed = true;\n this.state.fill(0);\n }\n _cloneInto(to?: Keccak): Keccak {\n const { blockLen, suffix, outputLen, rounds, enableXOF } = this;\n to ||= new Keccak(blockLen, suffix, outputLen, enableXOF, rounds);\n to.state32.set(this.state32);\n to.pos = this.pos;\n to.posOut = this.posOut;\n to.finished = this.finished;\n to.rounds = rounds;\n // Suffix can change in cSHAKE\n to.suffix = suffix;\n to.outputLen = outputLen;\n to.enableXOF = enableXOF;\n to.destroyed = this.destroyed;\n return to;\n }\n}\n\nconst gen = (suffix: number, blockLen: number, outputLen: number) =>\n wrapConstructor(() => new Keccak(blockLen, suffix, outputLen));\n\nexport const sha3_224 = gen(0x06, 144, 224 / 8);\n/**\n * SHA3-256 hash function\n * @param message - that would be hashed\n */\nexport const sha3_256 = gen(0x06, 136, 256 / 8);\nexport const sha3_384 = gen(0x06, 104, 384 / 8);\nexport const sha3_512 = gen(0x06, 72, 512 / 8);\nexport const keccak_224 = gen(0x01, 144, 224 / 8);\n/**\n * keccak-256 hash function. Different from SHA3-256.\n * @param message - that would be hashed\n */\nexport const keccak_256 = gen(0x01, 136, 256 / 8);\nexport const keccak_384 = gen(0x01, 104, 384 / 8);\nexport const keccak_512 = gen(0x01, 72, 512 / 8);\n\nexport type ShakeOpts = { dkLen?: number };\n\nconst genShake = (suffix: number, blockLen: number, outputLen: number) =>\n wrapConstructorWithOpts(\n (opts: ShakeOpts = {}) =>\n new Keccak(blockLen, suffix, opts.dkLen === undefined ? outputLen : opts.dkLen, true)\n );\n\nexport const shake128 = genShake(0x1f, 168, 128 / 8);\nexport const shake256 = genShake(0x1f, 136, 256 / 8);\n","import { SHA2 } from './_sha2.js';\nimport u64 from './_u64.js';\nimport { wrapConstructor } from './utils.js';\n\n// Round contants (first 32 bits of the fractional parts of the cube roots of the first 80 primes 2..409):\n// prettier-ignore\nconst [SHA512_Kh, SHA512_Kl] = u64.split([\n '0x428a2f98d728ae22', '0x7137449123ef65cd', '0xb5c0fbcfec4d3b2f', '0xe9b5dba58189dbbc',\n '0x3956c25bf348b538', '0x59f111f1b605d019', '0x923f82a4af194f9b', '0xab1c5ed5da6d8118',\n '0xd807aa98a3030242', '0x12835b0145706fbe', '0x243185be4ee4b28c', '0x550c7dc3d5ffb4e2',\n '0x72be5d74f27b896f', '0x80deb1fe3b1696b1', '0x9bdc06a725c71235', '0xc19bf174cf692694',\n '0xe49b69c19ef14ad2', '0xefbe4786384f25e3', '0x0fc19dc68b8cd5b5', '0x240ca1cc77ac9c65',\n '0x2de92c6f592b0275', '0x4a7484aa6ea6e483', '0x5cb0a9dcbd41fbd4', '0x76f988da831153b5',\n '0x983e5152ee66dfab', '0xa831c66d2db43210', '0xb00327c898fb213f', '0xbf597fc7beef0ee4',\n '0xc6e00bf33da88fc2', '0xd5a79147930aa725', '0x06ca6351e003826f', '0x142929670a0e6e70',\n '0x27b70a8546d22ffc', '0x2e1b21385c26c926', '0x4d2c6dfc5ac42aed', '0x53380d139d95b3df',\n '0x650a73548baf63de', '0x766a0abb3c77b2a8', '0x81c2c92e47edaee6', '0x92722c851482353b',\n '0xa2bfe8a14cf10364', '0xa81a664bbc423001', '0xc24b8b70d0f89791', '0xc76c51a30654be30',\n '0xd192e819d6ef5218', '0xd69906245565a910', '0xf40e35855771202a', '0x106aa07032bbd1b8',\n '0x19a4c116b8d2d0c8', '0x1e376c085141ab53', '0x2748774cdf8eeb99', '0x34b0bcb5e19b48a8',\n '0x391c0cb3c5c95a63', '0x4ed8aa4ae3418acb', '0x5b9cca4f7763e373', '0x682e6ff3d6b2b8a3',\n '0x748f82ee5defb2fc', '0x78a5636f43172f60', '0x84c87814a1f0ab72', '0x8cc702081a6439ec',\n '0x90befffa23631e28', '0xa4506cebde82bde9', '0xbef9a3f7b2c67915', '0xc67178f2e372532b',\n '0xca273eceea26619c', '0xd186b8c721c0c207', '0xeada7dd6cde0eb1e', '0xf57d4f7fee6ed178',\n '0x06f067aa72176fba', '0x0a637dc5a2c898a6', '0x113f9804bef90dae', '0x1b710b35131c471b',\n '0x28db77f523047d84', '0x32caab7b40c72493', '0x3c9ebe0a15c9bebc', '0x431d67c49c100d4c',\n '0x4cc5d4becb3e42b6', '0x597f299cfc657e2a', '0x5fcb6fab3ad6faec', '0x6c44198c4a475817'\n].map(n => BigInt(n)));\n\n// Temporary buffer, not used to store anything between runs\nconst SHA512_W_H = new Uint32Array(80);\nconst SHA512_W_L = new Uint32Array(80);\n\nexport class SHA512 extends SHA2 {\n // We cannot use array here since array allows indexing by variable which means optimizer/compiler cannot use registers.\n // Also looks cleaner and easier to verify with spec.\n // Initial state (first 32 bits of the fractional parts of the square roots of the first 8 primes 2..19):\n // h -- high 32 bits, l -- low 32 bits\n Ah = 0x6a09e667 | 0;\n Al = 0xf3bcc908 | 0;\n Bh = 0xbb67ae85 | 0;\n Bl = 0x84caa73b | 0;\n Ch = 0x3c6ef372 | 0;\n Cl = 0xfe94f82b | 0;\n Dh = 0xa54ff53a | 0;\n Dl = 0x5f1d36f1 | 0;\n Eh = 0x510e527f | 0;\n El = 0xade682d1 | 0;\n Fh = 0x9b05688c | 0;\n Fl = 0x2b3e6c1f | 0;\n Gh = 0x1f83d9ab | 0;\n Gl = 0xfb41bd6b | 0;\n Hh = 0x5be0cd19 | 0;\n Hl = 0x137e2179 | 0;\n\n constructor() {\n super(128, 64, 16, false);\n }\n // prettier-ignore\n protected get(): [\n number, number, number, number, number, number, number, number,\n number, number, number, number, number, number, number, number\n ] {\n const { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;\n return [Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl];\n }\n // prettier-ignore\n protected set(\n Ah: number, Al: number, Bh: number, Bl: number, Ch: number, Cl: number, Dh: number, Dl: number,\n Eh: number, El: number, Fh: number, Fl: number, Gh: number, Gl: number, Hh: number, Hl: number\n ) {\n this.Ah = Ah | 0;\n this.Al = Al | 0;\n this.Bh = Bh | 0;\n this.Bl = Bl | 0;\n this.Ch = Ch | 0;\n this.Cl = Cl | 0;\n this.Dh = Dh | 0;\n this.Dl = Dl | 0;\n this.Eh = Eh | 0;\n this.El = El | 0;\n this.Fh = Fh | 0;\n this.Fl = Fl | 0;\n this.Gh = Gh | 0;\n this.Gl = Gl | 0;\n this.Hh = Hh | 0;\n this.Hl = Hl | 0;\n }\n protected process(view: DataView, offset: number) {\n // Extend the first 16 words into the remaining 64 words w[16..79] of the message schedule array\n for (let i = 0; i < 16; i++, offset += 4) {\n SHA512_W_H[i] = view.getUint32(offset);\n SHA512_W_L[i] = view.getUint32((offset += 4));\n }\n for (let i = 16; i < 80; i++) {\n // s0 := (w[i-15] rightrotate 1) xor (w[i-15] rightrotate 8) xor (w[i-15] rightshift 7)\n const W15h = SHA512_W_H[i - 15] | 0;\n const W15l = SHA512_W_L[i - 15] | 0;\n const s0h = u64.rotrSH(W15h, W15l, 1) ^ u64.rotrSH(W15h, W15l, 8) ^ u64.shrSH(W15h, W15l, 7);\n const s0l = u64.rotrSL(W15h, W15l, 1) ^ u64.rotrSL(W15h, W15l, 8) ^ u64.shrSL(W15h, W15l, 7);\n // s1 := (w[i-2] rightrotate 19) xor (w[i-2] rightrotate 61) xor (w[i-2] rightshift 6)\n const W2h = SHA512_W_H[i - 2] | 0;\n const W2l = SHA512_W_L[i - 2] | 0;\n const s1h = u64.rotrSH(W2h, W2l, 19) ^ u64.rotrBH(W2h, W2l, 61) ^ u64.shrSH(W2h, W2l, 6);\n const s1l = u64.rotrSL(W2h, W2l, 19) ^ u64.rotrBL(W2h, W2l, 61) ^ u64.shrSL(W2h, W2l, 6);\n // SHA256_W[i] = s0 + s1 + SHA256_W[i - 7] + SHA256_W[i - 16];\n const SUMl = u64.add4L(s0l, s1l, SHA512_W_L[i - 7], SHA512_W_L[i - 16]);\n const SUMh = u64.add4H(SUMl, s0h, s1h, SHA512_W_H[i - 7], SHA512_W_H[i - 16]);\n SHA512_W_H[i] = SUMh | 0;\n SHA512_W_L[i] = SUMl | 0;\n }\n let { Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl } = this;\n // Compression function main loop, 80 rounds\n for (let i = 0; i < 80; i++) {\n // S1 := (e rightrotate 14) xor (e rightrotate 18) xor (e rightrotate 41)\n const sigma1h = u64.rotrSH(Eh, El, 14) ^ u64.rotrSH(Eh, El, 18) ^ u64.rotrBH(Eh, El, 41);\n const sigma1l = u64.rotrSL(Eh, El, 14) ^ u64.rotrSL(Eh, El, 18) ^ u64.rotrBL(Eh, El, 41);\n //const T1 = (H + sigma1 + Chi(E, F, G) + SHA256_K[i] + SHA256_W[i]) | 0;\n const CHIh = (Eh & Fh) ^ (~Eh & Gh);\n const CHIl = (El & Fl) ^ (~El & Gl);\n // T1 = H + sigma1 + Chi(E, F, G) + SHA512_K[i] + SHA512_W[i]\n // prettier-ignore\n const T1ll = u64.add5L(Hl, sigma1l, CHIl, SHA512_Kl[i], SHA512_W_L[i]);\n const T1h = u64.add5H(T1ll, Hh, sigma1h, CHIh, SHA512_Kh[i], SHA512_W_H[i]);\n const T1l = T1ll | 0;\n // S0 := (a rightrotate 28) xor (a rightrotate 34) xor (a rightrotate 39)\n const sigma0h = u64.rotrSH(Ah, Al, 28) ^ u64.rotrBH(Ah, Al, 34) ^ u64.rotrBH(Ah, Al, 39);\n const sigma0l = u64.rotrSL(Ah, Al, 28) ^ u64.rotrBL(Ah, Al, 34) ^ u64.rotrBL(Ah, Al, 39);\n const MAJh = (Ah & Bh) ^ (Ah & Ch) ^ (Bh & Ch);\n const MAJl = (Al & Bl) ^ (Al & Cl) ^ (Bl & Cl);\n Hh = Gh | 0;\n Hl = Gl | 0;\n Gh = Fh | 0;\n Gl = Fl | 0;\n Fh = Eh | 0;\n Fl = El | 0;\n ({ h: Eh, l: El } = u64.add(Dh | 0, Dl | 0, T1h | 0, T1l | 0));\n Dh = Ch | 0;\n Dl = Cl | 0;\n Ch = Bh | 0;\n Cl = Bl | 0;\n Bh = Ah | 0;\n Bl = Al | 0;\n const All = u64.add3L(T1l, sigma0l, MAJl);\n Ah = u64.add3H(All, T1h, sigma0h, MAJh);\n Al = All | 0;\n }\n // Add the compressed chunk to the current hash value\n ({ h: Ah, l: Al } = u64.add(this.Ah | 0, this.Al | 0, Ah | 0, Al | 0));\n ({ h: Bh, l: Bl } = u64.add(this.Bh | 0, this.Bl | 0, Bh | 0, Bl | 0));\n ({ h: Ch, l: Cl } = u64.add(this.Ch | 0, this.Cl | 0, Ch | 0, Cl | 0));\n ({ h: Dh, l: Dl } = u64.add(this.Dh | 0, this.Dl | 0, Dh | 0, Dl | 0));\n ({ h: Eh, l: El } = u64.add(this.Eh | 0, this.El | 0, Eh | 0, El | 0));\n ({ h: Fh, l: Fl } = u64.add(this.Fh | 0, this.Fl | 0, Fh | 0, Fl | 0));\n ({ h: Gh, l: Gl } = u64.add(this.Gh | 0, this.Gl | 0, Gh | 0, Gl | 0));\n ({ h: Hh, l: Hl } = u64.add(this.Hh | 0, this.Hl | 0, Hh | 0, Hl | 0));\n this.set(Ah, Al, Bh, Bl, Ch, Cl, Dh, Dl, Eh, El, Fh, Fl, Gh, Gl, Hh, Hl);\n }\n protected roundClean() {\n SHA512_W_H.fill(0);\n SHA512_W_L.fill(0);\n }\n destroy() {\n this.buffer.fill(0);\n this.set(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);\n }\n}\n\nclass SHA512_224 extends SHA512 {\n // h -- high 32 bits, l -- low 32 bits\n Ah = 0x8c3d37c8 | 0;\n Al = 0x19544da2 | 0;\n Bh = 0x73e19966 | 0;\n Bl = 0x89dcd4d6 | 0;\n Ch = 0x1dfab7ae | 0;\n Cl = 0x32ff9c82 | 0;\n Dh = 0x679dd514 | 0;\n Dl = 0x582f9fcf | 0;\n Eh = 0x0f6d2b69 | 0;\n El = 0x7bd44da8 | 0;\n Fh = 0x77e36f73 | 0;\n Fl = 0x04c48942 | 0;\n Gh = 0x3f9d85a8 | 0;\n Gl = 0x6a1d36c8 | 0;\n Hh = 0x1112e6ad | 0;\n Hl = 0x91d692a1 | 0;\n\n constructor() {\n super();\n this.outputLen = 28;\n }\n}\n\nclass SHA512_256 extends SHA512 {\n // h -- high 32 bits, l -- low 32 bits\n Ah = 0x22312194 | 0;\n Al = 0xfc2bf72c | 0;\n Bh = 0x9f555fa3 | 0;\n Bl = 0xc84c64c2 | 0;\n Ch = 0x2393b86b | 0;\n Cl = 0x6f53b151 | 0;\n Dh = 0x96387719 | 0;\n Dl = 0x5940eabd | 0;\n Eh = 0x96283ee2 | 0;\n El = 0xa88effe3 | 0;\n Fh = 0xbe5e1e25 | 0;\n Fl = 0x53863992 | 0;\n Gh = 0x2b0199fc | 0;\n Gl = 0x2c85b8aa | 0;\n Hh = 0x0eb72ddc | 0;\n Hl = 0x81c52ca2 | 0;\n\n constructor() {\n super();\n this.outputLen = 32;\n }\n}\n\nclass SHA384 extends SHA512 {\n // h -- high 32 bits, l -- low 32 bits\n Ah = 0xcbbb9d5d | 0;\n Al = 0xc1059ed8 | 0;\n Bh = 0x629a292a | 0;\n Bl = 0x367cd507 | 0;\n Ch = 0x9159015a | 0;\n Cl = 0x3070dd17 | 0;\n Dh = 0x152fecd8 | 0;\n Dl = 0xf70e5939 | 0;\n Eh = 0x67332667 | 0;\n El = 0xffc00b31 | 0;\n Fh = 0x8eb44a87 | 0;\n Fl = 0x68581511 | 0;\n Gh = 0xdb0c2e0d | 0;\n Gl = 0x64f98fa7 | 0;\n Hh = 0x47b5481d | 0;\n Hl = 0xbefa4fa4 | 0;\n\n constructor() {\n super();\n this.outputLen = 48;\n }\n}\n\nexport const sha512 = wrapConstructor(() => new SHA512());\nexport const sha512_224 = wrapConstructor(() => new SHA512_224());\nexport const sha512_256 = wrapConstructor(() => new SHA512_256());\nexport const sha384 = wrapConstructor(() => new SHA384());\n","/*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) */\n\n// We use `globalThis.crypto`, but node.js versions earlier than v19 don't\n// declare it in global scope. For node.js, package.json#exports field mapping\n// rewrites import from `crypto` to `cryptoNode`, which imports native module.\n// Makes the utils un-importable in browsers without a bundler.\n// Once node.js 18 is deprecated, we can just drop the import.\nimport { crypto } from '@noble/hashes/crypto';\n\n// prettier-ignore\nexport type TypedArray = Int8Array | Uint8ClampedArray | Uint8Array |\n Uint16Array | Int16Array | Uint32Array | Int32Array;\n\n// Cast array to different type\nexport const u8 = (arr: TypedArray) => new Uint8Array(arr.buffer, arr.byteOffset, arr.byteLength);\nexport const u32 = (arr: TypedArray) =>\n new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));\n\n// Cast array to view\nexport const createView = (arr: TypedArray) =>\n new DataView(arr.buffer, arr.byteOffset, arr.byteLength);\n\n// The rotate right (circular right shift) operation for uint32\nexport const rotr = (word: number, shift: number) => (word << (32 - shift)) | (word >>> shift);\n\n// big-endian hardware is rare. Just in case someone still decides to run hashes:\n// early-throw an error because we don't support BE yet.\nexport const isLE = new Uint8Array(new Uint32Array([0x11223344]).buffer)[0] === 0x44;\nif (!isLE) throw new Error('Non little-endian hardware is not supported');\n\nconst hexes = Array.from({ length: 256 }, (v, i) => i.toString(16).padStart(2, '0'));\n/**\n * @example bytesToHex(Uint8Array.from([0xde, 0xad, 0xbe, 0xef])) // 'deadbeef'\n */\nexport function bytesToHex(uint8a: Uint8Array): string {\n // pre-caching improves the speed 6x\n if (!(uint8a instanceof Uint8Array)) throw new Error('Uint8Array expected');\n let hex = '';\n for (let i = 0; i < uint8a.length; i++) {\n hex += hexes[uint8a[i]];\n }\n return hex;\n}\n\n/**\n * @example hexToBytes('deadbeef') // Uint8Array.from([0xde, 0xad, 0xbe, 0xef])\n */\nexport function hexToBytes(hex: string): Uint8Array {\n if (typeof hex !== 'string') {\n throw new TypeError('hexToBytes: expected string, got ' + typeof hex);\n }\n if (hex.length % 2) throw new Error('hexToBytes: received invalid unpadded hex');\n const array = new Uint8Array(hex.length / 2);\n for (let i = 0; i < array.length; i++) {\n const j = i * 2;\n const hexByte = hex.slice(j, j + 2);\n const byte = Number.parseInt(hexByte, 16);\n if (Number.isNaN(byte) || byte < 0) throw new Error('Invalid byte sequence');\n array[i] = byte;\n }\n return array;\n}\n\n// There is no setImmediate in browser and setTimeout is slow.\n// call of async fn will return Promise, which will be fullfiled only on\n// next scheduler queue processing step and this is exactly what we need.\nexport const nextTick = async () => {};\n\n// Returns control to thread each 'tick' ms to avoid blocking\nexport async function asyncLoop(iters: number, tick: number, cb: (i: number) => void) {\n let ts = Date.now();\n for (let i = 0; i < iters; i++) {\n cb(i);\n // Date.now() is not monotonic, so in case if clock goes backwards we return return control too\n const diff = Date.now() - ts;\n if (diff >= 0 && diff < tick) continue;\n await nextTick();\n ts += diff;\n }\n}\n\n// Global symbols in both browsers and Node.js since v11\n// See https://github.com/microsoft/TypeScript/issues/31535\ndeclare const TextEncoder: any;\ndeclare const TextDecoder: any;\n\nexport function utf8ToBytes(str: string): Uint8Array {\n if (typeof str !== 'string') {\n throw new TypeError(`utf8ToBytes expected string, got ${typeof str}`);\n }\n return new TextEncoder().encode(str);\n}\n\nexport type Input = Uint8Array | string;\nexport function toBytes(data: Input): Uint8Array {\n if (typeof data === 'string') data = utf8ToBytes(data);\n if (!(data instanceof Uint8Array))\n throw new TypeError(`Expected input type is Uint8Array (got ${typeof data})`);\n return data;\n}\n\n/**\n * Concats Uint8Array-s into one; like `Buffer.concat([buf1, buf2])`\n * @example concatBytes(buf1, buf2)\n */\nexport function concatBytes(...arrays: Uint8Array[]): Uint8Array {\n if (!arrays.every((a) => a instanceof Uint8Array)) throw new Error('Uint8Array list expected');\n if (arrays.length === 1) return arrays[0];\n const length = arrays.reduce((a, arr) => a + arr.length, 0);\n const result = new Uint8Array(length);\n for (let i = 0, pad = 0; i < arrays.length; i++) {\n const arr = arrays[i];\n result.set(arr, pad);\n pad += arr.length;\n }\n return result;\n}\n\n// For runtime check if class implements interface\nexport abstract class Hash> {\n abstract blockLen: number; // Bytes per block\n abstract outputLen: number; // Bytes in output\n abstract update(buf: Input): this;\n // Writes digest into buf\n abstract digestInto(buf: Uint8Array): void;\n abstract digest(): Uint8Array;\n /**\n * Resets internal state. Makes Hash instance unusable.\n * Reset is impossible for keyed hashes if key is consumed into state. If digest is not consumed\n * by user, they will need to manually call `destroy()` when zeroing is necessary.\n */\n abstract destroy(): void;\n /**\n * Clones hash instance. Unsafe: doesn't check whether `to` is valid. Can be used as `clone()`\n * when no options are passed.\n * Reasons to use `_cloneInto` instead of clone: 1) performance 2) reuse instance => all internal\n * buffers are overwritten => causes buffer overwrite which is used for digest in some cases.\n * There are no guarantees for clean-up because it's impossible in JS.\n */\n abstract _cloneInto(to?: T): T;\n // Safe version that clones internal state\n clone(): T {\n return this._cloneInto();\n }\n}\n\n/**\n * XOF: streaming API to read digest in chunks.\n * Same as 'squeeze' in keccak/k12 and 'seek' in blake3, but more generic name.\n * When hash used in XOF mode it is up to user to call '.destroy' afterwards, since we cannot\n * destroy state, next call can require more bytes.\n */\nexport type HashXOF> = Hash & {\n xof(bytes: number): Uint8Array; // Read 'bytes' bytes from digest stream\n xofInto(buf: Uint8Array): Uint8Array; // read buf.length bytes from digest stream into buf\n};\n\n// Check if object doens't have custom constructor (like Uint8Array/Array)\nconst isPlainObject = (obj: any) =>\n Object.prototype.toString.call(obj) === '[object Object]' && obj.constructor === Object;\n\ntype EmptyObj = {};\nexport function checkOpts(\n defaults: T1,\n opts?: T2\n): T1 & T2 {\n if (opts !== undefined && (typeof opts !== 'object' || !isPlainObject(opts)))\n throw new TypeError('Options should be object or undefined');\n const merged = Object.assign(defaults, opts);\n return merged as T1 & T2;\n}\n\nexport type CHash = ReturnType;\n\nexport function wrapConstructor>(hashConstructor: () => Hash) {\n const hashC = (message: Input): Uint8Array => hashConstructor().update(toBytes(message)).digest();\n const tmp = hashConstructor();\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = () => hashConstructor();\n return hashC;\n}\n\nexport function wrapConstructorWithOpts, T extends Object>(\n hashCons: (opts?: T) => Hash\n) {\n const hashC = (msg: Input, opts?: T): Uint8Array => hashCons(opts).update(toBytes(msg)).digest();\n const tmp = hashCons({} as T);\n hashC.outputLen = tmp.outputLen;\n hashC.blockLen = tmp.blockLen;\n hashC.create = (opts: T) => hashCons(opts);\n return hashC;\n}\n\n/**\n * Secure PRNG. Uses `globalThis.crypto` or node.js crypto module.\n */\nexport function randomBytes(bytesLength = 32): Uint8Array {\n if (crypto && typeof crypto.getRandomValues === 'function') {\n return crypto.getRandomValues(new Uint8Array(bytesLength));\n }\n throw new Error('crypto.getRandomValues must be defined');\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package binary provides functions for encoding and decoding numbers in byte arrays.\n */\n\nimport { isSafeInteger } from \"@stablelib/int\";\n\n// TODO(dchest): add asserts for correct value ranges and array offsets.\n\n/**\n * Reads 2 bytes from array starting at offset as big-endian\n * signed 16-bit integer and returns it.\n */\nexport function readInt16BE(array: Uint8Array, offset = 0): number {\n return (((array[offset + 0] << 8) | array[offset + 1]) << 16) >> 16;\n}\n\n/**\n * Reads 2 bytes from array starting at offset as big-endian\n * unsigned 16-bit integer and returns it.\n */\nexport function readUint16BE(array: Uint8Array, offset = 0): number {\n return ((array[offset + 0] << 8) | array[offset + 1]) >>> 0;\n}\n\n/**\n * Reads 2 bytes from array starting at offset as little-endian\n * signed 16-bit integer and returns it.\n */\nexport function readInt16LE(array: Uint8Array, offset = 0): number {\n return (((array[offset + 1] << 8) | array[offset]) << 16) >> 16;\n}\n\n/**\n * Reads 2 bytes from array starting at offset as little-endian\n * unsigned 16-bit integer and returns it.\n */\nexport function readUint16LE(array: Uint8Array, offset = 0): number {\n return ((array[offset + 1] << 8) | array[offset]) >>> 0;\n}\n\n/**\n * Writes 2-byte big-endian representation of 16-bit unsigned\n * value to byte array starting at offset.\n *\n * If byte array is not given, creates a new 2-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeUint16BE(value: number, out = new Uint8Array(2), offset = 0): Uint8Array {\n out[offset + 0] = value >>> 8;\n out[offset + 1] = value >>> 0;\n return out;\n}\n\nexport const writeInt16BE = writeUint16BE;\n\n/**\n * Writes 2-byte little-endian representation of 16-bit unsigned\n * value to array starting at offset.\n *\n * If byte array is not given, creates a new 2-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeUint16LE(value: number, out = new Uint8Array(2), offset = 0): Uint8Array {\n out[offset + 0] = value >>> 0;\n out[offset + 1] = value >>> 8;\n return out;\n}\n\nexport const writeInt16LE = writeUint16LE;\n\n/**\n * Reads 4 bytes from array starting at offset as big-endian\n * signed 32-bit integer and returns it.\n */\nexport function readInt32BE(array: Uint8Array, offset = 0): number {\n return (array[offset] << 24) |\n (array[offset + 1] << 16) |\n (array[offset + 2] << 8) |\n array[offset + 3];\n}\n\n/**\n * Reads 4 bytes from array starting at offset as big-endian\n * unsigned 32-bit integer and returns it.\n */\nexport function readUint32BE(array: Uint8Array, offset = 0): number {\n return ((array[offset] << 24) |\n (array[offset + 1] << 16) |\n (array[offset + 2] << 8) |\n array[offset + 3]) >>> 0;\n}\n\n/**\n * Reads 4 bytes from array starting at offset as little-endian\n * signed 32-bit integer and returns it.\n */\nexport function readInt32LE(array: Uint8Array, offset = 0): number {\n return (array[offset + 3] << 24) |\n (array[offset + 2] << 16) |\n (array[offset + 1] << 8) |\n array[offset];\n}\n\n/**\n * Reads 4 bytes from array starting at offset as little-endian\n * unsigned 32-bit integer and returns it.\n */\nexport function readUint32LE(array: Uint8Array, offset = 0): number {\n return ((array[offset + 3] << 24) |\n (array[offset + 2] << 16) |\n (array[offset + 1] << 8) |\n array[offset]) >>> 0;\n}\n\n/**\n * Writes 4-byte big-endian representation of 32-bit unsigned\n * value to byte array starting at offset.\n *\n * If byte array is not given, creates a new 4-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeUint32BE(value: number, out = new Uint8Array(4), offset = 0): Uint8Array {\n out[offset + 0] = value >>> 24;\n out[offset + 1] = value >>> 16;\n out[offset + 2] = value >>> 8;\n out[offset + 3] = value >>> 0;\n return out;\n}\n\nexport const writeInt32BE = writeUint32BE;\n\n/**\n * Writes 4-byte little-endian representation of 32-bit unsigned\n * value to array starting at offset.\n *\n * If byte array is not given, creates a new 4-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeUint32LE(value: number, out = new Uint8Array(4), offset = 0): Uint8Array {\n out[offset + 0] = value >>> 0;\n out[offset + 1] = value >>> 8;\n out[offset + 2] = value >>> 16;\n out[offset + 3] = value >>> 24;\n return out;\n}\n\n\nexport const writeInt32LE = writeUint32LE;\n\n/**\n * Reads 8 bytes from array starting at offset as big-endian\n * signed 64-bit integer and returns it.\n *\n * IMPORTANT: due to JavaScript limitation, supports exact\n * numbers in range -9007199254740991 to 9007199254740991.\n * If the number stored in the byte array is outside this range,\n * the result is not exact.\n */\nexport function readInt64BE(array: Uint8Array, offset = 0): number {\n const hi = readInt32BE(array, offset);\n const lo = readInt32BE(array, offset + 4);\n return hi * 0x100000000 + lo - ((lo>>31) * 0x100000000);\n}\n\n/**\n * Reads 8 bytes from array starting at offset as big-endian\n * unsigned 64-bit integer and returns it.\n *\n * IMPORTANT: due to JavaScript limitation, supports values up to 2^53-1.\n */\nexport function readUint64BE(array: Uint8Array, offset = 0): number {\n const hi = readUint32BE(array, offset);\n const lo = readUint32BE(array, offset + 4);\n return hi * 0x100000000 + lo;\n}\n\n/**\n * Reads 8 bytes from array starting at offset as little-endian\n * signed 64-bit integer and returns it.\n *\n * IMPORTANT: due to JavaScript limitation, supports exact\n * numbers in range -9007199254740991 to 9007199254740991.\n * If the number stored in the byte array is outside this range,\n * the result is not exact.\n */\nexport function readInt64LE(array: Uint8Array, offset = 0): number {\n const lo = readInt32LE(array, offset);\n const hi = readInt32LE(array, offset + 4);\n return hi * 0x100000000 + lo - ((lo>>31) * 0x100000000);\n}\n\n\n/**\n * Reads 8 bytes from array starting at offset as little-endian\n * unsigned 64-bit integer and returns it.\n *\n * IMPORTANT: due to JavaScript limitation, supports values up to 2^53-1.\n */\nexport function readUint64LE(array: Uint8Array, offset = 0): number {\n const lo = readUint32LE(array, offset);\n const hi = readUint32LE(array, offset + 4);\n return hi * 0x100000000 + lo;\n}\n\n/**\n * Writes 8-byte big-endian representation of 64-bit unsigned\n * value to byte array starting at offset.\n *\n * Due to JavaScript limitation, supports values up to 2^53-1.\n *\n * If byte array is not given, creates a new 8-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeUint64BE(value: number, out = new Uint8Array(8), offset = 0): Uint8Array {\n writeUint32BE(value / 0x100000000 >>> 0, out, offset);\n writeUint32BE(value >>> 0, out, offset + 4);\n return out;\n}\n\nexport const writeInt64BE = writeUint64BE;\n\n/**\n * Writes 8-byte little-endian representation of 64-bit unsigned\n * value to byte array starting at offset.\n *\n * Due to JavaScript limitation, supports values up to 2^53-1.\n *\n * If byte array is not given, creates a new 8-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeUint64LE(value: number, out = new Uint8Array(8), offset = 0): Uint8Array {\n writeUint32LE(value >>> 0, out, offset);\n writeUint32LE(value / 0x100000000 >>> 0, out, offset + 4);\n return out;\n}\n\nexport const writeInt64LE = writeUint64LE;\n\n/**\n * Reads bytes from array starting at offset as big-endian\n * unsigned bitLen-bit integer and returns it.\n *\n * Supports bit lengths divisible by 8, up to 48.\n */\nexport function readUintBE(bitLength: number, array: Uint8Array, offset = 0): number {\n // TODO(dchest): implement support for bitLengths non-divisible by 8\n if (bitLength % 8 !== 0) {\n throw new Error(\"readUintBE supports only bitLengths divisible by 8\");\n }\n if (bitLength / 8 > array.length - offset) {\n throw new Error(\"readUintBE: array is too short for the given bitLength\");\n }\n let result = 0;\n let mul = 1;\n for (let i = bitLength / 8 + offset - 1; i >= offset; i--) {\n result += array[i] * mul;\n mul *= 256;\n }\n return result;\n}\n\n/**\n * Reads bytes from array starting at offset as little-endian\n * unsigned bitLen-bit integer and returns it.\n *\n * Supports bit lengths divisible by 8, up to 48.\n */\nexport function readUintLE(bitLength: number, array: Uint8Array, offset = 0): number {\n // TODO(dchest): implement support for bitLengths non-divisible by 8\n if (bitLength % 8 !== 0) {\n throw new Error(\"readUintLE supports only bitLengths divisible by 8\");\n }\n if (bitLength / 8 > array.length - offset) {\n throw new Error(\"readUintLE: array is too short for the given bitLength\");\n }\n let result = 0;\n let mul = 1;\n for (let i = offset; i < offset + bitLength / 8; i++) {\n result += array[i] * mul;\n mul *= 256;\n }\n return result;\n}\n\n/**\n * Writes a big-endian representation of bitLen-bit unsigned\n * value to array starting at offset.\n *\n * Supports bit lengths divisible by 8, up to 48.\n *\n * If byte array is not given, creates a new one.\n *\n * Returns the output byte array.\n */\nexport function writeUintBE(bitLength: number, value: number,\n out = new Uint8Array(bitLength / 8), offset = 0): Uint8Array {\n // TODO(dchest): implement support for bitLengths non-divisible by 8\n if (bitLength % 8 !== 0) {\n throw new Error(\"writeUintBE supports only bitLengths divisible by 8\");\n }\n if (!isSafeInteger(value)) {\n throw new Error(\"writeUintBE value must be an integer\");\n }\n let div = 1;\n for (let i = bitLength / 8 + offset - 1; i >= offset; i--) {\n out[i] = (value / div) & 0xff;\n div *= 256;\n }\n return out;\n}\n\n/**\n * Writes a little-endian representation of bitLen-bit unsigned\n * value to array starting at offset.\n *\n * Supports bit lengths divisible by 8, up to 48.\n *\n * If byte array is not given, creates a new one.\n *\n * Returns the output byte array.\n */\nexport function writeUintLE(bitLength: number, value: number,\n out = new Uint8Array(bitLength / 8), offset = 0): Uint8Array {\n // TODO(dchest): implement support for bitLengths non-divisible by 8\n if (bitLength % 8 !== 0) {\n throw new Error(\"writeUintLE supports only bitLengths divisible by 8\");\n }\n if (!isSafeInteger(value)) {\n throw new Error(\"writeUintLE value must be an integer\");\n }\n let div = 1;\n for (let i = offset; i < offset + bitLength / 8; i++) {\n out[i] = (value / div) & 0xff;\n div *= 256;\n }\n return out;\n}\n\n/**\n * Reads 4 bytes from array starting at offset as big-endian\n * 32-bit floating-point number and returns it.\n */\nexport function readFloat32BE(array: Uint8Array, offset = 0): number {\n const view = new DataView(array.buffer, array.byteOffset, array.byteLength);\n return view.getFloat32(offset);\n}\n\n/**\n * Reads 4 bytes from array starting at offset as little-endian\n * 32-bit floating-point number and returns it.\n */\nexport function readFloat32LE(array: Uint8Array, offset = 0): number {\n const view = new DataView(array.buffer, array.byteOffset, array.byteLength);\n return view.getFloat32(offset, true);\n}\n\n/**\n * Reads 8 bytes from array starting at offset as big-endian\n * 64-bit floating-point number (\"double\") and returns it.\n */\nexport function readFloat64BE(array: Uint8Array, offset = 0): number {\n const view = new DataView(array.buffer, array.byteOffset, array.byteLength);\n return view.getFloat64(offset);\n}\n\n/**\n * Reads 8 bytes from array starting at offset as little-endian\n * 64-bit floating-point number (\"double\") and returns it.\n */\nexport function readFloat64LE(array: Uint8Array, offset = 0): number {\n const view = new DataView(array.buffer, array.byteOffset, array.byteLength);\n return view.getFloat64(offset, true);\n}\n\n/**\n * Writes 4-byte big-endian floating-point representation of value\n * to byte array starting at offset.\n *\n * If byte array is not given, creates a new 4-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeFloat32BE(value: number, out = new Uint8Array(4), offset = 0): Uint8Array {\n const view = new DataView(out.buffer, out.byteOffset, out.byteLength);\n view.setFloat32(offset, value);\n return out;\n}\n\n/**\n * Writes 4-byte little-endian floating-point representation of value\n * to byte array starting at offset.\n *\n * If byte array is not given, creates a new 4-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeFloat32LE(value: number, out = new Uint8Array(4), offset = 0): Uint8Array {\n const view = new DataView(out.buffer, out.byteOffset, out.byteLength);\n view.setFloat32(offset, value, true);\n return out;\n}\n\n/**\n * Writes 8-byte big-endian floating-point representation of value\n * to byte array starting at offset.\n *\n * If byte array is not given, creates a new 8-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeFloat64BE(value: number, out = new Uint8Array(8), offset = 0): Uint8Array {\n const view = new DataView(out.buffer, out.byteOffset, out.byteLength);\n view.setFloat64(offset, value);\n return out;\n}\n\n/**\n * Writes 8-byte little-endian floating-point representation of value\n * to byte array starting at offset.\n *\n * If byte array is not given, creates a new 8-byte one.\n *\n * Returns the output byte array.\n */\nexport function writeFloat64LE(value: number, out = new Uint8Array(8), offset = 0): Uint8Array {\n const view = new DataView(out.buffer, out.byteOffset, out.byteLength);\n view.setFloat64(offset, value, true);\n return out;\n}\n","// Copyright (C) 2017 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package blake2b implements BLAKE2b cryptographic hash function.\n */\n\nimport { SerializableHash } from \"@stablelib/hash\";\nimport { readUint32LE, writeUint32LE } from \"@stablelib/binary\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport const BLOCK_SIZE = 128;\nexport const DIGEST_LENGTH = 64;\nexport const KEY_LENGTH = 64;\nexport const PERSONALIZATION_LENGTH = 16;\nexport const SALT_LENGTH = 16;\n\nexport const MAX_LEAF_SIZE = Math.pow(2, 32) - 1;\nexport const MAX_FANOUT = 255;\nexport const MAX_MAX_DEPTH = 255; // not a typo\n\n/**\n * Configuration for hash function.\n */\nexport type Config = {\n key?: Uint8Array;\n salt?: Uint8Array;\n personalization?: Uint8Array;\n tree?: Tree;\n};\n\n/**\n * Tree hashing parameters.\n */\nexport type Tree = {\n fanout: number; // fanout\n maxDepth: number; // maximal depth\n leafSize: number; // leaf maximal byte length (0 for unlimited)\n nodeOffsetHighBits: number; // high bits of node offset\n nodeOffsetLowBits: number; // low bits of node offset (0 for first, leftmost or leaf)\n nodeDepth: number; // node depth (0 for leaves)\n innerDigestLength: number; // inner digest length\n lastNode: boolean; // indicates processing of the last node of layer\n};\n\nconst IV = new Uint32Array([\n // low bits // high bits\n 0xf3bcc908, 0x6a09e667,\n 0x84caa73b, 0xbb67ae85,\n 0xfe94f82b, 0x3c6ef372,\n 0x5f1d36f1, 0xa54ff53a,\n 0xade682d1, 0x510e527f,\n 0x2b3e6c1f, 0x9b05688c,\n 0xfb41bd6b, 0x1f83d9ab,\n 0x137e2179, 0x5be0cd19,\n]);\n\n// Note: sigma values are doubled since we store\n// 64-bit ints as two 32-bit ints in arrays.\nconst SIGMA = [\n [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30],\n [28, 20, 8, 16, 18, 30, 26, 12, 2, 24, 0, 4, 22, 14, 10, 6],\n [22, 16, 24, 0, 10, 4, 30, 26, 20, 28, 6, 12, 14, 2, 18, 8],\n [14, 18, 6, 2, 26, 24, 22, 28, 4, 12, 10, 20, 8, 0, 30, 16],\n [18, 0, 10, 14, 4, 8, 20, 30, 28, 2, 22, 24, 12, 16, 6, 26],\n [4, 24, 12, 20, 0, 22, 16, 6, 8, 26, 14, 10, 30, 28, 2, 18],\n [24, 10, 2, 30, 28, 26, 8, 20, 0, 14, 12, 6, 18, 4, 16, 22],\n [26, 22, 14, 28, 24, 2, 6, 18, 10, 0, 30, 8, 16, 12, 4, 20],\n [12, 30, 28, 18, 22, 6, 0, 16, 24, 4, 26, 14, 2, 8, 20, 10],\n [20, 4, 16, 8, 14, 12, 2, 10, 30, 22, 18, 28, 6, 24, 26, 0],\n [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30],\n [28, 20, 8, 16, 18, 30, 26, 12, 2, 24, 0, 4, 22, 14, 10, 6]\n];\n\n/**\n * BLAKE2b hash function.\n */\nexport class BLAKE2b implements SerializableHash {\n readonly blockSize = BLOCK_SIZE;\n\n // Note: Int32Arrays for state and message are used for performance reasons.\n private _state = new Int32Array(IV); // hash state, initialized with IV\n private _buffer = new Uint8Array(BLOCK_SIZE); // buffer for data\n private _bufferLength = 0; // number of bytes in buffer\n private _ctr = new Uint32Array(4);\n private _flag = new Uint32Array(4);\n private _lastNode = false;\n private _finished = false;\n\n private _vtmp = new Uint32Array(32);\n private _mtmp = new Uint32Array(32);\n\n private _paddedKey: Uint8Array | undefined; // copy of zero-padded key if present\n private _initialState: Uint32Array; // initial state after initialization\n\n constructor(public digestLength = 64, config?: Config) {\n // Validate digest length.\n if (digestLength < 1 || digestLength > DIGEST_LENGTH) {\n throw new Error(\"blake2b: wrong digest length\");\n }\n\n // Validate config, if present.\n if (config) {\n this.validateConfig(config);\n }\n\n // Get key length from config.\n let keyLength = 0;\n if (config && config.key) {\n keyLength = config.key.length;\n }\n\n // Get tree fanout and maxDepth from config.\n let fanout = 1;\n let maxDepth = 1;\n if (config && config.tree) {\n fanout = config.tree.fanout;\n maxDepth = config.tree.maxDepth;\n }\n\n // Xor common parameters into state.\n this._state[0] ^= digestLength | (keyLength << 8) | (fanout << 16) | (maxDepth << 24);\n\n // Xor tree parameters into state.\n if (config && config.tree) {\n this._state[1] ^= config.tree.leafSize;\n\n this._state[2] ^= config.tree.nodeOffsetLowBits;\n this._state[3] ^= config.tree.nodeOffsetHighBits;\n this._state[4] ^= config.tree.nodeDepth | (config.tree.innerDigestLength << 8);\n\n this._lastNode = config.tree.lastNode;\n }\n\n // Xor salt into state.\n if (config && config.salt) {\n this._state[8] ^= readUint32LE(config.salt, 0);\n this._state[9] ^= readUint32LE(config.salt, 4);\n this._state[10] ^= readUint32LE(config.salt, 8);\n this._state[11] ^= readUint32LE(config.salt, 12);\n }\n\n // Xor personalization into state.\n if (config && config.personalization) {\n this._state[12] ^= readUint32LE(config.personalization, 0);\n this._state[13] ^= readUint32LE(config.personalization, 4);\n this._state[14] ^= readUint32LE(config.personalization, 8);\n this._state[15] ^= readUint32LE(config.personalization, 12);\n }\n\n // Save a copy of initialized state for reset.\n this._initialState = new Uint32Array(this._state);\n\n // Process key.\n if (config && config.key && keyLength > 0) {\n this._paddedKey = new Uint8Array(BLOCK_SIZE);\n this._paddedKey.set(config.key);\n\n // Put padded key into buffer.\n this._buffer.set(this._paddedKey);\n this._bufferLength = BLOCK_SIZE;\n }\n }\n\n reset(): this {\n // Restore initial state.\n this._state.set(this._initialState);\n\n if (this._paddedKey) {\n // Put padded key into buffer.\n this._buffer.set(this._paddedKey);\n this._bufferLength = BLOCK_SIZE;\n } else {\n this._bufferLength = 0;\n }\n\n // Clear counters and flags.\n wipe(this._ctr);\n wipe(this._flag);\n this._finished = false;\n\n return this;\n }\n\n validateConfig(config: Config) {\n if (config.key && config.key.length > KEY_LENGTH) {\n throw new Error(\"blake2b: wrong key length\");\n }\n if (config.salt && config.salt.length !== SALT_LENGTH) {\n throw new Error(\"blake2b: wrong salt length\");\n }\n if (config.personalization &&\n config.personalization.length !== PERSONALIZATION_LENGTH) {\n throw new Error(\"blake2b: wrong personalization length\");\n }\n if (config.tree) {\n if (config.tree.fanout < 0 || config.tree.fanout > MAX_FANOUT) {\n throw new Error(\"blake2b: wrong tree fanout\");\n }\n if (config.tree.maxDepth < 0 || config.tree.maxDepth > MAX_MAX_DEPTH) {\n throw new Error(\"blake2b: wrong tree depth\");\n }\n if (config.tree.leafSize < 0 || config.tree.leafSize > MAX_LEAF_SIZE) {\n throw new Error(\"blake2b: wrong leaf size\");\n }\n if (config.tree.innerDigestLength < 0 ||\n config.tree.innerDigestLength > DIGEST_LENGTH) {\n throw new Error(\"blake2b: wrong tree inner digest length\");\n }\n }\n }\n\n update(data: Uint8Array, dataLength = data.length): this {\n if (this._finished) {\n throw new Error(\"blake2b: can't update because hash was finished.\");\n }\n\n const left = BLOCK_SIZE - this._bufferLength;\n let dataPos = 0;\n\n if (dataLength === 0) {\n return this;\n }\n\n // Finish buffer.\n if (dataLength > left) {\n for (let i = 0; i < left; i++) {\n this._buffer[this._bufferLength + i] = data[dataPos + i];\n }\n this._processBlock(BLOCK_SIZE);\n dataPos += left;\n dataLength -= left;\n this._bufferLength = 0;\n }\n\n // Process data blocks.\n while (dataLength > BLOCK_SIZE) {\n for (let i = 0; i < BLOCK_SIZE; i++) {\n this._buffer[i] = data[dataPos + i];\n }\n this._processBlock(BLOCK_SIZE);\n dataPos += BLOCK_SIZE;\n dataLength -= BLOCK_SIZE;\n this._bufferLength = 0;\n }\n\n // Copy leftovers to buffer.\n for (let i = 0; i < dataLength; i++) {\n this._buffer[this._bufferLength + i] = data[dataPos + i];\n }\n this._bufferLength += dataLength;\n\n return this;\n }\n\n finish(out: Uint8Array): this {\n if (!this._finished) {\n for (let i = this._bufferLength; i < BLOCK_SIZE; i++) {\n this._buffer[i] = 0;\n }\n\n // Set last block flag.\n this._flag[0] = 0xffffffff;\n this._flag[1] = 0xffffffff;\n\n // Set last node flag if last node in tree.\n if (this._lastNode) {\n this._flag[2] = 0xffffffff;\n this._flag[3] = 0xffffffff;\n }\n\n this._processBlock(this._bufferLength);\n this._finished = true;\n }\n // Reuse buffer as temporary space for digest.\n const tmp = this._buffer.subarray(0, 64);\n for (let i = 0; i < 16; i++) {\n writeUint32LE(this._state[i], tmp, i * 4);\n }\n out.set(tmp.subarray(0, out.length));\n return this;\n }\n\n digest(): Uint8Array {\n const out = new Uint8Array(this.digestLength);\n this.finish(out);\n return out;\n }\n\n clean() {\n wipe(this._vtmp);\n wipe(this._mtmp);\n wipe(this._state);\n wipe(this._buffer);\n wipe(this._initialState);\n if (this._paddedKey) {\n wipe(this._paddedKey);\n }\n this._bufferLength = 0;\n wipe(this._ctr);\n wipe(this._flag);\n this._lastNode = false;\n this._finished = false;\n }\n\n saveState(): SavedState {\n if (this._finished) {\n throw new Error(\"blake2b: cannot save finished state\");\n }\n return {\n state: new Uint32Array(this._state),\n buffer: new Uint8Array(this._buffer),\n bufferLength: this._bufferLength,\n ctr: new Uint32Array(this._ctr),\n flag: new Uint32Array(this._flag),\n lastNode: this._lastNode,\n paddedKey: this._paddedKey ? new Uint8Array(this._paddedKey) : undefined,\n initialState: new Uint32Array(this._initialState)\n };\n }\n\n restoreState(savedState: SavedState): this {\n this._state.set(savedState.state);\n this._buffer.set(savedState.buffer);\n this._bufferLength = savedState.bufferLength;\n this._ctr.set(savedState.ctr);\n this._flag.set(savedState.flag);\n this._lastNode = savedState.lastNode;\n if (this._paddedKey) {\n wipe(this._paddedKey);\n }\n this._paddedKey = savedState.paddedKey ? new Uint8Array(savedState.paddedKey) : undefined;\n this._initialState.set(savedState.initialState);\n return this;\n }\n\n cleanSavedState(savedState: SavedState): void {\n wipe(savedState.state);\n wipe(savedState.buffer);\n wipe(savedState.initialState);\n if (savedState.paddedKey) {\n wipe(savedState.paddedKey);\n }\n savedState.bufferLength = 0;\n wipe(savedState.ctr);\n wipe(savedState.flag);\n savedState.lastNode = false;\n }\n\n private _G(v: Uint32Array,\n al: number, bl: number, cl: number, dl: number,\n ah: number, bh: number, ch: number, dh: number,\n ml0: number, mh0: number,\n ml1: number, mh1: number) {\n let vla = v[al],\n vha = v[ah],\n vlb = v[bl],\n vhb = v[bh],\n vlc = v[cl],\n vhc = v[ch],\n vld = v[dl],\n vhd = v[dh];\n\n // 64-bit: va += vb\n let w = vla & 0xffff,\n x = vla >>> 16,\n y = vha & 0xffff,\n z = vha >>> 16;\n\n w += vlb & 0xffff; x += vlb >>> 16;\n y += vhb & 0xffff; z += vhb >>> 16;\n\n x += w >>> 16;\n y += x >>> 16;\n z += y >>> 16;\n\n vha = (y & 0xffff) | (z << 16);\n vla = (w & 0xffff) | (x << 16);\n\n // 64-bit: va += m[sigma[r][2 * i + 0]]\n w = vla & 0xffff; x = vla >>> 16;\n y = vha & 0xffff; z = vha >>> 16;\n\n w += ml0 & 0xffff; x += ml0 >>> 16;\n y += mh0 & 0xffff; z += mh0 >>> 16;\n\n x += w >>> 16;\n y += x >>> 16;\n z += y >>> 16;\n\n vha = (y & 0xffff) | (z << 16);\n vla = (w & 0xffff) | (x << 16);\n\n // 64-bit: vd ^= va\n vld ^= vla; vhd ^= vha;\n\n // 64-bit: rot(vd, 32)\n w = vhd; vhd = vld; vld = w;\n\n // 64-bit: vc += vd\n w = vlc & 0xffff; x = vlc >>> 16;\n y = vhc & 0xffff; z = vhc >>> 16;\n\n w += vld & 0xffff; x += vld >>> 16;\n y += vhd & 0xffff; z += vhd >>> 16;\n\n x += w >>> 16;\n y += x >>> 16;\n z += y >>> 16;\n\n vhc = (y & 0xffff) | (z << 16);\n vlc = (w & 0xffff) | (x << 16);\n\n // 64-bit: vb ^= vc\n vlb ^= vlc; vhb ^= vhc;\n\n // 64-bit: rot(vb, 24)\n w = vlb << 8 | vhb >>> 24;\n vlb = vhb << 8 | vlb >>> 24;\n vhb = w;\n\n // 64-bit: va += vb\n w = vla & 0xffff; x = vla >>> 16;\n y = vha & 0xffff; z = vha >>> 16;\n\n w += vlb & 0xffff; x += vlb >>> 16;\n y += vhb & 0xffff; z += vhb >>> 16;\n\n x += w >>> 16;\n y += x >>> 16;\n z += y >>> 16;\n\n vha = (y & 0xffff) | (z << 16);\n vla = (w & 0xffff) | (x << 16);\n\n // 64-bit: va += m[sigma[r][2 * i + 1]\n w = vla & 0xffff; x = vla >>> 16;\n y = vha & 0xffff; z = vha >>> 16;\n\n w += ml1 & 0xffff; x += ml1 >>> 16;\n y += mh1 & 0xffff; z += mh1 >>> 16;\n\n x += w >>> 16;\n y += x >>> 16;\n z += y >>> 16;\n\n vha = (y & 0xffff) | (z << 16);\n vla = (w & 0xffff) | (x << 16);\n\n // 64-bit: vd ^= va\n vld ^= vla; vhd ^= vha;\n\n // 64-bit: rot(vd, 16)\n w = vld << 16 | vhd >>> 16;\n vld = vhd << 16 | vld >>> 16;\n vhd = w;\n\n // 64-bit: vc += vd\n w = vlc & 0xffff; x = vlc >>> 16;\n y = vhc & 0xffff; z = vhc >>> 16;\n\n w += vld & 0xffff; x += vld >>> 16;\n y += vhd & 0xffff; z += vhd >>> 16;\n\n x += w >>> 16;\n y += x >>> 16;\n z += y >>> 16;\n\n vhc = (y & 0xffff) | (z << 16);\n vlc = (w & 0xffff) | (x << 16);\n\n // 64-bit: vb ^= vc\n vlb ^= vlc; vhb ^= vhc;\n\n // 64-bit: rot(vb, 63)\n w = vhb << 1 | vlb >>> 31;\n vlb = vlb << 1 | vhb >>> 31;\n vhb = w;\n\n v[al] = vla;\n v[ah] = vha;\n v[bl] = vlb;\n v[bh] = vhb;\n v[cl] = vlc;\n v[ch] = vhc;\n v[dl] = vld;\n v[dh] = vhd;\n }\n\n private _incrementCounter(n: number) {\n for (let i = 0; i < 3; i++) {\n let a = this._ctr[i] + n;\n this._ctr[i] = a >>> 0;\n if (this._ctr[i] === a) {\n return;\n }\n n = 1;\n }\n }\n\n private _processBlock(length: number) {\n this._incrementCounter(length);\n let v = this._vtmp;\n v.set(this._state);\n v.set(IV, 16);\n v[12 * 2 + 0] ^= this._ctr[0];\n v[12 * 2 + 1] ^= this._ctr[1];\n v[13 * 2 + 0] ^= this._ctr[2];\n v[13 * 2 + 1] ^= this._ctr[3];\n v[14 * 2 + 0] ^= this._flag[0];\n v[14 * 2 + 1] ^= this._flag[1];\n v[15 * 2 + 0] ^= this._flag[2];\n v[15 * 2 + 1] ^= this._flag[3];\n\n let m = this._mtmp;\n for (let i = 0; i < 32; i++) {\n m[i] = readUint32LE(this._buffer, i * 4);\n }\n\n for (let r = 0; r < 12; r++) {\n this._G(v,\n 0, 8, 16, 24,\n 1, 9, 17, 25,\n m[SIGMA[r][0]], m[SIGMA[r][0] + 1],\n m[SIGMA[r][1]], m[SIGMA[r][1] + 1]\n );\n\n this._G(v,\n 2, 10, 18, 26,\n 3, 11, 19, 27,\n m[SIGMA[r][2]], m[SIGMA[r][2] + 1],\n m[SIGMA[r][3]], m[SIGMA[r][3] + 1]\n );\n\n this._G(v,\n 4, 12, 20, 28,\n 5, 13, 21, 29,\n m[SIGMA[r][4]], m[SIGMA[r][4] + 1],\n m[SIGMA[r][5]], m[SIGMA[r][5] + 1]\n );\n\n this._G(v,\n 6, 14, 22, 30,\n 7, 15, 23, 31,\n m[SIGMA[r][6]], m[SIGMA[r][6] + 1],\n m[SIGMA[r][7]], m[SIGMA[r][7] + 1]\n );\n\n this._G(v,\n 0, 10, 20, 30,\n 1, 11, 21, 31,\n m[SIGMA[r][8]], m[SIGMA[r][8] + 1],\n m[SIGMA[r][9]], m[SIGMA[r][9] + 1]\n );\n\n this._G(v,\n 2, 12, 22, 24,\n 3, 13, 23, 25,\n m[SIGMA[r][10]], m[SIGMA[r][10] + 1],\n m[SIGMA[r][11]], m[SIGMA[r][11] + 1]\n );\n\n this._G(v,\n 4, 14, 16, 26,\n 5, 15, 17, 27,\n m[SIGMA[r][12]], m[SIGMA[r][12] + 1],\n m[SIGMA[r][13]], m[SIGMA[r][13] + 1]\n );\n\n this._G(v,\n 6, 8, 18, 28,\n 7, 9, 19, 29,\n m[SIGMA[r][14]], m[SIGMA[r][14] + 1],\n m[SIGMA[r][15]], m[SIGMA[r][15] + 1]\n );\n }\n\n for (let i = 0; i < 16; i++) {\n this._state[i] ^= v[i] ^ v[i + 16];\n }\n }\n}\n\nexport type SavedState = {\n state: Uint32Array;\n buffer: Uint8Array;\n bufferLength: number;\n ctr: Uint32Array;\n flag: Uint32Array;\n lastNode: boolean;\n paddedKey: Uint8Array | undefined;\n initialState: Uint32Array;\n};\n\nexport function hash(data: Uint8Array, digestLength = DIGEST_LENGTH, config?: Config): Uint8Array {\n const h = new BLAKE2b(digestLength, config);\n h.update(data);\n const digest = h.digest();\n h.clean();\n return digest;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package bytes provides functions for dealing with byte arrays.\n */\n\n/**\n * Concatenates byte arrays.\n */\nexport function concat(...arrays: Uint8Array[]): Uint8Array;\nexport function concat(): Uint8Array {\n // Calculate sum of lengths of all arrays.\n let totalLength = 0;\n for (let i = 0; i < arguments.length; i++) {\n totalLength += arguments[i].length;\n }\n\n // Allocate new array of calculated length.\n const result = new Uint8Array(totalLength);\n\n // Copy all arrays into result.\n let offset = 0;\n for (let i = 0; i < arguments.length; i++) {\n const arg = arguments[i];\n result.set(arg, offset);\n offset += arg.length;\n }\n\n return result;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package constant-time provides functions for performing algorithmically constant-time operations.\n */\n\n/**\n * NOTE! Due to the inability to guarantee real constant time evaluation of\n * anything in JavaScript VM, this is module is the best effort.\n */\n\n/**\n * Returns resultIfOne if subject is 1, or resultIfZero if subject is 0.\n *\n * Supports only 32-bit integers, so resultIfOne or resultIfZero are not\n * integers, they'll be converted to them with bitwise operations.\n */\nexport function select(subject: number, resultIfOne: number, resultIfZero: number): number {\n return (~(subject - 1) & resultIfOne) | ((subject - 1) & resultIfZero);\n}\n\n/**\n * Returns 1 if a <= b, or 0 if not.\n * Arguments must be positive 32-bit integers less than or equal to 2^31 - 1.\n */\nexport function lessOrEqual(a: number, b: number): number {\n return (((a | 0) - (b | 0) - 1) >>> 31) & 1;\n}\n\n/**\n * Returns 1 if a and b are of equal length and their contents\n * are equal, or 0 otherwise.\n *\n * Note that unlike in equal(), zero-length inputs are considered\n * the same, so this function will return 1.\n */\nexport function compare(a: Uint8Array, b: Uint8Array): number {\n if (a.length !== b.length) {\n return 0;\n }\n let result = 0;\n for (let i = 0; i < a.length; i++) {\n result |= a[i] ^ b[i];\n }\n return (1 & ((result - 1) >>> 8));\n}\n\n/**\n * Returns true if a and b are of equal non-zero length,\n * and their contents are equal, or false otherwise.\n *\n * Note that unlike in compare() zero-length inputs are considered\n * _not_ equal, so this function will return false.\n */\nexport function equal(a: Uint8Array, b: Uint8Array): boolean {\n if (a.length === 0 || b.length === 0) {\n return false;\n }\n return compare(a, b) !== 0;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package ed25519 implements Ed25519 public-key signature algorithm.\n */\n\nimport { randomBytes, RandomSource } from \"@stablelib/random\";\nimport { hash, SHA512 } from \"@stablelib/sha512\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport const SIGNATURE_LENGTH = 64;\nexport const PUBLIC_KEY_LENGTH = 32;\nexport const SECRET_KEY_LENGTH = 64;\nexport const SEED_LENGTH = 32;\n\n// TODO(dchest): some functions are copies of ../kex/x25519.\n// Find a way to combine them without opening up to public.\n\n// Ported from TweetNaCl.js, which was ported from TweetNaCl\n// by Dmitry Chestnykh and Devi Mandiri.\n// Public domain.\n// https://tweetnacl.js.org\n\n// TweetNaCl contributors:\n// Daniel J. Bernstein, Bernard van Gastel, Wesley Janssen,\n// Tanja Lange, Peter Schwabe, Sjaak Smetsers.\n// Public domain.\n// https://tweetnacl.cr.yp.to/\n\ntype GF = Float64Array;\n\n// Returns new zero-filled 16-element GF (Float64Array).\n// If passed an array of numbers, prefills the returned\n// array with them.\n//\n// We use Float64Array, because we need 48-bit numbers\n// for this implementation.\nfunction gf(init?: number[]): GF {\n const r = new Float64Array(16);\n if (init) {\n for (let i = 0; i < init.length; i++) {\n r[i] = init[i];\n }\n }\n return r;\n}\n\n// Base point.\nconst _9 = new Uint8Array(32); _9[0] = 9;\n\nconst gf0 = gf();\n\nconst gf1 = gf([1]);\n\nconst D = gf([\n 0x78a3, 0x1359, 0x4dca, 0x75eb, 0xd8ab, 0x4141, 0x0a4d, 0x0070,\n 0xe898, 0x7779, 0x4079, 0x8cc7, 0xfe73, 0x2b6f, 0x6cee, 0x5203\n]);\n\nconst D2 = gf([\n 0xf159, 0x26b2, 0x9b94, 0xebd6, 0xb156, 0x8283, 0x149a, 0x00e0,\n 0xd130, 0xeef3, 0x80f2, 0x198e, 0xfce7, 0x56df, 0xd9dc, 0x2406\n]);\n\nconst X = gf([\n 0xd51a, 0x8f25, 0x2d60, 0xc956, 0xa7b2, 0x9525, 0xc760, 0x692c,\n 0xdc5c, 0xfdd6, 0xe231, 0xc0a4, 0x53fe, 0xcd6e, 0x36d3, 0x2169\n]);\n\nconst Y = gf([\n 0x6658, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666,\n 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666, 0x6666\n]);\n\nconst I = gf([\n 0xa0b0, 0x4a0e, 0x1b27, 0xc4ee, 0xe478, 0xad2f, 0x1806, 0x2f43,\n 0xd7a7, 0x3dfb, 0x0099, 0x2b4d, 0xdf0b, 0x4fc1, 0x2480, 0x2b83\n]);\n\nfunction set25519(r: GF, a: GF) {\n for (let i = 0; i < 16; i++) {\n r[i] = a[i] | 0;\n }\n}\n\nfunction car25519(o: GF) {\n let c = 1;\n for (let i = 0; i < 16; i++) {\n let v = o[i] + c + 65535;\n c = Math.floor(v / 65536);\n o[i] = v - c * 65536;\n }\n o[0] += c - 1 + 37 * (c - 1);\n}\n\nfunction sel25519(p: GF, q: GF, b: number) {\n const c = ~(b - 1);\n for (let i = 0; i < 16; i++) {\n const t = c & (p[i] ^ q[i]);\n p[i] ^= t;\n q[i] ^= t;\n }\n}\n\nfunction pack25519(o: Uint8Array, n: GF) {\n const m = gf();\n const t = gf();\n for (let i = 0; i < 16; i++) {\n t[i] = n[i];\n }\n car25519(t);\n car25519(t);\n car25519(t);\n for (let j = 0; j < 2; j++) {\n m[0] = t[0] - 0xffed;\n for (let i = 1; i < 15; i++) {\n m[i] = t[i] - 0xffff - ((m[i - 1] >> 16) & 1);\n m[i - 1] &= 0xffff;\n }\n m[15] = t[15] - 0x7fff - ((m[14] >> 16) & 1);\n const b = (m[15] >> 16) & 1;\n m[14] &= 0xffff;\n sel25519(t, m, 1 - b);\n }\n for (let i = 0; i < 16; i++) {\n o[2 * i] = t[i] & 0xff;\n o[2 * i + 1] = t[i] >> 8;\n }\n}\n\nfunction verify32(x: Uint8Array, y: Uint8Array) {\n let d = 0;\n for (let i = 0; i < 32; i++) {\n d |= x[i] ^ y[i];\n }\n return (1 & ((d - 1) >>> 8)) - 1;\n}\n\n\nfunction neq25519(a: GF, b: GF) {\n const c = new Uint8Array(32);\n const d = new Uint8Array(32);\n pack25519(c, a);\n pack25519(d, b);\n return verify32(c, d);\n}\n\nfunction par25519(a: GF) {\n const d = new Uint8Array(32);\n pack25519(d, a);\n return d[0] & 1;\n}\n\nfunction unpack25519(o: GF, n: Uint8Array) {\n for (let i = 0; i < 16; i++) {\n o[i] = n[2 * i] + (n[2 * i + 1] << 8);\n }\n o[15] &= 0x7fff;\n}\n\nfunction add(o: GF, a: GF, b: GF) {\n for (let i = 0; i < 16; i++) {\n o[i] = a[i] + b[i];\n }\n}\n\nfunction sub(o: GF, a: GF, b: GF) {\n for (let i = 0; i < 16; i++) {\n o[i] = a[i] - b[i];\n }\n}\n\nfunction mul(o: GF, a: GF, b: GF) {\n let v: number, c: number,\n t0 = 0, t1 = 0, t2 = 0, t3 = 0, t4 = 0, t5 = 0, t6 = 0, t7 = 0,\n t8 = 0, t9 = 0, t10 = 0, t11 = 0, t12 = 0, t13 = 0, t14 = 0, t15 = 0,\n t16 = 0, t17 = 0, t18 = 0, t19 = 0, t20 = 0, t21 = 0, t22 = 0, t23 = 0,\n t24 = 0, t25 = 0, t26 = 0, t27 = 0, t28 = 0, t29 = 0, t30 = 0,\n b0 = b[0],\n b1 = b[1],\n b2 = b[2],\n b3 = b[3],\n b4 = b[4],\n b5 = b[5],\n b6 = b[6],\n b7 = b[7],\n b8 = b[8],\n b9 = b[9],\n b10 = b[10],\n b11 = b[11],\n b12 = b[12],\n b13 = b[13],\n b14 = b[14],\n b15 = b[15];\n\n v = a[0];\n t0 += v * b0;\n t1 += v * b1;\n t2 += v * b2;\n t3 += v * b3;\n t4 += v * b4;\n t5 += v * b5;\n t6 += v * b6;\n t7 += v * b7;\n t8 += v * b8;\n t9 += v * b9;\n t10 += v * b10;\n t11 += v * b11;\n t12 += v * b12;\n t13 += v * b13;\n t14 += v * b14;\n t15 += v * b15;\n v = a[1];\n t1 += v * b0;\n t2 += v * b1;\n t3 += v * b2;\n t4 += v * b3;\n t5 += v * b4;\n t6 += v * b5;\n t7 += v * b6;\n t8 += v * b7;\n t9 += v * b8;\n t10 += v * b9;\n t11 += v * b10;\n t12 += v * b11;\n t13 += v * b12;\n t14 += v * b13;\n t15 += v * b14;\n t16 += v * b15;\n v = a[2];\n t2 += v * b0;\n t3 += v * b1;\n t4 += v * b2;\n t5 += v * b3;\n t6 += v * b4;\n t7 += v * b5;\n t8 += v * b6;\n t9 += v * b7;\n t10 += v * b8;\n t11 += v * b9;\n t12 += v * b10;\n t13 += v * b11;\n t14 += v * b12;\n t15 += v * b13;\n t16 += v * b14;\n t17 += v * b15;\n v = a[3];\n t3 += v * b0;\n t4 += v * b1;\n t5 += v * b2;\n t6 += v * b3;\n t7 += v * b4;\n t8 += v * b5;\n t9 += v * b6;\n t10 += v * b7;\n t11 += v * b8;\n t12 += v * b9;\n t13 += v * b10;\n t14 += v * b11;\n t15 += v * b12;\n t16 += v * b13;\n t17 += v * b14;\n t18 += v * b15;\n v = a[4];\n t4 += v * b0;\n t5 += v * b1;\n t6 += v * b2;\n t7 += v * b3;\n t8 += v * b4;\n t9 += v * b5;\n t10 += v * b6;\n t11 += v * b7;\n t12 += v * b8;\n t13 += v * b9;\n t14 += v * b10;\n t15 += v * b11;\n t16 += v * b12;\n t17 += v * b13;\n t18 += v * b14;\n t19 += v * b15;\n v = a[5];\n t5 += v * b0;\n t6 += v * b1;\n t7 += v * b2;\n t8 += v * b3;\n t9 += v * b4;\n t10 += v * b5;\n t11 += v * b6;\n t12 += v * b7;\n t13 += v * b8;\n t14 += v * b9;\n t15 += v * b10;\n t16 += v * b11;\n t17 += v * b12;\n t18 += v * b13;\n t19 += v * b14;\n t20 += v * b15;\n v = a[6];\n t6 += v * b0;\n t7 += v * b1;\n t8 += v * b2;\n t9 += v * b3;\n t10 += v * b4;\n t11 += v * b5;\n t12 += v * b6;\n t13 += v * b7;\n t14 += v * b8;\n t15 += v * b9;\n t16 += v * b10;\n t17 += v * b11;\n t18 += v * b12;\n t19 += v * b13;\n t20 += v * b14;\n t21 += v * b15;\n v = a[7];\n t7 += v * b0;\n t8 += v * b1;\n t9 += v * b2;\n t10 += v * b3;\n t11 += v * b4;\n t12 += v * b5;\n t13 += v * b6;\n t14 += v * b7;\n t15 += v * b8;\n t16 += v * b9;\n t17 += v * b10;\n t18 += v * b11;\n t19 += v * b12;\n t20 += v * b13;\n t21 += v * b14;\n t22 += v * b15;\n v = a[8];\n t8 += v * b0;\n t9 += v * b1;\n t10 += v * b2;\n t11 += v * b3;\n t12 += v * b4;\n t13 += v * b5;\n t14 += v * b6;\n t15 += v * b7;\n t16 += v * b8;\n t17 += v * b9;\n t18 += v * b10;\n t19 += v * b11;\n t20 += v * b12;\n t21 += v * b13;\n t22 += v * b14;\n t23 += v * b15;\n v = a[9];\n t9 += v * b0;\n t10 += v * b1;\n t11 += v * b2;\n t12 += v * b3;\n t13 += v * b4;\n t14 += v * b5;\n t15 += v * b6;\n t16 += v * b7;\n t17 += v * b8;\n t18 += v * b9;\n t19 += v * b10;\n t20 += v * b11;\n t21 += v * b12;\n t22 += v * b13;\n t23 += v * b14;\n t24 += v * b15;\n v = a[10];\n t10 += v * b0;\n t11 += v * b1;\n t12 += v * b2;\n t13 += v * b3;\n t14 += v * b4;\n t15 += v * b5;\n t16 += v * b6;\n t17 += v * b7;\n t18 += v * b8;\n t19 += v * b9;\n t20 += v * b10;\n t21 += v * b11;\n t22 += v * b12;\n t23 += v * b13;\n t24 += v * b14;\n t25 += v * b15;\n v = a[11];\n t11 += v * b0;\n t12 += v * b1;\n t13 += v * b2;\n t14 += v * b3;\n t15 += v * b4;\n t16 += v * b5;\n t17 += v * b6;\n t18 += v * b7;\n t19 += v * b8;\n t20 += v * b9;\n t21 += v * b10;\n t22 += v * b11;\n t23 += v * b12;\n t24 += v * b13;\n t25 += v * b14;\n t26 += v * b15;\n v = a[12];\n t12 += v * b0;\n t13 += v * b1;\n t14 += v * b2;\n t15 += v * b3;\n t16 += v * b4;\n t17 += v * b5;\n t18 += v * b6;\n t19 += v * b7;\n t20 += v * b8;\n t21 += v * b9;\n t22 += v * b10;\n t23 += v * b11;\n t24 += v * b12;\n t25 += v * b13;\n t26 += v * b14;\n t27 += v * b15;\n v = a[13];\n t13 += v * b0;\n t14 += v * b1;\n t15 += v * b2;\n t16 += v * b3;\n t17 += v * b4;\n t18 += v * b5;\n t19 += v * b6;\n t20 += v * b7;\n t21 += v * b8;\n t22 += v * b9;\n t23 += v * b10;\n t24 += v * b11;\n t25 += v * b12;\n t26 += v * b13;\n t27 += v * b14;\n t28 += v * b15;\n v = a[14];\n t14 += v * b0;\n t15 += v * b1;\n t16 += v * b2;\n t17 += v * b3;\n t18 += v * b4;\n t19 += v * b5;\n t20 += v * b6;\n t21 += v * b7;\n t22 += v * b8;\n t23 += v * b9;\n t24 += v * b10;\n t25 += v * b11;\n t26 += v * b12;\n t27 += v * b13;\n t28 += v * b14;\n t29 += v * b15;\n v = a[15];\n t15 += v * b0;\n t16 += v * b1;\n t17 += v * b2;\n t18 += v * b3;\n t19 += v * b4;\n t20 += v * b5;\n t21 += v * b6;\n t22 += v * b7;\n t23 += v * b8;\n t24 += v * b9;\n t25 += v * b10;\n t26 += v * b11;\n t27 += v * b12;\n t28 += v * b13;\n t29 += v * b14;\n t30 += v * b15;\n\n t0 += 38 * t16;\n t1 += 38 * t17;\n t2 += 38 * t18;\n t3 += 38 * t19;\n t4 += 38 * t20;\n t5 += 38 * t21;\n t6 += 38 * t22;\n t7 += 38 * t23;\n t8 += 38 * t24;\n t9 += 38 * t25;\n t10 += 38 * t26;\n t11 += 38 * t27;\n t12 += 38 * t28;\n t13 += 38 * t29;\n t14 += 38 * t30;\n // t15 left as is\n\n // first car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c - 1 + 37 * (c - 1);\n\n // second car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c - 1 + 37 * (c - 1);\n\n o[0] = t0;\n o[1] = t1;\n o[2] = t2;\n o[3] = t3;\n o[4] = t4;\n o[5] = t5;\n o[6] = t6;\n o[7] = t7;\n o[8] = t8;\n o[9] = t9;\n o[10] = t10;\n o[11] = t11;\n o[12] = t12;\n o[13] = t13;\n o[14] = t14;\n o[15] = t15;\n}\n\nfunction square(o: GF, a: GF) {\n mul(o, a, a);\n}\n\nfunction inv25519(o: GF, i: GF) {\n const c = gf();\n let a: number;\n for (a = 0; a < 16; a++) {\n c[a] = i[a];\n }\n for (a = 253; a >= 0; a--) {\n square(c, c);\n if (a !== 2 && a !== 4) {\n mul(c, c, i);\n }\n }\n for (a = 0; a < 16; a++) {\n o[a] = c[a];\n }\n}\n\nfunction pow2523(o: GF, i: GF) {\n const c = gf();\n let a: number;\n for (a = 0; a < 16; a++) {\n c[a] = i[a];\n }\n for (a = 250; a >= 0; a--) {\n square(c, c);\n if (a !== 1) {\n mul(c, c, i);\n }\n }\n for (a = 0; a < 16; a++) {\n o[a] = c[a];\n }\n}\n\n\nfunction edadd(p: GF[], q: GF[]) {\n const a = gf(), b = gf(), c = gf(),\n d = gf(), e = gf(), f = gf(),\n g = gf(), h = gf(), t = gf();\n\n sub(a, p[1], p[0]);\n sub(t, q[1], q[0]);\n mul(a, a, t);\n add(b, p[0], p[1]);\n add(t, q[0], q[1]);\n mul(b, b, t);\n mul(c, p[3], q[3]);\n mul(c, c, D2);\n mul(d, p[2], q[2]);\n add(d, d, d);\n sub(e, b, a);\n sub(f, d, c);\n add(g, d, c);\n add(h, b, a);\n\n mul(p[0], e, f);\n mul(p[1], h, g);\n mul(p[2], g, f);\n mul(p[3], e, h);\n}\n\nfunction cswap(p: GF[], q: GF[], b: number) {\n for (let i = 0; i < 4; i++) {\n sel25519(p[i], q[i], b);\n }\n}\n\nfunction pack(r: Uint8Array, p: GF[]) {\n const tx = gf(), ty = gf(), zi = gf();\n inv25519(zi, p[2]);\n mul(tx, p[0], zi);\n mul(ty, p[1], zi);\n pack25519(r, ty);\n r[31] ^= par25519(tx) << 7;\n}\n\nfunction scalarmult(p: GF[], q: GF[], s: Uint8Array) {\n set25519(p[0], gf0);\n set25519(p[1], gf1);\n set25519(p[2], gf1);\n set25519(p[3], gf0);\n for (let i = 255; i >= 0; --i) {\n const b = (s[(i / 8) | 0] >> (i & 7)) & 1;\n cswap(p, q, b);\n edadd(q, p);\n edadd(p, p);\n cswap(p, q, b);\n }\n}\n\nfunction scalarbase(p: GF[], s: Uint8Array) {\n const q = [gf(), gf(), gf(), gf()];\n set25519(q[0], X);\n set25519(q[1], Y);\n set25519(q[2], gf1);\n mul(q[3], X, Y);\n scalarmult(p, q, s);\n}\n\nexport interface KeyPair {\n publicKey: Uint8Array;\n secretKey: Uint8Array;\n}\n\n// Generates key pair from secret 32-byte seed.\nexport function generateKeyPairFromSeed(seed: Uint8Array): KeyPair {\n if (seed.length !== SEED_LENGTH) {\n throw new Error(`ed25519: seed must be ${SEED_LENGTH} bytes`);\n }\n\n const d = hash(seed);\n d[0] &= 248;\n d[31] &= 127;\n d[31] |= 64;\n\n const publicKey = new Uint8Array(32);\n const p = [gf(), gf(), gf(), gf()];\n scalarbase(p, d);\n pack(publicKey, p);\n\n const secretKey = new Uint8Array(64);\n secretKey.set(seed);\n secretKey.set(publicKey, 32);\n\n return {\n publicKey,\n secretKey\n };\n}\n\nexport function generateKeyPair(prng?: RandomSource): KeyPair {\n const seed = randomBytes(32, prng);\n const result = generateKeyPairFromSeed(seed);\n wipe(seed);\n return result;\n}\n\nexport function extractPublicKeyFromSecretKey(secretKey: Uint8Array): Uint8Array {\n if (secretKey.length !== SECRET_KEY_LENGTH) {\n throw new Error(`ed25519: secret key must be ${SECRET_KEY_LENGTH} bytes`);\n }\n return new Uint8Array(secretKey.subarray(32));\n}\n\nconst L = new Float64Array([\n 0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2,\n 0xde, 0xf9, 0xde, 0x14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x10\n]);\n\nfunction modL(r: Uint8Array, x: Float64Array) {\n let carry: number;\n let i: number;\n let j: number;\n let k: number;\n for (i = 63; i >= 32; --i) {\n carry = 0;\n for (j = i - 32, k = i - 12; j < k; ++j) {\n x[j] += carry - 16 * x[i] * L[j - (i - 32)];\n carry = Math.floor((x[j] + 128) / 256);\n x[j] -= carry * 256;\n }\n x[j] += carry;\n x[i] = 0;\n }\n carry = 0;\n for (j = 0; j < 32; j++) {\n x[j] += carry - (x[31] >> 4) * L[j];\n carry = x[j] >> 8;\n x[j] &= 255;\n }\n for (j = 0; j < 32; j++) {\n x[j] -= carry * L[j];\n }\n for (i = 0; i < 32; i++) {\n x[i + 1] += x[i] >> 8;\n r[i] = x[i] & 255;\n }\n}\n\nfunction reduce(r: Uint8Array) {\n const x = new Float64Array(64);\n for (let i = 0; i < 64; i++) {\n x[i] = r[i];\n }\n for (let i = 0; i < 64; i++) {\n r[i] = 0;\n }\n modL(r, x);\n}\n\n// Returns 64-byte signature of the message under the 64-byte secret key.\nexport function sign(secretKey: Uint8Array, message: Uint8Array): Uint8Array {\n const x = new Float64Array(64);\n const p = [gf(), gf(), gf(), gf()];\n\n const d = hash(secretKey.subarray(0, 32));\n d[0] &= 248;\n d[31] &= 127;\n d[31] |= 64;\n\n const signature = new Uint8Array(64);\n signature.set(d.subarray(32), 32);\n\n const hs = new SHA512();\n hs.update(signature.subarray(32));\n hs.update(message);\n const r = hs.digest();\n hs.clean();\n reduce(r);\n scalarbase(p, r);\n pack(signature, p);\n\n hs.reset();\n hs.update(signature.subarray(0, 32));\n hs.update(secretKey.subarray(32));\n hs.update(message);\n const h = hs.digest();\n reduce(h);\n\n for (let i = 0; i < 32; i++) {\n x[i] = r[i];\n }\n for (let i = 0; i < 32; i++) {\n for (let j = 0; j < 32; j++) {\n x[i + j] += h[i] * d[j];\n }\n }\n modL(signature.subarray(32), x);\n\n return signature;\n}\n\nfunction unpackneg(r: GF[], p: Uint8Array) {\n const t = gf(), chk = gf(), num = gf(),\n den = gf(), den2 = gf(), den4 = gf(),\n den6 = gf();\n\n set25519(r[2], gf1);\n unpack25519(r[1], p);\n square(num, r[1]);\n mul(den, num, D);\n sub(num, num, r[2]);\n add(den, r[2], den);\n\n square(den2, den);\n square(den4, den2);\n mul(den6, den4, den2);\n mul(t, den6, num);\n mul(t, t, den);\n\n pow2523(t, t);\n mul(t, t, num);\n mul(t, t, den);\n mul(t, t, den);\n mul(r[0], t, den);\n\n square(chk, r[0]);\n mul(chk, chk, den);\n if (neq25519(chk, num)) {\n mul(r[0], r[0], I);\n }\n\n square(chk, r[0]);\n mul(chk, chk, den);\n if (neq25519(chk, num)) {\n return -1;\n }\n\n if (par25519(r[0]) === (p[31] >> 7)) {\n sub(r[0], gf0, r[0]);\n }\n\n mul(r[3], r[0], r[1]);\n return 0;\n}\n\nexport function verify(publicKey: Uint8Array, message: Uint8Array, signature: Uint8Array): boolean {\n const t = new Uint8Array(32);\n const p = [gf(), gf(), gf(), gf()];\n const q = [gf(), gf(), gf(), gf()];\n\n if (signature.length !== SIGNATURE_LENGTH) {\n throw new Error(`ed25519: signature must be ${SIGNATURE_LENGTH} bytes`);\n }\n\n if (unpackneg(q, publicKey)) {\n return false;\n }\n\n const hs = new SHA512();\n hs.update(signature.subarray(0, 32));\n hs.update(publicKey);\n hs.update(message);\n const h = hs.digest();\n reduce(h);\n scalarmult(p, q, h);\n\n scalarbase(q, signature.subarray(32));\n edadd(p, q);\n pack(t, p);\n\n if (verify32(signature, t)) {\n return false;\n }\n return true;\n}\n\n/**\n * Convert Ed25519 public key to X25519 public key.\n *\n * Throws if given an invalid public key.\n */\nexport function convertPublicKeyToX25519(publicKey: Uint8Array): Uint8Array {\n let q = [gf(), gf(), gf(), gf()];\n\n if (unpackneg(q, publicKey)) {\n throw new Error(\"Ed25519: invalid public key\");\n }\n\n // Formula: montgomeryX = (edwardsY + 1)*inverse(1 - edwardsY) mod p\n let a = gf();\n let b = gf();\n let y = q[1];\n add(a, gf1, y);\n sub(b, gf1, y);\n inv25519(b, b);\n mul(a, a, b);\n\n let z = new Uint8Array(32);\n pack25519(z, a);\n return z;\n}\n\n/**\n * Convert Ed25519 secret (private) key to X25519 secret key.\n */\nexport function convertSecretKeyToX25519(secretKey: Uint8Array): Uint8Array {\n const d = hash(secretKey.subarray(0, 32));\n d[0] &= 248;\n d[31] &= 127;\n d[31] |= 64;\n const o = new Uint8Array(d.subarray(0, 32));\n wipe(d);\n return o;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package hash provides interface for hash functions.\n */\n\n/**\n * Hash interface describes properties of\n * cryptographic hash functions.\n */\nexport interface Hash {\n readonly digestLength: number;\n readonly blockSize: number;\n update(data: Uint8Array): this;\n reset(): this;\n finish(out: Uint8Array): this;\n digest(): Uint8Array;\n clean(): void;\n}\n\nexport interface SerializableHash extends Hash {\n saveState(): any;\n restoreState(savedState: any): this;\n cleanSavedState(savedState: any): void;\n}\n\nexport function isSerializableHash(h: Hash): h is SerializableHash {\n return (\n typeof (h as SerializableHash).saveState !== \"undefined\" &&\n typeof (h as SerializableHash).restoreState !== \"undefined\" &&\n typeof (h as SerializableHash).cleanSavedState !== \"undefined\"\n );\n}\n\n// TODO(dchest): figure out the standardized interface for XOF such as\n// SHAKE and BLAKE2X.\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package hmac implements HMAC algorithm.\n */\n\nimport { Hash, SerializableHash, isSerializableHash } from \"@stablelib/hash\";\nimport { equal as constantTimeEqual } from \"@stablelib/constant-time\";\nimport { wipe } from \"@stablelib/wipe\";\n\n/**\n * HMAC implements hash-based message authentication algorithm.\n */\nexport class HMAC implements SerializableHash {\n readonly blockSize: number;\n readonly digestLength: number;\n\n private _inner: Hash; // inner hash\n private _outer: Hash; // outer hash\n\n private _finished = false; // true if HMAC was finalized\n\n // Copies of hash states after keying.\n // Need for quick reset without hashing the key again.\n private _innerKeyedState: any | undefined;\n private _outerKeyedState: any | undefined;\n\n /**\n * Constructs a new HMAC with the given Hash and secret key.\n */\n constructor(hash: new () => Hash | SerializableHash, key: Uint8Array) {\n // Initialize inner and outer hashes.\n this._inner = new hash();\n this._outer = new hash();\n\n // Set block and digest sizes for this HMAC\n // instance to values from the hash.\n this.blockSize = this._outer.blockSize;\n this.digestLength = this._outer.digestLength;\n\n // Pad temporary stores a key (or its hash) padded with zeroes.\n const pad = new Uint8Array(this.blockSize);\n\n if (key.length > this.blockSize) {\n // If key is bigger than hash block size, it must be\n // hashed and this hash is used as a key instead.\n this._inner.update(key).finish(pad).clean();\n } else {\n // Otherwise, copy the key into pad.\n pad.set(key);\n }\n\n // Now two different keys are derived from padded key\n // by xoring a different byte value to each.\n\n // To make inner hash key, xor byte 0x36 into pad.\n for (let i = 0; i < pad.length; i++) {\n pad[i] ^= 0x36;\n }\n // Update inner hash with the result.\n this._inner.update(pad);\n\n // To make outer hash key, xor byte 0x5c into pad.\n // But since we already xored 0x36 there, we must\n // first undo this by xoring it again.\n for (let i = 0; i < pad.length; i++) {\n pad[i] ^= 0x36 ^ 0x5c;\n }\n // Update outer hash with the result.\n this._outer.update(pad);\n\n // Save states of both hashes, so that we can quickly restore\n // them later in reset() without the need to remember the actual\n // key and perform this initialization again.\n if (isSerializableHash(this._inner) && isSerializableHash(this._outer)) {\n this._innerKeyedState = this._inner.saveState();\n this._outerKeyedState = this._outer.saveState();\n }\n\n // Clean pad.\n wipe(pad);\n }\n\n /**\n * Returns HMAC state to the state initialized with key\n * to make it possible to run HMAC over the other data with the same\n * key without creating a new instance.\n */\n reset(): this {\n if (!isSerializableHash(this._inner) || !isSerializableHash(this._outer)) {\n throw new Error(\"hmac: can't reset() because hash doesn't implement restoreState()\");\n }\n // Restore keyed states of inner and outer hashes.\n this._inner.restoreState(this._innerKeyedState);\n this._outer.restoreState(this._outerKeyedState);\n this._finished = false;\n return this;\n }\n\n /**\n * Cleans HMAC state.\n */\n clean() {\n if (isSerializableHash(this._inner)) {\n this._inner.cleanSavedState(this._innerKeyedState);\n }\n if (isSerializableHash(this._outer)) {\n this._outer.cleanSavedState(this._outerKeyedState);\n }\n this._inner.clean();\n this._outer.clean();\n }\n\n /**\n * Updates state with provided data.\n */\n update(data: Uint8Array): this {\n this._inner.update(data);\n return this;\n }\n\n /**\n * Finalizes HMAC and puts the result in out.\n */\n finish(out: Uint8Array): this {\n if (this._finished) {\n // If HMAC was finalized, outer hash is also finalized,\n // so it produces the same digest it produced when it\n // was finalized.\n this._outer.finish(out);\n return this;\n }\n\n // Finalize inner hash and store the result temporarily.\n this._inner.finish(out);\n\n // Update outer hash with digest of inner hash and and finalize it.\n this._outer.update(out.subarray(0, this.digestLength)).finish(out);\n this._finished = true;\n\n return this;\n }\n\n /**\n * Returns the computed message authentication code.\n */\n digest(): Uint8Array {\n const out = new Uint8Array(this.digestLength);\n this.finish(out);\n return out;\n }\n\n /**\n * Saves HMAC state.\n * This function is needed for PBKDF2 optimization.\n */\n saveState(): any {\n if (!isSerializableHash(this._inner)) {\n throw new Error(\"hmac: can't saveState() because hash doesn't implement it\");\n }\n return this._inner.saveState();\n }\n\n restoreState(savedState: any): this {\n if (!isSerializableHash(this._inner) || !isSerializableHash(this._outer)) {\n throw new Error(\"hmac: can't restoreState() because hash doesn't implement it\");\n }\n this._inner.restoreState(savedState);\n this._outer.restoreState(this._outerKeyedState);\n this._finished = false;\n return this;\n }\n\n cleanSavedState(savedState: any) {\n if (!isSerializableHash(this._inner)) {\n throw new Error(\"hmac: can't cleanSavedState() because hash doesn't implement it\");\n }\n this._inner.cleanSavedState(savedState);\n }\n}\n\n/**\n * Returns HMAC using the given hash constructor for the key over data.\n */\nexport function hmac(hash: new () => Hash, key: Uint8Array, data: Uint8Array): Uint8Array {\n const h = new HMAC(hash, key);\n h.update(data);\n const digest = h.digest();\n h.clean();\n return digest;\n}\n\n/**\n * Returns true if two HMAC digests are equal.\n * Uses constant-time comparison to avoid leaking timing information.\n *\n * Example:\n *\n * const receivedDigest = ...\n * const realDigest = hmac(SHA256, key, data);\n * if (!equal(receivedDigest, realDigest)) {\n * throw new Error(\"Authentication error\");\n * }\n */\nexport const equal = constantTimeEqual;\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package int provides helper functions for integerss.\n */\n\n// Shim using 16-bit pieces.\nfunction imulShim(a: number, b: number): number {\n const ah = (a >>> 16) & 0xffff, al = a & 0xffff;\n const bh = (b >>> 16) & 0xffff, bl = b & 0xffff;\n return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0) | 0);\n}\n\n/** 32-bit integer multiplication. */\n// Use system Math.imul if available, otherwise use our shim.\nexport const mul = (Math as { imul?(a: number, b: number): number }).imul || imulShim;\n\n/** 32-bit integer addition. */\nexport function add(a: number, b: number): number {\n return (a + b) | 0;\n}\n\n/** 32-bit integer subtraction. */\nexport function sub(a: number, b: number): number {\n return (a - b) | 0;\n}\n\n/** 32-bit integer left rotation */\nexport function rotl(x: number, n: number): number {\n return x << n | x >>> (32 - n);\n}\n\n/** 32-bit integer left rotation */\nexport function rotr(x: number, n: number): number {\n return x << (32 - n) | x >>> n;\n}\n\nfunction isIntegerShim(n: number): boolean {\n return typeof n === \"number\" && isFinite(n) && Math.floor(n) === n;\n}\n\n/**\n * Returns true if the argument is an integer number.\n *\n * In ES2015, Number.isInteger.\n */\nexport const isInteger = (Number as { isInteger?(n: number): boolean }).isInteger || isIntegerShim;\n\n/**\n * Math.pow(2, 53) - 1\n *\n * In ES2015 Number.MAX_SAFE_INTEGER.\n */\nexport const MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Returns true if the argument is a safe integer number\n * (-MIN_SAFE_INTEGER < number <= MAX_SAFE_INTEGER)\n *\n * In ES2015, Number.isSafeInteger.\n */\nexport const isSafeInteger = (n: number): boolean =>\n isInteger(n) && (n >= -MAX_SAFE_INTEGER && n <= MAX_SAFE_INTEGER);\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\nimport { scalarMult } from \"@stablelib/x25519\";\nimport { hsalsa } from \"@stablelib/xsalsa20\";\nimport { secretBox, openSecretBox } from \"./secretbox\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport { generateKeyPair } from \"@stablelib/x25519\";\n\nconst zeros16 = new Uint8Array(16);\n\nexport function precomputeSharedKey(theirPublicKey: Uint8Array, mySecretKey: Uint8Array): Uint8Array {\n // Compute scalar multiplication result.\n const key = scalarMult(mySecretKey, theirPublicKey);\n\n // Hash key with HSalsa function.\n hsalsa(key, zeros16, key);\n\n return key;\n}\n\nexport function box(theirPublicKey: Uint8Array, mySecretKey: Uint8Array,\n nonce: Uint8Array, data: Uint8Array): Uint8Array {\n const sharedKey = precomputeSharedKey(theirPublicKey, mySecretKey);\n const result = secretBox(sharedKey, nonce, data);\n wipe(sharedKey);\n return result;\n}\n\nexport function openBox(theirPublicKey: Uint8Array, mySecretKey: Uint8Array,\n nonce: Uint8Array, data: Uint8Array): Uint8Array | null {\n const sharedKey = precomputeSharedKey(theirPublicKey, mySecretKey);\n const result = openSecretBox(sharedKey, nonce, data);\n wipe(sharedKey);\n return result;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package nacl implements NaCl (Networking and Cryptography library) cryptography.\n */\n\nexport * from \"./box\";\nexport * from \"./secretbox\";\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\nimport { streamXOR, stream } from \"@stablelib/xsalsa20\";\nimport { oneTimeAuth, equal as authEqual } from \"@stablelib/poly1305\";\nimport { wipe } from \"@stablelib/wipe\";\nimport { randomBytes, RandomSource } from \"@stablelib/random\";\n\nexport function secretBox(key: Uint8Array, nonce: Uint8Array, data: Uint8Array): Uint8Array {\n if (nonce.length !== 24) {\n throw new Error(\"secretBox nonce must be 24 bytes\");\n }\n const firstBlock = new Uint8Array(64);\n\n // Allocate place for nonce and counter.\n const nonceCounter = new Uint8Array(24 + 8);\n\n // Set first bytes to nonce. Last 8 bytes will be counter.\n nonceCounter.set(nonce);\n\n // Generate first block of XSalsa20 stream, of which\n // first 32 bytes will be authentication key, and the rest\n // will be used for encryption.\n stream(key, nonceCounter, firstBlock, 8);\n\n // Allocate result, which will contain 16-byte authenticator\n // concatenated with ciphertext.\n const result = new Uint8Array(16 + data.length);\n\n // Encrypt first 32 bytes of data with last 32 bytes of generated stream.\n for (let i = 0; i < 32 && i < data.length; i++) {\n result[16 + i] = data[i] ^ firstBlock[32 + i];\n }\n\n // Encrypt the rest of data.\n if (data.length > 32) {\n streamXOR(key, nonceCounter, data.subarray(32), result.subarray(16 + 32), 8);\n }\n\n // Calculate Poly1305 authenticator of encrypted data using\n // authentication key in the first block of XSalsa20 stream.\n const auth = oneTimeAuth(firstBlock.subarray(0, 32), result.subarray(16));\n\n // Copy authenticator to the beginning of result.\n for (let i = 0; i < auth.length; i++) {\n result[i] = auth[i];\n }\n\n // Clean auth.\n wipe(auth);\n\n // Clean first block.\n wipe(firstBlock);\n\n // Clean nonceCounter.\n wipe(nonceCounter);\n\n return result;\n}\n\nexport function openSecretBox(key: Uint8Array, nonce: Uint8Array, box: Uint8Array): Uint8Array | null {\n if (nonce.length !== 24) {\n throw new Error(\"secretBox nonce must be 24 bytes\");\n }\n if (box.length < 16) {\n throw new Error(\"secretBox data must be at least 16 bytes\");\n }\n const firstBlock = new Uint8Array(64);\n\n // Allocate place for nonce and counter.\n const nonceCounter = new Uint8Array(24 + 8);\n\n // Set first bytes to nonce. Last 8 bytes will be counter.\n nonceCounter.set(nonce);\n\n // Generate first block of XSalsa20 stream, of which\n // first 32 bytes will be authentication key, and the rest\n // will be used for encryption.\n stream(key, nonceCounter, firstBlock, 8);\n\n // Calculate Poly1305 authenticator of encrypted data using\n // authentication key in the first block of XSalsa20 stream.\n const auth = oneTimeAuth(firstBlock.subarray(0, 32), box.subarray(16));\n\n // Check authenticator.\n if (!authEqual(auth, box.subarray(0, 16))) {\n // Authenticator is incorrect: ciphertext or authenticator\n // was corrupted, maybe maliciously.\n return null;\n }\n\n // Authenticator verifies, so we can decrypt ciphertext.\n const ciphertext = box.subarray(16);\n\n // Allocate result array.\n const result = new Uint8Array(ciphertext.length);\n\n // Decrypt first 32 bytes of box with last 32 bytes of generated stream.\n for (let i = 0; i < 32 && i < ciphertext.length; i++) {\n result[i] = ciphertext[i] ^ firstBlock[32 + i];\n }\n\n // Decrypt the rest of data.\n if (ciphertext.length > 32) {\n streamXOR(key, nonceCounter, ciphertext.subarray(32), result.subarray(32), 8);\n }\n\n // Clean auth.\n wipe(auth);\n\n // Clean first block.\n wipe(firstBlock);\n\n // Clean nonceCounter.\n wipe(nonceCounter);\n\n return result;\n}\n\n/** Generates a 32-byte random secret key. */\nexport function generateKey(prng?: RandomSource): Uint8Array {\n return randomBytes(32, prng);\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package poly1305 implements Poly1305 one-time message authentication algorithm.\n */\n\nimport { equal as constantTimeEqual } from \"@stablelib/constant-time\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport const DIGEST_LENGTH = 16;\n\n// Port of Andrew Moon's Poly1305-donna-16. Public domain.\n// https://github.com/floodyberry/poly1305-donna\n\n/**\n * Poly1305 computes 16-byte authenticator of message using\n * a one-time 32-byte key.\n *\n * Important: key should be used for only one message,\n * it should never repeat.\n */\nexport class Poly1305 {\n readonly digestLength = DIGEST_LENGTH;\n\n private _buffer = new Uint8Array(16);\n private _r = new Uint16Array(10);\n private _h = new Uint16Array(10);\n private _pad = new Uint16Array(8);\n private _leftover = 0;\n private _fin = 0;\n private _finished = false;\n\n constructor(key: Uint8Array) {\n let t0 = key[0] | key[1] << 8; this._r[0] = (t0) & 0x1fff;\n let t1 = key[2] | key[3] << 8; this._r[1] = ((t0 >>> 13) | (t1 << 3)) & 0x1fff;\n let t2 = key[4] | key[5] << 8; this._r[2] = ((t1 >>> 10) | (t2 << 6)) & 0x1f03;\n let t3 = key[6] | key[7] << 8; this._r[3] = ((t2 >>> 7) | (t3 << 9)) & 0x1fff;\n let t4 = key[8] | key[9] << 8; this._r[4] = ((t3 >>> 4) | (t4 << 12)) & 0x00ff;\n this._r[5] = ((t4 >>> 1)) & 0x1ffe;\n let t5 = key[10] | key[11] << 8; this._r[6] = ((t4 >>> 14) | (t5 << 2)) & 0x1fff;\n let t6 = key[12] | key[13] << 8; this._r[7] = ((t5 >>> 11) | (t6 << 5)) & 0x1f81;\n let t7 = key[14] | key[15] << 8; this._r[8] = ((t6 >>> 8) | (t7 << 8)) & 0x1fff;\n this._r[9] = ((t7 >>> 5)) & 0x007f;\n\n this._pad[0] = key[16] | key[17] << 8;\n this._pad[1] = key[18] | key[19] << 8;\n this._pad[2] = key[20] | key[21] << 8;\n this._pad[3] = key[22] | key[23] << 8;\n this._pad[4] = key[24] | key[25] << 8;\n this._pad[5] = key[26] | key[27] << 8;\n this._pad[6] = key[28] | key[29] << 8;\n this._pad[7] = key[30] | key[31] << 8;\n }\n\n private _blocks(m: Uint8Array, mpos: number, bytes: number) {\n let hibit = this._fin ? 0 : 1 << 11;\n\n let h0 = this._h[0],\n h1 = this._h[1],\n h2 = this._h[2],\n h3 = this._h[3],\n h4 = this._h[4],\n h5 = this._h[5],\n h6 = this._h[6],\n h7 = this._h[7],\n h8 = this._h[8],\n h9 = this._h[9];\n\n let r0 = this._r[0],\n r1 = this._r[1],\n r2 = this._r[2],\n r3 = this._r[3],\n r4 = this._r[4],\n r5 = this._r[5],\n r6 = this._r[6],\n r7 = this._r[7],\n r8 = this._r[8],\n r9 = this._r[9];\n\n while (bytes >= 16) {\n let t0 = m[mpos + 0] | m[mpos + 1] << 8; h0 += (t0) & 0x1fff;\n let t1 = m[mpos + 2] | m[mpos + 3] << 8; h1 += ((t0 >>> 13) | (t1 << 3)) & 0x1fff;\n let t2 = m[mpos + 4] | m[mpos + 5] << 8; h2 += ((t1 >>> 10) | (t2 << 6)) & 0x1fff;\n let t3 = m[mpos + 6] | m[mpos + 7] << 8; h3 += ((t2 >>> 7) | (t3 << 9)) & 0x1fff;\n let t4 = m[mpos + 8] | m[mpos + 9] << 8; h4 += ((t3 >>> 4) | (t4 << 12)) & 0x1fff;\n h5 += ((t4 >>> 1)) & 0x1fff;\n let t5 = m[mpos + 10] | m[mpos + 11] << 8; h6 += ((t4 >>> 14) | (t5 << 2)) & 0x1fff;\n let t6 = m[mpos + 12] | m[mpos + 13] << 8; h7 += ((t5 >>> 11) | (t6 << 5)) & 0x1fff;\n let t7 = m[mpos + 14] | m[mpos + 15] << 8; h8 += ((t6 >>> 8) | (t7 << 8)) & 0x1fff;\n h9 += ((t7 >>> 5)) | hibit;\n\n let c = 0;\n\n let d0 = c;\n d0 += h0 * r0;\n d0 += h1 * (5 * r9);\n d0 += h2 * (5 * r8);\n d0 += h3 * (5 * r7);\n d0 += h4 * (5 * r6);\n c = (d0 >>> 13); d0 &= 0x1fff;\n d0 += h5 * (5 * r5);\n d0 += h6 * (5 * r4);\n d0 += h7 * (5 * r3);\n d0 += h8 * (5 * r2);\n d0 += h9 * (5 * r1);\n c += (d0 >>> 13); d0 &= 0x1fff;\n\n let d1 = c;\n d1 += h0 * r1;\n d1 += h1 * r0;\n d1 += h2 * (5 * r9);\n d1 += h3 * (5 * r8);\n d1 += h4 * (5 * r7);\n c = (d1 >>> 13); d1 &= 0x1fff;\n d1 += h5 * (5 * r6);\n d1 += h6 * (5 * r5);\n d1 += h7 * (5 * r4);\n d1 += h8 * (5 * r3);\n d1 += h9 * (5 * r2);\n c += (d1 >>> 13); d1 &= 0x1fff;\n\n let d2 = c;\n d2 += h0 * r2;\n d2 += h1 * r1;\n d2 += h2 * r0;\n d2 += h3 * (5 * r9);\n d2 += h4 * (5 * r8);\n c = (d2 >>> 13); d2 &= 0x1fff;\n d2 += h5 * (5 * r7);\n d2 += h6 * (5 * r6);\n d2 += h7 * (5 * r5);\n d2 += h8 * (5 * r4);\n d2 += h9 * (5 * r3);\n c += (d2 >>> 13); d2 &= 0x1fff;\n\n let d3 = c;\n d3 += h0 * r3;\n d3 += h1 * r2;\n d3 += h2 * r1;\n d3 += h3 * r0;\n d3 += h4 * (5 * r9);\n c = (d3 >>> 13); d3 &= 0x1fff;\n d3 += h5 * (5 * r8);\n d3 += h6 * (5 * r7);\n d3 += h7 * (5 * r6);\n d3 += h8 * (5 * r5);\n d3 += h9 * (5 * r4);\n c += (d3 >>> 13); d3 &= 0x1fff;\n\n let d4 = c;\n d4 += h0 * r4;\n d4 += h1 * r3;\n d4 += h2 * r2;\n d4 += h3 * r1;\n d4 += h4 * r0;\n c = (d4 >>> 13); d4 &= 0x1fff;\n d4 += h5 * (5 * r9);\n d4 += h6 * (5 * r8);\n d4 += h7 * (5 * r7);\n d4 += h8 * (5 * r6);\n d4 += h9 * (5 * r5);\n c += (d4 >>> 13); d4 &= 0x1fff;\n\n let d5 = c;\n d5 += h0 * r5;\n d5 += h1 * r4;\n d5 += h2 * r3;\n d5 += h3 * r2;\n d5 += h4 * r1;\n c = (d5 >>> 13); d5 &= 0x1fff;\n d5 += h5 * r0;\n d5 += h6 * (5 * r9);\n d5 += h7 * (5 * r8);\n d5 += h8 * (5 * r7);\n d5 += h9 * (5 * r6);\n c += (d5 >>> 13); d5 &= 0x1fff;\n\n let d6 = c;\n d6 += h0 * r6;\n d6 += h1 * r5;\n d6 += h2 * r4;\n d6 += h3 * r3;\n d6 += h4 * r2;\n c = (d6 >>> 13); d6 &= 0x1fff;\n d6 += h5 * r1;\n d6 += h6 * r0;\n d6 += h7 * (5 * r9);\n d6 += h8 * (5 * r8);\n d6 += h9 * (5 * r7);\n c += (d6 >>> 13); d6 &= 0x1fff;\n\n let d7 = c;\n d7 += h0 * r7;\n d7 += h1 * r6;\n d7 += h2 * r5;\n d7 += h3 * r4;\n d7 += h4 * r3;\n c = (d7 >>> 13); d7 &= 0x1fff;\n d7 += h5 * r2;\n d7 += h6 * r1;\n d7 += h7 * r0;\n d7 += h8 * (5 * r9);\n d7 += h9 * (5 * r8);\n c += (d7 >>> 13); d7 &= 0x1fff;\n\n let d8 = c;\n d8 += h0 * r8;\n d8 += h1 * r7;\n d8 += h2 * r6;\n d8 += h3 * r5;\n d8 += h4 * r4;\n c = (d8 >>> 13); d8 &= 0x1fff;\n d8 += h5 * r3;\n d8 += h6 * r2;\n d8 += h7 * r1;\n d8 += h8 * r0;\n d8 += h9 * (5 * r9);\n c += (d8 >>> 13); d8 &= 0x1fff;\n\n let d9 = c;\n d9 += h0 * r9;\n d9 += h1 * r8;\n d9 += h2 * r7;\n d9 += h3 * r6;\n d9 += h4 * r5;\n c = (d9 >>> 13); d9 &= 0x1fff;\n d9 += h5 * r4;\n d9 += h6 * r3;\n d9 += h7 * r2;\n d9 += h8 * r1;\n d9 += h9 * r0;\n c += (d9 >>> 13); d9 &= 0x1fff;\n\n c = (((c << 2) + c)) | 0;\n c = (c + d0) | 0;\n d0 = c & 0x1fff;\n c = (c >>> 13);\n d1 += c;\n\n h0 = d0;\n h1 = d1;\n h2 = d2;\n h3 = d3;\n h4 = d4;\n h5 = d5;\n h6 = d6;\n h7 = d7;\n h8 = d8;\n h9 = d9;\n\n mpos += 16;\n bytes -= 16;\n }\n this._h[0] = h0;\n this._h[1] = h1;\n this._h[2] = h2;\n this._h[3] = h3;\n this._h[4] = h4;\n this._h[5] = h5;\n this._h[6] = h6;\n this._h[7] = h7;\n this._h[8] = h8;\n this._h[9] = h9;\n }\n\n finish(mac: Uint8Array, macpos = 0): this {\n const g = new Uint16Array(10);\n let c: number;\n let mask: number;\n let f: number;\n let i: number;\n\n if (this._leftover) {\n i = this._leftover;\n this._buffer[i++] = 1;\n for (; i < 16; i++) {\n this._buffer[i] = 0;\n }\n this._fin = 1;\n this._blocks(this._buffer, 0, 16);\n }\n\n c = this._h[1] >>> 13;\n this._h[1] &= 0x1fff;\n for (i = 2; i < 10; i++) {\n this._h[i] += c;\n c = this._h[i] >>> 13;\n this._h[i] &= 0x1fff;\n }\n this._h[0] += (c * 5);\n c = this._h[0] >>> 13;\n this._h[0] &= 0x1fff;\n this._h[1] += c;\n c = this._h[1] >>> 13;\n this._h[1] &= 0x1fff;\n this._h[2] += c;\n\n g[0] = this._h[0] + 5;\n c = g[0] >>> 13;\n g[0] &= 0x1fff;\n for (i = 1; i < 10; i++) {\n g[i] = this._h[i] + c;\n c = g[i] >>> 13;\n g[i] &= 0x1fff;\n }\n g[9] -= (1 << 13);\n\n mask = (c ^ 1) - 1;\n for (i = 0; i < 10; i++) {\n g[i] &= mask;\n }\n mask = ~mask;\n for (i = 0; i < 10; i++) {\n this._h[i] = (this._h[i] & mask) | g[i];\n }\n\n this._h[0] = ((this._h[0]) | (this._h[1] << 13)) & 0xffff;\n this._h[1] = ((this._h[1] >>> 3) | (this._h[2] << 10)) & 0xffff;\n this._h[2] = ((this._h[2] >>> 6) | (this._h[3] << 7)) & 0xffff;\n this._h[3] = ((this._h[3] >>> 9) | (this._h[4] << 4)) & 0xffff;\n this._h[4] = ((this._h[4] >>> 12) | (this._h[5] << 1) | (this._h[6] << 14)) & 0xffff;\n this._h[5] = ((this._h[6] >>> 2) | (this._h[7] << 11)) & 0xffff;\n this._h[6] = ((this._h[7] >>> 5) | (this._h[8] << 8)) & 0xffff;\n this._h[7] = ((this._h[8] >>> 8) | (this._h[9] << 5)) & 0xffff;\n\n f = this._h[0] + this._pad[0];\n this._h[0] = f & 0xffff;\n for (i = 1; i < 8; i++) {\n f = (((this._h[i] + this._pad[i]) | 0) + (f >>> 16)) | 0;\n this._h[i] = f & 0xffff;\n }\n\n mac[macpos + 0] = this._h[0] >>> 0;\n mac[macpos + 1] = this._h[0] >>> 8;\n mac[macpos + 2] = this._h[1] >>> 0;\n mac[macpos + 3] = this._h[1] >>> 8;\n mac[macpos + 4] = this._h[2] >>> 0;\n mac[macpos + 5] = this._h[2] >>> 8;\n mac[macpos + 6] = this._h[3] >>> 0;\n mac[macpos + 7] = this._h[3] >>> 8;\n mac[macpos + 8] = this._h[4] >>> 0;\n mac[macpos + 9] = this._h[4] >>> 8;\n mac[macpos + 10] = this._h[5] >>> 0;\n mac[macpos + 11] = this._h[5] >>> 8;\n mac[macpos + 12] = this._h[6] >>> 0;\n mac[macpos + 13] = this._h[6] >>> 8;\n mac[macpos + 14] = this._h[7] >>> 0;\n mac[macpos + 15] = this._h[7] >>> 8;\n\n this._finished = true;\n return this;\n }\n\n update(m: Uint8Array): this {\n let mpos = 0;\n let bytes = m.length;\n let want: number;\n\n if (this._leftover) {\n want = (16 - this._leftover);\n if (want > bytes) {\n want = bytes;\n }\n for (let i = 0; i < want; i++) {\n this._buffer[this._leftover + i] = m[mpos + i];\n }\n bytes -= want;\n mpos += want;\n this._leftover += want;\n if (this._leftover < 16) {\n return this;\n }\n this._blocks(this._buffer, 0, 16);\n this._leftover = 0;\n }\n\n if (bytes >= 16) {\n want = bytes - (bytes % 16);\n this._blocks(m, mpos, want);\n mpos += want;\n bytes -= want;\n }\n\n if (bytes) {\n for (let i = 0; i < bytes; i++) {\n this._buffer[this._leftover + i] = m[mpos + i];\n }\n this._leftover += bytes;\n }\n\n return this;\n }\n\n digest(): Uint8Array {\n // TODO(dchest): it behaves differently than other hashes/HMAC,\n // because it throws when finished — others just return saved result.\n if (this._finished) {\n throw new Error(\"Poly1305 was finished\");\n }\n let mac = new Uint8Array(16);\n this.finish(mac);\n return mac;\n }\n\n clean(): this {\n wipe(this._buffer);\n wipe(this._r);\n wipe(this._h);\n wipe(this._pad);\n this._leftover = 0;\n this._fin = 0;\n this._finished = true; // mark as finished even if not\n return this;\n }\n}\n\n/**\n * Returns 16-byte authenticator of data using a one-time 32-byte key.\n *\n * Important: key should be used for only one message, it should never repeat.\n */\nexport function oneTimeAuth(key: Uint8Array, data: Uint8Array): Uint8Array {\n const h = new Poly1305(key);\n h.update(data);\n const digest = h.digest();\n h.clean();\n return digest;\n}\n\n/**\n * Returns true if two authenticators are 16-byte long and equal.\n * Uses contant-time comparison to avoid leaking timing information.\n */\nexport function equal(a: Uint8Array, b: Uint8Array): boolean {\n if (a.length !== DIGEST_LENGTH || b.length !== DIGEST_LENGTH) {\n return false;\n }\n return constantTimeEqual(a, b);\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package random provides functions to access system's\n * cryptographically secure random byte generator.\n */\n\nimport { RandomSource } from \"./source\";\nimport { SystemRandomSource } from \"./source/system\";\nimport { readUint32LE } from \"@stablelib/binary\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport { RandomSource } from \"./source\";\n\nexport const defaultRandomSource = new SystemRandomSource();\n\nexport function randomBytes(length: number, prng: RandomSource = defaultRandomSource): Uint8Array {\n return prng.randomBytes(length);\n}\n\n/**\n * Returns a uniformly random unsigned 32-bit integer.\n */\nexport function randomUint32(prng: RandomSource = defaultRandomSource): number {\n // Generate 4-byte random buffer.\n const buf = randomBytes(4, prng);\n\n // Convert bytes from buffer into a 32-bit integer.\n // It's not important which byte order to use, since\n // the result is random.\n const result = readUint32LE(buf);\n\n // Clean the buffer.\n wipe(buf);\n\n return result;\n}\n\n/** 62 alphanumeric characters for default charset of randomString() */\nconst ALPHANUMERIC = \"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";\n\n/**\n * Returns a uniform random string of the given length\n * with characters from the given charset.\n *\n * Charset must not have more than 256 characters.\n *\n * Default charset generates case-sensitive alphanumeric\n * strings (0-9, A-Z, a-z).\n */\nexport function randomString(\n length: number,\n charset = ALPHANUMERIC,\n prng: RandomSource = defaultRandomSource\n): string {\n if (charset.length < 2) {\n throw new Error(\"randomString charset is too short\");\n }\n if (charset.length > 256) {\n throw new Error(\"randomString charset is too long\");\n }\n let out = '';\n const charsLen = charset.length;\n const maxByte = 256 - (256 % charsLen);\n while (length > 0) {\n const buf = randomBytes(Math.ceil(length * 256 / maxByte), prng);\n for (let i = 0; i < buf.length && length > 0; i++) {\n const randomByte = buf[i];\n if (randomByte < maxByte) {\n out += charset.charAt(randomByte % charsLen);\n length--;\n }\n }\n wipe(buf);\n }\n return out;\n}\n\n/**\n * Returns uniform random string containing at least the given\n * number of bits of entropy.\n *\n * For example, randomStringForEntropy(128) will return a 22-character\n * alphanumeric string, while randomStringForEntropy(128, \"0123456789\")\n * will return a 39-character numeric string, both will contain at\n * least 128 bits of entropy.\n *\n * Default charset generates case-sensitive alphanumeric\n * strings (0-9, A-Z, a-z).\n */\nexport function randomStringForEntropy(\n bits: number,\n charset = ALPHANUMERIC,\n prng: RandomSource = defaultRandomSource\n): string {\n const length = Math.ceil(bits / (Math.log(charset.length) / Math.LN2));\n return randomString(length, charset, prng);\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\nimport { RandomSource } from \"./\";\n\nconst QUOTA = 65536;\n\nexport class BrowserRandomSource implements RandomSource {\n isAvailable = false;\n isInstantiated = false;\n\n private _crypto?: { getRandomValues: typeof window.crypto.getRandomValues };\n\n constructor() {\n const browserCrypto = typeof self !== 'undefined'\n ? (self.crypto || (self as { msCrypto?: any }).msCrypto) // IE11 has msCrypto\n : null;\n\n if (browserCrypto && browserCrypto.getRandomValues !== undefined) {\n this._crypto = browserCrypto;\n this.isAvailable = true;\n this.isInstantiated = true;\n }\n }\n\n randomBytes(length: number): Uint8Array {\n if (!this.isAvailable || !this._crypto) {\n throw new Error(\"Browser random byte generator is not available.\");\n }\n const out = new Uint8Array(length);\n for (let i = 0; i < out.length; i += QUOTA) {\n this._crypto.getRandomValues(out.subarray(i, i + Math.min(out.length - i, QUOTA)));\n }\n return out;\n }\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\nimport { RandomSource } from \"./\";\nimport { wipe } from \"@stablelib/wipe\";\n\ndeclare function require(name: string): any;\n\nexport class NodeRandomSource implements RandomSource {\n isAvailable = false;\n isInstantiated = false;\n\n private _crypto: { randomBytes(n: number): Uint8Array } | undefined;\n\n constructor() {\n if (typeof require !== \"undefined\") {\n const nodeCrypto = require(\"crypto\");\n if (nodeCrypto && nodeCrypto.randomBytes) {\n this._crypto = nodeCrypto;\n this.isAvailable = true;\n this.isInstantiated = true;\n }\n }\n }\n\n randomBytes(length: number): Uint8Array {\n if (!this.isAvailable || !this._crypto) {\n throw new Error(\"Node.js random byte generator is not available.\");\n }\n\n // Get random bytes (result is Buffer).\n let buffer = this._crypto.randomBytes(length);\n\n // Make sure we got the length that we requested.\n if (buffer.length !== length) {\n throw new Error(\"NodeRandomSource: got fewer bytes than requested\");\n }\n\n // Allocate output array.\n const out = new Uint8Array(length);\n\n // Copy bytes from buffer to output.\n for (let i = 0; i < out.length; i++) {\n out[i] = buffer[i];\n }\n\n // Cleanup.\n wipe(buffer);\n\n return out;\n }\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\nimport { RandomSource } from \"./\";\nimport { BrowserRandomSource } from \"./browser\";\nimport { NodeRandomSource } from \"./node\";\n\nexport class SystemRandomSource implements RandomSource {\n isAvailable = false;\n name = \"\";\n private _source: RandomSource;\n\n constructor() {\n // Try browser.\n this._source = new BrowserRandomSource();\n if (this._source.isAvailable) {\n this.isAvailable = true;\n this.name = \"Browser\";\n return;\n }\n\n // If no browser source, try Node.\n this._source = new NodeRandomSource();\n if (this._source.isAvailable) {\n this.isAvailable = true;\n this.name = \"Node\";\n return;\n }\n\n // No sources, we're out of options.\n }\n\n randomBytes(length: number): Uint8Array {\n if (!this.isAvailable) {\n throw new Error(\"System random byte generator is not available.\");\n }\n return this._source.randomBytes(length);\n }\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package salsa20 implements Salsa20 stream cipher.\n */\n\nimport { writeUint32LE } from \"@stablelib/binary\";\nimport { wipe } from \"@stablelib/wipe\";\n\n// Number of Salsa20 rounds (Salsa20/20).\nconst ROUNDS = 20;\n\n/**\n * Applies the Salsa20 core function to 16-byte input,\n * 32-byte key key, and puts the result into 64-byte array out.\n */\nfunction core(out: Uint8Array, input: Uint8Array, key: Uint8Array): void {\n let j0 = 0x61707865; // \"expa\"\n let j1 = (key[3] << 24) | (key[2] << 16) | (key[1] << 8) | key[0];\n let j2 = (key[7] << 24) | (key[6] << 16) | (key[5] << 8) | key[4];\n let j3 = (key[11] << 24) | (key[10] << 16) | (key[9] << 8) | key[8];\n let j4 = (key[15] << 24) | (key[14] << 16) | (key[13] << 8) | key[12];\n let j5 = 0x3320646E; // \"nd 3\"\n let j6 = (input[3] << 24) | (input[2] << 16) | (input[1] << 8) | input[0];\n let j7 = (input[7] << 24) | (input[6] << 16) | (input[5] << 8) | input[4];\n let j8 = (input[11] << 24) | (input[10] << 16) | (input[9] << 8) | input[8];\n let j9 = (input[15] << 24) | (input[14] << 16) | (input[13] << 8) | input[12];\n let j10 = 0x79622D32; // \"2-by\"\n let j11 = (key[19] << 24) | (key[18] << 16) | (key[17] << 8) | key[16];\n let j12 = (key[23] << 24) | (key[22] << 16) | (key[21] << 8) | key[20];\n let j13 = (key[27] << 24) | (key[26] << 16) | (key[25] << 8) | key[24];\n let j14 = (key[31] << 24) | (key[30] << 16) | (key[29] << 8) | key[28];\n let j15 = 0x6B206574; // \"te k\"\n\n let x0 = j0;\n let x1 = j1;\n let x2 = j2;\n let x3 = j3;\n let x4 = j4;\n let x5 = j5;\n let x6 = j6;\n let x7 = j7;\n let x8 = j8;\n let x9 = j9;\n let x10 = j10;\n let x11 = j11;\n let x12 = j12;\n let x13 = j13;\n let x14 = j14;\n let x15 = j15;\n let u: number;\n\n for (let i = 0; i < ROUNDS; i += 2) {\n u = x0 + x12 | 0;\n x4 ^= u << 7 | u >>> (32 - 7);\n u = x4 + x0 | 0;\n x8 ^= u << 9 | u >>> (32 - 9);\n u = x8 + x4 | 0;\n x12 ^= u << 13 | u >>> (32 - 13);\n u = x12 + x8 | 0;\n x0 ^= u << 18 | u >>> (32 - 18);\n\n u = x5 + x1 | 0;\n x9 ^= u << 7 | u >>> (32 - 7);\n u = x9 + x5 | 0;\n x13 ^= u << 9 | u >>> (32 - 9);\n u = x13 + x9 | 0;\n x1 ^= u << 13 | u >>> (32 - 13);\n u = x1 + x13 | 0;\n x5 ^= u << 18 | u >>> (32 - 18);\n\n u = x10 + x6 | 0;\n x14 ^= u << 7 | u >>> (32 - 7);\n u = x14 + x10 | 0;\n x2 ^= u << 9 | u >>> (32 - 9);\n u = x2 + x14 | 0;\n x6 ^= u << 13 | u >>> (32 - 13);\n u = x6 + x2 | 0;\n x10 ^= u << 18 | u >>> (32 - 18);\n\n u = x15 + x11 | 0;\n x3 ^= u << 7 | u >>> (32 - 7);\n u = x3 + x15 | 0;\n x7 ^= u << 9 | u >>> (32 - 9);\n u = x7 + x3 | 0;\n x11 ^= u << 13 | u >>> (32 - 13);\n u = x11 + x7 | 0;\n x15 ^= u << 18 | u >>> (32 - 18);\n\n u = x0 + x3 | 0;\n x1 ^= u << 7 | u >>> (32 - 7);\n u = x1 + x0 | 0;\n x2 ^= u << 9 | u >>> (32 - 9);\n u = x2 + x1 | 0;\n x3 ^= u << 13 | u >>> (32 - 13);\n u = x3 + x2 | 0;\n x0 ^= u << 18 | u >>> (32 - 18);\n\n u = x5 + x4 | 0;\n x6 ^= u << 7 | u >>> (32 - 7);\n u = x6 + x5 | 0;\n x7 ^= u << 9 | u >>> (32 - 9);\n u = x7 + x6 | 0;\n x4 ^= u << 13 | u >>> (32 - 13);\n u = x4 + x7 | 0;\n x5 ^= u << 18 | u >>> (32 - 18);\n\n u = x10 + x9 | 0;\n x11 ^= u << 7 | u >>> (32 - 7);\n u = x11 + x10 | 0;\n x8 ^= u << 9 | u >>> (32 - 9);\n u = x8 + x11 | 0;\n x9 ^= u << 13 | u >>> (32 - 13);\n u = x9 + x8 | 0;\n x10 ^= u << 18 | u >>> (32 - 18);\n\n u = x15 + x14 | 0;\n x12 ^= u << 7 | u >>> (32 - 7);\n u = x12 + x15 | 0;\n x13 ^= u << 9 | u >>> (32 - 9);\n u = x13 + x12 | 0;\n x14 ^= u << 13 | u >>> (32 - 13);\n u = x14 + x13 | 0;\n x15 ^= u << 18 | u >>> (32 - 18);\n }\n writeUint32LE(x0 + j0 | 0, out, 0);\n writeUint32LE(x1 + j1 | 0, out, 4);\n writeUint32LE(x2 + j2 | 0, out, 8);\n writeUint32LE(x3 + j3 | 0, out, 12);\n writeUint32LE(x4 + j4 | 0, out, 16);\n writeUint32LE(x5 + j5 | 0, out, 20);\n writeUint32LE(x6 + j6 | 0, out, 24);\n writeUint32LE(x7 + j7 | 0, out, 28);\n writeUint32LE(x8 + j8 | 0, out, 32);\n writeUint32LE(x9 + j9 | 0, out, 36);\n writeUint32LE(x10 + j10 | 0, out, 40);\n writeUint32LE(x11 + j11 | 0, out, 44);\n writeUint32LE(x12 + j12 | 0, out, 48);\n writeUint32LE(x13 + j13 | 0, out, 52);\n writeUint32LE(x14 + j14 | 0, out, 56);\n writeUint32LE(x15 + j15 | 0, out, 60);\n}\n\n/**\n * Encrypt src with Salsa20/20 stream generated for the given 32-byte key\n * and 8-byte and write the result into dst and return it.\n *\n * dst and src may be the same, but otherwise must not overlap.\n *\n * Never use the same key and nonce to encrypt more than one message.\n *\n * If nonceInplaceCounterLength is not 0, the nonce is assumed to be a 16-byte\n * array with stream counter in first nonceInplaceCounterLength bytes and nonce\n * in the last remaining bytes. The counter will be incremented inplace for\n * each Salsa20 block. This is useful if you need to encrypt one stream of data\n * in chunks.\n */\nexport function streamXOR(key: Uint8Array, nonce: Uint8Array,\n src: Uint8Array, dst: Uint8Array, nonceInplaceCounterLength = 0): Uint8Array {\n // We only support 256-bit keys.\n if (key.length !== 32) {\n throw new Error(\"Salsa20: key size must be 32 bytes\");\n }\n\n if (dst.length < src.length) {\n throw new Error(\"Salsa20: destination is shorter than source\");\n }\n\n let nc: Uint8Array;\n let counterStart: number;\n\n if (nonceInplaceCounterLength === 0) {\n if (nonce.length !== 8) {\n throw new Error(\"Salsa20 nonce must be 8 bytes\");\n }\n nc = new Uint8Array(16);\n // First bytes of nc are nonce, set it.\n nc.set(nonce);\n // Last bytes are counter.\n counterStart = nonce.length;\n } else {\n if (nonce.length !== 16) {\n throw new Error(\"Salsa20 nonce with counter must be 16 bytes\");\n }\n // This will update passed nonce with counter inplace.\n nc = nonce;\n counterStart = 16 - nonceInplaceCounterLength;\n }\n\n // Allocate temporary space for Salsa20 block.\n const block = new Uint8Array(64);\n\n for (let i = 0; i < src.length; i += 64) {\n // Generate a block.\n core(block, nc, key);\n\n // XOR block bytes with src into dst.\n for (let j = i; j < i + 64 && j < src.length; j++) {\n dst[j] = src[j] ^ block[j - i];\n }\n\n // Increment counter.\n incrementCounter(nc, counterStart, nc.length - counterStart);\n }\n\n // Cleanup temporary space.\n wipe(block);\n\n if (nonceInplaceCounterLength === 0) {\n // Cleanup counter.\n wipe(nc);\n }\n\n return dst;\n}\n\n/**\n * Generate Salsa20/20 stream for the given 32-byte key and 8-byte nonce\n * and write it into dst and return it.\n *\n * Never use the same key and nonce to generate more than one stream.\n *\n * If nonceInplaceCounterLength is not 0, it behaves the same\n * with respect to the nonce as described in streamXOR documentation.\n *\n * stream is like streamXOR with all-zero src.\n */\nexport function stream(key: Uint8Array, nonce: Uint8Array,\n dst: Uint8Array, nonceInplaceCounterLength = 0): Uint8Array {\n wipe(dst);\n return streamXOR(key, nonce, dst, dst, nonceInplaceCounterLength);\n}\n\nfunction incrementCounter(counter: Uint8Array, pos: number, len: number) {\n let carry = 1;\n while (len--) {\n carry = carry + (counter[pos] & 0xff) | 0;\n counter[pos] = carry & 0xff;\n carry >>>= 8;\n pos++;\n }\n if (carry > 0) {\n throw new Error(\"Salsa20: counter overflow\");\n }\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package sha512 implements SHA-2-512 cryptographic hash function.\n */\n\nimport { SerializableHash } from \"@stablelib/hash\";\nimport { readUint32BE, writeUint32BE } from \"@stablelib/binary\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport const DIGEST_LENGTH = 64;\nexport const BLOCK_SIZE = 128;\n\n/**\n * SHA-2-512 cryptographic hash algorithm.\n */\nexport class SHA512 implements SerializableHash {\n /** Length of hash output */\n readonly digestLength: number = DIGEST_LENGTH;\n\n /** Block size */\n readonly blockSize: number = BLOCK_SIZE;\n\n // Note: Int32Array is used instead of Uint32Array for performance reasons.\n protected _stateHi = new Int32Array(8); // hash state, high bytes\n protected _stateLo = new Int32Array(8); // hash state, low bytes\n private _tempHi = new Int32Array(16); // temporary state, high bytes\n private _tempLo = new Int32Array(16); // temporary state, low bytes\n private _buffer = new Uint8Array(256); // buffer for data to hash\n private _bufferLength = 0; // number of bytes in buffer\n private _bytesHashed = 0; // number of total bytes hashed\n private _finished = false; // indicates whether the hash was finalized\n\n constructor() {\n this.reset();\n }\n\n protected _initState() {\n this._stateHi[0] = 0x6a09e667;\n this._stateHi[1] = 0xbb67ae85;\n this._stateHi[2] = 0x3c6ef372;\n this._stateHi[3] = 0xa54ff53a;\n this._stateHi[4] = 0x510e527f;\n this._stateHi[5] = 0x9b05688c;\n this._stateHi[6] = 0x1f83d9ab;\n this._stateHi[7] = 0x5be0cd19;\n\n this._stateLo[0] = 0xf3bcc908;\n this._stateLo[1] = 0x84caa73b;\n this._stateLo[2] = 0xfe94f82b;\n this._stateLo[3] = 0x5f1d36f1;\n this._stateLo[4] = 0xade682d1;\n this._stateLo[5] = 0x2b3e6c1f;\n this._stateLo[6] = 0xfb41bd6b;\n this._stateLo[7] = 0x137e2179;\n }\n\n /**\n * Resets hash state making it possible\n * to re-use this instance to hash other data.\n */\n reset(): this {\n this._initState();\n this._bufferLength = 0;\n this._bytesHashed = 0;\n this._finished = false;\n return this;\n }\n\n /**\n * Cleans internal buffers and resets hash state.\n */\n clean() {\n wipe(this._buffer);\n wipe(this._tempHi);\n wipe(this._tempLo);\n this.reset();\n }\n\n /**\n * Updates hash state with the given data.\n *\n * Throws error when trying to update already finalized hash:\n * instance must be reset to update it again.\n */\n update(data: Uint8Array, dataLength: number = data.length): this {\n if (this._finished) {\n throw new Error(\"SHA512: can't update because hash was finished.\");\n }\n let dataPos = 0;\n this._bytesHashed += dataLength;\n if (this._bufferLength > 0) {\n while (this._bufferLength < BLOCK_SIZE && dataLength > 0) {\n this._buffer[this._bufferLength++] = data[dataPos++];\n dataLength--;\n }\n if (this._bufferLength === this.blockSize) {\n hashBlocks(this._tempHi, this._tempLo, this._stateHi, this._stateLo,\n this._buffer, 0, this.blockSize);\n this._bufferLength = 0;\n }\n }\n if (dataLength >= this.blockSize) {\n dataPos = hashBlocks(this._tempHi, this._tempLo, this._stateHi, this._stateLo,\n data, dataPos, dataLength);\n dataLength %= this.blockSize;\n }\n while (dataLength > 0) {\n this._buffer[this._bufferLength++] = data[dataPos++];\n dataLength--;\n }\n return this;\n }\n\n /**\n * Finalizes hash state and puts hash into out.\n * If hash was already finalized, puts the same value.\n */\n finish(out: Uint8Array): this {\n if (!this._finished) {\n const bytesHashed = this._bytesHashed;\n const left = this._bufferLength;\n const bitLenHi = (bytesHashed / 0x20000000) | 0;\n const bitLenLo = bytesHashed << 3;\n const padLength = (bytesHashed % 128 < 112) ? 128 : 256;\n\n this._buffer[left] = 0x80;\n for (let i = left + 1; i < padLength - 8; i++) {\n this._buffer[i] = 0;\n }\n writeUint32BE(bitLenHi, this._buffer, padLength - 8);\n writeUint32BE(bitLenLo, this._buffer, padLength - 4);\n\n hashBlocks(this._tempHi, this._tempLo, this._stateHi, this._stateLo, this._buffer, 0, padLength);\n\n this._finished = true;\n }\n\n for (let i = 0; i < this.digestLength / 8; i++) {\n writeUint32BE(this._stateHi[i], out, i * 8);\n writeUint32BE(this._stateLo[i], out, i * 8 + 4);\n }\n\n return this;\n }\n\n /**\n * Returns the final hash digest.\n */\n digest(): Uint8Array {\n const out = new Uint8Array(this.digestLength);\n this.finish(out);\n return out;\n }\n\n /**\n * Function useful for HMAC/PBKDF2 optimization. Returns hash state to be\n * used with restoreState(). Only chain value is saved, not buffers or\n * other state variables.\n */\n saveState(): SavedState {\n if (this._finished) {\n throw new Error(\"SHA256: cannot save finished state\");\n }\n return {\n stateHi: new Int32Array(this._stateHi),\n stateLo: new Int32Array(this._stateLo),\n buffer: this._bufferLength > 0 ? new Uint8Array(this._buffer) : undefined,\n bufferLength: this._bufferLength,\n bytesHashed: this._bytesHashed\n };\n }\n\n /**\n * Function useful for HMAC/PBKDF2 optimization. Restores state saved by\n * saveState() and sets bytesHashed to the given value.\n */\n restoreState(savedState: SavedState): this {\n this._stateHi.set(savedState.stateHi);\n this._stateLo.set(savedState.stateLo);\n this._bufferLength = savedState.bufferLength;\n if (savedState.buffer) {\n this._buffer.set(savedState.buffer);\n }\n this._bytesHashed = savedState.bytesHashed;\n this._finished = false;\n return this;\n }\n\n /**\n * Cleans state returned by saveState().\n */\n cleanSavedState(savedState: SavedState) {\n wipe(savedState.stateHi);\n wipe(savedState.stateLo);\n if (savedState.buffer) {\n wipe(savedState.buffer);\n }\n savedState.bufferLength = 0;\n savedState.bytesHashed = 0;\n }\n}\n\nexport type SavedState = {\n stateHi: Int32Array;\n stateLo: Int32Array;\n buffer: Uint8Array | undefined;\n bufferLength: number;\n bytesHashed: number;\n};\n\n// Constants\nconst K = new Int32Array([\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n]);\n\n\nfunction hashBlocks(wh: Int32Array, wl: Int32Array, hh: Int32Array, hl: Int32Array,\n m: Uint8Array, pos: number, len: number): number {\n\n let ah0 = hh[0],\n ah1 = hh[1],\n ah2 = hh[2],\n ah3 = hh[3],\n ah4 = hh[4],\n ah5 = hh[5],\n ah6 = hh[6],\n ah7 = hh[7],\n\n al0 = hl[0],\n al1 = hl[1],\n al2 = hl[2],\n al3 = hl[3],\n al4 = hl[4],\n al5 = hl[5],\n al6 = hl[6],\n al7 = hl[7];\n\n let h: number, l: number;\n let th: number, tl: number;\n let a: number, b: number, c: number, d: number;\n\n while (len >= 128) {\n for (let i = 0; i < 16; i++) {\n const j = 8 * i + pos;\n wh[i] = readUint32BE(m, j);\n wl[i] = readUint32BE(m, j + 4);\n }\n for (let i = 0; i < 80; i++) {\n let bh0 = ah0;\n let bh1 = ah1;\n let bh2 = ah2;\n let bh3 = ah3;\n let bh4 = ah4;\n let bh5 = ah5;\n let bh6 = ah6;\n let bh7 = ah7;\n\n let bl0 = al0;\n let bl1 = al1;\n let bl2 = al2;\n let bl3 = al3;\n let bl4 = al4;\n let bl5 = al5;\n let bl6 = al6;\n let bl7 = al7;\n\n // add\n h = ah7;\n l = al7;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n // Sigma1\n h = ((ah4 >>> 14) | (al4 << (32 - 14))) ^ ((ah4 >>> 18) |\n (al4 << (32 - 18))) ^ ((al4 >>> (41 - 32)) | (ah4 << (32 - (41 - 32))));\n l = ((al4 >>> 14) | (ah4 << (32 - 14))) ^ ((al4 >>> 18) |\n (ah4 << (32 - 18))) ^ ((ah4 >>> (41 - 32)) | (al4 << (32 - (41 - 32))));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // Ch\n h = (ah4 & ah5) ^ (~ah4 & ah6);\n l = (al4 & al5) ^ (~al4 & al6);\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // K\n h = K[i * 2];\n l = K[i * 2 + 1];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // w\n h = wh[i % 16];\n l = wl[i % 16];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n th = c & 0xffff | d << 16;\n tl = a & 0xffff | b << 16;\n\n // add\n h = th;\n l = tl;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n // Sigma0\n h = ((ah0 >>> 28) | (al0 << (32 - 28))) ^ ((al0 >>> (34 - 32)) |\n (ah0 << (32 - (34 - 32)))) ^ ((al0 >>> (39 - 32)) | (ah0 << (32 - (39 - 32))));\n l = ((al0 >>> 28) | (ah0 << (32 - 28))) ^ ((ah0 >>> (34 - 32)) |\n (al0 << (32 - (34 - 32)))) ^ ((ah0 >>> (39 - 32)) | (al0 << (32 - (39 - 32))));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // Maj\n h = (ah0 & ah1) ^ (ah0 & ah2) ^ (ah1 & ah2);\n l = (al0 & al1) ^ (al0 & al2) ^ (al1 & al2);\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n bh7 = (c & 0xffff) | (d << 16);\n bl7 = (a & 0xffff) | (b << 16);\n\n // add\n h = bh3;\n l = bl3;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = th;\n l = tl;\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n bh3 = (c & 0xffff) | (d << 16);\n bl3 = (a & 0xffff) | (b << 16);\n\n ah1 = bh0;\n ah2 = bh1;\n ah3 = bh2;\n ah4 = bh3;\n ah5 = bh4;\n ah6 = bh5;\n ah7 = bh6;\n ah0 = bh7;\n\n al1 = bl0;\n al2 = bl1;\n al3 = bl2;\n al4 = bl3;\n al5 = bl4;\n al6 = bl5;\n al7 = bl6;\n al0 = bl7;\n\n if (i % 16 === 15) {\n for (let j = 0; j < 16; j++) {\n // add\n h = wh[j];\n l = wl[j];\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = wh[(j + 9) % 16];\n l = wl[(j + 9) % 16];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // sigma0\n th = wh[(j + 1) % 16];\n tl = wl[(j + 1) % 16];\n h = ((th >>> 1) | (tl << (32 - 1))) ^ ((th >>> 8) |\n (tl << (32 - 8))) ^ (th >>> 7);\n l = ((tl >>> 1) | (th << (32 - 1))) ^ ((tl >>> 8) |\n (th << (32 - 8))) ^ ((tl >>> 7) | (th << (32 - 7)));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n // sigma1\n th = wh[(j + 14) % 16];\n tl = wl[(j + 14) % 16];\n h = ((th >>> 19) | (tl << (32 - 19))) ^ ((tl >>> (61 - 32)) |\n (th << (32 - (61 - 32)))) ^ (th >>> 6);\n l = ((tl >>> 19) | (th << (32 - 19))) ^ ((th >>> (61 - 32)) |\n (tl << (32 - (61 - 32)))) ^ ((tl >>> 6) | (th << (32 - 6)));\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n wh[j] = (c & 0xffff) | (d << 16);\n wl[j] = (a & 0xffff) | (b << 16);\n }\n }\n }\n\n // add\n h = ah0;\n l = al0;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[0];\n l = hl[0];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[0] = ah0 = (c & 0xffff) | (d << 16);\n hl[0] = al0 = (a & 0xffff) | (b << 16);\n\n h = ah1;\n l = al1;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[1];\n l = hl[1];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[1] = ah1 = (c & 0xffff) | (d << 16);\n hl[1] = al1 = (a & 0xffff) | (b << 16);\n\n h = ah2;\n l = al2;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[2];\n l = hl[2];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[2] = ah2 = (c & 0xffff) | (d << 16);\n hl[2] = al2 = (a & 0xffff) | (b << 16);\n\n h = ah3;\n l = al3;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[3];\n l = hl[3];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[3] = ah3 = (c & 0xffff) | (d << 16);\n hl[3] = al3 = (a & 0xffff) | (b << 16);\n\n h = ah4;\n l = al4;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[4];\n l = hl[4];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[4] = ah4 = (c & 0xffff) | (d << 16);\n hl[4] = al4 = (a & 0xffff) | (b << 16);\n\n h = ah5;\n l = al5;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[5];\n l = hl[5];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[5] = ah5 = (c & 0xffff) | (d << 16);\n hl[5] = al5 = (a & 0xffff) | (b << 16);\n\n h = ah6;\n l = al6;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[6];\n l = hl[6];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[6] = ah6 = (c & 0xffff) | (d << 16);\n hl[6] = al6 = (a & 0xffff) | (b << 16);\n\n h = ah7;\n l = al7;\n\n a = l & 0xffff; b = l >>> 16;\n c = h & 0xffff; d = h >>> 16;\n\n h = hh[7];\n l = hl[7];\n\n a += l & 0xffff; b += l >>> 16;\n c += h & 0xffff; d += h >>> 16;\n\n b += a >>> 16;\n c += b >>> 16;\n d += c >>> 16;\n\n hh[7] = ah7 = (c & 0xffff) | (d << 16);\n hl[7] = al7 = (a & 0xffff) | (b << 16);\n\n pos += 128;\n len -= 128;\n }\n\n return pos;\n}\n\nexport function hash(data: Uint8Array): Uint8Array {\n const h = new SHA512();\n h.update(data);\n const digest = h.digest();\n h.clean();\n return digest;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package utf8 implements UTF-8 encoding and decoding.\n */\n\nconst INVALID_UTF16 = \"utf8: invalid string\";\nconst INVALID_UTF8 = \"utf8: invalid source encoding\";\n\n/**\n * Encodes the given string into UTF-8 byte array.\n * Throws if the source string has invalid UTF-16 encoding.\n */\nexport function encode(s: string): Uint8Array {\n // Calculate result length and allocate output array.\n // encodedLength() also validates string and throws errors,\n // so we don't need repeat validation here.\n const arr = new Uint8Array(encodedLength(s));\n\n let pos = 0;\n for (let i = 0; i < s.length; i++) {\n let c = s.charCodeAt(i);\n if (c < 0x80) {\n arr[pos++] = c;\n } else if (c < 0x800) {\n arr[pos++] = 0xc0 | c >> 6;\n arr[pos++] = 0x80 | c & 0x3f;\n } else if (c < 0xd800) {\n arr[pos++] = 0xe0 | c >> 12;\n arr[pos++] = 0x80 | (c >> 6) & 0x3f;\n arr[pos++] = 0x80 | c & 0x3f;\n } else {\n i++; // get one more character\n c = (c & 0x3ff) << 10;\n c |= s.charCodeAt(i) & 0x3ff;\n c += 0x10000;\n\n arr[pos++] = 0xf0 | c >> 18;\n arr[pos++] = 0x80 | (c >> 12) & 0x3f;\n arr[pos++] = 0x80 | (c >> 6) & 0x3f;\n arr[pos++] = 0x80 | c & 0x3f;\n }\n }\n return arr;\n}\n\n/**\n * Returns the number of bytes required to encode the given string into UTF-8.\n * Throws if the source string has invalid UTF-16 encoding.\n */\nexport function encodedLength(s: string): number {\n let result = 0;\n for (let i = 0; i < s.length; i++) {\n const c = s.charCodeAt(i);\n if (c < 0x80) {\n result += 1;\n } else if (c < 0x800) {\n result += 2;\n } else if (c < 0xd800) {\n result += 3;\n } else if (c <= 0xdfff) {\n if (i >= s.length - 1) {\n throw new Error(INVALID_UTF16);\n }\n i++; // \"eat\" next character\n result += 4;\n } else {\n throw new Error(INVALID_UTF16);\n }\n }\n return result;\n}\n\n/**\n * Decodes the given byte array from UTF-8 into a string.\n * Throws if encoding is invalid.\n */\nexport function decode(arr: Uint8Array): string {\n const chars: string[] = [];\n for (let i = 0; i < arr.length; i++) {\n let b = arr[i];\n\n if (b & 0x80) {\n let min;\n if (b < 0xe0) {\n // Need 1 more byte.\n if (i >= arr.length) {\n throw new Error(INVALID_UTF8);\n }\n const n1 = arr[++i];\n if ((n1 & 0xc0) !== 0x80) {\n throw new Error(INVALID_UTF8);\n }\n b = (b & 0x1f) << 6 | (n1 & 0x3f);\n min = 0x80;\n } else if (b < 0xf0) {\n // Need 2 more bytes.\n if (i >= arr.length - 1) {\n throw new Error(INVALID_UTF8);\n }\n const n1 = arr[++i];\n const n2 = arr[++i];\n if ((n1 & 0xc0) !== 0x80 || (n2 & 0xc0) !== 0x80) {\n throw new Error(INVALID_UTF8);\n }\n b = (b & 0x0f) << 12 | (n1 & 0x3f) << 6 | (n2 & 0x3f);\n min = 0x800;\n } else if (b < 0xf8) {\n // Need 3 more bytes.\n if (i >= arr.length - 2) {\n throw new Error(INVALID_UTF8);\n }\n const n1 = arr[++i];\n const n2 = arr[++i];\n const n3 = arr[++i];\n if ((n1 & 0xc0) !== 0x80 || (n2 & 0xc0) !== 0x80 || (n3 & 0xc0) !== 0x80) {\n throw new Error(INVALID_UTF8);\n }\n b = (b & 0x0f) << 18 | (n1 & 0x3f) << 12 | (n2 & 0x3f) << 6 | (n3 & 0x3f);\n min = 0x10000;\n } else {\n throw new Error(INVALID_UTF8);\n }\n\n if (b < min || (b >= 0xd800 && b <= 0xdfff)) {\n throw new Error(INVALID_UTF8);\n }\n\n if (b >= 0x10000) {\n // Surrogate pair.\n if (b > 0x10ffff) {\n throw new Error(INVALID_UTF8);\n }\n b -= 0x10000;\n chars.push(String.fromCharCode(0xd800 | (b >> 10)));\n b = 0xdc00 | (b & 0x3ff);\n }\n }\n\n chars.push(String.fromCharCode(b));\n }\n return chars.join(\"\");\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package wipe implements functions for zeroing arrays.\n */\n\nexport type NumericArray = number[] | Uint8Array | Int8Array | Uint16Array\n | Int16Array | Uint32Array | Int32Array | Float32Array | Float64Array;\n\n/**\n * Sets all values in the given array to zero and returns it.\n *\n * The fact that it sets bytes to zero can be relied on.\n *\n * There is no guarantee that this function makes data disappear from memory,\n * as runtime implementation can, for example, have copying garbage collector\n * that will make copies of sensitive data before we wipe it. Or that an\n * operating system will write our data to swap or sleep image. Another thing\n * is that an optimizing compiler can remove calls to this function or make it\n * no-op. There's nothing we can do with it, so we just do our best and hope\n * that everything will be okay and good will triumph over evil.\n */\nexport function wipe(array: NumericArray): NumericArray {\n // Right now it's similar to array.fill(0). If it turns\n // out that runtimes optimize this call away, maybe\n // we can try something else.\n for (let i = 0; i < array.length; i++) {\n array[i] = 0;\n }\n return array;\n}\n","// Copyright (C) 2020 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\nimport { KeyAgreement } from \"@stablelib/keyagreement\";\nimport { randomBytes, RandomSource } from \"@stablelib/random\";\nimport { wipe } from \"@stablelib/wipe\";\nimport { PUBLIC_KEY_LENGTH,\n SECRET_KEY_LENGTH,\n SHARED_KEY_LENGTH,\n generateKeyPairFromSeed,\n sharedKey,\n KeyPair } from \"@stablelib/x25519\";\nimport { SessionKeys, clientSessionKeysFromSharedKey, serverSessionKeysFromSharedKey } from \"./x25519-session\";\n\n/** Constants for key agreement */\nexport const OFFER_MESSAGE_LENGTH = PUBLIC_KEY_LENGTH;\nexport const ACCEPT_MESSAGE_LENGTH = PUBLIC_KEY_LENGTH;\nexport const SAVED_STATE_LENGTH = SECRET_KEY_LENGTH;\nexport const SECRET_SEED_LENGTH = SECRET_KEY_LENGTH;\n\n/**\n * X25519 key agreement using ephemeral key pairs.\n *\n * Note that unless this key agreement is combined with an authentication\n * method, such as public key signatures, it's vulnerable to man-in-the-middle\n * attacks.\n */\nexport class X25519Session implements KeyAgreement {\n readonly offerMessageLength = OFFER_MESSAGE_LENGTH;\n readonly acceptMessageLength = ACCEPT_MESSAGE_LENGTH;\n readonly sharedKeyLength = SHARED_KEY_LENGTH;\n readonly savedStateLength = SAVED_STATE_LENGTH;\n\n private _seed: Uint8Array;\n private _keyPair: KeyPair | undefined;\n private _sharedKey: Uint8Array | undefined;\n private _sessionKeys: SessionKeys | undefined;\n\n constructor(secretSeed?: Uint8Array, prng?: RandomSource) {\n this._seed = secretSeed || randomBytes(SECRET_KEY_LENGTH, prng);\n }\n\n saveState(): Uint8Array {\n return new Uint8Array(this._seed);\n }\n\n restoreState(savedState: Uint8Array): this {\n this._seed = new Uint8Array(savedState);\n return this;\n }\n\n clean(): void {\n if (this._seed) {\n wipe(this._seed);\n }\n if (this._keyPair) {\n wipe(this._keyPair.secretKey);\n wipe(this._keyPair.publicKey);\n }\n if (this._sharedKey) {\n wipe(this._sharedKey);\n }\n if (this._sessionKeys) {\n wipe(this._sessionKeys.receive);\n wipe(this._sessionKeys.send);\n }\n }\n\n offer(): Uint8Array {\n this._keyPair = generateKeyPairFromSeed(this._seed);\n return new Uint8Array(this._keyPair.publicKey);\n }\n\n accept(offerMsg: Uint8Array): Uint8Array {\n if (this._keyPair) {\n throw new Error(\"X25519Session: accept shouldn't be called by offering party\");\n }\n if (offerMsg.length !== this.offerMessageLength) {\n throw new Error(\"X25519Session: incorrect offer message length\");\n }\n if (this._sharedKey) {\n throw new Error(\"X25519Session: accept was already called\");\n }\n const keyPair = generateKeyPairFromSeed(this._seed);\n this._sharedKey = sharedKey(keyPair.secretKey, offerMsg);\n this._sessionKeys = clientSessionKeysFromSharedKey(this._sharedKey, keyPair.publicKey, offerMsg);\n wipe(keyPair.secretKey);\n return keyPair.publicKey;\n }\n\n finish(acceptMsg: Uint8Array): this {\n if (acceptMsg.length !== this.acceptMessageLength) {\n throw new Error(\"X25519Session: incorrect accept message length\");\n }\n if (!this._keyPair) {\n throw new Error(\"X25519Session: no offer state\");\n }\n if (this._sharedKey) {\n throw new Error(\"X25519Session: finish was already called\");\n }\n this._sharedKey = sharedKey(this._keyPair.secretKey, acceptMsg);\n this._sessionKeys = serverSessionKeysFromSharedKey(this._sharedKey, this._keyPair.publicKey, acceptMsg);\n return this;\n }\n\n getSharedKey(): Uint8Array {\n if (!this._sharedKey) {\n throw new Error(\"X25519Session: no shared key established\");\n }\n return new Uint8Array(this._sharedKey);\n }\n\n getSessionKeys(): SessionKeys {\n if (!this._sessionKeys) {\n throw new Error(\"X25519Session: no shared key established\");\n }\n return {\n receive: new Uint8Array(this._sessionKeys.receive),\n send: new Uint8Array(this._sessionKeys.send),\n };\n }\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package x25519-session implements libsodium compatible session keys generation based on X25519 key agreement.\n */\n\nimport { BLAKE2b } from \"@stablelib/blake2b\";\nimport { Hash } from \"@stablelib/hash\";\nimport { sharedKey, KeyPair } from \"@stablelib/x25519\";\nexport { X25519Session } from \"./keyagreement\";\n\nconst SESSION_KEY_LENGTH = 32;\n\nexport interface SessionKeys {\n receive: Uint8Array;\n send: Uint8Array;\n}\n\n/**\n * Generates server-side session encryption keys from the shared key obtained during agreement phase.\n */\nexport function serverSessionKeysFromSharedKey(sharedKey: Uint8Array,\n myPublicKey: Uint8Array,\n theirPublicKey: Uint8Array,\n hash: new() => Hash = BLAKE2b): SessionKeys {\n const state = new hash();\n if (state.digestLength !== SESSION_KEY_LENGTH * 2) {\n throw new Error(\"X25519: incorrect digest length\");\n }\n const h = state.update(sharedKey).update(theirPublicKey).update(myPublicKey).digest();\n\n return {\n send: h.subarray(0, SESSION_KEY_LENGTH),\n receive: h.subarray(SESSION_KEY_LENGTH),\n };\n}\n\n/**\n * Generates client-side session encryption keys from the shared key obtained during agreement phase.\n */\nexport function clientSessionKeysFromSharedKey(sharedKey: Uint8Array,\n myPublicKey: Uint8Array,\n theirPublicKey: Uint8Array,\n hash: new() => Hash = BLAKE2b): SessionKeys {\n const state = new hash();\n if (state.digestLength !== SESSION_KEY_LENGTH * 2) {\n throw new Error(\"X25519: incorrect digest length\");\n }\n const h = state.update(sharedKey).update(myPublicKey).update(theirPublicKey).digest();\n\n return {\n receive: h.subarray(0, SESSION_KEY_LENGTH),\n send: h.subarray(SESSION_KEY_LENGTH),\n };\n}\n\n/**\n * Generates server-side session encryption keys. Uses a key pair and a peer's public key to generate the shared key.\n */\nexport function serverSessionKeys(myKeyPair: KeyPair, theirPublicKey: Uint8Array, hash: new() => Hash = BLAKE2b): SessionKeys {\n const sk = sharedKey(myKeyPair.secretKey, theirPublicKey);\n return serverSessionKeysFromSharedKey(sk, myKeyPair.publicKey, theirPublicKey, hash);\n}\n\n/**\n * Generates client-side session encryption keys. Uses a key pair and a peer's public key to generate the shared key.\n */\nexport function clientSessionKeys(myKeyPair: KeyPair, theirPublicKey: Uint8Array, hash: new() => Hash = BLAKE2b): SessionKeys {\n const sk = sharedKey(myKeyPair.secretKey, theirPublicKey);\n return clientSessionKeysFromSharedKey(sk, myKeyPair.publicKey, theirPublicKey, hash);\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package x25519 implements X25519 key agreement.\n */\n\nimport { randomBytes, RandomSource } from \"@stablelib/random\";\nimport { wipe } from \"@stablelib/wipe\";\n\nexport const PUBLIC_KEY_LENGTH = 32;\nexport const SECRET_KEY_LENGTH = 32;\nexport const SHARED_KEY_LENGTH = 32;\n\n// TODO(dchest): some functions are copies of ../sign/ed25519.\n// Find a way to combine them without opening up to public.\n\n// Ported from TweetNaCl.js, which is ported from TweetNaCl\n// by Dmitry Chestnykh and Devi Mandiri.\n// Public domain.\n// https://tweetnacl.js.org\n\n// TweetNaCl contributors:\n// Daniel J. Bernstein, Bernard van Gastel, Wesley Janssen,\n// Tanja Lange, Peter Schwabe, Sjaak Smetsers.\n// Public domain.\n// https://tweetnacl.cr.yp.to/\n\ntype GF = Float64Array;\n\n// Returns new zero-filled 16-element GF (Float64Array).\n// If passed an array of numbers, prefills the returned\n// array with them.\n//\n// We use Float64Array, because we need 48-bit numbers\n// for this implementation.\nfunction gf(init?: number[]): GF {\n const r = new Float64Array(16);\n if (init) {\n for (let i = 0; i < init.length; i++) {\n r[i] = init[i];\n }\n }\n return r;\n}\n\n// Base point.\nconst _9 = new Uint8Array(32); _9[0] = 9;\n\nconst _121665 = gf([0xdb41, 1]);\n\nfunction car25519(o: GF) {\n let c = 1;\n for (let i = 0; i < 16; i++) {\n let v = o[i] + c + 65535;\n c = Math.floor(v / 65536);\n o[i] = v - c * 65536;\n }\n o[0] += c - 1 + 37 * (c - 1);\n}\n\nfunction sel25519(p: GF, q: GF, b: number) {\n const c = ~(b - 1);\n for (let i = 0; i < 16; i++) {\n const t = c & (p[i] ^ q[i]);\n p[i] ^= t;\n q[i] ^= t;\n }\n}\n\nfunction pack25519(o: Uint8Array, n: GF) {\n const m = gf();\n const t = gf();\n for (let i = 0; i < 16; i++) {\n t[i] = n[i];\n }\n car25519(t);\n car25519(t);\n car25519(t);\n for (let j = 0; j < 2; j++) {\n m[0] = t[0] - 0xffed;\n for (let i = 1; i < 15; i++) {\n m[i] = t[i] - 0xffff - ((m[i - 1] >> 16) & 1);\n m[i - 1] &= 0xffff;\n }\n m[15] = t[15] - 0x7fff - ((m[14] >> 16) & 1);\n const b = (m[15] >> 16) & 1;\n m[14] &= 0xffff;\n sel25519(t, m, 1 - b);\n }\n for (let i = 0; i < 16; i++) {\n o[2 * i] = t[i] & 0xff;\n o[2 * i + 1] = t[i] >> 8;\n }\n}\n\nfunction unpack25519(o: GF, n: Uint8Array) {\n for (let i = 0; i < 16; i++) {\n o[i] = n[2 * i] + (n[2 * i + 1] << 8);\n }\n o[15] &= 0x7fff;\n}\n\nfunction add(o: GF, a: GF, b: GF) {\n for (let i = 0; i < 16; i++) {\n o[i] = a[i] + b[i];\n }\n}\n\nfunction sub(o: GF, a: GF, b: GF) {\n for (let i = 0; i < 16; i++) {\n o[i] = a[i] - b[i];\n }\n}\n\nfunction mul(o: GF, a: GF, b: GF) {\n let v: number, c: number,\n t0 = 0, t1 = 0, t2 = 0, t3 = 0, t4 = 0, t5 = 0, t6 = 0, t7 = 0,\n t8 = 0, t9 = 0, t10 = 0, t11 = 0, t12 = 0, t13 = 0, t14 = 0, t15 = 0,\n t16 = 0, t17 = 0, t18 = 0, t19 = 0, t20 = 0, t21 = 0, t22 = 0, t23 = 0,\n t24 = 0, t25 = 0, t26 = 0, t27 = 0, t28 = 0, t29 = 0, t30 = 0,\n b0 = b[0],\n b1 = b[1],\n b2 = b[2],\n b3 = b[3],\n b4 = b[4],\n b5 = b[5],\n b6 = b[6],\n b7 = b[7],\n b8 = b[8],\n b9 = b[9],\n b10 = b[10],\n b11 = b[11],\n b12 = b[12],\n b13 = b[13],\n b14 = b[14],\n b15 = b[15];\n\n v = a[0];\n t0 += v * b0;\n t1 += v * b1;\n t2 += v * b2;\n t3 += v * b3;\n t4 += v * b4;\n t5 += v * b5;\n t6 += v * b6;\n t7 += v * b7;\n t8 += v * b8;\n t9 += v * b9;\n t10 += v * b10;\n t11 += v * b11;\n t12 += v * b12;\n t13 += v * b13;\n t14 += v * b14;\n t15 += v * b15;\n v = a[1];\n t1 += v * b0;\n t2 += v * b1;\n t3 += v * b2;\n t4 += v * b3;\n t5 += v * b4;\n t6 += v * b5;\n t7 += v * b6;\n t8 += v * b7;\n t9 += v * b8;\n t10 += v * b9;\n t11 += v * b10;\n t12 += v * b11;\n t13 += v * b12;\n t14 += v * b13;\n t15 += v * b14;\n t16 += v * b15;\n v = a[2];\n t2 += v * b0;\n t3 += v * b1;\n t4 += v * b2;\n t5 += v * b3;\n t6 += v * b4;\n t7 += v * b5;\n t8 += v * b6;\n t9 += v * b7;\n t10 += v * b8;\n t11 += v * b9;\n t12 += v * b10;\n t13 += v * b11;\n t14 += v * b12;\n t15 += v * b13;\n t16 += v * b14;\n t17 += v * b15;\n v = a[3];\n t3 += v * b0;\n t4 += v * b1;\n t5 += v * b2;\n t6 += v * b3;\n t7 += v * b4;\n t8 += v * b5;\n t9 += v * b6;\n t10 += v * b7;\n t11 += v * b8;\n t12 += v * b9;\n t13 += v * b10;\n t14 += v * b11;\n t15 += v * b12;\n t16 += v * b13;\n t17 += v * b14;\n t18 += v * b15;\n v = a[4];\n t4 += v * b0;\n t5 += v * b1;\n t6 += v * b2;\n t7 += v * b3;\n t8 += v * b4;\n t9 += v * b5;\n t10 += v * b6;\n t11 += v * b7;\n t12 += v * b8;\n t13 += v * b9;\n t14 += v * b10;\n t15 += v * b11;\n t16 += v * b12;\n t17 += v * b13;\n t18 += v * b14;\n t19 += v * b15;\n v = a[5];\n t5 += v * b0;\n t6 += v * b1;\n t7 += v * b2;\n t8 += v * b3;\n t9 += v * b4;\n t10 += v * b5;\n t11 += v * b6;\n t12 += v * b7;\n t13 += v * b8;\n t14 += v * b9;\n t15 += v * b10;\n t16 += v * b11;\n t17 += v * b12;\n t18 += v * b13;\n t19 += v * b14;\n t20 += v * b15;\n v = a[6];\n t6 += v * b0;\n t7 += v * b1;\n t8 += v * b2;\n t9 += v * b3;\n t10 += v * b4;\n t11 += v * b5;\n t12 += v * b6;\n t13 += v * b7;\n t14 += v * b8;\n t15 += v * b9;\n t16 += v * b10;\n t17 += v * b11;\n t18 += v * b12;\n t19 += v * b13;\n t20 += v * b14;\n t21 += v * b15;\n v = a[7];\n t7 += v * b0;\n t8 += v * b1;\n t9 += v * b2;\n t10 += v * b3;\n t11 += v * b4;\n t12 += v * b5;\n t13 += v * b6;\n t14 += v * b7;\n t15 += v * b8;\n t16 += v * b9;\n t17 += v * b10;\n t18 += v * b11;\n t19 += v * b12;\n t20 += v * b13;\n t21 += v * b14;\n t22 += v * b15;\n v = a[8];\n t8 += v * b0;\n t9 += v * b1;\n t10 += v * b2;\n t11 += v * b3;\n t12 += v * b4;\n t13 += v * b5;\n t14 += v * b6;\n t15 += v * b7;\n t16 += v * b8;\n t17 += v * b9;\n t18 += v * b10;\n t19 += v * b11;\n t20 += v * b12;\n t21 += v * b13;\n t22 += v * b14;\n t23 += v * b15;\n v = a[9];\n t9 += v * b0;\n t10 += v * b1;\n t11 += v * b2;\n t12 += v * b3;\n t13 += v * b4;\n t14 += v * b5;\n t15 += v * b6;\n t16 += v * b7;\n t17 += v * b8;\n t18 += v * b9;\n t19 += v * b10;\n t20 += v * b11;\n t21 += v * b12;\n t22 += v * b13;\n t23 += v * b14;\n t24 += v * b15;\n v = a[10];\n t10 += v * b0;\n t11 += v * b1;\n t12 += v * b2;\n t13 += v * b3;\n t14 += v * b4;\n t15 += v * b5;\n t16 += v * b6;\n t17 += v * b7;\n t18 += v * b8;\n t19 += v * b9;\n t20 += v * b10;\n t21 += v * b11;\n t22 += v * b12;\n t23 += v * b13;\n t24 += v * b14;\n t25 += v * b15;\n v = a[11];\n t11 += v * b0;\n t12 += v * b1;\n t13 += v * b2;\n t14 += v * b3;\n t15 += v * b4;\n t16 += v * b5;\n t17 += v * b6;\n t18 += v * b7;\n t19 += v * b8;\n t20 += v * b9;\n t21 += v * b10;\n t22 += v * b11;\n t23 += v * b12;\n t24 += v * b13;\n t25 += v * b14;\n t26 += v * b15;\n v = a[12];\n t12 += v * b0;\n t13 += v * b1;\n t14 += v * b2;\n t15 += v * b3;\n t16 += v * b4;\n t17 += v * b5;\n t18 += v * b6;\n t19 += v * b7;\n t20 += v * b8;\n t21 += v * b9;\n t22 += v * b10;\n t23 += v * b11;\n t24 += v * b12;\n t25 += v * b13;\n t26 += v * b14;\n t27 += v * b15;\n v = a[13];\n t13 += v * b0;\n t14 += v * b1;\n t15 += v * b2;\n t16 += v * b3;\n t17 += v * b4;\n t18 += v * b5;\n t19 += v * b6;\n t20 += v * b7;\n t21 += v * b8;\n t22 += v * b9;\n t23 += v * b10;\n t24 += v * b11;\n t25 += v * b12;\n t26 += v * b13;\n t27 += v * b14;\n t28 += v * b15;\n v = a[14];\n t14 += v * b0;\n t15 += v * b1;\n t16 += v * b2;\n t17 += v * b3;\n t18 += v * b4;\n t19 += v * b5;\n t20 += v * b6;\n t21 += v * b7;\n t22 += v * b8;\n t23 += v * b9;\n t24 += v * b10;\n t25 += v * b11;\n t26 += v * b12;\n t27 += v * b13;\n t28 += v * b14;\n t29 += v * b15;\n v = a[15];\n t15 += v * b0;\n t16 += v * b1;\n t17 += v * b2;\n t18 += v * b3;\n t19 += v * b4;\n t20 += v * b5;\n t21 += v * b6;\n t22 += v * b7;\n t23 += v * b8;\n t24 += v * b9;\n t25 += v * b10;\n t26 += v * b11;\n t27 += v * b12;\n t28 += v * b13;\n t29 += v * b14;\n t30 += v * b15;\n\n t0 += 38 * t16;\n t1 += 38 * t17;\n t2 += 38 * t18;\n t3 += 38 * t19;\n t4 += 38 * t20;\n t5 += 38 * t21;\n t6 += 38 * t22;\n t7 += 38 * t23;\n t8 += 38 * t24;\n t9 += 38 * t25;\n t10 += 38 * t26;\n t11 += 38 * t27;\n t12 += 38 * t28;\n t13 += 38 * t29;\n t14 += 38 * t30;\n // t15 left as is\n\n // first car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c - 1 + 37 * (c - 1);\n\n // second car\n c = 1;\n v = t0 + c + 65535; c = Math.floor(v / 65536); t0 = v - c * 65536;\n v = t1 + c + 65535; c = Math.floor(v / 65536); t1 = v - c * 65536;\n v = t2 + c + 65535; c = Math.floor(v / 65536); t2 = v - c * 65536;\n v = t3 + c + 65535; c = Math.floor(v / 65536); t3 = v - c * 65536;\n v = t4 + c + 65535; c = Math.floor(v / 65536); t4 = v - c * 65536;\n v = t5 + c + 65535; c = Math.floor(v / 65536); t5 = v - c * 65536;\n v = t6 + c + 65535; c = Math.floor(v / 65536); t6 = v - c * 65536;\n v = t7 + c + 65535; c = Math.floor(v / 65536); t7 = v - c * 65536;\n v = t8 + c + 65535; c = Math.floor(v / 65536); t8 = v - c * 65536;\n v = t9 + c + 65535; c = Math.floor(v / 65536); t9 = v - c * 65536;\n v = t10 + c + 65535; c = Math.floor(v / 65536); t10 = v - c * 65536;\n v = t11 + c + 65535; c = Math.floor(v / 65536); t11 = v - c * 65536;\n v = t12 + c + 65535; c = Math.floor(v / 65536); t12 = v - c * 65536;\n v = t13 + c + 65535; c = Math.floor(v / 65536); t13 = v - c * 65536;\n v = t14 + c + 65535; c = Math.floor(v / 65536); t14 = v - c * 65536;\n v = t15 + c + 65535; c = Math.floor(v / 65536); t15 = v - c * 65536;\n t0 += c - 1 + 37 * (c - 1);\n\n o[0] = t0;\n o[1] = t1;\n o[2] = t2;\n o[3] = t3;\n o[4] = t4;\n o[5] = t5;\n o[6] = t6;\n o[7] = t7;\n o[8] = t8;\n o[9] = t9;\n o[10] = t10;\n o[11] = t11;\n o[12] = t12;\n o[13] = t13;\n o[14] = t14;\n o[15] = t15;\n}\n\nfunction square(o: GF, a: GF) {\n mul(o, a, a);\n}\n\nfunction inv25519(o: GF, inp: GF) {\n const c = gf();\n for (let i = 0; i < 16; i++) {\n c[i] = inp[i];\n }\n for (let i = 253; i >= 0; i--) {\n square(c, c);\n if (i !== 2 && i !== 4) {\n mul(c, c, inp);\n }\n }\n for (let i = 0; i < 16; i++) {\n o[i] = c[i];\n }\n}\n\nexport function scalarMult(n: Uint8Array, p: Uint8Array): Uint8Array {\n const z = new Uint8Array(32);\n const x = new Float64Array(80);\n const a = gf(), b = gf(), c = gf(),\n d = gf(), e = gf(), f = gf();\n\n for (let i = 0; i < 31; i++) {\n z[i] = n[i];\n }\n z[31] = (n[31] & 127) | 64;\n z[0] &= 248;\n\n unpack25519(x, p);\n\n for (let i = 0; i < 16; i++) {\n b[i] = x[i];\n }\n\n a[0] = d[0] = 1;\n\n for (let i = 254; i >= 0; --i) {\n const r = (z[i >>> 3] >>> (i & 7)) & 1;\n sel25519(a, b, r);\n sel25519(c, d, r);\n add(e, a, c);\n sub(a, a, c);\n add(c, b, d);\n sub(b, b, d);\n square(d, e);\n square(f, a);\n mul(a, c, a);\n mul(c, b, e);\n add(e, a, c);\n sub(a, a, c);\n square(b, a);\n sub(c, d, f);\n mul(a, c, _121665);\n add(a, a, d);\n mul(c, c, a);\n mul(a, d, f);\n mul(d, b, x);\n square(b, e);\n sel25519(a, b, r);\n sel25519(c, d, r);\n }\n for (let i = 0; i < 16; i++) {\n x[i + 16] = a[i];\n x[i + 32] = c[i];\n x[i + 48] = b[i];\n x[i + 64] = d[i];\n }\n const x32 = x.subarray(32);\n const x16 = x.subarray(16);\n inv25519(x32, x32);\n mul(x16, x16, x32);\n const q = new Uint8Array(32);\n pack25519(q, x16);\n return q;\n}\n\nexport function scalarMultBase(n: Uint8Array): Uint8Array {\n return scalarMult(n, _9);\n}\n\nexport interface KeyPair {\n publicKey: Uint8Array;\n secretKey: Uint8Array;\n}\n\nexport function generateKeyPairFromSeed(seed: Uint8Array): KeyPair {\n if (seed.length !== SECRET_KEY_LENGTH) {\n throw new Error(`x25519: seed must be ${SECRET_KEY_LENGTH} bytes`);\n }\n const secretKey = new Uint8Array(seed);\n const publicKey = scalarMultBase(secretKey);\n return {\n publicKey,\n secretKey\n };\n}\n\nexport function generateKeyPair(prng?: RandomSource): KeyPair {\n const seed = randomBytes(32, prng);\n const result = generateKeyPairFromSeed(seed);\n wipe(seed);\n return result;\n}\n\n/**\n * Returns a shared key between our secret key and a peer's public key.\n *\n * Throws an error if the given keys are of wrong length.\n *\n * If rejectZero is true throws if the calculated shared key is all-zero.\n * From RFC 7748:\n *\n * > Protocol designers using Diffie-Hellman over the curves defined in\n * > this document must not assume \"contributory behavior\". Specially,\n * > contributory behavior means that both parties' private keys\n * > contribute to the resulting shared key. Since curve25519 and\n * > curve448 have cofactors of 8 and 4 (respectively), an input point of\n * > small order will eliminate any contribution from the other party's\n * > private key. This situation can be detected by checking for the all-\n * > zero output, which implementations MAY do, as specified in Section 6.\n * > However, a large number of existing implementations do not do this.\n *\n * IMPORTANT: the returned key is a raw result of scalar multiplication.\n * To use it as a key material, hash it with a cryptographic hash function.\n */\nexport function sharedKey(mySecretKey: Uint8Array, theirPublicKey: Uint8Array, rejectZero = false): Uint8Array {\n if (mySecretKey.length !== PUBLIC_KEY_LENGTH) {\n throw new Error(\"X25519: incorrect secret key length\");\n }\n if (theirPublicKey.length !== PUBLIC_KEY_LENGTH) {\n throw new Error(\"X25519: incorrect public key length\");\n }\n\n const result = scalarMult(mySecretKey, theirPublicKey);\n\n if (rejectZero) {\n let zeros = 0;\n for (let i = 0; i < result.length; i++) {\n zeros |= result[i];\n }\n if (zeros === 0) {\n throw new Error(\"X25519: invalid shared key\");\n }\n }\n\n return result;\n}\n","// Copyright (C) 2016 Dmitry Chestnykh\n// MIT License. See LICENSE file for details.\n\n/**\n * Package xsalsa20 implements XSalsa20 stream cipher.\n */\n\nimport { writeUint32LE } from \"@stablelib/binary\";\nimport { streamXOR as salsaStreamXOR } from \"@stablelib/salsa20\";\nimport { wipe } from \"@stablelib/wipe\";\n\n/**\n * Encrypt src with Salsa20/20 stream generated for the given 32-byte key\n * and 24-byte and write the result into dst and return it.\n *\n * dst and src may be the same, but otherwise must not overlap.\n *\n * Never use the same key and nonce to encrypt more than one message.\n */\nexport function streamXOR(key: Uint8Array, nonce: Uint8Array, src: Uint8Array,\n dst: Uint8Array, nonceInplaceCounterLength = 0): Uint8Array {\n\n if (nonceInplaceCounterLength === 0) {\n if (nonce.length !== 24) {\n throw new Error(\"XSalsa20 nonce must be 24 bytes\");\n }\n } else {\n if (nonce.length !== 32) {\n throw new Error(\"XSalsa20 nonce with counter must be 32 bytes\");\n }\n }\n\n // Use HSalsa one-way function to transform first 16 bytes of\n // 24-byte extended nonce and key into a new key for Salsa\n // stream -- \"subkey\".\n const subkey = hsalsa(key, nonce.subarray(0, 16), new Uint8Array(32));\n\n // Use last 8 bytes of 24-byte extended nonce as an actual nonce,\n // and a subkey derived in the previous step as key to encrypt.\n //\n // If nonceInplaceCounterLength > 0, we'll still pass the correct\n // nonce || counter, as we don't limit the end of nonce subarray.\n const result = salsaStreamXOR(subkey, nonce.subarray(16), src, dst,\n nonceInplaceCounterLength);\n\n // Clean subkey.\n wipe(subkey);\n\n return result;\n}\n\n/**\n * Generate Salsa20/20 stream for the given 32-byte key and\n * 24-byte nonce and write it into dst and return it.\n *\n * Never use the same key and nonce to generate more than one stream.\n *\n * stream is like streamXOR with all-zero src.\n */\nexport function stream(key: Uint8Array, nonce: Uint8Array, dst: Uint8Array,\n nonceInplaceCounterLength = 0): Uint8Array {\n\n wipe(dst);\n return streamXOR(key, nonce, dst, dst, nonceInplaceCounterLength);\n}\n\n// Number of Salsa20 rounds (Salsa20/20).\nconst ROUNDS = 20;\n\n/**\n * HSalsa20 is a one-way function used in XSalsa20 to extend nonce,\n * and in NaCl to hash X25519 shared keys. It takes 32-byte key and\n * 16-byte src and writes 32-byte result into dst and returns it.\n */\nexport function hsalsa(key: Uint8Array, src: Uint8Array, dst: Uint8Array): Uint8Array {\n let x0 = 0x61707865; // \"expa\"\n let x1 = (key[3] << 24) | (key[2] << 16) | (key[1] << 8) | key[0];\n let x2 = (key[7] << 24) | (key[6] << 16) | (key[5] << 8) | key[4];\n let x3 = (key[11] << 24) | (key[10] << 16) | (key[9] << 8) | key[8];\n let x4 = (key[15] << 24) | (key[14] << 16) | (key[13] << 8) | key[12];\n let x5 = 0x3320646E; // \"nd 3\"\n let x6 = (src[3] << 24) | (src[2] << 16) | (src[1] << 8) | src[0];\n let x7 = (src[7] << 24) | (src[6] << 16) | (src[5] << 8) | src[4];\n let x8 = (src[11] << 24) | (src[10] << 16) | (src[9] << 8) | src[8];\n let x9 = (src[15] << 24) | (src[14] << 16) | (src[13] << 8) | src[12];\n let x10 = 0x79622D32; // \"2-by\"\n let x11 = (key[19] << 24) | (key[18] << 16) | (key[17] << 8) | key[16];\n let x12 = (key[23] << 24) | (key[22] << 16) | (key[21] << 8) | key[20];\n let x13 = (key[27] << 24) | (key[26] << 16) | (key[25] << 8) | key[24];\n let x14 = (key[31] << 24) | (key[30] << 16) | (key[29] << 8) | key[28];\n let x15 = 0x6B206574; // \"te k\"\n\n let u: number;\n\n for (let i = 0; i < ROUNDS; i += 2) {\n u = x0 + x12 | 0;\n x4 ^= u << 7 | u >>> (32 - 7);\n u = x4 + x0 | 0;\n x8 ^= u << 9 | u >>> (32 - 9);\n u = x8 + x4 | 0;\n x12 ^= u << 13 | u >>> (32 - 13);\n u = x12 + x8 | 0;\n x0 ^= u << 18 | u >>> (32 - 18);\n\n u = x5 + x1 | 0;\n x9 ^= u << 7 | u >>> (32 - 7);\n u = x9 + x5 | 0;\n x13 ^= u << 9 | u >>> (32 - 9);\n u = x13 + x9 | 0;\n x1 ^= u << 13 | u >>> (32 - 13);\n u = x1 + x13 | 0;\n x5 ^= u << 18 | u >>> (32 - 18);\n\n u = x10 + x6 | 0;\n x14 ^= u << 7 | u >>> (32 - 7);\n u = x14 + x10 | 0;\n x2 ^= u << 9 | u >>> (32 - 9);\n u = x2 + x14 | 0;\n x6 ^= u << 13 | u >>> (32 - 13);\n u = x6 + x2 | 0;\n x10 ^= u << 18 | u >>> (32 - 18);\n\n u = x15 + x11 | 0;\n x3 ^= u << 7 | u >>> (32 - 7);\n u = x3 + x15 | 0;\n x7 ^= u << 9 | u >>> (32 - 9);\n u = x7 + x3 | 0;\n x11 ^= u << 13 | u >>> (32 - 13);\n u = x11 + x7 | 0;\n x15 ^= u << 18 | u >>> (32 - 18);\n\n u = x0 + x3 | 0;\n x1 ^= u << 7 | u >>> (32 - 7);\n u = x1 + x0 | 0;\n x2 ^= u << 9 | u >>> (32 - 9);\n u = x2 + x1 | 0;\n x3 ^= u << 13 | u >>> (32 - 13);\n u = x3 + x2 | 0;\n x0 ^= u << 18 | u >>> (32 - 18);\n\n u = x5 + x4 | 0;\n x6 ^= u << 7 | u >>> (32 - 7);\n u = x6 + x5 | 0;\n x7 ^= u << 9 | u >>> (32 - 9);\n u = x7 + x6 | 0;\n x4 ^= u << 13 | u >>> (32 - 13);\n u = x4 + x7 | 0;\n x5 ^= u << 18 | u >>> (32 - 18);\n\n u = x10 + x9 | 0;\n x11 ^= u << 7 | u >>> (32 - 7);\n u = x11 + x10 | 0;\n x8 ^= u << 9 | u >>> (32 - 9);\n u = x8 + x11 | 0;\n x9 ^= u << 13 | u >>> (32 - 13);\n u = x9 + x8 | 0;\n x10 ^= u << 18 | u >>> (32 - 18);\n\n u = x15 + x14 | 0;\n x12 ^= u << 7 | u >>> (32 - 7);\n u = x12 + x15 | 0;\n x13 ^= u << 9 | u >>> (32 - 9);\n u = x13 + x12 | 0;\n x14 ^= u << 13 | u >>> (32 - 13);\n u = x14 + x13 | 0;\n x15 ^= u << 18 | u >>> (32 - 18);\n }\n writeUint32LE(x0, dst, 0);\n writeUint32LE(x5, dst, 4);\n writeUint32LE(x10, dst, 8);\n writeUint32LE(x15, dst, 12);\n writeUint32LE(x6, dst, 16);\n writeUint32LE(x7, dst, 20);\n writeUint32LE(x8, dst, 24);\n writeUint32LE(x9, dst, 28);\n return dst;\n}\n","'use strict'\n// base-x encoding / decoding\n// Copyright (c) 2018 base-x contributors\n// Copyright (c) 2014-2018 The Bitcoin Core developers (base58.cpp)\n// Distributed under the MIT software license, see the accompanying\n// file LICENSE or http://www.opensource.org/licenses/mit-license.php.\nfunction base (ALPHABET) {\n if (ALPHABET.length >= 255) { throw new TypeError('Alphabet too long') }\n var BASE_MAP = new Uint8Array(256)\n for (var j = 0; j < BASE_MAP.length; j++) {\n BASE_MAP[j] = 255\n }\n for (var i = 0; i < ALPHABET.length; i++) {\n var x = ALPHABET.charAt(i)\n var xc = x.charCodeAt(0)\n if (BASE_MAP[xc] !== 255) { throw new TypeError(x + ' is ambiguous') }\n BASE_MAP[xc] = i\n }\n var BASE = ALPHABET.length\n var LEADER = ALPHABET.charAt(0)\n var FACTOR = Math.log(BASE) / Math.log(256) // log(BASE) / log(256), rounded up\n var iFACTOR = Math.log(256) / Math.log(BASE) // log(256) / log(BASE), rounded up\n function encode (source) {\n if (source instanceof Uint8Array) {\n } else if (ArrayBuffer.isView(source)) {\n source = new Uint8Array(source.buffer, source.byteOffset, source.byteLength)\n } else if (Array.isArray(source)) {\n source = Uint8Array.from(source)\n }\n if (!(source instanceof Uint8Array)) { throw new TypeError('Expected Uint8Array') }\n if (source.length === 0) { return '' }\n // Skip & count leading zeroes.\n var zeroes = 0\n var length = 0\n var pbegin = 0\n var pend = source.length\n while (pbegin !== pend && source[pbegin] === 0) {\n pbegin++\n zeroes++\n }\n // Allocate enough space in big-endian base58 representation.\n var size = ((pend - pbegin) * iFACTOR + 1) >>> 0\n var b58 = new Uint8Array(size)\n // Process the bytes.\n while (pbegin !== pend) {\n var carry = source[pbegin]\n // Apply \"b58 = b58 * 256 + ch\".\n var i = 0\n for (var it1 = size - 1; (carry !== 0 || i < length) && (it1 !== -1); it1--, i++) {\n carry += (256 * b58[it1]) >>> 0\n b58[it1] = (carry % BASE) >>> 0\n carry = (carry / BASE) >>> 0\n }\n if (carry !== 0) { throw new Error('Non-zero carry') }\n length = i\n pbegin++\n }\n // Skip leading zeroes in base58 result.\n var it2 = size - length\n while (it2 !== size && b58[it2] === 0) {\n it2++\n }\n // Translate the result into a string.\n var str = LEADER.repeat(zeroes)\n for (; it2 < size; ++it2) { str += ALPHABET.charAt(b58[it2]) }\n return str\n }\n function decodeUnsafe (source) {\n if (typeof source !== 'string') { throw new TypeError('Expected String') }\n if (source.length === 0) { return new Uint8Array() }\n var psz = 0\n // Skip and count leading '1's.\n var zeroes = 0\n var length = 0\n while (source[psz] === LEADER) {\n zeroes++\n psz++\n }\n // Allocate enough space in big-endian base256 representation.\n var size = (((source.length - psz) * FACTOR) + 1) >>> 0 // log(58) / log(256), rounded up.\n var b256 = new Uint8Array(size)\n // Process the characters.\n while (source[psz]) {\n // Decode character\n var carry = BASE_MAP[source.charCodeAt(psz)]\n // Invalid character\n if (carry === 255) { return }\n var i = 0\n for (var it3 = size - 1; (carry !== 0 || i < length) && (it3 !== -1); it3--, i++) {\n carry += (BASE * b256[it3]) >>> 0\n b256[it3] = (carry % 256) >>> 0\n carry = (carry / 256) >>> 0\n }\n if (carry !== 0) { throw new Error('Non-zero carry') }\n length = i\n psz++\n }\n // Skip leading zeroes in b256.\n var it4 = size - length\n while (it4 !== size && b256[it4] === 0) {\n it4++\n }\n var vch = new Uint8Array(zeroes + (size - it4))\n var j = zeroes\n while (it4 !== size) {\n vch[j++] = b256[it4++]\n }\n return vch\n }\n function decode (string) {\n var buffer = decodeUnsafe(string)\n if (buffer) { return buffer }\n throw new Error('Non-base' + BASE + ' character')\n }\n return {\n encode: encode,\n decodeUnsafe: decodeUnsafe,\n decode: decode\n }\n}\nmodule.exports = base\n","const basex = require('base-x')\nconst ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'\n\nmodule.exports = basex(ALPHABET)\n","'use strict'\n\nvar base58 = require('bs58')\n\nmodule.exports = function (checksumFn) {\n // Encode a buffer as a base58-check encoded string\n function encode (payload) {\n var payloadU8 = Uint8Array.from(payload)\n var checksum = checksumFn(payloadU8)\n var length = payloadU8.length + 4\n var both = new Uint8Array(length)\n both.set(payloadU8, 0)\n both.set(checksum.subarray(0, 4), payloadU8.length)\n return base58.encode(both, length)\n }\n\n function decodeRaw (buffer) {\n var payload = buffer.slice(0, -4)\n var checksum = buffer.slice(-4)\n var newChecksum = checksumFn(payload)\n\n if (checksum[0] ^ newChecksum[0] |\n checksum[1] ^ newChecksum[1] |\n checksum[2] ^ newChecksum[2] |\n checksum[3] ^ newChecksum[3]) return\n\n return payload\n }\n\n // Decode a base58-check encoded string to a buffer, no result if checksum is wrong\n function decodeUnsafe (string) {\n var buffer = base58.decodeUnsafe(string)\n if (!buffer) return\n\n return decodeRaw(buffer)\n }\n\n function decode (string) {\n var buffer = base58.decode(string)\n var payload = decodeRaw(buffer, checksumFn)\n if (!payload) throw new Error('Invalid checksum')\n return payload\n }\n\n return {\n encode: encode,\n decode: decode,\n decodeUnsafe: decodeUnsafe\n }\n}\n","'use strict'\n\nvar { sha256 } = require('@noble/hashes/sha256')\nvar bs58checkBase = require('./base')\n\n// SHA256(SHA256(buffer))\nfunction sha256x2 (buffer) {\n return sha256(sha256(buffer))\n}\n\nmodule.exports = bs58checkBase(sha256x2)\n","(function (module, exports) {\n 'use strict';\n\n // Utils\n function assert (val, msg) {\n if (!val) throw new Error(msg || 'Assertion failed');\n }\n\n // Could use `inherits` module, but don't want to move from single file\n // architecture yet.\n function inherits (ctor, superCtor) {\n ctor.super_ = superCtor;\n var TempCtor = function () {};\n TempCtor.prototype = superCtor.prototype;\n ctor.prototype = new TempCtor();\n ctor.prototype.constructor = ctor;\n }\n\n // BN\n\n function BN (number, base, endian) {\n if (BN.isBN(number)) {\n return number;\n }\n\n this.negative = 0;\n this.words = null;\n this.length = 0;\n\n // Reduction context\n this.red = null;\n\n if (number !== null) {\n if (base === 'le' || base === 'be') {\n endian = base;\n base = 10;\n }\n\n this._init(number || 0, base || 10, endian || 'be');\n }\n }\n if (typeof module === 'object') {\n module.exports = BN;\n } else {\n exports.BN = BN;\n }\n\n BN.BN = BN;\n BN.wordSize = 26;\n\n var Buffer;\n try {\n if (typeof window !== 'undefined' && typeof window.Buffer !== 'undefined') {\n Buffer = window.Buffer;\n } else {\n Buffer = require('buffer').Buffer;\n }\n } catch (e) {\n }\n\n BN.isBN = function isBN (num) {\n if (num instanceof BN) {\n return true;\n }\n\n return num !== null && typeof num === 'object' &&\n num.constructor.wordSize === BN.wordSize && Array.isArray(num.words);\n };\n\n BN.max = function max (left, right) {\n if (left.cmp(right) > 0) return left;\n return right;\n };\n\n BN.min = function min (left, right) {\n if (left.cmp(right) < 0) return left;\n return right;\n };\n\n BN.prototype._init = function init (number, base, endian) {\n if (typeof number === 'number') {\n return this._initNumber(number, base, endian);\n }\n\n if (typeof number === 'object') {\n return this._initArray(number, base, endian);\n }\n\n if (base === 'hex') {\n base = 16;\n }\n assert(base === (base | 0) && base >= 2 && base <= 36);\n\n number = number.toString().replace(/\\s+/g, '');\n var start = 0;\n if (number[0] === '-') {\n start++;\n this.negative = 1;\n }\n\n if (start < number.length) {\n if (base === 16) {\n this._parseHex(number, start, endian);\n } else {\n this._parseBase(number, base, start);\n if (endian === 'le') {\n this._initArray(this.toArray(), base, endian);\n }\n }\n }\n };\n\n BN.prototype._initNumber = function _initNumber (number, base, endian) {\n if (number < 0) {\n this.negative = 1;\n number = -number;\n }\n if (number < 0x4000000) {\n this.words = [number & 0x3ffffff];\n this.length = 1;\n } else if (number < 0x10000000000000) {\n this.words = [\n number & 0x3ffffff,\n (number / 0x4000000) & 0x3ffffff\n ];\n this.length = 2;\n } else {\n assert(number < 0x20000000000000); // 2 ^ 53 (unsafe)\n this.words = [\n number & 0x3ffffff,\n (number / 0x4000000) & 0x3ffffff,\n 1\n ];\n this.length = 3;\n }\n\n if (endian !== 'le') return;\n\n // Reverse the bytes\n this._initArray(this.toArray(), base, endian);\n };\n\n BN.prototype._initArray = function _initArray (number, base, endian) {\n // Perhaps a Uint8Array\n assert(typeof number.length === 'number');\n if (number.length <= 0) {\n this.words = [0];\n this.length = 1;\n return this;\n }\n\n this.length = Math.ceil(number.length / 3);\n this.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n this.words[i] = 0;\n }\n\n var j, w;\n var off = 0;\n if (endian === 'be') {\n for (i = number.length - 1, j = 0; i >= 0; i -= 3) {\n w = number[i] | (number[i - 1] << 8) | (number[i - 2] << 16);\n this.words[j] |= (w << off) & 0x3ffffff;\n this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff;\n off += 24;\n if (off >= 26) {\n off -= 26;\n j++;\n }\n }\n } else if (endian === 'le') {\n for (i = 0, j = 0; i < number.length; i += 3) {\n w = number[i] | (number[i + 1] << 8) | (number[i + 2] << 16);\n this.words[j] |= (w << off) & 0x3ffffff;\n this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff;\n off += 24;\n if (off >= 26) {\n off -= 26;\n j++;\n }\n }\n }\n return this._strip();\n };\n\n function parseHex4Bits (string, index) {\n var c = string.charCodeAt(index);\n // '0' - '9'\n if (c >= 48 && c <= 57) {\n return c - 48;\n // 'A' - 'F'\n } else if (c >= 65 && c <= 70) {\n return c - 55;\n // 'a' - 'f'\n } else if (c >= 97 && c <= 102) {\n return c - 87;\n } else {\n assert(false, 'Invalid character in ' + string);\n }\n }\n\n function parseHexByte (string, lowerBound, index) {\n var r = parseHex4Bits(string, index);\n if (index - 1 >= lowerBound) {\n r |= parseHex4Bits(string, index - 1) << 4;\n }\n return r;\n }\n\n BN.prototype._parseHex = function _parseHex (number, start, endian) {\n // Create possibly bigger array to ensure that it fits the number\n this.length = Math.ceil((number.length - start) / 6);\n this.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n this.words[i] = 0;\n }\n\n // 24-bits chunks\n var off = 0;\n var j = 0;\n\n var w;\n if (endian === 'be') {\n for (i = number.length - 1; i >= start; i -= 2) {\n w = parseHexByte(number, start, i) << off;\n this.words[j] |= w & 0x3ffffff;\n if (off >= 18) {\n off -= 18;\n j += 1;\n this.words[j] |= w >>> 26;\n } else {\n off += 8;\n }\n }\n } else {\n var parseLength = number.length - start;\n for (i = parseLength % 2 === 0 ? start + 1 : start; i < number.length; i += 2) {\n w = parseHexByte(number, start, i) << off;\n this.words[j] |= w & 0x3ffffff;\n if (off >= 18) {\n off -= 18;\n j += 1;\n this.words[j] |= w >>> 26;\n } else {\n off += 8;\n }\n }\n }\n\n this._strip();\n };\n\n function parseBase (str, start, end, mul) {\n var r = 0;\n var b = 0;\n var len = Math.min(str.length, end);\n for (var i = start; i < len; i++) {\n var c = str.charCodeAt(i) - 48;\n\n r *= mul;\n\n // 'a'\n if (c >= 49) {\n b = c - 49 + 0xa;\n\n // 'A'\n } else if (c >= 17) {\n b = c - 17 + 0xa;\n\n // '0' - '9'\n } else {\n b = c;\n }\n assert(c >= 0 && b < mul, 'Invalid character');\n r += b;\n }\n return r;\n }\n\n BN.prototype._parseBase = function _parseBase (number, base, start) {\n // Initialize as zero\n this.words = [0];\n this.length = 1;\n\n // Find length of limb in base\n for (var limbLen = 0, limbPow = 1; limbPow <= 0x3ffffff; limbPow *= base) {\n limbLen++;\n }\n limbLen--;\n limbPow = (limbPow / base) | 0;\n\n var total = number.length - start;\n var mod = total % limbLen;\n var end = Math.min(total, total - mod) + start;\n\n var word = 0;\n for (var i = start; i < end; i += limbLen) {\n word = parseBase(number, i, i + limbLen, base);\n\n this.imuln(limbPow);\n if (this.words[0] + word < 0x4000000) {\n this.words[0] += word;\n } else {\n this._iaddn(word);\n }\n }\n\n if (mod !== 0) {\n var pow = 1;\n word = parseBase(number, i, number.length, base);\n\n for (i = 0; i < mod; i++) {\n pow *= base;\n }\n\n this.imuln(pow);\n if (this.words[0] + word < 0x4000000) {\n this.words[0] += word;\n } else {\n this._iaddn(word);\n }\n }\n\n this._strip();\n };\n\n BN.prototype.copy = function copy (dest) {\n dest.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n dest.words[i] = this.words[i];\n }\n dest.length = this.length;\n dest.negative = this.negative;\n dest.red = this.red;\n };\n\n function move (dest, src) {\n dest.words = src.words;\n dest.length = src.length;\n dest.negative = src.negative;\n dest.red = src.red;\n }\n\n BN.prototype._move = function _move (dest) {\n move(dest, this);\n };\n\n BN.prototype.clone = function clone () {\n var r = new BN(null);\n this.copy(r);\n return r;\n };\n\n BN.prototype._expand = function _expand (size) {\n while (this.length < size) {\n this.words[this.length++] = 0;\n }\n return this;\n };\n\n // Remove leading `0` from `this`\n BN.prototype._strip = function strip () {\n while (this.length > 1 && this.words[this.length - 1] === 0) {\n this.length--;\n }\n return this._normSign();\n };\n\n BN.prototype._normSign = function _normSign () {\n // -0 = 0\n if (this.length === 1 && this.words[0] === 0) {\n this.negative = 0;\n }\n return this;\n };\n\n // Check Symbol.for because not everywhere where Symbol defined\n // See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol#Browser_compatibility\n if (typeof Symbol !== 'undefined' && typeof Symbol.for === 'function') {\n try {\n BN.prototype[Symbol.for('nodejs.util.inspect.custom')] = inspect;\n } catch (e) {\n BN.prototype.inspect = inspect;\n }\n } else {\n BN.prototype.inspect = inspect;\n }\n\n function inspect () {\n return (this.red ? '';\n }\n\n /*\n\n var zeros = [];\n var groupSizes = [];\n var groupBases = [];\n\n var s = '';\n var i = -1;\n while (++i < BN.wordSize) {\n zeros[i] = s;\n s += '0';\n }\n groupSizes[0] = 0;\n groupSizes[1] = 0;\n groupBases[0] = 0;\n groupBases[1] = 0;\n var base = 2 - 1;\n while (++base < 36 + 1) {\n var groupSize = 0;\n var groupBase = 1;\n while (groupBase < (1 << BN.wordSize) / base) {\n groupBase *= base;\n groupSize += 1;\n }\n groupSizes[base] = groupSize;\n groupBases[base] = groupBase;\n }\n\n */\n\n var zeros = [\n '',\n '0',\n '00',\n '000',\n '0000',\n '00000',\n '000000',\n '0000000',\n '00000000',\n '000000000',\n '0000000000',\n '00000000000',\n '000000000000',\n '0000000000000',\n '00000000000000',\n '000000000000000',\n '0000000000000000',\n '00000000000000000',\n '000000000000000000',\n '0000000000000000000',\n '00000000000000000000',\n '000000000000000000000',\n '0000000000000000000000',\n '00000000000000000000000',\n '000000000000000000000000',\n '0000000000000000000000000'\n ];\n\n var groupSizes = [\n 0, 0,\n 25, 16, 12, 11, 10, 9, 8,\n 8, 7, 7, 7, 7, 6, 6,\n 6, 6, 6, 6, 6, 5, 5,\n 5, 5, 5, 5, 5, 5, 5,\n 5, 5, 5, 5, 5, 5, 5\n ];\n\n var groupBases = [\n 0, 0,\n 33554432, 43046721, 16777216, 48828125, 60466176, 40353607, 16777216,\n 43046721, 10000000, 19487171, 35831808, 62748517, 7529536, 11390625,\n 16777216, 24137569, 34012224, 47045881, 64000000, 4084101, 5153632,\n 6436343, 7962624, 9765625, 11881376, 14348907, 17210368, 20511149,\n 24300000, 28629151, 33554432, 39135393, 45435424, 52521875, 60466176\n ];\n\n BN.prototype.toString = function toString (base, padding) {\n base = base || 10;\n padding = padding | 0 || 1;\n\n var out;\n if (base === 16 || base === 'hex') {\n out = '';\n var off = 0;\n var carry = 0;\n for (var i = 0; i < this.length; i++) {\n var w = this.words[i];\n var word = (((w << off) | carry) & 0xffffff).toString(16);\n carry = (w >>> (24 - off)) & 0xffffff;\n off += 2;\n if (off >= 26) {\n off -= 26;\n i--;\n }\n if (carry !== 0 || i !== this.length - 1) {\n out = zeros[6 - word.length] + word + out;\n } else {\n out = word + out;\n }\n }\n if (carry !== 0) {\n out = carry.toString(16) + out;\n }\n while (out.length % padding !== 0) {\n out = '0' + out;\n }\n if (this.negative !== 0) {\n out = '-' + out;\n }\n return out;\n }\n\n if (base === (base | 0) && base >= 2 && base <= 36) {\n // var groupSize = Math.floor(BN.wordSize * Math.LN2 / Math.log(base));\n var groupSize = groupSizes[base];\n // var groupBase = Math.pow(base, groupSize);\n var groupBase = groupBases[base];\n out = '';\n var c = this.clone();\n c.negative = 0;\n while (!c.isZero()) {\n var r = c.modrn(groupBase).toString(base);\n c = c.idivn(groupBase);\n\n if (!c.isZero()) {\n out = zeros[groupSize - r.length] + r + out;\n } else {\n out = r + out;\n }\n }\n if (this.isZero()) {\n out = '0' + out;\n }\n while (out.length % padding !== 0) {\n out = '0' + out;\n }\n if (this.negative !== 0) {\n out = '-' + out;\n }\n return out;\n }\n\n assert(false, 'Base should be between 2 and 36');\n };\n\n BN.prototype.toNumber = function toNumber () {\n var ret = this.words[0];\n if (this.length === 2) {\n ret += this.words[1] * 0x4000000;\n } else if (this.length === 3 && this.words[2] === 0x01) {\n // NOTE: at this stage it is known that the top bit is set\n ret += 0x10000000000000 + (this.words[1] * 0x4000000);\n } else if (this.length > 2) {\n assert(false, 'Number can only safely store up to 53 bits');\n }\n return (this.negative !== 0) ? -ret : ret;\n };\n\n BN.prototype.toJSON = function toJSON () {\n return this.toString(16, 2);\n };\n\n if (Buffer) {\n BN.prototype.toBuffer = function toBuffer (endian, length) {\n return this.toArrayLike(Buffer, endian, length);\n };\n }\n\n BN.prototype.toArray = function toArray (endian, length) {\n return this.toArrayLike(Array, endian, length);\n };\n\n var allocate = function allocate (ArrayType, size) {\n if (ArrayType.allocUnsafe) {\n return ArrayType.allocUnsafe(size);\n }\n return new ArrayType(size);\n };\n\n BN.prototype.toArrayLike = function toArrayLike (ArrayType, endian, length) {\n this._strip();\n\n var byteLength = this.byteLength();\n var reqLength = length || Math.max(1, byteLength);\n assert(byteLength <= reqLength, 'byte array longer than desired length');\n assert(reqLength > 0, 'Requested array length <= 0');\n\n var res = allocate(ArrayType, reqLength);\n var postfix = endian === 'le' ? 'LE' : 'BE';\n this['_toArrayLike' + postfix](res, byteLength);\n return res;\n };\n\n BN.prototype._toArrayLikeLE = function _toArrayLikeLE (res, byteLength) {\n var position = 0;\n var carry = 0;\n\n for (var i = 0, shift = 0; i < this.length; i++) {\n var word = (this.words[i] << shift) | carry;\n\n res[position++] = word & 0xff;\n if (position < res.length) {\n res[position++] = (word >> 8) & 0xff;\n }\n if (position < res.length) {\n res[position++] = (word >> 16) & 0xff;\n }\n\n if (shift === 6) {\n if (position < res.length) {\n res[position++] = (word >> 24) & 0xff;\n }\n carry = 0;\n shift = 0;\n } else {\n carry = word >>> 24;\n shift += 2;\n }\n }\n\n if (position < res.length) {\n res[position++] = carry;\n\n while (position < res.length) {\n res[position++] = 0;\n }\n }\n };\n\n BN.prototype._toArrayLikeBE = function _toArrayLikeBE (res, byteLength) {\n var position = res.length - 1;\n var carry = 0;\n\n for (var i = 0, shift = 0; i < this.length; i++) {\n var word = (this.words[i] << shift) | carry;\n\n res[position--] = word & 0xff;\n if (position >= 0) {\n res[position--] = (word >> 8) & 0xff;\n }\n if (position >= 0) {\n res[position--] = (word >> 16) & 0xff;\n }\n\n if (shift === 6) {\n if (position >= 0) {\n res[position--] = (word >> 24) & 0xff;\n }\n carry = 0;\n shift = 0;\n } else {\n carry = word >>> 24;\n shift += 2;\n }\n }\n\n if (position >= 0) {\n res[position--] = carry;\n\n while (position >= 0) {\n res[position--] = 0;\n }\n }\n };\n\n if (Math.clz32) {\n BN.prototype._countBits = function _countBits (w) {\n return 32 - Math.clz32(w);\n };\n } else {\n BN.prototype._countBits = function _countBits (w) {\n var t = w;\n var r = 0;\n if (t >= 0x1000) {\n r += 13;\n t >>>= 13;\n }\n if (t >= 0x40) {\n r += 7;\n t >>>= 7;\n }\n if (t >= 0x8) {\n r += 4;\n t >>>= 4;\n }\n if (t >= 0x02) {\n r += 2;\n t >>>= 2;\n }\n return r + t;\n };\n }\n\n BN.prototype._zeroBits = function _zeroBits (w) {\n // Short-cut\n if (w === 0) return 26;\n\n var t = w;\n var r = 0;\n if ((t & 0x1fff) === 0) {\n r += 13;\n t >>>= 13;\n }\n if ((t & 0x7f) === 0) {\n r += 7;\n t >>>= 7;\n }\n if ((t & 0xf) === 0) {\n r += 4;\n t >>>= 4;\n }\n if ((t & 0x3) === 0) {\n r += 2;\n t >>>= 2;\n }\n if ((t & 0x1) === 0) {\n r++;\n }\n return r;\n };\n\n // Return number of used bits in a BN\n BN.prototype.bitLength = function bitLength () {\n var w = this.words[this.length - 1];\n var hi = this._countBits(w);\n return (this.length - 1) * 26 + hi;\n };\n\n function toBitArray (num) {\n var w = new Array(num.bitLength());\n\n for (var bit = 0; bit < w.length; bit++) {\n var off = (bit / 26) | 0;\n var wbit = bit % 26;\n\n w[bit] = (num.words[off] >>> wbit) & 0x01;\n }\n\n return w;\n }\n\n // Number of trailing zero bits\n BN.prototype.zeroBits = function zeroBits () {\n if (this.isZero()) return 0;\n\n var r = 0;\n for (var i = 0; i < this.length; i++) {\n var b = this._zeroBits(this.words[i]);\n r += b;\n if (b !== 26) break;\n }\n return r;\n };\n\n BN.prototype.byteLength = function byteLength () {\n return Math.ceil(this.bitLength() / 8);\n };\n\n BN.prototype.toTwos = function toTwos (width) {\n if (this.negative !== 0) {\n return this.abs().inotn(width).iaddn(1);\n }\n return this.clone();\n };\n\n BN.prototype.fromTwos = function fromTwos (width) {\n if (this.testn(width - 1)) {\n return this.notn(width).iaddn(1).ineg();\n }\n return this.clone();\n };\n\n BN.prototype.isNeg = function isNeg () {\n return this.negative !== 0;\n };\n\n // Return negative clone of `this`\n BN.prototype.neg = function neg () {\n return this.clone().ineg();\n };\n\n BN.prototype.ineg = function ineg () {\n if (!this.isZero()) {\n this.negative ^= 1;\n }\n\n return this;\n };\n\n // Or `num` with `this` in-place\n BN.prototype.iuor = function iuor (num) {\n while (this.length < num.length) {\n this.words[this.length++] = 0;\n }\n\n for (var i = 0; i < num.length; i++) {\n this.words[i] = this.words[i] | num.words[i];\n }\n\n return this._strip();\n };\n\n BN.prototype.ior = function ior (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuor(num);\n };\n\n // Or `num` with `this`\n BN.prototype.or = function or (num) {\n if (this.length > num.length) return this.clone().ior(num);\n return num.clone().ior(this);\n };\n\n BN.prototype.uor = function uor (num) {\n if (this.length > num.length) return this.clone().iuor(num);\n return num.clone().iuor(this);\n };\n\n // And `num` with `this` in-place\n BN.prototype.iuand = function iuand (num) {\n // b = min-length(num, this)\n var b;\n if (this.length > num.length) {\n b = num;\n } else {\n b = this;\n }\n\n for (var i = 0; i < b.length; i++) {\n this.words[i] = this.words[i] & num.words[i];\n }\n\n this.length = b.length;\n\n return this._strip();\n };\n\n BN.prototype.iand = function iand (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuand(num);\n };\n\n // And `num` with `this`\n BN.prototype.and = function and (num) {\n if (this.length > num.length) return this.clone().iand(num);\n return num.clone().iand(this);\n };\n\n BN.prototype.uand = function uand (num) {\n if (this.length > num.length) return this.clone().iuand(num);\n return num.clone().iuand(this);\n };\n\n // Xor `num` with `this` in-place\n BN.prototype.iuxor = function iuxor (num) {\n // a.length > b.length\n var a;\n var b;\n if (this.length > num.length) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n for (var i = 0; i < b.length; i++) {\n this.words[i] = a.words[i] ^ b.words[i];\n }\n\n if (this !== a) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n this.length = a.length;\n\n return this._strip();\n };\n\n BN.prototype.ixor = function ixor (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuxor(num);\n };\n\n // Xor `num` with `this`\n BN.prototype.xor = function xor (num) {\n if (this.length > num.length) return this.clone().ixor(num);\n return num.clone().ixor(this);\n };\n\n BN.prototype.uxor = function uxor (num) {\n if (this.length > num.length) return this.clone().iuxor(num);\n return num.clone().iuxor(this);\n };\n\n // Not ``this`` with ``width`` bitwidth\n BN.prototype.inotn = function inotn (width) {\n assert(typeof width === 'number' && width >= 0);\n\n var bytesNeeded = Math.ceil(width / 26) | 0;\n var bitsLeft = width % 26;\n\n // Extend the buffer with leading zeroes\n this._expand(bytesNeeded);\n\n if (bitsLeft > 0) {\n bytesNeeded--;\n }\n\n // Handle complete words\n for (var i = 0; i < bytesNeeded; i++) {\n this.words[i] = ~this.words[i] & 0x3ffffff;\n }\n\n // Handle the residue\n if (bitsLeft > 0) {\n this.words[i] = ~this.words[i] & (0x3ffffff >> (26 - bitsLeft));\n }\n\n // And remove leading zeroes\n return this._strip();\n };\n\n BN.prototype.notn = function notn (width) {\n return this.clone().inotn(width);\n };\n\n // Set `bit` of `this`\n BN.prototype.setn = function setn (bit, val) {\n assert(typeof bit === 'number' && bit >= 0);\n\n var off = (bit / 26) | 0;\n var wbit = bit % 26;\n\n this._expand(off + 1);\n\n if (val) {\n this.words[off] = this.words[off] | (1 << wbit);\n } else {\n this.words[off] = this.words[off] & ~(1 << wbit);\n }\n\n return this._strip();\n };\n\n // Add `num` to `this` in-place\n BN.prototype.iadd = function iadd (num) {\n var r;\n\n // negative + positive\n if (this.negative !== 0 && num.negative === 0) {\n this.negative = 0;\n r = this.isub(num);\n this.negative ^= 1;\n return this._normSign();\n\n // positive + negative\n } else if (this.negative === 0 && num.negative !== 0) {\n num.negative = 0;\n r = this.isub(num);\n num.negative = 1;\n return r._normSign();\n }\n\n // a.length > b.length\n var a, b;\n if (this.length > num.length) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n var carry = 0;\n for (var i = 0; i < b.length; i++) {\n r = (a.words[i] | 0) + (b.words[i] | 0) + carry;\n this.words[i] = r & 0x3ffffff;\n carry = r >>> 26;\n }\n for (; carry !== 0 && i < a.length; i++) {\n r = (a.words[i] | 0) + carry;\n this.words[i] = r & 0x3ffffff;\n carry = r >>> 26;\n }\n\n this.length = a.length;\n if (carry !== 0) {\n this.words[this.length] = carry;\n this.length++;\n // Copy the rest of the words\n } else if (a !== this) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n return this;\n };\n\n // Add `num` to `this`\n BN.prototype.add = function add (num) {\n var res;\n if (num.negative !== 0 && this.negative === 0) {\n num.negative = 0;\n res = this.sub(num);\n num.negative ^= 1;\n return res;\n } else if (num.negative === 0 && this.negative !== 0) {\n this.negative = 0;\n res = num.sub(this);\n this.negative = 1;\n return res;\n }\n\n if (this.length > num.length) return this.clone().iadd(num);\n\n return num.clone().iadd(this);\n };\n\n // Subtract `num` from `this` in-place\n BN.prototype.isub = function isub (num) {\n // this - (-num) = this + num\n if (num.negative !== 0) {\n num.negative = 0;\n var r = this.iadd(num);\n num.negative = 1;\n return r._normSign();\n\n // -this - num = -(this + num)\n } else if (this.negative !== 0) {\n this.negative = 0;\n this.iadd(num);\n this.negative = 1;\n return this._normSign();\n }\n\n // At this point both numbers are positive\n var cmp = this.cmp(num);\n\n // Optimization - zeroify\n if (cmp === 0) {\n this.negative = 0;\n this.length = 1;\n this.words[0] = 0;\n return this;\n }\n\n // a > b\n var a, b;\n if (cmp > 0) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n var carry = 0;\n for (var i = 0; i < b.length; i++) {\n r = (a.words[i] | 0) - (b.words[i] | 0) + carry;\n carry = r >> 26;\n this.words[i] = r & 0x3ffffff;\n }\n for (; carry !== 0 && i < a.length; i++) {\n r = (a.words[i] | 0) + carry;\n carry = r >> 26;\n this.words[i] = r & 0x3ffffff;\n }\n\n // Copy rest of the words\n if (carry === 0 && i < a.length && a !== this) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n this.length = Math.max(this.length, i);\n\n if (a !== this) {\n this.negative = 1;\n }\n\n return this._strip();\n };\n\n // Subtract `num` from `this`\n BN.prototype.sub = function sub (num) {\n return this.clone().isub(num);\n };\n\n function smallMulTo (self, num, out) {\n out.negative = num.negative ^ self.negative;\n var len = (self.length + num.length) | 0;\n out.length = len;\n len = (len - 1) | 0;\n\n // Peel one iteration (compiler can't do it, because of code complexity)\n var a = self.words[0] | 0;\n var b = num.words[0] | 0;\n var r = a * b;\n\n var lo = r & 0x3ffffff;\n var carry = (r / 0x4000000) | 0;\n out.words[0] = lo;\n\n for (var k = 1; k < len; k++) {\n // Sum all words with the same `i + j = k` and accumulate `ncarry`,\n // note that ncarry could be >= 0x3ffffff\n var ncarry = carry >>> 26;\n var rword = carry & 0x3ffffff;\n var maxJ = Math.min(k, num.length - 1);\n for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) {\n var i = (k - j) | 0;\n a = self.words[i] | 0;\n b = num.words[j] | 0;\n r = a * b + rword;\n ncarry += (r / 0x4000000) | 0;\n rword = r & 0x3ffffff;\n }\n out.words[k] = rword | 0;\n carry = ncarry | 0;\n }\n if (carry !== 0) {\n out.words[k] = carry | 0;\n } else {\n out.length--;\n }\n\n return out._strip();\n }\n\n // TODO(indutny): it may be reasonable to omit it for users who don't need\n // to work with 256-bit numbers, otherwise it gives 20% improvement for 256-bit\n // multiplication (like elliptic secp256k1).\n var comb10MulTo = function comb10MulTo (self, num, out) {\n var a = self.words;\n var b = num.words;\n var o = out.words;\n var c = 0;\n var lo;\n var mid;\n var hi;\n var a0 = a[0] | 0;\n var al0 = a0 & 0x1fff;\n var ah0 = a0 >>> 13;\n var a1 = a[1] | 0;\n var al1 = a1 & 0x1fff;\n var ah1 = a1 >>> 13;\n var a2 = a[2] | 0;\n var al2 = a2 & 0x1fff;\n var ah2 = a2 >>> 13;\n var a3 = a[3] | 0;\n var al3 = a3 & 0x1fff;\n var ah3 = a3 >>> 13;\n var a4 = a[4] | 0;\n var al4 = a4 & 0x1fff;\n var ah4 = a4 >>> 13;\n var a5 = a[5] | 0;\n var al5 = a5 & 0x1fff;\n var ah5 = a5 >>> 13;\n var a6 = a[6] | 0;\n var al6 = a6 & 0x1fff;\n var ah6 = a6 >>> 13;\n var a7 = a[7] | 0;\n var al7 = a7 & 0x1fff;\n var ah7 = a7 >>> 13;\n var a8 = a[8] | 0;\n var al8 = a8 & 0x1fff;\n var ah8 = a8 >>> 13;\n var a9 = a[9] | 0;\n var al9 = a9 & 0x1fff;\n var ah9 = a9 >>> 13;\n var b0 = b[0] | 0;\n var bl0 = b0 & 0x1fff;\n var bh0 = b0 >>> 13;\n var b1 = b[1] | 0;\n var bl1 = b1 & 0x1fff;\n var bh1 = b1 >>> 13;\n var b2 = b[2] | 0;\n var bl2 = b2 & 0x1fff;\n var bh2 = b2 >>> 13;\n var b3 = b[3] | 0;\n var bl3 = b3 & 0x1fff;\n var bh3 = b3 >>> 13;\n var b4 = b[4] | 0;\n var bl4 = b4 & 0x1fff;\n var bh4 = b4 >>> 13;\n var b5 = b[5] | 0;\n var bl5 = b5 & 0x1fff;\n var bh5 = b5 >>> 13;\n var b6 = b[6] | 0;\n var bl6 = b6 & 0x1fff;\n var bh6 = b6 >>> 13;\n var b7 = b[7] | 0;\n var bl7 = b7 & 0x1fff;\n var bh7 = b7 >>> 13;\n var b8 = b[8] | 0;\n var bl8 = b8 & 0x1fff;\n var bh8 = b8 >>> 13;\n var b9 = b[9] | 0;\n var bl9 = b9 & 0x1fff;\n var bh9 = b9 >>> 13;\n\n out.negative = self.negative ^ num.negative;\n out.length = 19;\n /* k = 0 */\n lo = Math.imul(al0, bl0);\n mid = Math.imul(al0, bh0);\n mid = (mid + Math.imul(ah0, bl0)) | 0;\n hi = Math.imul(ah0, bh0);\n var w0 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w0 >>> 26)) | 0;\n w0 &= 0x3ffffff;\n /* k = 1 */\n lo = Math.imul(al1, bl0);\n mid = Math.imul(al1, bh0);\n mid = (mid + Math.imul(ah1, bl0)) | 0;\n hi = Math.imul(ah1, bh0);\n lo = (lo + Math.imul(al0, bl1)) | 0;\n mid = (mid + Math.imul(al0, bh1)) | 0;\n mid = (mid + Math.imul(ah0, bl1)) | 0;\n hi = (hi + Math.imul(ah0, bh1)) | 0;\n var w1 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w1 >>> 26)) | 0;\n w1 &= 0x3ffffff;\n /* k = 2 */\n lo = Math.imul(al2, bl0);\n mid = Math.imul(al2, bh0);\n mid = (mid + Math.imul(ah2, bl0)) | 0;\n hi = Math.imul(ah2, bh0);\n lo = (lo + Math.imul(al1, bl1)) | 0;\n mid = (mid + Math.imul(al1, bh1)) | 0;\n mid = (mid + Math.imul(ah1, bl1)) | 0;\n hi = (hi + Math.imul(ah1, bh1)) | 0;\n lo = (lo + Math.imul(al0, bl2)) | 0;\n mid = (mid + Math.imul(al0, bh2)) | 0;\n mid = (mid + Math.imul(ah0, bl2)) | 0;\n hi = (hi + Math.imul(ah0, bh2)) | 0;\n var w2 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w2 >>> 26)) | 0;\n w2 &= 0x3ffffff;\n /* k = 3 */\n lo = Math.imul(al3, bl0);\n mid = Math.imul(al3, bh0);\n mid = (mid + Math.imul(ah3, bl0)) | 0;\n hi = Math.imul(ah3, bh0);\n lo = (lo + Math.imul(al2, bl1)) | 0;\n mid = (mid + Math.imul(al2, bh1)) | 0;\n mid = (mid + Math.imul(ah2, bl1)) | 0;\n hi = (hi + Math.imul(ah2, bh1)) | 0;\n lo = (lo + Math.imul(al1, bl2)) | 0;\n mid = (mid + Math.imul(al1, bh2)) | 0;\n mid = (mid + Math.imul(ah1, bl2)) | 0;\n hi = (hi + Math.imul(ah1, bh2)) | 0;\n lo = (lo + Math.imul(al0, bl3)) | 0;\n mid = (mid + Math.imul(al0, bh3)) | 0;\n mid = (mid + Math.imul(ah0, bl3)) | 0;\n hi = (hi + Math.imul(ah0, bh3)) | 0;\n var w3 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w3 >>> 26)) | 0;\n w3 &= 0x3ffffff;\n /* k = 4 */\n lo = Math.imul(al4, bl0);\n mid = Math.imul(al4, bh0);\n mid = (mid + Math.imul(ah4, bl0)) | 0;\n hi = Math.imul(ah4, bh0);\n lo = (lo + Math.imul(al3, bl1)) | 0;\n mid = (mid + Math.imul(al3, bh1)) | 0;\n mid = (mid + Math.imul(ah3, bl1)) | 0;\n hi = (hi + Math.imul(ah3, bh1)) | 0;\n lo = (lo + Math.imul(al2, bl2)) | 0;\n mid = (mid + Math.imul(al2, bh2)) | 0;\n mid = (mid + Math.imul(ah2, bl2)) | 0;\n hi = (hi + Math.imul(ah2, bh2)) | 0;\n lo = (lo + Math.imul(al1, bl3)) | 0;\n mid = (mid + Math.imul(al1, bh3)) | 0;\n mid = (mid + Math.imul(ah1, bl3)) | 0;\n hi = (hi + Math.imul(ah1, bh3)) | 0;\n lo = (lo + Math.imul(al0, bl4)) | 0;\n mid = (mid + Math.imul(al0, bh4)) | 0;\n mid = (mid + Math.imul(ah0, bl4)) | 0;\n hi = (hi + Math.imul(ah0, bh4)) | 0;\n var w4 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w4 >>> 26)) | 0;\n w4 &= 0x3ffffff;\n /* k = 5 */\n lo = Math.imul(al5, bl0);\n mid = Math.imul(al5, bh0);\n mid = (mid + Math.imul(ah5, bl0)) | 0;\n hi = Math.imul(ah5, bh0);\n lo = (lo + Math.imul(al4, bl1)) | 0;\n mid = (mid + Math.imul(al4, bh1)) | 0;\n mid = (mid + Math.imul(ah4, bl1)) | 0;\n hi = (hi + Math.imul(ah4, bh1)) | 0;\n lo = (lo + Math.imul(al3, bl2)) | 0;\n mid = (mid + Math.imul(al3, bh2)) | 0;\n mid = (mid + Math.imul(ah3, bl2)) | 0;\n hi = (hi + Math.imul(ah3, bh2)) | 0;\n lo = (lo + Math.imul(al2, bl3)) | 0;\n mid = (mid + Math.imul(al2, bh3)) | 0;\n mid = (mid + Math.imul(ah2, bl3)) | 0;\n hi = (hi + Math.imul(ah2, bh3)) | 0;\n lo = (lo + Math.imul(al1, bl4)) | 0;\n mid = (mid + Math.imul(al1, bh4)) | 0;\n mid = (mid + Math.imul(ah1, bl4)) | 0;\n hi = (hi + Math.imul(ah1, bh4)) | 0;\n lo = (lo + Math.imul(al0, bl5)) | 0;\n mid = (mid + Math.imul(al0, bh5)) | 0;\n mid = (mid + Math.imul(ah0, bl5)) | 0;\n hi = (hi + Math.imul(ah0, bh5)) | 0;\n var w5 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w5 >>> 26)) | 0;\n w5 &= 0x3ffffff;\n /* k = 6 */\n lo = Math.imul(al6, bl0);\n mid = Math.imul(al6, bh0);\n mid = (mid + Math.imul(ah6, bl0)) | 0;\n hi = Math.imul(ah6, bh0);\n lo = (lo + Math.imul(al5, bl1)) | 0;\n mid = (mid + Math.imul(al5, bh1)) | 0;\n mid = (mid + Math.imul(ah5, bl1)) | 0;\n hi = (hi + Math.imul(ah5, bh1)) | 0;\n lo = (lo + Math.imul(al4, bl2)) | 0;\n mid = (mid + Math.imul(al4, bh2)) | 0;\n mid = (mid + Math.imul(ah4, bl2)) | 0;\n hi = (hi + Math.imul(ah4, bh2)) | 0;\n lo = (lo + Math.imul(al3, bl3)) | 0;\n mid = (mid + Math.imul(al3, bh3)) | 0;\n mid = (mid + Math.imul(ah3, bl3)) | 0;\n hi = (hi + Math.imul(ah3, bh3)) | 0;\n lo = (lo + Math.imul(al2, bl4)) | 0;\n mid = (mid + Math.imul(al2, bh4)) | 0;\n mid = (mid + Math.imul(ah2, bl4)) | 0;\n hi = (hi + Math.imul(ah2, bh4)) | 0;\n lo = (lo + Math.imul(al1, bl5)) | 0;\n mid = (mid + Math.imul(al1, bh5)) | 0;\n mid = (mid + Math.imul(ah1, bl5)) | 0;\n hi = (hi + Math.imul(ah1, bh5)) | 0;\n lo = (lo + Math.imul(al0, bl6)) | 0;\n mid = (mid + Math.imul(al0, bh6)) | 0;\n mid = (mid + Math.imul(ah0, bl6)) | 0;\n hi = (hi + Math.imul(ah0, bh6)) | 0;\n var w6 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w6 >>> 26)) | 0;\n w6 &= 0x3ffffff;\n /* k = 7 */\n lo = Math.imul(al7, bl0);\n mid = Math.imul(al7, bh0);\n mid = (mid + Math.imul(ah7, bl0)) | 0;\n hi = Math.imul(ah7, bh0);\n lo = (lo + Math.imul(al6, bl1)) | 0;\n mid = (mid + Math.imul(al6, bh1)) | 0;\n mid = (mid + Math.imul(ah6, bl1)) | 0;\n hi = (hi + Math.imul(ah6, bh1)) | 0;\n lo = (lo + Math.imul(al5, bl2)) | 0;\n mid = (mid + Math.imul(al5, bh2)) | 0;\n mid = (mid + Math.imul(ah5, bl2)) | 0;\n hi = (hi + Math.imul(ah5, bh2)) | 0;\n lo = (lo + Math.imul(al4, bl3)) | 0;\n mid = (mid + Math.imul(al4, bh3)) | 0;\n mid = (mid + Math.imul(ah4, bl3)) | 0;\n hi = (hi + Math.imul(ah4, bh3)) | 0;\n lo = (lo + Math.imul(al3, bl4)) | 0;\n mid = (mid + Math.imul(al3, bh4)) | 0;\n mid = (mid + Math.imul(ah3, bl4)) | 0;\n hi = (hi + Math.imul(ah3, bh4)) | 0;\n lo = (lo + Math.imul(al2, bl5)) | 0;\n mid = (mid + Math.imul(al2, bh5)) | 0;\n mid = (mid + Math.imul(ah2, bl5)) | 0;\n hi = (hi + Math.imul(ah2, bh5)) | 0;\n lo = (lo + Math.imul(al1, bl6)) | 0;\n mid = (mid + Math.imul(al1, bh6)) | 0;\n mid = (mid + Math.imul(ah1, bl6)) | 0;\n hi = (hi + Math.imul(ah1, bh6)) | 0;\n lo = (lo + Math.imul(al0, bl7)) | 0;\n mid = (mid + Math.imul(al0, bh7)) | 0;\n mid = (mid + Math.imul(ah0, bl7)) | 0;\n hi = (hi + Math.imul(ah0, bh7)) | 0;\n var w7 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w7 >>> 26)) | 0;\n w7 &= 0x3ffffff;\n /* k = 8 */\n lo = Math.imul(al8, bl0);\n mid = Math.imul(al8, bh0);\n mid = (mid + Math.imul(ah8, bl0)) | 0;\n hi = Math.imul(ah8, bh0);\n lo = (lo + Math.imul(al7, bl1)) | 0;\n mid = (mid + Math.imul(al7, bh1)) | 0;\n mid = (mid + Math.imul(ah7, bl1)) | 0;\n hi = (hi + Math.imul(ah7, bh1)) | 0;\n lo = (lo + Math.imul(al6, bl2)) | 0;\n mid = (mid + Math.imul(al6, bh2)) | 0;\n mid = (mid + Math.imul(ah6, bl2)) | 0;\n hi = (hi + Math.imul(ah6, bh2)) | 0;\n lo = (lo + Math.imul(al5, bl3)) | 0;\n mid = (mid + Math.imul(al5, bh3)) | 0;\n mid = (mid + Math.imul(ah5, bl3)) | 0;\n hi = (hi + Math.imul(ah5, bh3)) | 0;\n lo = (lo + Math.imul(al4, bl4)) | 0;\n mid = (mid + Math.imul(al4, bh4)) | 0;\n mid = (mid + Math.imul(ah4, bl4)) | 0;\n hi = (hi + Math.imul(ah4, bh4)) | 0;\n lo = (lo + Math.imul(al3, bl5)) | 0;\n mid = (mid + Math.imul(al3, bh5)) | 0;\n mid = (mid + Math.imul(ah3, bl5)) | 0;\n hi = (hi + Math.imul(ah3, bh5)) | 0;\n lo = (lo + Math.imul(al2, bl6)) | 0;\n mid = (mid + Math.imul(al2, bh6)) | 0;\n mid = (mid + Math.imul(ah2, bl6)) | 0;\n hi = (hi + Math.imul(ah2, bh6)) | 0;\n lo = (lo + Math.imul(al1, bl7)) | 0;\n mid = (mid + Math.imul(al1, bh7)) | 0;\n mid = (mid + Math.imul(ah1, bl7)) | 0;\n hi = (hi + Math.imul(ah1, bh7)) | 0;\n lo = (lo + Math.imul(al0, bl8)) | 0;\n mid = (mid + Math.imul(al0, bh8)) | 0;\n mid = (mid + Math.imul(ah0, bl8)) | 0;\n hi = (hi + Math.imul(ah0, bh8)) | 0;\n var w8 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w8 >>> 26)) | 0;\n w8 &= 0x3ffffff;\n /* k = 9 */\n lo = Math.imul(al9, bl0);\n mid = Math.imul(al9, bh0);\n mid = (mid + Math.imul(ah9, bl0)) | 0;\n hi = Math.imul(ah9, bh0);\n lo = (lo + Math.imul(al8, bl1)) | 0;\n mid = (mid + Math.imul(al8, bh1)) | 0;\n mid = (mid + Math.imul(ah8, bl1)) | 0;\n hi = (hi + Math.imul(ah8, bh1)) | 0;\n lo = (lo + Math.imul(al7, bl2)) | 0;\n mid = (mid + Math.imul(al7, bh2)) | 0;\n mid = (mid + Math.imul(ah7, bl2)) | 0;\n hi = (hi + Math.imul(ah7, bh2)) | 0;\n lo = (lo + Math.imul(al6, bl3)) | 0;\n mid = (mid + Math.imul(al6, bh3)) | 0;\n mid = (mid + Math.imul(ah6, bl3)) | 0;\n hi = (hi + Math.imul(ah6, bh3)) | 0;\n lo = (lo + Math.imul(al5, bl4)) | 0;\n mid = (mid + Math.imul(al5, bh4)) | 0;\n mid = (mid + Math.imul(ah5, bl4)) | 0;\n hi = (hi + Math.imul(ah5, bh4)) | 0;\n lo = (lo + Math.imul(al4, bl5)) | 0;\n mid = (mid + Math.imul(al4, bh5)) | 0;\n mid = (mid + Math.imul(ah4, bl5)) | 0;\n hi = (hi + Math.imul(ah4, bh5)) | 0;\n lo = (lo + Math.imul(al3, bl6)) | 0;\n mid = (mid + Math.imul(al3, bh6)) | 0;\n mid = (mid + Math.imul(ah3, bl6)) | 0;\n hi = (hi + Math.imul(ah3, bh6)) | 0;\n lo = (lo + Math.imul(al2, bl7)) | 0;\n mid = (mid + Math.imul(al2, bh7)) | 0;\n mid = (mid + Math.imul(ah2, bl7)) | 0;\n hi = (hi + Math.imul(ah2, bh7)) | 0;\n lo = (lo + Math.imul(al1, bl8)) | 0;\n mid = (mid + Math.imul(al1, bh8)) | 0;\n mid = (mid + Math.imul(ah1, bl8)) | 0;\n hi = (hi + Math.imul(ah1, bh8)) | 0;\n lo = (lo + Math.imul(al0, bl9)) | 0;\n mid = (mid + Math.imul(al0, bh9)) | 0;\n mid = (mid + Math.imul(ah0, bl9)) | 0;\n hi = (hi + Math.imul(ah0, bh9)) | 0;\n var w9 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w9 >>> 26)) | 0;\n w9 &= 0x3ffffff;\n /* k = 10 */\n lo = Math.imul(al9, bl1);\n mid = Math.imul(al9, bh1);\n mid = (mid + Math.imul(ah9, bl1)) | 0;\n hi = Math.imul(ah9, bh1);\n lo = (lo + Math.imul(al8, bl2)) | 0;\n mid = (mid + Math.imul(al8, bh2)) | 0;\n mid = (mid + Math.imul(ah8, bl2)) | 0;\n hi = (hi + Math.imul(ah8, bh2)) | 0;\n lo = (lo + Math.imul(al7, bl3)) | 0;\n mid = (mid + Math.imul(al7, bh3)) | 0;\n mid = (mid + Math.imul(ah7, bl3)) | 0;\n hi = (hi + Math.imul(ah7, bh3)) | 0;\n lo = (lo + Math.imul(al6, bl4)) | 0;\n mid = (mid + Math.imul(al6, bh4)) | 0;\n mid = (mid + Math.imul(ah6, bl4)) | 0;\n hi = (hi + Math.imul(ah6, bh4)) | 0;\n lo = (lo + Math.imul(al5, bl5)) | 0;\n mid = (mid + Math.imul(al5, bh5)) | 0;\n mid = (mid + Math.imul(ah5, bl5)) | 0;\n hi = (hi + Math.imul(ah5, bh5)) | 0;\n lo = (lo + Math.imul(al4, bl6)) | 0;\n mid = (mid + Math.imul(al4, bh6)) | 0;\n mid = (mid + Math.imul(ah4, bl6)) | 0;\n hi = (hi + Math.imul(ah4, bh6)) | 0;\n lo = (lo + Math.imul(al3, bl7)) | 0;\n mid = (mid + Math.imul(al3, bh7)) | 0;\n mid = (mid + Math.imul(ah3, bl7)) | 0;\n hi = (hi + Math.imul(ah3, bh7)) | 0;\n lo = (lo + Math.imul(al2, bl8)) | 0;\n mid = (mid + Math.imul(al2, bh8)) | 0;\n mid = (mid + Math.imul(ah2, bl8)) | 0;\n hi = (hi + Math.imul(ah2, bh8)) | 0;\n lo = (lo + Math.imul(al1, bl9)) | 0;\n mid = (mid + Math.imul(al1, bh9)) | 0;\n mid = (mid + Math.imul(ah1, bl9)) | 0;\n hi = (hi + Math.imul(ah1, bh9)) | 0;\n var w10 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w10 >>> 26)) | 0;\n w10 &= 0x3ffffff;\n /* k = 11 */\n lo = Math.imul(al9, bl2);\n mid = Math.imul(al9, bh2);\n mid = (mid + Math.imul(ah9, bl2)) | 0;\n hi = Math.imul(ah9, bh2);\n lo = (lo + Math.imul(al8, bl3)) | 0;\n mid = (mid + Math.imul(al8, bh3)) | 0;\n mid = (mid + Math.imul(ah8, bl3)) | 0;\n hi = (hi + Math.imul(ah8, bh3)) | 0;\n lo = (lo + Math.imul(al7, bl4)) | 0;\n mid = (mid + Math.imul(al7, bh4)) | 0;\n mid = (mid + Math.imul(ah7, bl4)) | 0;\n hi = (hi + Math.imul(ah7, bh4)) | 0;\n lo = (lo + Math.imul(al6, bl5)) | 0;\n mid = (mid + Math.imul(al6, bh5)) | 0;\n mid = (mid + Math.imul(ah6, bl5)) | 0;\n hi = (hi + Math.imul(ah6, bh5)) | 0;\n lo = (lo + Math.imul(al5, bl6)) | 0;\n mid = (mid + Math.imul(al5, bh6)) | 0;\n mid = (mid + Math.imul(ah5, bl6)) | 0;\n hi = (hi + Math.imul(ah5, bh6)) | 0;\n lo = (lo + Math.imul(al4, bl7)) | 0;\n mid = (mid + Math.imul(al4, bh7)) | 0;\n mid = (mid + Math.imul(ah4, bl7)) | 0;\n hi = (hi + Math.imul(ah4, bh7)) | 0;\n lo = (lo + Math.imul(al3, bl8)) | 0;\n mid = (mid + Math.imul(al3, bh8)) | 0;\n mid = (mid + Math.imul(ah3, bl8)) | 0;\n hi = (hi + Math.imul(ah3, bh8)) | 0;\n lo = (lo + Math.imul(al2, bl9)) | 0;\n mid = (mid + Math.imul(al2, bh9)) | 0;\n mid = (mid + Math.imul(ah2, bl9)) | 0;\n hi = (hi + Math.imul(ah2, bh9)) | 0;\n var w11 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w11 >>> 26)) | 0;\n w11 &= 0x3ffffff;\n /* k = 12 */\n lo = Math.imul(al9, bl3);\n mid = Math.imul(al9, bh3);\n mid = (mid + Math.imul(ah9, bl3)) | 0;\n hi = Math.imul(ah9, bh3);\n lo = (lo + Math.imul(al8, bl4)) | 0;\n mid = (mid + Math.imul(al8, bh4)) | 0;\n mid = (mid + Math.imul(ah8, bl4)) | 0;\n hi = (hi + Math.imul(ah8, bh4)) | 0;\n lo = (lo + Math.imul(al7, bl5)) | 0;\n mid = (mid + Math.imul(al7, bh5)) | 0;\n mid = (mid + Math.imul(ah7, bl5)) | 0;\n hi = (hi + Math.imul(ah7, bh5)) | 0;\n lo = (lo + Math.imul(al6, bl6)) | 0;\n mid = (mid + Math.imul(al6, bh6)) | 0;\n mid = (mid + Math.imul(ah6, bl6)) | 0;\n hi = (hi + Math.imul(ah6, bh6)) | 0;\n lo = (lo + Math.imul(al5, bl7)) | 0;\n mid = (mid + Math.imul(al5, bh7)) | 0;\n mid = (mid + Math.imul(ah5, bl7)) | 0;\n hi = (hi + Math.imul(ah5, bh7)) | 0;\n lo = (lo + Math.imul(al4, bl8)) | 0;\n mid = (mid + Math.imul(al4, bh8)) | 0;\n mid = (mid + Math.imul(ah4, bl8)) | 0;\n hi = (hi + Math.imul(ah4, bh8)) | 0;\n lo = (lo + Math.imul(al3, bl9)) | 0;\n mid = (mid + Math.imul(al3, bh9)) | 0;\n mid = (mid + Math.imul(ah3, bl9)) | 0;\n hi = (hi + Math.imul(ah3, bh9)) | 0;\n var w12 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w12 >>> 26)) | 0;\n w12 &= 0x3ffffff;\n /* k = 13 */\n lo = Math.imul(al9, bl4);\n mid = Math.imul(al9, bh4);\n mid = (mid + Math.imul(ah9, bl4)) | 0;\n hi = Math.imul(ah9, bh4);\n lo = (lo + Math.imul(al8, bl5)) | 0;\n mid = (mid + Math.imul(al8, bh5)) | 0;\n mid = (mid + Math.imul(ah8, bl5)) | 0;\n hi = (hi + Math.imul(ah8, bh5)) | 0;\n lo = (lo + Math.imul(al7, bl6)) | 0;\n mid = (mid + Math.imul(al7, bh6)) | 0;\n mid = (mid + Math.imul(ah7, bl6)) | 0;\n hi = (hi + Math.imul(ah7, bh6)) | 0;\n lo = (lo + Math.imul(al6, bl7)) | 0;\n mid = (mid + Math.imul(al6, bh7)) | 0;\n mid = (mid + Math.imul(ah6, bl7)) | 0;\n hi = (hi + Math.imul(ah6, bh7)) | 0;\n lo = (lo + Math.imul(al5, bl8)) | 0;\n mid = (mid + Math.imul(al5, bh8)) | 0;\n mid = (mid + Math.imul(ah5, bl8)) | 0;\n hi = (hi + Math.imul(ah5, bh8)) | 0;\n lo = (lo + Math.imul(al4, bl9)) | 0;\n mid = (mid + Math.imul(al4, bh9)) | 0;\n mid = (mid + Math.imul(ah4, bl9)) | 0;\n hi = (hi + Math.imul(ah4, bh9)) | 0;\n var w13 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w13 >>> 26)) | 0;\n w13 &= 0x3ffffff;\n /* k = 14 */\n lo = Math.imul(al9, bl5);\n mid = Math.imul(al9, bh5);\n mid = (mid + Math.imul(ah9, bl5)) | 0;\n hi = Math.imul(ah9, bh5);\n lo = (lo + Math.imul(al8, bl6)) | 0;\n mid = (mid + Math.imul(al8, bh6)) | 0;\n mid = (mid + Math.imul(ah8, bl6)) | 0;\n hi = (hi + Math.imul(ah8, bh6)) | 0;\n lo = (lo + Math.imul(al7, bl7)) | 0;\n mid = (mid + Math.imul(al7, bh7)) | 0;\n mid = (mid + Math.imul(ah7, bl7)) | 0;\n hi = (hi + Math.imul(ah7, bh7)) | 0;\n lo = (lo + Math.imul(al6, bl8)) | 0;\n mid = (mid + Math.imul(al6, bh8)) | 0;\n mid = (mid + Math.imul(ah6, bl8)) | 0;\n hi = (hi + Math.imul(ah6, bh8)) | 0;\n lo = (lo + Math.imul(al5, bl9)) | 0;\n mid = (mid + Math.imul(al5, bh9)) | 0;\n mid = (mid + Math.imul(ah5, bl9)) | 0;\n hi = (hi + Math.imul(ah5, bh9)) | 0;\n var w14 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w14 >>> 26)) | 0;\n w14 &= 0x3ffffff;\n /* k = 15 */\n lo = Math.imul(al9, bl6);\n mid = Math.imul(al9, bh6);\n mid = (mid + Math.imul(ah9, bl6)) | 0;\n hi = Math.imul(ah9, bh6);\n lo = (lo + Math.imul(al8, bl7)) | 0;\n mid = (mid + Math.imul(al8, bh7)) | 0;\n mid = (mid + Math.imul(ah8, bl7)) | 0;\n hi = (hi + Math.imul(ah8, bh7)) | 0;\n lo = (lo + Math.imul(al7, bl8)) | 0;\n mid = (mid + Math.imul(al7, bh8)) | 0;\n mid = (mid + Math.imul(ah7, bl8)) | 0;\n hi = (hi + Math.imul(ah7, bh8)) | 0;\n lo = (lo + Math.imul(al6, bl9)) | 0;\n mid = (mid + Math.imul(al6, bh9)) | 0;\n mid = (mid + Math.imul(ah6, bl9)) | 0;\n hi = (hi + Math.imul(ah6, bh9)) | 0;\n var w15 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w15 >>> 26)) | 0;\n w15 &= 0x3ffffff;\n /* k = 16 */\n lo = Math.imul(al9, bl7);\n mid = Math.imul(al9, bh7);\n mid = (mid + Math.imul(ah9, bl7)) | 0;\n hi = Math.imul(ah9, bh7);\n lo = (lo + Math.imul(al8, bl8)) | 0;\n mid = (mid + Math.imul(al8, bh8)) | 0;\n mid = (mid + Math.imul(ah8, bl8)) | 0;\n hi = (hi + Math.imul(ah8, bh8)) | 0;\n lo = (lo + Math.imul(al7, bl9)) | 0;\n mid = (mid + Math.imul(al7, bh9)) | 0;\n mid = (mid + Math.imul(ah7, bl9)) | 0;\n hi = (hi + Math.imul(ah7, bh9)) | 0;\n var w16 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w16 >>> 26)) | 0;\n w16 &= 0x3ffffff;\n /* k = 17 */\n lo = Math.imul(al9, bl8);\n mid = Math.imul(al9, bh8);\n mid = (mid + Math.imul(ah9, bl8)) | 0;\n hi = Math.imul(ah9, bh8);\n lo = (lo + Math.imul(al8, bl9)) | 0;\n mid = (mid + Math.imul(al8, bh9)) | 0;\n mid = (mid + Math.imul(ah8, bl9)) | 0;\n hi = (hi + Math.imul(ah8, bh9)) | 0;\n var w17 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w17 >>> 26)) | 0;\n w17 &= 0x3ffffff;\n /* k = 18 */\n lo = Math.imul(al9, bl9);\n mid = Math.imul(al9, bh9);\n mid = (mid + Math.imul(ah9, bl9)) | 0;\n hi = Math.imul(ah9, bh9);\n var w18 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w18 >>> 26)) | 0;\n w18 &= 0x3ffffff;\n o[0] = w0;\n o[1] = w1;\n o[2] = w2;\n o[3] = w3;\n o[4] = w4;\n o[5] = w5;\n o[6] = w6;\n o[7] = w7;\n o[8] = w8;\n o[9] = w9;\n o[10] = w10;\n o[11] = w11;\n o[12] = w12;\n o[13] = w13;\n o[14] = w14;\n o[15] = w15;\n o[16] = w16;\n o[17] = w17;\n o[18] = w18;\n if (c !== 0) {\n o[19] = c;\n out.length++;\n }\n return out;\n };\n\n // Polyfill comb\n if (!Math.imul) {\n comb10MulTo = smallMulTo;\n }\n\n function bigMulTo (self, num, out) {\n out.negative = num.negative ^ self.negative;\n out.length = self.length + num.length;\n\n var carry = 0;\n var hncarry = 0;\n for (var k = 0; k < out.length - 1; k++) {\n // Sum all words with the same `i + j = k` and accumulate `ncarry`,\n // note that ncarry could be >= 0x3ffffff\n var ncarry = hncarry;\n hncarry = 0;\n var rword = carry & 0x3ffffff;\n var maxJ = Math.min(k, num.length - 1);\n for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) {\n var i = k - j;\n var a = self.words[i] | 0;\n var b = num.words[j] | 0;\n var r = a * b;\n\n var lo = r & 0x3ffffff;\n ncarry = (ncarry + ((r / 0x4000000) | 0)) | 0;\n lo = (lo + rword) | 0;\n rword = lo & 0x3ffffff;\n ncarry = (ncarry + (lo >>> 26)) | 0;\n\n hncarry += ncarry >>> 26;\n ncarry &= 0x3ffffff;\n }\n out.words[k] = rword;\n carry = ncarry;\n ncarry = hncarry;\n }\n if (carry !== 0) {\n out.words[k] = carry;\n } else {\n out.length--;\n }\n\n return out._strip();\n }\n\n function jumboMulTo (self, num, out) {\n // Temporary disable, see https://github.com/indutny/bn.js/issues/211\n // var fftm = new FFTM();\n // return fftm.mulp(self, num, out);\n return bigMulTo(self, num, out);\n }\n\n BN.prototype.mulTo = function mulTo (num, out) {\n var res;\n var len = this.length + num.length;\n if (this.length === 10 && num.length === 10) {\n res = comb10MulTo(this, num, out);\n } else if (len < 63) {\n res = smallMulTo(this, num, out);\n } else if (len < 1024) {\n res = bigMulTo(this, num, out);\n } else {\n res = jumboMulTo(this, num, out);\n }\n\n return res;\n };\n\n // Cooley-Tukey algorithm for FFT\n // slightly revisited to rely on looping instead of recursion\n\n function FFTM (x, y) {\n this.x = x;\n this.y = y;\n }\n\n FFTM.prototype.makeRBT = function makeRBT (N) {\n var t = new Array(N);\n var l = BN.prototype._countBits(N) - 1;\n for (var i = 0; i < N; i++) {\n t[i] = this.revBin(i, l, N);\n }\n\n return t;\n };\n\n // Returns binary-reversed representation of `x`\n FFTM.prototype.revBin = function revBin (x, l, N) {\n if (x === 0 || x === N - 1) return x;\n\n var rb = 0;\n for (var i = 0; i < l; i++) {\n rb |= (x & 1) << (l - i - 1);\n x >>= 1;\n }\n\n return rb;\n };\n\n // Performs \"tweedling\" phase, therefore 'emulating'\n // behaviour of the recursive algorithm\n FFTM.prototype.permute = function permute (rbt, rws, iws, rtws, itws, N) {\n for (var i = 0; i < N; i++) {\n rtws[i] = rws[rbt[i]];\n itws[i] = iws[rbt[i]];\n }\n };\n\n FFTM.prototype.transform = function transform (rws, iws, rtws, itws, N, rbt) {\n this.permute(rbt, rws, iws, rtws, itws, N);\n\n for (var s = 1; s < N; s <<= 1) {\n var l = s << 1;\n\n var rtwdf = Math.cos(2 * Math.PI / l);\n var itwdf = Math.sin(2 * Math.PI / l);\n\n for (var p = 0; p < N; p += l) {\n var rtwdf_ = rtwdf;\n var itwdf_ = itwdf;\n\n for (var j = 0; j < s; j++) {\n var re = rtws[p + j];\n var ie = itws[p + j];\n\n var ro = rtws[p + j + s];\n var io = itws[p + j + s];\n\n var rx = rtwdf_ * ro - itwdf_ * io;\n\n io = rtwdf_ * io + itwdf_ * ro;\n ro = rx;\n\n rtws[p + j] = re + ro;\n itws[p + j] = ie + io;\n\n rtws[p + j + s] = re - ro;\n itws[p + j + s] = ie - io;\n\n /* jshint maxdepth : false */\n if (j !== l) {\n rx = rtwdf * rtwdf_ - itwdf * itwdf_;\n\n itwdf_ = rtwdf * itwdf_ + itwdf * rtwdf_;\n rtwdf_ = rx;\n }\n }\n }\n }\n };\n\n FFTM.prototype.guessLen13b = function guessLen13b (n, m) {\n var N = Math.max(m, n) | 1;\n var odd = N & 1;\n var i = 0;\n for (N = N / 2 | 0; N; N = N >>> 1) {\n i++;\n }\n\n return 1 << i + 1 + odd;\n };\n\n FFTM.prototype.conjugate = function conjugate (rws, iws, N) {\n if (N <= 1) return;\n\n for (var i = 0; i < N / 2; i++) {\n var t = rws[i];\n\n rws[i] = rws[N - i - 1];\n rws[N - i - 1] = t;\n\n t = iws[i];\n\n iws[i] = -iws[N - i - 1];\n iws[N - i - 1] = -t;\n }\n };\n\n FFTM.prototype.normalize13b = function normalize13b (ws, N) {\n var carry = 0;\n for (var i = 0; i < N / 2; i++) {\n var w = Math.round(ws[2 * i + 1] / N) * 0x2000 +\n Math.round(ws[2 * i] / N) +\n carry;\n\n ws[i] = w & 0x3ffffff;\n\n if (w < 0x4000000) {\n carry = 0;\n } else {\n carry = w / 0x4000000 | 0;\n }\n }\n\n return ws;\n };\n\n FFTM.prototype.convert13b = function convert13b (ws, len, rws, N) {\n var carry = 0;\n for (var i = 0; i < len; i++) {\n carry = carry + (ws[i] | 0);\n\n rws[2 * i] = carry & 0x1fff; carry = carry >>> 13;\n rws[2 * i + 1] = carry & 0x1fff; carry = carry >>> 13;\n }\n\n // Pad with zeroes\n for (i = 2 * len; i < N; ++i) {\n rws[i] = 0;\n }\n\n assert(carry === 0);\n assert((carry & ~0x1fff) === 0);\n };\n\n FFTM.prototype.stub = function stub (N) {\n var ph = new Array(N);\n for (var i = 0; i < N; i++) {\n ph[i] = 0;\n }\n\n return ph;\n };\n\n FFTM.prototype.mulp = function mulp (x, y, out) {\n var N = 2 * this.guessLen13b(x.length, y.length);\n\n var rbt = this.makeRBT(N);\n\n var _ = this.stub(N);\n\n var rws = new Array(N);\n var rwst = new Array(N);\n var iwst = new Array(N);\n\n var nrws = new Array(N);\n var nrwst = new Array(N);\n var niwst = new Array(N);\n\n var rmws = out.words;\n rmws.length = N;\n\n this.convert13b(x.words, x.length, rws, N);\n this.convert13b(y.words, y.length, nrws, N);\n\n this.transform(rws, _, rwst, iwst, N, rbt);\n this.transform(nrws, _, nrwst, niwst, N, rbt);\n\n for (var i = 0; i < N; i++) {\n var rx = rwst[i] * nrwst[i] - iwst[i] * niwst[i];\n iwst[i] = rwst[i] * niwst[i] + iwst[i] * nrwst[i];\n rwst[i] = rx;\n }\n\n this.conjugate(rwst, iwst, N);\n this.transform(rwst, iwst, rmws, _, N, rbt);\n this.conjugate(rmws, _, N);\n this.normalize13b(rmws, N);\n\n out.negative = x.negative ^ y.negative;\n out.length = x.length + y.length;\n return out._strip();\n };\n\n // Multiply `this` by `num`\n BN.prototype.mul = function mul (num) {\n var out = new BN(null);\n out.words = new Array(this.length + num.length);\n return this.mulTo(num, out);\n };\n\n // Multiply employing FFT\n BN.prototype.mulf = function mulf (num) {\n var out = new BN(null);\n out.words = new Array(this.length + num.length);\n return jumboMulTo(this, num, out);\n };\n\n // In-place Multiplication\n BN.prototype.imul = function imul (num) {\n return this.clone().mulTo(num, this);\n };\n\n BN.prototype.imuln = function imuln (num) {\n var isNegNum = num < 0;\n if (isNegNum) num = -num;\n\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n\n // Carry\n var carry = 0;\n for (var i = 0; i < this.length; i++) {\n var w = (this.words[i] | 0) * num;\n var lo = (w & 0x3ffffff) + (carry & 0x3ffffff);\n carry >>= 26;\n carry += (w / 0x4000000) | 0;\n // NOTE: lo is 27bit maximum\n carry += lo >>> 26;\n this.words[i] = lo & 0x3ffffff;\n }\n\n if (carry !== 0) {\n this.words[i] = carry;\n this.length++;\n }\n\n return isNegNum ? this.ineg() : this;\n };\n\n BN.prototype.muln = function muln (num) {\n return this.clone().imuln(num);\n };\n\n // `this` * `this`\n BN.prototype.sqr = function sqr () {\n return this.mul(this);\n };\n\n // `this` * `this` in-place\n BN.prototype.isqr = function isqr () {\n return this.imul(this.clone());\n };\n\n // Math.pow(`this`, `num`)\n BN.prototype.pow = function pow (num) {\n var w = toBitArray(num);\n if (w.length === 0) return new BN(1);\n\n // Skip leading zeroes\n var res = this;\n for (var i = 0; i < w.length; i++, res = res.sqr()) {\n if (w[i] !== 0) break;\n }\n\n if (++i < w.length) {\n for (var q = res.sqr(); i < w.length; i++, q = q.sqr()) {\n if (w[i] === 0) continue;\n\n res = res.mul(q);\n }\n }\n\n return res;\n };\n\n // Shift-left in-place\n BN.prototype.iushln = function iushln (bits) {\n assert(typeof bits === 'number' && bits >= 0);\n var r = bits % 26;\n var s = (bits - r) / 26;\n var carryMask = (0x3ffffff >>> (26 - r)) << (26 - r);\n var i;\n\n if (r !== 0) {\n var carry = 0;\n\n for (i = 0; i < this.length; i++) {\n var newCarry = this.words[i] & carryMask;\n var c = ((this.words[i] | 0) - newCarry) << r;\n this.words[i] = c | carry;\n carry = newCarry >>> (26 - r);\n }\n\n if (carry) {\n this.words[i] = carry;\n this.length++;\n }\n }\n\n if (s !== 0) {\n for (i = this.length - 1; i >= 0; i--) {\n this.words[i + s] = this.words[i];\n }\n\n for (i = 0; i < s; i++) {\n this.words[i] = 0;\n }\n\n this.length += s;\n }\n\n return this._strip();\n };\n\n BN.prototype.ishln = function ishln (bits) {\n // TODO(indutny): implement me\n assert(this.negative === 0);\n return this.iushln(bits);\n };\n\n // Shift-right in-place\n // NOTE: `hint` is a lowest bit before trailing zeroes\n // NOTE: if `extended` is present - it will be filled with destroyed bits\n BN.prototype.iushrn = function iushrn (bits, hint, extended) {\n assert(typeof bits === 'number' && bits >= 0);\n var h;\n if (hint) {\n h = (hint - (hint % 26)) / 26;\n } else {\n h = 0;\n }\n\n var r = bits % 26;\n var s = Math.min((bits - r) / 26, this.length);\n var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r);\n var maskedWords = extended;\n\n h -= s;\n h = Math.max(0, h);\n\n // Extended mode, copy masked part\n if (maskedWords) {\n for (var i = 0; i < s; i++) {\n maskedWords.words[i] = this.words[i];\n }\n maskedWords.length = s;\n }\n\n if (s === 0) {\n // No-op, we should not move anything at all\n } else if (this.length > s) {\n this.length -= s;\n for (i = 0; i < this.length; i++) {\n this.words[i] = this.words[i + s];\n }\n } else {\n this.words[0] = 0;\n this.length = 1;\n }\n\n var carry = 0;\n for (i = this.length - 1; i >= 0 && (carry !== 0 || i >= h); i--) {\n var word = this.words[i] | 0;\n this.words[i] = (carry << (26 - r)) | (word >>> r);\n carry = word & mask;\n }\n\n // Push carried bits as a mask\n if (maskedWords && carry !== 0) {\n maskedWords.words[maskedWords.length++] = carry;\n }\n\n if (this.length === 0) {\n this.words[0] = 0;\n this.length = 1;\n }\n\n return this._strip();\n };\n\n BN.prototype.ishrn = function ishrn (bits, hint, extended) {\n // TODO(indutny): implement me\n assert(this.negative === 0);\n return this.iushrn(bits, hint, extended);\n };\n\n // Shift-left\n BN.prototype.shln = function shln (bits) {\n return this.clone().ishln(bits);\n };\n\n BN.prototype.ushln = function ushln (bits) {\n return this.clone().iushln(bits);\n };\n\n // Shift-right\n BN.prototype.shrn = function shrn (bits) {\n return this.clone().ishrn(bits);\n };\n\n BN.prototype.ushrn = function ushrn (bits) {\n return this.clone().iushrn(bits);\n };\n\n // Test if n bit is set\n BN.prototype.testn = function testn (bit) {\n assert(typeof bit === 'number' && bit >= 0);\n var r = bit % 26;\n var s = (bit - r) / 26;\n var q = 1 << r;\n\n // Fast case: bit is much higher than all existing words\n if (this.length <= s) return false;\n\n // Check bit and return\n var w = this.words[s];\n\n return !!(w & q);\n };\n\n // Return only lowers bits of number (in-place)\n BN.prototype.imaskn = function imaskn (bits) {\n assert(typeof bits === 'number' && bits >= 0);\n var r = bits % 26;\n var s = (bits - r) / 26;\n\n assert(this.negative === 0, 'imaskn works only with positive numbers');\n\n if (this.length <= s) {\n return this;\n }\n\n if (r !== 0) {\n s++;\n }\n this.length = Math.min(s, this.length);\n\n if (r !== 0) {\n var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r);\n this.words[this.length - 1] &= mask;\n }\n\n return this._strip();\n };\n\n // Return only lowers bits of number\n BN.prototype.maskn = function maskn (bits) {\n return this.clone().imaskn(bits);\n };\n\n // Add plain number `num` to `this`\n BN.prototype.iaddn = function iaddn (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n if (num < 0) return this.isubn(-num);\n\n // Possible sign change\n if (this.negative !== 0) {\n if (this.length === 1 && (this.words[0] | 0) <= num) {\n this.words[0] = num - (this.words[0] | 0);\n this.negative = 0;\n return this;\n }\n\n this.negative = 0;\n this.isubn(num);\n this.negative = 1;\n return this;\n }\n\n // Add without checks\n return this._iaddn(num);\n };\n\n BN.prototype._iaddn = function _iaddn (num) {\n this.words[0] += num;\n\n // Carry\n for (var i = 0; i < this.length && this.words[i] >= 0x4000000; i++) {\n this.words[i] -= 0x4000000;\n if (i === this.length - 1) {\n this.words[i + 1] = 1;\n } else {\n this.words[i + 1]++;\n }\n }\n this.length = Math.max(this.length, i + 1);\n\n return this;\n };\n\n // Subtract plain number `num` from `this`\n BN.prototype.isubn = function isubn (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n if (num < 0) return this.iaddn(-num);\n\n if (this.negative !== 0) {\n this.negative = 0;\n this.iaddn(num);\n this.negative = 1;\n return this;\n }\n\n this.words[0] -= num;\n\n if (this.length === 1 && this.words[0] < 0) {\n this.words[0] = -this.words[0];\n this.negative = 1;\n } else {\n // Carry\n for (var i = 0; i < this.length && this.words[i] < 0; i++) {\n this.words[i] += 0x4000000;\n this.words[i + 1] -= 1;\n }\n }\n\n return this._strip();\n };\n\n BN.prototype.addn = function addn (num) {\n return this.clone().iaddn(num);\n };\n\n BN.prototype.subn = function subn (num) {\n return this.clone().isubn(num);\n };\n\n BN.prototype.iabs = function iabs () {\n this.negative = 0;\n\n return this;\n };\n\n BN.prototype.abs = function abs () {\n return this.clone().iabs();\n };\n\n BN.prototype._ishlnsubmul = function _ishlnsubmul (num, mul, shift) {\n var len = num.length + shift;\n var i;\n\n this._expand(len);\n\n var w;\n var carry = 0;\n for (i = 0; i < num.length; i++) {\n w = (this.words[i + shift] | 0) + carry;\n var right = (num.words[i] | 0) * mul;\n w -= right & 0x3ffffff;\n carry = (w >> 26) - ((right / 0x4000000) | 0);\n this.words[i + shift] = w & 0x3ffffff;\n }\n for (; i < this.length - shift; i++) {\n w = (this.words[i + shift] | 0) + carry;\n carry = w >> 26;\n this.words[i + shift] = w & 0x3ffffff;\n }\n\n if (carry === 0) return this._strip();\n\n // Subtraction overflow\n assert(carry === -1);\n carry = 0;\n for (i = 0; i < this.length; i++) {\n w = -(this.words[i] | 0) + carry;\n carry = w >> 26;\n this.words[i] = w & 0x3ffffff;\n }\n this.negative = 1;\n\n return this._strip();\n };\n\n BN.prototype._wordDiv = function _wordDiv (num, mode) {\n var shift = this.length - num.length;\n\n var a = this.clone();\n var b = num;\n\n // Normalize\n var bhi = b.words[b.length - 1] | 0;\n var bhiBits = this._countBits(bhi);\n shift = 26 - bhiBits;\n if (shift !== 0) {\n b = b.ushln(shift);\n a.iushln(shift);\n bhi = b.words[b.length - 1] | 0;\n }\n\n // Initialize quotient\n var m = a.length - b.length;\n var q;\n\n if (mode !== 'mod') {\n q = new BN(null);\n q.length = m + 1;\n q.words = new Array(q.length);\n for (var i = 0; i < q.length; i++) {\n q.words[i] = 0;\n }\n }\n\n var diff = a.clone()._ishlnsubmul(b, 1, m);\n if (diff.negative === 0) {\n a = diff;\n if (q) {\n q.words[m] = 1;\n }\n }\n\n for (var j = m - 1; j >= 0; j--) {\n var qj = (a.words[b.length + j] | 0) * 0x4000000 +\n (a.words[b.length + j - 1] | 0);\n\n // NOTE: (qj / bhi) is (0x3ffffff * 0x4000000 + 0x3ffffff) / 0x2000000 max\n // (0x7ffffff)\n qj = Math.min((qj / bhi) | 0, 0x3ffffff);\n\n a._ishlnsubmul(b, qj, j);\n while (a.negative !== 0) {\n qj--;\n a.negative = 0;\n a._ishlnsubmul(b, 1, j);\n if (!a.isZero()) {\n a.negative ^= 1;\n }\n }\n if (q) {\n q.words[j] = qj;\n }\n }\n if (q) {\n q._strip();\n }\n a._strip();\n\n // Denormalize\n if (mode !== 'div' && shift !== 0) {\n a.iushrn(shift);\n }\n\n return {\n div: q || null,\n mod: a\n };\n };\n\n // NOTE: 1) `mode` can be set to `mod` to request mod only,\n // to `div` to request div only, or be absent to\n // request both div & mod\n // 2) `positive` is true if unsigned mod is requested\n BN.prototype.divmod = function divmod (num, mode, positive) {\n assert(!num.isZero());\n\n if (this.isZero()) {\n return {\n div: new BN(0),\n mod: new BN(0)\n };\n }\n\n var div, mod, res;\n if (this.negative !== 0 && num.negative === 0) {\n res = this.neg().divmod(num, mode);\n\n if (mode !== 'mod') {\n div = res.div.neg();\n }\n\n if (mode !== 'div') {\n mod = res.mod.neg();\n if (positive && mod.negative !== 0) {\n mod.iadd(num);\n }\n }\n\n return {\n div: div,\n mod: mod\n };\n }\n\n if (this.negative === 0 && num.negative !== 0) {\n res = this.divmod(num.neg(), mode);\n\n if (mode !== 'mod') {\n div = res.div.neg();\n }\n\n return {\n div: div,\n mod: res.mod\n };\n }\n\n if ((this.negative & num.negative) !== 0) {\n res = this.neg().divmod(num.neg(), mode);\n\n if (mode !== 'div') {\n mod = res.mod.neg();\n if (positive && mod.negative !== 0) {\n mod.isub(num);\n }\n }\n\n return {\n div: res.div,\n mod: mod\n };\n }\n\n // Both numbers are positive at this point\n\n // Strip both numbers to approximate shift value\n if (num.length > this.length || this.cmp(num) < 0) {\n return {\n div: new BN(0),\n mod: this\n };\n }\n\n // Very short reduction\n if (num.length === 1) {\n if (mode === 'div') {\n return {\n div: this.divn(num.words[0]),\n mod: null\n };\n }\n\n if (mode === 'mod') {\n return {\n div: null,\n mod: new BN(this.modrn(num.words[0]))\n };\n }\n\n return {\n div: this.divn(num.words[0]),\n mod: new BN(this.modrn(num.words[0]))\n };\n }\n\n return this._wordDiv(num, mode);\n };\n\n // Find `this` / `num`\n BN.prototype.div = function div (num) {\n return this.divmod(num, 'div', false).div;\n };\n\n // Find `this` % `num`\n BN.prototype.mod = function mod (num) {\n return this.divmod(num, 'mod', false).mod;\n };\n\n BN.prototype.umod = function umod (num) {\n return this.divmod(num, 'mod', true).mod;\n };\n\n // Find Round(`this` / `num`)\n BN.prototype.divRound = function divRound (num) {\n var dm = this.divmod(num);\n\n // Fast case - exact division\n if (dm.mod.isZero()) return dm.div;\n\n var mod = dm.div.negative !== 0 ? dm.mod.isub(num) : dm.mod;\n\n var half = num.ushrn(1);\n var r2 = num.andln(1);\n var cmp = mod.cmp(half);\n\n // Round down\n if (cmp < 0 || (r2 === 1 && cmp === 0)) return dm.div;\n\n // Round up\n return dm.div.negative !== 0 ? dm.div.isubn(1) : dm.div.iaddn(1);\n };\n\n BN.prototype.modrn = function modrn (num) {\n var isNegNum = num < 0;\n if (isNegNum) num = -num;\n\n assert(num <= 0x3ffffff);\n var p = (1 << 26) % num;\n\n var acc = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n acc = (p * acc + (this.words[i] | 0)) % num;\n }\n\n return isNegNum ? -acc : acc;\n };\n\n // WARNING: DEPRECATED\n BN.prototype.modn = function modn (num) {\n return this.modrn(num);\n };\n\n // In-place division by number\n BN.prototype.idivn = function idivn (num) {\n var isNegNum = num < 0;\n if (isNegNum) num = -num;\n\n assert(num <= 0x3ffffff);\n\n var carry = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n var w = (this.words[i] | 0) + carry * 0x4000000;\n this.words[i] = (w / num) | 0;\n carry = w % num;\n }\n\n this._strip();\n return isNegNum ? this.ineg() : this;\n };\n\n BN.prototype.divn = function divn (num) {\n return this.clone().idivn(num);\n };\n\n BN.prototype.egcd = function egcd (p) {\n assert(p.negative === 0);\n assert(!p.isZero());\n\n var x = this;\n var y = p.clone();\n\n if (x.negative !== 0) {\n x = x.umod(p);\n } else {\n x = x.clone();\n }\n\n // A * x + B * y = x\n var A = new BN(1);\n var B = new BN(0);\n\n // C * x + D * y = y\n var C = new BN(0);\n var D = new BN(1);\n\n var g = 0;\n\n while (x.isEven() && y.isEven()) {\n x.iushrn(1);\n y.iushrn(1);\n ++g;\n }\n\n var yp = y.clone();\n var xp = x.clone();\n\n while (!x.isZero()) {\n for (var i = 0, im = 1; (x.words[0] & im) === 0 && i < 26; ++i, im <<= 1);\n if (i > 0) {\n x.iushrn(i);\n while (i-- > 0) {\n if (A.isOdd() || B.isOdd()) {\n A.iadd(yp);\n B.isub(xp);\n }\n\n A.iushrn(1);\n B.iushrn(1);\n }\n }\n\n for (var j = 0, jm = 1; (y.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1);\n if (j > 0) {\n y.iushrn(j);\n while (j-- > 0) {\n if (C.isOdd() || D.isOdd()) {\n C.iadd(yp);\n D.isub(xp);\n }\n\n C.iushrn(1);\n D.iushrn(1);\n }\n }\n\n if (x.cmp(y) >= 0) {\n x.isub(y);\n A.isub(C);\n B.isub(D);\n } else {\n y.isub(x);\n C.isub(A);\n D.isub(B);\n }\n }\n\n return {\n a: C,\n b: D,\n gcd: y.iushln(g)\n };\n };\n\n // This is reduced incarnation of the binary EEA\n // above, designated to invert members of the\n // _prime_ fields F(p) at a maximal speed\n BN.prototype._invmp = function _invmp (p) {\n assert(p.negative === 0);\n assert(!p.isZero());\n\n var a = this;\n var b = p.clone();\n\n if (a.negative !== 0) {\n a = a.umod(p);\n } else {\n a = a.clone();\n }\n\n var x1 = new BN(1);\n var x2 = new BN(0);\n\n var delta = b.clone();\n\n while (a.cmpn(1) > 0 && b.cmpn(1) > 0) {\n for (var i = 0, im = 1; (a.words[0] & im) === 0 && i < 26; ++i, im <<= 1);\n if (i > 0) {\n a.iushrn(i);\n while (i-- > 0) {\n if (x1.isOdd()) {\n x1.iadd(delta);\n }\n\n x1.iushrn(1);\n }\n }\n\n for (var j = 0, jm = 1; (b.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1);\n if (j > 0) {\n b.iushrn(j);\n while (j-- > 0) {\n if (x2.isOdd()) {\n x2.iadd(delta);\n }\n\n x2.iushrn(1);\n }\n }\n\n if (a.cmp(b) >= 0) {\n a.isub(b);\n x1.isub(x2);\n } else {\n b.isub(a);\n x2.isub(x1);\n }\n }\n\n var res;\n if (a.cmpn(1) === 0) {\n res = x1;\n } else {\n res = x2;\n }\n\n if (res.cmpn(0) < 0) {\n res.iadd(p);\n }\n\n return res;\n };\n\n BN.prototype.gcd = function gcd (num) {\n if (this.isZero()) return num.abs();\n if (num.isZero()) return this.abs();\n\n var a = this.clone();\n var b = num.clone();\n a.negative = 0;\n b.negative = 0;\n\n // Remove common factor of two\n for (var shift = 0; a.isEven() && b.isEven(); shift++) {\n a.iushrn(1);\n b.iushrn(1);\n }\n\n do {\n while (a.isEven()) {\n a.iushrn(1);\n }\n while (b.isEven()) {\n b.iushrn(1);\n }\n\n var r = a.cmp(b);\n if (r < 0) {\n // Swap `a` and `b` to make `a` always bigger than `b`\n var t = a;\n a = b;\n b = t;\n } else if (r === 0 || b.cmpn(1) === 0) {\n break;\n }\n\n a.isub(b);\n } while (true);\n\n return b.iushln(shift);\n };\n\n // Invert number in the field F(num)\n BN.prototype.invm = function invm (num) {\n return this.egcd(num).a.umod(num);\n };\n\n BN.prototype.isEven = function isEven () {\n return (this.words[0] & 1) === 0;\n };\n\n BN.prototype.isOdd = function isOdd () {\n return (this.words[0] & 1) === 1;\n };\n\n // And first word and num\n BN.prototype.andln = function andln (num) {\n return this.words[0] & num;\n };\n\n // Increment at the bit position in-line\n BN.prototype.bincn = function bincn (bit) {\n assert(typeof bit === 'number');\n var r = bit % 26;\n var s = (bit - r) / 26;\n var q = 1 << r;\n\n // Fast case: bit is much higher than all existing words\n if (this.length <= s) {\n this._expand(s + 1);\n this.words[s] |= q;\n return this;\n }\n\n // Add bit and propagate, if needed\n var carry = q;\n for (var i = s; carry !== 0 && i < this.length; i++) {\n var w = this.words[i] | 0;\n w += carry;\n carry = w >>> 26;\n w &= 0x3ffffff;\n this.words[i] = w;\n }\n if (carry !== 0) {\n this.words[i] = carry;\n this.length++;\n }\n return this;\n };\n\n BN.prototype.isZero = function isZero () {\n return this.length === 1 && this.words[0] === 0;\n };\n\n BN.prototype.cmpn = function cmpn (num) {\n var negative = num < 0;\n\n if (this.negative !== 0 && !negative) return -1;\n if (this.negative === 0 && negative) return 1;\n\n this._strip();\n\n var res;\n if (this.length > 1) {\n res = 1;\n } else {\n if (negative) {\n num = -num;\n }\n\n assert(num <= 0x3ffffff, 'Number is too big');\n\n var w = this.words[0] | 0;\n res = w === num ? 0 : w < num ? -1 : 1;\n }\n if (this.negative !== 0) return -res | 0;\n return res;\n };\n\n // Compare two numbers and return:\n // 1 - if `this` > `num`\n // 0 - if `this` == `num`\n // -1 - if `this` < `num`\n BN.prototype.cmp = function cmp (num) {\n if (this.negative !== 0 && num.negative === 0) return -1;\n if (this.negative === 0 && num.negative !== 0) return 1;\n\n var res = this.ucmp(num);\n if (this.negative !== 0) return -res | 0;\n return res;\n };\n\n // Unsigned comparison\n BN.prototype.ucmp = function ucmp (num) {\n // At this point both numbers have the same sign\n if (this.length > num.length) return 1;\n if (this.length < num.length) return -1;\n\n var res = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n var a = this.words[i] | 0;\n var b = num.words[i] | 0;\n\n if (a === b) continue;\n if (a < b) {\n res = -1;\n } else if (a > b) {\n res = 1;\n }\n break;\n }\n return res;\n };\n\n BN.prototype.gtn = function gtn (num) {\n return this.cmpn(num) === 1;\n };\n\n BN.prototype.gt = function gt (num) {\n return this.cmp(num) === 1;\n };\n\n BN.prototype.gten = function gten (num) {\n return this.cmpn(num) >= 0;\n };\n\n BN.prototype.gte = function gte (num) {\n return this.cmp(num) >= 0;\n };\n\n BN.prototype.ltn = function ltn (num) {\n return this.cmpn(num) === -1;\n };\n\n BN.prototype.lt = function lt (num) {\n return this.cmp(num) === -1;\n };\n\n BN.prototype.lten = function lten (num) {\n return this.cmpn(num) <= 0;\n };\n\n BN.prototype.lte = function lte (num) {\n return this.cmp(num) <= 0;\n };\n\n BN.prototype.eqn = function eqn (num) {\n return this.cmpn(num) === 0;\n };\n\n BN.prototype.eq = function eq (num) {\n return this.cmp(num) === 0;\n };\n\n //\n // A reduce context, could be using montgomery or something better, depending\n // on the `m` itself.\n //\n BN.red = function red (num) {\n return new Red(num);\n };\n\n BN.prototype.toRed = function toRed (ctx) {\n assert(!this.red, 'Already a number in reduction context');\n assert(this.negative === 0, 'red works only with positives');\n return ctx.convertTo(this)._forceRed(ctx);\n };\n\n BN.prototype.fromRed = function fromRed () {\n assert(this.red, 'fromRed works only with numbers in reduction context');\n return this.red.convertFrom(this);\n };\n\n BN.prototype._forceRed = function _forceRed (ctx) {\n this.red = ctx;\n return this;\n };\n\n BN.prototype.forceRed = function forceRed (ctx) {\n assert(!this.red, 'Already a number in reduction context');\n return this._forceRed(ctx);\n };\n\n BN.prototype.redAdd = function redAdd (num) {\n assert(this.red, 'redAdd works only with red numbers');\n return this.red.add(this, num);\n };\n\n BN.prototype.redIAdd = function redIAdd (num) {\n assert(this.red, 'redIAdd works only with red numbers');\n return this.red.iadd(this, num);\n };\n\n BN.prototype.redSub = function redSub (num) {\n assert(this.red, 'redSub works only with red numbers');\n return this.red.sub(this, num);\n };\n\n BN.prototype.redISub = function redISub (num) {\n assert(this.red, 'redISub works only with red numbers');\n return this.red.isub(this, num);\n };\n\n BN.prototype.redShl = function redShl (num) {\n assert(this.red, 'redShl works only with red numbers');\n return this.red.shl(this, num);\n };\n\n BN.prototype.redMul = function redMul (num) {\n assert(this.red, 'redMul works only with red numbers');\n this.red._verify2(this, num);\n return this.red.mul(this, num);\n };\n\n BN.prototype.redIMul = function redIMul (num) {\n assert(this.red, 'redMul works only with red numbers');\n this.red._verify2(this, num);\n return this.red.imul(this, num);\n };\n\n BN.prototype.redSqr = function redSqr () {\n assert(this.red, 'redSqr works only with red numbers');\n this.red._verify1(this);\n return this.red.sqr(this);\n };\n\n BN.prototype.redISqr = function redISqr () {\n assert(this.red, 'redISqr works only with red numbers');\n this.red._verify1(this);\n return this.red.isqr(this);\n };\n\n // Square root over p\n BN.prototype.redSqrt = function redSqrt () {\n assert(this.red, 'redSqrt works only with red numbers');\n this.red._verify1(this);\n return this.red.sqrt(this);\n };\n\n BN.prototype.redInvm = function redInvm () {\n assert(this.red, 'redInvm works only with red numbers');\n this.red._verify1(this);\n return this.red.invm(this);\n };\n\n // Return negative clone of `this` % `red modulo`\n BN.prototype.redNeg = function redNeg () {\n assert(this.red, 'redNeg works only with red numbers');\n this.red._verify1(this);\n return this.red.neg(this);\n };\n\n BN.prototype.redPow = function redPow (num) {\n assert(this.red && !num.red, 'redPow(normalNum)');\n this.red._verify1(this);\n return this.red.pow(this, num);\n };\n\n // Prime numbers with efficient reduction\n var primes = {\n k256: null,\n p224: null,\n p192: null,\n p25519: null\n };\n\n // Pseudo-Mersenne prime\n function MPrime (name, p) {\n // P = 2 ^ N - K\n this.name = name;\n this.p = new BN(p, 16);\n this.n = this.p.bitLength();\n this.k = new BN(1).iushln(this.n).isub(this.p);\n\n this.tmp = this._tmp();\n }\n\n MPrime.prototype._tmp = function _tmp () {\n var tmp = new BN(null);\n tmp.words = new Array(Math.ceil(this.n / 13));\n return tmp;\n };\n\n MPrime.prototype.ireduce = function ireduce (num) {\n // Assumes that `num` is less than `P^2`\n // num = HI * (2 ^ N - K) + HI * K + LO = HI * K + LO (mod P)\n var r = num;\n var rlen;\n\n do {\n this.split(r, this.tmp);\n r = this.imulK(r);\n r = r.iadd(this.tmp);\n rlen = r.bitLength();\n } while (rlen > this.n);\n\n var cmp = rlen < this.n ? -1 : r.ucmp(this.p);\n if (cmp === 0) {\n r.words[0] = 0;\n r.length = 1;\n } else if (cmp > 0) {\n r.isub(this.p);\n } else {\n if (r.strip !== undefined) {\n // r is a BN v4 instance\n r.strip();\n } else {\n // r is a BN v5 instance\n r._strip();\n }\n }\n\n return r;\n };\n\n MPrime.prototype.split = function split (input, out) {\n input.iushrn(this.n, 0, out);\n };\n\n MPrime.prototype.imulK = function imulK (num) {\n return num.imul(this.k);\n };\n\n function K256 () {\n MPrime.call(\n this,\n 'k256',\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f');\n }\n inherits(K256, MPrime);\n\n K256.prototype.split = function split (input, output) {\n // 256 = 9 * 26 + 22\n var mask = 0x3fffff;\n\n var outLen = Math.min(input.length, 9);\n for (var i = 0; i < outLen; i++) {\n output.words[i] = input.words[i];\n }\n output.length = outLen;\n\n if (input.length <= 9) {\n input.words[0] = 0;\n input.length = 1;\n return;\n }\n\n // Shift by 9 limbs\n var prev = input.words[9];\n output.words[output.length++] = prev & mask;\n\n for (i = 10; i < input.length; i++) {\n var next = input.words[i] | 0;\n input.words[i - 10] = ((next & mask) << 4) | (prev >>> 22);\n prev = next;\n }\n prev >>>= 22;\n input.words[i - 10] = prev;\n if (prev === 0 && input.length > 10) {\n input.length -= 10;\n } else {\n input.length -= 9;\n }\n };\n\n K256.prototype.imulK = function imulK (num) {\n // K = 0x1000003d1 = [ 0x40, 0x3d1 ]\n num.words[num.length] = 0;\n num.words[num.length + 1] = 0;\n num.length += 2;\n\n // bounded at: 0x40 * 0x3ffffff + 0x3d0 = 0x100000390\n var lo = 0;\n for (var i = 0; i < num.length; i++) {\n var w = num.words[i] | 0;\n lo += w * 0x3d1;\n num.words[i] = lo & 0x3ffffff;\n lo = w * 0x40 + ((lo / 0x4000000) | 0);\n }\n\n // Fast length reduction\n if (num.words[num.length - 1] === 0) {\n num.length--;\n if (num.words[num.length - 1] === 0) {\n num.length--;\n }\n }\n return num;\n };\n\n function P224 () {\n MPrime.call(\n this,\n 'p224',\n 'ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001');\n }\n inherits(P224, MPrime);\n\n function P192 () {\n MPrime.call(\n this,\n 'p192',\n 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff');\n }\n inherits(P192, MPrime);\n\n function P25519 () {\n // 2 ^ 255 - 19\n MPrime.call(\n this,\n '25519',\n '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed');\n }\n inherits(P25519, MPrime);\n\n P25519.prototype.imulK = function imulK (num) {\n // K = 0x13\n var carry = 0;\n for (var i = 0; i < num.length; i++) {\n var hi = (num.words[i] | 0) * 0x13 + carry;\n var lo = hi & 0x3ffffff;\n hi >>>= 26;\n\n num.words[i] = lo;\n carry = hi;\n }\n if (carry !== 0) {\n num.words[num.length++] = carry;\n }\n return num;\n };\n\n // Exported mostly for testing purposes, use plain name instead\n BN._prime = function prime (name) {\n // Cached version of prime\n if (primes[name]) return primes[name];\n\n var prime;\n if (name === 'k256') {\n prime = new K256();\n } else if (name === 'p224') {\n prime = new P224();\n } else if (name === 'p192') {\n prime = new P192();\n } else if (name === 'p25519') {\n prime = new P25519();\n } else {\n throw new Error('Unknown prime ' + name);\n }\n primes[name] = prime;\n\n return prime;\n };\n\n //\n // Base reduction engine\n //\n function Red (m) {\n if (typeof m === 'string') {\n var prime = BN._prime(m);\n this.m = prime.p;\n this.prime = prime;\n } else {\n assert(m.gtn(1), 'modulus must be greater than 1');\n this.m = m;\n this.prime = null;\n }\n }\n\n Red.prototype._verify1 = function _verify1 (a) {\n assert(a.negative === 0, 'red works only with positives');\n assert(a.red, 'red works only with red numbers');\n };\n\n Red.prototype._verify2 = function _verify2 (a, b) {\n assert((a.negative | b.negative) === 0, 'red works only with positives');\n assert(a.red && a.red === b.red,\n 'red works only with red numbers');\n };\n\n Red.prototype.imod = function imod (a) {\n if (this.prime) return this.prime.ireduce(a)._forceRed(this);\n\n move(a, a.umod(this.m)._forceRed(this));\n return a;\n };\n\n Red.prototype.neg = function neg (a) {\n if (a.isZero()) {\n return a.clone();\n }\n\n return this.m.sub(a)._forceRed(this);\n };\n\n Red.prototype.add = function add (a, b) {\n this._verify2(a, b);\n\n var res = a.add(b);\n if (res.cmp(this.m) >= 0) {\n res.isub(this.m);\n }\n return res._forceRed(this);\n };\n\n Red.prototype.iadd = function iadd (a, b) {\n this._verify2(a, b);\n\n var res = a.iadd(b);\n if (res.cmp(this.m) >= 0) {\n res.isub(this.m);\n }\n return res;\n };\n\n Red.prototype.sub = function sub (a, b) {\n this._verify2(a, b);\n\n var res = a.sub(b);\n if (res.cmpn(0) < 0) {\n res.iadd(this.m);\n }\n return res._forceRed(this);\n };\n\n Red.prototype.isub = function isub (a, b) {\n this._verify2(a, b);\n\n var res = a.isub(b);\n if (res.cmpn(0) < 0) {\n res.iadd(this.m);\n }\n return res;\n };\n\n Red.prototype.shl = function shl (a, num) {\n this._verify1(a);\n return this.imod(a.ushln(num));\n };\n\n Red.prototype.imul = function imul (a, b) {\n this._verify2(a, b);\n return this.imod(a.imul(b));\n };\n\n Red.prototype.mul = function mul (a, b) {\n this._verify2(a, b);\n return this.imod(a.mul(b));\n };\n\n Red.prototype.isqr = function isqr (a) {\n return this.imul(a, a.clone());\n };\n\n Red.prototype.sqr = function sqr (a) {\n return this.mul(a, a);\n };\n\n Red.prototype.sqrt = function sqrt (a) {\n if (a.isZero()) return a.clone();\n\n var mod3 = this.m.andln(3);\n assert(mod3 % 2 === 1);\n\n // Fast case\n if (mod3 === 3) {\n var pow = this.m.add(new BN(1)).iushrn(2);\n return this.pow(a, pow);\n }\n\n // Tonelli-Shanks algorithm (Totally unoptimized and slow)\n //\n // Find Q and S, that Q * 2 ^ S = (P - 1)\n var q = this.m.subn(1);\n var s = 0;\n while (!q.isZero() && q.andln(1) === 0) {\n s++;\n q.iushrn(1);\n }\n assert(!q.isZero());\n\n var one = new BN(1).toRed(this);\n var nOne = one.redNeg();\n\n // Find quadratic non-residue\n // NOTE: Max is such because of generalized Riemann hypothesis.\n var lpow = this.m.subn(1).iushrn(1);\n var z = this.m.bitLength();\n z = new BN(2 * z * z).toRed(this);\n\n while (this.pow(z, lpow).cmp(nOne) !== 0) {\n z.redIAdd(nOne);\n }\n\n var c = this.pow(z, q);\n var r = this.pow(a, q.addn(1).iushrn(1));\n var t = this.pow(a, q);\n var m = s;\n while (t.cmp(one) !== 0) {\n var tmp = t;\n for (var i = 0; tmp.cmp(one) !== 0; i++) {\n tmp = tmp.redSqr();\n }\n assert(i < m);\n var b = this.pow(c, new BN(1).iushln(m - i - 1));\n\n r = r.redMul(b);\n c = b.redSqr();\n t = t.redMul(c);\n m = i;\n }\n\n return r;\n };\n\n Red.prototype.invm = function invm (a) {\n var inv = a._invmp(this.m);\n if (inv.negative !== 0) {\n inv.negative = 0;\n return this.imod(inv).redNeg();\n } else {\n return this.imod(inv);\n }\n };\n\n Red.prototype.pow = function pow (a, num) {\n if (num.isZero()) return new BN(1).toRed(this);\n if (num.cmpn(1) === 0) return a.clone();\n\n var windowSize = 4;\n var wnd = new Array(1 << windowSize);\n wnd[0] = new BN(1).toRed(this);\n wnd[1] = a;\n for (var i = 2; i < wnd.length; i++) {\n wnd[i] = this.mul(wnd[i - 1], a);\n }\n\n var res = wnd[0];\n var current = 0;\n var currentLen = 0;\n var start = num.bitLength() % 26;\n if (start === 0) {\n start = 26;\n }\n\n for (i = num.length - 1; i >= 0; i--) {\n var word = num.words[i];\n for (var j = start - 1; j >= 0; j--) {\n var bit = (word >> j) & 1;\n if (res !== wnd[0]) {\n res = this.sqr(res);\n }\n\n if (bit === 0 && current === 0) {\n currentLen = 0;\n continue;\n }\n\n current <<= 1;\n current |= bit;\n currentLen++;\n if (currentLen !== windowSize && (i !== 0 || j !== 0)) continue;\n\n res = this.mul(res, wnd[current]);\n currentLen = 0;\n current = 0;\n }\n start = 26;\n }\n\n return res;\n };\n\n Red.prototype.convertTo = function convertTo (num) {\n var r = num.umod(this.m);\n\n return r === num ? r.clone() : r;\n };\n\n Red.prototype.convertFrom = function convertFrom (num) {\n var res = num.clone();\n res.red = null;\n return res;\n };\n\n //\n // Montgomery method engine\n //\n\n BN.mont = function mont (num) {\n return new Mont(num);\n };\n\n function Mont (m) {\n Red.call(this, m);\n\n this.shift = this.m.bitLength();\n if (this.shift % 26 !== 0) {\n this.shift += 26 - (this.shift % 26);\n }\n\n this.r = new BN(1).iushln(this.shift);\n this.r2 = this.imod(this.r.sqr());\n this.rinv = this.r._invmp(this.m);\n\n this.minv = this.rinv.mul(this.r).isubn(1).div(this.m);\n this.minv = this.minv.umod(this.r);\n this.minv = this.r.sub(this.minv);\n }\n inherits(Mont, Red);\n\n Mont.prototype.convertTo = function convertTo (num) {\n return this.imod(num.ushln(this.shift));\n };\n\n Mont.prototype.convertFrom = function convertFrom (num) {\n var r = this.imod(num.mul(this.rinv));\n r.red = null;\n return r;\n };\n\n Mont.prototype.imul = function imul (a, b) {\n if (a.isZero() || b.isZero()) {\n a.words[0] = 0;\n a.length = 1;\n return a;\n }\n\n var t = a.imul(b);\n var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);\n var u = t.isub(c).iushrn(this.shift);\n var res = u;\n\n if (u.cmp(this.m) >= 0) {\n res = u.isub(this.m);\n } else if (u.cmpn(0) < 0) {\n res = u.iadd(this.m);\n }\n\n return res._forceRed(this);\n };\n\n Mont.prototype.mul = function mul (a, b) {\n if (a.isZero() || b.isZero()) return new BN(0)._forceRed(this);\n\n var t = a.mul(b);\n var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);\n var u = t.isub(c).iushrn(this.shift);\n var res = u;\n if (u.cmp(this.m) >= 0) {\n res = u.isub(this.m);\n } else if (u.cmpn(0) < 0) {\n res = u.iadd(this.m);\n }\n\n return res._forceRed(this);\n };\n\n Mont.prototype.invm = function invm (a) {\n // (AR)^-1 * R^2 = (A^-1 * R^-1) * R^2 = A^-1 * R\n var res = this.imod(a._invmp(this.m).mul(this.r2));\n return res._forceRed(this);\n };\n})(typeof module === 'undefined' || module, this);\n","'use strict'\n// base-x encoding / decoding\n// Copyright (c) 2018 base-x contributors\n// Copyright (c) 2014-2018 The Bitcoin Core developers (base58.cpp)\n// Distributed under the MIT software license, see the accompanying\n// file LICENSE or http://www.opensource.org/licenses/mit-license.php.\n// @ts-ignore\nvar _Buffer = require('safe-buffer').Buffer\nfunction base (ALPHABET) {\n if (ALPHABET.length >= 255) { throw new TypeError('Alphabet too long') }\n var BASE_MAP = new Uint8Array(256)\n for (var j = 0; j < BASE_MAP.length; j++) {\n BASE_MAP[j] = 255\n }\n for (var i = 0; i < ALPHABET.length; i++) {\n var x = ALPHABET.charAt(i)\n var xc = x.charCodeAt(0)\n if (BASE_MAP[xc] !== 255) { throw new TypeError(x + ' is ambiguous') }\n BASE_MAP[xc] = i\n }\n var BASE = ALPHABET.length\n var LEADER = ALPHABET.charAt(0)\n var FACTOR = Math.log(BASE) / Math.log(256) // log(BASE) / log(256), rounded up\n var iFACTOR = Math.log(256) / Math.log(BASE) // log(256) / log(BASE), rounded up\n function encode (source) {\n if (Array.isArray(source) || source instanceof Uint8Array) { source = _Buffer.from(source) }\n if (!_Buffer.isBuffer(source)) { throw new TypeError('Expected Buffer') }\n if (source.length === 0) { return '' }\n // Skip & count leading zeroes.\n var zeroes = 0\n var length = 0\n var pbegin = 0\n var pend = source.length\n while (pbegin !== pend && source[pbegin] === 0) {\n pbegin++\n zeroes++\n }\n // Allocate enough space in big-endian base58 representation.\n var size = ((pend - pbegin) * iFACTOR + 1) >>> 0\n var b58 = new Uint8Array(size)\n // Process the bytes.\n while (pbegin !== pend) {\n var carry = source[pbegin]\n // Apply \"b58 = b58 * 256 + ch\".\n var i = 0\n for (var it1 = size - 1; (carry !== 0 || i < length) && (it1 !== -1); it1--, i++) {\n carry += (256 * b58[it1]) >>> 0\n b58[it1] = (carry % BASE) >>> 0\n carry = (carry / BASE) >>> 0\n }\n if (carry !== 0) { throw new Error('Non-zero carry') }\n length = i\n pbegin++\n }\n // Skip leading zeroes in base58 result.\n var it2 = size - length\n while (it2 !== size && b58[it2] === 0) {\n it2++\n }\n // Translate the result into a string.\n var str = LEADER.repeat(zeroes)\n for (; it2 < size; ++it2) { str += ALPHABET.charAt(b58[it2]) }\n return str\n }\n function decodeUnsafe (source) {\n if (typeof source !== 'string') { throw new TypeError('Expected String') }\n if (source.length === 0) { return _Buffer.alloc(0) }\n var psz = 0\n // Skip and count leading '1's.\n var zeroes = 0\n var length = 0\n while (source[psz] === LEADER) {\n zeroes++\n psz++\n }\n // Allocate enough space in big-endian base256 representation.\n var size = (((source.length - psz) * FACTOR) + 1) >>> 0 // log(58) / log(256), rounded up.\n var b256 = new Uint8Array(size)\n // Process the characters.\n while (source[psz]) {\n // Decode character\n var carry = BASE_MAP[source.charCodeAt(psz)]\n // Invalid character\n if (carry === 255) { return }\n var i = 0\n for (var it3 = size - 1; (carry !== 0 || i < length) && (it3 !== -1); it3--, i++) {\n carry += (BASE * b256[it3]) >>> 0\n b256[it3] = (carry % 256) >>> 0\n carry = (carry / 256) >>> 0\n }\n if (carry !== 0) { throw new Error('Non-zero carry') }\n length = i\n psz++\n }\n // Skip leading zeroes in b256.\n var it4 = size - length\n while (it4 !== size && b256[it4] === 0) {\n it4++\n }\n var vch = _Buffer.allocUnsafe(zeroes + (size - it4))\n vch.fill(0x00, 0, zeroes)\n var j = zeroes\n while (it4 !== size) {\n vch[j++] = b256[it4++]\n }\n return vch\n }\n function decode (string) {\n var buffer = decodeUnsafe(string)\n if (buffer) { return buffer }\n throw new Error('Non-base' + BASE + ' character')\n }\n return {\n encode: encode,\n decodeUnsafe: decodeUnsafe,\n decode: decode\n }\n}\nmodule.exports = base\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// browserify by default only pulls in files that are hard coded in requires\n// In order of last to first in this file, the default wordlist will be chosen\n// based on what is present. (Bundles may remove wordlists they don't need)\nconst wordlists = {};\nexports.wordlists = wordlists;\nlet _default;\nexports._default = _default;\ntry {\n exports._default = _default = require('./wordlists/czech.json');\n wordlists.czech = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/chinese_simplified.json');\n wordlists.chinese_simplified = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/chinese_traditional.json');\n wordlists.chinese_traditional = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/korean.json');\n wordlists.korean = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/french.json');\n wordlists.french = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/italian.json');\n wordlists.italian = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/spanish.json');\n wordlists.spanish = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/japanese.json');\n wordlists.japanese = _default;\n wordlists.JA = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/portuguese.json');\n wordlists.portuguese = _default;\n}\ncatch (err) { }\ntry {\n exports._default = _default = require('./wordlists/english.json');\n wordlists.english = _default;\n wordlists.EN = _default;\n}\ncatch (err) { }\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst sha256_1 = require(\"@noble/hashes/sha256\");\nconst sha512_1 = require(\"@noble/hashes/sha512\");\nconst pbkdf2_1 = require(\"@noble/hashes/pbkdf2\");\nconst utils_1 = require(\"@noble/hashes/utils\");\nconst _wordlists_1 = require(\"./_wordlists\");\nlet DEFAULT_WORDLIST = _wordlists_1._default;\nconst INVALID_MNEMONIC = 'Invalid mnemonic';\nconst INVALID_ENTROPY = 'Invalid entropy';\nconst INVALID_CHECKSUM = 'Invalid mnemonic checksum';\nconst WORDLIST_REQUIRED = 'A wordlist is required but a default could not be found.\\n' +\n 'Please pass a 2048 word array explicitly.';\nfunction normalize(str) {\n return (str || '').normalize('NFKD');\n}\nfunction lpad(str, padString, length) {\n while (str.length < length) {\n str = padString + str;\n }\n return str;\n}\nfunction binaryToByte(bin) {\n return parseInt(bin, 2);\n}\nfunction bytesToBinary(bytes) {\n return bytes.map((x) => lpad(x.toString(2), '0', 8)).join('');\n}\nfunction deriveChecksumBits(entropyBuffer) {\n const ENT = entropyBuffer.length * 8;\n const CS = ENT / 32;\n const hash = sha256_1.sha256(Uint8Array.from(entropyBuffer));\n return bytesToBinary(Array.from(hash)).slice(0, CS);\n}\nfunction salt(password) {\n return 'mnemonic' + (password || '');\n}\nfunction mnemonicToSeedSync(mnemonic, password) {\n const mnemonicBuffer = Uint8Array.from(Buffer.from(normalize(mnemonic), 'utf8'));\n const saltBuffer = Uint8Array.from(Buffer.from(salt(normalize(password)), 'utf8'));\n const res = pbkdf2_1.pbkdf2(sha512_1.sha512, mnemonicBuffer, saltBuffer, {\n c: 2048,\n dkLen: 64,\n });\n return Buffer.from(res);\n}\nexports.mnemonicToSeedSync = mnemonicToSeedSync;\nfunction mnemonicToSeed(mnemonic, password) {\n const mnemonicBuffer = Uint8Array.from(Buffer.from(normalize(mnemonic), 'utf8'));\n const saltBuffer = Uint8Array.from(Buffer.from(salt(normalize(password)), 'utf8'));\n return pbkdf2_1.pbkdf2Async(sha512_1.sha512, mnemonicBuffer, saltBuffer, {\n c: 2048,\n dkLen: 64,\n }).then((res) => Buffer.from(res));\n}\nexports.mnemonicToSeed = mnemonicToSeed;\nfunction mnemonicToEntropy(mnemonic, wordlist) {\n wordlist = wordlist || DEFAULT_WORDLIST;\n if (!wordlist) {\n throw new Error(WORDLIST_REQUIRED);\n }\n const words = normalize(mnemonic).split(' ');\n if (words.length % 3 !== 0) {\n throw new Error(INVALID_MNEMONIC);\n }\n // convert word indices to 11 bit binary strings\n const bits = words\n .map((word) => {\n const index = wordlist.indexOf(word);\n if (index === -1) {\n throw new Error(INVALID_MNEMONIC);\n }\n return lpad(index.toString(2), '0', 11);\n })\n .join('');\n // split the binary string into ENT/CS\n const dividerIndex = Math.floor(bits.length / 33) * 32;\n const entropyBits = bits.slice(0, dividerIndex);\n const checksumBits = bits.slice(dividerIndex);\n // calculate the checksum and compare\n const entropyBytes = entropyBits.match(/(.{1,8})/g).map(binaryToByte);\n if (entropyBytes.length < 16) {\n throw new Error(INVALID_ENTROPY);\n }\n if (entropyBytes.length > 32) {\n throw new Error(INVALID_ENTROPY);\n }\n if (entropyBytes.length % 4 !== 0) {\n throw new Error(INVALID_ENTROPY);\n }\n const entropy = Buffer.from(entropyBytes);\n const newChecksum = deriveChecksumBits(entropy);\n if (newChecksum !== checksumBits) {\n throw new Error(INVALID_CHECKSUM);\n }\n return entropy.toString('hex');\n}\nexports.mnemonicToEntropy = mnemonicToEntropy;\nfunction entropyToMnemonic(entropy, wordlist) {\n if (!Buffer.isBuffer(entropy)) {\n entropy = Buffer.from(entropy, 'hex');\n }\n wordlist = wordlist || DEFAULT_WORDLIST;\n if (!wordlist) {\n throw new Error(WORDLIST_REQUIRED);\n }\n // 128 <= ENT <= 256\n if (entropy.length < 16) {\n throw new TypeError(INVALID_ENTROPY);\n }\n if (entropy.length > 32) {\n throw new TypeError(INVALID_ENTROPY);\n }\n if (entropy.length % 4 !== 0) {\n throw new TypeError(INVALID_ENTROPY);\n }\n const entropyBits = bytesToBinary(Array.from(entropy));\n const checksumBits = deriveChecksumBits(entropy);\n const bits = entropyBits + checksumBits;\n const chunks = bits.match(/(.{1,11})/g);\n const words = chunks.map((binary) => {\n const index = binaryToByte(binary);\n return wordlist[index];\n });\n return wordlist[0] === '\\u3042\\u3044\\u3053\\u304f\\u3057\\u3093' // Japanese wordlist\n ? words.join('\\u3000')\n : words.join(' ');\n}\nexports.entropyToMnemonic = entropyToMnemonic;\nfunction generateMnemonic(strength, rng, wordlist) {\n strength = strength || 128;\n if (strength % 32 !== 0) {\n throw new TypeError(INVALID_ENTROPY);\n }\n rng = rng || ((size) => Buffer.from(utils_1.randomBytes(size)));\n return entropyToMnemonic(rng(strength / 8), wordlist);\n}\nexports.generateMnemonic = generateMnemonic;\nfunction validateMnemonic(mnemonic, wordlist) {\n try {\n mnemonicToEntropy(mnemonic, wordlist);\n }\n catch (e) {\n return false;\n }\n return true;\n}\nexports.validateMnemonic = validateMnemonic;\nfunction setDefaultWordlist(language) {\n const result = _wordlists_1.wordlists[language];\n if (result) {\n DEFAULT_WORDLIST = result;\n }\n else {\n throw new Error('Could not find wordlist for language \"' + language + '\"');\n }\n}\nexports.setDefaultWordlist = setDefaultWordlist;\nfunction getDefaultWordlist() {\n if (!DEFAULT_WORDLIST) {\n throw new Error('No Default Wordlist set');\n }\n return Object.keys(_wordlists_1.wordlists).filter((lang) => {\n if (lang === 'JA' || lang === 'EN') {\n return false;\n }\n return _wordlists_1.wordlists[lang].every((word, index) => word === DEFAULT_WORDLIST[index]);\n })[0];\n}\nexports.getDefaultWordlist = getDefaultWordlist;\nvar _wordlists_2 = require(\"./_wordlists\");\nexports.wordlists = _wordlists_2.wordlists;\n","// Blake2B in pure Javascript\n// Adapted from the reference implementation in RFC7693\n// Ported to Javascript by DC - https://github.com/dcposch\n\nconst util = require('./util')\n\n// 64-bit unsigned addition\n// Sets v[a,a+1] += v[b,b+1]\n// v should be a Uint32Array\nfunction ADD64AA (v, a, b) {\n const o0 = v[a] + v[b]\n let o1 = v[a + 1] + v[b + 1]\n if (o0 >= 0x100000000) {\n o1++\n }\n v[a] = o0\n v[a + 1] = o1\n}\n\n// 64-bit unsigned addition\n// Sets v[a,a+1] += b\n// b0 is the low 32 bits of b, b1 represents the high 32 bits\nfunction ADD64AC (v, a, b0, b1) {\n let o0 = v[a] + b0\n if (b0 < 0) {\n o0 += 0x100000000\n }\n let o1 = v[a + 1] + b1\n if (o0 >= 0x100000000) {\n o1++\n }\n v[a] = o0\n v[a + 1] = o1\n}\n\n// Little-endian byte access\nfunction B2B_GET32 (arr, i) {\n return arr[i] ^ (arr[i + 1] << 8) ^ (arr[i + 2] << 16) ^ (arr[i + 3] << 24)\n}\n\n// G Mixing function\n// The ROTRs are inlined for speed\nfunction B2B_G (a, b, c, d, ix, iy) {\n const x0 = m[ix]\n const x1 = m[ix + 1]\n const y0 = m[iy]\n const y1 = m[iy + 1]\n\n ADD64AA(v, a, b) // v[a,a+1] += v[b,b+1] ... in JS we must store a uint64 as two uint32s\n ADD64AC(v, a, x0, x1) // v[a, a+1] += x ... x0 is the low 32 bits of x, x1 is the high 32 bits\n\n // v[d,d+1] = (v[d,d+1] xor v[a,a+1]) rotated to the right by 32 bits\n let xor0 = v[d] ^ v[a]\n let xor1 = v[d + 1] ^ v[a + 1]\n v[d] = xor1\n v[d + 1] = xor0\n\n ADD64AA(v, c, d)\n\n // v[b,b+1] = (v[b,b+1] xor v[c,c+1]) rotated right by 24 bits\n xor0 = v[b] ^ v[c]\n xor1 = v[b + 1] ^ v[c + 1]\n v[b] = (xor0 >>> 24) ^ (xor1 << 8)\n v[b + 1] = (xor1 >>> 24) ^ (xor0 << 8)\n\n ADD64AA(v, a, b)\n ADD64AC(v, a, y0, y1)\n\n // v[d,d+1] = (v[d,d+1] xor v[a,a+1]) rotated right by 16 bits\n xor0 = v[d] ^ v[a]\n xor1 = v[d + 1] ^ v[a + 1]\n v[d] = (xor0 >>> 16) ^ (xor1 << 16)\n v[d + 1] = (xor1 >>> 16) ^ (xor0 << 16)\n\n ADD64AA(v, c, d)\n\n // v[b,b+1] = (v[b,b+1] xor v[c,c+1]) rotated right by 63 bits\n xor0 = v[b] ^ v[c]\n xor1 = v[b + 1] ^ v[c + 1]\n v[b] = (xor1 >>> 31) ^ (xor0 << 1)\n v[b + 1] = (xor0 >>> 31) ^ (xor1 << 1)\n}\n\n// Initialization Vector\nconst BLAKE2B_IV32 = new Uint32Array([\n 0xf3bcc908, 0x6a09e667, 0x84caa73b, 0xbb67ae85, 0xfe94f82b, 0x3c6ef372,\n 0x5f1d36f1, 0xa54ff53a, 0xade682d1, 0x510e527f, 0x2b3e6c1f, 0x9b05688c,\n 0xfb41bd6b, 0x1f83d9ab, 0x137e2179, 0x5be0cd19\n])\n\nconst SIGMA8 = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 14, 10, 4, 8, 9, 15, 13,\n 6, 1, 12, 0, 2, 11, 7, 5, 3, 11, 8, 12, 0, 5, 2, 15, 13, 10, 14, 3, 6, 7, 1,\n 9, 4, 7, 9, 3, 1, 13, 12, 11, 14, 2, 6, 5, 10, 4, 0, 15, 8, 9, 0, 5, 7, 2, 4,\n 10, 15, 14, 1, 11, 12, 6, 8, 3, 13, 2, 12, 6, 10, 0, 11, 8, 3, 4, 13, 7, 5,\n 15, 14, 1, 9, 12, 5, 1, 15, 14, 13, 4, 10, 0, 7, 6, 3, 9, 2, 8, 11, 13, 11, 7,\n 14, 12, 1, 3, 9, 5, 0, 15, 4, 8, 6, 2, 10, 6, 15, 14, 9, 11, 3, 0, 8, 12, 2,\n 13, 7, 1, 4, 10, 5, 10, 2, 8, 4, 7, 6, 1, 5, 15, 11, 9, 14, 3, 12, 13, 0, 0,\n 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 14, 10, 4, 8, 9, 15, 13, 6,\n 1, 12, 0, 2, 11, 7, 5, 3\n]\n\n// These are offsets into a uint64 buffer.\n// Multiply them all by 2 to make them offsets into a uint32 buffer,\n// because this is Javascript and we don't have uint64s\nconst SIGMA82 = new Uint8Array(\n SIGMA8.map(function (x) {\n return x * 2\n })\n)\n\n// Compression function. 'last' flag indicates last block.\n// Note we're representing 16 uint64s as 32 uint32s\nconst v = new Uint32Array(32)\nconst m = new Uint32Array(32)\nfunction blake2bCompress (ctx, last) {\n let i = 0\n\n // init work variables\n for (i = 0; i < 16; i++) {\n v[i] = ctx.h[i]\n v[i + 16] = BLAKE2B_IV32[i]\n }\n\n // low 64 bits of offset\n v[24] = v[24] ^ ctx.t\n v[25] = v[25] ^ (ctx.t / 0x100000000)\n // high 64 bits not supported, offset may not be higher than 2**53-1\n\n // last block flag set ?\n if (last) {\n v[28] = ~v[28]\n v[29] = ~v[29]\n }\n\n // get little-endian words\n for (i = 0; i < 32; i++) {\n m[i] = B2B_GET32(ctx.b, 4 * i)\n }\n\n // twelve rounds of mixing\n // uncomment the DebugPrint calls to log the computation\n // and match the RFC sample documentation\n // util.debugPrint(' m[16]', m, 64)\n for (i = 0; i < 12; i++) {\n // util.debugPrint(' (i=' + (i < 10 ? ' ' : '') + i + ') v[16]', v, 64)\n B2B_G(0, 8, 16, 24, SIGMA82[i * 16 + 0], SIGMA82[i * 16 + 1])\n B2B_G(2, 10, 18, 26, SIGMA82[i * 16 + 2], SIGMA82[i * 16 + 3])\n B2B_G(4, 12, 20, 28, SIGMA82[i * 16 + 4], SIGMA82[i * 16 + 5])\n B2B_G(6, 14, 22, 30, SIGMA82[i * 16 + 6], SIGMA82[i * 16 + 7])\n B2B_G(0, 10, 20, 30, SIGMA82[i * 16 + 8], SIGMA82[i * 16 + 9])\n B2B_G(2, 12, 22, 24, SIGMA82[i * 16 + 10], SIGMA82[i * 16 + 11])\n B2B_G(4, 14, 16, 26, SIGMA82[i * 16 + 12], SIGMA82[i * 16 + 13])\n B2B_G(6, 8, 18, 28, SIGMA82[i * 16 + 14], SIGMA82[i * 16 + 15])\n }\n // util.debugPrint(' (i=12) v[16]', v, 64)\n\n for (i = 0; i < 16; i++) {\n ctx.h[i] = ctx.h[i] ^ v[i] ^ v[i + 16]\n }\n // util.debugPrint('h[8]', ctx.h, 64)\n}\n\n// reusable parameterBlock\nconst parameterBlock = new Uint8Array([\n 0,\n 0,\n 0,\n 0, // 0: outlen, keylen, fanout, depth\n 0,\n 0,\n 0,\n 0, // 4: leaf length, sequential mode\n 0,\n 0,\n 0,\n 0, // 8: node offset\n 0,\n 0,\n 0,\n 0, // 12: node offset\n 0,\n 0,\n 0,\n 0, // 16: node depth, inner length, rfu\n 0,\n 0,\n 0,\n 0, // 20: rfu\n 0,\n 0,\n 0,\n 0, // 24: rfu\n 0,\n 0,\n 0,\n 0, // 28: rfu\n 0,\n 0,\n 0,\n 0, // 32: salt\n 0,\n 0,\n 0,\n 0, // 36: salt\n 0,\n 0,\n 0,\n 0, // 40: salt\n 0,\n 0,\n 0,\n 0, // 44: salt\n 0,\n 0,\n 0,\n 0, // 48: personal\n 0,\n 0,\n 0,\n 0, // 52: personal\n 0,\n 0,\n 0,\n 0, // 56: personal\n 0,\n 0,\n 0,\n 0 // 60: personal\n])\n\n// Creates a BLAKE2b hashing context\n// Requires an output length between 1 and 64 bytes\n// Takes an optional Uint8Array key\n// Takes an optinal Uint8Array salt\n// Takes an optinal Uint8Array personal\nfunction blake2bInit (outlen, key, salt, personal) {\n if (outlen === 0 || outlen > 64) {\n throw new Error('Illegal output length, expected 0 < length <= 64')\n }\n if (key && key.length > 64) {\n throw new Error('Illegal key, expected Uint8Array with 0 < length <= 64')\n }\n if (salt && salt.length !== 16) {\n throw new Error('Illegal salt, expected Uint8Array with length is 16')\n }\n if (personal && personal.length !== 16) {\n throw new Error('Illegal personal, expected Uint8Array with length is 16')\n }\n\n // state, 'param block'\n const ctx = {\n b: new Uint8Array(128),\n h: new Uint32Array(16),\n t: 0, // input count\n c: 0, // pointer within buffer\n outlen: outlen // output length in bytes\n }\n\n // initialize parameterBlock before usage\n parameterBlock.fill(0)\n parameterBlock[0] = outlen\n if (key) parameterBlock[1] = key.length\n parameterBlock[2] = 1 // fanout\n parameterBlock[3] = 1 // depth\n if (salt) parameterBlock.set(salt, 32)\n if (personal) parameterBlock.set(personal, 48)\n\n // initialize hash state\n for (let i = 0; i < 16; i++) {\n ctx.h[i] = BLAKE2B_IV32[i] ^ B2B_GET32(parameterBlock, i * 4)\n }\n\n // key the hash, if applicable\n if (key) {\n blake2bUpdate(ctx, key)\n // at the end\n ctx.c = 128\n }\n\n return ctx\n}\n\n// Updates a BLAKE2b streaming hash\n// Requires hash context and Uint8Array (byte array)\nfunction blake2bUpdate (ctx, input) {\n for (let i = 0; i < input.length; i++) {\n if (ctx.c === 128) {\n // buffer full ?\n ctx.t += ctx.c // add counters\n blake2bCompress(ctx, false) // compress (not last)\n ctx.c = 0 // counter to zero\n }\n ctx.b[ctx.c++] = input[i]\n }\n}\n\n// Completes a BLAKE2b streaming hash\n// Returns a Uint8Array containing the message digest\nfunction blake2bFinal (ctx) {\n ctx.t += ctx.c // mark last block offset\n\n while (ctx.c < 128) {\n // fill up with zeros\n ctx.b[ctx.c++] = 0\n }\n blake2bCompress(ctx, true) // final block flag = 1\n\n // little endian convert and store\n const out = new Uint8Array(ctx.outlen)\n for (let i = 0; i < ctx.outlen; i++) {\n out[i] = ctx.h[i >> 2] >> (8 * (i & 3))\n }\n return out\n}\n\n// Computes the BLAKE2B hash of a string or byte array, and returns a Uint8Array\n//\n// Returns a n-byte Uint8Array\n//\n// Parameters:\n// - input - the input bytes, as a string, Buffer or Uint8Array\n// - key - optional key Uint8Array, up to 64 bytes\n// - outlen - optional output length in bytes, default 64\n// - salt - optional salt bytes, string, Buffer or Uint8Array\n// - personal - optional personal bytes, string, Buffer or Uint8Array\nfunction blake2b (input, key, outlen, salt, personal) {\n // preprocess inputs\n outlen = outlen || 64\n input = util.normalizeInput(input)\n if (salt) {\n salt = util.normalizeInput(salt)\n }\n if (personal) {\n personal = util.normalizeInput(personal)\n }\n\n // do the math\n const ctx = blake2bInit(outlen, key, salt, personal)\n blake2bUpdate(ctx, input)\n return blake2bFinal(ctx)\n}\n\n// Computes the BLAKE2B hash of a string or byte array\n//\n// Returns an n-byte hash in hex, all lowercase\n//\n// Parameters:\n// - input - the input bytes, as a string, Buffer, or Uint8Array\n// - key - optional key Uint8Array, up to 64 bytes\n// - outlen - optional output length in bytes, default 64\n// - salt - optional salt bytes, string, Buffer or Uint8Array\n// - personal - optional personal bytes, string, Buffer or Uint8Array\nfunction blake2bHex (input, key, outlen, salt, personal) {\n const output = blake2b(input, key, outlen, salt, personal)\n return util.toHex(output)\n}\n\nmodule.exports = {\n blake2b: blake2b,\n blake2bHex: blake2bHex,\n blake2bInit: blake2bInit,\n blake2bUpdate: blake2bUpdate,\n blake2bFinal: blake2bFinal\n}\n","// BLAKE2s hash function in pure Javascript\n// Adapted from the reference implementation in RFC7693\n// Ported to Javascript by DC - https://github.com/dcposch\n\nconst util = require('./util')\n\n// Little-endian byte access.\n// Expects a Uint8Array and an index\n// Returns the little-endian uint32 at v[i..i+3]\nfunction B2S_GET32 (v, i) {\n return v[i] ^ (v[i + 1] << 8) ^ (v[i + 2] << 16) ^ (v[i + 3] << 24)\n}\n\n// Mixing function G.\nfunction B2S_G (a, b, c, d, x, y) {\n v[a] = v[a] + v[b] + x\n v[d] = ROTR32(v[d] ^ v[a], 16)\n v[c] = v[c] + v[d]\n v[b] = ROTR32(v[b] ^ v[c], 12)\n v[a] = v[a] + v[b] + y\n v[d] = ROTR32(v[d] ^ v[a], 8)\n v[c] = v[c] + v[d]\n v[b] = ROTR32(v[b] ^ v[c], 7)\n}\n\n// 32-bit right rotation\n// x should be a uint32\n// y must be between 1 and 31, inclusive\nfunction ROTR32 (x, y) {\n return (x >>> y) ^ (x << (32 - y))\n}\n\n// Initialization Vector.\nconst BLAKE2S_IV = new Uint32Array([\n 0x6a09e667,\n 0xbb67ae85,\n 0x3c6ef372,\n 0xa54ff53a,\n 0x510e527f,\n 0x9b05688c,\n 0x1f83d9ab,\n 0x5be0cd19\n])\n\nconst SIGMA = new Uint8Array([\n 0,\n 1,\n 2,\n 3,\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 11,\n 12,\n 13,\n 14,\n 15,\n 14,\n 10,\n 4,\n 8,\n 9,\n 15,\n 13,\n 6,\n 1,\n 12,\n 0,\n 2,\n 11,\n 7,\n 5,\n 3,\n 11,\n 8,\n 12,\n 0,\n 5,\n 2,\n 15,\n 13,\n 10,\n 14,\n 3,\n 6,\n 7,\n 1,\n 9,\n 4,\n 7,\n 9,\n 3,\n 1,\n 13,\n 12,\n 11,\n 14,\n 2,\n 6,\n 5,\n 10,\n 4,\n 0,\n 15,\n 8,\n 9,\n 0,\n 5,\n 7,\n 2,\n 4,\n 10,\n 15,\n 14,\n 1,\n 11,\n 12,\n 6,\n 8,\n 3,\n 13,\n 2,\n 12,\n 6,\n 10,\n 0,\n 11,\n 8,\n 3,\n 4,\n 13,\n 7,\n 5,\n 15,\n 14,\n 1,\n 9,\n 12,\n 5,\n 1,\n 15,\n 14,\n 13,\n 4,\n 10,\n 0,\n 7,\n 6,\n 3,\n 9,\n 2,\n 8,\n 11,\n 13,\n 11,\n 7,\n 14,\n 12,\n 1,\n 3,\n 9,\n 5,\n 0,\n 15,\n 4,\n 8,\n 6,\n 2,\n 10,\n 6,\n 15,\n 14,\n 9,\n 11,\n 3,\n 0,\n 8,\n 12,\n 2,\n 13,\n 7,\n 1,\n 4,\n 10,\n 5,\n 10,\n 2,\n 8,\n 4,\n 7,\n 6,\n 1,\n 5,\n 15,\n 11,\n 9,\n 14,\n 3,\n 12,\n 13,\n 0\n])\n\n// Compression function. \"last\" flag indicates last block\nconst v = new Uint32Array(16)\nconst m = new Uint32Array(16)\nfunction blake2sCompress (ctx, last) {\n let i = 0\n for (i = 0; i < 8; i++) {\n // init work variables\n v[i] = ctx.h[i]\n v[i + 8] = BLAKE2S_IV[i]\n }\n\n v[12] ^= ctx.t // low 32 bits of offset\n v[13] ^= ctx.t / 0x100000000 // high 32 bits\n if (last) {\n // last block flag set ?\n v[14] = ~v[14]\n }\n\n for (i = 0; i < 16; i++) {\n // get little-endian words\n m[i] = B2S_GET32(ctx.b, 4 * i)\n }\n\n // ten rounds of mixing\n // uncomment the DebugPrint calls to log the computation\n // and match the RFC sample documentation\n // util.debugPrint(' m[16]', m, 32)\n for (i = 0; i < 10; i++) {\n // util.debugPrint(' (i=' + i + ') v[16]', v, 32)\n B2S_G(0, 4, 8, 12, m[SIGMA[i * 16 + 0]], m[SIGMA[i * 16 + 1]])\n B2S_G(1, 5, 9, 13, m[SIGMA[i * 16 + 2]], m[SIGMA[i * 16 + 3]])\n B2S_G(2, 6, 10, 14, m[SIGMA[i * 16 + 4]], m[SIGMA[i * 16 + 5]])\n B2S_G(3, 7, 11, 15, m[SIGMA[i * 16 + 6]], m[SIGMA[i * 16 + 7]])\n B2S_G(0, 5, 10, 15, m[SIGMA[i * 16 + 8]], m[SIGMA[i * 16 + 9]])\n B2S_G(1, 6, 11, 12, m[SIGMA[i * 16 + 10]], m[SIGMA[i * 16 + 11]])\n B2S_G(2, 7, 8, 13, m[SIGMA[i * 16 + 12]], m[SIGMA[i * 16 + 13]])\n B2S_G(3, 4, 9, 14, m[SIGMA[i * 16 + 14]], m[SIGMA[i * 16 + 15]])\n }\n // util.debugPrint(' (i=10) v[16]', v, 32)\n\n for (i = 0; i < 8; i++) {\n ctx.h[i] ^= v[i] ^ v[i + 8]\n }\n // util.debugPrint('h[8]', ctx.h, 32)\n}\n\n// Creates a BLAKE2s hashing context\n// Requires an output length between 1 and 32 bytes\n// Takes an optional Uint8Array key\nfunction blake2sInit (outlen, key) {\n if (!(outlen > 0 && outlen <= 32)) {\n throw new Error('Incorrect output length, should be in [1, 32]')\n }\n const keylen = key ? key.length : 0\n if (key && !(keylen > 0 && keylen <= 32)) {\n throw new Error('Incorrect key length, should be in [1, 32]')\n }\n\n const ctx = {\n h: new Uint32Array(BLAKE2S_IV), // hash state\n b: new Uint8Array(64), // input block\n c: 0, // pointer within block\n t: 0, // input count\n outlen: outlen // output length in bytes\n }\n ctx.h[0] ^= 0x01010000 ^ (keylen << 8) ^ outlen\n\n if (keylen > 0) {\n blake2sUpdate(ctx, key)\n ctx.c = 64 // at the end\n }\n\n return ctx\n}\n\n// Updates a BLAKE2s streaming hash\n// Requires hash context and Uint8Array (byte array)\nfunction blake2sUpdate (ctx, input) {\n for (let i = 0; i < input.length; i++) {\n if (ctx.c === 64) {\n // buffer full ?\n ctx.t += ctx.c // add counters\n blake2sCompress(ctx, false) // compress (not last)\n ctx.c = 0 // counter to zero\n }\n ctx.b[ctx.c++] = input[i]\n }\n}\n\n// Completes a BLAKE2s streaming hash\n// Returns a Uint8Array containing the message digest\nfunction blake2sFinal (ctx) {\n ctx.t += ctx.c // mark last block offset\n while (ctx.c < 64) {\n // fill up with zeros\n ctx.b[ctx.c++] = 0\n }\n blake2sCompress(ctx, true) // final block flag = 1\n\n // little endian convert and store\n const out = new Uint8Array(ctx.outlen)\n for (let i = 0; i < ctx.outlen; i++) {\n out[i] = (ctx.h[i >> 2] >> (8 * (i & 3))) & 0xff\n }\n return out\n}\n\n// Computes the BLAKE2S hash of a string or byte array, and returns a Uint8Array\n//\n// Returns a n-byte Uint8Array\n//\n// Parameters:\n// - input - the input bytes, as a string, Buffer, or Uint8Array\n// - key - optional key Uint8Array, up to 32 bytes\n// - outlen - optional output length in bytes, default 64\nfunction blake2s (input, key, outlen) {\n // preprocess inputs\n outlen = outlen || 32\n input = util.normalizeInput(input)\n\n // do the math\n const ctx = blake2sInit(outlen, key)\n blake2sUpdate(ctx, input)\n return blake2sFinal(ctx)\n}\n\n// Computes the BLAKE2S hash of a string or byte array\n//\n// Returns an n-byte hash in hex, all lowercase\n//\n// Parameters:\n// - input - the input bytes, as a string, Buffer, or Uint8Array\n// - key - optional key Uint8Array, up to 32 bytes\n// - outlen - optional output length in bytes, default 64\nfunction blake2sHex (input, key, outlen) {\n const output = blake2s(input, key, outlen)\n return util.toHex(output)\n}\n\nmodule.exports = {\n blake2s: blake2s,\n blake2sHex: blake2sHex,\n blake2sInit: blake2sInit,\n blake2sUpdate: blake2sUpdate,\n blake2sFinal: blake2sFinal\n}\n","const b2b = require('./blake2b')\nconst b2s = require('./blake2s')\n\nmodule.exports = {\n blake2b: b2b.blake2b,\n blake2bHex: b2b.blake2bHex,\n blake2bInit: b2b.blake2bInit,\n blake2bUpdate: b2b.blake2bUpdate,\n blake2bFinal: b2b.blake2bFinal,\n blake2s: b2s.blake2s,\n blake2sHex: b2s.blake2sHex,\n blake2sInit: b2s.blake2sInit,\n blake2sUpdate: b2s.blake2sUpdate,\n blake2sFinal: b2s.blake2sFinal\n}\n","const ERROR_MSG_INPUT = 'Input must be an string, Buffer or Uint8Array'\n\n// For convenience, let people hash a string, not just a Uint8Array\nfunction normalizeInput (input) {\n let ret\n if (input instanceof Uint8Array) {\n ret = input\n } else if (typeof input === 'string') {\n const encoder = new TextEncoder()\n ret = encoder.encode(input)\n } else {\n throw new Error(ERROR_MSG_INPUT)\n }\n return ret\n}\n\n// Converts a Uint8Array to a hexadecimal string\n// For example, toHex([255, 0, 255]) returns \"ff00ff\"\nfunction toHex (bytes) {\n return Array.prototype.map\n .call(bytes, function (n) {\n return (n < 16 ? '0' : '') + n.toString(16)\n })\n .join('')\n}\n\n// Converts any value in [0...2^32-1] to an 8-character hex string\nfunction uint32ToHex (val) {\n return (0x100000000 + val).toString(16).substring(1)\n}\n\n// For debugging: prints out hash state in the same format as the RFC\n// sample computation exactly, so that you can diff\nfunction debugPrint (label, arr, size) {\n let msg = '\\n' + label + ' = '\n for (let i = 0; i < arr.length; i += 2) {\n if (size === 32) {\n msg += uint32ToHex(arr[i]).toUpperCase()\n msg += ' '\n msg += uint32ToHex(arr[i + 1]).toUpperCase()\n } else if (size === 64) {\n msg += uint32ToHex(arr[i + 1]).toUpperCase()\n msg += uint32ToHex(arr[i]).toUpperCase()\n } else throw new Error('Invalid size ' + size)\n if (i % 6 === 4) {\n msg += '\\n' + new Array(label.length + 4).join(' ')\n } else if (i < arr.length - 2) {\n msg += ' '\n }\n }\n console.log(msg)\n}\n\n// For performance testing: generates N bytes of input, hashes M times\n// Measures and prints MB/second hash performance each time\nfunction testSpeed (hashFn, N, M) {\n let startMs = new Date().getTime()\n\n const input = new Uint8Array(N)\n for (let i = 0; i < N; i++) {\n input[i] = i % 256\n }\n const genMs = new Date().getTime()\n console.log('Generated random input in ' + (genMs - startMs) + 'ms')\n startMs = genMs\n\n for (let i = 0; i < M; i++) {\n const hashHex = hashFn(input)\n const hashMs = new Date().getTime()\n const ms = hashMs - startMs\n startMs = hashMs\n console.log('Hashed in ' + ms + 'ms: ' + hashHex.substring(0, 20) + '...')\n console.log(\n Math.round((N / (1 << 20) / (ms / 1000)) * 100) / 100 + ' MB PER SECOND'\n )\n }\n}\n\nmodule.exports = {\n normalizeInput: normalizeInput,\n toHex: toHex,\n debugPrint: debugPrint,\n testSpeed: testSpeed\n}\n","(function (module, exports) {\n 'use strict';\n\n // Utils\n function assert (val, msg) {\n if (!val) throw new Error(msg || 'Assertion failed');\n }\n\n // Could use `inherits` module, but don't want to move from single file\n // architecture yet.\n function inherits (ctor, superCtor) {\n ctor.super_ = superCtor;\n var TempCtor = function () {};\n TempCtor.prototype = superCtor.prototype;\n ctor.prototype = new TempCtor();\n ctor.prototype.constructor = ctor;\n }\n\n // BN\n\n function BN (number, base, endian) {\n if (BN.isBN(number)) {\n return number;\n }\n\n this.negative = 0;\n this.words = null;\n this.length = 0;\n\n // Reduction context\n this.red = null;\n\n if (number !== null) {\n if (base === 'le' || base === 'be') {\n endian = base;\n base = 10;\n }\n\n this._init(number || 0, base || 10, endian || 'be');\n }\n }\n if (typeof module === 'object') {\n module.exports = BN;\n } else {\n exports.BN = BN;\n }\n\n BN.BN = BN;\n BN.wordSize = 26;\n\n var Buffer;\n try {\n if (typeof window !== 'undefined' && typeof window.Buffer !== 'undefined') {\n Buffer = window.Buffer;\n } else {\n Buffer = require('buffer').Buffer;\n }\n } catch (e) {\n }\n\n BN.isBN = function isBN (num) {\n if (num instanceof BN) {\n return true;\n }\n\n return num !== null && typeof num === 'object' &&\n num.constructor.wordSize === BN.wordSize && Array.isArray(num.words);\n };\n\n BN.max = function max (left, right) {\n if (left.cmp(right) > 0) return left;\n return right;\n };\n\n BN.min = function min (left, right) {\n if (left.cmp(right) < 0) return left;\n return right;\n };\n\n BN.prototype._init = function init (number, base, endian) {\n if (typeof number === 'number') {\n return this._initNumber(number, base, endian);\n }\n\n if (typeof number === 'object') {\n return this._initArray(number, base, endian);\n }\n\n if (base === 'hex') {\n base = 16;\n }\n assert(base === (base | 0) && base >= 2 && base <= 36);\n\n number = number.toString().replace(/\\s+/g, '');\n var start = 0;\n if (number[0] === '-') {\n start++;\n this.negative = 1;\n }\n\n if (start < number.length) {\n if (base === 16) {\n this._parseHex(number, start, endian);\n } else {\n this._parseBase(number, base, start);\n if (endian === 'le') {\n this._initArray(this.toArray(), base, endian);\n }\n }\n }\n };\n\n BN.prototype._initNumber = function _initNumber (number, base, endian) {\n if (number < 0) {\n this.negative = 1;\n number = -number;\n }\n if (number < 0x4000000) {\n this.words = [ number & 0x3ffffff ];\n this.length = 1;\n } else if (number < 0x10000000000000) {\n this.words = [\n number & 0x3ffffff,\n (number / 0x4000000) & 0x3ffffff\n ];\n this.length = 2;\n } else {\n assert(number < 0x20000000000000); // 2 ^ 53 (unsafe)\n this.words = [\n number & 0x3ffffff,\n (number / 0x4000000) & 0x3ffffff,\n 1\n ];\n this.length = 3;\n }\n\n if (endian !== 'le') return;\n\n // Reverse the bytes\n this._initArray(this.toArray(), base, endian);\n };\n\n BN.prototype._initArray = function _initArray (number, base, endian) {\n // Perhaps a Uint8Array\n assert(typeof number.length === 'number');\n if (number.length <= 0) {\n this.words = [ 0 ];\n this.length = 1;\n return this;\n }\n\n this.length = Math.ceil(number.length / 3);\n this.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n this.words[i] = 0;\n }\n\n var j, w;\n var off = 0;\n if (endian === 'be') {\n for (i = number.length - 1, j = 0; i >= 0; i -= 3) {\n w = number[i] | (number[i - 1] << 8) | (number[i - 2] << 16);\n this.words[j] |= (w << off) & 0x3ffffff;\n this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff;\n off += 24;\n if (off >= 26) {\n off -= 26;\n j++;\n }\n }\n } else if (endian === 'le') {\n for (i = 0, j = 0; i < number.length; i += 3) {\n w = number[i] | (number[i + 1] << 8) | (number[i + 2] << 16);\n this.words[j] |= (w << off) & 0x3ffffff;\n this.words[j + 1] = (w >>> (26 - off)) & 0x3ffffff;\n off += 24;\n if (off >= 26) {\n off -= 26;\n j++;\n }\n }\n }\n return this.strip();\n };\n\n function parseHex4Bits (string, index) {\n var c = string.charCodeAt(index);\n // 'A' - 'F'\n if (c >= 65 && c <= 70) {\n return c - 55;\n // 'a' - 'f'\n } else if (c >= 97 && c <= 102) {\n return c - 87;\n // '0' - '9'\n } else {\n return (c - 48) & 0xf;\n }\n }\n\n function parseHexByte (string, lowerBound, index) {\n var r = parseHex4Bits(string, index);\n if (index - 1 >= lowerBound) {\n r |= parseHex4Bits(string, index - 1) << 4;\n }\n return r;\n }\n\n BN.prototype._parseHex = function _parseHex (number, start, endian) {\n // Create possibly bigger array to ensure that it fits the number\n this.length = Math.ceil((number.length - start) / 6);\n this.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n this.words[i] = 0;\n }\n\n // 24-bits chunks\n var off = 0;\n var j = 0;\n\n var w;\n if (endian === 'be') {\n for (i = number.length - 1; i >= start; i -= 2) {\n w = parseHexByte(number, start, i) << off;\n this.words[j] |= w & 0x3ffffff;\n if (off >= 18) {\n off -= 18;\n j += 1;\n this.words[j] |= w >>> 26;\n } else {\n off += 8;\n }\n }\n } else {\n var parseLength = number.length - start;\n for (i = parseLength % 2 === 0 ? start + 1 : start; i < number.length; i += 2) {\n w = parseHexByte(number, start, i) << off;\n this.words[j] |= w & 0x3ffffff;\n if (off >= 18) {\n off -= 18;\n j += 1;\n this.words[j] |= w >>> 26;\n } else {\n off += 8;\n }\n }\n }\n\n this.strip();\n };\n\n function parseBase (str, start, end, mul) {\n var r = 0;\n var len = Math.min(str.length, end);\n for (var i = start; i < len; i++) {\n var c = str.charCodeAt(i) - 48;\n\n r *= mul;\n\n // 'a'\n if (c >= 49) {\n r += c - 49 + 0xa;\n\n // 'A'\n } else if (c >= 17) {\n r += c - 17 + 0xa;\n\n // '0' - '9'\n } else {\n r += c;\n }\n }\n return r;\n }\n\n BN.prototype._parseBase = function _parseBase (number, base, start) {\n // Initialize as zero\n this.words = [ 0 ];\n this.length = 1;\n\n // Find length of limb in base\n for (var limbLen = 0, limbPow = 1; limbPow <= 0x3ffffff; limbPow *= base) {\n limbLen++;\n }\n limbLen--;\n limbPow = (limbPow / base) | 0;\n\n var total = number.length - start;\n var mod = total % limbLen;\n var end = Math.min(total, total - mod) + start;\n\n var word = 0;\n for (var i = start; i < end; i += limbLen) {\n word = parseBase(number, i, i + limbLen, base);\n\n this.imuln(limbPow);\n if (this.words[0] + word < 0x4000000) {\n this.words[0] += word;\n } else {\n this._iaddn(word);\n }\n }\n\n if (mod !== 0) {\n var pow = 1;\n word = parseBase(number, i, number.length, base);\n\n for (i = 0; i < mod; i++) {\n pow *= base;\n }\n\n this.imuln(pow);\n if (this.words[0] + word < 0x4000000) {\n this.words[0] += word;\n } else {\n this._iaddn(word);\n }\n }\n\n this.strip();\n };\n\n BN.prototype.copy = function copy (dest) {\n dest.words = new Array(this.length);\n for (var i = 0; i < this.length; i++) {\n dest.words[i] = this.words[i];\n }\n dest.length = this.length;\n dest.negative = this.negative;\n dest.red = this.red;\n };\n\n BN.prototype.clone = function clone () {\n var r = new BN(null);\n this.copy(r);\n return r;\n };\n\n BN.prototype._expand = function _expand (size) {\n while (this.length < size) {\n this.words[this.length++] = 0;\n }\n return this;\n };\n\n // Remove leading `0` from `this`\n BN.prototype.strip = function strip () {\n while (this.length > 1 && this.words[this.length - 1] === 0) {\n this.length--;\n }\n return this._normSign();\n };\n\n BN.prototype._normSign = function _normSign () {\n // -0 = 0\n if (this.length === 1 && this.words[0] === 0) {\n this.negative = 0;\n }\n return this;\n };\n\n BN.prototype.inspect = function inspect () {\n return (this.red ? '';\n };\n\n /*\n\n var zeros = [];\n var groupSizes = [];\n var groupBases = [];\n\n var s = '';\n var i = -1;\n while (++i < BN.wordSize) {\n zeros[i] = s;\n s += '0';\n }\n groupSizes[0] = 0;\n groupSizes[1] = 0;\n groupBases[0] = 0;\n groupBases[1] = 0;\n var base = 2 - 1;\n while (++base < 36 + 1) {\n var groupSize = 0;\n var groupBase = 1;\n while (groupBase < (1 << BN.wordSize) / base) {\n groupBase *= base;\n groupSize += 1;\n }\n groupSizes[base] = groupSize;\n groupBases[base] = groupBase;\n }\n\n */\n\n var zeros = [\n '',\n '0',\n '00',\n '000',\n '0000',\n '00000',\n '000000',\n '0000000',\n '00000000',\n '000000000',\n '0000000000',\n '00000000000',\n '000000000000',\n '0000000000000',\n '00000000000000',\n '000000000000000',\n '0000000000000000',\n '00000000000000000',\n '000000000000000000',\n '0000000000000000000',\n '00000000000000000000',\n '000000000000000000000',\n '0000000000000000000000',\n '00000000000000000000000',\n '000000000000000000000000',\n '0000000000000000000000000'\n ];\n\n var groupSizes = [\n 0, 0,\n 25, 16, 12, 11, 10, 9, 8,\n 8, 7, 7, 7, 7, 6, 6,\n 6, 6, 6, 6, 6, 5, 5,\n 5, 5, 5, 5, 5, 5, 5,\n 5, 5, 5, 5, 5, 5, 5\n ];\n\n var groupBases = [\n 0, 0,\n 33554432, 43046721, 16777216, 48828125, 60466176, 40353607, 16777216,\n 43046721, 10000000, 19487171, 35831808, 62748517, 7529536, 11390625,\n 16777216, 24137569, 34012224, 47045881, 64000000, 4084101, 5153632,\n 6436343, 7962624, 9765625, 11881376, 14348907, 17210368, 20511149,\n 24300000, 28629151, 33554432, 39135393, 45435424, 52521875, 60466176\n ];\n\n BN.prototype.toString = function toString (base, padding) {\n base = base || 10;\n padding = padding | 0 || 1;\n\n var out;\n if (base === 16 || base === 'hex') {\n out = '';\n var off = 0;\n var carry = 0;\n for (var i = 0; i < this.length; i++) {\n var w = this.words[i];\n var word = (((w << off) | carry) & 0xffffff).toString(16);\n carry = (w >>> (24 - off)) & 0xffffff;\n if (carry !== 0 || i !== this.length - 1) {\n out = zeros[6 - word.length] + word + out;\n } else {\n out = word + out;\n }\n off += 2;\n if (off >= 26) {\n off -= 26;\n i--;\n }\n }\n if (carry !== 0) {\n out = carry.toString(16) + out;\n }\n while (out.length % padding !== 0) {\n out = '0' + out;\n }\n if (this.negative !== 0) {\n out = '-' + out;\n }\n return out;\n }\n\n if (base === (base | 0) && base >= 2 && base <= 36) {\n // var groupSize = Math.floor(BN.wordSize * Math.LN2 / Math.log(base));\n var groupSize = groupSizes[base];\n // var groupBase = Math.pow(base, groupSize);\n var groupBase = groupBases[base];\n out = '';\n var c = this.clone();\n c.negative = 0;\n while (!c.isZero()) {\n var r = c.modn(groupBase).toString(base);\n c = c.idivn(groupBase);\n\n if (!c.isZero()) {\n out = zeros[groupSize - r.length] + r + out;\n } else {\n out = r + out;\n }\n }\n if (this.isZero()) {\n out = '0' + out;\n }\n while (out.length % padding !== 0) {\n out = '0' + out;\n }\n if (this.negative !== 0) {\n out = '-' + out;\n }\n return out;\n }\n\n assert(false, 'Base should be between 2 and 36');\n };\n\n BN.prototype.toNumber = function toNumber () {\n var ret = this.words[0];\n if (this.length === 2) {\n ret += this.words[1] * 0x4000000;\n } else if (this.length === 3 && this.words[2] === 0x01) {\n // NOTE: at this stage it is known that the top bit is set\n ret += 0x10000000000000 + (this.words[1] * 0x4000000);\n } else if (this.length > 2) {\n assert(false, 'Number can only safely store up to 53 bits');\n }\n return (this.negative !== 0) ? -ret : ret;\n };\n\n BN.prototype.toJSON = function toJSON () {\n return this.toString(16);\n };\n\n BN.prototype.toBuffer = function toBuffer (endian, length) {\n assert(typeof Buffer !== 'undefined');\n return this.toArrayLike(Buffer, endian, length);\n };\n\n BN.prototype.toArray = function toArray (endian, length) {\n return this.toArrayLike(Array, endian, length);\n };\n\n BN.prototype.toArrayLike = function toArrayLike (ArrayType, endian, length) {\n var byteLength = this.byteLength();\n var reqLength = length || Math.max(1, byteLength);\n assert(byteLength <= reqLength, 'byte array longer than desired length');\n assert(reqLength > 0, 'Requested array length <= 0');\n\n this.strip();\n var littleEndian = endian === 'le';\n var res = new ArrayType(reqLength);\n\n var b, i;\n var q = this.clone();\n if (!littleEndian) {\n // Assume big-endian\n for (i = 0; i < reqLength - byteLength; i++) {\n res[i] = 0;\n }\n\n for (i = 0; !q.isZero(); i++) {\n b = q.andln(0xff);\n q.iushrn(8);\n\n res[reqLength - i - 1] = b;\n }\n } else {\n for (i = 0; !q.isZero(); i++) {\n b = q.andln(0xff);\n q.iushrn(8);\n\n res[i] = b;\n }\n\n for (; i < reqLength; i++) {\n res[i] = 0;\n }\n }\n\n return res;\n };\n\n if (Math.clz32) {\n BN.prototype._countBits = function _countBits (w) {\n return 32 - Math.clz32(w);\n };\n } else {\n BN.prototype._countBits = function _countBits (w) {\n var t = w;\n var r = 0;\n if (t >= 0x1000) {\n r += 13;\n t >>>= 13;\n }\n if (t >= 0x40) {\n r += 7;\n t >>>= 7;\n }\n if (t >= 0x8) {\n r += 4;\n t >>>= 4;\n }\n if (t >= 0x02) {\n r += 2;\n t >>>= 2;\n }\n return r + t;\n };\n }\n\n BN.prototype._zeroBits = function _zeroBits (w) {\n // Short-cut\n if (w === 0) return 26;\n\n var t = w;\n var r = 0;\n if ((t & 0x1fff) === 0) {\n r += 13;\n t >>>= 13;\n }\n if ((t & 0x7f) === 0) {\n r += 7;\n t >>>= 7;\n }\n if ((t & 0xf) === 0) {\n r += 4;\n t >>>= 4;\n }\n if ((t & 0x3) === 0) {\n r += 2;\n t >>>= 2;\n }\n if ((t & 0x1) === 0) {\n r++;\n }\n return r;\n };\n\n // Return number of used bits in a BN\n BN.prototype.bitLength = function bitLength () {\n var w = this.words[this.length - 1];\n var hi = this._countBits(w);\n return (this.length - 1) * 26 + hi;\n };\n\n function toBitArray (num) {\n var w = new Array(num.bitLength());\n\n for (var bit = 0; bit < w.length; bit++) {\n var off = (bit / 26) | 0;\n var wbit = bit % 26;\n\n w[bit] = (num.words[off] & (1 << wbit)) >>> wbit;\n }\n\n return w;\n }\n\n // Number of trailing zero bits\n BN.prototype.zeroBits = function zeroBits () {\n if (this.isZero()) return 0;\n\n var r = 0;\n for (var i = 0; i < this.length; i++) {\n var b = this._zeroBits(this.words[i]);\n r += b;\n if (b !== 26) break;\n }\n return r;\n };\n\n BN.prototype.byteLength = function byteLength () {\n return Math.ceil(this.bitLength() / 8);\n };\n\n BN.prototype.toTwos = function toTwos (width) {\n if (this.negative !== 0) {\n return this.abs().inotn(width).iaddn(1);\n }\n return this.clone();\n };\n\n BN.prototype.fromTwos = function fromTwos (width) {\n if (this.testn(width - 1)) {\n return this.notn(width).iaddn(1).ineg();\n }\n return this.clone();\n };\n\n BN.prototype.isNeg = function isNeg () {\n return this.negative !== 0;\n };\n\n // Return negative clone of `this`\n BN.prototype.neg = function neg () {\n return this.clone().ineg();\n };\n\n BN.prototype.ineg = function ineg () {\n if (!this.isZero()) {\n this.negative ^= 1;\n }\n\n return this;\n };\n\n // Or `num` with `this` in-place\n BN.prototype.iuor = function iuor (num) {\n while (this.length < num.length) {\n this.words[this.length++] = 0;\n }\n\n for (var i = 0; i < num.length; i++) {\n this.words[i] = this.words[i] | num.words[i];\n }\n\n return this.strip();\n };\n\n BN.prototype.ior = function ior (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuor(num);\n };\n\n // Or `num` with `this`\n BN.prototype.or = function or (num) {\n if (this.length > num.length) return this.clone().ior(num);\n return num.clone().ior(this);\n };\n\n BN.prototype.uor = function uor (num) {\n if (this.length > num.length) return this.clone().iuor(num);\n return num.clone().iuor(this);\n };\n\n // And `num` with `this` in-place\n BN.prototype.iuand = function iuand (num) {\n // b = min-length(num, this)\n var b;\n if (this.length > num.length) {\n b = num;\n } else {\n b = this;\n }\n\n for (var i = 0; i < b.length; i++) {\n this.words[i] = this.words[i] & num.words[i];\n }\n\n this.length = b.length;\n\n return this.strip();\n };\n\n BN.prototype.iand = function iand (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuand(num);\n };\n\n // And `num` with `this`\n BN.prototype.and = function and (num) {\n if (this.length > num.length) return this.clone().iand(num);\n return num.clone().iand(this);\n };\n\n BN.prototype.uand = function uand (num) {\n if (this.length > num.length) return this.clone().iuand(num);\n return num.clone().iuand(this);\n };\n\n // Xor `num` with `this` in-place\n BN.prototype.iuxor = function iuxor (num) {\n // a.length > b.length\n var a;\n var b;\n if (this.length > num.length) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n for (var i = 0; i < b.length; i++) {\n this.words[i] = a.words[i] ^ b.words[i];\n }\n\n if (this !== a) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n this.length = a.length;\n\n return this.strip();\n };\n\n BN.prototype.ixor = function ixor (num) {\n assert((this.negative | num.negative) === 0);\n return this.iuxor(num);\n };\n\n // Xor `num` with `this`\n BN.prototype.xor = function xor (num) {\n if (this.length > num.length) return this.clone().ixor(num);\n return num.clone().ixor(this);\n };\n\n BN.prototype.uxor = function uxor (num) {\n if (this.length > num.length) return this.clone().iuxor(num);\n return num.clone().iuxor(this);\n };\n\n // Not ``this`` with ``width`` bitwidth\n BN.prototype.inotn = function inotn (width) {\n assert(typeof width === 'number' && width >= 0);\n\n var bytesNeeded = Math.ceil(width / 26) | 0;\n var bitsLeft = width % 26;\n\n // Extend the buffer with leading zeroes\n this._expand(bytesNeeded);\n\n if (bitsLeft > 0) {\n bytesNeeded--;\n }\n\n // Handle complete words\n for (var i = 0; i < bytesNeeded; i++) {\n this.words[i] = ~this.words[i] & 0x3ffffff;\n }\n\n // Handle the residue\n if (bitsLeft > 0) {\n this.words[i] = ~this.words[i] & (0x3ffffff >> (26 - bitsLeft));\n }\n\n // And remove leading zeroes\n return this.strip();\n };\n\n BN.prototype.notn = function notn (width) {\n return this.clone().inotn(width);\n };\n\n // Set `bit` of `this`\n BN.prototype.setn = function setn (bit, val) {\n assert(typeof bit === 'number' && bit >= 0);\n\n var off = (bit / 26) | 0;\n var wbit = bit % 26;\n\n this._expand(off + 1);\n\n if (val) {\n this.words[off] = this.words[off] | (1 << wbit);\n } else {\n this.words[off] = this.words[off] & ~(1 << wbit);\n }\n\n return this.strip();\n };\n\n // Add `num` to `this` in-place\n BN.prototype.iadd = function iadd (num) {\n var r;\n\n // negative + positive\n if (this.negative !== 0 && num.negative === 0) {\n this.negative = 0;\n r = this.isub(num);\n this.negative ^= 1;\n return this._normSign();\n\n // positive + negative\n } else if (this.negative === 0 && num.negative !== 0) {\n num.negative = 0;\n r = this.isub(num);\n num.negative = 1;\n return r._normSign();\n }\n\n // a.length > b.length\n var a, b;\n if (this.length > num.length) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n var carry = 0;\n for (var i = 0; i < b.length; i++) {\n r = (a.words[i] | 0) + (b.words[i] | 0) + carry;\n this.words[i] = r & 0x3ffffff;\n carry = r >>> 26;\n }\n for (; carry !== 0 && i < a.length; i++) {\n r = (a.words[i] | 0) + carry;\n this.words[i] = r & 0x3ffffff;\n carry = r >>> 26;\n }\n\n this.length = a.length;\n if (carry !== 0) {\n this.words[this.length] = carry;\n this.length++;\n // Copy the rest of the words\n } else if (a !== this) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n return this;\n };\n\n // Add `num` to `this`\n BN.prototype.add = function add (num) {\n var res;\n if (num.negative !== 0 && this.negative === 0) {\n num.negative = 0;\n res = this.sub(num);\n num.negative ^= 1;\n return res;\n } else if (num.negative === 0 && this.negative !== 0) {\n this.negative = 0;\n res = num.sub(this);\n this.negative = 1;\n return res;\n }\n\n if (this.length > num.length) return this.clone().iadd(num);\n\n return num.clone().iadd(this);\n };\n\n // Subtract `num` from `this` in-place\n BN.prototype.isub = function isub (num) {\n // this - (-num) = this + num\n if (num.negative !== 0) {\n num.negative = 0;\n var r = this.iadd(num);\n num.negative = 1;\n return r._normSign();\n\n // -this - num = -(this + num)\n } else if (this.negative !== 0) {\n this.negative = 0;\n this.iadd(num);\n this.negative = 1;\n return this._normSign();\n }\n\n // At this point both numbers are positive\n var cmp = this.cmp(num);\n\n // Optimization - zeroify\n if (cmp === 0) {\n this.negative = 0;\n this.length = 1;\n this.words[0] = 0;\n return this;\n }\n\n // a > b\n var a, b;\n if (cmp > 0) {\n a = this;\n b = num;\n } else {\n a = num;\n b = this;\n }\n\n var carry = 0;\n for (var i = 0; i < b.length; i++) {\n r = (a.words[i] | 0) - (b.words[i] | 0) + carry;\n carry = r >> 26;\n this.words[i] = r & 0x3ffffff;\n }\n for (; carry !== 0 && i < a.length; i++) {\n r = (a.words[i] | 0) + carry;\n carry = r >> 26;\n this.words[i] = r & 0x3ffffff;\n }\n\n // Copy rest of the words\n if (carry === 0 && i < a.length && a !== this) {\n for (; i < a.length; i++) {\n this.words[i] = a.words[i];\n }\n }\n\n this.length = Math.max(this.length, i);\n\n if (a !== this) {\n this.negative = 1;\n }\n\n return this.strip();\n };\n\n // Subtract `num` from `this`\n BN.prototype.sub = function sub (num) {\n return this.clone().isub(num);\n };\n\n function smallMulTo (self, num, out) {\n out.negative = num.negative ^ self.negative;\n var len = (self.length + num.length) | 0;\n out.length = len;\n len = (len - 1) | 0;\n\n // Peel one iteration (compiler can't do it, because of code complexity)\n var a = self.words[0] | 0;\n var b = num.words[0] | 0;\n var r = a * b;\n\n var lo = r & 0x3ffffff;\n var carry = (r / 0x4000000) | 0;\n out.words[0] = lo;\n\n for (var k = 1; k < len; k++) {\n // Sum all words with the same `i + j = k` and accumulate `ncarry`,\n // note that ncarry could be >= 0x3ffffff\n var ncarry = carry >>> 26;\n var rword = carry & 0x3ffffff;\n var maxJ = Math.min(k, num.length - 1);\n for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) {\n var i = (k - j) | 0;\n a = self.words[i] | 0;\n b = num.words[j] | 0;\n r = a * b + rword;\n ncarry += (r / 0x4000000) | 0;\n rword = r & 0x3ffffff;\n }\n out.words[k] = rword | 0;\n carry = ncarry | 0;\n }\n if (carry !== 0) {\n out.words[k] = carry | 0;\n } else {\n out.length--;\n }\n\n return out.strip();\n }\n\n // TODO(indutny): it may be reasonable to omit it for users who don't need\n // to work with 256-bit numbers, otherwise it gives 20% improvement for 256-bit\n // multiplication (like elliptic secp256k1).\n var comb10MulTo = function comb10MulTo (self, num, out) {\n var a = self.words;\n var b = num.words;\n var o = out.words;\n var c = 0;\n var lo;\n var mid;\n var hi;\n var a0 = a[0] | 0;\n var al0 = a0 & 0x1fff;\n var ah0 = a0 >>> 13;\n var a1 = a[1] | 0;\n var al1 = a1 & 0x1fff;\n var ah1 = a1 >>> 13;\n var a2 = a[2] | 0;\n var al2 = a2 & 0x1fff;\n var ah2 = a2 >>> 13;\n var a3 = a[3] | 0;\n var al3 = a3 & 0x1fff;\n var ah3 = a3 >>> 13;\n var a4 = a[4] | 0;\n var al4 = a4 & 0x1fff;\n var ah4 = a4 >>> 13;\n var a5 = a[5] | 0;\n var al5 = a5 & 0x1fff;\n var ah5 = a5 >>> 13;\n var a6 = a[6] | 0;\n var al6 = a6 & 0x1fff;\n var ah6 = a6 >>> 13;\n var a7 = a[7] | 0;\n var al7 = a7 & 0x1fff;\n var ah7 = a7 >>> 13;\n var a8 = a[8] | 0;\n var al8 = a8 & 0x1fff;\n var ah8 = a8 >>> 13;\n var a9 = a[9] | 0;\n var al9 = a9 & 0x1fff;\n var ah9 = a9 >>> 13;\n var b0 = b[0] | 0;\n var bl0 = b0 & 0x1fff;\n var bh0 = b0 >>> 13;\n var b1 = b[1] | 0;\n var bl1 = b1 & 0x1fff;\n var bh1 = b1 >>> 13;\n var b2 = b[2] | 0;\n var bl2 = b2 & 0x1fff;\n var bh2 = b2 >>> 13;\n var b3 = b[3] | 0;\n var bl3 = b3 & 0x1fff;\n var bh3 = b3 >>> 13;\n var b4 = b[4] | 0;\n var bl4 = b4 & 0x1fff;\n var bh4 = b4 >>> 13;\n var b5 = b[5] | 0;\n var bl5 = b5 & 0x1fff;\n var bh5 = b5 >>> 13;\n var b6 = b[6] | 0;\n var bl6 = b6 & 0x1fff;\n var bh6 = b6 >>> 13;\n var b7 = b[7] | 0;\n var bl7 = b7 & 0x1fff;\n var bh7 = b7 >>> 13;\n var b8 = b[8] | 0;\n var bl8 = b8 & 0x1fff;\n var bh8 = b8 >>> 13;\n var b9 = b[9] | 0;\n var bl9 = b9 & 0x1fff;\n var bh9 = b9 >>> 13;\n\n out.negative = self.negative ^ num.negative;\n out.length = 19;\n /* k = 0 */\n lo = Math.imul(al0, bl0);\n mid = Math.imul(al0, bh0);\n mid = (mid + Math.imul(ah0, bl0)) | 0;\n hi = Math.imul(ah0, bh0);\n var w0 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w0 >>> 26)) | 0;\n w0 &= 0x3ffffff;\n /* k = 1 */\n lo = Math.imul(al1, bl0);\n mid = Math.imul(al1, bh0);\n mid = (mid + Math.imul(ah1, bl0)) | 0;\n hi = Math.imul(ah1, bh0);\n lo = (lo + Math.imul(al0, bl1)) | 0;\n mid = (mid + Math.imul(al0, bh1)) | 0;\n mid = (mid + Math.imul(ah0, bl1)) | 0;\n hi = (hi + Math.imul(ah0, bh1)) | 0;\n var w1 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w1 >>> 26)) | 0;\n w1 &= 0x3ffffff;\n /* k = 2 */\n lo = Math.imul(al2, bl0);\n mid = Math.imul(al2, bh0);\n mid = (mid + Math.imul(ah2, bl0)) | 0;\n hi = Math.imul(ah2, bh0);\n lo = (lo + Math.imul(al1, bl1)) | 0;\n mid = (mid + Math.imul(al1, bh1)) | 0;\n mid = (mid + Math.imul(ah1, bl1)) | 0;\n hi = (hi + Math.imul(ah1, bh1)) | 0;\n lo = (lo + Math.imul(al0, bl2)) | 0;\n mid = (mid + Math.imul(al0, bh2)) | 0;\n mid = (mid + Math.imul(ah0, bl2)) | 0;\n hi = (hi + Math.imul(ah0, bh2)) | 0;\n var w2 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w2 >>> 26)) | 0;\n w2 &= 0x3ffffff;\n /* k = 3 */\n lo = Math.imul(al3, bl0);\n mid = Math.imul(al3, bh0);\n mid = (mid + Math.imul(ah3, bl0)) | 0;\n hi = Math.imul(ah3, bh0);\n lo = (lo + Math.imul(al2, bl1)) | 0;\n mid = (mid + Math.imul(al2, bh1)) | 0;\n mid = (mid + Math.imul(ah2, bl1)) | 0;\n hi = (hi + Math.imul(ah2, bh1)) | 0;\n lo = (lo + Math.imul(al1, bl2)) | 0;\n mid = (mid + Math.imul(al1, bh2)) | 0;\n mid = (mid + Math.imul(ah1, bl2)) | 0;\n hi = (hi + Math.imul(ah1, bh2)) | 0;\n lo = (lo + Math.imul(al0, bl3)) | 0;\n mid = (mid + Math.imul(al0, bh3)) | 0;\n mid = (mid + Math.imul(ah0, bl3)) | 0;\n hi = (hi + Math.imul(ah0, bh3)) | 0;\n var w3 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w3 >>> 26)) | 0;\n w3 &= 0x3ffffff;\n /* k = 4 */\n lo = Math.imul(al4, bl0);\n mid = Math.imul(al4, bh0);\n mid = (mid + Math.imul(ah4, bl0)) | 0;\n hi = Math.imul(ah4, bh0);\n lo = (lo + Math.imul(al3, bl1)) | 0;\n mid = (mid + Math.imul(al3, bh1)) | 0;\n mid = (mid + Math.imul(ah3, bl1)) | 0;\n hi = (hi + Math.imul(ah3, bh1)) | 0;\n lo = (lo + Math.imul(al2, bl2)) | 0;\n mid = (mid + Math.imul(al2, bh2)) | 0;\n mid = (mid + Math.imul(ah2, bl2)) | 0;\n hi = (hi + Math.imul(ah2, bh2)) | 0;\n lo = (lo + Math.imul(al1, bl3)) | 0;\n mid = (mid + Math.imul(al1, bh3)) | 0;\n mid = (mid + Math.imul(ah1, bl3)) | 0;\n hi = (hi + Math.imul(ah1, bh3)) | 0;\n lo = (lo + Math.imul(al0, bl4)) | 0;\n mid = (mid + Math.imul(al0, bh4)) | 0;\n mid = (mid + Math.imul(ah0, bl4)) | 0;\n hi = (hi + Math.imul(ah0, bh4)) | 0;\n var w4 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w4 >>> 26)) | 0;\n w4 &= 0x3ffffff;\n /* k = 5 */\n lo = Math.imul(al5, bl0);\n mid = Math.imul(al5, bh0);\n mid = (mid + Math.imul(ah5, bl0)) | 0;\n hi = Math.imul(ah5, bh0);\n lo = (lo + Math.imul(al4, bl1)) | 0;\n mid = (mid + Math.imul(al4, bh1)) | 0;\n mid = (mid + Math.imul(ah4, bl1)) | 0;\n hi = (hi + Math.imul(ah4, bh1)) | 0;\n lo = (lo + Math.imul(al3, bl2)) | 0;\n mid = (mid + Math.imul(al3, bh2)) | 0;\n mid = (mid + Math.imul(ah3, bl2)) | 0;\n hi = (hi + Math.imul(ah3, bh2)) | 0;\n lo = (lo + Math.imul(al2, bl3)) | 0;\n mid = (mid + Math.imul(al2, bh3)) | 0;\n mid = (mid + Math.imul(ah2, bl3)) | 0;\n hi = (hi + Math.imul(ah2, bh3)) | 0;\n lo = (lo + Math.imul(al1, bl4)) | 0;\n mid = (mid + Math.imul(al1, bh4)) | 0;\n mid = (mid + Math.imul(ah1, bl4)) | 0;\n hi = (hi + Math.imul(ah1, bh4)) | 0;\n lo = (lo + Math.imul(al0, bl5)) | 0;\n mid = (mid + Math.imul(al0, bh5)) | 0;\n mid = (mid + Math.imul(ah0, bl5)) | 0;\n hi = (hi + Math.imul(ah0, bh5)) | 0;\n var w5 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w5 >>> 26)) | 0;\n w5 &= 0x3ffffff;\n /* k = 6 */\n lo = Math.imul(al6, bl0);\n mid = Math.imul(al6, bh0);\n mid = (mid + Math.imul(ah6, bl0)) | 0;\n hi = Math.imul(ah6, bh0);\n lo = (lo + Math.imul(al5, bl1)) | 0;\n mid = (mid + Math.imul(al5, bh1)) | 0;\n mid = (mid + Math.imul(ah5, bl1)) | 0;\n hi = (hi + Math.imul(ah5, bh1)) | 0;\n lo = (lo + Math.imul(al4, bl2)) | 0;\n mid = (mid + Math.imul(al4, bh2)) | 0;\n mid = (mid + Math.imul(ah4, bl2)) | 0;\n hi = (hi + Math.imul(ah4, bh2)) | 0;\n lo = (lo + Math.imul(al3, bl3)) | 0;\n mid = (mid + Math.imul(al3, bh3)) | 0;\n mid = (mid + Math.imul(ah3, bl3)) | 0;\n hi = (hi + Math.imul(ah3, bh3)) | 0;\n lo = (lo + Math.imul(al2, bl4)) | 0;\n mid = (mid + Math.imul(al2, bh4)) | 0;\n mid = (mid + Math.imul(ah2, bl4)) | 0;\n hi = (hi + Math.imul(ah2, bh4)) | 0;\n lo = (lo + Math.imul(al1, bl5)) | 0;\n mid = (mid + Math.imul(al1, bh5)) | 0;\n mid = (mid + Math.imul(ah1, bl5)) | 0;\n hi = (hi + Math.imul(ah1, bh5)) | 0;\n lo = (lo + Math.imul(al0, bl6)) | 0;\n mid = (mid + Math.imul(al0, bh6)) | 0;\n mid = (mid + Math.imul(ah0, bl6)) | 0;\n hi = (hi + Math.imul(ah0, bh6)) | 0;\n var w6 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w6 >>> 26)) | 0;\n w6 &= 0x3ffffff;\n /* k = 7 */\n lo = Math.imul(al7, bl0);\n mid = Math.imul(al7, bh0);\n mid = (mid + Math.imul(ah7, bl0)) | 0;\n hi = Math.imul(ah7, bh0);\n lo = (lo + Math.imul(al6, bl1)) | 0;\n mid = (mid + Math.imul(al6, bh1)) | 0;\n mid = (mid + Math.imul(ah6, bl1)) | 0;\n hi = (hi + Math.imul(ah6, bh1)) | 0;\n lo = (lo + Math.imul(al5, bl2)) | 0;\n mid = (mid + Math.imul(al5, bh2)) | 0;\n mid = (mid + Math.imul(ah5, bl2)) | 0;\n hi = (hi + Math.imul(ah5, bh2)) | 0;\n lo = (lo + Math.imul(al4, bl3)) | 0;\n mid = (mid + Math.imul(al4, bh3)) | 0;\n mid = (mid + Math.imul(ah4, bl3)) | 0;\n hi = (hi + Math.imul(ah4, bh3)) | 0;\n lo = (lo + Math.imul(al3, bl4)) | 0;\n mid = (mid + Math.imul(al3, bh4)) | 0;\n mid = (mid + Math.imul(ah3, bl4)) | 0;\n hi = (hi + Math.imul(ah3, bh4)) | 0;\n lo = (lo + Math.imul(al2, bl5)) | 0;\n mid = (mid + Math.imul(al2, bh5)) | 0;\n mid = (mid + Math.imul(ah2, bl5)) | 0;\n hi = (hi + Math.imul(ah2, bh5)) | 0;\n lo = (lo + Math.imul(al1, bl6)) | 0;\n mid = (mid + Math.imul(al1, bh6)) | 0;\n mid = (mid + Math.imul(ah1, bl6)) | 0;\n hi = (hi + Math.imul(ah1, bh6)) | 0;\n lo = (lo + Math.imul(al0, bl7)) | 0;\n mid = (mid + Math.imul(al0, bh7)) | 0;\n mid = (mid + Math.imul(ah0, bl7)) | 0;\n hi = (hi + Math.imul(ah0, bh7)) | 0;\n var w7 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w7 >>> 26)) | 0;\n w7 &= 0x3ffffff;\n /* k = 8 */\n lo = Math.imul(al8, bl0);\n mid = Math.imul(al8, bh0);\n mid = (mid + Math.imul(ah8, bl0)) | 0;\n hi = Math.imul(ah8, bh0);\n lo = (lo + Math.imul(al7, bl1)) | 0;\n mid = (mid + Math.imul(al7, bh1)) | 0;\n mid = (mid + Math.imul(ah7, bl1)) | 0;\n hi = (hi + Math.imul(ah7, bh1)) | 0;\n lo = (lo + Math.imul(al6, bl2)) | 0;\n mid = (mid + Math.imul(al6, bh2)) | 0;\n mid = (mid + Math.imul(ah6, bl2)) | 0;\n hi = (hi + Math.imul(ah6, bh2)) | 0;\n lo = (lo + Math.imul(al5, bl3)) | 0;\n mid = (mid + Math.imul(al5, bh3)) | 0;\n mid = (mid + Math.imul(ah5, bl3)) | 0;\n hi = (hi + Math.imul(ah5, bh3)) | 0;\n lo = (lo + Math.imul(al4, bl4)) | 0;\n mid = (mid + Math.imul(al4, bh4)) | 0;\n mid = (mid + Math.imul(ah4, bl4)) | 0;\n hi = (hi + Math.imul(ah4, bh4)) | 0;\n lo = (lo + Math.imul(al3, bl5)) | 0;\n mid = (mid + Math.imul(al3, bh5)) | 0;\n mid = (mid + Math.imul(ah3, bl5)) | 0;\n hi = (hi + Math.imul(ah3, bh5)) | 0;\n lo = (lo + Math.imul(al2, bl6)) | 0;\n mid = (mid + Math.imul(al2, bh6)) | 0;\n mid = (mid + Math.imul(ah2, bl6)) | 0;\n hi = (hi + Math.imul(ah2, bh6)) | 0;\n lo = (lo + Math.imul(al1, bl7)) | 0;\n mid = (mid + Math.imul(al1, bh7)) | 0;\n mid = (mid + Math.imul(ah1, bl7)) | 0;\n hi = (hi + Math.imul(ah1, bh7)) | 0;\n lo = (lo + Math.imul(al0, bl8)) | 0;\n mid = (mid + Math.imul(al0, bh8)) | 0;\n mid = (mid + Math.imul(ah0, bl8)) | 0;\n hi = (hi + Math.imul(ah0, bh8)) | 0;\n var w8 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w8 >>> 26)) | 0;\n w8 &= 0x3ffffff;\n /* k = 9 */\n lo = Math.imul(al9, bl0);\n mid = Math.imul(al9, bh0);\n mid = (mid + Math.imul(ah9, bl0)) | 0;\n hi = Math.imul(ah9, bh0);\n lo = (lo + Math.imul(al8, bl1)) | 0;\n mid = (mid + Math.imul(al8, bh1)) | 0;\n mid = (mid + Math.imul(ah8, bl1)) | 0;\n hi = (hi + Math.imul(ah8, bh1)) | 0;\n lo = (lo + Math.imul(al7, bl2)) | 0;\n mid = (mid + Math.imul(al7, bh2)) | 0;\n mid = (mid + Math.imul(ah7, bl2)) | 0;\n hi = (hi + Math.imul(ah7, bh2)) | 0;\n lo = (lo + Math.imul(al6, bl3)) | 0;\n mid = (mid + Math.imul(al6, bh3)) | 0;\n mid = (mid + Math.imul(ah6, bl3)) | 0;\n hi = (hi + Math.imul(ah6, bh3)) | 0;\n lo = (lo + Math.imul(al5, bl4)) | 0;\n mid = (mid + Math.imul(al5, bh4)) | 0;\n mid = (mid + Math.imul(ah5, bl4)) | 0;\n hi = (hi + Math.imul(ah5, bh4)) | 0;\n lo = (lo + Math.imul(al4, bl5)) | 0;\n mid = (mid + Math.imul(al4, bh5)) | 0;\n mid = (mid + Math.imul(ah4, bl5)) | 0;\n hi = (hi + Math.imul(ah4, bh5)) | 0;\n lo = (lo + Math.imul(al3, bl6)) | 0;\n mid = (mid + Math.imul(al3, bh6)) | 0;\n mid = (mid + Math.imul(ah3, bl6)) | 0;\n hi = (hi + Math.imul(ah3, bh6)) | 0;\n lo = (lo + Math.imul(al2, bl7)) | 0;\n mid = (mid + Math.imul(al2, bh7)) | 0;\n mid = (mid + Math.imul(ah2, bl7)) | 0;\n hi = (hi + Math.imul(ah2, bh7)) | 0;\n lo = (lo + Math.imul(al1, bl8)) | 0;\n mid = (mid + Math.imul(al1, bh8)) | 0;\n mid = (mid + Math.imul(ah1, bl8)) | 0;\n hi = (hi + Math.imul(ah1, bh8)) | 0;\n lo = (lo + Math.imul(al0, bl9)) | 0;\n mid = (mid + Math.imul(al0, bh9)) | 0;\n mid = (mid + Math.imul(ah0, bl9)) | 0;\n hi = (hi + Math.imul(ah0, bh9)) | 0;\n var w9 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w9 >>> 26)) | 0;\n w9 &= 0x3ffffff;\n /* k = 10 */\n lo = Math.imul(al9, bl1);\n mid = Math.imul(al9, bh1);\n mid = (mid + Math.imul(ah9, bl1)) | 0;\n hi = Math.imul(ah9, bh1);\n lo = (lo + Math.imul(al8, bl2)) | 0;\n mid = (mid + Math.imul(al8, bh2)) | 0;\n mid = (mid + Math.imul(ah8, bl2)) | 0;\n hi = (hi + Math.imul(ah8, bh2)) | 0;\n lo = (lo + Math.imul(al7, bl3)) | 0;\n mid = (mid + Math.imul(al7, bh3)) | 0;\n mid = (mid + Math.imul(ah7, bl3)) | 0;\n hi = (hi + Math.imul(ah7, bh3)) | 0;\n lo = (lo + Math.imul(al6, bl4)) | 0;\n mid = (mid + Math.imul(al6, bh4)) | 0;\n mid = (mid + Math.imul(ah6, bl4)) | 0;\n hi = (hi + Math.imul(ah6, bh4)) | 0;\n lo = (lo + Math.imul(al5, bl5)) | 0;\n mid = (mid + Math.imul(al5, bh5)) | 0;\n mid = (mid + Math.imul(ah5, bl5)) | 0;\n hi = (hi + Math.imul(ah5, bh5)) | 0;\n lo = (lo + Math.imul(al4, bl6)) | 0;\n mid = (mid + Math.imul(al4, bh6)) | 0;\n mid = (mid + Math.imul(ah4, bl6)) | 0;\n hi = (hi + Math.imul(ah4, bh6)) | 0;\n lo = (lo + Math.imul(al3, bl7)) | 0;\n mid = (mid + Math.imul(al3, bh7)) | 0;\n mid = (mid + Math.imul(ah3, bl7)) | 0;\n hi = (hi + Math.imul(ah3, bh7)) | 0;\n lo = (lo + Math.imul(al2, bl8)) | 0;\n mid = (mid + Math.imul(al2, bh8)) | 0;\n mid = (mid + Math.imul(ah2, bl8)) | 0;\n hi = (hi + Math.imul(ah2, bh8)) | 0;\n lo = (lo + Math.imul(al1, bl9)) | 0;\n mid = (mid + Math.imul(al1, bh9)) | 0;\n mid = (mid + Math.imul(ah1, bl9)) | 0;\n hi = (hi + Math.imul(ah1, bh9)) | 0;\n var w10 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w10 >>> 26)) | 0;\n w10 &= 0x3ffffff;\n /* k = 11 */\n lo = Math.imul(al9, bl2);\n mid = Math.imul(al9, bh2);\n mid = (mid + Math.imul(ah9, bl2)) | 0;\n hi = Math.imul(ah9, bh2);\n lo = (lo + Math.imul(al8, bl3)) | 0;\n mid = (mid + Math.imul(al8, bh3)) | 0;\n mid = (mid + Math.imul(ah8, bl3)) | 0;\n hi = (hi + Math.imul(ah8, bh3)) | 0;\n lo = (lo + Math.imul(al7, bl4)) | 0;\n mid = (mid + Math.imul(al7, bh4)) | 0;\n mid = (mid + Math.imul(ah7, bl4)) | 0;\n hi = (hi + Math.imul(ah7, bh4)) | 0;\n lo = (lo + Math.imul(al6, bl5)) | 0;\n mid = (mid + Math.imul(al6, bh5)) | 0;\n mid = (mid + Math.imul(ah6, bl5)) | 0;\n hi = (hi + Math.imul(ah6, bh5)) | 0;\n lo = (lo + Math.imul(al5, bl6)) | 0;\n mid = (mid + Math.imul(al5, bh6)) | 0;\n mid = (mid + Math.imul(ah5, bl6)) | 0;\n hi = (hi + Math.imul(ah5, bh6)) | 0;\n lo = (lo + Math.imul(al4, bl7)) | 0;\n mid = (mid + Math.imul(al4, bh7)) | 0;\n mid = (mid + Math.imul(ah4, bl7)) | 0;\n hi = (hi + Math.imul(ah4, bh7)) | 0;\n lo = (lo + Math.imul(al3, bl8)) | 0;\n mid = (mid + Math.imul(al3, bh8)) | 0;\n mid = (mid + Math.imul(ah3, bl8)) | 0;\n hi = (hi + Math.imul(ah3, bh8)) | 0;\n lo = (lo + Math.imul(al2, bl9)) | 0;\n mid = (mid + Math.imul(al2, bh9)) | 0;\n mid = (mid + Math.imul(ah2, bl9)) | 0;\n hi = (hi + Math.imul(ah2, bh9)) | 0;\n var w11 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w11 >>> 26)) | 0;\n w11 &= 0x3ffffff;\n /* k = 12 */\n lo = Math.imul(al9, bl3);\n mid = Math.imul(al9, bh3);\n mid = (mid + Math.imul(ah9, bl3)) | 0;\n hi = Math.imul(ah9, bh3);\n lo = (lo + Math.imul(al8, bl4)) | 0;\n mid = (mid + Math.imul(al8, bh4)) | 0;\n mid = (mid + Math.imul(ah8, bl4)) | 0;\n hi = (hi + Math.imul(ah8, bh4)) | 0;\n lo = (lo + Math.imul(al7, bl5)) | 0;\n mid = (mid + Math.imul(al7, bh5)) | 0;\n mid = (mid + Math.imul(ah7, bl5)) | 0;\n hi = (hi + Math.imul(ah7, bh5)) | 0;\n lo = (lo + Math.imul(al6, bl6)) | 0;\n mid = (mid + Math.imul(al6, bh6)) | 0;\n mid = (mid + Math.imul(ah6, bl6)) | 0;\n hi = (hi + Math.imul(ah6, bh6)) | 0;\n lo = (lo + Math.imul(al5, bl7)) | 0;\n mid = (mid + Math.imul(al5, bh7)) | 0;\n mid = (mid + Math.imul(ah5, bl7)) | 0;\n hi = (hi + Math.imul(ah5, bh7)) | 0;\n lo = (lo + Math.imul(al4, bl8)) | 0;\n mid = (mid + Math.imul(al4, bh8)) | 0;\n mid = (mid + Math.imul(ah4, bl8)) | 0;\n hi = (hi + Math.imul(ah4, bh8)) | 0;\n lo = (lo + Math.imul(al3, bl9)) | 0;\n mid = (mid + Math.imul(al3, bh9)) | 0;\n mid = (mid + Math.imul(ah3, bl9)) | 0;\n hi = (hi + Math.imul(ah3, bh9)) | 0;\n var w12 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w12 >>> 26)) | 0;\n w12 &= 0x3ffffff;\n /* k = 13 */\n lo = Math.imul(al9, bl4);\n mid = Math.imul(al9, bh4);\n mid = (mid + Math.imul(ah9, bl4)) | 0;\n hi = Math.imul(ah9, bh4);\n lo = (lo + Math.imul(al8, bl5)) | 0;\n mid = (mid + Math.imul(al8, bh5)) | 0;\n mid = (mid + Math.imul(ah8, bl5)) | 0;\n hi = (hi + Math.imul(ah8, bh5)) | 0;\n lo = (lo + Math.imul(al7, bl6)) | 0;\n mid = (mid + Math.imul(al7, bh6)) | 0;\n mid = (mid + Math.imul(ah7, bl6)) | 0;\n hi = (hi + Math.imul(ah7, bh6)) | 0;\n lo = (lo + Math.imul(al6, bl7)) | 0;\n mid = (mid + Math.imul(al6, bh7)) | 0;\n mid = (mid + Math.imul(ah6, bl7)) | 0;\n hi = (hi + Math.imul(ah6, bh7)) | 0;\n lo = (lo + Math.imul(al5, bl8)) | 0;\n mid = (mid + Math.imul(al5, bh8)) | 0;\n mid = (mid + Math.imul(ah5, bl8)) | 0;\n hi = (hi + Math.imul(ah5, bh8)) | 0;\n lo = (lo + Math.imul(al4, bl9)) | 0;\n mid = (mid + Math.imul(al4, bh9)) | 0;\n mid = (mid + Math.imul(ah4, bl9)) | 0;\n hi = (hi + Math.imul(ah4, bh9)) | 0;\n var w13 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w13 >>> 26)) | 0;\n w13 &= 0x3ffffff;\n /* k = 14 */\n lo = Math.imul(al9, bl5);\n mid = Math.imul(al9, bh5);\n mid = (mid + Math.imul(ah9, bl5)) | 0;\n hi = Math.imul(ah9, bh5);\n lo = (lo + Math.imul(al8, bl6)) | 0;\n mid = (mid + Math.imul(al8, bh6)) | 0;\n mid = (mid + Math.imul(ah8, bl6)) | 0;\n hi = (hi + Math.imul(ah8, bh6)) | 0;\n lo = (lo + Math.imul(al7, bl7)) | 0;\n mid = (mid + Math.imul(al7, bh7)) | 0;\n mid = (mid + Math.imul(ah7, bl7)) | 0;\n hi = (hi + Math.imul(ah7, bh7)) | 0;\n lo = (lo + Math.imul(al6, bl8)) | 0;\n mid = (mid + Math.imul(al6, bh8)) | 0;\n mid = (mid + Math.imul(ah6, bl8)) | 0;\n hi = (hi + Math.imul(ah6, bh8)) | 0;\n lo = (lo + Math.imul(al5, bl9)) | 0;\n mid = (mid + Math.imul(al5, bh9)) | 0;\n mid = (mid + Math.imul(ah5, bl9)) | 0;\n hi = (hi + Math.imul(ah5, bh9)) | 0;\n var w14 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w14 >>> 26)) | 0;\n w14 &= 0x3ffffff;\n /* k = 15 */\n lo = Math.imul(al9, bl6);\n mid = Math.imul(al9, bh6);\n mid = (mid + Math.imul(ah9, bl6)) | 0;\n hi = Math.imul(ah9, bh6);\n lo = (lo + Math.imul(al8, bl7)) | 0;\n mid = (mid + Math.imul(al8, bh7)) | 0;\n mid = (mid + Math.imul(ah8, bl7)) | 0;\n hi = (hi + Math.imul(ah8, bh7)) | 0;\n lo = (lo + Math.imul(al7, bl8)) | 0;\n mid = (mid + Math.imul(al7, bh8)) | 0;\n mid = (mid + Math.imul(ah7, bl8)) | 0;\n hi = (hi + Math.imul(ah7, bh8)) | 0;\n lo = (lo + Math.imul(al6, bl9)) | 0;\n mid = (mid + Math.imul(al6, bh9)) | 0;\n mid = (mid + Math.imul(ah6, bl9)) | 0;\n hi = (hi + Math.imul(ah6, bh9)) | 0;\n var w15 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w15 >>> 26)) | 0;\n w15 &= 0x3ffffff;\n /* k = 16 */\n lo = Math.imul(al9, bl7);\n mid = Math.imul(al9, bh7);\n mid = (mid + Math.imul(ah9, bl7)) | 0;\n hi = Math.imul(ah9, bh7);\n lo = (lo + Math.imul(al8, bl8)) | 0;\n mid = (mid + Math.imul(al8, bh8)) | 0;\n mid = (mid + Math.imul(ah8, bl8)) | 0;\n hi = (hi + Math.imul(ah8, bh8)) | 0;\n lo = (lo + Math.imul(al7, bl9)) | 0;\n mid = (mid + Math.imul(al7, bh9)) | 0;\n mid = (mid + Math.imul(ah7, bl9)) | 0;\n hi = (hi + Math.imul(ah7, bh9)) | 0;\n var w16 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w16 >>> 26)) | 0;\n w16 &= 0x3ffffff;\n /* k = 17 */\n lo = Math.imul(al9, bl8);\n mid = Math.imul(al9, bh8);\n mid = (mid + Math.imul(ah9, bl8)) | 0;\n hi = Math.imul(ah9, bh8);\n lo = (lo + Math.imul(al8, bl9)) | 0;\n mid = (mid + Math.imul(al8, bh9)) | 0;\n mid = (mid + Math.imul(ah8, bl9)) | 0;\n hi = (hi + Math.imul(ah8, bh9)) | 0;\n var w17 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w17 >>> 26)) | 0;\n w17 &= 0x3ffffff;\n /* k = 18 */\n lo = Math.imul(al9, bl9);\n mid = Math.imul(al9, bh9);\n mid = (mid + Math.imul(ah9, bl9)) | 0;\n hi = Math.imul(ah9, bh9);\n var w18 = (((c + lo) | 0) + ((mid & 0x1fff) << 13)) | 0;\n c = (((hi + (mid >>> 13)) | 0) + (w18 >>> 26)) | 0;\n w18 &= 0x3ffffff;\n o[0] = w0;\n o[1] = w1;\n o[2] = w2;\n o[3] = w3;\n o[4] = w4;\n o[5] = w5;\n o[6] = w6;\n o[7] = w7;\n o[8] = w8;\n o[9] = w9;\n o[10] = w10;\n o[11] = w11;\n o[12] = w12;\n o[13] = w13;\n o[14] = w14;\n o[15] = w15;\n o[16] = w16;\n o[17] = w17;\n o[18] = w18;\n if (c !== 0) {\n o[19] = c;\n out.length++;\n }\n return out;\n };\n\n // Polyfill comb\n if (!Math.imul) {\n comb10MulTo = smallMulTo;\n }\n\n function bigMulTo (self, num, out) {\n out.negative = num.negative ^ self.negative;\n out.length = self.length + num.length;\n\n var carry = 0;\n var hncarry = 0;\n for (var k = 0; k < out.length - 1; k++) {\n // Sum all words with the same `i + j = k` and accumulate `ncarry`,\n // note that ncarry could be >= 0x3ffffff\n var ncarry = hncarry;\n hncarry = 0;\n var rword = carry & 0x3ffffff;\n var maxJ = Math.min(k, num.length - 1);\n for (var j = Math.max(0, k - self.length + 1); j <= maxJ; j++) {\n var i = k - j;\n var a = self.words[i] | 0;\n var b = num.words[j] | 0;\n var r = a * b;\n\n var lo = r & 0x3ffffff;\n ncarry = (ncarry + ((r / 0x4000000) | 0)) | 0;\n lo = (lo + rword) | 0;\n rword = lo & 0x3ffffff;\n ncarry = (ncarry + (lo >>> 26)) | 0;\n\n hncarry += ncarry >>> 26;\n ncarry &= 0x3ffffff;\n }\n out.words[k] = rword;\n carry = ncarry;\n ncarry = hncarry;\n }\n if (carry !== 0) {\n out.words[k] = carry;\n } else {\n out.length--;\n }\n\n return out.strip();\n }\n\n function jumboMulTo (self, num, out) {\n var fftm = new FFTM();\n return fftm.mulp(self, num, out);\n }\n\n BN.prototype.mulTo = function mulTo (num, out) {\n var res;\n var len = this.length + num.length;\n if (this.length === 10 && num.length === 10) {\n res = comb10MulTo(this, num, out);\n } else if (len < 63) {\n res = smallMulTo(this, num, out);\n } else if (len < 1024) {\n res = bigMulTo(this, num, out);\n } else {\n res = jumboMulTo(this, num, out);\n }\n\n return res;\n };\n\n // Cooley-Tukey algorithm for FFT\n // slightly revisited to rely on looping instead of recursion\n\n function FFTM (x, y) {\n this.x = x;\n this.y = y;\n }\n\n FFTM.prototype.makeRBT = function makeRBT (N) {\n var t = new Array(N);\n var l = BN.prototype._countBits(N) - 1;\n for (var i = 0; i < N; i++) {\n t[i] = this.revBin(i, l, N);\n }\n\n return t;\n };\n\n // Returns binary-reversed representation of `x`\n FFTM.prototype.revBin = function revBin (x, l, N) {\n if (x === 0 || x === N - 1) return x;\n\n var rb = 0;\n for (var i = 0; i < l; i++) {\n rb |= (x & 1) << (l - i - 1);\n x >>= 1;\n }\n\n return rb;\n };\n\n // Performs \"tweedling\" phase, therefore 'emulating'\n // behaviour of the recursive algorithm\n FFTM.prototype.permute = function permute (rbt, rws, iws, rtws, itws, N) {\n for (var i = 0; i < N; i++) {\n rtws[i] = rws[rbt[i]];\n itws[i] = iws[rbt[i]];\n }\n };\n\n FFTM.prototype.transform = function transform (rws, iws, rtws, itws, N, rbt) {\n this.permute(rbt, rws, iws, rtws, itws, N);\n\n for (var s = 1; s < N; s <<= 1) {\n var l = s << 1;\n\n var rtwdf = Math.cos(2 * Math.PI / l);\n var itwdf = Math.sin(2 * Math.PI / l);\n\n for (var p = 0; p < N; p += l) {\n var rtwdf_ = rtwdf;\n var itwdf_ = itwdf;\n\n for (var j = 0; j < s; j++) {\n var re = rtws[p + j];\n var ie = itws[p + j];\n\n var ro = rtws[p + j + s];\n var io = itws[p + j + s];\n\n var rx = rtwdf_ * ro - itwdf_ * io;\n\n io = rtwdf_ * io + itwdf_ * ro;\n ro = rx;\n\n rtws[p + j] = re + ro;\n itws[p + j] = ie + io;\n\n rtws[p + j + s] = re - ro;\n itws[p + j + s] = ie - io;\n\n /* jshint maxdepth : false */\n if (j !== l) {\n rx = rtwdf * rtwdf_ - itwdf * itwdf_;\n\n itwdf_ = rtwdf * itwdf_ + itwdf * rtwdf_;\n rtwdf_ = rx;\n }\n }\n }\n }\n };\n\n FFTM.prototype.guessLen13b = function guessLen13b (n, m) {\n var N = Math.max(m, n) | 1;\n var odd = N & 1;\n var i = 0;\n for (N = N / 2 | 0; N; N = N >>> 1) {\n i++;\n }\n\n return 1 << i + 1 + odd;\n };\n\n FFTM.prototype.conjugate = function conjugate (rws, iws, N) {\n if (N <= 1) return;\n\n for (var i = 0; i < N / 2; i++) {\n var t = rws[i];\n\n rws[i] = rws[N - i - 1];\n rws[N - i - 1] = t;\n\n t = iws[i];\n\n iws[i] = -iws[N - i - 1];\n iws[N - i - 1] = -t;\n }\n };\n\n FFTM.prototype.normalize13b = function normalize13b (ws, N) {\n var carry = 0;\n for (var i = 0; i < N / 2; i++) {\n var w = Math.round(ws[2 * i + 1] / N) * 0x2000 +\n Math.round(ws[2 * i] / N) +\n carry;\n\n ws[i] = w & 0x3ffffff;\n\n if (w < 0x4000000) {\n carry = 0;\n } else {\n carry = w / 0x4000000 | 0;\n }\n }\n\n return ws;\n };\n\n FFTM.prototype.convert13b = function convert13b (ws, len, rws, N) {\n var carry = 0;\n for (var i = 0; i < len; i++) {\n carry = carry + (ws[i] | 0);\n\n rws[2 * i] = carry & 0x1fff; carry = carry >>> 13;\n rws[2 * i + 1] = carry & 0x1fff; carry = carry >>> 13;\n }\n\n // Pad with zeroes\n for (i = 2 * len; i < N; ++i) {\n rws[i] = 0;\n }\n\n assert(carry === 0);\n assert((carry & ~0x1fff) === 0);\n };\n\n FFTM.prototype.stub = function stub (N) {\n var ph = new Array(N);\n for (var i = 0; i < N; i++) {\n ph[i] = 0;\n }\n\n return ph;\n };\n\n FFTM.prototype.mulp = function mulp (x, y, out) {\n var N = 2 * this.guessLen13b(x.length, y.length);\n\n var rbt = this.makeRBT(N);\n\n var _ = this.stub(N);\n\n var rws = new Array(N);\n var rwst = new Array(N);\n var iwst = new Array(N);\n\n var nrws = new Array(N);\n var nrwst = new Array(N);\n var niwst = new Array(N);\n\n var rmws = out.words;\n rmws.length = N;\n\n this.convert13b(x.words, x.length, rws, N);\n this.convert13b(y.words, y.length, nrws, N);\n\n this.transform(rws, _, rwst, iwst, N, rbt);\n this.transform(nrws, _, nrwst, niwst, N, rbt);\n\n for (var i = 0; i < N; i++) {\n var rx = rwst[i] * nrwst[i] - iwst[i] * niwst[i];\n iwst[i] = rwst[i] * niwst[i] + iwst[i] * nrwst[i];\n rwst[i] = rx;\n }\n\n this.conjugate(rwst, iwst, N);\n this.transform(rwst, iwst, rmws, _, N, rbt);\n this.conjugate(rmws, _, N);\n this.normalize13b(rmws, N);\n\n out.negative = x.negative ^ y.negative;\n out.length = x.length + y.length;\n return out.strip();\n };\n\n // Multiply `this` by `num`\n BN.prototype.mul = function mul (num) {\n var out = new BN(null);\n out.words = new Array(this.length + num.length);\n return this.mulTo(num, out);\n };\n\n // Multiply employing FFT\n BN.prototype.mulf = function mulf (num) {\n var out = new BN(null);\n out.words = new Array(this.length + num.length);\n return jumboMulTo(this, num, out);\n };\n\n // In-place Multiplication\n BN.prototype.imul = function imul (num) {\n return this.clone().mulTo(num, this);\n };\n\n BN.prototype.imuln = function imuln (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n\n // Carry\n var carry = 0;\n for (var i = 0; i < this.length; i++) {\n var w = (this.words[i] | 0) * num;\n var lo = (w & 0x3ffffff) + (carry & 0x3ffffff);\n carry >>= 26;\n carry += (w / 0x4000000) | 0;\n // NOTE: lo is 27bit maximum\n carry += lo >>> 26;\n this.words[i] = lo & 0x3ffffff;\n }\n\n if (carry !== 0) {\n this.words[i] = carry;\n this.length++;\n }\n\n return this;\n };\n\n BN.prototype.muln = function muln (num) {\n return this.clone().imuln(num);\n };\n\n // `this` * `this`\n BN.prototype.sqr = function sqr () {\n return this.mul(this);\n };\n\n // `this` * `this` in-place\n BN.prototype.isqr = function isqr () {\n return this.imul(this.clone());\n };\n\n // Math.pow(`this`, `num`)\n BN.prototype.pow = function pow (num) {\n var w = toBitArray(num);\n if (w.length === 0) return new BN(1);\n\n // Skip leading zeroes\n var res = this;\n for (var i = 0; i < w.length; i++, res = res.sqr()) {\n if (w[i] !== 0) break;\n }\n\n if (++i < w.length) {\n for (var q = res.sqr(); i < w.length; i++, q = q.sqr()) {\n if (w[i] === 0) continue;\n\n res = res.mul(q);\n }\n }\n\n return res;\n };\n\n // Shift-left in-place\n BN.prototype.iushln = function iushln (bits) {\n assert(typeof bits === 'number' && bits >= 0);\n var r = bits % 26;\n var s = (bits - r) / 26;\n var carryMask = (0x3ffffff >>> (26 - r)) << (26 - r);\n var i;\n\n if (r !== 0) {\n var carry = 0;\n\n for (i = 0; i < this.length; i++) {\n var newCarry = this.words[i] & carryMask;\n var c = ((this.words[i] | 0) - newCarry) << r;\n this.words[i] = c | carry;\n carry = newCarry >>> (26 - r);\n }\n\n if (carry) {\n this.words[i] = carry;\n this.length++;\n }\n }\n\n if (s !== 0) {\n for (i = this.length - 1; i >= 0; i--) {\n this.words[i + s] = this.words[i];\n }\n\n for (i = 0; i < s; i++) {\n this.words[i] = 0;\n }\n\n this.length += s;\n }\n\n return this.strip();\n };\n\n BN.prototype.ishln = function ishln (bits) {\n // TODO(indutny): implement me\n assert(this.negative === 0);\n return this.iushln(bits);\n };\n\n // Shift-right in-place\n // NOTE: `hint` is a lowest bit before trailing zeroes\n // NOTE: if `extended` is present - it will be filled with destroyed bits\n BN.prototype.iushrn = function iushrn (bits, hint, extended) {\n assert(typeof bits === 'number' && bits >= 0);\n var h;\n if (hint) {\n h = (hint - (hint % 26)) / 26;\n } else {\n h = 0;\n }\n\n var r = bits % 26;\n var s = Math.min((bits - r) / 26, this.length);\n var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r);\n var maskedWords = extended;\n\n h -= s;\n h = Math.max(0, h);\n\n // Extended mode, copy masked part\n if (maskedWords) {\n for (var i = 0; i < s; i++) {\n maskedWords.words[i] = this.words[i];\n }\n maskedWords.length = s;\n }\n\n if (s === 0) {\n // No-op, we should not move anything at all\n } else if (this.length > s) {\n this.length -= s;\n for (i = 0; i < this.length; i++) {\n this.words[i] = this.words[i + s];\n }\n } else {\n this.words[0] = 0;\n this.length = 1;\n }\n\n var carry = 0;\n for (i = this.length - 1; i >= 0 && (carry !== 0 || i >= h); i--) {\n var word = this.words[i] | 0;\n this.words[i] = (carry << (26 - r)) | (word >>> r);\n carry = word & mask;\n }\n\n // Push carried bits as a mask\n if (maskedWords && carry !== 0) {\n maskedWords.words[maskedWords.length++] = carry;\n }\n\n if (this.length === 0) {\n this.words[0] = 0;\n this.length = 1;\n }\n\n return this.strip();\n };\n\n BN.prototype.ishrn = function ishrn (bits, hint, extended) {\n // TODO(indutny): implement me\n assert(this.negative === 0);\n return this.iushrn(bits, hint, extended);\n };\n\n // Shift-left\n BN.prototype.shln = function shln (bits) {\n return this.clone().ishln(bits);\n };\n\n BN.prototype.ushln = function ushln (bits) {\n return this.clone().iushln(bits);\n };\n\n // Shift-right\n BN.prototype.shrn = function shrn (bits) {\n return this.clone().ishrn(bits);\n };\n\n BN.prototype.ushrn = function ushrn (bits) {\n return this.clone().iushrn(bits);\n };\n\n // Test if n bit is set\n BN.prototype.testn = function testn (bit) {\n assert(typeof bit === 'number' && bit >= 0);\n var r = bit % 26;\n var s = (bit - r) / 26;\n var q = 1 << r;\n\n // Fast case: bit is much higher than all existing words\n if (this.length <= s) return false;\n\n // Check bit and return\n var w = this.words[s];\n\n return !!(w & q);\n };\n\n // Return only lowers bits of number (in-place)\n BN.prototype.imaskn = function imaskn (bits) {\n assert(typeof bits === 'number' && bits >= 0);\n var r = bits % 26;\n var s = (bits - r) / 26;\n\n assert(this.negative === 0, 'imaskn works only with positive numbers');\n\n if (this.length <= s) {\n return this;\n }\n\n if (r !== 0) {\n s++;\n }\n this.length = Math.min(s, this.length);\n\n if (r !== 0) {\n var mask = 0x3ffffff ^ ((0x3ffffff >>> r) << r);\n this.words[this.length - 1] &= mask;\n }\n\n return this.strip();\n };\n\n // Return only lowers bits of number\n BN.prototype.maskn = function maskn (bits) {\n return this.clone().imaskn(bits);\n };\n\n // Add plain number `num` to `this`\n BN.prototype.iaddn = function iaddn (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n if (num < 0) return this.isubn(-num);\n\n // Possible sign change\n if (this.negative !== 0) {\n if (this.length === 1 && (this.words[0] | 0) < num) {\n this.words[0] = num - (this.words[0] | 0);\n this.negative = 0;\n return this;\n }\n\n this.negative = 0;\n this.isubn(num);\n this.negative = 1;\n return this;\n }\n\n // Add without checks\n return this._iaddn(num);\n };\n\n BN.prototype._iaddn = function _iaddn (num) {\n this.words[0] += num;\n\n // Carry\n for (var i = 0; i < this.length && this.words[i] >= 0x4000000; i++) {\n this.words[i] -= 0x4000000;\n if (i === this.length - 1) {\n this.words[i + 1] = 1;\n } else {\n this.words[i + 1]++;\n }\n }\n this.length = Math.max(this.length, i + 1);\n\n return this;\n };\n\n // Subtract plain number `num` from `this`\n BN.prototype.isubn = function isubn (num) {\n assert(typeof num === 'number');\n assert(num < 0x4000000);\n if (num < 0) return this.iaddn(-num);\n\n if (this.negative !== 0) {\n this.negative = 0;\n this.iaddn(num);\n this.negative = 1;\n return this;\n }\n\n this.words[0] -= num;\n\n if (this.length === 1 && this.words[0] < 0) {\n this.words[0] = -this.words[0];\n this.negative = 1;\n } else {\n // Carry\n for (var i = 0; i < this.length && this.words[i] < 0; i++) {\n this.words[i] += 0x4000000;\n this.words[i + 1] -= 1;\n }\n }\n\n return this.strip();\n };\n\n BN.prototype.addn = function addn (num) {\n return this.clone().iaddn(num);\n };\n\n BN.prototype.subn = function subn (num) {\n return this.clone().isubn(num);\n };\n\n BN.prototype.iabs = function iabs () {\n this.negative = 0;\n\n return this;\n };\n\n BN.prototype.abs = function abs () {\n return this.clone().iabs();\n };\n\n BN.prototype._ishlnsubmul = function _ishlnsubmul (num, mul, shift) {\n var len = num.length + shift;\n var i;\n\n this._expand(len);\n\n var w;\n var carry = 0;\n for (i = 0; i < num.length; i++) {\n w = (this.words[i + shift] | 0) + carry;\n var right = (num.words[i] | 0) * mul;\n w -= right & 0x3ffffff;\n carry = (w >> 26) - ((right / 0x4000000) | 0);\n this.words[i + shift] = w & 0x3ffffff;\n }\n for (; i < this.length - shift; i++) {\n w = (this.words[i + shift] | 0) + carry;\n carry = w >> 26;\n this.words[i + shift] = w & 0x3ffffff;\n }\n\n if (carry === 0) return this.strip();\n\n // Subtraction overflow\n assert(carry === -1);\n carry = 0;\n for (i = 0; i < this.length; i++) {\n w = -(this.words[i] | 0) + carry;\n carry = w >> 26;\n this.words[i] = w & 0x3ffffff;\n }\n this.negative = 1;\n\n return this.strip();\n };\n\n BN.prototype._wordDiv = function _wordDiv (num, mode) {\n var shift = this.length - num.length;\n\n var a = this.clone();\n var b = num;\n\n // Normalize\n var bhi = b.words[b.length - 1] | 0;\n var bhiBits = this._countBits(bhi);\n shift = 26 - bhiBits;\n if (shift !== 0) {\n b = b.ushln(shift);\n a.iushln(shift);\n bhi = b.words[b.length - 1] | 0;\n }\n\n // Initialize quotient\n var m = a.length - b.length;\n var q;\n\n if (mode !== 'mod') {\n q = new BN(null);\n q.length = m + 1;\n q.words = new Array(q.length);\n for (var i = 0; i < q.length; i++) {\n q.words[i] = 0;\n }\n }\n\n var diff = a.clone()._ishlnsubmul(b, 1, m);\n if (diff.negative === 0) {\n a = diff;\n if (q) {\n q.words[m] = 1;\n }\n }\n\n for (var j = m - 1; j >= 0; j--) {\n var qj = (a.words[b.length + j] | 0) * 0x4000000 +\n (a.words[b.length + j - 1] | 0);\n\n // NOTE: (qj / bhi) is (0x3ffffff * 0x4000000 + 0x3ffffff) / 0x2000000 max\n // (0x7ffffff)\n qj = Math.min((qj / bhi) | 0, 0x3ffffff);\n\n a._ishlnsubmul(b, qj, j);\n while (a.negative !== 0) {\n qj--;\n a.negative = 0;\n a._ishlnsubmul(b, 1, j);\n if (!a.isZero()) {\n a.negative ^= 1;\n }\n }\n if (q) {\n q.words[j] = qj;\n }\n }\n if (q) {\n q.strip();\n }\n a.strip();\n\n // Denormalize\n if (mode !== 'div' && shift !== 0) {\n a.iushrn(shift);\n }\n\n return {\n div: q || null,\n mod: a\n };\n };\n\n // NOTE: 1) `mode` can be set to `mod` to request mod only,\n // to `div` to request div only, or be absent to\n // request both div & mod\n // 2) `positive` is true if unsigned mod is requested\n BN.prototype.divmod = function divmod (num, mode, positive) {\n assert(!num.isZero());\n\n if (this.isZero()) {\n return {\n div: new BN(0),\n mod: new BN(0)\n };\n }\n\n var div, mod, res;\n if (this.negative !== 0 && num.negative === 0) {\n res = this.neg().divmod(num, mode);\n\n if (mode !== 'mod') {\n div = res.div.neg();\n }\n\n if (mode !== 'div') {\n mod = res.mod.neg();\n if (positive && mod.negative !== 0) {\n mod.iadd(num);\n }\n }\n\n return {\n div: div,\n mod: mod\n };\n }\n\n if (this.negative === 0 && num.negative !== 0) {\n res = this.divmod(num.neg(), mode);\n\n if (mode !== 'mod') {\n div = res.div.neg();\n }\n\n return {\n div: div,\n mod: res.mod\n };\n }\n\n if ((this.negative & num.negative) !== 0) {\n res = this.neg().divmod(num.neg(), mode);\n\n if (mode !== 'div') {\n mod = res.mod.neg();\n if (positive && mod.negative !== 0) {\n mod.isub(num);\n }\n }\n\n return {\n div: res.div,\n mod: mod\n };\n }\n\n // Both numbers are positive at this point\n\n // Strip both numbers to approximate shift value\n if (num.length > this.length || this.cmp(num) < 0) {\n return {\n div: new BN(0),\n mod: this\n };\n }\n\n // Very short reduction\n if (num.length === 1) {\n if (mode === 'div') {\n return {\n div: this.divn(num.words[0]),\n mod: null\n };\n }\n\n if (mode === 'mod') {\n return {\n div: null,\n mod: new BN(this.modn(num.words[0]))\n };\n }\n\n return {\n div: this.divn(num.words[0]),\n mod: new BN(this.modn(num.words[0]))\n };\n }\n\n return this._wordDiv(num, mode);\n };\n\n // Find `this` / `num`\n BN.prototype.div = function div (num) {\n return this.divmod(num, 'div', false).div;\n };\n\n // Find `this` % `num`\n BN.prototype.mod = function mod (num) {\n return this.divmod(num, 'mod', false).mod;\n };\n\n BN.prototype.umod = function umod (num) {\n return this.divmod(num, 'mod', true).mod;\n };\n\n // Find Round(`this` / `num`)\n BN.prototype.divRound = function divRound (num) {\n var dm = this.divmod(num);\n\n // Fast case - exact division\n if (dm.mod.isZero()) return dm.div;\n\n var mod = dm.div.negative !== 0 ? dm.mod.isub(num) : dm.mod;\n\n var half = num.ushrn(1);\n var r2 = num.andln(1);\n var cmp = mod.cmp(half);\n\n // Round down\n if (cmp < 0 || r2 === 1 && cmp === 0) return dm.div;\n\n // Round up\n return dm.div.negative !== 0 ? dm.div.isubn(1) : dm.div.iaddn(1);\n };\n\n BN.prototype.modn = function modn (num) {\n assert(num <= 0x3ffffff);\n var p = (1 << 26) % num;\n\n var acc = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n acc = (p * acc + (this.words[i] | 0)) % num;\n }\n\n return acc;\n };\n\n // In-place division by number\n BN.prototype.idivn = function idivn (num) {\n assert(num <= 0x3ffffff);\n\n var carry = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n var w = (this.words[i] | 0) + carry * 0x4000000;\n this.words[i] = (w / num) | 0;\n carry = w % num;\n }\n\n return this.strip();\n };\n\n BN.prototype.divn = function divn (num) {\n return this.clone().idivn(num);\n };\n\n BN.prototype.egcd = function egcd (p) {\n assert(p.negative === 0);\n assert(!p.isZero());\n\n var x = this;\n var y = p.clone();\n\n if (x.negative !== 0) {\n x = x.umod(p);\n } else {\n x = x.clone();\n }\n\n // A * x + B * y = x\n var A = new BN(1);\n var B = new BN(0);\n\n // C * x + D * y = y\n var C = new BN(0);\n var D = new BN(1);\n\n var g = 0;\n\n while (x.isEven() && y.isEven()) {\n x.iushrn(1);\n y.iushrn(1);\n ++g;\n }\n\n var yp = y.clone();\n var xp = x.clone();\n\n while (!x.isZero()) {\n for (var i = 0, im = 1; (x.words[0] & im) === 0 && i < 26; ++i, im <<= 1);\n if (i > 0) {\n x.iushrn(i);\n while (i-- > 0) {\n if (A.isOdd() || B.isOdd()) {\n A.iadd(yp);\n B.isub(xp);\n }\n\n A.iushrn(1);\n B.iushrn(1);\n }\n }\n\n for (var j = 0, jm = 1; (y.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1);\n if (j > 0) {\n y.iushrn(j);\n while (j-- > 0) {\n if (C.isOdd() || D.isOdd()) {\n C.iadd(yp);\n D.isub(xp);\n }\n\n C.iushrn(1);\n D.iushrn(1);\n }\n }\n\n if (x.cmp(y) >= 0) {\n x.isub(y);\n A.isub(C);\n B.isub(D);\n } else {\n y.isub(x);\n C.isub(A);\n D.isub(B);\n }\n }\n\n return {\n a: C,\n b: D,\n gcd: y.iushln(g)\n };\n };\n\n // This is reduced incarnation of the binary EEA\n // above, designated to invert members of the\n // _prime_ fields F(p) at a maximal speed\n BN.prototype._invmp = function _invmp (p) {\n assert(p.negative === 0);\n assert(!p.isZero());\n\n var a = this;\n var b = p.clone();\n\n if (a.negative !== 0) {\n a = a.umod(p);\n } else {\n a = a.clone();\n }\n\n var x1 = new BN(1);\n var x2 = new BN(0);\n\n var delta = b.clone();\n\n while (a.cmpn(1) > 0 && b.cmpn(1) > 0) {\n for (var i = 0, im = 1; (a.words[0] & im) === 0 && i < 26; ++i, im <<= 1);\n if (i > 0) {\n a.iushrn(i);\n while (i-- > 0) {\n if (x1.isOdd()) {\n x1.iadd(delta);\n }\n\n x1.iushrn(1);\n }\n }\n\n for (var j = 0, jm = 1; (b.words[0] & jm) === 0 && j < 26; ++j, jm <<= 1);\n if (j > 0) {\n b.iushrn(j);\n while (j-- > 0) {\n if (x2.isOdd()) {\n x2.iadd(delta);\n }\n\n x2.iushrn(1);\n }\n }\n\n if (a.cmp(b) >= 0) {\n a.isub(b);\n x1.isub(x2);\n } else {\n b.isub(a);\n x2.isub(x1);\n }\n }\n\n var res;\n if (a.cmpn(1) === 0) {\n res = x1;\n } else {\n res = x2;\n }\n\n if (res.cmpn(0) < 0) {\n res.iadd(p);\n }\n\n return res;\n };\n\n BN.prototype.gcd = function gcd (num) {\n if (this.isZero()) return num.abs();\n if (num.isZero()) return this.abs();\n\n var a = this.clone();\n var b = num.clone();\n a.negative = 0;\n b.negative = 0;\n\n // Remove common factor of two\n for (var shift = 0; a.isEven() && b.isEven(); shift++) {\n a.iushrn(1);\n b.iushrn(1);\n }\n\n do {\n while (a.isEven()) {\n a.iushrn(1);\n }\n while (b.isEven()) {\n b.iushrn(1);\n }\n\n var r = a.cmp(b);\n if (r < 0) {\n // Swap `a` and `b` to make `a` always bigger than `b`\n var t = a;\n a = b;\n b = t;\n } else if (r === 0 || b.cmpn(1) === 0) {\n break;\n }\n\n a.isub(b);\n } while (true);\n\n return b.iushln(shift);\n };\n\n // Invert number in the field F(num)\n BN.prototype.invm = function invm (num) {\n return this.egcd(num).a.umod(num);\n };\n\n BN.prototype.isEven = function isEven () {\n return (this.words[0] & 1) === 0;\n };\n\n BN.prototype.isOdd = function isOdd () {\n return (this.words[0] & 1) === 1;\n };\n\n // And first word and num\n BN.prototype.andln = function andln (num) {\n return this.words[0] & num;\n };\n\n // Increment at the bit position in-line\n BN.prototype.bincn = function bincn (bit) {\n assert(typeof bit === 'number');\n var r = bit % 26;\n var s = (bit - r) / 26;\n var q = 1 << r;\n\n // Fast case: bit is much higher than all existing words\n if (this.length <= s) {\n this._expand(s + 1);\n this.words[s] |= q;\n return this;\n }\n\n // Add bit and propagate, if needed\n var carry = q;\n for (var i = s; carry !== 0 && i < this.length; i++) {\n var w = this.words[i] | 0;\n w += carry;\n carry = w >>> 26;\n w &= 0x3ffffff;\n this.words[i] = w;\n }\n if (carry !== 0) {\n this.words[i] = carry;\n this.length++;\n }\n return this;\n };\n\n BN.prototype.isZero = function isZero () {\n return this.length === 1 && this.words[0] === 0;\n };\n\n BN.prototype.cmpn = function cmpn (num) {\n var negative = num < 0;\n\n if (this.negative !== 0 && !negative) return -1;\n if (this.negative === 0 && negative) return 1;\n\n this.strip();\n\n var res;\n if (this.length > 1) {\n res = 1;\n } else {\n if (negative) {\n num = -num;\n }\n\n assert(num <= 0x3ffffff, 'Number is too big');\n\n var w = this.words[0] | 0;\n res = w === num ? 0 : w < num ? -1 : 1;\n }\n if (this.negative !== 0) return -res | 0;\n return res;\n };\n\n // Compare two numbers and return:\n // 1 - if `this` > `num`\n // 0 - if `this` == `num`\n // -1 - if `this` < `num`\n BN.prototype.cmp = function cmp (num) {\n if (this.negative !== 0 && num.negative === 0) return -1;\n if (this.negative === 0 && num.negative !== 0) return 1;\n\n var res = this.ucmp(num);\n if (this.negative !== 0) return -res | 0;\n return res;\n };\n\n // Unsigned comparison\n BN.prototype.ucmp = function ucmp (num) {\n // At this point both numbers have the same sign\n if (this.length > num.length) return 1;\n if (this.length < num.length) return -1;\n\n var res = 0;\n for (var i = this.length - 1; i >= 0; i--) {\n var a = this.words[i] | 0;\n var b = num.words[i] | 0;\n\n if (a === b) continue;\n if (a < b) {\n res = -1;\n } else if (a > b) {\n res = 1;\n }\n break;\n }\n return res;\n };\n\n BN.prototype.gtn = function gtn (num) {\n return this.cmpn(num) === 1;\n };\n\n BN.prototype.gt = function gt (num) {\n return this.cmp(num) === 1;\n };\n\n BN.prototype.gten = function gten (num) {\n return this.cmpn(num) >= 0;\n };\n\n BN.prototype.gte = function gte (num) {\n return this.cmp(num) >= 0;\n };\n\n BN.prototype.ltn = function ltn (num) {\n return this.cmpn(num) === -1;\n };\n\n BN.prototype.lt = function lt (num) {\n return this.cmp(num) === -1;\n };\n\n BN.prototype.lten = function lten (num) {\n return this.cmpn(num) <= 0;\n };\n\n BN.prototype.lte = function lte (num) {\n return this.cmp(num) <= 0;\n };\n\n BN.prototype.eqn = function eqn (num) {\n return this.cmpn(num) === 0;\n };\n\n BN.prototype.eq = function eq (num) {\n return this.cmp(num) === 0;\n };\n\n //\n // A reduce context, could be using montgomery or something better, depending\n // on the `m` itself.\n //\n BN.red = function red (num) {\n return new Red(num);\n };\n\n BN.prototype.toRed = function toRed (ctx) {\n assert(!this.red, 'Already a number in reduction context');\n assert(this.negative === 0, 'red works only with positives');\n return ctx.convertTo(this)._forceRed(ctx);\n };\n\n BN.prototype.fromRed = function fromRed () {\n assert(this.red, 'fromRed works only with numbers in reduction context');\n return this.red.convertFrom(this);\n };\n\n BN.prototype._forceRed = function _forceRed (ctx) {\n this.red = ctx;\n return this;\n };\n\n BN.prototype.forceRed = function forceRed (ctx) {\n assert(!this.red, 'Already a number in reduction context');\n return this._forceRed(ctx);\n };\n\n BN.prototype.redAdd = function redAdd (num) {\n assert(this.red, 'redAdd works only with red numbers');\n return this.red.add(this, num);\n };\n\n BN.prototype.redIAdd = function redIAdd (num) {\n assert(this.red, 'redIAdd works only with red numbers');\n return this.red.iadd(this, num);\n };\n\n BN.prototype.redSub = function redSub (num) {\n assert(this.red, 'redSub works only with red numbers');\n return this.red.sub(this, num);\n };\n\n BN.prototype.redISub = function redISub (num) {\n assert(this.red, 'redISub works only with red numbers');\n return this.red.isub(this, num);\n };\n\n BN.prototype.redShl = function redShl (num) {\n assert(this.red, 'redShl works only with red numbers');\n return this.red.shl(this, num);\n };\n\n BN.prototype.redMul = function redMul (num) {\n assert(this.red, 'redMul works only with red numbers');\n this.red._verify2(this, num);\n return this.red.mul(this, num);\n };\n\n BN.prototype.redIMul = function redIMul (num) {\n assert(this.red, 'redMul works only with red numbers');\n this.red._verify2(this, num);\n return this.red.imul(this, num);\n };\n\n BN.prototype.redSqr = function redSqr () {\n assert(this.red, 'redSqr works only with red numbers');\n this.red._verify1(this);\n return this.red.sqr(this);\n };\n\n BN.prototype.redISqr = function redISqr () {\n assert(this.red, 'redISqr works only with red numbers');\n this.red._verify1(this);\n return this.red.isqr(this);\n };\n\n // Square root over p\n BN.prototype.redSqrt = function redSqrt () {\n assert(this.red, 'redSqrt works only with red numbers');\n this.red._verify1(this);\n return this.red.sqrt(this);\n };\n\n BN.prototype.redInvm = function redInvm () {\n assert(this.red, 'redInvm works only with red numbers');\n this.red._verify1(this);\n return this.red.invm(this);\n };\n\n // Return negative clone of `this` % `red modulo`\n BN.prototype.redNeg = function redNeg () {\n assert(this.red, 'redNeg works only with red numbers');\n this.red._verify1(this);\n return this.red.neg(this);\n };\n\n BN.prototype.redPow = function redPow (num) {\n assert(this.red && !num.red, 'redPow(normalNum)');\n this.red._verify1(this);\n return this.red.pow(this, num);\n };\n\n // Prime numbers with efficient reduction\n var primes = {\n k256: null,\n p224: null,\n p192: null,\n p25519: null\n };\n\n // Pseudo-Mersenne prime\n function MPrime (name, p) {\n // P = 2 ^ N - K\n this.name = name;\n this.p = new BN(p, 16);\n this.n = this.p.bitLength();\n this.k = new BN(1).iushln(this.n).isub(this.p);\n\n this.tmp = this._tmp();\n }\n\n MPrime.prototype._tmp = function _tmp () {\n var tmp = new BN(null);\n tmp.words = new Array(Math.ceil(this.n / 13));\n return tmp;\n };\n\n MPrime.prototype.ireduce = function ireduce (num) {\n // Assumes that `num` is less than `P^2`\n // num = HI * (2 ^ N - K) + HI * K + LO = HI * K + LO (mod P)\n var r = num;\n var rlen;\n\n do {\n this.split(r, this.tmp);\n r = this.imulK(r);\n r = r.iadd(this.tmp);\n rlen = r.bitLength();\n } while (rlen > this.n);\n\n var cmp = rlen < this.n ? -1 : r.ucmp(this.p);\n if (cmp === 0) {\n r.words[0] = 0;\n r.length = 1;\n } else if (cmp > 0) {\n r.isub(this.p);\n } else {\n if (r.strip !== undefined) {\n // r is BN v4 instance\n r.strip();\n } else {\n // r is BN v5 instance\n r._strip();\n }\n }\n\n return r;\n };\n\n MPrime.prototype.split = function split (input, out) {\n input.iushrn(this.n, 0, out);\n };\n\n MPrime.prototype.imulK = function imulK (num) {\n return num.imul(this.k);\n };\n\n function K256 () {\n MPrime.call(\n this,\n 'k256',\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f');\n }\n inherits(K256, MPrime);\n\n K256.prototype.split = function split (input, output) {\n // 256 = 9 * 26 + 22\n var mask = 0x3fffff;\n\n var outLen = Math.min(input.length, 9);\n for (var i = 0; i < outLen; i++) {\n output.words[i] = input.words[i];\n }\n output.length = outLen;\n\n if (input.length <= 9) {\n input.words[0] = 0;\n input.length = 1;\n return;\n }\n\n // Shift by 9 limbs\n var prev = input.words[9];\n output.words[output.length++] = prev & mask;\n\n for (i = 10; i < input.length; i++) {\n var next = input.words[i] | 0;\n input.words[i - 10] = ((next & mask) << 4) | (prev >>> 22);\n prev = next;\n }\n prev >>>= 22;\n input.words[i - 10] = prev;\n if (prev === 0 && input.length > 10) {\n input.length -= 10;\n } else {\n input.length -= 9;\n }\n };\n\n K256.prototype.imulK = function imulK (num) {\n // K = 0x1000003d1 = [ 0x40, 0x3d1 ]\n num.words[num.length] = 0;\n num.words[num.length + 1] = 0;\n num.length += 2;\n\n // bounded at: 0x40 * 0x3ffffff + 0x3d0 = 0x100000390\n var lo = 0;\n for (var i = 0; i < num.length; i++) {\n var w = num.words[i] | 0;\n lo += w * 0x3d1;\n num.words[i] = lo & 0x3ffffff;\n lo = w * 0x40 + ((lo / 0x4000000) | 0);\n }\n\n // Fast length reduction\n if (num.words[num.length - 1] === 0) {\n num.length--;\n if (num.words[num.length - 1] === 0) {\n num.length--;\n }\n }\n return num;\n };\n\n function P224 () {\n MPrime.call(\n this,\n 'p224',\n 'ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001');\n }\n inherits(P224, MPrime);\n\n function P192 () {\n MPrime.call(\n this,\n 'p192',\n 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff');\n }\n inherits(P192, MPrime);\n\n function P25519 () {\n // 2 ^ 255 - 19\n MPrime.call(\n this,\n '25519',\n '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed');\n }\n inherits(P25519, MPrime);\n\n P25519.prototype.imulK = function imulK (num) {\n // K = 0x13\n var carry = 0;\n for (var i = 0; i < num.length; i++) {\n var hi = (num.words[i] | 0) * 0x13 + carry;\n var lo = hi & 0x3ffffff;\n hi >>>= 26;\n\n num.words[i] = lo;\n carry = hi;\n }\n if (carry !== 0) {\n num.words[num.length++] = carry;\n }\n return num;\n };\n\n // Exported mostly for testing purposes, use plain name instead\n BN._prime = function prime (name) {\n // Cached version of prime\n if (primes[name]) return primes[name];\n\n var prime;\n if (name === 'k256') {\n prime = new K256();\n } else if (name === 'p224') {\n prime = new P224();\n } else if (name === 'p192') {\n prime = new P192();\n } else if (name === 'p25519') {\n prime = new P25519();\n } else {\n throw new Error('Unknown prime ' + name);\n }\n primes[name] = prime;\n\n return prime;\n };\n\n //\n // Base reduction engine\n //\n function Red (m) {\n if (typeof m === 'string') {\n var prime = BN._prime(m);\n this.m = prime.p;\n this.prime = prime;\n } else {\n assert(m.gtn(1), 'modulus must be greater than 1');\n this.m = m;\n this.prime = null;\n }\n }\n\n Red.prototype._verify1 = function _verify1 (a) {\n assert(a.negative === 0, 'red works only with positives');\n assert(a.red, 'red works only with red numbers');\n };\n\n Red.prototype._verify2 = function _verify2 (a, b) {\n assert((a.negative | b.negative) === 0, 'red works only with positives');\n assert(a.red && a.red === b.red,\n 'red works only with red numbers');\n };\n\n Red.prototype.imod = function imod (a) {\n if (this.prime) return this.prime.ireduce(a)._forceRed(this);\n return a.umod(this.m)._forceRed(this);\n };\n\n Red.prototype.neg = function neg (a) {\n if (a.isZero()) {\n return a.clone();\n }\n\n return this.m.sub(a)._forceRed(this);\n };\n\n Red.prototype.add = function add (a, b) {\n this._verify2(a, b);\n\n var res = a.add(b);\n if (res.cmp(this.m) >= 0) {\n res.isub(this.m);\n }\n return res._forceRed(this);\n };\n\n Red.prototype.iadd = function iadd (a, b) {\n this._verify2(a, b);\n\n var res = a.iadd(b);\n if (res.cmp(this.m) >= 0) {\n res.isub(this.m);\n }\n return res;\n };\n\n Red.prototype.sub = function sub (a, b) {\n this._verify2(a, b);\n\n var res = a.sub(b);\n if (res.cmpn(0) < 0) {\n res.iadd(this.m);\n }\n return res._forceRed(this);\n };\n\n Red.prototype.isub = function isub (a, b) {\n this._verify2(a, b);\n\n var res = a.isub(b);\n if (res.cmpn(0) < 0) {\n res.iadd(this.m);\n }\n return res;\n };\n\n Red.prototype.shl = function shl (a, num) {\n this._verify1(a);\n return this.imod(a.ushln(num));\n };\n\n Red.prototype.imul = function imul (a, b) {\n this._verify2(a, b);\n return this.imod(a.imul(b));\n };\n\n Red.prototype.mul = function mul (a, b) {\n this._verify2(a, b);\n return this.imod(a.mul(b));\n };\n\n Red.prototype.isqr = function isqr (a) {\n return this.imul(a, a.clone());\n };\n\n Red.prototype.sqr = function sqr (a) {\n return this.mul(a, a);\n };\n\n Red.prototype.sqrt = function sqrt (a) {\n if (a.isZero()) return a.clone();\n\n var mod3 = this.m.andln(3);\n assert(mod3 % 2 === 1);\n\n // Fast case\n if (mod3 === 3) {\n var pow = this.m.add(new BN(1)).iushrn(2);\n return this.pow(a, pow);\n }\n\n // Tonelli-Shanks algorithm (Totally unoptimized and slow)\n //\n // Find Q and S, that Q * 2 ^ S = (P - 1)\n var q = this.m.subn(1);\n var s = 0;\n while (!q.isZero() && q.andln(1) === 0) {\n s++;\n q.iushrn(1);\n }\n assert(!q.isZero());\n\n var one = new BN(1).toRed(this);\n var nOne = one.redNeg();\n\n // Find quadratic non-residue\n // NOTE: Max is such because of generalized Riemann hypothesis.\n var lpow = this.m.subn(1).iushrn(1);\n var z = this.m.bitLength();\n z = new BN(2 * z * z).toRed(this);\n\n while (this.pow(z, lpow).cmp(nOne) !== 0) {\n z.redIAdd(nOne);\n }\n\n var c = this.pow(z, q);\n var r = this.pow(a, q.addn(1).iushrn(1));\n var t = this.pow(a, q);\n var m = s;\n while (t.cmp(one) !== 0) {\n var tmp = t;\n for (var i = 0; tmp.cmp(one) !== 0; i++) {\n tmp = tmp.redSqr();\n }\n assert(i < m);\n var b = this.pow(c, new BN(1).iushln(m - i - 1));\n\n r = r.redMul(b);\n c = b.redSqr();\n t = t.redMul(c);\n m = i;\n }\n\n return r;\n };\n\n Red.prototype.invm = function invm (a) {\n var inv = a._invmp(this.m);\n if (inv.negative !== 0) {\n inv.negative = 0;\n return this.imod(inv).redNeg();\n } else {\n return this.imod(inv);\n }\n };\n\n Red.prototype.pow = function pow (a, num) {\n if (num.isZero()) return new BN(1).toRed(this);\n if (num.cmpn(1) === 0) return a.clone();\n\n var windowSize = 4;\n var wnd = new Array(1 << windowSize);\n wnd[0] = new BN(1).toRed(this);\n wnd[1] = a;\n for (var i = 2; i < wnd.length; i++) {\n wnd[i] = this.mul(wnd[i - 1], a);\n }\n\n var res = wnd[0];\n var current = 0;\n var currentLen = 0;\n var start = num.bitLength() % 26;\n if (start === 0) {\n start = 26;\n }\n\n for (i = num.length - 1; i >= 0; i--) {\n var word = num.words[i];\n for (var j = start - 1; j >= 0; j--) {\n var bit = (word >> j) & 1;\n if (res !== wnd[0]) {\n res = this.sqr(res);\n }\n\n if (bit === 0 && current === 0) {\n currentLen = 0;\n continue;\n }\n\n current <<= 1;\n current |= bit;\n currentLen++;\n if (currentLen !== windowSize && (i !== 0 || j !== 0)) continue;\n\n res = this.mul(res, wnd[current]);\n currentLen = 0;\n current = 0;\n }\n start = 26;\n }\n\n return res;\n };\n\n Red.prototype.convertTo = function convertTo (num) {\n var r = num.umod(this.m);\n\n return r === num ? r.clone() : r;\n };\n\n Red.prototype.convertFrom = function convertFrom (num) {\n var res = num.clone();\n res.red = null;\n return res;\n };\n\n //\n // Montgomery method engine\n //\n\n BN.mont = function mont (num) {\n return new Mont(num);\n };\n\n function Mont (m) {\n Red.call(this, m);\n\n this.shift = this.m.bitLength();\n if (this.shift % 26 !== 0) {\n this.shift += 26 - (this.shift % 26);\n }\n\n this.r = new BN(1).iushln(this.shift);\n this.r2 = this.imod(this.r.sqr());\n this.rinv = this.r._invmp(this.m);\n\n this.minv = this.rinv.mul(this.r).isubn(1).div(this.m);\n this.minv = this.minv.umod(this.r);\n this.minv = this.r.sub(this.minv);\n }\n inherits(Mont, Red);\n\n Mont.prototype.convertTo = function convertTo (num) {\n return this.imod(num.ushln(this.shift));\n };\n\n Mont.prototype.convertFrom = function convertFrom (num) {\n var r = this.imod(num.mul(this.rinv));\n r.red = null;\n return r;\n };\n\n Mont.prototype.imul = function imul (a, b) {\n if (a.isZero() || b.isZero()) {\n a.words[0] = 0;\n a.length = 1;\n return a;\n }\n\n var t = a.imul(b);\n var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);\n var u = t.isub(c).iushrn(this.shift);\n var res = u;\n\n if (u.cmp(this.m) >= 0) {\n res = u.isub(this.m);\n } else if (u.cmpn(0) < 0) {\n res = u.iadd(this.m);\n }\n\n return res._forceRed(this);\n };\n\n Mont.prototype.mul = function mul (a, b) {\n if (a.isZero() || b.isZero()) return new BN(0)._forceRed(this);\n\n var t = a.mul(b);\n var c = t.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m);\n var u = t.isub(c).iushrn(this.shift);\n var res = u;\n if (u.cmp(this.m) >= 0) {\n res = u.isub(this.m);\n } else if (u.cmpn(0) < 0) {\n res = u.iadd(this.m);\n }\n\n return res._forceRed(this);\n };\n\n Mont.prototype.invm = function invm (a) {\n // (AR)^-1 * R^2 = (A^-1 * R^-1) * R^2 = A^-1 * R\n var res = this.imod(a._invmp(this.m).mul(this.r2));\n return res._forceRed(this);\n };\n})(typeof module === 'undefined' || module, this);\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.bowser=t():e.bowser=t()}(this,(function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,\"a\",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p=\"\",r(r.s=90)}({17:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n=r(18),i=function(){function e(){}return e.getFirstMatch=function(e,t){var r=t.match(e);return r&&r.length>0&&r[1]||\"\"},e.getSecondMatch=function(e,t){var r=t.match(e);return r&&r.length>1&&r[2]||\"\"},e.matchAndReturnConst=function(e,t,r){if(e.test(t))return r},e.getWindowsVersionName=function(e){switch(e){case\"NT\":return\"NT\";case\"XP\":return\"XP\";case\"NT 5.0\":return\"2000\";case\"NT 5.1\":return\"XP\";case\"NT 5.2\":return\"2003\";case\"NT 6.0\":return\"Vista\";case\"NT 6.1\":return\"7\";case\"NT 6.2\":return\"8\";case\"NT 6.3\":return\"8.1\";case\"NT 10.0\":return\"10\";default:return}},e.getMacOSVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return\"Leopard\";case 6:return\"Snow Leopard\";case 7:return\"Lion\";case 8:return\"Mountain Lion\";case 9:return\"Mavericks\";case 10:return\"Yosemite\";case 11:return\"El Capitan\";case 12:return\"Sierra\";case 13:return\"High Sierra\";case 14:return\"Mojave\";case 15:return\"Catalina\";default:return}},e.getAndroidVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?\"Cupcake\":1===t[0]&&t[1]>=6?\"Donut\":2===t[0]&&t[1]<2?\"Eclair\":2===t[0]&&2===t[1]?\"Froyo\":2===t[0]&&t[1]>2?\"Gingerbread\":3===t[0]?\"Honeycomb\":4===t[0]&&t[1]<1?\"Ice Cream Sandwich\":4===t[0]&&t[1]<4?\"Jelly Bean\":4===t[0]&&t[1]>=4?\"KitKat\":5===t[0]?\"Lollipop\":6===t[0]?\"Marshmallow\":7===t[0]?\"Nougat\":8===t[0]?\"Oreo\":9===t[0]?\"Pie\":void 0},e.getVersionPrecision=function(e){return e.split(\".\").length},e.compareVersions=function(t,r,n){void 0===n&&(n=!1);var i=e.getVersionPrecision(t),s=e.getVersionPrecision(r),a=Math.max(i,s),o=0,u=e.map([t,r],(function(t){var r=a-e.getVersionPrecision(t),n=t+new Array(r+1).join(\".0\");return e.map(n.split(\".\"),(function(e){return new Array(20-e.length).join(\"0\")+e})).reverse()}));for(n&&(o=a-Math.min(i,s)),a-=1;a>=o;){if(u[0][a]>u[1][a])return 1;if(u[0][a]===u[1][a]){if(a===o)return 0;a-=1}else if(u[0][a]1?i-1:0),a=1;a0){var a=Object.keys(r),u=o.default.find(a,(function(e){return t.isOS(e)}));if(u){var d=this.satisfies(r[u]);if(void 0!==d)return d}var c=o.default.find(a,(function(e){return t.isPlatform(e)}));if(c){var f=this.satisfies(r[c]);if(void 0!==f)return f}}if(s>0){var l=Object.keys(i),h=o.default.find(l,(function(e){return t.isBrowser(e,!0)}));if(void 0!==h)return this.compareVersion(i[h])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var r=this.getBrowserName().toLowerCase(),n=e.toLowerCase(),i=o.default.getBrowserTypeByAlias(n);return t&&i&&(n=i.toLowerCase()),n===r},t.compareVersion=function(e){var t=[0],r=e,n=!1,i=this.getBrowserVersion();if(\"string\"==typeof i)return\">\"===e[0]||\"<\"===e[0]?(r=e.substr(1),\"=\"===e[1]?(n=!0,r=e.substr(2)):t=[],\">\"===e[0]?t.push(1):t.push(-1)):\"=\"===e[0]?r=e.substr(1):\"~\"===e[0]&&(n=!0,r=e.substr(1)),t.indexOf(o.default.compareVersions(i,r,n))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e}();t.default=d,e.exports=t.default},92:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n};var s=/version\\/(\\d+(\\.?_?\\d+)+)/i,a=[{test:[/googlebot/i],describe:function(e){var t={name:\"Googlebot\"},r=i.default.getFirstMatch(/googlebot\\/(\\d+(\\.\\d+))/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/opera/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:opera)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opr\\/|opios/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(/(?:opr|opios)[\\s/](\\S+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:\"Samsung Internet for Android\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:SamsungBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Whale/i],describe:function(e){var t={name:\"NAVER Whale Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:whale)[\\s/](\\d+(?:\\.\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:\"MZ Browser\"},r=i.default.getFirstMatch(/(?:MZBrowser)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/focus/i],describe:function(e){var t={name:\"Focus\"},r=i.default.getFirstMatch(/(?:focus)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/swing/i],describe:function(e){var t={name:\"Swing\"},r=i.default.getFirstMatch(/(?:swing)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/coast/i],describe:function(e){var t={name:\"Opera Coast\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:coast)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opt\\/\\d+(?:.?_?\\d+)+/i],describe:function(e){var t={name:\"Opera Touch\"},r=i.default.getFirstMatch(/(?:opt)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/yabrowser/i],describe:function(e){var t={name:\"Yandex Browser\"},r=i.default.getFirstMatch(/(?:yabrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:\"UC Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:ucbrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:\"Maxthon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/epiphany/i],describe:function(e){var t={name:\"Epiphany\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:epiphany)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/puffin/i],describe:function(e){var t={name:\"Puffin\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:puffin)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sleipnir/i],describe:function(e){var t={name:\"Sleipnir\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:sleipnir)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/k-meleon/i],describe:function(e){var t={name:\"K-Meleon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:k-meleon)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/micromessenger/i],describe:function(e){var t={name:\"WeChat\"},r=i.default.getFirstMatch(/(?:micromessenger)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?\"QQ Browser Lite\":\"QQ Browser\"},r=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/msie|trident/i],describe:function(e){var t={name:\"Internet Explorer\"},r=i.default.getFirstMatch(/(?:msie |rv:)(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/\\sedg\\//i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getFirstMatch(/\\sedg\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getSecondMatch(/edg([ea]|ios)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/vivaldi/i],describe:function(e){var t={name:\"Vivaldi\"},r=i.default.getFirstMatch(/vivaldi\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/seamonkey/i],describe:function(e){var t={name:\"SeaMonkey\"},r=i.default.getFirstMatch(/seamonkey\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sailfish/i],describe:function(e){var t={name:\"Sailfish\"},r=i.default.getFirstMatch(/sailfish\\s?browser\\/(\\d+(\\.\\d+)?)/i,e);return r&&(t.version=r),t}},{test:[/silk/i],describe:function(e){var t={name:\"Amazon Silk\"},r=i.default.getFirstMatch(/silk\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/phantom/i],describe:function(e){var t={name:\"PhantomJS\"},r=i.default.getFirstMatch(/phantomjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/slimerjs/i],describe:function(e){var t={name:\"SlimerJS\"},r=i.default.getFirstMatch(/slimerjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t={name:\"BlackBerry\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/blackberry[\\d]+\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:\"WebOS Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/bada/i],describe:function(e){var t={name:\"Bada\"},r=i.default.getFirstMatch(/dolfin\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/tizen/i],describe:function(e){var t={name:\"Tizen\"},r=i.default.getFirstMatch(/(?:tizen\\s?)?browser\\/(\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qupzilla/i],describe:function(e){var t={name:\"QupZilla\"},r=i.default.getFirstMatch(/(?:qupzilla)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:\"Firefox\"},r=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/electron/i],describe:function(e){var t={name:\"Electron\"},r=i.default.getFirstMatch(/(?:electron)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:\"Miui\"},r=i.default.getFirstMatch(/(?:MiuiBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/chromium/i],describe:function(e){var t={name:\"Chromium\"},r=i.default.getFirstMatch(/(?:chromium)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:\"Chrome\"},r=i.default.getFirstMatch(/(?:chrome|crios|crmo)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/GSA/i],describe:function(e){var t={name:\"Google Search\"},r=i.default.getFirstMatch(/(?:GSA)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t={name:\"Android Browser\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/playstation 4/i],describe:function(e){var t={name:\"PlayStation 4\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:\"Safari\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search(\"\\\\(\")?/^(.*)\\/(.*)[ \\t]\\((.*)/:/^(.*)\\/(.*) /;return{name:i.default.getFirstMatch(t,e),version:i.default.getSecondMatch(t,e)}}}];t.default=a,e.exports=t.default},93:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/Roku\\/DVP/],describe:function(e){var t=i.default.getFirstMatch(/Roku\\/DVP-(\\d+\\.\\d+)/i,e);return{name:s.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=i.default.getFirstMatch(/windows phone (?:os)?\\s?(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=i.default.getFirstMatch(/Windows ((NT|XP)( \\d\\d?.\\d)?)/i,e),r=i.default.getWindowsVersionName(t);return{name:s.OS_MAP.Windows,version:t,versionName:r}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(e){var t={name:s.OS_MAP.iOS},r=i.default.getSecondMatch(/(Version\\/)(\\d[\\d.]+)/,e);return r&&(t.version=r),t}},{test:[/macintosh/i],describe:function(e){var t=i.default.getFirstMatch(/mac os x (\\d+(\\.?_?\\d+)+)/i,e).replace(/[_\\s]/g,\".\"),r=i.default.getMacOSVersionName(t),n={name:s.OS_MAP.MacOS,version:t};return r&&(n.versionName=r),n}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=i.default.getFirstMatch(/os (\\d+([_\\s]\\d+)*) like mac os x/i,e).replace(/[_\\s]/g,\".\");return{name:s.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t=i.default.getFirstMatch(/android[\\s/-](\\d+(\\.\\d+)*)/i,e),r=i.default.getAndroidVersionName(t),n={name:s.OS_MAP.Android,version:t};return r&&(n.versionName=r),n}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=i.default.getFirstMatch(/(?:web|hpw)[o0]s\\/(\\d+(\\.\\d+)*)/i,e),r={name:s.OS_MAP.WebOS};return t&&t.length&&(r.version=t),r}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t=i.default.getFirstMatch(/rim\\stablet\\sos\\s(\\d+(\\.\\d+)*)/i,e)||i.default.getFirstMatch(/blackberry\\d+\\/(\\d+([_\\s]\\d+)*)/i,e)||i.default.getFirstMatch(/\\bbb(\\d+)/i,e);return{name:s.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=i.default.getFirstMatch(/bada\\/(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=i.default.getFirstMatch(/tizen[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:s.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:s.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=i.default.getFirstMatch(/PlayStation 4[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.PlayStation4,version:t}}}];t.default=a,e.exports=t.default},94:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/googlebot/i],describe:function(){return{type:\"bot\",vendor:\"Google\"}}},{test:[/huawei/i],describe:function(e){var t=i.default.getFirstMatch(/(can-l01)/i,e)&&\"Nova\",r={type:s.PLATFORMS_MAP.mobile,vendor:\"Huawei\"};return t&&(r.model=t),r}},{test:[/nexus\\s*(?:7|8|9|10).*/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Nexus\"}}},{test:[/ipad/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/kftt build/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\",model:\"Kindle Fire HD 7\"}}},{test:[/silk/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),r=e.test(/like (ipod|iphone)/i);return t&&!r},describe:function(e){var t=i.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:s.PLATFORMS_MAP.mobile,vendor:\"Apple\",model:t}}},{test:[/nexus\\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Nexus\"}}},{test:[/[^-]mobi/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"blackberry\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"BlackBerry\"}}},{test:function(e){return\"bada\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"windows phone\"===e.getBrowserName()},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Microsoft\"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(\".\")[0]);return\"android\"===e.getOSName(!0)&&t>=3},describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){return\"android\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"macos\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop,vendor:\"Apple\"}}},{test:function(e){return\"windows\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"linux\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"playstation 4\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}},{test:function(e){return\"roku\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}}];t.default=a,e.exports=t.default},95:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:function(e){return\"microsoft edge\"===e.getBrowserName(!0)},describe:function(e){if(/\\sedg\\//i.test(e))return{name:s.ENGINE_MAP.Blink};var t=i.default.getFirstMatch(/edge\\/(\\d+(\\.?_?\\d+)+)/i,e);return{name:s.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:s.ENGINE_MAP.Trident},r=i.default.getFirstMatch(/trident\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:s.ENGINE_MAP.Presto},r=i.default.getFirstMatch(/presto\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=e.test(/gecko/i),r=e.test(/like gecko/i);return t&&!r},describe:function(e){var t={name:s.ENGINE_MAP.Gecko},r=i.default.getFirstMatch(/gecko\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(apple)?webkit\\/537\\.36/i],describe:function(){return{name:s.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:s.ENGINE_MAP.WebKit},r=i.default.getFirstMatch(/webkit\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}}];t.default=a,e.exports=t.default}})}));","var r;\n\nmodule.exports = function rand(len) {\n if (!r)\n r = new Rand(null);\n\n return r.generate(len);\n};\n\nfunction Rand(rand) {\n this.rand = rand;\n}\nmodule.exports.Rand = Rand;\n\nRand.prototype.generate = function generate(len) {\n return this._rand(len);\n};\n\n// Emulate crypto API using randy\nRand.prototype._rand = function _rand(n) {\n if (this.rand.getBytes)\n return this.rand.getBytes(n);\n\n var res = new Uint8Array(n);\n for (var i = 0; i < res.length; i++)\n res[i] = this.rand.getByte();\n return res;\n};\n\nif (typeof self === 'object') {\n if (self.crypto && self.crypto.getRandomValues) {\n // Modern browsers\n Rand.prototype._rand = function _rand(n) {\n var arr = new Uint8Array(n);\n self.crypto.getRandomValues(arr);\n return arr;\n };\n } else if (self.msCrypto && self.msCrypto.getRandomValues) {\n // IE\n Rand.prototype._rand = function _rand(n) {\n var arr = new Uint8Array(n);\n self.msCrypto.getRandomValues(arr);\n return arr;\n };\n\n // Safari's WebWorkers do not have `crypto`\n } else if (typeof window === 'object') {\n // Old junk\n Rand.prototype._rand = function() {\n throw new Error('Not implemented yet');\n };\n }\n} else {\n // Node.js or Web worker with no crypto support\n try {\n var crypto = require('crypto');\n if (typeof crypto.randomBytes !== 'function')\n throw new Error('Not supported');\n\n Rand.prototype._rand = function _rand(n) {\n return crypto.randomBytes(n);\n };\n } catch (e) {\n }\n}\n","var basex = require('base-x')\nvar ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'\n\nmodule.exports = basex(ALPHABET)\n","'use strict'\n\nvar base58 = require('bs58')\nvar Buffer = require('safe-buffer').Buffer\n\nmodule.exports = function (checksumFn) {\n // Encode a buffer as a base58-check encoded string\n function encode (payload) {\n var checksum = checksumFn(payload)\n\n return base58.encode(Buffer.concat([\n payload,\n checksum\n ], payload.length + 4))\n }\n\n function decodeRaw (buffer) {\n var payload = buffer.slice(0, -4)\n var checksum = buffer.slice(-4)\n var newChecksum = checksumFn(payload)\n\n if (checksum[0] ^ newChecksum[0] |\n checksum[1] ^ newChecksum[1] |\n checksum[2] ^ newChecksum[2] |\n checksum[3] ^ newChecksum[3]) return\n\n return payload\n }\n\n // Decode a base58-check encoded string to a buffer, no result if checksum is wrong\n function decodeUnsafe (string) {\n var buffer = base58.decodeUnsafe(string)\n if (!buffer) return\n\n return decodeRaw(buffer)\n }\n\n function decode (string) {\n var buffer = base58.decode(string)\n var payload = decodeRaw(buffer, checksumFn)\n if (!payload) throw new Error('Invalid checksum')\n return payload\n }\n\n return {\n encode: encode,\n decode: decode,\n decodeUnsafe: decodeUnsafe\n }\n}\n","'use strict'\n\nvar createHash = require('create-hash')\nvar bs58checkBase = require('./base')\n\n// SHA256(SHA256(buffer))\nfunction sha256x2 (buffer) {\n var tmp = createHash('sha256').update(buffer).digest()\n return createHash('sha256').update(tmp).digest()\n}\n\nmodule.exports = bs58checkBase(sha256x2)\n","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nconst base64 = require('base64-js')\nconst ieee754 = require('ieee754')\nconst customInspectSymbol =\n (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n : null\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\nconst K_MAX_LENGTH = 0x7fffffff\nexports.kMaxLength = K_MAX_LENGTH\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */\nBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport()\n\nif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n typeof console.error === 'function') {\n console.error(\n 'This browser lacks typed array (Uint8Array) support which is required by ' +\n '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n )\n}\n\nfunction typedArraySupport () {\n // Can typed array instances can be augmented?\n try {\n const arr = new Uint8Array(1)\n const proto = { foo: function () { return 42 } }\n Object.setPrototypeOf(proto, Uint8Array.prototype)\n Object.setPrototypeOf(arr, proto)\n return arr.foo() === 42\n } catch (e) {\n return false\n }\n}\n\nObject.defineProperty(Buffer.prototype, 'parent', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.buffer\n }\n})\n\nObject.defineProperty(Buffer.prototype, 'offset', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.byteOffset\n }\n})\n\nfunction createBuffer (length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n }\n // Return an augmented `Uint8Array` instance\n const buf = new Uint8Array(length)\n Object.setPrototypeOf(buf, Buffer.prototype)\n return buf\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new TypeError(\n 'The \"string\" argument must be of type string. Received type number'\n )\n }\n return allocUnsafe(arg)\n }\n return from(arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\nfunction from (value, encodingOrOffset, length) {\n if (typeof value === 'string') {\n return fromString(value, encodingOrOffset)\n }\n\n if (ArrayBuffer.isView(value)) {\n return fromArrayView(value)\n }\n\n if (value == null) {\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n }\n\n if (isInstance(value, ArrayBuffer) ||\n (value && isInstance(value.buffer, ArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof SharedArrayBuffer !== 'undefined' &&\n (isInstance(value, SharedArrayBuffer) ||\n (value && isInstance(value.buffer, SharedArrayBuffer)))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof value === 'number') {\n throw new TypeError(\n 'The \"value\" argument must not be of type number. Received type number'\n )\n }\n\n const valueOf = value.valueOf && value.valueOf()\n if (valueOf != null && valueOf !== value) {\n return Buffer.from(valueOf, encodingOrOffset, length)\n }\n\n const b = fromObject(value)\n if (b) return b\n\n if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n typeof value[Symbol.toPrimitive] === 'function') {\n return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n }\n\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length)\n}\n\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype)\nObject.setPrototypeOf(Buffer, Uint8Array)\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be of type number')\n } else if (size < 0) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n}\n\nfunction alloc (size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpreted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(size).fill(fill, encoding)\n : createBuffer(size).fill(fill)\n }\n return createBuffer(size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(size, fill, encoding)\n}\n\nfunction allocUnsafe (size) {\n assertSize(size)\n return createBuffer(size < 0 ? 0 : checked(size) | 0)\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(size)\n}\n\nfunction fromString (string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n\n const length = byteLength(string, encoding) | 0\n let buf = createBuffer(length)\n\n const actual = buf.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual)\n }\n\n return buf\n}\n\nfunction fromArrayLike (array) {\n const length = array.length < 0 ? 0 : checked(array.length) | 0\n const buf = createBuffer(length)\n for (let i = 0; i < length; i += 1) {\n buf[i] = array[i] & 255\n }\n return buf\n}\n\nfunction fromArrayView (arrayView) {\n if (isInstance(arrayView, Uint8Array)) {\n const copy = new Uint8Array(arrayView)\n return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n }\n return fromArrayLike(arrayView)\n}\n\nfunction fromArrayBuffer (array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds')\n }\n\n let buf\n if (byteOffset === undefined && length === undefined) {\n buf = new Uint8Array(array)\n } else if (length === undefined) {\n buf = new Uint8Array(array, byteOffset)\n } else {\n buf = new Uint8Array(array, byteOffset, length)\n }\n\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(buf, Buffer.prototype)\n\n return buf\n}\n\nfunction fromObject (obj) {\n if (Buffer.isBuffer(obj)) {\n const len = checked(obj.length) | 0\n const buf = createBuffer(len)\n\n if (buf.length === 0) {\n return buf\n }\n\n obj.copy(buf, 0, 0, len)\n return buf\n }\n\n if (obj.length !== undefined) {\n if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n return createBuffer(0)\n }\n return fromArrayLike(obj)\n }\n\n if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data)\n }\n}\n\nfunction checked (length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= K_MAX_LENGTH) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return b != null && b._isBuffer === true &&\n b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n}\n\nBuffer.compare = function compare (a, b) {\n if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)\n if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n )\n }\n\n if (a === b) return 0\n\n let x = a.length\n let y = b.length\n\n for (let i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n let i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n const buffer = Buffer.allocUnsafe(length)\n let pos = 0\n for (i = 0; i < list.length; ++i) {\n let buf = list[i]\n if (isInstance(buf, Uint8Array)) {\n if (pos + buf.length > buffer.length) {\n if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf)\n buf.copy(buffer, pos)\n } else {\n Uint8Array.prototype.set.call(\n buffer,\n buf,\n pos\n )\n }\n } else if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n } else {\n buf.copy(buffer, pos)\n }\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n throw new TypeError(\n 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n 'Received type ' + typeof string\n )\n }\n\n const len = string.length\n const mustMatch = (arguments.length > 2 && arguments[2] === true)\n if (!mustMatch && len === 0) return 0\n\n // Use a for loop to avoid recursion\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) {\n return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n }\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n let loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n const i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n const len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (let i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n const len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (let i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n const len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (let i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n const length = this.length\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.toLocaleString = Buffer.prototype.toString\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n let str = ''\n const max = exports.INSPECT_MAX_BYTES\n str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()\n if (this.length > max) str += ' ... '\n return ''\n}\nif (customInspectSymbol) {\n Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (isInstance(target, Uint8Array)) {\n target = Buffer.from(target, target.offset, target.byteLength)\n }\n if (!Buffer.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n 'Received type ' + (typeof target)\n )\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n let x = thisEnd - thisStart\n let y = end - start\n const len = Math.min(x, y)\n\n const thisCopy = this.slice(thisStart, thisEnd)\n const targetCopy = target.slice(start, end)\n\n for (let i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (numberIsNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n let indexSize = 1\n let arrLength = arr.length\n let valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n let i\n if (dir) {\n let foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n let found = true\n for (let j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n const remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n const strLen = string.length\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n let i\n for (i = 0; i < length; ++i) {\n const parsed = parseInt(string.substr(i * 2, 2), 16)\n if (numberIsNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0\n if (isFinite(length)) {\n length = length >>> 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n const remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n case 'latin1':\n case 'binary':\n return asciiWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n const res = []\n\n let i = start\n while (i < end) {\n const firstByte = buf[i]\n let codePoint = null\n let bytesPerSequence = (firstByte > 0xEF)\n ? 4\n : (firstByte > 0xDF)\n ? 3\n : (firstByte > 0xBF)\n ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n let secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nconst MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n const len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n let res = ''\n let i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n const len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n let out = ''\n for (let i = start; i < end; ++i) {\n out += hexSliceLookupTable[buf[i]]\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n const bytes = buf.slice(start, end)\n let res = ''\n // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n for (let i = 0; i < bytes.length - 1; i += 2) {\n res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n const len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n const newBuf = this.subarray(start, end)\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(newBuf, Buffer.prototype)\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUintLE =\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUintBE =\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n let val = this[offset + --byteLength]\n let mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUint8 =\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUint16LE =\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUint16BE =\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUint32LE =\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUint32BE =\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const lo = first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24\n\n const hi = this[++offset] +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n last * 2 ** 24\n\n return BigInt(lo) + (BigInt(hi) << BigInt(32))\n})\n\nBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const hi = first * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n const lo = this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last\n\n return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n})\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let i = byteLength\n let mul = 1\n let val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = this[offset + 4] +\n this[offset + 5] * 2 ** 8 +\n this[offset + 6] * 2 ** 16 +\n (last << 24) // Overflow\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24)\n})\n\nBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = (first << 24) + // Overflow\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last)\n})\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUintLE =\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let mul = 1\n let i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUintBE =\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let i = byteLength - 1\n let mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUint8 =\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeUint16LE =\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeUint16BE =\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeUint32LE =\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeUint32BE =\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n return offset\n}\n\nfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset + 7] = lo\n lo = lo >> 8\n buf[offset + 6] = lo\n lo = lo >> 8\n buf[offset + 5] = lo\n lo = lo >> 8\n buf[offset + 4] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset + 3] = hi\n hi = hi >> 8\n buf[offset + 2] = hi\n hi = hi >> 8\n buf[offset + 1] = hi\n hi = hi >> 8\n buf[offset] = hi\n return offset + 8\n}\n\nBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = 0\n let mul = 1\n let sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = byteLength - 1\n let mul = 1\n let sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n const len = end - start\n\n if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end)\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n if (val.length === 1) {\n const code = val.charCodeAt(0)\n if ((encoding === 'utf8' && code < 128) ||\n encoding === 'latin1') {\n // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code\n }\n }\n } else if (typeof val === 'number') {\n val = val & 255\n } else if (typeof val === 'boolean') {\n val = Number(val)\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n let i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n const bytes = Buffer.isBuffer(val)\n ? val\n : Buffer.from(val, encoding)\n const len = bytes.length\n if (len === 0) {\n throw new TypeError('The value \"' + val +\n '\" is invalid for argument \"value\"')\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// CUSTOM ERRORS\n// =============\n\n// Simplified versions from Node, changed for Buffer-only usage\nconst errors = {}\nfunction E (sym, getMessage, Base) {\n errors[sym] = class NodeError extends Base {\n constructor () {\n super()\n\n Object.defineProperty(this, 'message', {\n value: getMessage.apply(this, arguments),\n writable: true,\n configurable: true\n })\n\n // Add the error code to the name to include it in the stack trace.\n this.name = `${this.name} [${sym}]`\n // Access the stack to generate the error message including the error code\n // from the name.\n this.stack // eslint-disable-line no-unused-expressions\n // Reset the name to the actual name.\n delete this.name\n }\n\n get code () {\n return sym\n }\n\n set code (value) {\n Object.defineProperty(this, 'code', {\n configurable: true,\n enumerable: true,\n value,\n writable: true\n })\n }\n\n toString () {\n return `${this.name} [${sym}]: ${this.message}`\n }\n }\n}\n\nE('ERR_BUFFER_OUT_OF_BOUNDS',\n function (name) {\n if (name) {\n return `${name} is outside of buffer bounds`\n }\n\n return 'Attempt to access memory outside buffer bounds'\n }, RangeError)\nE('ERR_INVALID_ARG_TYPE',\n function (name, actual) {\n return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n }, TypeError)\nE('ERR_OUT_OF_RANGE',\n function (str, range, input) {\n let msg = `The value of \"${str}\" is out of range.`\n let received = input\n if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n received = addNumericalSeparator(String(input))\n } else if (typeof input === 'bigint') {\n received = String(input)\n if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n received = addNumericalSeparator(received)\n }\n received += 'n'\n }\n msg += ` It must be ${range}. Received ${received}`\n return msg\n }, RangeError)\n\nfunction addNumericalSeparator (val) {\n let res = ''\n let i = val.length\n const start = val[0] === '-' ? 1 : 0\n for (; i >= start + 4; i -= 3) {\n res = `_${val.slice(i - 3, i)}${res}`\n }\n return `${val.slice(0, i)}${res}`\n}\n\n// CHECK FUNCTIONS\n// ===============\n\nfunction checkBounds (buf, offset, byteLength) {\n validateNumber(offset, 'offset')\n if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n boundsError(offset, buf.length - (byteLength + 1))\n }\n}\n\nfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n if (value > max || value < min) {\n const n = typeof min === 'bigint' ? 'n' : ''\n let range\n if (byteLength > 3) {\n if (min === 0 || min === BigInt(0)) {\n range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`\n } else {\n range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n `${(byteLength + 1) * 8 - 1}${n}`\n }\n } else {\n range = `>= ${min}${n} and <= ${max}${n}`\n }\n throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n }\n checkBounds(buf, offset, byteLength)\n}\n\nfunction validateNumber (value, name) {\n if (typeof value !== 'number') {\n throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n }\n}\n\nfunction boundsError (value, length, type) {\n if (Math.floor(value) !== value) {\n validateNumber(value, type)\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n }\n\n if (length < 0) {\n throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n }\n\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n `>= ${type ? 1 : 0} and <= ${length}`,\n value)\n}\n\n// HELPER FUNCTIONS\n// ================\n\nconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split('=')[0]\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n let codePoint\n const length = string.length\n let leadSurrogate = null\n const bytes = []\n\n for (let i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n let c, hi, lo\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n let i\n for (i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction isInstance (obj, type) {\n return obj instanceof type ||\n (obj != null && obj.constructor != null && obj.constructor.name != null &&\n obj.constructor.name === type.name)\n}\nfunction numberIsNaN (obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n}\n\n// Create lookup table for `toString('hex')`\n// See: https://github.com/feross/buffer/issues/219\nconst hexSliceLookupTable = (function () {\n const alphabet = '0123456789abcdef'\n const table = new Array(256)\n for (let i = 0; i < 16; ++i) {\n const i16 = i * 16\n for (let j = 0; j < 16; ++j) {\n table[i16 + j] = alphabet[i] + alphabet[j]\n }\n }\n return table\n})()\n\n// Return not function with Error if BigInt not supported\nfunction defineBigIntMethod (fn) {\n return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n}\n\nfunction BufferBigIntNotDefined () {\n throw new Error('BigInt not supported')\n}\n","var charenc = {\n // UTF-8 encoding\n utf8: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n return charenc.bin.stringToBytes(unescape(encodeURIComponent(str)));\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n return decodeURIComponent(escape(charenc.bin.bytesToString(bytes)));\n }\n },\n\n // Binary encoding\n bin: {\n // Convert a string to a byte array\n stringToBytes: function(str) {\n for (var bytes = [], i = 0; i < str.length; i++)\n bytes.push(str.charCodeAt(i) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a string\n bytesToString: function(bytes) {\n for (var str = [], i = 0; i < bytes.length; i++)\n str.push(String.fromCharCode(bytes[i]));\n return str.join('');\n }\n }\n};\n\nmodule.exports = charenc;\n","var Buffer = require('safe-buffer').Buffer\nvar Transform = require('stream').Transform\nvar StringDecoder = require('string_decoder').StringDecoder\nvar inherits = require('inherits')\n\nfunction CipherBase (hashMode) {\n Transform.call(this)\n this.hashMode = typeof hashMode === 'string'\n if (this.hashMode) {\n this[hashMode] = this._finalOrDigest\n } else {\n this.final = this._finalOrDigest\n }\n if (this._final) {\n this.__final = this._final\n this._final = null\n }\n this._decoder = null\n this._encoding = null\n}\ninherits(CipherBase, Transform)\n\nCipherBase.prototype.update = function (data, inputEnc, outputEnc) {\n if (typeof data === 'string') {\n data = Buffer.from(data, inputEnc)\n }\n\n var outData = this._update(data)\n if (this.hashMode) return this\n\n if (outputEnc) {\n outData = this._toString(outData, outputEnc)\n }\n\n return outData\n}\n\nCipherBase.prototype.setAutoPadding = function () {}\nCipherBase.prototype.getAuthTag = function () {\n throw new Error('trying to get auth tag in unsupported state')\n}\n\nCipherBase.prototype.setAuthTag = function () {\n throw new Error('trying to set auth tag in unsupported state')\n}\n\nCipherBase.prototype.setAAD = function () {\n throw new Error('trying to set aad in unsupported state')\n}\n\nCipherBase.prototype._transform = function (data, _, next) {\n var err\n try {\n if (this.hashMode) {\n this._update(data)\n } else {\n this.push(this._update(data))\n }\n } catch (e) {\n err = e\n } finally {\n next(err)\n }\n}\nCipherBase.prototype._flush = function (done) {\n var err\n try {\n this.push(this.__final())\n } catch (e) {\n err = e\n }\n\n done(err)\n}\nCipherBase.prototype._finalOrDigest = function (outputEnc) {\n var outData = this.__final() || Buffer.alloc(0)\n if (outputEnc) {\n outData = this._toString(outData, outputEnc, true)\n }\n return outData\n}\n\nCipherBase.prototype._toString = function (value, enc, fin) {\n if (!this._decoder) {\n this._decoder = new StringDecoder(enc)\n this._encoding = enc\n }\n\n if (this._encoding !== enc) throw new Error('can\\'t switch encodings')\n\n var out = this._decoder.write(value)\n if (fin) {\n out += this._decoder.end()\n }\n\n return out\n}\n\nmodule.exports = CipherBase\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","'use strict'\nvar inherits = require('inherits')\nvar MD5 = require('md5.js')\nvar RIPEMD160 = require('ripemd160')\nvar sha = require('sha.js')\nvar Base = require('cipher-base')\n\nfunction Hash (hash) {\n Base.call(this, 'digest')\n\n this._hash = hash\n}\n\ninherits(Hash, Base)\n\nHash.prototype._update = function (data) {\n this._hash.update(data)\n}\n\nHash.prototype._final = function () {\n return this._hash.digest()\n}\n\nmodule.exports = function createHash (alg) {\n alg = alg.toLowerCase()\n if (alg === 'md5') return new MD5()\n if (alg === 'rmd160' || alg === 'ripemd160') return new RIPEMD160()\n\n return new Hash(sha(alg))\n}\n","var MD5 = require('md5.js')\n\nmodule.exports = function (buffer) {\n return new MD5().update(buffer).digest()\n}\n","(function() {\n var base64map\n = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',\n\n crypt = {\n // Bit-wise rotation left\n rotl: function(n, b) {\n return (n << b) | (n >>> (32 - b));\n },\n\n // Bit-wise rotation right\n rotr: function(n, b) {\n return (n << (32 - b)) | (n >>> b);\n },\n\n // Swap big-endian to little-endian and vice versa\n endian: function(n) {\n // If number given, swap endian\n if (n.constructor == Number) {\n return crypt.rotl(n, 8) & 0x00FF00FF | crypt.rotl(n, 24) & 0xFF00FF00;\n }\n\n // Else, assume array and swap all items\n for (var i = 0; i < n.length; i++)\n n[i] = crypt.endian(n[i]);\n return n;\n },\n\n // Generate an array of any length of random bytes\n randomBytes: function(n) {\n for (var bytes = []; n > 0; n--)\n bytes.push(Math.floor(Math.random() * 256));\n return bytes;\n },\n\n // Convert a byte array to big-endian 32-bit words\n bytesToWords: function(bytes) {\n for (var words = [], i = 0, b = 0; i < bytes.length; i++, b += 8)\n words[b >>> 5] |= bytes[i] << (24 - b % 32);\n return words;\n },\n\n // Convert big-endian 32-bit words to a byte array\n wordsToBytes: function(words) {\n for (var bytes = [], b = 0; b < words.length * 32; b += 8)\n bytes.push((words[b >>> 5] >>> (24 - b % 32)) & 0xFF);\n return bytes;\n },\n\n // Convert a byte array to a hex string\n bytesToHex: function(bytes) {\n for (var hex = [], i = 0; i < bytes.length; i++) {\n hex.push((bytes[i] >>> 4).toString(16));\n hex.push((bytes[i] & 0xF).toString(16));\n }\n return hex.join('');\n },\n\n // Convert a hex string to a byte array\n hexToBytes: function(hex) {\n for (var bytes = [], c = 0; c < hex.length; c += 2)\n bytes.push(parseInt(hex.substr(c, 2), 16));\n return bytes;\n },\n\n // Convert a byte array to a base-64 string\n bytesToBase64: function(bytes) {\n for (var base64 = [], i = 0; i < bytes.length; i += 3) {\n var triplet = (bytes[i] << 16) | (bytes[i + 1] << 8) | bytes[i + 2];\n for (var j = 0; j < 4; j++)\n if (i * 8 + j * 6 <= bytes.length * 8)\n base64.push(base64map.charAt((triplet >>> 6 * (3 - j)) & 0x3F));\n else\n base64.push('=');\n }\n return base64.join('');\n },\n\n // Convert a base-64 string to a byte array\n base64ToBytes: function(base64) {\n // Remove non-base-64 characters\n base64 = base64.replace(/[^A-Z0-9+\\/]/ig, '');\n\n for (var bytes = [], i = 0, imod4 = 0; i < base64.length;\n imod4 = ++i % 4) {\n if (imod4 == 0) continue;\n bytes.push(((base64map.indexOf(base64.charAt(i - 1))\n & (Math.pow(2, -2 * imod4 + 8) - 1)) << (imod4 * 2))\n | (base64map.indexOf(base64.charAt(i)) >>> (6 - imod4 * 2)));\n }\n return bytes;\n }\n };\n\n module.exports = crypt;\n})();\n","'use strict';\n\nvar isMergeableObject = function isMergeableObject(value) {\n\treturn isNonNullObject(value)\n\t\t&& !isSpecial(value)\n};\n\nfunction isNonNullObject(value) {\n\treturn !!value && typeof value === 'object'\n}\n\nfunction isSpecial(value) {\n\tvar stringValue = Object.prototype.toString.call(value);\n\n\treturn stringValue === '[object RegExp]'\n\t\t|| stringValue === '[object Date]'\n\t\t|| isReactElement(value)\n}\n\n// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25\nvar canUseSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;\n\nfunction isReactElement(value) {\n\treturn value.$$typeof === REACT_ELEMENT_TYPE\n}\n\nfunction emptyTarget(val) {\n\treturn Array.isArray(val) ? [] : {}\n}\n\nfunction cloneUnlessOtherwiseSpecified(value, options) {\n\treturn (options.clone !== false && options.isMergeableObject(value))\n\t\t? deepmerge(emptyTarget(value), value, options)\n\t\t: value\n}\n\nfunction defaultArrayMerge(target, source, options) {\n\treturn target.concat(source).map(function(element) {\n\t\treturn cloneUnlessOtherwiseSpecified(element, options)\n\t})\n}\n\nfunction getMergeFunction(key, options) {\n\tif (!options.customMerge) {\n\t\treturn deepmerge\n\t}\n\tvar customMerge = options.customMerge(key);\n\treturn typeof customMerge === 'function' ? customMerge : deepmerge\n}\n\nfunction getEnumerableOwnPropertySymbols(target) {\n\treturn Object.getOwnPropertySymbols\n\t\t? Object.getOwnPropertySymbols(target).filter(function(symbol) {\n\t\t\treturn Object.propertyIsEnumerable.call(target, symbol)\n\t\t})\n\t\t: []\n}\n\nfunction getKeys(target) {\n\treturn Object.keys(target).concat(getEnumerableOwnPropertySymbols(target))\n}\n\nfunction propertyIsOnObject(object, property) {\n\ttry {\n\t\treturn property in object\n\t} catch(_) {\n\t\treturn false\n\t}\n}\n\n// Protects from prototype poisoning and unexpected merging up the prototype chain.\nfunction propertyIsUnsafe(target, key) {\n\treturn propertyIsOnObject(target, key) // Properties are safe to merge if they don't exist in the target yet,\n\t\t&& !(Object.hasOwnProperty.call(target, key) // unsafe if they exist up the prototype chain,\n\t\t\t&& Object.propertyIsEnumerable.call(target, key)) // and also unsafe if they're nonenumerable.\n}\n\nfunction mergeObject(target, source, options) {\n\tvar destination = {};\n\tif (options.isMergeableObject(target)) {\n\t\tgetKeys(target).forEach(function(key) {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(target[key], options);\n\t\t});\n\t}\n\tgetKeys(source).forEach(function(key) {\n\t\tif (propertyIsUnsafe(target, key)) {\n\t\t\treturn\n\t\t}\n\n\t\tif (propertyIsOnObject(target, key) && options.isMergeableObject(source[key])) {\n\t\t\tdestination[key] = getMergeFunction(key, options)(target[key], source[key], options);\n\t\t} else {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(source[key], options);\n\t\t}\n\t});\n\treturn destination\n}\n\nfunction deepmerge(target, source, options) {\n\toptions = options || {};\n\toptions.arrayMerge = options.arrayMerge || defaultArrayMerge;\n\toptions.isMergeableObject = options.isMergeableObject || isMergeableObject;\n\t// cloneUnlessOtherwiseSpecified is added to `options` so that custom arrayMerge()\n\t// implementations can use it. The caller may not replace it.\n\toptions.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified;\n\n\tvar sourceIsArray = Array.isArray(source);\n\tvar targetIsArray = Array.isArray(target);\n\tvar sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;\n\n\tif (!sourceAndTargetTypesMatch) {\n\t\treturn cloneUnlessOtherwiseSpecified(source, options)\n\t} else if (sourceIsArray) {\n\t\treturn options.arrayMerge(target, source, options)\n\t} else {\n\t\treturn mergeObject(target, source, options)\n\t}\n}\n\ndeepmerge.all = function deepmergeAll(array, options) {\n\tif (!Array.isArray(array)) {\n\t\tthrow new Error('first argument should be an array')\n\t}\n\n\treturn array.reduce(function(prev, next) {\n\t\treturn deepmerge(prev, next, options)\n\t}, {})\n};\n\nvar deepmerge_1 = deepmerge;\n\nmodule.exports = deepmerge_1;\n","'use strict';\n\nvar elliptic = exports;\n\nelliptic.version = require('../package.json').version;\nelliptic.utils = require('./elliptic/utils');\nelliptic.rand = require('brorand');\nelliptic.curve = require('./elliptic/curve');\nelliptic.curves = require('./elliptic/curves');\n\n// Protocols\nelliptic.ec = require('./elliptic/ec');\nelliptic.eddsa = require('./elliptic/eddsa');\n","'use strict';\n\nvar BN = require('bn.js');\nvar utils = require('../utils');\nvar getNAF = utils.getNAF;\nvar getJSF = utils.getJSF;\nvar assert = utils.assert;\n\nfunction BaseCurve(type, conf) {\n this.type = type;\n this.p = new BN(conf.p, 16);\n\n // Use Montgomery, when there is no fast reduction for the prime\n this.red = conf.prime ? BN.red(conf.prime) : BN.mont(this.p);\n\n // Useful for many curves\n this.zero = new BN(0).toRed(this.red);\n this.one = new BN(1).toRed(this.red);\n this.two = new BN(2).toRed(this.red);\n\n // Curve configuration, optional\n this.n = conf.n && new BN(conf.n, 16);\n this.g = conf.g && this.pointFromJSON(conf.g, conf.gRed);\n\n // Temporary arrays\n this._wnafT1 = new Array(4);\n this._wnafT2 = new Array(4);\n this._wnafT3 = new Array(4);\n this._wnafT4 = new Array(4);\n\n this._bitLength = this.n ? this.n.bitLength() : 0;\n\n // Generalized Greg Maxwell's trick\n var adjustCount = this.n && this.p.div(this.n);\n if (!adjustCount || adjustCount.cmpn(100) > 0) {\n this.redN = null;\n } else {\n this._maxwellTrick = true;\n this.redN = this.n.toRed(this.red);\n }\n}\nmodule.exports = BaseCurve;\n\nBaseCurve.prototype.point = function point() {\n throw new Error('Not implemented');\n};\n\nBaseCurve.prototype.validate = function validate() {\n throw new Error('Not implemented');\n};\n\nBaseCurve.prototype._fixedNafMul = function _fixedNafMul(p, k) {\n assert(p.precomputed);\n var doubles = p._getDoubles();\n\n var naf = getNAF(k, 1, this._bitLength);\n var I = (1 << (doubles.step + 1)) - (doubles.step % 2 === 0 ? 2 : 1);\n I /= 3;\n\n // Translate into more windowed form\n var repr = [];\n var j;\n var nafW;\n for (j = 0; j < naf.length; j += doubles.step) {\n nafW = 0;\n for (var l = j + doubles.step - 1; l >= j; l--)\n nafW = (nafW << 1) + naf[l];\n repr.push(nafW);\n }\n\n var a = this.jpoint(null, null, null);\n var b = this.jpoint(null, null, null);\n for (var i = I; i > 0; i--) {\n for (j = 0; j < repr.length; j++) {\n nafW = repr[j];\n if (nafW === i)\n b = b.mixedAdd(doubles.points[j]);\n else if (nafW === -i)\n b = b.mixedAdd(doubles.points[j].neg());\n }\n a = a.add(b);\n }\n return a.toP();\n};\n\nBaseCurve.prototype._wnafMul = function _wnafMul(p, k) {\n var w = 4;\n\n // Precompute window\n var nafPoints = p._getNAFPoints(w);\n w = nafPoints.wnd;\n var wnd = nafPoints.points;\n\n // Get NAF form\n var naf = getNAF(k, w, this._bitLength);\n\n // Add `this`*(N+1) for every w-NAF index\n var acc = this.jpoint(null, null, null);\n for (var i = naf.length - 1; i >= 0; i--) {\n // Count zeroes\n for (var l = 0; i >= 0 && naf[i] === 0; i--)\n l++;\n if (i >= 0)\n l++;\n acc = acc.dblp(l);\n\n if (i < 0)\n break;\n var z = naf[i];\n assert(z !== 0);\n if (p.type === 'affine') {\n // J +- P\n if (z > 0)\n acc = acc.mixedAdd(wnd[(z - 1) >> 1]);\n else\n acc = acc.mixedAdd(wnd[(-z - 1) >> 1].neg());\n } else {\n // J +- J\n if (z > 0)\n acc = acc.add(wnd[(z - 1) >> 1]);\n else\n acc = acc.add(wnd[(-z - 1) >> 1].neg());\n }\n }\n return p.type === 'affine' ? acc.toP() : acc;\n};\n\nBaseCurve.prototype._wnafMulAdd = function _wnafMulAdd(defW,\n points,\n coeffs,\n len,\n jacobianResult) {\n var wndWidth = this._wnafT1;\n var wnd = this._wnafT2;\n var naf = this._wnafT3;\n\n // Fill all arrays\n var max = 0;\n var i;\n var j;\n var p;\n for (i = 0; i < len; i++) {\n p = points[i];\n var nafPoints = p._getNAFPoints(defW);\n wndWidth[i] = nafPoints.wnd;\n wnd[i] = nafPoints.points;\n }\n\n // Comb small window NAFs\n for (i = len - 1; i >= 1; i -= 2) {\n var a = i - 1;\n var b = i;\n if (wndWidth[a] !== 1 || wndWidth[b] !== 1) {\n naf[a] = getNAF(coeffs[a], wndWidth[a], this._bitLength);\n naf[b] = getNAF(coeffs[b], wndWidth[b], this._bitLength);\n max = Math.max(naf[a].length, max);\n max = Math.max(naf[b].length, max);\n continue;\n }\n\n var comb = [\n points[a], /* 1 */\n null, /* 3 */\n null, /* 5 */\n points[b], /* 7 */\n ];\n\n // Try to avoid Projective points, if possible\n if (points[a].y.cmp(points[b].y) === 0) {\n comb[1] = points[a].add(points[b]);\n comb[2] = points[a].toJ().mixedAdd(points[b].neg());\n } else if (points[a].y.cmp(points[b].y.redNeg()) === 0) {\n comb[1] = points[a].toJ().mixedAdd(points[b]);\n comb[2] = points[a].add(points[b].neg());\n } else {\n comb[1] = points[a].toJ().mixedAdd(points[b]);\n comb[2] = points[a].toJ().mixedAdd(points[b].neg());\n }\n\n var index = [\n -3, /* -1 -1 */\n -1, /* -1 0 */\n -5, /* -1 1 */\n -7, /* 0 -1 */\n 0, /* 0 0 */\n 7, /* 0 1 */\n 5, /* 1 -1 */\n 1, /* 1 0 */\n 3, /* 1 1 */\n ];\n\n var jsf = getJSF(coeffs[a], coeffs[b]);\n max = Math.max(jsf[0].length, max);\n naf[a] = new Array(max);\n naf[b] = new Array(max);\n for (j = 0; j < max; j++) {\n var ja = jsf[0][j] | 0;\n var jb = jsf[1][j] | 0;\n\n naf[a][j] = index[(ja + 1) * 3 + (jb + 1)];\n naf[b][j] = 0;\n wnd[a] = comb;\n }\n }\n\n var acc = this.jpoint(null, null, null);\n var tmp = this._wnafT4;\n for (i = max; i >= 0; i--) {\n var k = 0;\n\n while (i >= 0) {\n var zero = true;\n for (j = 0; j < len; j++) {\n tmp[j] = naf[j][i] | 0;\n if (tmp[j] !== 0)\n zero = false;\n }\n if (!zero)\n break;\n k++;\n i--;\n }\n if (i >= 0)\n k++;\n acc = acc.dblp(k);\n if (i < 0)\n break;\n\n for (j = 0; j < len; j++) {\n var z = tmp[j];\n p;\n if (z === 0)\n continue;\n else if (z > 0)\n p = wnd[j][(z - 1) >> 1];\n else if (z < 0)\n p = wnd[j][(-z - 1) >> 1].neg();\n\n if (p.type === 'affine')\n acc = acc.mixedAdd(p);\n else\n acc = acc.add(p);\n }\n }\n // Zeroify references\n for (i = 0; i < len; i++)\n wnd[i] = null;\n\n if (jacobianResult)\n return acc;\n else\n return acc.toP();\n};\n\nfunction BasePoint(curve, type) {\n this.curve = curve;\n this.type = type;\n this.precomputed = null;\n}\nBaseCurve.BasePoint = BasePoint;\n\nBasePoint.prototype.eq = function eq(/*other*/) {\n throw new Error('Not implemented');\n};\n\nBasePoint.prototype.validate = function validate() {\n return this.curve.validate(this);\n};\n\nBaseCurve.prototype.decodePoint = function decodePoint(bytes, enc) {\n bytes = utils.toArray(bytes, enc);\n\n var len = this.p.byteLength();\n\n // uncompressed, hybrid-odd, hybrid-even\n if ((bytes[0] === 0x04 || bytes[0] === 0x06 || bytes[0] === 0x07) &&\n bytes.length - 1 === 2 * len) {\n if (bytes[0] === 0x06)\n assert(bytes[bytes.length - 1] % 2 === 0);\n else if (bytes[0] === 0x07)\n assert(bytes[bytes.length - 1] % 2 === 1);\n\n var res = this.point(bytes.slice(1, 1 + len),\n bytes.slice(1 + len, 1 + 2 * len));\n\n return res;\n } else if ((bytes[0] === 0x02 || bytes[0] === 0x03) &&\n bytes.length - 1 === len) {\n return this.pointFromX(bytes.slice(1, 1 + len), bytes[0] === 0x03);\n }\n throw new Error('Unknown point format');\n};\n\nBasePoint.prototype.encodeCompressed = function encodeCompressed(enc) {\n return this.encode(enc, true);\n};\n\nBasePoint.prototype._encode = function _encode(compact) {\n var len = this.curve.p.byteLength();\n var x = this.getX().toArray('be', len);\n\n if (compact)\n return [ this.getY().isEven() ? 0x02 : 0x03 ].concat(x);\n\n return [ 0x04 ].concat(x, this.getY().toArray('be', len));\n};\n\nBasePoint.prototype.encode = function encode(enc, compact) {\n return utils.encode(this._encode(compact), enc);\n};\n\nBasePoint.prototype.precompute = function precompute(power) {\n if (this.precomputed)\n return this;\n\n var precomputed = {\n doubles: null,\n naf: null,\n beta: null,\n };\n precomputed.naf = this._getNAFPoints(8);\n precomputed.doubles = this._getDoubles(4, power);\n precomputed.beta = this._getBeta();\n this.precomputed = precomputed;\n\n return this;\n};\n\nBasePoint.prototype._hasDoubles = function _hasDoubles(k) {\n if (!this.precomputed)\n return false;\n\n var doubles = this.precomputed.doubles;\n if (!doubles)\n return false;\n\n return doubles.points.length >= Math.ceil((k.bitLength() + 1) / doubles.step);\n};\n\nBasePoint.prototype._getDoubles = function _getDoubles(step, power) {\n if (this.precomputed && this.precomputed.doubles)\n return this.precomputed.doubles;\n\n var doubles = [ this ];\n var acc = this;\n for (var i = 0; i < power; i += step) {\n for (var j = 0; j < step; j++)\n acc = acc.dbl();\n doubles.push(acc);\n }\n return {\n step: step,\n points: doubles,\n };\n};\n\nBasePoint.prototype._getNAFPoints = function _getNAFPoints(wnd) {\n if (this.precomputed && this.precomputed.naf)\n return this.precomputed.naf;\n\n var res = [ this ];\n var max = (1 << wnd) - 1;\n var dbl = max === 1 ? null : this.dbl();\n for (var i = 1; i < max; i++)\n res[i] = res[i - 1].add(dbl);\n return {\n wnd: wnd,\n points: res,\n };\n};\n\nBasePoint.prototype._getBeta = function _getBeta() {\n return null;\n};\n\nBasePoint.prototype.dblp = function dblp(k) {\n var r = this;\n for (var i = 0; i < k; i++)\n r = r.dbl();\n return r;\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar BN = require('bn.js');\nvar inherits = require('inherits');\nvar Base = require('./base');\n\nvar assert = utils.assert;\n\nfunction EdwardsCurve(conf) {\n // NOTE: Important as we are creating point in Base.call()\n this.twisted = (conf.a | 0) !== 1;\n this.mOneA = this.twisted && (conf.a | 0) === -1;\n this.extended = this.mOneA;\n\n Base.call(this, 'edwards', conf);\n\n this.a = new BN(conf.a, 16).umod(this.red.m);\n this.a = this.a.toRed(this.red);\n this.c = new BN(conf.c, 16).toRed(this.red);\n this.c2 = this.c.redSqr();\n this.d = new BN(conf.d, 16).toRed(this.red);\n this.dd = this.d.redAdd(this.d);\n\n assert(!this.twisted || this.c.fromRed().cmpn(1) === 0);\n this.oneC = (conf.c | 0) === 1;\n}\ninherits(EdwardsCurve, Base);\nmodule.exports = EdwardsCurve;\n\nEdwardsCurve.prototype._mulA = function _mulA(num) {\n if (this.mOneA)\n return num.redNeg();\n else\n return this.a.redMul(num);\n};\n\nEdwardsCurve.prototype._mulC = function _mulC(num) {\n if (this.oneC)\n return num;\n else\n return this.c.redMul(num);\n};\n\n// Just for compatibility with Short curve\nEdwardsCurve.prototype.jpoint = function jpoint(x, y, z, t) {\n return this.point(x, y, z, t);\n};\n\nEdwardsCurve.prototype.pointFromX = function pointFromX(x, odd) {\n x = new BN(x, 16);\n if (!x.red)\n x = x.toRed(this.red);\n\n var x2 = x.redSqr();\n var rhs = this.c2.redSub(this.a.redMul(x2));\n var lhs = this.one.redSub(this.c2.redMul(this.d).redMul(x2));\n\n var y2 = rhs.redMul(lhs.redInvm());\n var y = y2.redSqrt();\n if (y.redSqr().redSub(y2).cmp(this.zero) !== 0)\n throw new Error('invalid point');\n\n var isOdd = y.fromRed().isOdd();\n if (odd && !isOdd || !odd && isOdd)\n y = y.redNeg();\n\n return this.point(x, y);\n};\n\nEdwardsCurve.prototype.pointFromY = function pointFromY(y, odd) {\n y = new BN(y, 16);\n if (!y.red)\n y = y.toRed(this.red);\n\n // x^2 = (y^2 - c^2) / (c^2 d y^2 - a)\n var y2 = y.redSqr();\n var lhs = y2.redSub(this.c2);\n var rhs = y2.redMul(this.d).redMul(this.c2).redSub(this.a);\n var x2 = lhs.redMul(rhs.redInvm());\n\n if (x2.cmp(this.zero) === 0) {\n if (odd)\n throw new Error('invalid point');\n else\n return this.point(this.zero, y);\n }\n\n var x = x2.redSqrt();\n if (x.redSqr().redSub(x2).cmp(this.zero) !== 0)\n throw new Error('invalid point');\n\n if (x.fromRed().isOdd() !== odd)\n x = x.redNeg();\n\n return this.point(x, y);\n};\n\nEdwardsCurve.prototype.validate = function validate(point) {\n if (point.isInfinity())\n return true;\n\n // Curve: A * X^2 + Y^2 = C^2 * (1 + D * X^2 * Y^2)\n point.normalize();\n\n var x2 = point.x.redSqr();\n var y2 = point.y.redSqr();\n var lhs = x2.redMul(this.a).redAdd(y2);\n var rhs = this.c2.redMul(this.one.redAdd(this.d.redMul(x2).redMul(y2)));\n\n return lhs.cmp(rhs) === 0;\n};\n\nfunction Point(curve, x, y, z, t) {\n Base.BasePoint.call(this, curve, 'projective');\n if (x === null && y === null && z === null) {\n this.x = this.curve.zero;\n this.y = this.curve.one;\n this.z = this.curve.one;\n this.t = this.curve.zero;\n this.zOne = true;\n } else {\n this.x = new BN(x, 16);\n this.y = new BN(y, 16);\n this.z = z ? new BN(z, 16) : this.curve.one;\n this.t = t && new BN(t, 16);\n if (!this.x.red)\n this.x = this.x.toRed(this.curve.red);\n if (!this.y.red)\n this.y = this.y.toRed(this.curve.red);\n if (!this.z.red)\n this.z = this.z.toRed(this.curve.red);\n if (this.t && !this.t.red)\n this.t = this.t.toRed(this.curve.red);\n this.zOne = this.z === this.curve.one;\n\n // Use extended coordinates\n if (this.curve.extended && !this.t) {\n this.t = this.x.redMul(this.y);\n if (!this.zOne)\n this.t = this.t.redMul(this.z.redInvm());\n }\n }\n}\ninherits(Point, Base.BasePoint);\n\nEdwardsCurve.prototype.pointFromJSON = function pointFromJSON(obj) {\n return Point.fromJSON(this, obj);\n};\n\nEdwardsCurve.prototype.point = function point(x, y, z, t) {\n return new Point(this, x, y, z, t);\n};\n\nPoint.fromJSON = function fromJSON(curve, obj) {\n return new Point(curve, obj[0], obj[1], obj[2]);\n};\n\nPoint.prototype.inspect = function inspect() {\n if (this.isInfinity())\n return '';\n return '';\n};\n\nPoint.prototype.isInfinity = function isInfinity() {\n // XXX This code assumes that zero is always zero in red\n return this.x.cmpn(0) === 0 &&\n (this.y.cmp(this.z) === 0 ||\n (this.zOne && this.y.cmp(this.curve.c) === 0));\n};\n\nPoint.prototype._extDbl = function _extDbl() {\n // hyperelliptic.org/EFD/g1p/auto-twisted-extended-1.html\n // #doubling-dbl-2008-hwcd\n // 4M + 4S\n\n // A = X1^2\n var a = this.x.redSqr();\n // B = Y1^2\n var b = this.y.redSqr();\n // C = 2 * Z1^2\n var c = this.z.redSqr();\n c = c.redIAdd(c);\n // D = a * A\n var d = this.curve._mulA(a);\n // E = (X1 + Y1)^2 - A - B\n var e = this.x.redAdd(this.y).redSqr().redISub(a).redISub(b);\n // G = D + B\n var g = d.redAdd(b);\n // F = G - C\n var f = g.redSub(c);\n // H = D - B\n var h = d.redSub(b);\n // X3 = E * F\n var nx = e.redMul(f);\n // Y3 = G * H\n var ny = g.redMul(h);\n // T3 = E * H\n var nt = e.redMul(h);\n // Z3 = F * G\n var nz = f.redMul(g);\n return this.curve.point(nx, ny, nz, nt);\n};\n\nPoint.prototype._projDbl = function _projDbl() {\n // hyperelliptic.org/EFD/g1p/auto-twisted-projective.html\n // #doubling-dbl-2008-bbjlp\n // #doubling-dbl-2007-bl\n // and others\n // Generally 3M + 4S or 2M + 4S\n\n // B = (X1 + Y1)^2\n var b = this.x.redAdd(this.y).redSqr();\n // C = X1^2\n var c = this.x.redSqr();\n // D = Y1^2\n var d = this.y.redSqr();\n\n var nx;\n var ny;\n var nz;\n var e;\n var h;\n var j;\n if (this.curve.twisted) {\n // E = a * C\n e = this.curve._mulA(c);\n // F = E + D\n var f = e.redAdd(d);\n if (this.zOne) {\n // X3 = (B - C - D) * (F - 2)\n nx = b.redSub(c).redSub(d).redMul(f.redSub(this.curve.two));\n // Y3 = F * (E - D)\n ny = f.redMul(e.redSub(d));\n // Z3 = F^2 - 2 * F\n nz = f.redSqr().redSub(f).redSub(f);\n } else {\n // H = Z1^2\n h = this.z.redSqr();\n // J = F - 2 * H\n j = f.redSub(h).redISub(h);\n // X3 = (B-C-D)*J\n nx = b.redSub(c).redISub(d).redMul(j);\n // Y3 = F * (E - D)\n ny = f.redMul(e.redSub(d));\n // Z3 = F * J\n nz = f.redMul(j);\n }\n } else {\n // E = C + D\n e = c.redAdd(d);\n // H = (c * Z1)^2\n h = this.curve._mulC(this.z).redSqr();\n // J = E - 2 * H\n j = e.redSub(h).redSub(h);\n // X3 = c * (B - E) * J\n nx = this.curve._mulC(b.redISub(e)).redMul(j);\n // Y3 = c * E * (C - D)\n ny = this.curve._mulC(e).redMul(c.redISub(d));\n // Z3 = E * J\n nz = e.redMul(j);\n }\n return this.curve.point(nx, ny, nz);\n};\n\nPoint.prototype.dbl = function dbl() {\n if (this.isInfinity())\n return this;\n\n // Double in extended coordinates\n if (this.curve.extended)\n return this._extDbl();\n else\n return this._projDbl();\n};\n\nPoint.prototype._extAdd = function _extAdd(p) {\n // hyperelliptic.org/EFD/g1p/auto-twisted-extended-1.html\n // #addition-add-2008-hwcd-3\n // 8M\n\n // A = (Y1 - X1) * (Y2 - X2)\n var a = this.y.redSub(this.x).redMul(p.y.redSub(p.x));\n // B = (Y1 + X1) * (Y2 + X2)\n var b = this.y.redAdd(this.x).redMul(p.y.redAdd(p.x));\n // C = T1 * k * T2\n var c = this.t.redMul(this.curve.dd).redMul(p.t);\n // D = Z1 * 2 * Z2\n var d = this.z.redMul(p.z.redAdd(p.z));\n // E = B - A\n var e = b.redSub(a);\n // F = D - C\n var f = d.redSub(c);\n // G = D + C\n var g = d.redAdd(c);\n // H = B + A\n var h = b.redAdd(a);\n // X3 = E * F\n var nx = e.redMul(f);\n // Y3 = G * H\n var ny = g.redMul(h);\n // T3 = E * H\n var nt = e.redMul(h);\n // Z3 = F * G\n var nz = f.redMul(g);\n return this.curve.point(nx, ny, nz, nt);\n};\n\nPoint.prototype._projAdd = function _projAdd(p) {\n // hyperelliptic.org/EFD/g1p/auto-twisted-projective.html\n // #addition-add-2008-bbjlp\n // #addition-add-2007-bl\n // 10M + 1S\n\n // A = Z1 * Z2\n var a = this.z.redMul(p.z);\n // B = A^2\n var b = a.redSqr();\n // C = X1 * X2\n var c = this.x.redMul(p.x);\n // D = Y1 * Y2\n var d = this.y.redMul(p.y);\n // E = d * C * D\n var e = this.curve.d.redMul(c).redMul(d);\n // F = B - E\n var f = b.redSub(e);\n // G = B + E\n var g = b.redAdd(e);\n // X3 = A * F * ((X1 + Y1) * (X2 + Y2) - C - D)\n var tmp = this.x.redAdd(this.y).redMul(p.x.redAdd(p.y)).redISub(c).redISub(d);\n var nx = a.redMul(f).redMul(tmp);\n var ny;\n var nz;\n if (this.curve.twisted) {\n // Y3 = A * G * (D - a * C)\n ny = a.redMul(g).redMul(d.redSub(this.curve._mulA(c)));\n // Z3 = F * G\n nz = f.redMul(g);\n } else {\n // Y3 = A * G * (D - C)\n ny = a.redMul(g).redMul(d.redSub(c));\n // Z3 = c * F * G\n nz = this.curve._mulC(f).redMul(g);\n }\n return this.curve.point(nx, ny, nz);\n};\n\nPoint.prototype.add = function add(p) {\n if (this.isInfinity())\n return p;\n if (p.isInfinity())\n return this;\n\n if (this.curve.extended)\n return this._extAdd(p);\n else\n return this._projAdd(p);\n};\n\nPoint.prototype.mul = function mul(k) {\n if (this._hasDoubles(k))\n return this.curve._fixedNafMul(this, k);\n else\n return this.curve._wnafMul(this, k);\n};\n\nPoint.prototype.mulAdd = function mulAdd(k1, p, k2) {\n return this.curve._wnafMulAdd(1, [ this, p ], [ k1, k2 ], 2, false);\n};\n\nPoint.prototype.jmulAdd = function jmulAdd(k1, p, k2) {\n return this.curve._wnafMulAdd(1, [ this, p ], [ k1, k2 ], 2, true);\n};\n\nPoint.prototype.normalize = function normalize() {\n if (this.zOne)\n return this;\n\n // Normalize coordinates\n var zi = this.z.redInvm();\n this.x = this.x.redMul(zi);\n this.y = this.y.redMul(zi);\n if (this.t)\n this.t = this.t.redMul(zi);\n this.z = this.curve.one;\n this.zOne = true;\n return this;\n};\n\nPoint.prototype.neg = function neg() {\n return this.curve.point(this.x.redNeg(),\n this.y,\n this.z,\n this.t && this.t.redNeg());\n};\n\nPoint.prototype.getX = function getX() {\n this.normalize();\n return this.x.fromRed();\n};\n\nPoint.prototype.getY = function getY() {\n this.normalize();\n return this.y.fromRed();\n};\n\nPoint.prototype.eq = function eq(other) {\n return this === other ||\n this.getX().cmp(other.getX()) === 0 &&\n this.getY().cmp(other.getY()) === 0;\n};\n\nPoint.prototype.eqXToP = function eqXToP(x) {\n var rx = x.toRed(this.curve.red).redMul(this.z);\n if (this.x.cmp(rx) === 0)\n return true;\n\n var xc = x.clone();\n var t = this.curve.redN.redMul(this.z);\n for (;;) {\n xc.iadd(this.curve.n);\n if (xc.cmp(this.curve.p) >= 0)\n return false;\n\n rx.redIAdd(t);\n if (this.x.cmp(rx) === 0)\n return true;\n }\n};\n\n// Compatibility with BaseCurve\nPoint.prototype.toP = Point.prototype.normalize;\nPoint.prototype.mixedAdd = Point.prototype.add;\n","'use strict';\n\nvar curve = exports;\n\ncurve.base = require('./base');\ncurve.short = require('./short');\ncurve.mont = require('./mont');\ncurve.edwards = require('./edwards');\n","'use strict';\n\nvar BN = require('bn.js');\nvar inherits = require('inherits');\nvar Base = require('./base');\n\nvar utils = require('../utils');\n\nfunction MontCurve(conf) {\n Base.call(this, 'mont', conf);\n\n this.a = new BN(conf.a, 16).toRed(this.red);\n this.b = new BN(conf.b, 16).toRed(this.red);\n this.i4 = new BN(4).toRed(this.red).redInvm();\n this.two = new BN(2).toRed(this.red);\n this.a24 = this.i4.redMul(this.a.redAdd(this.two));\n}\ninherits(MontCurve, Base);\nmodule.exports = MontCurve;\n\nMontCurve.prototype.validate = function validate(point) {\n var x = point.normalize().x;\n var x2 = x.redSqr();\n var rhs = x2.redMul(x).redAdd(x2.redMul(this.a)).redAdd(x);\n var y = rhs.redSqrt();\n\n return y.redSqr().cmp(rhs) === 0;\n};\n\nfunction Point(curve, x, z) {\n Base.BasePoint.call(this, curve, 'projective');\n if (x === null && z === null) {\n this.x = this.curve.one;\n this.z = this.curve.zero;\n } else {\n this.x = new BN(x, 16);\n this.z = new BN(z, 16);\n if (!this.x.red)\n this.x = this.x.toRed(this.curve.red);\n if (!this.z.red)\n this.z = this.z.toRed(this.curve.red);\n }\n}\ninherits(Point, Base.BasePoint);\n\nMontCurve.prototype.decodePoint = function decodePoint(bytes, enc) {\n return this.point(utils.toArray(bytes, enc), 1);\n};\n\nMontCurve.prototype.point = function point(x, z) {\n return new Point(this, x, z);\n};\n\nMontCurve.prototype.pointFromJSON = function pointFromJSON(obj) {\n return Point.fromJSON(this, obj);\n};\n\nPoint.prototype.precompute = function precompute() {\n // No-op\n};\n\nPoint.prototype._encode = function _encode() {\n return this.getX().toArray('be', this.curve.p.byteLength());\n};\n\nPoint.fromJSON = function fromJSON(curve, obj) {\n return new Point(curve, obj[0], obj[1] || curve.one);\n};\n\nPoint.prototype.inspect = function inspect() {\n if (this.isInfinity())\n return '';\n return '';\n};\n\nPoint.prototype.isInfinity = function isInfinity() {\n // XXX This code assumes that zero is always zero in red\n return this.z.cmpn(0) === 0;\n};\n\nPoint.prototype.dbl = function dbl() {\n // http://hyperelliptic.org/EFD/g1p/auto-montgom-xz.html#doubling-dbl-1987-m-3\n // 2M + 2S + 4A\n\n // A = X1 + Z1\n var a = this.x.redAdd(this.z);\n // AA = A^2\n var aa = a.redSqr();\n // B = X1 - Z1\n var b = this.x.redSub(this.z);\n // BB = B^2\n var bb = b.redSqr();\n // C = AA - BB\n var c = aa.redSub(bb);\n // X3 = AA * BB\n var nx = aa.redMul(bb);\n // Z3 = C * (BB + A24 * C)\n var nz = c.redMul(bb.redAdd(this.curve.a24.redMul(c)));\n return this.curve.point(nx, nz);\n};\n\nPoint.prototype.add = function add() {\n throw new Error('Not supported on Montgomery curve');\n};\n\nPoint.prototype.diffAdd = function diffAdd(p, diff) {\n // http://hyperelliptic.org/EFD/g1p/auto-montgom-xz.html#diffadd-dadd-1987-m-3\n // 4M + 2S + 6A\n\n // A = X2 + Z2\n var a = this.x.redAdd(this.z);\n // B = X2 - Z2\n var b = this.x.redSub(this.z);\n // C = X3 + Z3\n var c = p.x.redAdd(p.z);\n // D = X3 - Z3\n var d = p.x.redSub(p.z);\n // DA = D * A\n var da = d.redMul(a);\n // CB = C * B\n var cb = c.redMul(b);\n // X5 = Z1 * (DA + CB)^2\n var nx = diff.z.redMul(da.redAdd(cb).redSqr());\n // Z5 = X1 * (DA - CB)^2\n var nz = diff.x.redMul(da.redISub(cb).redSqr());\n return this.curve.point(nx, nz);\n};\n\nPoint.prototype.mul = function mul(k) {\n var t = k.clone();\n var a = this; // (N / 2) * Q + Q\n var b = this.curve.point(null, null); // (N / 2) * Q\n var c = this; // Q\n\n for (var bits = []; t.cmpn(0) !== 0; t.iushrn(1))\n bits.push(t.andln(1));\n\n for (var i = bits.length - 1; i >= 0; i--) {\n if (bits[i] === 0) {\n // N * Q + Q = ((N / 2) * Q + Q)) + (N / 2) * Q\n a = a.diffAdd(b, c);\n // N * Q = 2 * ((N / 2) * Q + Q))\n b = b.dbl();\n } else {\n // N * Q = ((N / 2) * Q + Q) + ((N / 2) * Q)\n b = a.diffAdd(b, c);\n // N * Q + Q = 2 * ((N / 2) * Q + Q)\n a = a.dbl();\n }\n }\n return b;\n};\n\nPoint.prototype.mulAdd = function mulAdd() {\n throw new Error('Not supported on Montgomery curve');\n};\n\nPoint.prototype.jumlAdd = function jumlAdd() {\n throw new Error('Not supported on Montgomery curve');\n};\n\nPoint.prototype.eq = function eq(other) {\n return this.getX().cmp(other.getX()) === 0;\n};\n\nPoint.prototype.normalize = function normalize() {\n this.x = this.x.redMul(this.z.redInvm());\n this.z = this.curve.one;\n return this;\n};\n\nPoint.prototype.getX = function getX() {\n // Normalize coordinates\n this.normalize();\n\n return this.x.fromRed();\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar BN = require('bn.js');\nvar inherits = require('inherits');\nvar Base = require('./base');\n\nvar assert = utils.assert;\n\nfunction ShortCurve(conf) {\n Base.call(this, 'short', conf);\n\n this.a = new BN(conf.a, 16).toRed(this.red);\n this.b = new BN(conf.b, 16).toRed(this.red);\n this.tinv = this.two.redInvm();\n\n this.zeroA = this.a.fromRed().cmpn(0) === 0;\n this.threeA = this.a.fromRed().sub(this.p).cmpn(-3) === 0;\n\n // If the curve is endomorphic, precalculate beta and lambda\n this.endo = this._getEndomorphism(conf);\n this._endoWnafT1 = new Array(4);\n this._endoWnafT2 = new Array(4);\n}\ninherits(ShortCurve, Base);\nmodule.exports = ShortCurve;\n\nShortCurve.prototype._getEndomorphism = function _getEndomorphism(conf) {\n // No efficient endomorphism\n if (!this.zeroA || !this.g || !this.n || this.p.modn(3) !== 1)\n return;\n\n // Compute beta and lambda, that lambda * P = (beta * Px; Py)\n var beta;\n var lambda;\n if (conf.beta) {\n beta = new BN(conf.beta, 16).toRed(this.red);\n } else {\n var betas = this._getEndoRoots(this.p);\n // Choose the smallest beta\n beta = betas[0].cmp(betas[1]) < 0 ? betas[0] : betas[1];\n beta = beta.toRed(this.red);\n }\n if (conf.lambda) {\n lambda = new BN(conf.lambda, 16);\n } else {\n // Choose the lambda that is matching selected beta\n var lambdas = this._getEndoRoots(this.n);\n if (this.g.mul(lambdas[0]).x.cmp(this.g.x.redMul(beta)) === 0) {\n lambda = lambdas[0];\n } else {\n lambda = lambdas[1];\n assert(this.g.mul(lambda).x.cmp(this.g.x.redMul(beta)) === 0);\n }\n }\n\n // Get basis vectors, used for balanced length-two representation\n var basis;\n if (conf.basis) {\n basis = conf.basis.map(function(vec) {\n return {\n a: new BN(vec.a, 16),\n b: new BN(vec.b, 16),\n };\n });\n } else {\n basis = this._getEndoBasis(lambda);\n }\n\n return {\n beta: beta,\n lambda: lambda,\n basis: basis,\n };\n};\n\nShortCurve.prototype._getEndoRoots = function _getEndoRoots(num) {\n // Find roots of for x^2 + x + 1 in F\n // Root = (-1 +- Sqrt(-3)) / 2\n //\n var red = num === this.p ? this.red : BN.mont(num);\n var tinv = new BN(2).toRed(red).redInvm();\n var ntinv = tinv.redNeg();\n\n var s = new BN(3).toRed(red).redNeg().redSqrt().redMul(tinv);\n\n var l1 = ntinv.redAdd(s).fromRed();\n var l2 = ntinv.redSub(s).fromRed();\n return [ l1, l2 ];\n};\n\nShortCurve.prototype._getEndoBasis = function _getEndoBasis(lambda) {\n // aprxSqrt >= sqrt(this.n)\n var aprxSqrt = this.n.ushrn(Math.floor(this.n.bitLength() / 2));\n\n // 3.74\n // Run EGCD, until r(L + 1) < aprxSqrt\n var u = lambda;\n var v = this.n.clone();\n var x1 = new BN(1);\n var y1 = new BN(0);\n var x2 = new BN(0);\n var y2 = new BN(1);\n\n // NOTE: all vectors are roots of: a + b * lambda = 0 (mod n)\n var a0;\n var b0;\n // First vector\n var a1;\n var b1;\n // Second vector\n var a2;\n var b2;\n\n var prevR;\n var i = 0;\n var r;\n var x;\n while (u.cmpn(0) !== 0) {\n var q = v.div(u);\n r = v.sub(q.mul(u));\n x = x2.sub(q.mul(x1));\n var y = y2.sub(q.mul(y1));\n\n if (!a1 && r.cmp(aprxSqrt) < 0) {\n a0 = prevR.neg();\n b0 = x1;\n a1 = r.neg();\n b1 = x;\n } else if (a1 && ++i === 2) {\n break;\n }\n prevR = r;\n\n v = u;\n u = r;\n x2 = x1;\n x1 = x;\n y2 = y1;\n y1 = y;\n }\n a2 = r.neg();\n b2 = x;\n\n var len1 = a1.sqr().add(b1.sqr());\n var len2 = a2.sqr().add(b2.sqr());\n if (len2.cmp(len1) >= 0) {\n a2 = a0;\n b2 = b0;\n }\n\n // Normalize signs\n if (a1.negative) {\n a1 = a1.neg();\n b1 = b1.neg();\n }\n if (a2.negative) {\n a2 = a2.neg();\n b2 = b2.neg();\n }\n\n return [\n { a: a1, b: b1 },\n { a: a2, b: b2 },\n ];\n};\n\nShortCurve.prototype._endoSplit = function _endoSplit(k) {\n var basis = this.endo.basis;\n var v1 = basis[0];\n var v2 = basis[1];\n\n var c1 = v2.b.mul(k).divRound(this.n);\n var c2 = v1.b.neg().mul(k).divRound(this.n);\n\n var p1 = c1.mul(v1.a);\n var p2 = c2.mul(v2.a);\n var q1 = c1.mul(v1.b);\n var q2 = c2.mul(v2.b);\n\n // Calculate answer\n var k1 = k.sub(p1).sub(p2);\n var k2 = q1.add(q2).neg();\n return { k1: k1, k2: k2 };\n};\n\nShortCurve.prototype.pointFromX = function pointFromX(x, odd) {\n x = new BN(x, 16);\n if (!x.red)\n x = x.toRed(this.red);\n\n var y2 = x.redSqr().redMul(x).redIAdd(x.redMul(this.a)).redIAdd(this.b);\n var y = y2.redSqrt();\n if (y.redSqr().redSub(y2).cmp(this.zero) !== 0)\n throw new Error('invalid point');\n\n // XXX Is there any way to tell if the number is odd without converting it\n // to non-red form?\n var isOdd = y.fromRed().isOdd();\n if (odd && !isOdd || !odd && isOdd)\n y = y.redNeg();\n\n return this.point(x, y);\n};\n\nShortCurve.prototype.validate = function validate(point) {\n if (point.inf)\n return true;\n\n var x = point.x;\n var y = point.y;\n\n var ax = this.a.redMul(x);\n var rhs = x.redSqr().redMul(x).redIAdd(ax).redIAdd(this.b);\n return y.redSqr().redISub(rhs).cmpn(0) === 0;\n};\n\nShortCurve.prototype._endoWnafMulAdd =\n function _endoWnafMulAdd(points, coeffs, jacobianResult) {\n var npoints = this._endoWnafT1;\n var ncoeffs = this._endoWnafT2;\n for (var i = 0; i < points.length; i++) {\n var split = this._endoSplit(coeffs[i]);\n var p = points[i];\n var beta = p._getBeta();\n\n if (split.k1.negative) {\n split.k1.ineg();\n p = p.neg(true);\n }\n if (split.k2.negative) {\n split.k2.ineg();\n beta = beta.neg(true);\n }\n\n npoints[i * 2] = p;\n npoints[i * 2 + 1] = beta;\n ncoeffs[i * 2] = split.k1;\n ncoeffs[i * 2 + 1] = split.k2;\n }\n var res = this._wnafMulAdd(1, npoints, ncoeffs, i * 2, jacobianResult);\n\n // Clean-up references to points and coefficients\n for (var j = 0; j < i * 2; j++) {\n npoints[j] = null;\n ncoeffs[j] = null;\n }\n return res;\n };\n\nfunction Point(curve, x, y, isRed) {\n Base.BasePoint.call(this, curve, 'affine');\n if (x === null && y === null) {\n this.x = null;\n this.y = null;\n this.inf = true;\n } else {\n this.x = new BN(x, 16);\n this.y = new BN(y, 16);\n // Force redgomery representation when loading from JSON\n if (isRed) {\n this.x.forceRed(this.curve.red);\n this.y.forceRed(this.curve.red);\n }\n if (!this.x.red)\n this.x = this.x.toRed(this.curve.red);\n if (!this.y.red)\n this.y = this.y.toRed(this.curve.red);\n this.inf = false;\n }\n}\ninherits(Point, Base.BasePoint);\n\nShortCurve.prototype.point = function point(x, y, isRed) {\n return new Point(this, x, y, isRed);\n};\n\nShortCurve.prototype.pointFromJSON = function pointFromJSON(obj, red) {\n return Point.fromJSON(this, obj, red);\n};\n\nPoint.prototype._getBeta = function _getBeta() {\n if (!this.curve.endo)\n return;\n\n var pre = this.precomputed;\n if (pre && pre.beta)\n return pre.beta;\n\n var beta = this.curve.point(this.x.redMul(this.curve.endo.beta), this.y);\n if (pre) {\n var curve = this.curve;\n var endoMul = function(p) {\n return curve.point(p.x.redMul(curve.endo.beta), p.y);\n };\n pre.beta = beta;\n beta.precomputed = {\n beta: null,\n naf: pre.naf && {\n wnd: pre.naf.wnd,\n points: pre.naf.points.map(endoMul),\n },\n doubles: pre.doubles && {\n step: pre.doubles.step,\n points: pre.doubles.points.map(endoMul),\n },\n };\n }\n return beta;\n};\n\nPoint.prototype.toJSON = function toJSON() {\n if (!this.precomputed)\n return [ this.x, this.y ];\n\n return [ this.x, this.y, this.precomputed && {\n doubles: this.precomputed.doubles && {\n step: this.precomputed.doubles.step,\n points: this.precomputed.doubles.points.slice(1),\n },\n naf: this.precomputed.naf && {\n wnd: this.precomputed.naf.wnd,\n points: this.precomputed.naf.points.slice(1),\n },\n } ];\n};\n\nPoint.fromJSON = function fromJSON(curve, obj, red) {\n if (typeof obj === 'string')\n obj = JSON.parse(obj);\n var res = curve.point(obj[0], obj[1], red);\n if (!obj[2])\n return res;\n\n function obj2point(obj) {\n return curve.point(obj[0], obj[1], red);\n }\n\n var pre = obj[2];\n res.precomputed = {\n beta: null,\n doubles: pre.doubles && {\n step: pre.doubles.step,\n points: [ res ].concat(pre.doubles.points.map(obj2point)),\n },\n naf: pre.naf && {\n wnd: pre.naf.wnd,\n points: [ res ].concat(pre.naf.points.map(obj2point)),\n },\n };\n return res;\n};\n\nPoint.prototype.inspect = function inspect() {\n if (this.isInfinity())\n return '';\n return '';\n};\n\nPoint.prototype.isInfinity = function isInfinity() {\n return this.inf;\n};\n\nPoint.prototype.add = function add(p) {\n // O + P = P\n if (this.inf)\n return p;\n\n // P + O = P\n if (p.inf)\n return this;\n\n // P + P = 2P\n if (this.eq(p))\n return this.dbl();\n\n // P + (-P) = O\n if (this.neg().eq(p))\n return this.curve.point(null, null);\n\n // P + Q = O\n if (this.x.cmp(p.x) === 0)\n return this.curve.point(null, null);\n\n var c = this.y.redSub(p.y);\n if (c.cmpn(0) !== 0)\n c = c.redMul(this.x.redSub(p.x).redInvm());\n var nx = c.redSqr().redISub(this.x).redISub(p.x);\n var ny = c.redMul(this.x.redSub(nx)).redISub(this.y);\n return this.curve.point(nx, ny);\n};\n\nPoint.prototype.dbl = function dbl() {\n if (this.inf)\n return this;\n\n // 2P = O\n var ys1 = this.y.redAdd(this.y);\n if (ys1.cmpn(0) === 0)\n return this.curve.point(null, null);\n\n var a = this.curve.a;\n\n var x2 = this.x.redSqr();\n var dyinv = ys1.redInvm();\n var c = x2.redAdd(x2).redIAdd(x2).redIAdd(a).redMul(dyinv);\n\n var nx = c.redSqr().redISub(this.x.redAdd(this.x));\n var ny = c.redMul(this.x.redSub(nx)).redISub(this.y);\n return this.curve.point(nx, ny);\n};\n\nPoint.prototype.getX = function getX() {\n return this.x.fromRed();\n};\n\nPoint.prototype.getY = function getY() {\n return this.y.fromRed();\n};\n\nPoint.prototype.mul = function mul(k) {\n k = new BN(k, 16);\n if (this.isInfinity())\n return this;\n else if (this._hasDoubles(k))\n return this.curve._fixedNafMul(this, k);\n else if (this.curve.endo)\n return this.curve._endoWnafMulAdd([ this ], [ k ]);\n else\n return this.curve._wnafMul(this, k);\n};\n\nPoint.prototype.mulAdd = function mulAdd(k1, p2, k2) {\n var points = [ this, p2 ];\n var coeffs = [ k1, k2 ];\n if (this.curve.endo)\n return this.curve._endoWnafMulAdd(points, coeffs);\n else\n return this.curve._wnafMulAdd(1, points, coeffs, 2);\n};\n\nPoint.prototype.jmulAdd = function jmulAdd(k1, p2, k2) {\n var points = [ this, p2 ];\n var coeffs = [ k1, k2 ];\n if (this.curve.endo)\n return this.curve._endoWnafMulAdd(points, coeffs, true);\n else\n return this.curve._wnafMulAdd(1, points, coeffs, 2, true);\n};\n\nPoint.prototype.eq = function eq(p) {\n return this === p ||\n this.inf === p.inf &&\n (this.inf || this.x.cmp(p.x) === 0 && this.y.cmp(p.y) === 0);\n};\n\nPoint.prototype.neg = function neg(_precompute) {\n if (this.inf)\n return this;\n\n var res = this.curve.point(this.x, this.y.redNeg());\n if (_precompute && this.precomputed) {\n var pre = this.precomputed;\n var negate = function(p) {\n return p.neg();\n };\n res.precomputed = {\n naf: pre.naf && {\n wnd: pre.naf.wnd,\n points: pre.naf.points.map(negate),\n },\n doubles: pre.doubles && {\n step: pre.doubles.step,\n points: pre.doubles.points.map(negate),\n },\n };\n }\n return res;\n};\n\nPoint.prototype.toJ = function toJ() {\n if (this.inf)\n return this.curve.jpoint(null, null, null);\n\n var res = this.curve.jpoint(this.x, this.y, this.curve.one);\n return res;\n};\n\nfunction JPoint(curve, x, y, z) {\n Base.BasePoint.call(this, curve, 'jacobian');\n if (x === null && y === null && z === null) {\n this.x = this.curve.one;\n this.y = this.curve.one;\n this.z = new BN(0);\n } else {\n this.x = new BN(x, 16);\n this.y = new BN(y, 16);\n this.z = new BN(z, 16);\n }\n if (!this.x.red)\n this.x = this.x.toRed(this.curve.red);\n if (!this.y.red)\n this.y = this.y.toRed(this.curve.red);\n if (!this.z.red)\n this.z = this.z.toRed(this.curve.red);\n\n this.zOne = this.z === this.curve.one;\n}\ninherits(JPoint, Base.BasePoint);\n\nShortCurve.prototype.jpoint = function jpoint(x, y, z) {\n return new JPoint(this, x, y, z);\n};\n\nJPoint.prototype.toP = function toP() {\n if (this.isInfinity())\n return this.curve.point(null, null);\n\n var zinv = this.z.redInvm();\n var zinv2 = zinv.redSqr();\n var ax = this.x.redMul(zinv2);\n var ay = this.y.redMul(zinv2).redMul(zinv);\n\n return this.curve.point(ax, ay);\n};\n\nJPoint.prototype.neg = function neg() {\n return this.curve.jpoint(this.x, this.y.redNeg(), this.z);\n};\n\nJPoint.prototype.add = function add(p) {\n // O + P = P\n if (this.isInfinity())\n return p;\n\n // P + O = P\n if (p.isInfinity())\n return this;\n\n // 12M + 4S + 7A\n var pz2 = p.z.redSqr();\n var z2 = this.z.redSqr();\n var u1 = this.x.redMul(pz2);\n var u2 = p.x.redMul(z2);\n var s1 = this.y.redMul(pz2.redMul(p.z));\n var s2 = p.y.redMul(z2.redMul(this.z));\n\n var h = u1.redSub(u2);\n var r = s1.redSub(s2);\n if (h.cmpn(0) === 0) {\n if (r.cmpn(0) !== 0)\n return this.curve.jpoint(null, null, null);\n else\n return this.dbl();\n }\n\n var h2 = h.redSqr();\n var h3 = h2.redMul(h);\n var v = u1.redMul(h2);\n\n var nx = r.redSqr().redIAdd(h3).redISub(v).redISub(v);\n var ny = r.redMul(v.redISub(nx)).redISub(s1.redMul(h3));\n var nz = this.z.redMul(p.z).redMul(h);\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype.mixedAdd = function mixedAdd(p) {\n // O + P = P\n if (this.isInfinity())\n return p.toJ();\n\n // P + O = P\n if (p.isInfinity())\n return this;\n\n // 8M + 3S + 7A\n var z2 = this.z.redSqr();\n var u1 = this.x;\n var u2 = p.x.redMul(z2);\n var s1 = this.y;\n var s2 = p.y.redMul(z2).redMul(this.z);\n\n var h = u1.redSub(u2);\n var r = s1.redSub(s2);\n if (h.cmpn(0) === 0) {\n if (r.cmpn(0) !== 0)\n return this.curve.jpoint(null, null, null);\n else\n return this.dbl();\n }\n\n var h2 = h.redSqr();\n var h3 = h2.redMul(h);\n var v = u1.redMul(h2);\n\n var nx = r.redSqr().redIAdd(h3).redISub(v).redISub(v);\n var ny = r.redMul(v.redISub(nx)).redISub(s1.redMul(h3));\n var nz = this.z.redMul(h);\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype.dblp = function dblp(pow) {\n if (pow === 0)\n return this;\n if (this.isInfinity())\n return this;\n if (!pow)\n return this.dbl();\n\n var i;\n if (this.curve.zeroA || this.curve.threeA) {\n var r = this;\n for (i = 0; i < pow; i++)\n r = r.dbl();\n return r;\n }\n\n // 1M + 2S + 1A + N * (4S + 5M + 8A)\n // N = 1 => 6M + 6S + 9A\n var a = this.curve.a;\n var tinv = this.curve.tinv;\n\n var jx = this.x;\n var jy = this.y;\n var jz = this.z;\n var jz4 = jz.redSqr().redSqr();\n\n // Reuse results\n var jyd = jy.redAdd(jy);\n for (i = 0; i < pow; i++) {\n var jx2 = jx.redSqr();\n var jyd2 = jyd.redSqr();\n var jyd4 = jyd2.redSqr();\n var c = jx2.redAdd(jx2).redIAdd(jx2).redIAdd(a.redMul(jz4));\n\n var t1 = jx.redMul(jyd2);\n var nx = c.redSqr().redISub(t1.redAdd(t1));\n var t2 = t1.redISub(nx);\n var dny = c.redMul(t2);\n dny = dny.redIAdd(dny).redISub(jyd4);\n var nz = jyd.redMul(jz);\n if (i + 1 < pow)\n jz4 = jz4.redMul(jyd4);\n\n jx = nx;\n jz = nz;\n jyd = dny;\n }\n\n return this.curve.jpoint(jx, jyd.redMul(tinv), jz);\n};\n\nJPoint.prototype.dbl = function dbl() {\n if (this.isInfinity())\n return this;\n\n if (this.curve.zeroA)\n return this._zeroDbl();\n else if (this.curve.threeA)\n return this._threeDbl();\n else\n return this._dbl();\n};\n\nJPoint.prototype._zeroDbl = function _zeroDbl() {\n var nx;\n var ny;\n var nz;\n // Z = 1\n if (this.zOne) {\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-0.html\n // #doubling-mdbl-2007-bl\n // 1M + 5S + 14A\n\n // XX = X1^2\n var xx = this.x.redSqr();\n // YY = Y1^2\n var yy = this.y.redSqr();\n // YYYY = YY^2\n var yyyy = yy.redSqr();\n // S = 2 * ((X1 + YY)^2 - XX - YYYY)\n var s = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy);\n s = s.redIAdd(s);\n // M = 3 * XX + a; a = 0\n var m = xx.redAdd(xx).redIAdd(xx);\n // T = M ^ 2 - 2*S\n var t = m.redSqr().redISub(s).redISub(s);\n\n // 8 * YYYY\n var yyyy8 = yyyy.redIAdd(yyyy);\n yyyy8 = yyyy8.redIAdd(yyyy8);\n yyyy8 = yyyy8.redIAdd(yyyy8);\n\n // X3 = T\n nx = t;\n // Y3 = M * (S - T) - 8 * YYYY\n ny = m.redMul(s.redISub(t)).redISub(yyyy8);\n // Z3 = 2*Y1\n nz = this.y.redAdd(this.y);\n } else {\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-0.html\n // #doubling-dbl-2009-l\n // 2M + 5S + 13A\n\n // A = X1^2\n var a = this.x.redSqr();\n // B = Y1^2\n var b = this.y.redSqr();\n // C = B^2\n var c = b.redSqr();\n // D = 2 * ((X1 + B)^2 - A - C)\n var d = this.x.redAdd(b).redSqr().redISub(a).redISub(c);\n d = d.redIAdd(d);\n // E = 3 * A\n var e = a.redAdd(a).redIAdd(a);\n // F = E^2\n var f = e.redSqr();\n\n // 8 * C\n var c8 = c.redIAdd(c);\n c8 = c8.redIAdd(c8);\n c8 = c8.redIAdd(c8);\n\n // X3 = F - 2 * D\n nx = f.redISub(d).redISub(d);\n // Y3 = E * (D - X3) - 8 * C\n ny = e.redMul(d.redISub(nx)).redISub(c8);\n // Z3 = 2 * Y1 * Z1\n nz = this.y.redMul(this.z);\n nz = nz.redIAdd(nz);\n }\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype._threeDbl = function _threeDbl() {\n var nx;\n var ny;\n var nz;\n // Z = 1\n if (this.zOne) {\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-3.html\n // #doubling-mdbl-2007-bl\n // 1M + 5S + 15A\n\n // XX = X1^2\n var xx = this.x.redSqr();\n // YY = Y1^2\n var yy = this.y.redSqr();\n // YYYY = YY^2\n var yyyy = yy.redSqr();\n // S = 2 * ((X1 + YY)^2 - XX - YYYY)\n var s = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy);\n s = s.redIAdd(s);\n // M = 3 * XX + a\n var m = xx.redAdd(xx).redIAdd(xx).redIAdd(this.curve.a);\n // T = M^2 - 2 * S\n var t = m.redSqr().redISub(s).redISub(s);\n // X3 = T\n nx = t;\n // Y3 = M * (S - T) - 8 * YYYY\n var yyyy8 = yyyy.redIAdd(yyyy);\n yyyy8 = yyyy8.redIAdd(yyyy8);\n yyyy8 = yyyy8.redIAdd(yyyy8);\n ny = m.redMul(s.redISub(t)).redISub(yyyy8);\n // Z3 = 2 * Y1\n nz = this.y.redAdd(this.y);\n } else {\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-3.html#doubling-dbl-2001-b\n // 3M + 5S\n\n // delta = Z1^2\n var delta = this.z.redSqr();\n // gamma = Y1^2\n var gamma = this.y.redSqr();\n // beta = X1 * gamma\n var beta = this.x.redMul(gamma);\n // alpha = 3 * (X1 - delta) * (X1 + delta)\n var alpha = this.x.redSub(delta).redMul(this.x.redAdd(delta));\n alpha = alpha.redAdd(alpha).redIAdd(alpha);\n // X3 = alpha^2 - 8 * beta\n var beta4 = beta.redIAdd(beta);\n beta4 = beta4.redIAdd(beta4);\n var beta8 = beta4.redAdd(beta4);\n nx = alpha.redSqr().redISub(beta8);\n // Z3 = (Y1 + Z1)^2 - gamma - delta\n nz = this.y.redAdd(this.z).redSqr().redISub(gamma).redISub(delta);\n // Y3 = alpha * (4 * beta - X3) - 8 * gamma^2\n var ggamma8 = gamma.redSqr();\n ggamma8 = ggamma8.redIAdd(ggamma8);\n ggamma8 = ggamma8.redIAdd(ggamma8);\n ggamma8 = ggamma8.redIAdd(ggamma8);\n ny = alpha.redMul(beta4.redISub(nx)).redISub(ggamma8);\n }\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype._dbl = function _dbl() {\n var a = this.curve.a;\n\n // 4M + 6S + 10A\n var jx = this.x;\n var jy = this.y;\n var jz = this.z;\n var jz4 = jz.redSqr().redSqr();\n\n var jx2 = jx.redSqr();\n var jy2 = jy.redSqr();\n\n var c = jx2.redAdd(jx2).redIAdd(jx2).redIAdd(a.redMul(jz4));\n\n var jxd4 = jx.redAdd(jx);\n jxd4 = jxd4.redIAdd(jxd4);\n var t1 = jxd4.redMul(jy2);\n var nx = c.redSqr().redISub(t1.redAdd(t1));\n var t2 = t1.redISub(nx);\n\n var jyd8 = jy2.redSqr();\n jyd8 = jyd8.redIAdd(jyd8);\n jyd8 = jyd8.redIAdd(jyd8);\n jyd8 = jyd8.redIAdd(jyd8);\n var ny = c.redMul(t2).redISub(jyd8);\n var nz = jy.redAdd(jy).redMul(jz);\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype.trpl = function trpl() {\n if (!this.curve.zeroA)\n return this.dbl().add(this);\n\n // hyperelliptic.org/EFD/g1p/auto-shortw-jacobian-0.html#tripling-tpl-2007-bl\n // 5M + 10S + ...\n\n // XX = X1^2\n var xx = this.x.redSqr();\n // YY = Y1^2\n var yy = this.y.redSqr();\n // ZZ = Z1^2\n var zz = this.z.redSqr();\n // YYYY = YY^2\n var yyyy = yy.redSqr();\n // M = 3 * XX + a * ZZ2; a = 0\n var m = xx.redAdd(xx).redIAdd(xx);\n // MM = M^2\n var mm = m.redSqr();\n // E = 6 * ((X1 + YY)^2 - XX - YYYY) - MM\n var e = this.x.redAdd(yy).redSqr().redISub(xx).redISub(yyyy);\n e = e.redIAdd(e);\n e = e.redAdd(e).redIAdd(e);\n e = e.redISub(mm);\n // EE = E^2\n var ee = e.redSqr();\n // T = 16*YYYY\n var t = yyyy.redIAdd(yyyy);\n t = t.redIAdd(t);\n t = t.redIAdd(t);\n t = t.redIAdd(t);\n // U = (M + E)^2 - MM - EE - T\n var u = m.redIAdd(e).redSqr().redISub(mm).redISub(ee).redISub(t);\n // X3 = 4 * (X1 * EE - 4 * YY * U)\n var yyu4 = yy.redMul(u);\n yyu4 = yyu4.redIAdd(yyu4);\n yyu4 = yyu4.redIAdd(yyu4);\n var nx = this.x.redMul(ee).redISub(yyu4);\n nx = nx.redIAdd(nx);\n nx = nx.redIAdd(nx);\n // Y3 = 8 * Y1 * (U * (T - U) - E * EE)\n var ny = this.y.redMul(u.redMul(t.redISub(u)).redISub(e.redMul(ee)));\n ny = ny.redIAdd(ny);\n ny = ny.redIAdd(ny);\n ny = ny.redIAdd(ny);\n // Z3 = (Z1 + E)^2 - ZZ - EE\n var nz = this.z.redAdd(e).redSqr().redISub(zz).redISub(ee);\n\n return this.curve.jpoint(nx, ny, nz);\n};\n\nJPoint.prototype.mul = function mul(k, kbase) {\n k = new BN(k, kbase);\n\n return this.curve._wnafMul(this, k);\n};\n\nJPoint.prototype.eq = function eq(p) {\n if (p.type === 'affine')\n return this.eq(p.toJ());\n\n if (this === p)\n return true;\n\n // x1 * z2^2 == x2 * z1^2\n var z2 = this.z.redSqr();\n var pz2 = p.z.redSqr();\n if (this.x.redMul(pz2).redISub(p.x.redMul(z2)).cmpn(0) !== 0)\n return false;\n\n // y1 * z2^3 == y2 * z1^3\n var z3 = z2.redMul(this.z);\n var pz3 = pz2.redMul(p.z);\n return this.y.redMul(pz3).redISub(p.y.redMul(z3)).cmpn(0) === 0;\n};\n\nJPoint.prototype.eqXToP = function eqXToP(x) {\n var zs = this.z.redSqr();\n var rx = x.toRed(this.curve.red).redMul(zs);\n if (this.x.cmp(rx) === 0)\n return true;\n\n var xc = x.clone();\n var t = this.curve.redN.redMul(zs);\n for (;;) {\n xc.iadd(this.curve.n);\n if (xc.cmp(this.curve.p) >= 0)\n return false;\n\n rx.redIAdd(t);\n if (this.x.cmp(rx) === 0)\n return true;\n }\n};\n\nJPoint.prototype.inspect = function inspect() {\n if (this.isInfinity())\n return '';\n return '';\n};\n\nJPoint.prototype.isInfinity = function isInfinity() {\n // XXX This code assumes that zero is always zero in red\n return this.z.cmpn(0) === 0;\n};\n","'use strict';\n\nvar curves = exports;\n\nvar hash = require('hash.js');\nvar curve = require('./curve');\nvar utils = require('./utils');\n\nvar assert = utils.assert;\n\nfunction PresetCurve(options) {\n if (options.type === 'short')\n this.curve = new curve.short(options);\n else if (options.type === 'edwards')\n this.curve = new curve.edwards(options);\n else\n this.curve = new curve.mont(options);\n this.g = this.curve.g;\n this.n = this.curve.n;\n this.hash = options.hash;\n\n assert(this.g.validate(), 'Invalid curve');\n assert(this.g.mul(this.n).isInfinity(), 'Invalid curve, G*N != O');\n}\ncurves.PresetCurve = PresetCurve;\n\nfunction defineCurve(name, options) {\n Object.defineProperty(curves, name, {\n configurable: true,\n enumerable: true,\n get: function() {\n var curve = new PresetCurve(options);\n Object.defineProperty(curves, name, {\n configurable: true,\n enumerable: true,\n value: curve,\n });\n return curve;\n },\n });\n}\n\ndefineCurve('p192', {\n type: 'short',\n prime: 'p192',\n p: 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff',\n a: 'ffffffff ffffffff ffffffff fffffffe ffffffff fffffffc',\n b: '64210519 e59c80e7 0fa7e9ab 72243049 feb8deec c146b9b1',\n n: 'ffffffff ffffffff ffffffff 99def836 146bc9b1 b4d22831',\n hash: hash.sha256,\n gRed: false,\n g: [\n '188da80e b03090f6 7cbf20eb 43a18800 f4ff0afd 82ff1012',\n '07192b95 ffc8da78 631011ed 6b24cdd5 73f977a1 1e794811',\n ],\n});\n\ndefineCurve('p224', {\n type: 'short',\n prime: 'p224',\n p: 'ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001',\n a: 'ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff fffffffe',\n b: 'b4050a85 0c04b3ab f5413256 5044b0b7 d7bfd8ba 270b3943 2355ffb4',\n n: 'ffffffff ffffffff ffffffff ffff16a2 e0b8f03e 13dd2945 5c5c2a3d',\n hash: hash.sha256,\n gRed: false,\n g: [\n 'b70e0cbd 6bb4bf7f 321390b9 4a03c1d3 56c21122 343280d6 115c1d21',\n 'bd376388 b5f723fb 4c22dfe6 cd4375a0 5a074764 44d58199 85007e34',\n ],\n});\n\ndefineCurve('p256', {\n type: 'short',\n prime: null,\n p: 'ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff ffffffff',\n a: 'ffffffff 00000001 00000000 00000000 00000000 ffffffff ffffffff fffffffc',\n b: '5ac635d8 aa3a93e7 b3ebbd55 769886bc 651d06b0 cc53b0f6 3bce3c3e 27d2604b',\n n: 'ffffffff 00000000 ffffffff ffffffff bce6faad a7179e84 f3b9cac2 fc632551',\n hash: hash.sha256,\n gRed: false,\n g: [\n '6b17d1f2 e12c4247 f8bce6e5 63a440f2 77037d81 2deb33a0 f4a13945 d898c296',\n '4fe342e2 fe1a7f9b 8ee7eb4a 7c0f9e16 2bce3357 6b315ece cbb64068 37bf51f5',\n ],\n});\n\ndefineCurve('p384', {\n type: 'short',\n prime: null,\n p: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'fffffffe ffffffff 00000000 00000000 ffffffff',\n a: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'fffffffe ffffffff 00000000 00000000 fffffffc',\n b: 'b3312fa7 e23ee7e4 988e056b e3f82d19 181d9c6e fe814112 0314088f ' +\n '5013875a c656398d 8a2ed19d 2a85c8ed d3ec2aef',\n n: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff c7634d81 ' +\n 'f4372ddf 581a0db2 48b0a77a ecec196a ccc52973',\n hash: hash.sha384,\n gRed: false,\n g: [\n 'aa87ca22 be8b0537 8eb1c71e f320ad74 6e1d3b62 8ba79b98 59f741e0 82542a38 ' +\n '5502f25d bf55296c 3a545e38 72760ab7',\n '3617de4a 96262c6f 5d9e98bf 9292dc29 f8f41dbd 289a147c e9da3113 b5f0b8c0 ' +\n '0a60b1ce 1d7e819d 7a431d7c 90ea0e5f',\n ],\n});\n\ndefineCurve('p521', {\n type: 'short',\n prime: null,\n p: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff',\n a: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff ffffffff ffffffff fffffffc',\n b: '00000051 953eb961 8e1c9a1f 929a21a0 b68540ee a2da725b ' +\n '99b315f3 b8b48991 8ef109e1 56193951 ec7e937b 1652c0bd ' +\n '3bb1bf07 3573df88 3d2c34f1 ef451fd4 6b503f00',\n n: '000001ff ffffffff ffffffff ffffffff ffffffff ffffffff ' +\n 'ffffffff ffffffff fffffffa 51868783 bf2f966b 7fcc0148 ' +\n 'f709a5d0 3bb5c9b8 899c47ae bb6fb71e 91386409',\n hash: hash.sha512,\n gRed: false,\n g: [\n '000000c6 858e06b7 0404e9cd 9e3ecb66 2395b442 9c648139 ' +\n '053fb521 f828af60 6b4d3dba a14b5e77 efe75928 fe1dc127 ' +\n 'a2ffa8de 3348b3c1 856a429b f97e7e31 c2e5bd66',\n '00000118 39296a78 9a3bc004 5c8a5fb4 2c7d1bd9 98f54449 ' +\n '579b4468 17afbd17 273e662c 97ee7299 5ef42640 c550b901 ' +\n '3fad0761 353c7086 a272c240 88be9476 9fd16650',\n ],\n});\n\ndefineCurve('curve25519', {\n type: 'mont',\n prime: 'p25519',\n p: '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed',\n a: '76d06',\n b: '1',\n n: '1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed',\n hash: hash.sha256,\n gRed: false,\n g: [\n '9',\n ],\n});\n\ndefineCurve('ed25519', {\n type: 'edwards',\n prime: 'p25519',\n p: '7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed',\n a: '-1',\n c: '1',\n // -121665 * (121666^(-1)) (mod P)\n d: '52036cee2b6ffe73 8cc740797779e898 00700a4d4141d8ab 75eb4dca135978a3',\n n: '1000000000000000 0000000000000000 14def9dea2f79cd6 5812631a5cf5d3ed',\n hash: hash.sha256,\n gRed: false,\n g: [\n '216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a',\n\n // 4/5\n '6666666666666666666666666666666666666666666666666666666666666658',\n ],\n});\n\nvar pre;\ntry {\n pre = require('./precomputed/secp256k1');\n} catch (e) {\n pre = undefined;\n}\n\ndefineCurve('secp256k1', {\n type: 'short',\n prime: 'k256',\n p: 'ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f',\n a: '0',\n b: '7',\n n: 'ffffffff ffffffff ffffffff fffffffe baaedce6 af48a03b bfd25e8c d0364141',\n h: '1',\n hash: hash.sha256,\n\n // Precomputed endomorphism\n beta: '7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee',\n lambda: '5363ad4cc05c30e0a5261c028812645a122e22ea20816678df02967c1b23bd72',\n basis: [\n {\n a: '3086d221a7d46bcde86c90e49284eb15',\n b: '-e4437ed6010e88286f547fa90abfe4c3',\n },\n {\n a: '114ca50f7a8e2f3f657c1108d9d44cfd8',\n b: '3086d221a7d46bcde86c90e49284eb15',\n },\n ],\n\n gRed: false,\n g: [\n '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798',\n '483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8',\n pre,\n ],\n});\n","'use strict';\n\nvar BN = require('bn.js');\nvar HmacDRBG = require('hmac-drbg');\nvar utils = require('../utils');\nvar curves = require('../curves');\nvar rand = require('brorand');\nvar assert = utils.assert;\n\nvar KeyPair = require('./key');\nvar Signature = require('./signature');\n\nfunction EC(options) {\n if (!(this instanceof EC))\n return new EC(options);\n\n // Shortcut `elliptic.ec(curve-name)`\n if (typeof options === 'string') {\n assert(Object.prototype.hasOwnProperty.call(curves, options),\n 'Unknown curve ' + options);\n\n options = curves[options];\n }\n\n // Shortcut for `elliptic.ec(elliptic.curves.curveName)`\n if (options instanceof curves.PresetCurve)\n options = { curve: options };\n\n this.curve = options.curve.curve;\n this.n = this.curve.n;\n this.nh = this.n.ushrn(1);\n this.g = this.curve.g;\n\n // Point on curve\n this.g = options.curve.g;\n this.g.precompute(options.curve.n.bitLength() + 1);\n\n // Hash for function for DRBG\n this.hash = options.hash || options.curve.hash;\n}\nmodule.exports = EC;\n\nEC.prototype.keyPair = function keyPair(options) {\n return new KeyPair(this, options);\n};\n\nEC.prototype.keyFromPrivate = function keyFromPrivate(priv, enc) {\n return KeyPair.fromPrivate(this, priv, enc);\n};\n\nEC.prototype.keyFromPublic = function keyFromPublic(pub, enc) {\n return KeyPair.fromPublic(this, pub, enc);\n};\n\nEC.prototype.genKeyPair = function genKeyPair(options) {\n if (!options)\n options = {};\n\n // Instantiate Hmac_DRBG\n var drbg = new HmacDRBG({\n hash: this.hash,\n pers: options.pers,\n persEnc: options.persEnc || 'utf8',\n entropy: options.entropy || rand(this.hash.hmacStrength),\n entropyEnc: options.entropy && options.entropyEnc || 'utf8',\n nonce: this.n.toArray(),\n });\n\n var bytes = this.n.byteLength();\n var ns2 = this.n.sub(new BN(2));\n for (;;) {\n var priv = new BN(drbg.generate(bytes));\n if (priv.cmp(ns2) > 0)\n continue;\n\n priv.iaddn(1);\n return this.keyFromPrivate(priv);\n }\n};\n\nEC.prototype._truncateToN = function _truncateToN(msg, truncOnly) {\n var delta = msg.byteLength() * 8 - this.n.bitLength();\n if (delta > 0)\n msg = msg.ushrn(delta);\n if (!truncOnly && msg.cmp(this.n) >= 0)\n return msg.sub(this.n);\n else\n return msg;\n};\n\nEC.prototype.sign = function sign(msg, key, enc, options) {\n if (typeof enc === 'object') {\n options = enc;\n enc = null;\n }\n if (!options)\n options = {};\n\n key = this.keyFromPrivate(key, enc);\n msg = this._truncateToN(new BN(msg, 16));\n\n // Zero-extend key to provide enough entropy\n var bytes = this.n.byteLength();\n var bkey = key.getPrivate().toArray('be', bytes);\n\n // Zero-extend nonce to have the same byte size as N\n var nonce = msg.toArray('be', bytes);\n\n // Instantiate Hmac_DRBG\n var drbg = new HmacDRBG({\n hash: this.hash,\n entropy: bkey,\n nonce: nonce,\n pers: options.pers,\n persEnc: options.persEnc || 'utf8',\n });\n\n // Number of bytes to generate\n var ns1 = this.n.sub(new BN(1));\n\n for (var iter = 0; ; iter++) {\n var k = options.k ?\n options.k(iter) :\n new BN(drbg.generate(this.n.byteLength()));\n k = this._truncateToN(k, true);\n if (k.cmpn(1) <= 0 || k.cmp(ns1) >= 0)\n continue;\n\n var kp = this.g.mul(k);\n if (kp.isInfinity())\n continue;\n\n var kpX = kp.getX();\n var r = kpX.umod(this.n);\n if (r.cmpn(0) === 0)\n continue;\n\n var s = k.invm(this.n).mul(r.mul(key.getPrivate()).iadd(msg));\n s = s.umod(this.n);\n if (s.cmpn(0) === 0)\n continue;\n\n var recoveryParam = (kp.getY().isOdd() ? 1 : 0) |\n (kpX.cmp(r) !== 0 ? 2 : 0);\n\n // Use complement of `s`, if it is > `n / 2`\n if (options.canonical && s.cmp(this.nh) > 0) {\n s = this.n.sub(s);\n recoveryParam ^= 1;\n }\n\n return new Signature({ r: r, s: s, recoveryParam: recoveryParam });\n }\n};\n\nEC.prototype.verify = function verify(msg, signature, key, enc) {\n msg = this._truncateToN(new BN(msg, 16));\n key = this.keyFromPublic(key, enc);\n signature = new Signature(signature, 'hex');\n\n // Perform primitive values validation\n var r = signature.r;\n var s = signature.s;\n if (r.cmpn(1) < 0 || r.cmp(this.n) >= 0)\n return false;\n if (s.cmpn(1) < 0 || s.cmp(this.n) >= 0)\n return false;\n\n // Validate signature\n var sinv = s.invm(this.n);\n var u1 = sinv.mul(msg).umod(this.n);\n var u2 = sinv.mul(r).umod(this.n);\n var p;\n\n if (!this.curve._maxwellTrick) {\n p = this.g.mulAdd(u1, key.getPublic(), u2);\n if (p.isInfinity())\n return false;\n\n return p.getX().umod(this.n).cmp(r) === 0;\n }\n\n // NOTE: Greg Maxwell's trick, inspired by:\n // https://git.io/vad3K\n\n p = this.g.jmulAdd(u1, key.getPublic(), u2);\n if (p.isInfinity())\n return false;\n\n // Compare `p.x` of Jacobian point with `r`,\n // this will do `p.x == r * p.z^2` instead of multiplying `p.x` by the\n // inverse of `p.z^2`\n return p.eqXToP(r);\n};\n\nEC.prototype.recoverPubKey = function(msg, signature, j, enc) {\n assert((3 & j) === j, 'The recovery param is more than two bits');\n signature = new Signature(signature, enc);\n\n var n = this.n;\n var e = new BN(msg);\n var r = signature.r;\n var s = signature.s;\n\n // A set LSB signifies that the y-coordinate is odd\n var isYOdd = j & 1;\n var isSecondKey = j >> 1;\n if (r.cmp(this.curve.p.umod(this.curve.n)) >= 0 && isSecondKey)\n throw new Error('Unable to find sencond key candinate');\n\n // 1.1. Let x = r + jn.\n if (isSecondKey)\n r = this.curve.pointFromX(r.add(this.curve.n), isYOdd);\n else\n r = this.curve.pointFromX(r, isYOdd);\n\n var rInv = signature.r.invm(n);\n var s1 = n.sub(e).mul(rInv).umod(n);\n var s2 = s.mul(rInv).umod(n);\n\n // 1.6.1 Compute Q = r^-1 (sR - eG)\n // Q = r^-1 (sR + -eG)\n return this.g.mulAdd(s1, r, s2);\n};\n\nEC.prototype.getKeyRecoveryParam = function(e, signature, Q, enc) {\n signature = new Signature(signature, enc);\n if (signature.recoveryParam !== null)\n return signature.recoveryParam;\n\n for (var i = 0; i < 4; i++) {\n var Qprime;\n try {\n Qprime = this.recoverPubKey(e, signature, i);\n } catch (e) {\n continue;\n }\n\n if (Qprime.eq(Q))\n return i;\n }\n throw new Error('Unable to find valid recovery factor');\n};\n","'use strict';\n\nvar BN = require('bn.js');\nvar utils = require('../utils');\nvar assert = utils.assert;\n\nfunction KeyPair(ec, options) {\n this.ec = ec;\n this.priv = null;\n this.pub = null;\n\n // KeyPair(ec, { priv: ..., pub: ... })\n if (options.priv)\n this._importPrivate(options.priv, options.privEnc);\n if (options.pub)\n this._importPublic(options.pub, options.pubEnc);\n}\nmodule.exports = KeyPair;\n\nKeyPair.fromPublic = function fromPublic(ec, pub, enc) {\n if (pub instanceof KeyPair)\n return pub;\n\n return new KeyPair(ec, {\n pub: pub,\n pubEnc: enc,\n });\n};\n\nKeyPair.fromPrivate = function fromPrivate(ec, priv, enc) {\n if (priv instanceof KeyPair)\n return priv;\n\n return new KeyPair(ec, {\n priv: priv,\n privEnc: enc,\n });\n};\n\nKeyPair.prototype.validate = function validate() {\n var pub = this.getPublic();\n\n if (pub.isInfinity())\n return { result: false, reason: 'Invalid public key' };\n if (!pub.validate())\n return { result: false, reason: 'Public key is not a point' };\n if (!pub.mul(this.ec.curve.n).isInfinity())\n return { result: false, reason: 'Public key * N != O' };\n\n return { result: true, reason: null };\n};\n\nKeyPair.prototype.getPublic = function getPublic(compact, enc) {\n // compact is optional argument\n if (typeof compact === 'string') {\n enc = compact;\n compact = null;\n }\n\n if (!this.pub)\n this.pub = this.ec.g.mul(this.priv);\n\n if (!enc)\n return this.pub;\n\n return this.pub.encode(enc, compact);\n};\n\nKeyPair.prototype.getPrivate = function getPrivate(enc) {\n if (enc === 'hex')\n return this.priv.toString(16, 2);\n else\n return this.priv;\n};\n\nKeyPair.prototype._importPrivate = function _importPrivate(key, enc) {\n this.priv = new BN(key, enc || 16);\n\n // Ensure that the priv won't be bigger than n, otherwise we may fail\n // in fixed multiplication method\n this.priv = this.priv.umod(this.ec.curve.n);\n};\n\nKeyPair.prototype._importPublic = function _importPublic(key, enc) {\n if (key.x || key.y) {\n // Montgomery points only have an `x` coordinate.\n // Weierstrass/Edwards points on the other hand have both `x` and\n // `y` coordinates.\n if (this.ec.curve.type === 'mont') {\n assert(key.x, 'Need x coordinate');\n } else if (this.ec.curve.type === 'short' ||\n this.ec.curve.type === 'edwards') {\n assert(key.x && key.y, 'Need both x and y coordinate');\n }\n this.pub = this.ec.curve.point(key.x, key.y);\n return;\n }\n this.pub = this.ec.curve.decodePoint(key, enc);\n};\n\n// ECDH\nKeyPair.prototype.derive = function derive(pub) {\n if(!pub.validate()) {\n assert(pub.validate(), 'public point not validated');\n }\n return pub.mul(this.priv).getX();\n};\n\n// ECDSA\nKeyPair.prototype.sign = function sign(msg, enc, options) {\n return this.ec.sign(msg, this, enc, options);\n};\n\nKeyPair.prototype.verify = function verify(msg, signature) {\n return this.ec.verify(msg, signature, this);\n};\n\nKeyPair.prototype.inspect = function inspect() {\n return '';\n};\n","'use strict';\n\nvar BN = require('bn.js');\n\nvar utils = require('../utils');\nvar assert = utils.assert;\n\nfunction Signature(options, enc) {\n if (options instanceof Signature)\n return options;\n\n if (this._importDER(options, enc))\n return;\n\n assert(options.r && options.s, 'Signature without r or s');\n this.r = new BN(options.r, 16);\n this.s = new BN(options.s, 16);\n if (options.recoveryParam === undefined)\n this.recoveryParam = null;\n else\n this.recoveryParam = options.recoveryParam;\n}\nmodule.exports = Signature;\n\nfunction Position() {\n this.place = 0;\n}\n\nfunction getLength(buf, p) {\n var initial = buf[p.place++];\n if (!(initial & 0x80)) {\n return initial;\n }\n var octetLen = initial & 0xf;\n\n // Indefinite length or overflow\n if (octetLen === 0 || octetLen > 4) {\n return false;\n }\n\n var val = 0;\n for (var i = 0, off = p.place; i < octetLen; i++, off++) {\n val <<= 8;\n val |= buf[off];\n val >>>= 0;\n }\n\n // Leading zeroes\n if (val <= 0x7f) {\n return false;\n }\n\n p.place = off;\n return val;\n}\n\nfunction rmPadding(buf) {\n var i = 0;\n var len = buf.length - 1;\n while (!buf[i] && !(buf[i + 1] & 0x80) && i < len) {\n i++;\n }\n if (i === 0) {\n return buf;\n }\n return buf.slice(i);\n}\n\nSignature.prototype._importDER = function _importDER(data, enc) {\n data = utils.toArray(data, enc);\n var p = new Position();\n if (data[p.place++] !== 0x30) {\n return false;\n }\n var len = getLength(data, p);\n if (len === false) {\n return false;\n }\n if ((len + p.place) !== data.length) {\n return false;\n }\n if (data[p.place++] !== 0x02) {\n return false;\n }\n var rlen = getLength(data, p);\n if (rlen === false) {\n return false;\n }\n var r = data.slice(p.place, rlen + p.place);\n p.place += rlen;\n if (data[p.place++] !== 0x02) {\n return false;\n }\n var slen = getLength(data, p);\n if (slen === false) {\n return false;\n }\n if (data.length !== slen + p.place) {\n return false;\n }\n var s = data.slice(p.place, slen + p.place);\n if (r[0] === 0) {\n if (r[1] & 0x80) {\n r = r.slice(1);\n } else {\n // Leading zeroes\n return false;\n }\n }\n if (s[0] === 0) {\n if (s[1] & 0x80) {\n s = s.slice(1);\n } else {\n // Leading zeroes\n return false;\n }\n }\n\n this.r = new BN(r);\n this.s = new BN(s);\n this.recoveryParam = null;\n\n return true;\n};\n\nfunction constructLength(arr, len) {\n if (len < 0x80) {\n arr.push(len);\n return;\n }\n var octets = 1 + (Math.log(len) / Math.LN2 >>> 3);\n arr.push(octets | 0x80);\n while (--octets) {\n arr.push((len >>> (octets << 3)) & 0xff);\n }\n arr.push(len);\n}\n\nSignature.prototype.toDER = function toDER(enc) {\n var r = this.r.toArray();\n var s = this.s.toArray();\n\n // Pad values\n if (r[0] & 0x80)\n r = [ 0 ].concat(r);\n // Pad values\n if (s[0] & 0x80)\n s = [ 0 ].concat(s);\n\n r = rmPadding(r);\n s = rmPadding(s);\n\n while (!s[0] && !(s[1] & 0x80)) {\n s = s.slice(1);\n }\n var arr = [ 0x02 ];\n constructLength(arr, r.length);\n arr = arr.concat(r);\n arr.push(0x02);\n constructLength(arr, s.length);\n var backHalf = arr.concat(s);\n var res = [ 0x30 ];\n constructLength(res, backHalf.length);\n res = res.concat(backHalf);\n return utils.encode(res, enc);\n};\n","'use strict';\n\nvar hash = require('hash.js');\nvar curves = require('../curves');\nvar utils = require('../utils');\nvar assert = utils.assert;\nvar parseBytes = utils.parseBytes;\nvar KeyPair = require('./key');\nvar Signature = require('./signature');\n\nfunction EDDSA(curve) {\n assert(curve === 'ed25519', 'only tested with ed25519 so far');\n\n if (!(this instanceof EDDSA))\n return new EDDSA(curve);\n\n curve = curves[curve].curve;\n this.curve = curve;\n this.g = curve.g;\n this.g.precompute(curve.n.bitLength() + 1);\n\n this.pointClass = curve.point().constructor;\n this.encodingLength = Math.ceil(curve.n.bitLength() / 8);\n this.hash = hash.sha512;\n}\n\nmodule.exports = EDDSA;\n\n/**\n* @param {Array|String} message - message bytes\n* @param {Array|String|KeyPair} secret - secret bytes or a keypair\n* @returns {Signature} - signature\n*/\nEDDSA.prototype.sign = function sign(message, secret) {\n message = parseBytes(message);\n var key = this.keyFromSecret(secret);\n var r = this.hashInt(key.messagePrefix(), message);\n var R = this.g.mul(r);\n var Rencoded = this.encodePoint(R);\n var s_ = this.hashInt(Rencoded, key.pubBytes(), message)\n .mul(key.priv());\n var S = r.add(s_).umod(this.curve.n);\n return this.makeSignature({ R: R, S: S, Rencoded: Rencoded });\n};\n\n/**\n* @param {Array} message - message bytes\n* @param {Array|String|Signature} sig - sig bytes\n* @param {Array|String|Point|KeyPair} pub - public key\n* @returns {Boolean} - true if public key matches sig of message\n*/\nEDDSA.prototype.verify = function verify(message, sig, pub) {\n message = parseBytes(message);\n sig = this.makeSignature(sig);\n var key = this.keyFromPublic(pub);\n var h = this.hashInt(sig.Rencoded(), key.pubBytes(), message);\n var SG = this.g.mul(sig.S());\n var RplusAh = sig.R().add(key.pub().mul(h));\n return RplusAh.eq(SG);\n};\n\nEDDSA.prototype.hashInt = function hashInt() {\n var hash = this.hash();\n for (var i = 0; i < arguments.length; i++)\n hash.update(arguments[i]);\n return utils.intFromLE(hash.digest()).umod(this.curve.n);\n};\n\nEDDSA.prototype.keyFromPublic = function keyFromPublic(pub) {\n return KeyPair.fromPublic(this, pub);\n};\n\nEDDSA.prototype.keyFromSecret = function keyFromSecret(secret) {\n return KeyPair.fromSecret(this, secret);\n};\n\nEDDSA.prototype.makeSignature = function makeSignature(sig) {\n if (sig instanceof Signature)\n return sig;\n return new Signature(this, sig);\n};\n\n/**\n* * https://tools.ietf.org/html/draft-josefsson-eddsa-ed25519-03#section-5.2\n*\n* EDDSA defines methods for encoding and decoding points and integers. These are\n* helper convenience methods, that pass along to utility functions implied\n* parameters.\n*\n*/\nEDDSA.prototype.encodePoint = function encodePoint(point) {\n var enc = point.getY().toArray('le', this.encodingLength);\n enc[this.encodingLength - 1] |= point.getX().isOdd() ? 0x80 : 0;\n return enc;\n};\n\nEDDSA.prototype.decodePoint = function decodePoint(bytes) {\n bytes = utils.parseBytes(bytes);\n\n var lastIx = bytes.length - 1;\n var normed = bytes.slice(0, lastIx).concat(bytes[lastIx] & ~0x80);\n var xIsOdd = (bytes[lastIx] & 0x80) !== 0;\n\n var y = utils.intFromLE(normed);\n return this.curve.pointFromY(y, xIsOdd);\n};\n\nEDDSA.prototype.encodeInt = function encodeInt(num) {\n return num.toArray('le', this.encodingLength);\n};\n\nEDDSA.prototype.decodeInt = function decodeInt(bytes) {\n return utils.intFromLE(bytes);\n};\n\nEDDSA.prototype.isPoint = function isPoint(val) {\n return val instanceof this.pointClass;\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar assert = utils.assert;\nvar parseBytes = utils.parseBytes;\nvar cachedProperty = utils.cachedProperty;\n\n/**\n* @param {EDDSA} eddsa - instance\n* @param {Object} params - public/private key parameters\n*\n* @param {Array} [params.secret] - secret seed bytes\n* @param {Point} [params.pub] - public key point (aka `A` in eddsa terms)\n* @param {Array} [params.pub] - public key point encoded as bytes\n*\n*/\nfunction KeyPair(eddsa, params) {\n this.eddsa = eddsa;\n this._secret = parseBytes(params.secret);\n if (eddsa.isPoint(params.pub))\n this._pub = params.pub;\n else\n this._pubBytes = parseBytes(params.pub);\n}\n\nKeyPair.fromPublic = function fromPublic(eddsa, pub) {\n if (pub instanceof KeyPair)\n return pub;\n return new KeyPair(eddsa, { pub: pub });\n};\n\nKeyPair.fromSecret = function fromSecret(eddsa, secret) {\n if (secret instanceof KeyPair)\n return secret;\n return new KeyPair(eddsa, { secret: secret });\n};\n\nKeyPair.prototype.secret = function secret() {\n return this._secret;\n};\n\ncachedProperty(KeyPair, 'pubBytes', function pubBytes() {\n return this.eddsa.encodePoint(this.pub());\n});\n\ncachedProperty(KeyPair, 'pub', function pub() {\n if (this._pubBytes)\n return this.eddsa.decodePoint(this._pubBytes);\n return this.eddsa.g.mul(this.priv());\n});\n\ncachedProperty(KeyPair, 'privBytes', function privBytes() {\n var eddsa = this.eddsa;\n var hash = this.hash();\n var lastIx = eddsa.encodingLength - 1;\n\n var a = hash.slice(0, eddsa.encodingLength);\n a[0] &= 248;\n a[lastIx] &= 127;\n a[lastIx] |= 64;\n\n return a;\n});\n\ncachedProperty(KeyPair, 'priv', function priv() {\n return this.eddsa.decodeInt(this.privBytes());\n});\n\ncachedProperty(KeyPair, 'hash', function hash() {\n return this.eddsa.hash().update(this.secret()).digest();\n});\n\ncachedProperty(KeyPair, 'messagePrefix', function messagePrefix() {\n return this.hash().slice(this.eddsa.encodingLength);\n});\n\nKeyPair.prototype.sign = function sign(message) {\n assert(this._secret, 'KeyPair can only verify');\n return this.eddsa.sign(message, this);\n};\n\nKeyPair.prototype.verify = function verify(message, sig) {\n return this.eddsa.verify(message, sig, this);\n};\n\nKeyPair.prototype.getSecret = function getSecret(enc) {\n assert(this._secret, 'KeyPair is public only');\n return utils.encode(this.secret(), enc);\n};\n\nKeyPair.prototype.getPublic = function getPublic(enc) {\n return utils.encode(this.pubBytes(), enc);\n};\n\nmodule.exports = KeyPair;\n","'use strict';\n\nvar BN = require('bn.js');\nvar utils = require('../utils');\nvar assert = utils.assert;\nvar cachedProperty = utils.cachedProperty;\nvar parseBytes = utils.parseBytes;\n\n/**\n* @param {EDDSA} eddsa - eddsa instance\n* @param {Array|Object} sig -\n* @param {Array|Point} [sig.R] - R point as Point or bytes\n* @param {Array|bn} [sig.S] - S scalar as bn or bytes\n* @param {Array} [sig.Rencoded] - R point encoded\n* @param {Array} [sig.Sencoded] - S scalar encoded\n*/\nfunction Signature(eddsa, sig) {\n this.eddsa = eddsa;\n\n if (typeof sig !== 'object')\n sig = parseBytes(sig);\n\n if (Array.isArray(sig)) {\n sig = {\n R: sig.slice(0, eddsa.encodingLength),\n S: sig.slice(eddsa.encodingLength),\n };\n }\n\n assert(sig.R && sig.S, 'Signature without R or S');\n\n if (eddsa.isPoint(sig.R))\n this._R = sig.R;\n if (sig.S instanceof BN)\n this._S = sig.S;\n\n this._Rencoded = Array.isArray(sig.R) ? sig.R : sig.Rencoded;\n this._Sencoded = Array.isArray(sig.S) ? sig.S : sig.Sencoded;\n}\n\ncachedProperty(Signature, 'S', function S() {\n return this.eddsa.decodeInt(this.Sencoded());\n});\n\ncachedProperty(Signature, 'R', function R() {\n return this.eddsa.decodePoint(this.Rencoded());\n});\n\ncachedProperty(Signature, 'Rencoded', function Rencoded() {\n return this.eddsa.encodePoint(this.R());\n});\n\ncachedProperty(Signature, 'Sencoded', function Sencoded() {\n return this.eddsa.encodeInt(this.S());\n});\n\nSignature.prototype.toBytes = function toBytes() {\n return this.Rencoded().concat(this.Sencoded());\n};\n\nSignature.prototype.toHex = function toHex() {\n return utils.encode(this.toBytes(), 'hex').toUpperCase();\n};\n\nmodule.exports = Signature;\n","module.exports = {\n doubles: {\n step: 4,\n points: [\n [\n 'e60fce93b59e9ec53011aabc21c23e97b2a31369b87a5ae9c44ee89e2a6dec0a',\n 'f7e3507399e595929db99f34f57937101296891e44d23f0be1f32cce69616821',\n ],\n [\n '8282263212c609d9ea2a6e3e172de238d8c39cabd5ac1ca10646e23fd5f51508',\n '11f8a8098557dfe45e8256e830b60ace62d613ac2f7b17bed31b6eaff6e26caf',\n ],\n [\n '175e159f728b865a72f99cc6c6fc846de0b93833fd2222ed73fce5b551e5b739',\n 'd3506e0d9e3c79eba4ef97a51ff71f5eacb5955add24345c6efa6ffee9fed695',\n ],\n [\n '363d90d447b00c9c99ceac05b6262ee053441c7e55552ffe526bad8f83ff4640',\n '4e273adfc732221953b445397f3363145b9a89008199ecb62003c7f3bee9de9',\n ],\n [\n '8b4b5f165df3c2be8c6244b5b745638843e4a781a15bcd1b69f79a55dffdf80c',\n '4aad0a6f68d308b4b3fbd7813ab0da04f9e336546162ee56b3eff0c65fd4fd36',\n ],\n [\n '723cbaa6e5db996d6bf771c00bd548c7b700dbffa6c0e77bcb6115925232fcda',\n '96e867b5595cc498a921137488824d6e2660a0653779494801dc069d9eb39f5f',\n ],\n [\n 'eebfa4d493bebf98ba5feec812c2d3b50947961237a919839a533eca0e7dd7fa',\n '5d9a8ca3970ef0f269ee7edaf178089d9ae4cdc3a711f712ddfd4fdae1de8999',\n ],\n [\n '100f44da696e71672791d0a09b7bde459f1215a29b3c03bfefd7835b39a48db0',\n 'cdd9e13192a00b772ec8f3300c090666b7ff4a18ff5195ac0fbd5cd62bc65a09',\n ],\n [\n 'e1031be262c7ed1b1dc9227a4a04c017a77f8d4464f3b3852c8acde6e534fd2d',\n '9d7061928940405e6bb6a4176597535af292dd419e1ced79a44f18f29456a00d',\n ],\n [\n 'feea6cae46d55b530ac2839f143bd7ec5cf8b266a41d6af52d5e688d9094696d',\n 'e57c6b6c97dce1bab06e4e12bf3ecd5c981c8957cc41442d3155debf18090088',\n ],\n [\n 'da67a91d91049cdcb367be4be6ffca3cfeed657d808583de33fa978bc1ec6cb1',\n '9bacaa35481642bc41f463f7ec9780e5dec7adc508f740a17e9ea8e27a68be1d',\n ],\n [\n '53904faa0b334cdda6e000935ef22151ec08d0f7bb11069f57545ccc1a37b7c0',\n '5bc087d0bc80106d88c9eccac20d3c1c13999981e14434699dcb096b022771c8',\n ],\n [\n '8e7bcd0bd35983a7719cca7764ca906779b53a043a9b8bcaeff959f43ad86047',\n '10b7770b2a3da4b3940310420ca9514579e88e2e47fd68b3ea10047e8460372a',\n ],\n [\n '385eed34c1cdff21e6d0818689b81bde71a7f4f18397e6690a841e1599c43862',\n '283bebc3e8ea23f56701de19e9ebf4576b304eec2086dc8cc0458fe5542e5453',\n ],\n [\n '6f9d9b803ecf191637c73a4413dfa180fddf84a5947fbc9c606ed86c3fac3a7',\n '7c80c68e603059ba69b8e2a30e45c4d47ea4dd2f5c281002d86890603a842160',\n ],\n [\n '3322d401243c4e2582a2147c104d6ecbf774d163db0f5e5313b7e0e742d0e6bd',\n '56e70797e9664ef5bfb019bc4ddaf9b72805f63ea2873af624f3a2e96c28b2a0',\n ],\n [\n '85672c7d2de0b7da2bd1770d89665868741b3f9af7643397721d74d28134ab83',\n '7c481b9b5b43b2eb6374049bfa62c2e5e77f17fcc5298f44c8e3094f790313a6',\n ],\n [\n '948bf809b1988a46b06c9f1919413b10f9226c60f668832ffd959af60c82a0a',\n '53a562856dcb6646dc6b74c5d1c3418c6d4dff08c97cd2bed4cb7f88d8c8e589',\n ],\n [\n '6260ce7f461801c34f067ce0f02873a8f1b0e44dfc69752accecd819f38fd8e8',\n 'bc2da82b6fa5b571a7f09049776a1ef7ecd292238051c198c1a84e95b2b4ae17',\n ],\n [\n 'e5037de0afc1d8d43d8348414bbf4103043ec8f575bfdc432953cc8d2037fa2d',\n '4571534baa94d3b5f9f98d09fb990bddbd5f5b03ec481f10e0e5dc841d755bda',\n ],\n [\n 'e06372b0f4a207adf5ea905e8f1771b4e7e8dbd1c6a6c5b725866a0ae4fce725',\n '7a908974bce18cfe12a27bb2ad5a488cd7484a7787104870b27034f94eee31dd',\n ],\n [\n '213c7a715cd5d45358d0bbf9dc0ce02204b10bdde2a3f58540ad6908d0559754',\n '4b6dad0b5ae462507013ad06245ba190bb4850f5f36a7eeddff2c27534b458f2',\n ],\n [\n '4e7c272a7af4b34e8dbb9352a5419a87e2838c70adc62cddf0cc3a3b08fbd53c',\n '17749c766c9d0b18e16fd09f6def681b530b9614bff7dd33e0b3941817dcaae6',\n ],\n [\n 'fea74e3dbe778b1b10f238ad61686aa5c76e3db2be43057632427e2840fb27b6',\n '6e0568db9b0b13297cf674deccb6af93126b596b973f7b77701d3db7f23cb96f',\n ],\n [\n '76e64113f677cf0e10a2570d599968d31544e179b760432952c02a4417bdde39',\n 'c90ddf8dee4e95cf577066d70681f0d35e2a33d2b56d2032b4b1752d1901ac01',\n ],\n [\n 'c738c56b03b2abe1e8281baa743f8f9a8f7cc643df26cbee3ab150242bcbb891',\n '893fb578951ad2537f718f2eacbfbbbb82314eef7880cfe917e735d9699a84c3',\n ],\n [\n 'd895626548b65b81e264c7637c972877d1d72e5f3a925014372e9f6588f6c14b',\n 'febfaa38f2bc7eae728ec60818c340eb03428d632bb067e179363ed75d7d991f',\n ],\n [\n 'b8da94032a957518eb0f6433571e8761ceffc73693e84edd49150a564f676e03',\n '2804dfa44805a1e4d7c99cc9762808b092cc584d95ff3b511488e4e74efdf6e7',\n ],\n [\n 'e80fea14441fb33a7d8adab9475d7fab2019effb5156a792f1a11778e3c0df5d',\n 'eed1de7f638e00771e89768ca3ca94472d155e80af322ea9fcb4291b6ac9ec78',\n ],\n [\n 'a301697bdfcd704313ba48e51d567543f2a182031efd6915ddc07bbcc4e16070',\n '7370f91cfb67e4f5081809fa25d40f9b1735dbf7c0a11a130c0d1a041e177ea1',\n ],\n [\n '90ad85b389d6b936463f9d0512678de208cc330b11307fffab7ac63e3fb04ed4',\n 'e507a3620a38261affdcbd9427222b839aefabe1582894d991d4d48cb6ef150',\n ],\n [\n '8f68b9d2f63b5f339239c1ad981f162ee88c5678723ea3351b7b444c9ec4c0da',\n '662a9f2dba063986de1d90c2b6be215dbbea2cfe95510bfdf23cbf79501fff82',\n ],\n [\n 'e4f3fb0176af85d65ff99ff9198c36091f48e86503681e3e6686fd5053231e11',\n '1e63633ad0ef4f1c1661a6d0ea02b7286cc7e74ec951d1c9822c38576feb73bc',\n ],\n [\n '8c00fa9b18ebf331eb961537a45a4266c7034f2f0d4e1d0716fb6eae20eae29e',\n 'efa47267fea521a1a9dc343a3736c974c2fadafa81e36c54e7d2a4c66702414b',\n ],\n [\n 'e7a26ce69dd4829f3e10cec0a9e98ed3143d084f308b92c0997fddfc60cb3e41',\n '2a758e300fa7984b471b006a1aafbb18d0a6b2c0420e83e20e8a9421cf2cfd51',\n ],\n [\n 'b6459e0ee3662ec8d23540c223bcbdc571cbcb967d79424f3cf29eb3de6b80ef',\n '67c876d06f3e06de1dadf16e5661db3c4b3ae6d48e35b2ff30bf0b61a71ba45',\n ],\n [\n 'd68a80c8280bb840793234aa118f06231d6f1fc67e73c5a5deda0f5b496943e8',\n 'db8ba9fff4b586d00c4b1f9177b0e28b5b0e7b8f7845295a294c84266b133120',\n ],\n [\n '324aed7df65c804252dc0270907a30b09612aeb973449cea4095980fc28d3d5d',\n '648a365774b61f2ff130c0c35aec1f4f19213b0c7e332843967224af96ab7c84',\n ],\n [\n '4df9c14919cde61f6d51dfdbe5fee5dceec4143ba8d1ca888e8bd373fd054c96',\n '35ec51092d8728050974c23a1d85d4b5d506cdc288490192ebac06cad10d5d',\n ],\n [\n '9c3919a84a474870faed8a9c1cc66021523489054d7f0308cbfc99c8ac1f98cd',\n 'ddb84f0f4a4ddd57584f044bf260e641905326f76c64c8e6be7e5e03d4fc599d',\n ],\n [\n '6057170b1dd12fdf8de05f281d8e06bb91e1493a8b91d4cc5a21382120a959e5',\n '9a1af0b26a6a4807add9a2daf71df262465152bc3ee24c65e899be932385a2a8',\n ],\n [\n 'a576df8e23a08411421439a4518da31880cef0fba7d4df12b1a6973eecb94266',\n '40a6bf20e76640b2c92b97afe58cd82c432e10a7f514d9f3ee8be11ae1b28ec8',\n ],\n [\n '7778a78c28dec3e30a05fe9629de8c38bb30d1f5cf9a3a208f763889be58ad71',\n '34626d9ab5a5b22ff7098e12f2ff580087b38411ff24ac563b513fc1fd9f43ac',\n ],\n [\n '928955ee637a84463729fd30e7afd2ed5f96274e5ad7e5cb09eda9c06d903ac',\n 'c25621003d3f42a827b78a13093a95eeac3d26efa8a8d83fc5180e935bcd091f',\n ],\n [\n '85d0fef3ec6db109399064f3a0e3b2855645b4a907ad354527aae75163d82751',\n '1f03648413a38c0be29d496e582cf5663e8751e96877331582c237a24eb1f962',\n ],\n [\n 'ff2b0dce97eece97c1c9b6041798b85dfdfb6d8882da20308f5404824526087e',\n '493d13fef524ba188af4c4dc54d07936c7b7ed6fb90e2ceb2c951e01f0c29907',\n ],\n [\n '827fbbe4b1e880ea9ed2b2e6301b212b57f1ee148cd6dd28780e5e2cf856e241',\n 'c60f9c923c727b0b71bef2c67d1d12687ff7a63186903166d605b68baec293ec',\n ],\n [\n 'eaa649f21f51bdbae7be4ae34ce6e5217a58fdce7f47f9aa7f3b58fa2120e2b3',\n 'be3279ed5bbbb03ac69a80f89879aa5a01a6b965f13f7e59d47a5305ba5ad93d',\n ],\n [\n 'e4a42d43c5cf169d9391df6decf42ee541b6d8f0c9a137401e23632dda34d24f',\n '4d9f92e716d1c73526fc99ccfb8ad34ce886eedfa8d8e4f13a7f7131deba9414',\n ],\n [\n '1ec80fef360cbdd954160fadab352b6b92b53576a88fea4947173b9d4300bf19',\n 'aeefe93756b5340d2f3a4958a7abbf5e0146e77f6295a07b671cdc1cc107cefd',\n ],\n [\n '146a778c04670c2f91b00af4680dfa8bce3490717d58ba889ddb5928366642be',\n 'b318e0ec3354028add669827f9d4b2870aaa971d2f7e5ed1d0b297483d83efd0',\n ],\n [\n 'fa50c0f61d22e5f07e3acebb1aa07b128d0012209a28b9776d76a8793180eef9',\n '6b84c6922397eba9b72cd2872281a68a5e683293a57a213b38cd8d7d3f4f2811',\n ],\n [\n 'da1d61d0ca721a11b1a5bf6b7d88e8421a288ab5d5bba5220e53d32b5f067ec2',\n '8157f55a7c99306c79c0766161c91e2966a73899d279b48a655fba0f1ad836f1',\n ],\n [\n 'a8e282ff0c9706907215ff98e8fd416615311de0446f1e062a73b0610d064e13',\n '7f97355b8db81c09abfb7f3c5b2515888b679a3e50dd6bd6cef7c73111f4cc0c',\n ],\n [\n '174a53b9c9a285872d39e56e6913cab15d59b1fa512508c022f382de8319497c',\n 'ccc9dc37abfc9c1657b4155f2c47f9e6646b3a1d8cb9854383da13ac079afa73',\n ],\n [\n '959396981943785c3d3e57edf5018cdbe039e730e4918b3d884fdff09475b7ba',\n '2e7e552888c331dd8ba0386a4b9cd6849c653f64c8709385e9b8abf87524f2fd',\n ],\n [\n 'd2a63a50ae401e56d645a1153b109a8fcca0a43d561fba2dbb51340c9d82b151',\n 'e82d86fb6443fcb7565aee58b2948220a70f750af484ca52d4142174dcf89405',\n ],\n [\n '64587e2335471eb890ee7896d7cfdc866bacbdbd3839317b3436f9b45617e073',\n 'd99fcdd5bf6902e2ae96dd6447c299a185b90a39133aeab358299e5e9faf6589',\n ],\n [\n '8481bde0e4e4d885b3a546d3e549de042f0aa6cea250e7fd358d6c86dd45e458',\n '38ee7b8cba5404dd84a25bf39cecb2ca900a79c42b262e556d64b1b59779057e',\n ],\n [\n '13464a57a78102aa62b6979ae817f4637ffcfed3c4b1ce30bcd6303f6caf666b',\n '69be159004614580ef7e433453ccb0ca48f300a81d0942e13f495a907f6ecc27',\n ],\n [\n 'bc4a9df5b713fe2e9aef430bcc1dc97a0cd9ccede2f28588cada3a0d2d83f366',\n 'd3a81ca6e785c06383937adf4b798caa6e8a9fbfa547b16d758d666581f33c1',\n ],\n [\n '8c28a97bf8298bc0d23d8c749452a32e694b65e30a9472a3954ab30fe5324caa',\n '40a30463a3305193378fedf31f7cc0eb7ae784f0451cb9459e71dc73cbef9482',\n ],\n [\n '8ea9666139527a8c1dd94ce4f071fd23c8b350c5a4bb33748c4ba111faccae0',\n '620efabbc8ee2782e24e7c0cfb95c5d735b783be9cf0f8e955af34a30e62b945',\n ],\n [\n 'dd3625faef5ba06074669716bbd3788d89bdde815959968092f76cc4eb9a9787',\n '7a188fa3520e30d461da2501045731ca941461982883395937f68d00c644a573',\n ],\n [\n 'f710d79d9eb962297e4f6232b40e8f7feb2bc63814614d692c12de752408221e',\n 'ea98e67232d3b3295d3b535532115ccac8612c721851617526ae47a9c77bfc82',\n ],\n ],\n },\n naf: {\n wnd: 7,\n points: [\n [\n 'f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9',\n '388f7b0f632de8140fe337e62a37f3566500a99934c2231b6cb9fd7584b8e672',\n ],\n [\n '2f8bde4d1a07209355b4a7250a5c5128e88b84bddc619ab7cba8d569b240efe4',\n 'd8ac222636e5e3d6d4dba9dda6c9c426f788271bab0d6840dca87d3aa6ac62d6',\n ],\n [\n '5cbdf0646e5db4eaa398f365f2ea7a0e3d419b7e0330e39ce92bddedcac4f9bc',\n '6aebca40ba255960a3178d6d861a54dba813d0b813fde7b5a5082628087264da',\n ],\n [\n 'acd484e2f0c7f65309ad178a9f559abde09796974c57e714c35f110dfc27ccbe',\n 'cc338921b0a7d9fd64380971763b61e9add888a4375f8e0f05cc262ac64f9c37',\n ],\n [\n '774ae7f858a9411e5ef4246b70c65aac5649980be5c17891bbec17895da008cb',\n 'd984a032eb6b5e190243dd56d7b7b365372db1e2dff9d6a8301d74c9c953c61b',\n ],\n [\n 'f28773c2d975288bc7d1d205c3748651b075fbc6610e58cddeeddf8f19405aa8',\n 'ab0902e8d880a89758212eb65cdaf473a1a06da521fa91f29b5cb52db03ed81',\n ],\n [\n 'd7924d4f7d43ea965a465ae3095ff41131e5946f3c85f79e44adbcf8e27e080e',\n '581e2872a86c72a683842ec228cc6defea40af2bd896d3a5c504dc9ff6a26b58',\n ],\n [\n 'defdea4cdb677750a420fee807eacf21eb9898ae79b9768766e4faa04a2d4a34',\n '4211ab0694635168e997b0ead2a93daeced1f4a04a95c0f6cfb199f69e56eb77',\n ],\n [\n '2b4ea0a797a443d293ef5cff444f4979f06acfebd7e86d277475656138385b6c',\n '85e89bc037945d93b343083b5a1c86131a01f60c50269763b570c854e5c09b7a',\n ],\n [\n '352bbf4a4cdd12564f93fa332ce333301d9ad40271f8107181340aef25be59d5',\n '321eb4075348f534d59c18259dda3e1f4a1b3b2e71b1039c67bd3d8bcf81998c',\n ],\n [\n '2fa2104d6b38d11b0230010559879124e42ab8dfeff5ff29dc9cdadd4ecacc3f',\n '2de1068295dd865b64569335bd5dd80181d70ecfc882648423ba76b532b7d67',\n ],\n [\n '9248279b09b4d68dab21a9b066edda83263c3d84e09572e269ca0cd7f5453714',\n '73016f7bf234aade5d1aa71bdea2b1ff3fc0de2a887912ffe54a32ce97cb3402',\n ],\n [\n 'daed4f2be3a8bf278e70132fb0beb7522f570e144bf615c07e996d443dee8729',\n 'a69dce4a7d6c98e8d4a1aca87ef8d7003f83c230f3afa726ab40e52290be1c55',\n ],\n [\n 'c44d12c7065d812e8acf28d7cbb19f9011ecd9e9fdf281b0e6a3b5e87d22e7db',\n '2119a460ce326cdc76c45926c982fdac0e106e861edf61c5a039063f0e0e6482',\n ],\n [\n '6a245bf6dc698504c89a20cfded60853152b695336c28063b61c65cbd269e6b4',\n 'e022cf42c2bd4a708b3f5126f16a24ad8b33ba48d0423b6efd5e6348100d8a82',\n ],\n [\n '1697ffa6fd9de627c077e3d2fe541084ce13300b0bec1146f95ae57f0d0bd6a5',\n 'b9c398f186806f5d27561506e4557433a2cf15009e498ae7adee9d63d01b2396',\n ],\n [\n '605bdb019981718b986d0f07e834cb0d9deb8360ffb7f61df982345ef27a7479',\n '2972d2de4f8d20681a78d93ec96fe23c26bfae84fb14db43b01e1e9056b8c49',\n ],\n [\n '62d14dab4150bf497402fdc45a215e10dcb01c354959b10cfe31c7e9d87ff33d',\n '80fc06bd8cc5b01098088a1950eed0db01aa132967ab472235f5642483b25eaf',\n ],\n [\n '80c60ad0040f27dade5b4b06c408e56b2c50e9f56b9b8b425e555c2f86308b6f',\n '1c38303f1cc5c30f26e66bad7fe72f70a65eed4cbe7024eb1aa01f56430bd57a',\n ],\n [\n '7a9375ad6167ad54aa74c6348cc54d344cc5dc9487d847049d5eabb0fa03c8fb',\n 'd0e3fa9eca8726909559e0d79269046bdc59ea10c70ce2b02d499ec224dc7f7',\n ],\n [\n 'd528ecd9b696b54c907a9ed045447a79bb408ec39b68df504bb51f459bc3ffc9',\n 'eecf41253136e5f99966f21881fd656ebc4345405c520dbc063465b521409933',\n ],\n [\n '49370a4b5f43412ea25f514e8ecdad05266115e4a7ecb1387231808f8b45963',\n '758f3f41afd6ed428b3081b0512fd62a54c3f3afbb5b6764b653052a12949c9a',\n ],\n [\n '77f230936ee88cbbd73df930d64702ef881d811e0e1498e2f1c13eb1fc345d74',\n '958ef42a7886b6400a08266e9ba1b37896c95330d97077cbbe8eb3c7671c60d6',\n ],\n [\n 'f2dac991cc4ce4b9ea44887e5c7c0bce58c80074ab9d4dbaeb28531b7739f530',\n 'e0dedc9b3b2f8dad4da1f32dec2531df9eb5fbeb0598e4fd1a117dba703a3c37',\n ],\n [\n '463b3d9f662621fb1b4be8fbbe2520125a216cdfc9dae3debcba4850c690d45b',\n '5ed430d78c296c3543114306dd8622d7c622e27c970a1de31cb377b01af7307e',\n ],\n [\n 'f16f804244e46e2a09232d4aff3b59976b98fac14328a2d1a32496b49998f247',\n 'cedabd9b82203f7e13d206fcdf4e33d92a6c53c26e5cce26d6579962c4e31df6',\n ],\n [\n 'caf754272dc84563b0352b7a14311af55d245315ace27c65369e15f7151d41d1',\n 'cb474660ef35f5f2a41b643fa5e460575f4fa9b7962232a5c32f908318a04476',\n ],\n [\n '2600ca4b282cb986f85d0f1709979d8b44a09c07cb86d7c124497bc86f082120',\n '4119b88753c15bd6a693b03fcddbb45d5ac6be74ab5f0ef44b0be9475a7e4b40',\n ],\n [\n '7635ca72d7e8432c338ec53cd12220bc01c48685e24f7dc8c602a7746998e435',\n '91b649609489d613d1d5e590f78e6d74ecfc061d57048bad9e76f302c5b9c61',\n ],\n [\n '754e3239f325570cdbbf4a87deee8a66b7f2b33479d468fbc1a50743bf56cc18',\n '673fb86e5bda30fb3cd0ed304ea49a023ee33d0197a695d0c5d98093c536683',\n ],\n [\n 'e3e6bd1071a1e96aff57859c82d570f0330800661d1c952f9fe2694691d9b9e8',\n '59c9e0bba394e76f40c0aa58379a3cb6a5a2283993e90c4167002af4920e37f5',\n ],\n [\n '186b483d056a033826ae73d88f732985c4ccb1f32ba35f4b4cc47fdcf04aa6eb',\n '3b952d32c67cf77e2e17446e204180ab21fb8090895138b4a4a797f86e80888b',\n ],\n [\n 'df9d70a6b9876ce544c98561f4be4f725442e6d2b737d9c91a8321724ce0963f',\n '55eb2dafd84d6ccd5f862b785dc39d4ab157222720ef9da217b8c45cf2ba2417',\n ],\n [\n '5edd5cc23c51e87a497ca815d5dce0f8ab52554f849ed8995de64c5f34ce7143',\n 'efae9c8dbc14130661e8cec030c89ad0c13c66c0d17a2905cdc706ab7399a868',\n ],\n [\n '290798c2b6476830da12fe02287e9e777aa3fba1c355b17a722d362f84614fba',\n 'e38da76dcd440621988d00bcf79af25d5b29c094db2a23146d003afd41943e7a',\n ],\n [\n 'af3c423a95d9f5b3054754efa150ac39cd29552fe360257362dfdecef4053b45',\n 'f98a3fd831eb2b749a93b0e6f35cfb40c8cd5aa667a15581bc2feded498fd9c6',\n ],\n [\n '766dbb24d134e745cccaa28c99bf274906bb66b26dcf98df8d2fed50d884249a',\n '744b1152eacbe5e38dcc887980da38b897584a65fa06cedd2c924f97cbac5996',\n ],\n [\n '59dbf46f8c94759ba21277c33784f41645f7b44f6c596a58ce92e666191abe3e',\n 'c534ad44175fbc300f4ea6ce648309a042ce739a7919798cd85e216c4a307f6e',\n ],\n [\n 'f13ada95103c4537305e691e74e9a4a8dd647e711a95e73cb62dc6018cfd87b8',\n 'e13817b44ee14de663bf4bc808341f326949e21a6a75c2570778419bdaf5733d',\n ],\n [\n '7754b4fa0e8aced06d4167a2c59cca4cda1869c06ebadfb6488550015a88522c',\n '30e93e864e669d82224b967c3020b8fa8d1e4e350b6cbcc537a48b57841163a2',\n ],\n [\n '948dcadf5990e048aa3874d46abef9d701858f95de8041d2a6828c99e2262519',\n 'e491a42537f6e597d5d28a3224b1bc25df9154efbd2ef1d2cbba2cae5347d57e',\n ],\n [\n '7962414450c76c1689c7b48f8202ec37fb224cf5ac0bfa1570328a8a3d7c77ab',\n '100b610ec4ffb4760d5c1fc133ef6f6b12507a051f04ac5760afa5b29db83437',\n ],\n [\n '3514087834964b54b15b160644d915485a16977225b8847bb0dd085137ec47ca',\n 'ef0afbb2056205448e1652c48e8127fc6039e77c15c2378b7e7d15a0de293311',\n ],\n [\n 'd3cc30ad6b483e4bc79ce2c9dd8bc54993e947eb8df787b442943d3f7b527eaf',\n '8b378a22d827278d89c5e9be8f9508ae3c2ad46290358630afb34db04eede0a4',\n ],\n [\n '1624d84780732860ce1c78fcbfefe08b2b29823db913f6493975ba0ff4847610',\n '68651cf9b6da903e0914448c6cd9d4ca896878f5282be4c8cc06e2a404078575',\n ],\n [\n '733ce80da955a8a26902c95633e62a985192474b5af207da6df7b4fd5fc61cd4',\n 'f5435a2bd2badf7d485a4d8b8db9fcce3e1ef8e0201e4578c54673bc1dc5ea1d',\n ],\n [\n '15d9441254945064cf1a1c33bbd3b49f8966c5092171e699ef258dfab81c045c',\n 'd56eb30b69463e7234f5137b73b84177434800bacebfc685fc37bbe9efe4070d',\n ],\n [\n 'a1d0fcf2ec9de675b612136e5ce70d271c21417c9d2b8aaaac138599d0717940',\n 'edd77f50bcb5a3cab2e90737309667f2641462a54070f3d519212d39c197a629',\n ],\n [\n 'e22fbe15c0af8ccc5780c0735f84dbe9a790badee8245c06c7ca37331cb36980',\n 'a855babad5cd60c88b430a69f53a1a7a38289154964799be43d06d77d31da06',\n ],\n [\n '311091dd9860e8e20ee13473c1155f5f69635e394704eaa74009452246cfa9b3',\n '66db656f87d1f04fffd1f04788c06830871ec5a64feee685bd80f0b1286d8374',\n ],\n [\n '34c1fd04d301be89b31c0442d3e6ac24883928b45a9340781867d4232ec2dbdf',\n '9414685e97b1b5954bd46f730174136d57f1ceeb487443dc5321857ba73abee',\n ],\n [\n 'f219ea5d6b54701c1c14de5b557eb42a8d13f3abbcd08affcc2a5e6b049b8d63',\n '4cb95957e83d40b0f73af4544cccf6b1f4b08d3c07b27fb8d8c2962a400766d1',\n ],\n [\n 'd7b8740f74a8fbaab1f683db8f45de26543a5490bca627087236912469a0b448',\n 'fa77968128d9c92ee1010f337ad4717eff15db5ed3c049b3411e0315eaa4593b',\n ],\n [\n '32d31c222f8f6f0ef86f7c98d3a3335ead5bcd32abdd94289fe4d3091aa824bf',\n '5f3032f5892156e39ccd3d7915b9e1da2e6dac9e6f26e961118d14b8462e1661',\n ],\n [\n '7461f371914ab32671045a155d9831ea8793d77cd59592c4340f86cbc18347b5',\n '8ec0ba238b96bec0cbdddcae0aa442542eee1ff50c986ea6b39847b3cc092ff6',\n ],\n [\n 'ee079adb1df1860074356a25aa38206a6d716b2c3e67453d287698bad7b2b2d6',\n '8dc2412aafe3be5c4c5f37e0ecc5f9f6a446989af04c4e25ebaac479ec1c8c1e',\n ],\n [\n '16ec93e447ec83f0467b18302ee620f7e65de331874c9dc72bfd8616ba9da6b5',\n '5e4631150e62fb40d0e8c2a7ca5804a39d58186a50e497139626778e25b0674d',\n ],\n [\n 'eaa5f980c245f6f038978290afa70b6bd8855897f98b6aa485b96065d537bd99',\n 'f65f5d3e292c2e0819a528391c994624d784869d7e6ea67fb18041024edc07dc',\n ],\n [\n '78c9407544ac132692ee1910a02439958ae04877151342ea96c4b6b35a49f51',\n 'f3e0319169eb9b85d5404795539a5e68fa1fbd583c064d2462b675f194a3ddb4',\n ],\n [\n '494f4be219a1a77016dcd838431aea0001cdc8ae7a6fc688726578d9702857a5',\n '42242a969283a5f339ba7f075e36ba2af925ce30d767ed6e55f4b031880d562c',\n ],\n [\n 'a598a8030da6d86c6bc7f2f5144ea549d28211ea58faa70ebf4c1e665c1fe9b5',\n '204b5d6f84822c307e4b4a7140737aec23fc63b65b35f86a10026dbd2d864e6b',\n ],\n [\n 'c41916365abb2b5d09192f5f2dbeafec208f020f12570a184dbadc3e58595997',\n '4f14351d0087efa49d245b328984989d5caf9450f34bfc0ed16e96b58fa9913',\n ],\n [\n '841d6063a586fa475a724604da03bc5b92a2e0d2e0a36acfe4c73a5514742881',\n '73867f59c0659e81904f9a1c7543698e62562d6744c169ce7a36de01a8d6154',\n ],\n [\n '5e95bb399a6971d376026947f89bde2f282b33810928be4ded112ac4d70e20d5',\n '39f23f366809085beebfc71181313775a99c9aed7d8ba38b161384c746012865',\n ],\n [\n '36e4641a53948fd476c39f8a99fd974e5ec07564b5315d8bf99471bca0ef2f66',\n 'd2424b1b1abe4eb8164227b085c9aa9456ea13493fd563e06fd51cf5694c78fc',\n ],\n [\n '336581ea7bfbbb290c191a2f507a41cf5643842170e914faeab27c2c579f726',\n 'ead12168595fe1be99252129b6e56b3391f7ab1410cd1e0ef3dcdcabd2fda224',\n ],\n [\n '8ab89816dadfd6b6a1f2634fcf00ec8403781025ed6890c4849742706bd43ede',\n '6fdcef09f2f6d0a044e654aef624136f503d459c3e89845858a47a9129cdd24e',\n ],\n [\n '1e33f1a746c9c5778133344d9299fcaa20b0938e8acff2544bb40284b8c5fb94',\n '60660257dd11b3aa9c8ed618d24edff2306d320f1d03010e33a7d2057f3b3b6',\n ],\n [\n '85b7c1dcb3cec1b7ee7f30ded79dd20a0ed1f4cc18cbcfcfa410361fd8f08f31',\n '3d98a9cdd026dd43f39048f25a8847f4fcafad1895d7a633c6fed3c35e999511',\n ],\n [\n '29df9fbd8d9e46509275f4b125d6d45d7fbe9a3b878a7af872a2800661ac5f51',\n 'b4c4fe99c775a606e2d8862179139ffda61dc861c019e55cd2876eb2a27d84b',\n ],\n [\n 'a0b1cae06b0a847a3fea6e671aaf8adfdfe58ca2f768105c8082b2e449fce252',\n 'ae434102edde0958ec4b19d917a6a28e6b72da1834aff0e650f049503a296cf2',\n ],\n [\n '4e8ceafb9b3e9a136dc7ff67e840295b499dfb3b2133e4ba113f2e4c0e121e5',\n 'cf2174118c8b6d7a4b48f6d534ce5c79422c086a63460502b827ce62a326683c',\n ],\n [\n 'd24a44e047e19b6f5afb81c7ca2f69080a5076689a010919f42725c2b789a33b',\n '6fb8d5591b466f8fc63db50f1c0f1c69013f996887b8244d2cdec417afea8fa3',\n ],\n [\n 'ea01606a7a6c9cdd249fdfcfacb99584001edd28abbab77b5104e98e8e3b35d4',\n '322af4908c7312b0cfbfe369f7a7b3cdb7d4494bc2823700cfd652188a3ea98d',\n ],\n [\n 'af8addbf2b661c8a6c6328655eb96651252007d8c5ea31be4ad196de8ce2131f',\n '6749e67c029b85f52a034eafd096836b2520818680e26ac8f3dfbcdb71749700',\n ],\n [\n 'e3ae1974566ca06cc516d47e0fb165a674a3dabcfca15e722f0e3450f45889',\n '2aeabe7e4531510116217f07bf4d07300de97e4874f81f533420a72eeb0bd6a4',\n ],\n [\n '591ee355313d99721cf6993ffed1e3e301993ff3ed258802075ea8ced397e246',\n 'b0ea558a113c30bea60fc4775460c7901ff0b053d25ca2bdeee98f1a4be5d196',\n ],\n [\n '11396d55fda54c49f19aa97318d8da61fa8584e47b084945077cf03255b52984',\n '998c74a8cd45ac01289d5833a7beb4744ff536b01b257be4c5767bea93ea57a4',\n ],\n [\n '3c5d2a1ba39c5a1790000738c9e0c40b8dcdfd5468754b6405540157e017aa7a',\n 'b2284279995a34e2f9d4de7396fc18b80f9b8b9fdd270f6661f79ca4c81bd257',\n ],\n [\n 'cc8704b8a60a0defa3a99a7299f2e9c3fbc395afb04ac078425ef8a1793cc030',\n 'bdd46039feed17881d1e0862db347f8cf395b74fc4bcdc4e940b74e3ac1f1b13',\n ],\n [\n 'c533e4f7ea8555aacd9777ac5cad29b97dd4defccc53ee7ea204119b2889b197',\n '6f0a256bc5efdf429a2fb6242f1a43a2d9b925bb4a4b3a26bb8e0f45eb596096',\n ],\n [\n 'c14f8f2ccb27d6f109f6d08d03cc96a69ba8c34eec07bbcf566d48e33da6593',\n 'c359d6923bb398f7fd4473e16fe1c28475b740dd098075e6c0e8649113dc3a38',\n ],\n [\n 'a6cbc3046bc6a450bac24789fa17115a4c9739ed75f8f21ce441f72e0b90e6ef',\n '21ae7f4680e889bb130619e2c0f95a360ceb573c70603139862afd617fa9b9f',\n ],\n [\n '347d6d9a02c48927ebfb86c1359b1caf130a3c0267d11ce6344b39f99d43cc38',\n '60ea7f61a353524d1c987f6ecec92f086d565ab687870cb12689ff1e31c74448',\n ],\n [\n 'da6545d2181db8d983f7dcb375ef5866d47c67b1bf31c8cf855ef7437b72656a',\n '49b96715ab6878a79e78f07ce5680c5d6673051b4935bd897fea824b77dc208a',\n ],\n [\n 'c40747cc9d012cb1a13b8148309c6de7ec25d6945d657146b9d5994b8feb1111',\n '5ca560753be2a12fc6de6caf2cb489565db936156b9514e1bb5e83037e0fa2d4',\n ],\n [\n '4e42c8ec82c99798ccf3a610be870e78338c7f713348bd34c8203ef4037f3502',\n '7571d74ee5e0fb92a7a8b33a07783341a5492144cc54bcc40a94473693606437',\n ],\n [\n '3775ab7089bc6af823aba2e1af70b236d251cadb0c86743287522a1b3b0dedea',\n 'be52d107bcfa09d8bcb9736a828cfa7fac8db17bf7a76a2c42ad961409018cf7',\n ],\n [\n 'cee31cbf7e34ec379d94fb814d3d775ad954595d1314ba8846959e3e82f74e26',\n '8fd64a14c06b589c26b947ae2bcf6bfa0149ef0be14ed4d80f448a01c43b1c6d',\n ],\n [\n 'b4f9eaea09b6917619f6ea6a4eb5464efddb58fd45b1ebefcdc1a01d08b47986',\n '39e5c9925b5a54b07433a4f18c61726f8bb131c012ca542eb24a8ac07200682a',\n ],\n [\n 'd4263dfc3d2df923a0179a48966d30ce84e2515afc3dccc1b77907792ebcc60e',\n '62dfaf07a0f78feb30e30d6295853ce189e127760ad6cf7fae164e122a208d54',\n ],\n [\n '48457524820fa65a4f8d35eb6930857c0032acc0a4a2de422233eeda897612c4',\n '25a748ab367979d98733c38a1fa1c2e7dc6cc07db2d60a9ae7a76aaa49bd0f77',\n ],\n [\n 'dfeeef1881101f2cb11644f3a2afdfc2045e19919152923f367a1767c11cceda',\n 'ecfb7056cf1de042f9420bab396793c0c390bde74b4bbdff16a83ae09a9a7517',\n ],\n [\n '6d7ef6b17543f8373c573f44e1f389835d89bcbc6062ced36c82df83b8fae859',\n 'cd450ec335438986dfefa10c57fea9bcc521a0959b2d80bbf74b190dca712d10',\n ],\n [\n 'e75605d59102a5a2684500d3b991f2e3f3c88b93225547035af25af66e04541f',\n 'f5c54754a8f71ee540b9b48728473e314f729ac5308b06938360990e2bfad125',\n ],\n [\n 'eb98660f4c4dfaa06a2be453d5020bc99a0c2e60abe388457dd43fefb1ed620c',\n '6cb9a8876d9cb8520609af3add26cd20a0a7cd8a9411131ce85f44100099223e',\n ],\n [\n '13e87b027d8514d35939f2e6892b19922154596941888336dc3563e3b8dba942',\n 'fef5a3c68059a6dec5d624114bf1e91aac2b9da568d6abeb2570d55646b8adf1',\n ],\n [\n 'ee163026e9fd6fe017c38f06a5be6fc125424b371ce2708e7bf4491691e5764a',\n '1acb250f255dd61c43d94ccc670d0f58f49ae3fa15b96623e5430da0ad6c62b2',\n ],\n [\n 'b268f5ef9ad51e4d78de3a750c2dc89b1e626d43505867999932e5db33af3d80',\n '5f310d4b3c99b9ebb19f77d41c1dee018cf0d34fd4191614003e945a1216e423',\n ],\n [\n 'ff07f3118a9df035e9fad85eb6c7bfe42b02f01ca99ceea3bf7ffdba93c4750d',\n '438136d603e858a3a5c440c38eccbaddc1d2942114e2eddd4740d098ced1f0d8',\n ],\n [\n '8d8b9855c7c052a34146fd20ffb658bea4b9f69e0d825ebec16e8c3ce2b526a1',\n 'cdb559eedc2d79f926baf44fb84ea4d44bcf50fee51d7ceb30e2e7f463036758',\n ],\n [\n '52db0b5384dfbf05bfa9d472d7ae26dfe4b851ceca91b1eba54263180da32b63',\n 'c3b997d050ee5d423ebaf66a6db9f57b3180c902875679de924b69d84a7b375',\n ],\n [\n 'e62f9490d3d51da6395efd24e80919cc7d0f29c3f3fa48c6fff543becbd43352',\n '6d89ad7ba4876b0b22c2ca280c682862f342c8591f1daf5170e07bfd9ccafa7d',\n ],\n [\n '7f30ea2476b399b4957509c88f77d0191afa2ff5cb7b14fd6d8e7d65aaab1193',\n 'ca5ef7d4b231c94c3b15389a5f6311e9daff7bb67b103e9880ef4bff637acaec',\n ],\n [\n '5098ff1e1d9f14fb46a210fada6c903fef0fb7b4a1dd1d9ac60a0361800b7a00',\n '9731141d81fc8f8084d37c6e7542006b3ee1b40d60dfe5362a5b132fd17ddc0',\n ],\n [\n '32b78c7de9ee512a72895be6b9cbefa6e2f3c4ccce445c96b9f2c81e2778ad58',\n 'ee1849f513df71e32efc3896ee28260c73bb80547ae2275ba497237794c8753c',\n ],\n [\n 'e2cb74fddc8e9fbcd076eef2a7c72b0ce37d50f08269dfc074b581550547a4f7',\n 'd3aa2ed71c9dd2247a62df062736eb0baddea9e36122d2be8641abcb005cc4a4',\n ],\n [\n '8438447566d4d7bedadc299496ab357426009a35f235cb141be0d99cd10ae3a8',\n 'c4e1020916980a4da5d01ac5e6ad330734ef0d7906631c4f2390426b2edd791f',\n ],\n [\n '4162d488b89402039b584c6fc6c308870587d9c46f660b878ab65c82c711d67e',\n '67163e903236289f776f22c25fb8a3afc1732f2b84b4e95dbda47ae5a0852649',\n ],\n [\n '3fad3fa84caf0f34f0f89bfd2dcf54fc175d767aec3e50684f3ba4a4bf5f683d',\n 'cd1bc7cb6cc407bb2f0ca647c718a730cf71872e7d0d2a53fa20efcdfe61826',\n ],\n [\n '674f2600a3007a00568c1a7ce05d0816c1fb84bf1370798f1c69532faeb1a86b',\n '299d21f9413f33b3edf43b257004580b70db57da0b182259e09eecc69e0d38a5',\n ],\n [\n 'd32f4da54ade74abb81b815ad1fb3b263d82d6c692714bcff87d29bd5ee9f08f',\n 'f9429e738b8e53b968e99016c059707782e14f4535359d582fc416910b3eea87',\n ],\n [\n '30e4e670435385556e593657135845d36fbb6931f72b08cb1ed954f1e3ce3ff6',\n '462f9bce619898638499350113bbc9b10a878d35da70740dc695a559eb88db7b',\n ],\n [\n 'be2062003c51cc3004682904330e4dee7f3dcd10b01e580bf1971b04d4cad297',\n '62188bc49d61e5428573d48a74e1c655b1c61090905682a0d5558ed72dccb9bc',\n ],\n [\n '93144423ace3451ed29e0fb9ac2af211cb6e84a601df5993c419859fff5df04a',\n '7c10dfb164c3425f5c71a3f9d7992038f1065224f72bb9d1d902a6d13037b47c',\n ],\n [\n 'b015f8044f5fcbdcf21ca26d6c34fb8197829205c7b7d2a7cb66418c157b112c',\n 'ab8c1e086d04e813744a655b2df8d5f83b3cdc6faa3088c1d3aea1454e3a1d5f',\n ],\n [\n 'd5e9e1da649d97d89e4868117a465a3a4f8a18de57a140d36b3f2af341a21b52',\n '4cb04437f391ed73111a13cc1d4dd0db1693465c2240480d8955e8592f27447a',\n ],\n [\n 'd3ae41047dd7ca065dbf8ed77b992439983005cd72e16d6f996a5316d36966bb',\n 'bd1aeb21ad22ebb22a10f0303417c6d964f8cdd7df0aca614b10dc14d125ac46',\n ],\n [\n '463e2763d885f958fc66cdd22800f0a487197d0a82e377b49f80af87c897b065',\n 'bfefacdb0e5d0fd7df3a311a94de062b26b80c61fbc97508b79992671ef7ca7f',\n ],\n [\n '7985fdfd127c0567c6f53ec1bb63ec3158e597c40bfe747c83cddfc910641917',\n '603c12daf3d9862ef2b25fe1de289aed24ed291e0ec6708703a5bd567f32ed03',\n ],\n [\n '74a1ad6b5f76e39db2dd249410eac7f99e74c59cb83d2d0ed5ff1543da7703e9',\n 'cc6157ef18c9c63cd6193d83631bbea0093e0968942e8c33d5737fd790e0db08',\n ],\n [\n '30682a50703375f602d416664ba19b7fc9bab42c72747463a71d0896b22f6da3',\n '553e04f6b018b4fa6c8f39e7f311d3176290d0e0f19ca73f17714d9977a22ff8',\n ],\n [\n '9e2158f0d7c0d5f26c3791efefa79597654e7a2b2464f52b1ee6c1347769ef57',\n '712fcdd1b9053f09003a3481fa7762e9ffd7c8ef35a38509e2fbf2629008373',\n ],\n [\n '176e26989a43c9cfeba4029c202538c28172e566e3c4fce7322857f3be327d66',\n 'ed8cc9d04b29eb877d270b4878dc43c19aefd31f4eee09ee7b47834c1fa4b1c3',\n ],\n [\n '75d46efea3771e6e68abb89a13ad747ecf1892393dfc4f1b7004788c50374da8',\n '9852390a99507679fd0b86fd2b39a868d7efc22151346e1a3ca4726586a6bed8',\n ],\n [\n '809a20c67d64900ffb698c4c825f6d5f2310fb0451c869345b7319f645605721',\n '9e994980d9917e22b76b061927fa04143d096ccc54963e6a5ebfa5f3f8e286c1',\n ],\n [\n '1b38903a43f7f114ed4500b4eac7083fdefece1cf29c63528d563446f972c180',\n '4036edc931a60ae889353f77fd53de4a2708b26b6f5da72ad3394119daf408f9',\n ],\n ],\n },\n};\n","'use strict';\n\nvar utils = exports;\nvar BN = require('bn.js');\nvar minAssert = require('minimalistic-assert');\nvar minUtils = require('minimalistic-crypto-utils');\n\nutils.assert = minAssert;\nutils.toArray = minUtils.toArray;\nutils.zero2 = minUtils.zero2;\nutils.toHex = minUtils.toHex;\nutils.encode = minUtils.encode;\n\n// Represent num in a w-NAF form\nfunction getNAF(num, w, bits) {\n var naf = new Array(Math.max(num.bitLength(), bits) + 1);\n naf.fill(0);\n\n var ws = 1 << (w + 1);\n var k = num.clone();\n\n for (var i = 0; i < naf.length; i++) {\n var z;\n var mod = k.andln(ws - 1);\n if (k.isOdd()) {\n if (mod > (ws >> 1) - 1)\n z = (ws >> 1) - mod;\n else\n z = mod;\n k.isubn(z);\n } else {\n z = 0;\n }\n\n naf[i] = z;\n k.iushrn(1);\n }\n\n return naf;\n}\nutils.getNAF = getNAF;\n\n// Represent k1, k2 in a Joint Sparse Form\nfunction getJSF(k1, k2) {\n var jsf = [\n [],\n [],\n ];\n\n k1 = k1.clone();\n k2 = k2.clone();\n var d1 = 0;\n var d2 = 0;\n var m8;\n while (k1.cmpn(-d1) > 0 || k2.cmpn(-d2) > 0) {\n // First phase\n var m14 = (k1.andln(3) + d1) & 3;\n var m24 = (k2.andln(3) + d2) & 3;\n if (m14 === 3)\n m14 = -1;\n if (m24 === 3)\n m24 = -1;\n var u1;\n if ((m14 & 1) === 0) {\n u1 = 0;\n } else {\n m8 = (k1.andln(7) + d1) & 7;\n if ((m8 === 3 || m8 === 5) && m24 === 2)\n u1 = -m14;\n else\n u1 = m14;\n }\n jsf[0].push(u1);\n\n var u2;\n if ((m24 & 1) === 0) {\n u2 = 0;\n } else {\n m8 = (k2.andln(7) + d2) & 7;\n if ((m8 === 3 || m8 === 5) && m14 === 2)\n u2 = -m24;\n else\n u2 = m24;\n }\n jsf[1].push(u2);\n\n // Second phase\n if (2 * d1 === u1 + 1)\n d1 = 1 - d1;\n if (2 * d2 === u2 + 1)\n d2 = 1 - d2;\n k1.iushrn(1);\n k2.iushrn(1);\n }\n\n return jsf;\n}\nutils.getJSF = getJSF;\n\nfunction cachedProperty(obj, name, computer) {\n var key = '_' + name;\n obj.prototype[name] = function cachedProperty() {\n return this[key] !== undefined ? this[key] :\n this[key] = computer.call(this);\n };\n}\nutils.cachedProperty = cachedProperty;\n\nfunction parseBytes(bytes) {\n return typeof bytes === 'string' ? utils.toArray(bytes, 'hex') :\n bytes;\n}\nutils.parseBytes = parseBytes;\n\nfunction intFromLE(bytes) {\n return new BN(bytes, 'hex', 'le');\n}\nutils.intFromLE = intFromLE;\n\n","'use strict';\n\nfunction assign(obj, props) {\n for (const key in props) {\n Object.defineProperty(obj, key, {\n value: props[key],\n enumerable: true,\n configurable: true,\n });\n }\n\n return obj;\n}\n\nfunction createError(err, code, props) {\n if (!err || typeof err === 'string') {\n throw new TypeError('Please pass an Error to err-code');\n }\n\n if (!props) {\n props = {};\n }\n\n if (typeof code === 'object') {\n props = code;\n code = undefined;\n }\n\n if (code != null) {\n props.code = code;\n }\n\n try {\n return assign(err, props);\n } catch (_) {\n props.message = err.message;\n props.stack = err.stack;\n\n const ErrClass = function () {};\n\n ErrClass.prototype = Object.create(Object.getPrototypeOf(err));\n\n return assign(new ErrClass(), props);\n }\n}\n\nmodule.exports = createError;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.keccak512 = exports.keccak384 = exports.keccak256 = exports.keccak224 = void 0;\nconst sha3_1 = require(\"@noble/hashes/sha3\");\nconst utils_1 = require(\"./utils\");\nexports.keccak224 = (0, utils_1.wrapHash)(sha3_1.keccak_224);\nexports.keccak256 = (() => {\n const k = (0, utils_1.wrapHash)(sha3_1.keccak_256);\n k.create = sha3_1.keccak_256.create;\n return k;\n})();\nexports.keccak384 = (0, utils_1.wrapHash)(sha3_1.keccak_384);\nexports.keccak512 = (0, utils_1.wrapHash)(sha3_1.keccak_512);\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.crypto = exports.wrapHash = exports.equalsBytes = exports.hexToBytes = exports.bytesToUtf8 = exports.utf8ToBytes = exports.createView = exports.concatBytes = exports.toHex = exports.bytesToHex = exports.assertBytes = exports.assertBool = void 0;\n// buf.toString('hex') -> toHex(buf)\nconst _assert_1 = __importDefault(require(\"@noble/hashes/_assert\"));\nconst utils_1 = require(\"@noble/hashes/utils\");\nconst assertBool = _assert_1.default.bool;\nexports.assertBool = assertBool;\nconst assertBytes = _assert_1.default.bytes;\nexports.assertBytes = assertBytes;\nvar utils_2 = require(\"@noble/hashes/utils\");\nObject.defineProperty(exports, \"bytesToHex\", { enumerable: true, get: function () { return utils_2.bytesToHex; } });\nObject.defineProperty(exports, \"toHex\", { enumerable: true, get: function () { return utils_2.bytesToHex; } });\nObject.defineProperty(exports, \"concatBytes\", { enumerable: true, get: function () { return utils_2.concatBytes; } });\nObject.defineProperty(exports, \"createView\", { enumerable: true, get: function () { return utils_2.createView; } });\nObject.defineProperty(exports, \"utf8ToBytes\", { enumerable: true, get: function () { return utils_2.utf8ToBytes; } });\n// buf.toString('utf8') -> bytesToUtf8(buf)\nfunction bytesToUtf8(data) {\n if (!(data instanceof Uint8Array)) {\n throw new TypeError(`bytesToUtf8 expected Uint8Array, got ${typeof data}`);\n }\n return new TextDecoder().decode(data);\n}\nexports.bytesToUtf8 = bytesToUtf8;\nfunction hexToBytes(data) {\n const sliced = data.startsWith(\"0x\") ? data.substring(2) : data;\n return (0, utils_1.hexToBytes)(sliced);\n}\nexports.hexToBytes = hexToBytes;\n// buf.equals(buf2) -> equalsBytes(buf, buf2)\nfunction equalsBytes(a, b) {\n if (a.length !== b.length) {\n return false;\n }\n for (let i = 0; i < a.length; i++) {\n if (a[i] !== b[i]) {\n return false;\n }\n }\n return true;\n}\nexports.equalsBytes = equalsBytes;\n// Internal utils\nfunction wrapHash(hash) {\n return (msg) => {\n _assert_1.default.bytes(msg);\n return hash(msg);\n };\n}\nexports.wrapHash = wrapHash;\nexports.crypto = (() => {\n const webCrypto = typeof self === \"object\" && \"crypto\" in self ? self.crypto : undefined;\n const nodeRequire = typeof module !== \"undefined\" &&\n typeof module.require === \"function\" &&\n module.require.bind(module);\n return {\n node: nodeRequire && !webCrypto ? nodeRequire(\"crypto\") : undefined,\n web: webCrypto\n };\n})();\n","// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nvar R = typeof Reflect === 'object' ? Reflect : null\nvar ReflectApply = R && typeof R.apply === 'function'\n ? R.apply\n : function ReflectApply(target, receiver, args) {\n return Function.prototype.apply.call(target, receiver, args);\n }\n\nvar ReflectOwnKeys\nif (R && typeof R.ownKeys === 'function') {\n ReflectOwnKeys = R.ownKeys\n} else if (Object.getOwnPropertySymbols) {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target)\n .concat(Object.getOwnPropertySymbols(target));\n };\n} else {\n ReflectOwnKeys = function ReflectOwnKeys(target) {\n return Object.getOwnPropertyNames(target);\n };\n}\n\nfunction ProcessEmitWarning(warning) {\n if (console && console.warn) console.warn(warning);\n}\n\nvar NumberIsNaN = Number.isNaN || function NumberIsNaN(value) {\n return value !== value;\n}\n\nfunction EventEmitter() {\n EventEmitter.init.call(this);\n}\nmodule.exports = EventEmitter;\nmodule.exports.once = once;\n\n// Backwards-compat with node 0.10.x\nEventEmitter.EventEmitter = EventEmitter;\n\nEventEmitter.prototype._events = undefined;\nEventEmitter.prototype._eventsCount = 0;\nEventEmitter.prototype._maxListeners = undefined;\n\n// By default EventEmitters will print a warning if more than 10 listeners are\n// added to it. This is a useful default which helps finding memory leaks.\nvar defaultMaxListeners = 10;\n\nfunction checkListener(listener) {\n if (typeof listener !== 'function') {\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof listener);\n }\n}\n\nObject.defineProperty(EventEmitter, 'defaultMaxListeners', {\n enumerable: true,\n get: function() {\n return defaultMaxListeners;\n },\n set: function(arg) {\n if (typeof arg !== 'number' || arg < 0 || NumberIsNaN(arg)) {\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + arg + '.');\n }\n defaultMaxListeners = arg;\n }\n});\n\nEventEmitter.init = function() {\n\n if (this._events === undefined ||\n this._events === Object.getPrototypeOf(this)._events) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n }\n\n this._maxListeners = this._maxListeners || undefined;\n};\n\n// Obviously not all Emitters should be limited to 10. This function allows\n// that to be increased. Set to zero for unlimited.\nEventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {\n if (typeof n !== 'number' || n < 0 || NumberIsNaN(n)) {\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + n + '.');\n }\n this._maxListeners = n;\n return this;\n};\n\nfunction _getMaxListeners(that) {\n if (that._maxListeners === undefined)\n return EventEmitter.defaultMaxListeners;\n return that._maxListeners;\n}\n\nEventEmitter.prototype.getMaxListeners = function getMaxListeners() {\n return _getMaxListeners(this);\n};\n\nEventEmitter.prototype.emit = function emit(type) {\n var args = [];\n for (var i = 1; i < arguments.length; i++) args.push(arguments[i]);\n var doError = (type === 'error');\n\n var events = this._events;\n if (events !== undefined)\n doError = (doError && events.error === undefined);\n else if (!doError)\n return false;\n\n // If there is no 'error' event listener then throw.\n if (doError) {\n var er;\n if (args.length > 0)\n er = args[0];\n if (er instanceof Error) {\n // Note: The comments on the `throw` lines are intentional, they show\n // up in Node's output if this results in an unhandled exception.\n throw er; // Unhandled 'error' event\n }\n // At least give some kind of context to the user\n var err = new Error('Unhandled error.' + (er ? ' (' + er.message + ')' : ''));\n err.context = er;\n throw err; // Unhandled 'error' event\n }\n\n var handler = events[type];\n\n if (handler === undefined)\n return false;\n\n if (typeof handler === 'function') {\n ReflectApply(handler, this, args);\n } else {\n var len = handler.length;\n var listeners = arrayClone(handler, len);\n for (var i = 0; i < len; ++i)\n ReflectApply(listeners[i], this, args);\n }\n\n return true;\n};\n\nfunction _addListener(target, type, listener, prepend) {\n var m;\n var events;\n var existing;\n\n checkListener(listener);\n\n events = target._events;\n if (events === undefined) {\n events = target._events = Object.create(null);\n target._eventsCount = 0;\n } else {\n // To avoid recursion in the case that type === \"newListener\"! Before\n // adding it to the listeners, first emit \"newListener\".\n if (events.newListener !== undefined) {\n target.emit('newListener', type,\n listener.listener ? listener.listener : listener);\n\n // Re-assign `events` because a newListener handler could have caused the\n // this._events to be assigned to a new object\n events = target._events;\n }\n existing = events[type];\n }\n\n if (existing === undefined) {\n // Optimize the case of one listener. Don't need the extra array object.\n existing = events[type] = listener;\n ++target._eventsCount;\n } else {\n if (typeof existing === 'function') {\n // Adding the second element, need to change to array.\n existing = events[type] =\n prepend ? [listener, existing] : [existing, listener];\n // If we've already got an array, just append.\n } else if (prepend) {\n existing.unshift(listener);\n } else {\n existing.push(listener);\n }\n\n // Check for listener leak\n m = _getMaxListeners(target);\n if (m > 0 && existing.length > m && !existing.warned) {\n existing.warned = true;\n // No error code for this since it is a Warning\n // eslint-disable-next-line no-restricted-syntax\n var w = new Error('Possible EventEmitter memory leak detected. ' +\n existing.length + ' ' + String(type) + ' listeners ' +\n 'added. Use emitter.setMaxListeners() to ' +\n 'increase limit');\n w.name = 'MaxListenersExceededWarning';\n w.emitter = target;\n w.type = type;\n w.count = existing.length;\n ProcessEmitWarning(w);\n }\n }\n\n return target;\n}\n\nEventEmitter.prototype.addListener = function addListener(type, listener) {\n return _addListener(this, type, listener, false);\n};\n\nEventEmitter.prototype.on = EventEmitter.prototype.addListener;\n\nEventEmitter.prototype.prependListener =\n function prependListener(type, listener) {\n return _addListener(this, type, listener, true);\n };\n\nfunction onceWrapper() {\n if (!this.fired) {\n this.target.removeListener(this.type, this.wrapFn);\n this.fired = true;\n if (arguments.length === 0)\n return this.listener.call(this.target);\n return this.listener.apply(this.target, arguments);\n }\n}\n\nfunction _onceWrap(target, type, listener) {\n var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener };\n var wrapped = onceWrapper.bind(state);\n wrapped.listener = listener;\n state.wrapFn = wrapped;\n return wrapped;\n}\n\nEventEmitter.prototype.once = function once(type, listener) {\n checkListener(listener);\n this.on(type, _onceWrap(this, type, listener));\n return this;\n};\n\nEventEmitter.prototype.prependOnceListener =\n function prependOnceListener(type, listener) {\n checkListener(listener);\n this.prependListener(type, _onceWrap(this, type, listener));\n return this;\n };\n\n// Emits a 'removeListener' event if and only if the listener was removed.\nEventEmitter.prototype.removeListener =\n function removeListener(type, listener) {\n var list, events, position, i, originalListener;\n\n checkListener(listener);\n\n events = this._events;\n if (events === undefined)\n return this;\n\n list = events[type];\n if (list === undefined)\n return this;\n\n if (list === listener || list.listener === listener) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else {\n delete events[type];\n if (events.removeListener)\n this.emit('removeListener', type, list.listener || listener);\n }\n } else if (typeof list !== 'function') {\n position = -1;\n\n for (i = list.length - 1; i >= 0; i--) {\n if (list[i] === listener || list[i].listener === listener) {\n originalListener = list[i].listener;\n position = i;\n break;\n }\n }\n\n if (position < 0)\n return this;\n\n if (position === 0)\n list.shift();\n else {\n spliceOne(list, position);\n }\n\n if (list.length === 1)\n events[type] = list[0];\n\n if (events.removeListener !== undefined)\n this.emit('removeListener', type, originalListener || listener);\n }\n\n return this;\n };\n\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\n\nEventEmitter.prototype.removeAllListeners =\n function removeAllListeners(type) {\n var listeners, events, i;\n\n events = this._events;\n if (events === undefined)\n return this;\n\n // not listening for removeListener, no need to emit\n if (events.removeListener === undefined) {\n if (arguments.length === 0) {\n this._events = Object.create(null);\n this._eventsCount = 0;\n } else if (events[type] !== undefined) {\n if (--this._eventsCount === 0)\n this._events = Object.create(null);\n else\n delete events[type];\n }\n return this;\n }\n\n // emit removeListener for all listeners on all events\n if (arguments.length === 0) {\n var keys = Object.keys(events);\n var key;\n for (i = 0; i < keys.length; ++i) {\n key = keys[i];\n if (key === 'removeListener') continue;\n this.removeAllListeners(key);\n }\n this.removeAllListeners('removeListener');\n this._events = Object.create(null);\n this._eventsCount = 0;\n return this;\n }\n\n listeners = events[type];\n\n if (typeof listeners === 'function') {\n this.removeListener(type, listeners);\n } else if (listeners !== undefined) {\n // LIFO order\n for (i = listeners.length - 1; i >= 0; i--) {\n this.removeListener(type, listeners[i]);\n }\n }\n\n return this;\n };\n\nfunction _listeners(target, type, unwrap) {\n var events = target._events;\n\n if (events === undefined)\n return [];\n\n var evlistener = events[type];\n if (evlistener === undefined)\n return [];\n\n if (typeof evlistener === 'function')\n return unwrap ? [evlistener.listener || evlistener] : [evlistener];\n\n return unwrap ?\n unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);\n}\n\nEventEmitter.prototype.listeners = function listeners(type) {\n return _listeners(this, type, true);\n};\n\nEventEmitter.prototype.rawListeners = function rawListeners(type) {\n return _listeners(this, type, false);\n};\n\nEventEmitter.listenerCount = function(emitter, type) {\n if (typeof emitter.listenerCount === 'function') {\n return emitter.listenerCount(type);\n } else {\n return listenerCount.call(emitter, type);\n }\n};\n\nEventEmitter.prototype.listenerCount = listenerCount;\nfunction listenerCount(type) {\n var events = this._events;\n\n if (events !== undefined) {\n var evlistener = events[type];\n\n if (typeof evlistener === 'function') {\n return 1;\n } else if (evlistener !== undefined) {\n return evlistener.length;\n }\n }\n\n return 0;\n}\n\nEventEmitter.prototype.eventNames = function eventNames() {\n return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : [];\n};\n\nfunction arrayClone(arr, n) {\n var copy = new Array(n);\n for (var i = 0; i < n; ++i)\n copy[i] = arr[i];\n return copy;\n}\n\nfunction spliceOne(list, index) {\n for (; index + 1 < list.length; index++)\n list[index] = list[index + 1];\n list.pop();\n}\n\nfunction unwrapListeners(arr) {\n var ret = new Array(arr.length);\n for (var i = 0; i < ret.length; ++i) {\n ret[i] = arr[i].listener || arr[i];\n }\n return ret;\n}\n\nfunction once(emitter, name) {\n return new Promise(function (resolve, reject) {\n function errorListener(err) {\n emitter.removeListener(name, resolver);\n reject(err);\n }\n\n function resolver() {\n if (typeof emitter.removeListener === 'function') {\n emitter.removeListener('error', errorListener);\n }\n resolve([].slice.call(arguments));\n };\n\n eventTargetAgnosticAddListener(emitter, name, resolver, { once: true });\n if (name !== 'error') {\n addErrorHandlerIfEventEmitter(emitter, errorListener, { once: true });\n }\n });\n}\n\nfunction addErrorHandlerIfEventEmitter(emitter, handler, flags) {\n if (typeof emitter.on === 'function') {\n eventTargetAgnosticAddListener(emitter, 'error', handler, flags);\n }\n}\n\nfunction eventTargetAgnosticAddListener(emitter, name, listener, flags) {\n if (typeof emitter.on === 'function') {\n if (flags.once) {\n emitter.once(name, listener);\n } else {\n emitter.on(name, listener);\n }\n } else if (typeof emitter.addEventListener === 'function') {\n // EventTarget does not have `error` event semantics like Node\n // EventEmitters, we do not listen for `error` events here.\n emitter.addEventListener(name, function wrapListener(arg) {\n // IE does not have builtin `{ once: true }` support so we\n // have to do it manually.\n if (flags.once) {\n emitter.removeEventListener(name, wrapListener);\n }\n listener(arg);\n });\n } else {\n throw new TypeError('The \"emitter\" argument must be of type EventEmitter. Received type ' + typeof emitter);\n }\n}\n","'use strict';\n\nmodule.exports = function (data, opts) {\n if (!opts) opts = {};\n if (typeof opts === 'function') opts = { cmp: opts };\n var cycles = (typeof opts.cycles === 'boolean') ? opts.cycles : false;\n\n var cmp = opts.cmp && (function (f) {\n return function (node) {\n return function (a, b) {\n var aobj = { key: a, value: node[a] };\n var bobj = { key: b, value: node[b] };\n return f(aobj, bobj);\n };\n };\n })(opts.cmp);\n\n var seen = [];\n return (function stringify (node) {\n if (node && node.toJSON && typeof node.toJSON === 'function') {\n node = node.toJSON();\n }\n\n if (node === undefined) return;\n if (typeof node == 'number') return isFinite(node) ? '' + node : 'null';\n if (typeof node !== 'object') return JSON.stringify(node);\n\n var i, out;\n if (Array.isArray(node)) {\n out = '[';\n for (i = 0; i < node.length; i++) {\n if (i) out += ',';\n out += stringify(node[i]) || 'null';\n }\n return out + ']';\n }\n\n if (node === null) return 'null';\n\n if (seen.indexOf(node) !== -1) {\n if (cycles) return JSON.stringify('__cycle__');\n throw new TypeError('Converting circular structure to JSON');\n }\n\n var seenIndex = seen.push(node) - 1;\n var keys = Object.keys(node).sort(cmp && cmp(node));\n out = '';\n for (i = 0; i < keys.length; i++) {\n var key = keys[i];\n var value = stringify(node[key]);\n\n if (!value) continue;\n if (out) out += ',';\n out += JSON.stringify(key) + ':' + value;\n }\n seen.splice(seenIndex, 1);\n return '{' + out + '}';\n })(data);\n};\n","'use strict'\nvar Buffer = require('safe-buffer').Buffer\nvar Transform = require('readable-stream').Transform\nvar inherits = require('inherits')\n\nfunction throwIfNotStringOrBuffer (val, prefix) {\n if (!Buffer.isBuffer(val) && typeof val !== 'string') {\n throw new TypeError(prefix + ' must be a string or a buffer')\n }\n}\n\nfunction HashBase (blockSize) {\n Transform.call(this)\n\n this._block = Buffer.allocUnsafe(blockSize)\n this._blockSize = blockSize\n this._blockOffset = 0\n this._length = [0, 0, 0, 0]\n\n this._finalized = false\n}\n\ninherits(HashBase, Transform)\n\nHashBase.prototype._transform = function (chunk, encoding, callback) {\n var error = null\n try {\n this.update(chunk, encoding)\n } catch (err) {\n error = err\n }\n\n callback(error)\n}\n\nHashBase.prototype._flush = function (callback) {\n var error = null\n try {\n this.push(this.digest())\n } catch (err) {\n error = err\n }\n\n callback(error)\n}\n\nHashBase.prototype.update = function (data, encoding) {\n throwIfNotStringOrBuffer(data, 'Data')\n if (this._finalized) throw new Error('Digest already called')\n if (!Buffer.isBuffer(data)) data = Buffer.from(data, encoding)\n\n // consume data\n var block = this._block\n var offset = 0\n while (this._blockOffset + data.length - offset >= this._blockSize) {\n for (var i = this._blockOffset; i < this._blockSize;) block[i++] = data[offset++]\n this._update()\n this._blockOffset = 0\n }\n while (offset < data.length) block[this._blockOffset++] = data[offset++]\n\n // update length\n for (var j = 0, carry = data.length * 8; carry > 0; ++j) {\n this._length[j] += carry\n carry = (this._length[j] / 0x0100000000) | 0\n if (carry > 0) this._length[j] -= 0x0100000000 * carry\n }\n\n return this\n}\n\nHashBase.prototype._update = function () {\n throw new Error('_update is not implemented')\n}\n\nHashBase.prototype.digest = function (encoding) {\n if (this._finalized) throw new Error('Digest already called')\n this._finalized = true\n\n var digest = this._digest()\n if (encoding !== undefined) digest = digest.toString(encoding)\n\n // reset state\n this._block.fill(0)\n this._blockOffset = 0\n for (var i = 0; i < 4; ++i) this._length[i] = 0\n\n return digest\n}\n\nHashBase.prototype._digest = function () {\n throw new Error('_digest is not implemented')\n}\n\nmodule.exports = HashBase\n","var hash = exports;\n\nhash.utils = require('./hash/utils');\nhash.common = require('./hash/common');\nhash.sha = require('./hash/sha');\nhash.ripemd = require('./hash/ripemd');\nhash.hmac = require('./hash/hmac');\n\n// Proxy hash functions to the main object\nhash.sha1 = hash.sha.sha1;\nhash.sha256 = hash.sha.sha256;\nhash.sha224 = hash.sha.sha224;\nhash.sha384 = hash.sha.sha384;\nhash.sha512 = hash.sha.sha512;\nhash.ripemd160 = hash.ripemd.ripemd160;\n","'use strict';\n\nvar utils = require('./utils');\nvar assert = require('minimalistic-assert');\n\nfunction BlockHash() {\n this.pending = null;\n this.pendingTotal = 0;\n this.blockSize = this.constructor.blockSize;\n this.outSize = this.constructor.outSize;\n this.hmacStrength = this.constructor.hmacStrength;\n this.padLength = this.constructor.padLength / 8;\n this.endian = 'big';\n\n this._delta8 = this.blockSize / 8;\n this._delta32 = this.blockSize / 32;\n}\nexports.BlockHash = BlockHash;\n\nBlockHash.prototype.update = function update(msg, enc) {\n // Convert message to array, pad it, and join into 32bit blocks\n msg = utils.toArray(msg, enc);\n if (!this.pending)\n this.pending = msg;\n else\n this.pending = this.pending.concat(msg);\n this.pendingTotal += msg.length;\n\n // Enough data, try updating\n if (this.pending.length >= this._delta8) {\n msg = this.pending;\n\n // Process pending data in blocks\n var r = msg.length % this._delta8;\n this.pending = msg.slice(msg.length - r, msg.length);\n if (this.pending.length === 0)\n this.pending = null;\n\n msg = utils.join32(msg, 0, msg.length - r, this.endian);\n for (var i = 0; i < msg.length; i += this._delta32)\n this._update(msg, i, i + this._delta32);\n }\n\n return this;\n};\n\nBlockHash.prototype.digest = function digest(enc) {\n this.update(this._pad());\n assert(this.pending === null);\n\n return this._digest(enc);\n};\n\nBlockHash.prototype._pad = function pad() {\n var len = this.pendingTotal;\n var bytes = this._delta8;\n var k = bytes - ((len + this.padLength) % bytes);\n var res = new Array(k + this.padLength);\n res[0] = 0x80;\n for (var i = 1; i < k; i++)\n res[i] = 0;\n\n // Append length\n len <<= 3;\n if (this.endian === 'big') {\n for (var t = 8; t < this.padLength; t++)\n res[i++] = 0;\n\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = (len >>> 24) & 0xff;\n res[i++] = (len >>> 16) & 0xff;\n res[i++] = (len >>> 8) & 0xff;\n res[i++] = len & 0xff;\n } else {\n res[i++] = len & 0xff;\n res[i++] = (len >>> 8) & 0xff;\n res[i++] = (len >>> 16) & 0xff;\n res[i++] = (len >>> 24) & 0xff;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n res[i++] = 0;\n\n for (t = 8; t < this.padLength; t++)\n res[i++] = 0;\n }\n\n return res;\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar assert = require('minimalistic-assert');\n\nfunction Hmac(hash, key, enc) {\n if (!(this instanceof Hmac))\n return new Hmac(hash, key, enc);\n this.Hash = hash;\n this.blockSize = hash.blockSize / 8;\n this.outSize = hash.outSize / 8;\n this.inner = null;\n this.outer = null;\n\n this._init(utils.toArray(key, enc));\n}\nmodule.exports = Hmac;\n\nHmac.prototype._init = function init(key) {\n // Shorten key, if needed\n if (key.length > this.blockSize)\n key = new this.Hash().update(key).digest();\n assert(key.length <= this.blockSize);\n\n // Add padding to key\n for (var i = key.length; i < this.blockSize; i++)\n key.push(0);\n\n for (i = 0; i < key.length; i++)\n key[i] ^= 0x36;\n this.inner = new this.Hash().update(key);\n\n // 0x36 ^ 0x5c = 0x6a\n for (i = 0; i < key.length; i++)\n key[i] ^= 0x6a;\n this.outer = new this.Hash().update(key);\n};\n\nHmac.prototype.update = function update(msg, enc) {\n this.inner.update(msg, enc);\n return this;\n};\n\nHmac.prototype.digest = function digest(enc) {\n this.outer.update(this.inner.digest());\n return this.outer.digest(enc);\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar common = require('./common');\n\nvar rotl32 = utils.rotl32;\nvar sum32 = utils.sum32;\nvar sum32_3 = utils.sum32_3;\nvar sum32_4 = utils.sum32_4;\nvar BlockHash = common.BlockHash;\n\nfunction RIPEMD160() {\n if (!(this instanceof RIPEMD160))\n return new RIPEMD160();\n\n BlockHash.call(this);\n\n this.h = [ 0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0 ];\n this.endian = 'little';\n}\nutils.inherits(RIPEMD160, BlockHash);\nexports.ripemd160 = RIPEMD160;\n\nRIPEMD160.blockSize = 512;\nRIPEMD160.outSize = 160;\nRIPEMD160.hmacStrength = 192;\nRIPEMD160.padLength = 64;\n\nRIPEMD160.prototype._update = function update(msg, start) {\n var A = this.h[0];\n var B = this.h[1];\n var C = this.h[2];\n var D = this.h[3];\n var E = this.h[4];\n var Ah = A;\n var Bh = B;\n var Ch = C;\n var Dh = D;\n var Eh = E;\n for (var j = 0; j < 80; j++) {\n var T = sum32(\n rotl32(\n sum32_4(A, f(j, B, C, D), msg[r[j] + start], K(j)),\n s[j]),\n E);\n A = E;\n E = D;\n D = rotl32(C, 10);\n C = B;\n B = T;\n T = sum32(\n rotl32(\n sum32_4(Ah, f(79 - j, Bh, Ch, Dh), msg[rh[j] + start], Kh(j)),\n sh[j]),\n Eh);\n Ah = Eh;\n Eh = Dh;\n Dh = rotl32(Ch, 10);\n Ch = Bh;\n Bh = T;\n }\n T = sum32_3(this.h[1], C, Dh);\n this.h[1] = sum32_3(this.h[2], D, Eh);\n this.h[2] = sum32_3(this.h[3], E, Ah);\n this.h[3] = sum32_3(this.h[4], A, Bh);\n this.h[4] = sum32_3(this.h[0], B, Ch);\n this.h[0] = T;\n};\n\nRIPEMD160.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'little');\n else\n return utils.split32(this.h, 'little');\n};\n\nfunction f(j, x, y, z) {\n if (j <= 15)\n return x ^ y ^ z;\n else if (j <= 31)\n return (x & y) | ((~x) & z);\n else if (j <= 47)\n return (x | (~y)) ^ z;\n else if (j <= 63)\n return (x & z) | (y & (~z));\n else\n return x ^ (y | (~z));\n}\n\nfunction K(j) {\n if (j <= 15)\n return 0x00000000;\n else if (j <= 31)\n return 0x5a827999;\n else if (j <= 47)\n return 0x6ed9eba1;\n else if (j <= 63)\n return 0x8f1bbcdc;\n else\n return 0xa953fd4e;\n}\n\nfunction Kh(j) {\n if (j <= 15)\n return 0x50a28be6;\n else if (j <= 31)\n return 0x5c4dd124;\n else if (j <= 47)\n return 0x6d703ef3;\n else if (j <= 63)\n return 0x7a6d76e9;\n else\n return 0x00000000;\n}\n\nvar r = [\n 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,\n 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8,\n 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12,\n 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2,\n 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13\n];\n\nvar rh = [\n 5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12,\n 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2,\n 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13,\n 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14,\n 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11\n];\n\nvar s = [\n 11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8,\n 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12,\n 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5,\n 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12,\n 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6\n];\n\nvar sh = [\n 8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6,\n 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11,\n 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5,\n 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8,\n 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11\n];\n","'use strict';\n\nexports.sha1 = require('./sha/1');\nexports.sha224 = require('./sha/224');\nexports.sha256 = require('./sha/256');\nexports.sha384 = require('./sha/384');\nexports.sha512 = require('./sha/512');\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar shaCommon = require('./common');\n\nvar rotl32 = utils.rotl32;\nvar sum32 = utils.sum32;\nvar sum32_5 = utils.sum32_5;\nvar ft_1 = shaCommon.ft_1;\nvar BlockHash = common.BlockHash;\n\nvar sha1_K = [\n 0x5A827999, 0x6ED9EBA1,\n 0x8F1BBCDC, 0xCA62C1D6\n];\n\nfunction SHA1() {\n if (!(this instanceof SHA1))\n return new SHA1();\n\n BlockHash.call(this);\n this.h = [\n 0x67452301, 0xefcdab89, 0x98badcfe,\n 0x10325476, 0xc3d2e1f0 ];\n this.W = new Array(80);\n}\n\nutils.inherits(SHA1, BlockHash);\nmodule.exports = SHA1;\n\nSHA1.blockSize = 512;\nSHA1.outSize = 160;\nSHA1.hmacStrength = 80;\nSHA1.padLength = 64;\n\nSHA1.prototype._update = function _update(msg, start) {\n var W = this.W;\n\n for (var i = 0; i < 16; i++)\n W[i] = msg[start + i];\n\n for(; i < W.length; i++)\n W[i] = rotl32(W[i - 3] ^ W[i - 8] ^ W[i - 14] ^ W[i - 16], 1);\n\n var a = this.h[0];\n var b = this.h[1];\n var c = this.h[2];\n var d = this.h[3];\n var e = this.h[4];\n\n for (i = 0; i < W.length; i++) {\n var s = ~~(i / 20);\n var t = sum32_5(rotl32(a, 5), ft_1(s, b, c, d), e, W[i], sha1_K[s]);\n e = d;\n d = c;\n c = rotl32(b, 30);\n b = a;\n a = t;\n }\n\n this.h[0] = sum32(this.h[0], a);\n this.h[1] = sum32(this.h[1], b);\n this.h[2] = sum32(this.h[2], c);\n this.h[3] = sum32(this.h[3], d);\n this.h[4] = sum32(this.h[4], e);\n};\n\nSHA1.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar SHA256 = require('./256');\n\nfunction SHA224() {\n if (!(this instanceof SHA224))\n return new SHA224();\n\n SHA256.call(this);\n this.h = [\n 0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939,\n 0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4 ];\n}\nutils.inherits(SHA224, SHA256);\nmodule.exports = SHA224;\n\nSHA224.blockSize = 512;\nSHA224.outSize = 224;\nSHA224.hmacStrength = 192;\nSHA224.padLength = 64;\n\nSHA224.prototype._digest = function digest(enc) {\n // Just truncate output\n if (enc === 'hex')\n return utils.toHex32(this.h.slice(0, 7), 'big');\n else\n return utils.split32(this.h.slice(0, 7), 'big');\n};\n\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar shaCommon = require('./common');\nvar assert = require('minimalistic-assert');\n\nvar sum32 = utils.sum32;\nvar sum32_4 = utils.sum32_4;\nvar sum32_5 = utils.sum32_5;\nvar ch32 = shaCommon.ch32;\nvar maj32 = shaCommon.maj32;\nvar s0_256 = shaCommon.s0_256;\nvar s1_256 = shaCommon.s1_256;\nvar g0_256 = shaCommon.g0_256;\nvar g1_256 = shaCommon.g1_256;\n\nvar BlockHash = common.BlockHash;\n\nvar sha256_K = [\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,\n 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,\n 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc,\n 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7,\n 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13,\n 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3,\n 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5,\n 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208,\n 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n];\n\nfunction SHA256() {\n if (!(this instanceof SHA256))\n return new SHA256();\n\n BlockHash.call(this);\n this.h = [\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a,\n 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19\n ];\n this.k = sha256_K;\n this.W = new Array(64);\n}\nutils.inherits(SHA256, BlockHash);\nmodule.exports = SHA256;\n\nSHA256.blockSize = 512;\nSHA256.outSize = 256;\nSHA256.hmacStrength = 192;\nSHA256.padLength = 64;\n\nSHA256.prototype._update = function _update(msg, start) {\n var W = this.W;\n\n for (var i = 0; i < 16; i++)\n W[i] = msg[start + i];\n for (; i < W.length; i++)\n W[i] = sum32_4(g1_256(W[i - 2]), W[i - 7], g0_256(W[i - 15]), W[i - 16]);\n\n var a = this.h[0];\n var b = this.h[1];\n var c = this.h[2];\n var d = this.h[3];\n var e = this.h[4];\n var f = this.h[5];\n var g = this.h[6];\n var h = this.h[7];\n\n assert(this.k.length === W.length);\n for (i = 0; i < W.length; i++) {\n var T1 = sum32_5(h, s1_256(e), ch32(e, f, g), this.k[i], W[i]);\n var T2 = sum32(s0_256(a), maj32(a, b, c));\n h = g;\n g = f;\n f = e;\n e = sum32(d, T1);\n d = c;\n c = b;\n b = a;\n a = sum32(T1, T2);\n }\n\n this.h[0] = sum32(this.h[0], a);\n this.h[1] = sum32(this.h[1], b);\n this.h[2] = sum32(this.h[2], c);\n this.h[3] = sum32(this.h[3], d);\n this.h[4] = sum32(this.h[4], e);\n this.h[5] = sum32(this.h[5], f);\n this.h[6] = sum32(this.h[6], g);\n this.h[7] = sum32(this.h[7], h);\n};\n\nSHA256.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n","'use strict';\n\nvar utils = require('../utils');\n\nvar SHA512 = require('./512');\n\nfunction SHA384() {\n if (!(this instanceof SHA384))\n return new SHA384();\n\n SHA512.call(this);\n this.h = [\n 0xcbbb9d5d, 0xc1059ed8,\n 0x629a292a, 0x367cd507,\n 0x9159015a, 0x3070dd17,\n 0x152fecd8, 0xf70e5939,\n 0x67332667, 0xffc00b31,\n 0x8eb44a87, 0x68581511,\n 0xdb0c2e0d, 0x64f98fa7,\n 0x47b5481d, 0xbefa4fa4 ];\n}\nutils.inherits(SHA384, SHA512);\nmodule.exports = SHA384;\n\nSHA384.blockSize = 1024;\nSHA384.outSize = 384;\nSHA384.hmacStrength = 192;\nSHA384.padLength = 128;\n\nSHA384.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h.slice(0, 12), 'big');\n else\n return utils.split32(this.h.slice(0, 12), 'big');\n};\n","'use strict';\n\nvar utils = require('../utils');\nvar common = require('../common');\nvar assert = require('minimalistic-assert');\n\nvar rotr64_hi = utils.rotr64_hi;\nvar rotr64_lo = utils.rotr64_lo;\nvar shr64_hi = utils.shr64_hi;\nvar shr64_lo = utils.shr64_lo;\nvar sum64 = utils.sum64;\nvar sum64_hi = utils.sum64_hi;\nvar sum64_lo = utils.sum64_lo;\nvar sum64_4_hi = utils.sum64_4_hi;\nvar sum64_4_lo = utils.sum64_4_lo;\nvar sum64_5_hi = utils.sum64_5_hi;\nvar sum64_5_lo = utils.sum64_5_lo;\n\nvar BlockHash = common.BlockHash;\n\nvar sha512_K = [\n 0x428a2f98, 0xd728ae22, 0x71374491, 0x23ef65cd,\n 0xb5c0fbcf, 0xec4d3b2f, 0xe9b5dba5, 0x8189dbbc,\n 0x3956c25b, 0xf348b538, 0x59f111f1, 0xb605d019,\n 0x923f82a4, 0xaf194f9b, 0xab1c5ed5, 0xda6d8118,\n 0xd807aa98, 0xa3030242, 0x12835b01, 0x45706fbe,\n 0x243185be, 0x4ee4b28c, 0x550c7dc3, 0xd5ffb4e2,\n 0x72be5d74, 0xf27b896f, 0x80deb1fe, 0x3b1696b1,\n 0x9bdc06a7, 0x25c71235, 0xc19bf174, 0xcf692694,\n 0xe49b69c1, 0x9ef14ad2, 0xefbe4786, 0x384f25e3,\n 0x0fc19dc6, 0x8b8cd5b5, 0x240ca1cc, 0x77ac9c65,\n 0x2de92c6f, 0x592b0275, 0x4a7484aa, 0x6ea6e483,\n 0x5cb0a9dc, 0xbd41fbd4, 0x76f988da, 0x831153b5,\n 0x983e5152, 0xee66dfab, 0xa831c66d, 0x2db43210,\n 0xb00327c8, 0x98fb213f, 0xbf597fc7, 0xbeef0ee4,\n 0xc6e00bf3, 0x3da88fc2, 0xd5a79147, 0x930aa725,\n 0x06ca6351, 0xe003826f, 0x14292967, 0x0a0e6e70,\n 0x27b70a85, 0x46d22ffc, 0x2e1b2138, 0x5c26c926,\n 0x4d2c6dfc, 0x5ac42aed, 0x53380d13, 0x9d95b3df,\n 0x650a7354, 0x8baf63de, 0x766a0abb, 0x3c77b2a8,\n 0x81c2c92e, 0x47edaee6, 0x92722c85, 0x1482353b,\n 0xa2bfe8a1, 0x4cf10364, 0xa81a664b, 0xbc423001,\n 0xc24b8b70, 0xd0f89791, 0xc76c51a3, 0x0654be30,\n 0xd192e819, 0xd6ef5218, 0xd6990624, 0x5565a910,\n 0xf40e3585, 0x5771202a, 0x106aa070, 0x32bbd1b8,\n 0x19a4c116, 0xb8d2d0c8, 0x1e376c08, 0x5141ab53,\n 0x2748774c, 0xdf8eeb99, 0x34b0bcb5, 0xe19b48a8,\n 0x391c0cb3, 0xc5c95a63, 0x4ed8aa4a, 0xe3418acb,\n 0x5b9cca4f, 0x7763e373, 0x682e6ff3, 0xd6b2b8a3,\n 0x748f82ee, 0x5defb2fc, 0x78a5636f, 0x43172f60,\n 0x84c87814, 0xa1f0ab72, 0x8cc70208, 0x1a6439ec,\n 0x90befffa, 0x23631e28, 0xa4506ceb, 0xde82bde9,\n 0xbef9a3f7, 0xb2c67915, 0xc67178f2, 0xe372532b,\n 0xca273ece, 0xea26619c, 0xd186b8c7, 0x21c0c207,\n 0xeada7dd6, 0xcde0eb1e, 0xf57d4f7f, 0xee6ed178,\n 0x06f067aa, 0x72176fba, 0x0a637dc5, 0xa2c898a6,\n 0x113f9804, 0xbef90dae, 0x1b710b35, 0x131c471b,\n 0x28db77f5, 0x23047d84, 0x32caab7b, 0x40c72493,\n 0x3c9ebe0a, 0x15c9bebc, 0x431d67c4, 0x9c100d4c,\n 0x4cc5d4be, 0xcb3e42b6, 0x597f299c, 0xfc657e2a,\n 0x5fcb6fab, 0x3ad6faec, 0x6c44198c, 0x4a475817\n];\n\nfunction SHA512() {\n if (!(this instanceof SHA512))\n return new SHA512();\n\n BlockHash.call(this);\n this.h = [\n 0x6a09e667, 0xf3bcc908,\n 0xbb67ae85, 0x84caa73b,\n 0x3c6ef372, 0xfe94f82b,\n 0xa54ff53a, 0x5f1d36f1,\n 0x510e527f, 0xade682d1,\n 0x9b05688c, 0x2b3e6c1f,\n 0x1f83d9ab, 0xfb41bd6b,\n 0x5be0cd19, 0x137e2179 ];\n this.k = sha512_K;\n this.W = new Array(160);\n}\nutils.inherits(SHA512, BlockHash);\nmodule.exports = SHA512;\n\nSHA512.blockSize = 1024;\nSHA512.outSize = 512;\nSHA512.hmacStrength = 192;\nSHA512.padLength = 128;\n\nSHA512.prototype._prepareBlock = function _prepareBlock(msg, start) {\n var W = this.W;\n\n // 32 x 32bit words\n for (var i = 0; i < 32; i++)\n W[i] = msg[start + i];\n for (; i < W.length; i += 2) {\n var c0_hi = g1_512_hi(W[i - 4], W[i - 3]); // i - 2\n var c0_lo = g1_512_lo(W[i - 4], W[i - 3]);\n var c1_hi = W[i - 14]; // i - 7\n var c1_lo = W[i - 13];\n var c2_hi = g0_512_hi(W[i - 30], W[i - 29]); // i - 15\n var c2_lo = g0_512_lo(W[i - 30], W[i - 29]);\n var c3_hi = W[i - 32]; // i - 16\n var c3_lo = W[i - 31];\n\n W[i] = sum64_4_hi(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo);\n W[i + 1] = sum64_4_lo(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo);\n }\n};\n\nSHA512.prototype._update = function _update(msg, start) {\n this._prepareBlock(msg, start);\n\n var W = this.W;\n\n var ah = this.h[0];\n var al = this.h[1];\n var bh = this.h[2];\n var bl = this.h[3];\n var ch = this.h[4];\n var cl = this.h[5];\n var dh = this.h[6];\n var dl = this.h[7];\n var eh = this.h[8];\n var el = this.h[9];\n var fh = this.h[10];\n var fl = this.h[11];\n var gh = this.h[12];\n var gl = this.h[13];\n var hh = this.h[14];\n var hl = this.h[15];\n\n assert(this.k.length === W.length);\n for (var i = 0; i < W.length; i += 2) {\n var c0_hi = hh;\n var c0_lo = hl;\n var c1_hi = s1_512_hi(eh, el);\n var c1_lo = s1_512_lo(eh, el);\n var c2_hi = ch64_hi(eh, el, fh, fl, gh, gl);\n var c2_lo = ch64_lo(eh, el, fh, fl, gh, gl);\n var c3_hi = this.k[i];\n var c3_lo = this.k[i + 1];\n var c4_hi = W[i];\n var c4_lo = W[i + 1];\n\n var T1_hi = sum64_5_hi(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo,\n c4_hi, c4_lo);\n var T1_lo = sum64_5_lo(\n c0_hi, c0_lo,\n c1_hi, c1_lo,\n c2_hi, c2_lo,\n c3_hi, c3_lo,\n c4_hi, c4_lo);\n\n c0_hi = s0_512_hi(ah, al);\n c0_lo = s0_512_lo(ah, al);\n c1_hi = maj64_hi(ah, al, bh, bl, ch, cl);\n c1_lo = maj64_lo(ah, al, bh, bl, ch, cl);\n\n var T2_hi = sum64_hi(c0_hi, c0_lo, c1_hi, c1_lo);\n var T2_lo = sum64_lo(c0_hi, c0_lo, c1_hi, c1_lo);\n\n hh = gh;\n hl = gl;\n\n gh = fh;\n gl = fl;\n\n fh = eh;\n fl = el;\n\n eh = sum64_hi(dh, dl, T1_hi, T1_lo);\n el = sum64_lo(dl, dl, T1_hi, T1_lo);\n\n dh = ch;\n dl = cl;\n\n ch = bh;\n cl = bl;\n\n bh = ah;\n bl = al;\n\n ah = sum64_hi(T1_hi, T1_lo, T2_hi, T2_lo);\n al = sum64_lo(T1_hi, T1_lo, T2_hi, T2_lo);\n }\n\n sum64(this.h, 0, ah, al);\n sum64(this.h, 2, bh, bl);\n sum64(this.h, 4, ch, cl);\n sum64(this.h, 6, dh, dl);\n sum64(this.h, 8, eh, el);\n sum64(this.h, 10, fh, fl);\n sum64(this.h, 12, gh, gl);\n sum64(this.h, 14, hh, hl);\n};\n\nSHA512.prototype._digest = function digest(enc) {\n if (enc === 'hex')\n return utils.toHex32(this.h, 'big');\n else\n return utils.split32(this.h, 'big');\n};\n\nfunction ch64_hi(xh, xl, yh, yl, zh) {\n var r = (xh & yh) ^ ((~xh) & zh);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction ch64_lo(xh, xl, yh, yl, zh, zl) {\n var r = (xl & yl) ^ ((~xl) & zl);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction maj64_hi(xh, xl, yh, yl, zh) {\n var r = (xh & yh) ^ (xh & zh) ^ (yh & zh);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction maj64_lo(xh, xl, yh, yl, zh, zl) {\n var r = (xl & yl) ^ (xl & zl) ^ (yl & zl);\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s0_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 28);\n var c1_hi = rotr64_hi(xl, xh, 2); // 34\n var c2_hi = rotr64_hi(xl, xh, 7); // 39\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s0_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 28);\n var c1_lo = rotr64_lo(xl, xh, 2); // 34\n var c2_lo = rotr64_lo(xl, xh, 7); // 39\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s1_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 14);\n var c1_hi = rotr64_hi(xh, xl, 18);\n var c2_hi = rotr64_hi(xl, xh, 9); // 41\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction s1_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 14);\n var c1_lo = rotr64_lo(xh, xl, 18);\n var c2_lo = rotr64_lo(xl, xh, 9); // 41\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g0_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 1);\n var c1_hi = rotr64_hi(xh, xl, 8);\n var c2_hi = shr64_hi(xh, xl, 7);\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g0_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 1);\n var c1_lo = rotr64_lo(xh, xl, 8);\n var c2_lo = shr64_lo(xh, xl, 7);\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g1_512_hi(xh, xl) {\n var c0_hi = rotr64_hi(xh, xl, 19);\n var c1_hi = rotr64_hi(xl, xh, 29); // 61\n var c2_hi = shr64_hi(xh, xl, 6);\n\n var r = c0_hi ^ c1_hi ^ c2_hi;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n\nfunction g1_512_lo(xh, xl) {\n var c0_lo = rotr64_lo(xh, xl, 19);\n var c1_lo = rotr64_lo(xl, xh, 29); // 61\n var c2_lo = shr64_lo(xh, xl, 6);\n\n var r = c0_lo ^ c1_lo ^ c2_lo;\n if (r < 0)\n r += 0x100000000;\n return r;\n}\n","'use strict';\n\nvar utils = require('../utils');\nvar rotr32 = utils.rotr32;\n\nfunction ft_1(s, x, y, z) {\n if (s === 0)\n return ch32(x, y, z);\n if (s === 1 || s === 3)\n return p32(x, y, z);\n if (s === 2)\n return maj32(x, y, z);\n}\nexports.ft_1 = ft_1;\n\nfunction ch32(x, y, z) {\n return (x & y) ^ ((~x) & z);\n}\nexports.ch32 = ch32;\n\nfunction maj32(x, y, z) {\n return (x & y) ^ (x & z) ^ (y & z);\n}\nexports.maj32 = maj32;\n\nfunction p32(x, y, z) {\n return x ^ y ^ z;\n}\nexports.p32 = p32;\n\nfunction s0_256(x) {\n return rotr32(x, 2) ^ rotr32(x, 13) ^ rotr32(x, 22);\n}\nexports.s0_256 = s0_256;\n\nfunction s1_256(x) {\n return rotr32(x, 6) ^ rotr32(x, 11) ^ rotr32(x, 25);\n}\nexports.s1_256 = s1_256;\n\nfunction g0_256(x) {\n return rotr32(x, 7) ^ rotr32(x, 18) ^ (x >>> 3);\n}\nexports.g0_256 = g0_256;\n\nfunction g1_256(x) {\n return rotr32(x, 17) ^ rotr32(x, 19) ^ (x >>> 10);\n}\nexports.g1_256 = g1_256;\n","'use strict';\n\nvar assert = require('minimalistic-assert');\nvar inherits = require('inherits');\n\nexports.inherits = inherits;\n\nfunction isSurrogatePair(msg, i) {\n if ((msg.charCodeAt(i) & 0xFC00) !== 0xD800) {\n return false;\n }\n if (i < 0 || i + 1 >= msg.length) {\n return false;\n }\n return (msg.charCodeAt(i + 1) & 0xFC00) === 0xDC00;\n}\n\nfunction toArray(msg, enc) {\n if (Array.isArray(msg))\n return msg.slice();\n if (!msg)\n return [];\n var res = [];\n if (typeof msg === 'string') {\n if (!enc) {\n // Inspired by stringToUtf8ByteArray() in closure-library by Google\n // https://github.com/google/closure-library/blob/8598d87242af59aac233270742c8984e2b2bdbe0/closure/goog/crypt/crypt.js#L117-L143\n // Apache License 2.0\n // https://github.com/google/closure-library/blob/master/LICENSE\n var p = 0;\n for (var i = 0; i < msg.length; i++) {\n var c = msg.charCodeAt(i);\n if (c < 128) {\n res[p++] = c;\n } else if (c < 2048) {\n res[p++] = (c >> 6) | 192;\n res[p++] = (c & 63) | 128;\n } else if (isSurrogatePair(msg, i)) {\n c = 0x10000 + ((c & 0x03FF) << 10) + (msg.charCodeAt(++i) & 0x03FF);\n res[p++] = (c >> 18) | 240;\n res[p++] = ((c >> 12) & 63) | 128;\n res[p++] = ((c >> 6) & 63) | 128;\n res[p++] = (c & 63) | 128;\n } else {\n res[p++] = (c >> 12) | 224;\n res[p++] = ((c >> 6) & 63) | 128;\n res[p++] = (c & 63) | 128;\n }\n }\n } else if (enc === 'hex') {\n msg = msg.replace(/[^a-z0-9]+/ig, '');\n if (msg.length % 2 !== 0)\n msg = '0' + msg;\n for (i = 0; i < msg.length; i += 2)\n res.push(parseInt(msg[i] + msg[i + 1], 16));\n }\n } else {\n for (i = 0; i < msg.length; i++)\n res[i] = msg[i] | 0;\n }\n return res;\n}\nexports.toArray = toArray;\n\nfunction toHex(msg) {\n var res = '';\n for (var i = 0; i < msg.length; i++)\n res += zero2(msg[i].toString(16));\n return res;\n}\nexports.toHex = toHex;\n\nfunction htonl(w) {\n var res = (w >>> 24) |\n ((w >>> 8) & 0xff00) |\n ((w << 8) & 0xff0000) |\n ((w & 0xff) << 24);\n return res >>> 0;\n}\nexports.htonl = htonl;\n\nfunction toHex32(msg, endian) {\n var res = '';\n for (var i = 0; i < msg.length; i++) {\n var w = msg[i];\n if (endian === 'little')\n w = htonl(w);\n res += zero8(w.toString(16));\n }\n return res;\n}\nexports.toHex32 = toHex32;\n\nfunction zero2(word) {\n if (word.length === 1)\n return '0' + word;\n else\n return word;\n}\nexports.zero2 = zero2;\n\nfunction zero8(word) {\n if (word.length === 7)\n return '0' + word;\n else if (word.length === 6)\n return '00' + word;\n else if (word.length === 5)\n return '000' + word;\n else if (word.length === 4)\n return '0000' + word;\n else if (word.length === 3)\n return '00000' + word;\n else if (word.length === 2)\n return '000000' + word;\n else if (word.length === 1)\n return '0000000' + word;\n else\n return word;\n}\nexports.zero8 = zero8;\n\nfunction join32(msg, start, end, endian) {\n var len = end - start;\n assert(len % 4 === 0);\n var res = new Array(len / 4);\n for (var i = 0, k = start; i < res.length; i++, k += 4) {\n var w;\n if (endian === 'big')\n w = (msg[k] << 24) | (msg[k + 1] << 16) | (msg[k + 2] << 8) | msg[k + 3];\n else\n w = (msg[k + 3] << 24) | (msg[k + 2] << 16) | (msg[k + 1] << 8) | msg[k];\n res[i] = w >>> 0;\n }\n return res;\n}\nexports.join32 = join32;\n\nfunction split32(msg, endian) {\n var res = new Array(msg.length * 4);\n for (var i = 0, k = 0; i < msg.length; i++, k += 4) {\n var m = msg[i];\n if (endian === 'big') {\n res[k] = m >>> 24;\n res[k + 1] = (m >>> 16) & 0xff;\n res[k + 2] = (m >>> 8) & 0xff;\n res[k + 3] = m & 0xff;\n } else {\n res[k + 3] = m >>> 24;\n res[k + 2] = (m >>> 16) & 0xff;\n res[k + 1] = (m >>> 8) & 0xff;\n res[k] = m & 0xff;\n }\n }\n return res;\n}\nexports.split32 = split32;\n\nfunction rotr32(w, b) {\n return (w >>> b) | (w << (32 - b));\n}\nexports.rotr32 = rotr32;\n\nfunction rotl32(w, b) {\n return (w << b) | (w >>> (32 - b));\n}\nexports.rotl32 = rotl32;\n\nfunction sum32(a, b) {\n return (a + b) >>> 0;\n}\nexports.sum32 = sum32;\n\nfunction sum32_3(a, b, c) {\n return (a + b + c) >>> 0;\n}\nexports.sum32_3 = sum32_3;\n\nfunction sum32_4(a, b, c, d) {\n return (a + b + c + d) >>> 0;\n}\nexports.sum32_4 = sum32_4;\n\nfunction sum32_5(a, b, c, d, e) {\n return (a + b + c + d + e) >>> 0;\n}\nexports.sum32_5 = sum32_5;\n\nfunction sum64(buf, pos, ah, al) {\n var bh = buf[pos];\n var bl = buf[pos + 1];\n\n var lo = (al + bl) >>> 0;\n var hi = (lo < al ? 1 : 0) + ah + bh;\n buf[pos] = hi >>> 0;\n buf[pos + 1] = lo;\n}\nexports.sum64 = sum64;\n\nfunction sum64_hi(ah, al, bh, bl) {\n var lo = (al + bl) >>> 0;\n var hi = (lo < al ? 1 : 0) + ah + bh;\n return hi >>> 0;\n}\nexports.sum64_hi = sum64_hi;\n\nfunction sum64_lo(ah, al, bh, bl) {\n var lo = al + bl;\n return lo >>> 0;\n}\nexports.sum64_lo = sum64_lo;\n\nfunction sum64_4_hi(ah, al, bh, bl, ch, cl, dh, dl) {\n var carry = 0;\n var lo = al;\n lo = (lo + bl) >>> 0;\n carry += lo < al ? 1 : 0;\n lo = (lo + cl) >>> 0;\n carry += lo < cl ? 1 : 0;\n lo = (lo + dl) >>> 0;\n carry += lo < dl ? 1 : 0;\n\n var hi = ah + bh + ch + dh + carry;\n return hi >>> 0;\n}\nexports.sum64_4_hi = sum64_4_hi;\n\nfunction sum64_4_lo(ah, al, bh, bl, ch, cl, dh, dl) {\n var lo = al + bl + cl + dl;\n return lo >>> 0;\n}\nexports.sum64_4_lo = sum64_4_lo;\n\nfunction sum64_5_hi(ah, al, bh, bl, ch, cl, dh, dl, eh, el) {\n var carry = 0;\n var lo = al;\n lo = (lo + bl) >>> 0;\n carry += lo < al ? 1 : 0;\n lo = (lo + cl) >>> 0;\n carry += lo < cl ? 1 : 0;\n lo = (lo + dl) >>> 0;\n carry += lo < dl ? 1 : 0;\n lo = (lo + el) >>> 0;\n carry += lo < el ? 1 : 0;\n\n var hi = ah + bh + ch + dh + eh + carry;\n return hi >>> 0;\n}\nexports.sum64_5_hi = sum64_5_hi;\n\nfunction sum64_5_lo(ah, al, bh, bl, ch, cl, dh, dl, eh, el) {\n var lo = al + bl + cl + dl + el;\n\n return lo >>> 0;\n}\nexports.sum64_5_lo = sum64_5_lo;\n\nfunction rotr64_hi(ah, al, num) {\n var r = (al << (32 - num)) | (ah >>> num);\n return r >>> 0;\n}\nexports.rotr64_hi = rotr64_hi;\n\nfunction rotr64_lo(ah, al, num) {\n var r = (ah << (32 - num)) | (al >>> num);\n return r >>> 0;\n}\nexports.rotr64_lo = rotr64_lo;\n\nfunction shr64_hi(ah, al, num) {\n return ah >>> num;\n}\nexports.shr64_hi = shr64_hi;\n\nfunction shr64_lo(ah, al, num) {\n var r = (ah << (32 - num)) | (al >>> num);\n return r >>> 0;\n}\nexports.shr64_lo = shr64_lo;\n","'use strict';\n\nvar hash = require('hash.js');\nvar utils = require('minimalistic-crypto-utils');\nvar assert = require('minimalistic-assert');\n\nfunction HmacDRBG(options) {\n if (!(this instanceof HmacDRBG))\n return new HmacDRBG(options);\n this.hash = options.hash;\n this.predResist = !!options.predResist;\n\n this.outLen = this.hash.outSize;\n this.minEntropy = options.minEntropy || this.hash.hmacStrength;\n\n this._reseed = null;\n this.reseedInterval = null;\n this.K = null;\n this.V = null;\n\n var entropy = utils.toArray(options.entropy, options.entropyEnc || 'hex');\n var nonce = utils.toArray(options.nonce, options.nonceEnc || 'hex');\n var pers = utils.toArray(options.pers, options.persEnc || 'hex');\n assert(entropy.length >= (this.minEntropy / 8),\n 'Not enough entropy. Minimum is: ' + this.minEntropy + ' bits');\n this._init(entropy, nonce, pers);\n}\nmodule.exports = HmacDRBG;\n\nHmacDRBG.prototype._init = function init(entropy, nonce, pers) {\n var seed = entropy.concat(nonce).concat(pers);\n\n this.K = new Array(this.outLen / 8);\n this.V = new Array(this.outLen / 8);\n for (var i = 0; i < this.V.length; i++) {\n this.K[i] = 0x00;\n this.V[i] = 0x01;\n }\n\n this._update(seed);\n this._reseed = 1;\n this.reseedInterval = 0x1000000000000; // 2^48\n};\n\nHmacDRBG.prototype._hmac = function hmac() {\n return new hash.hmac(this.hash, this.K);\n};\n\nHmacDRBG.prototype._update = function update(seed) {\n var kmac = this._hmac()\n .update(this.V)\n .update([ 0x00 ]);\n if (seed)\n kmac = kmac.update(seed);\n this.K = kmac.digest();\n this.V = this._hmac().update(this.V).digest();\n if (!seed)\n return;\n\n this.K = this._hmac()\n .update(this.V)\n .update([ 0x01 ])\n .update(seed)\n .digest();\n this.V = this._hmac().update(this.V).digest();\n};\n\nHmacDRBG.prototype.reseed = function reseed(entropy, entropyEnc, add, addEnc) {\n // Optional entropy enc\n if (typeof entropyEnc !== 'string') {\n addEnc = add;\n add = entropyEnc;\n entropyEnc = null;\n }\n\n entropy = utils.toArray(entropy, entropyEnc);\n add = utils.toArray(add, addEnc);\n\n assert(entropy.length >= (this.minEntropy / 8),\n 'Not enough entropy. Minimum is: ' + this.minEntropy + ' bits');\n\n this._update(entropy.concat(add || []));\n this._reseed = 1;\n};\n\nHmacDRBG.prototype.generate = function generate(len, enc, add, addEnc) {\n if (this._reseed > this.reseedInterval)\n throw new Error('Reseed is required');\n\n // Optional encoding\n if (typeof enc !== 'string') {\n addEnc = add;\n add = enc;\n enc = null;\n }\n\n // Optional additional data\n if (add) {\n add = utils.toArray(add, addEnc || 'hex');\n this._update(add);\n }\n\n var temp = [];\n while (temp.length < len) {\n this.V = this._hmac().update(this.V).digest();\n temp = temp.concat(this.V);\n }\n\n var res = temp.slice(0, len);\n this._update(add);\n this._reseed++;\n return utils.encode(res, enc);\n};\n","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","if (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n })\n }\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n if (superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n }\n}\n","/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n","'use strict';\n\nvar json = typeof JSON !== 'undefined' ? JSON : require('jsonify');\n\nvar isArray = Array.isArray || function (x) {\n\treturn {}.toString.call(x) === '[object Array]';\n};\n\nvar objectKeys = Object.keys || function (obj) {\n\tvar has = Object.prototype.hasOwnProperty || function () { return true; };\n\tvar keys = [];\n\tfor (var key in obj) {\n\t\tif (has.call(obj, key)) { keys.push(key); }\n\t}\n\treturn keys;\n};\n\nmodule.exports = function (obj, opts) {\n\tif (!opts) { opts = {}; }\n\tif (typeof opts === 'function') { opts = { cmp: opts }; }\n\tvar space = opts.space || '';\n\tif (typeof space === 'number') { space = Array(space + 1).join(' '); }\n\tvar cycles = typeof opts.cycles === 'boolean' ? opts.cycles : false;\n\tvar replacer = opts.replacer || function (key, value) { return value; };\n\n\tvar cmp = opts.cmp && (function (f) {\n\t\treturn function (node) {\n\t\t\treturn function (a, b) {\n\t\t\t\tvar aobj = { key: a, value: node[a] };\n\t\t\t\tvar bobj = { key: b, value: node[b] };\n\t\t\t\treturn f(aobj, bobj);\n\t\t\t};\n\t\t};\n\t}(opts.cmp));\n\n\tvar seen = [];\n\treturn (function stringify(parent, key, node, level) {\n\t\tvar indent = space ? '\\n' + new Array(level + 1).join(space) : '';\n\t\tvar colonSeparator = space ? ': ' : ':';\n\n\t\tif (node && node.toJSON && typeof node.toJSON === 'function') {\n\t\t\tnode = node.toJSON();\n\t\t}\n\n\t\tnode = replacer.call(parent, key, node);\n\n\t\tif (node === undefined) {\n\t\t\treturn;\n\t\t}\n\t\tif (typeof node !== 'object' || node === null) {\n\t\t\treturn json.stringify(node);\n\t\t}\n\t\tif (isArray(node)) {\n\t\t\tvar out = [];\n\t\t\tfor (var i = 0; i < node.length; i++) {\n\t\t\t\tvar item = stringify(node, i, node[i], level + 1) || json.stringify(null);\n\t\t\t\tout.push(indent + space + item);\n\t\t\t}\n\t\t\treturn '[' + out.join(',') + indent + ']';\n\t\t}\n\n\t\tif (seen.indexOf(node) !== -1) {\n\t\t\tif (cycles) { return json.stringify('__cycle__'); }\n\t\t\tthrow new TypeError('Converting circular structure to JSON');\n\t\t} else { seen.push(node); }\n\n\t\tvar keys = objectKeys(node).sort(cmp && cmp(node));\n\t\tvar out = [];\n\t\tfor (var i = 0; i < keys.length; i++) {\n\t\t\tvar key = keys[i];\n\t\t\tvar value = stringify(node, key, node[key], level + 1);\n\n\t\t\tif (!value) { continue; }\n\n\t\t\tvar keyValue = json.stringify(key)\n\t\t\t\t\t+ colonSeparator\n\t\t\t\t\t+ value;\n\n\t\t\tout.push(indent + space + keyValue);\n\t\t}\n\t\tseen.splice(seen.indexOf(node), 1);\n\t\treturn '{' + out.join(',') + indent + '}';\n\n\t}({ '': obj }, '', obj, 0));\n};\n","'use strict';\n\nexports.parse = require('./lib/parse');\nexports.stringify = require('./lib/stringify');\n","'use strict';\n\nvar at; // The index of the current character\nvar ch; // The current character\nvar escapee = {\n\t'\"': '\"',\n\t'\\\\': '\\\\',\n\t'/': '/',\n\tb: '\\b',\n\tf: '\\f',\n\tn: '\\n',\n\tr: '\\r',\n\tt: '\\t'\n};\nvar text;\n\n// Call error when something is wrong.\nfunction error(m) {\n\tthrow {\n\t\tname: 'SyntaxError',\n\t\tmessage: m,\n\t\tat: at,\n\t\ttext: text\n\t};\n}\n\nfunction next(c) {\n\t// If a c parameter is provided, verify that it matches the current character.\n\tif (c && c !== ch) {\n\t\terror(\"Expected '\" + c + \"' instead of '\" + ch + \"'\");\n\t}\n\n\t// Get the next character. When there are no more characters, return the empty string.\n\n\tch = text.charAt(at);\n\tat += 1;\n\treturn ch;\n}\n\nfunction number() {\n\t// Parse a number value.\n\tvar num;\n\tvar str = '';\n\n\tif (ch === '-') {\n\t\tstr = '-';\n\t\tnext('-');\n\t}\n\twhile (ch >= '0' && ch <= '9') {\n\t\tstr += ch;\n\t\tnext();\n\t}\n\tif (ch === '.') {\n\t\tstr += '.';\n\t\twhile (next() && ch >= '0' && ch <= '9') {\n\t\t\tstr += ch;\n\t\t}\n\t}\n\tif (ch === 'e' || ch === 'E') {\n\t\tstr += ch;\n\t\tnext();\n\t\tif (ch === '-' || ch === '+') {\n\t\t\tstr += ch;\n\t\t\tnext();\n\t\t}\n\t\twhile (ch >= '0' && ch <= '9') {\n\t\t\tstr += ch;\n\t\t\tnext();\n\t\t}\n\t}\n\tnum = Number(str);\n\tif (!isFinite(num)) {\n\t\terror('Bad number');\n\t}\n\treturn num;\n}\n\nfunction string() {\n\t// Parse a string value.\n\tvar hex;\n\tvar i;\n\tvar str = '';\n\tvar uffff;\n\n\t// When parsing for string values, we must look for \" and \\ characters.\n\tif (ch === '\"') {\n\t\twhile (next()) {\n\t\t\tif (ch === '\"') {\n\t\t\t\tnext();\n\t\t\t\treturn str;\n\t\t\t} else if (ch === '\\\\') {\n\t\t\t\tnext();\n\t\t\t\tif (ch === 'u') {\n\t\t\t\t\tuffff = 0;\n\t\t\t\t\tfor (i = 0; i < 4; i += 1) {\n\t\t\t\t\t\thex = parseInt(next(), 16);\n\t\t\t\t\t\tif (!isFinite(hex)) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tuffff = (uffff * 16) + hex;\n\t\t\t\t\t}\n\t\t\t\t\tstr += String.fromCharCode(uffff);\n\t\t\t\t} else if (typeof escapee[ch] === 'string') {\n\t\t\t\t\tstr += escapee[ch];\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tstr += ch;\n\t\t\t}\n\t\t}\n\t}\n\terror('Bad string');\n}\n\n// Skip whitespace.\nfunction white() {\n\twhile (ch && ch <= ' ') {\n\t\tnext();\n\t}\n}\n\n// true, false, or null.\nfunction word() {\n\tswitch (ch) {\n\t\tcase 't':\n\t\t\tnext('t');\n\t\t\tnext('r');\n\t\t\tnext('u');\n\t\t\tnext('e');\n\t\t\treturn true;\n\t\tcase 'f':\n\t\t\tnext('f');\n\t\t\tnext('a');\n\t\t\tnext('l');\n\t\t\tnext('s');\n\t\t\tnext('e');\n\t\t\treturn false;\n\t\tcase 'n':\n\t\t\tnext('n');\n\t\t\tnext('u');\n\t\t\tnext('l');\n\t\t\tnext('l');\n\t\t\treturn null;\n\t\tdefault:\n\t\t\terror(\"Unexpected '\" + ch + \"'\");\n\t}\n}\n\n// Parse an array value.\nfunction array() {\n\tvar arr = [];\n\n\tif (ch === '[') {\n\t\tnext('[');\n\t\twhite();\n\t\tif (ch === ']') {\n\t\t\tnext(']');\n\t\t\treturn arr; // empty array\n\t\t}\n\t\twhile (ch) {\n\t\t\tarr.push(value()); // eslint-disable-line no-use-before-define\n\t\t\twhite();\n\t\t\tif (ch === ']') {\n\t\t\t\tnext(']');\n\t\t\t\treturn arr;\n\t\t\t}\n\t\t\tnext(',');\n\t\t\twhite();\n\t\t}\n\t}\n\terror('Bad array');\n}\n\n// Parse an object value.\nfunction object() {\n\tvar key;\n\tvar obj = {};\n\n\tif (ch === '{') {\n\t\tnext('{');\n\t\twhite();\n\t\tif (ch === '}') {\n\t\t\tnext('}');\n\t\t\treturn obj; // empty object\n\t\t}\n\t\twhile (ch) {\n\t\t\tkey = string();\n\t\t\twhite();\n\t\t\tnext(':');\n\t\t\tif (Object.prototype.hasOwnProperty.call(obj, key)) {\n\t\t\t\terror('Duplicate key \"' + key + '\"');\n\t\t\t}\n\t\t\tobj[key] = value(); // eslint-disable-line no-use-before-define\n\t\t\twhite();\n\t\t\tif (ch === '}') {\n\t\t\t\tnext('}');\n\t\t\t\treturn obj;\n\t\t\t}\n\t\t\tnext(',');\n\t\t\twhite();\n\t\t}\n\t}\n\terror('Bad object');\n}\n\n// Parse a JSON value. It could be an object, an array, a string, a number, or a word.\nfunction value() {\n\twhite();\n\tswitch (ch) {\n\t\tcase '{':\n\t\t\treturn object();\n\t\tcase '[':\n\t\t\treturn array();\n\t\tcase '\"':\n\t\t\treturn string();\n\t\tcase '-':\n\t\t\treturn number();\n\t\tdefault:\n\t\t\treturn ch >= '0' && ch <= '9' ? number() : word();\n\t}\n}\n\n// Return the json_parse function. It will have access to all of the above functions and variables.\nmodule.exports = function (source, reviver) {\n\tvar result;\n\n\ttext = source;\n\tat = 0;\n\tch = ' ';\n\tresult = value();\n\twhite();\n\tif (ch) {\n\t\terror('Syntax error');\n\t}\n\n\t// If there is a reviver function, we recursively walk the new structure,\n\t// passing each name/value pair to the reviver function for possible\n\t// transformation, starting with a temporary root object that holds the result\n\t// in an empty key. If there is not a reviver function, we simply return the\n\t// result.\n\n\treturn typeof reviver === 'function' ? (function walk(holder, key) {\n\t\tvar k;\n\t\tvar v;\n\t\tvar val = holder[key];\n\t\tif (val && typeof val === 'object') {\n\t\t\tfor (k in value) {\n\t\t\t\tif (Object.prototype.hasOwnProperty.call(val, k)) {\n\t\t\t\t\tv = walk(val, k);\n\t\t\t\t\tif (typeof v === 'undefined') {\n\t\t\t\t\t\tdelete val[k];\n\t\t\t\t\t} else {\n\t\t\t\t\t\tval[k] = v;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn reviver.call(holder, key, val);\n\t}({ '': result }, '')) : result;\n};\n","'use strict';\n\nvar escapable = /[\\\\\"\\x00-\\x1f\\x7f-\\x9f\\u00ad\\u0600-\\u0604\\u070f\\u17b4\\u17b5\\u200c-\\u200f\\u2028-\\u202f\\u2060-\\u206f\\ufeff\\ufff0-\\uffff]/g;\nvar gap;\nvar indent;\nvar meta = { // table of character substitutions\n\t'\\b': '\\\\b',\n\t'\\t': '\\\\t',\n\t'\\n': '\\\\n',\n\t'\\f': '\\\\f',\n\t'\\r': '\\\\r',\n\t'\"': '\\\\\"',\n\t'\\\\': '\\\\\\\\'\n};\nvar rep;\n\nfunction quote(string) {\n\t// If the string contains no control characters, no quote characters, and no\n\t// backslash characters, then we can safely slap some quotes around it.\n\t// Otherwise we must also replace the offending characters with safe escape sequences.\n\n\tescapable.lastIndex = 0;\n\treturn escapable.test(string) ? '\"' + string.replace(escapable, function (a) {\n\t\tvar c = meta[a];\n\t\treturn typeof c === 'string' ? c\n\t\t\t: '\\\\u' + ('0000' + a.charCodeAt(0).toString(16)).slice(-4);\n\t}) + '\"' : '\"' + string + '\"';\n}\n\nfunction str(key, holder) {\n\t// Produce a string from holder[key].\n\tvar i; // The loop counter.\n\tvar k; // The member key.\n\tvar v; // The member value.\n\tvar length;\n\tvar mind = gap;\n\tvar partial;\n\tvar value = holder[key];\n\n\t// If the value has a toJSON method, call it to obtain a replacement value.\n\tif (value && typeof value === 'object' && typeof value.toJSON === 'function') {\n\t\tvalue = value.toJSON(key);\n\t}\n\n\t// If we were called with a replacer function, then call the replacer to obtain a replacement value.\n\tif (typeof rep === 'function') {\n\t\tvalue = rep.call(holder, key, value);\n\t}\n\n\t// What happens next depends on the value's type.\n\tswitch (typeof value) {\n\t\tcase 'string':\n\t\t\treturn quote(value);\n\n\t\tcase 'number':\n\t\t\t// JSON numbers must be finite. Encode non-finite numbers as null.\n\t\t\treturn isFinite(value) ? String(value) : 'null';\n\n\t\tcase 'boolean':\n\t\tcase 'null':\n\t\t\t// If the value is a boolean or null, convert it to a string. Note:\n\t\t\t// typeof null does not produce 'null'. The case is included here in\n\t\t\t// the remote chance that this gets fixed someday.\n\t\t\treturn String(value);\n\n\t\tcase 'object':\n\t\t\tif (!value) {\n\t\t\t\treturn 'null';\n\t\t\t}\n\t\t\tgap += indent;\n\t\t\tpartial = [];\n\n\t\t\t// Array.isArray\n\t\t\tif (Object.prototype.toString.apply(value) === '[object Array]') {\n\t\t\t\tlength = value.length;\n\t\t\t\tfor (i = 0; i < length; i += 1) {\n\t\t\t\t\tpartial[i] = str(i, value) || 'null';\n\t\t\t\t}\n\n\t\t\t\t// Join all of the elements together, separated with commas, and wrap them in brackets.\n\t\t\t\tv = partial.length === 0 ? '[]' : gap\n\t\t\t\t\t? '[\\n' + gap + partial.join(',\\n' + gap) + '\\n' + mind + ']'\n\t\t\t\t\t: '[' + partial.join(',') + ']';\n\t\t\t\tgap = mind;\n\t\t\t\treturn v;\n\t\t\t}\n\n\t\t\t// If the replacer is an array, use it to select the members to be stringified.\n\t\t\tif (rep && typeof rep === 'object') {\n\t\t\t\tlength = rep.length;\n\t\t\t\tfor (i = 0; i < length; i += 1) {\n\t\t\t\t\tk = rep[i];\n\t\t\t\t\tif (typeof k === 'string') {\n\t\t\t\t\t\tv = str(k, value);\n\t\t\t\t\t\tif (v) {\n\t\t\t\t\t\t\tpartial.push(quote(k) + (gap ? ': ' : ':') + v);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Otherwise, iterate through all of the keys in the object.\n\t\t\t\tfor (k in value) {\n\t\t\t\t\tif (Object.prototype.hasOwnProperty.call(value, k)) {\n\t\t\t\t\t\tv = str(k, value);\n\t\t\t\t\t\tif (v) {\n\t\t\t\t\t\t\tpartial.push(quote(k) + (gap ? ': ' : ':') + v);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Join all of the member texts together, separated with commas, and wrap them in braces.\n\n\t\t\tv = partial.length === 0 ? '{}' : gap\n\t\t\t\t? '{\\n' + gap + partial.join(',\\n' + gap) + '\\n' + mind + '}'\n\t\t\t\t: '{' + partial.join(',') + '}';\n\t\t\tgap = mind;\n\t\t\treturn v;\n\t\tdefault:\n\t}\n}\n\nmodule.exports = function (value, replacer, space) {\n\tvar i;\n\tgap = '';\n\tindent = '';\n\n\t// If the space parameter is a number, make an indent string containing that many spaces.\n\tif (typeof space === 'number') {\n\t\tfor (i = 0; i < space; i += 1) {\n\t\t\tindent += ' ';\n\t\t}\n\t} else if (typeof space === 'string') {\n\t\t// If the space parameter is a string, it will be used as the indent string.\n\t\tindent = space;\n\t}\n\n\t// If there is a replacer, it must be a function or an array. Otherwise, throw an error.\n\trep = replacer;\n\tif (\n\t\treplacer\n\t\t&& typeof replacer !== 'function'\n\t\t&& (typeof replacer !== 'object' || typeof replacer.length !== 'number')\n\t) {\n\t\tthrow new Error('JSON.stringify');\n\t}\n\n\t// Make a fake root object containing our value under the key of ''.\n\t// Return the result of stringifying the value.\n\treturn str('', { '': value });\n};\n","\nmodule.exports = function load (src, opts, cb) {\n var head = document.head || document.getElementsByTagName('head')[0]\n var script = document.createElement('script')\n\n if (typeof opts === 'function') {\n cb = opts\n opts = {}\n }\n\n opts = opts || {}\n cb = cb || function() {}\n\n script.type = opts.type || 'text/javascript'\n script.charset = opts.charset || 'utf8';\n script.async = 'async' in opts ? !!opts.async : true\n script.src = src\n\n if (opts.attrs) {\n setAttributes(script, opts.attrs)\n }\n\n if (opts.text) {\n script.text = '' + opts.text\n }\n\n var onend = 'onload' in script ? stdOnEnd : ieOnEnd\n onend(script, cb)\n\n // some good legacy browsers (firefox) fail the 'in' detection above\n // so as a fallback we always set onload\n // old IE will ignore this and new IE will set onload\n if (!script.onload) {\n stdOnEnd(script, cb);\n }\n\n head.appendChild(script)\n}\n\nfunction setAttributes(script, attrs) {\n for (var attr in attrs) {\n script.setAttribute(attr, attrs[attr]);\n }\n}\n\nfunction stdOnEnd (script, cb) {\n script.onload = function () {\n this.onerror = this.onload = null\n cb(null, script)\n }\n script.onerror = function () {\n // this.onload = null here is necessary\n // because even IE9 works not like others\n this.onerror = this.onload = null\n cb(new Error('Failed to load ' + this.src), script)\n }\n}\n\nfunction ieOnEnd (script, cb) {\n script.onreadystatechange = function () {\n if (this.readyState != 'complete' && this.readyState != 'loaded') return\n this.onreadystatechange = null\n cb(null, script) // there is no way to catch loading errors in IE8\n }\n}\n","/**\n * Lodash (Custom Build) \n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright JS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n asyncTag = '[object AsyncFunction]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n nullTag = '[object Null]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n proxyTag = '[object Proxy]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]',\n undefinedTag = '[object Undefined]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\n/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\n/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\n/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\n/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\n/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n return cache.has(key);\n}\n\n/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\n/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\n/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\n/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n Symbol = root.Symbol,\n Uint8Array = root.Uint8Array,\n propertyIsEnumerable = objectProto.propertyIsEnumerable,\n splice = arrayProto.splice,\n symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols,\n nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,\n nativeKeys = overArg(Object.keys, Object);\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView'),\n Map = getNative(root, 'Map'),\n Promise = getNative(root, 'Promise'),\n Set = getNative(root, 'Set'),\n WeakMap = getNative(root, 'WeakMap'),\n nativeCreate = getNative(Object, 'create');\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n}\n\n/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\n/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\n/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(array);\n if (stacked && stack.get(other)) {\n return stacked == other;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked && stack.get(other)) {\n return stacked == other;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n length = length == null ? MAX_SAFE_INTEGER : length;\n return !!length &&\n (typeof value == 'number' || reIsUint.test(value)) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\n/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\n/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\n/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return baseIsEqual(value, other);\n}\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\n/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\n/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = isEqual;\n","/**\n * Lodash (Custom Build) \n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright OpenJS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n asyncTag = '[object AsyncFunction]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n nullTag = '[object Null]',\n objectTag = '[object Object]',\n proxyTag = '[object Proxy]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n undefinedTag = '[object Undefined]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\n/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\n/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\n/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\n/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n Symbol = root.Symbol,\n Uint8Array = root.Uint8Array,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined,\n getPrototype = overArg(Object.getPrototypeOf, Object),\n objectCreate = Object.create,\n propertyIsEnumerable = objectProto.propertyIsEnumerable,\n splice = arrayProto.splice,\n symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,\n nativeMax = Math.max,\n nativeNow = Date.now;\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map'),\n nativeCreate = getNative(Object, 'create');\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\n/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\n/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = createBaseFor();\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n}\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n}\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n}\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\n/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\n/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\n/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\n/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\n/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\n/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\n/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\n/**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\nvar merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n});\n\n/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\n/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\n/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = merge;\n","/**\n * Lodash (Custom Build) \n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright OpenJS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n asyncTag = '[object AsyncFunction]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n nullTag = '[object Null]',\n objectTag = '[object Object]',\n proxyTag = '[object Proxy]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n undefinedTag = '[object Undefined]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\n/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\n/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\n/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\n/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n Symbol = root.Symbol,\n Uint8Array = root.Uint8Array,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined,\n getPrototype = overArg(Object.getPrototypeOf, Object),\n objectCreate = Object.create,\n propertyIsEnumerable = objectProto.propertyIsEnumerable,\n splice = arrayProto.splice,\n symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,\n nativeMax = Math.max,\n nativeNow = Date.now;\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map'),\n nativeCreate = getNative(Object, 'create');\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\n/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\n/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\n/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = createBaseFor();\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n}\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n}\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n}\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\n/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\n/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\n/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\n/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\n/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\n/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\n/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\n/**\n * This method is like `_.merge` except that it accepts `customizer` which\n * is invoked to produce the merged values of the destination and source\n * properties. If `customizer` returns `undefined`, merging is handled by the\n * method instead. The `customizer` is invoked with six arguments:\n * (objValue, srcValue, key, object, source, stack).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} customizer The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * function customizer(objValue, srcValue) {\n * if (_.isArray(objValue)) {\n * return objValue.concat(srcValue);\n * }\n * }\n *\n * var object = { 'a': [1], 'b': [2] };\n * var other = { 'a': [3], 'b': [4] };\n *\n * _.mergeWith(object, other, customizer);\n * // => { 'a': [1, 3], 'b': [2, 4] }\n */\nvar mergeWith = createAssigner(function(object, source, srcIndex, customizer) {\n baseMerge(object, source, srcIndex, customizer);\n});\n\n/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\n/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\n/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = mergeWith;\n","/**\n * @license\n * Lodash \n * Copyright OpenJS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n;(function() {\n\n /** Used as a safe reference for `undefined` in pre-ES5 environments. */\n var undefined;\n\n /** Used as the semantic version number. */\n var VERSION = '4.17.21';\n\n /** Used as the size to enable large array optimizations. */\n var LARGE_ARRAY_SIZE = 200;\n\n /** Error message constants. */\n var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.',\n FUNC_ERROR_TEXT = 'Expected a function',\n INVALID_TEMPL_VAR_ERROR_TEXT = 'Invalid `variable` option passed into `_.template`';\n\n /** Used to stand-in for `undefined` hash values. */\n var HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n /** Used as the maximum memoize cache size. */\n var MAX_MEMOIZE_SIZE = 500;\n\n /** Used as the internal argument placeholder. */\n var PLACEHOLDER = '__lodash_placeholder__';\n\n /** Used to compose bitmasks for cloning. */\n var CLONE_DEEP_FLAG = 1,\n CLONE_FLAT_FLAG = 2,\n CLONE_SYMBOLS_FLAG = 4;\n\n /** Used to compose bitmasks for value comparisons. */\n var COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n /** Used to compose bitmasks for function metadata. */\n var WRAP_BIND_FLAG = 1,\n WRAP_BIND_KEY_FLAG = 2,\n WRAP_CURRY_BOUND_FLAG = 4,\n WRAP_CURRY_FLAG = 8,\n WRAP_CURRY_RIGHT_FLAG = 16,\n WRAP_PARTIAL_FLAG = 32,\n WRAP_PARTIAL_RIGHT_FLAG = 64,\n WRAP_ARY_FLAG = 128,\n WRAP_REARG_FLAG = 256,\n WRAP_FLIP_FLAG = 512;\n\n /** Used as default options for `_.truncate`. */\n var DEFAULT_TRUNC_LENGTH = 30,\n DEFAULT_TRUNC_OMISSION = '...';\n\n /** Used to detect hot functions by number of calls within a span of milliseconds. */\n var HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n /** Used to indicate the type of lazy iteratees. */\n var LAZY_FILTER_FLAG = 1,\n LAZY_MAP_FLAG = 2,\n LAZY_WHILE_FLAG = 3;\n\n /** Used as references for various `Number` constants. */\n var INFINITY = 1 / 0,\n MAX_SAFE_INTEGER = 9007199254740991,\n MAX_INTEGER = 1.7976931348623157e+308,\n NAN = 0 / 0;\n\n /** Used as references for the maximum length and index of an array. */\n var MAX_ARRAY_LENGTH = 4294967295,\n MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1,\n HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;\n\n /** Used to associate wrap methods with their bit flags. */\n var wrapFlags = [\n ['ary', WRAP_ARY_FLAG],\n ['bind', WRAP_BIND_FLAG],\n ['bindKey', WRAP_BIND_KEY_FLAG],\n ['curry', WRAP_CURRY_FLAG],\n ['curryRight', WRAP_CURRY_RIGHT_FLAG],\n ['flip', WRAP_FLIP_FLAG],\n ['partial', WRAP_PARTIAL_FLAG],\n ['partialRight', WRAP_PARTIAL_RIGHT_FLAG],\n ['rearg', WRAP_REARG_FLAG]\n ];\n\n /** `Object#toString` result references. */\n var argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n asyncTag = '[object AsyncFunction]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n domExcTag = '[object DOMException]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n nullTag = '[object Null]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n proxyTag = '[object Proxy]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]',\n undefinedTag = '[object Undefined]',\n weakMapTag = '[object WeakMap]',\n weakSetTag = '[object WeakSet]';\n\n var arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n /** Used to match empty string literals in compiled template source. */\n var reEmptyStringLeading = /\\b__p \\+= '';/g,\n reEmptyStringMiddle = /\\b(__p \\+=) '' \\+/g,\n reEmptyStringTrailing = /(__e\\(.*?\\)|\\b__t\\)) \\+\\n'';/g;\n\n /** Used to match HTML entities and HTML characters. */\n var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g,\n reUnescapedHtml = /[&<>\"']/g,\n reHasEscapedHtml = RegExp(reEscapedHtml.source),\n reHasUnescapedHtml = RegExp(reUnescapedHtml.source);\n\n /** Used to match template delimiters. */\n var reEscape = /<%-([\\s\\S]+?)%>/g,\n reEvaluate = /<%([\\s\\S]+?)%>/g,\n reInterpolate = /<%=([\\s\\S]+?)%>/g;\n\n /** Used to match property names within property paths. */\n var reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/,\n rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n /**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\n var reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g,\n reHasRegExpChar = RegExp(reRegExpChar.source);\n\n /** Used to match leading whitespace. */\n var reTrimStart = /^\\s+/;\n\n /** Used to match a single whitespace character. */\n var reWhitespace = /\\s/;\n\n /** Used to match wrap detail comments. */\n var reWrapComment = /\\{(?:\\n\\/\\* \\[wrapped with .+\\] \\*\\/)?\\n?/,\n reWrapDetails = /\\{\\n\\/\\* \\[wrapped with (.+)\\] \\*/,\n reSplitDetails = /,? & /;\n\n /** Used to match words composed of alphanumeric characters. */\n var reAsciiWord = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n\n /**\n * Used to validate the `validate` option in `_.template` variable.\n *\n * Forbids characters which could potentially change the meaning of the function argument definition:\n * - \"(),\" (modification of function parameters)\n * - \"=\" (default value)\n * - \"[]{}\" (destructuring of function parameters)\n * - \"/\" (beginning of a comment)\n * - whitespace\n */\n var reForbiddenIdentifierChars = /[()=,{}\\[\\]\\/\\s]/;\n\n /** Used to match backslashes in property paths. */\n var reEscapeChar = /\\\\(\\\\)?/g;\n\n /**\n * Used to match\n * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components).\n */\n var reEsTemplate = /\\$\\{([^\\\\}]*(?:\\\\.[^\\\\}]*)*)\\}/g;\n\n /** Used to match `RegExp` flags from their coerced string values. */\n var reFlags = /\\w*$/;\n\n /** Used to detect bad signed hexadecimal string values. */\n var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n /** Used to detect binary string values. */\n var reIsBinary = /^0b[01]+$/i;\n\n /** Used to detect host constructors (Safari). */\n var reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n /** Used to detect octal string values. */\n var reIsOctal = /^0o[0-7]+$/i;\n\n /** Used to detect unsigned integer values. */\n var reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n /** Used to match Latin Unicode letters (excluding mathematical operators). */\n var reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\n\n /** Used to ensure capturing order of template delimiters. */\n var reNoMatch = /($^)/;\n\n /** Used to match unescaped characters in compiled string literals. */\n var reUnescapedString = /['\\n\\r\\u2028\\u2029\\\\]/g;\n\n /** Used to compose unicode character classes. */\n var rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsDingbatRange = '\\\\u2700-\\\\u27bf',\n rsLowerRange = 'a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff',\n rsMathOpRange = '\\\\xac\\\\xb1\\\\xd7\\\\xf7',\n rsNonCharRange = '\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf',\n rsPunctuationRange = '\\\\u2000-\\\\u206f',\n rsSpaceRange = ' \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000',\n rsUpperRange = 'A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde',\n rsVarRange = '\\\\ufe0e\\\\ufe0f',\n rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;\n\n /** Used to compose unicode capture groups. */\n var rsApos = \"['\\u2019]\",\n rsAstral = '[' + rsAstralRange + ']',\n rsBreak = '[' + rsBreakRange + ']',\n rsCombo = '[' + rsComboRange + ']',\n rsDigits = '\\\\d+',\n rsDingbat = '[' + rsDingbatRange + ']',\n rsLower = '[' + rsLowerRange + ']',\n rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',\n rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n rsNonAstral = '[^' + rsAstralRange + ']',\n rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n rsUpper = '[' + rsUpperRange + ']',\n rsZWJ = '\\\\u200d';\n\n /** Used to compose unicode regexes. */\n var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',\n rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',\n rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',\n rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',\n reOptMod = rsModifier + '?',\n rsOptVar = '[' + rsVarRange + ']?',\n rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n rsOrdLower = '\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])',\n rsOrdUpper = '\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])',\n rsSeq = rsOptVar + reOptMod + rsOptJoin,\n rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq,\n rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')';\n\n /** Used to match apostrophes. */\n var reApos = RegExp(rsApos, 'g');\n\n /**\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\n */\n var reComboMark = RegExp(rsCombo, 'g');\n\n /** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */\n var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g');\n\n /** Used to match complex or compound words. */\n var reUnicodeWord = RegExp([\n rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',\n rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',\n rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,\n rsUpper + '+' + rsOptContrUpper,\n rsOrdUpper,\n rsOrdLower,\n rsDigits,\n rsEmoji\n ].join('|'), 'g');\n\n /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */\n var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']');\n\n /** Used to detect strings that need a more robust regexp to match words. */\n var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n\n /** Used to assign default `context` object properties. */\n var contextProps = [\n 'Array', 'Buffer', 'DataView', 'Date', 'Error', 'Float32Array', 'Float64Array',\n 'Function', 'Int8Array', 'Int16Array', 'Int32Array', 'Map', 'Math', 'Object',\n 'Promise', 'RegExp', 'Set', 'String', 'Symbol', 'TypeError', 'Uint8Array',\n 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'WeakMap',\n '_', 'clearTimeout', 'isFinite', 'parseInt', 'setTimeout'\n ];\n\n /** Used to make template sourceURLs easier to identify. */\n var templateCounter = -1;\n\n /** Used to identify `toStringTag` values of typed arrays. */\n var typedArrayTags = {};\n typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\n typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\n typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\n typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\n typedArrayTags[uint32Tag] = true;\n typedArrayTags[argsTag] = typedArrayTags[arrayTag] =\n typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\n typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\n typedArrayTags[errorTag] = typedArrayTags[funcTag] =\n typedArrayTags[mapTag] = typedArrayTags[numberTag] =\n typedArrayTags[objectTag] = typedArrayTags[regexpTag] =\n typedArrayTags[setTag] = typedArrayTags[stringTag] =\n typedArrayTags[weakMapTag] = false;\n\n /** Used to identify `toStringTag` values supported by `_.clone`. */\n var cloneableTags = {};\n cloneableTags[argsTag] = cloneableTags[arrayTag] =\n cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =\n cloneableTags[boolTag] = cloneableTags[dateTag] =\n cloneableTags[float32Tag] = cloneableTags[float64Tag] =\n cloneableTags[int8Tag] = cloneableTags[int16Tag] =\n cloneableTags[int32Tag] = cloneableTags[mapTag] =\n cloneableTags[numberTag] = cloneableTags[objectTag] =\n cloneableTags[regexpTag] = cloneableTags[setTag] =\n cloneableTags[stringTag] = cloneableTags[symbolTag] =\n cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =\n cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;\n cloneableTags[errorTag] = cloneableTags[funcTag] =\n cloneableTags[weakMapTag] = false;\n\n /** Used to map Latin Unicode letters to basic Latin letters. */\n var deburredLetters = {\n // Latin-1 Supplement block.\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\n '\\xc7': 'C', '\\xe7': 'c',\n '\\xd0': 'D', '\\xf0': 'd',\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\n '\\xd1': 'N', '\\xf1': 'n',\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\n '\\xc6': 'Ae', '\\xe6': 'ae',\n '\\xde': 'Th', '\\xfe': 'th',\n '\\xdf': 'ss',\n // Latin Extended-A block.\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\n '\\u0134': 'J', '\\u0135': 'j',\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\n '\\u0174': 'W', '\\u0175': 'w',\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\n '\\u0132': 'IJ', '\\u0133': 'ij',\n '\\u0152': 'Oe', '\\u0153': 'oe',\n '\\u0149': \"'n\", '\\u017f': 's'\n };\n\n /** Used to map characters to HTML entities. */\n var htmlEscapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": '''\n };\n\n /** Used to map HTML entities to characters. */\n var htmlUnescapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '"': '\"',\n ''': \"'\"\n };\n\n /** Used to escape characters for inclusion in compiled string literals. */\n var stringEscapes = {\n '\\\\': '\\\\',\n \"'\": \"'\",\n '\\n': 'n',\n '\\r': 'r',\n '\\u2028': 'u2028',\n '\\u2029': 'u2029'\n };\n\n /** Built-in method references without a dependency on `root`. */\n var freeParseFloat = parseFloat,\n freeParseInt = parseInt;\n\n /** Detect free variable `global` from Node.js. */\n var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n /** Detect free variable `self`. */\n var freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n /** Used as a reference to the global object. */\n var root = freeGlobal || freeSelf || Function('return this')();\n\n /** Detect free variable `exports`. */\n var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n /** Detect free variable `module`. */\n var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n /** Detect the popular CommonJS extension `module.exports`. */\n var moduleExports = freeModule && freeModule.exports === freeExports;\n\n /** Detect free variable `process` from Node.js. */\n var freeProcess = moduleExports && freeGlobal.process;\n\n /** Used to access faster Node.js helpers. */\n var nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n }());\n\n /* Node.js helper references. */\n var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer,\n nodeIsDate = nodeUtil && nodeUtil.isDate,\n nodeIsMap = nodeUtil && nodeUtil.isMap,\n nodeIsRegExp = nodeUtil && nodeUtil.isRegExp,\n nodeIsSet = nodeUtil && nodeUtil.isSet,\n nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n /*--------------------------------------------------------------------------*/\n\n /**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\n function apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n }\n\n /**\n * A specialized version of `baseAggregator` for arrays.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\n function arrayAggregator(array, setter, iteratee, accumulator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n var value = array[index];\n setter(accumulator, value, iteratee(value), array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.forEach` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\n function arrayEach(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (iteratee(array[index], index, array) === false) {\n break;\n }\n }\n return array;\n }\n\n /**\n * A specialized version of `_.forEachRight` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\n function arrayEachRight(array, iteratee) {\n var length = array == null ? 0 : array.length;\n\n while (length--) {\n if (iteratee(array[length], length, array) === false) {\n break;\n }\n }\n return array;\n }\n\n /**\n * A specialized version of `_.every` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`.\n */\n function arrayEvery(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (!predicate(array[index], index, array)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\n function arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `_.includes` for arrays without support for\n * specifying an index to search from.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\n function arrayIncludes(array, value) {\n var length = array == null ? 0 : array.length;\n return !!length && baseIndexOf(array, value, 0) > -1;\n }\n\n /**\n * This function is like `arrayIncludes` except that it accepts a comparator.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @param {Function} comparator The comparator invoked per element.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\n function arrayIncludesWith(array, value, comparator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (comparator(value, array[index])) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\n function arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n }\n\n /**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\n function arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n }\n\n /**\n * A specialized version of `_.reduce` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the first element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\n function arrayReduce(array, iteratee, accumulator, initAccum) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n if (initAccum && length) {\n accumulator = array[++index];\n }\n while (++index < length) {\n accumulator = iteratee(accumulator, array[index], index, array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.reduceRight` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the last element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\n function arrayReduceRight(array, iteratee, accumulator, initAccum) {\n var length = array == null ? 0 : array.length;\n if (initAccum && length) {\n accumulator = array[--length];\n }\n while (length--) {\n accumulator = iteratee(accumulator, array[length], length, array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\n function arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * Gets the size of an ASCII `string`.\n *\n * @private\n * @param {string} string The string inspect.\n * @returns {number} Returns the string size.\n */\n var asciiSize = baseProperty('length');\n\n /**\n * Converts an ASCII `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function asciiToArray(string) {\n return string.split('');\n }\n\n /**\n * Splits an ASCII `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\n function asciiWords(string) {\n return string.match(reAsciiWord) || [];\n }\n\n /**\n * The base implementation of methods like `_.findKey` and `_.findLastKey`,\n * without support for iteratee shorthands, which iterates over `collection`\n * using `eachFunc`.\n *\n * @private\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {Function} eachFunc The function to iterate over `collection`.\n * @returns {*} Returns the found element or its key, else `undefined`.\n */\n function baseFindKey(collection, predicate, eachFunc) {\n var result;\n eachFunc(collection, function(value, key, collection) {\n if (predicate(value, key, collection)) {\n result = key;\n return false;\n }\n });\n return result;\n }\n\n /**\n * The base implementation of `_.findIndex` and `_.findLastIndex` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {number} fromIndex The index to search from.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseFindIndex(array, predicate, fromIndex, fromRight) {\n var length = array.length,\n index = fromIndex + (fromRight ? 1 : -1);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (predicate(array[index], index, array)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * The base implementation of `_.indexOf` without `fromIndex` bounds checks.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseIndexOf(array, value, fromIndex) {\n return value === value\n ? strictIndexOf(array, value, fromIndex)\n : baseFindIndex(array, baseIsNaN, fromIndex);\n }\n\n /**\n * This function is like `baseIndexOf` except that it accepts a comparator.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @param {Function} comparator The comparator invoked per element.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseIndexOfWith(array, value, fromIndex, comparator) {\n var index = fromIndex - 1,\n length = array.length;\n\n while (++index < length) {\n if (comparator(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * The base implementation of `_.isNaN` without support for number objects.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n */\n function baseIsNaN(value) {\n return value !== value;\n }\n\n /**\n * The base implementation of `_.mean` and `_.meanBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the mean.\n */\n function baseMean(array, iteratee) {\n var length = array == null ? 0 : array.length;\n return length ? (baseSum(array, iteratee) / length) : NAN;\n }\n\n /**\n * The base implementation of `_.property` without support for deep paths.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\n function baseProperty(key) {\n return function(object) {\n return object == null ? undefined : object[key];\n };\n }\n\n /**\n * The base implementation of `_.propertyOf` without support for deep paths.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Function} Returns the new accessor function.\n */\n function basePropertyOf(object) {\n return function(key) {\n return object == null ? undefined : object[key];\n };\n }\n\n /**\n * The base implementation of `_.reduce` and `_.reduceRight`, without support\n * for iteratee shorthands, which iterates over `collection` using `eachFunc`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} accumulator The initial value.\n * @param {boolean} initAccum Specify using the first or last element of\n * `collection` as the initial value.\n * @param {Function} eachFunc The function to iterate over `collection`.\n * @returns {*} Returns the accumulated value.\n */\n function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) {\n eachFunc(collection, function(value, index, collection) {\n accumulator = initAccum\n ? (initAccum = false, value)\n : iteratee(accumulator, value, index, collection);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.sortBy` which uses `comparer` to define the\n * sort order of `array` and replaces criteria objects with their corresponding\n * values.\n *\n * @private\n * @param {Array} array The array to sort.\n * @param {Function} comparer The function to define sort order.\n * @returns {Array} Returns `array`.\n */\n function baseSortBy(array, comparer) {\n var length = array.length;\n\n array.sort(comparer);\n while (length--) {\n array[length] = array[length].value;\n }\n return array;\n }\n\n /**\n * The base implementation of `_.sum` and `_.sumBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the sum.\n */\n function baseSum(array, iteratee) {\n var result,\n index = -1,\n length = array.length;\n\n while (++index < length) {\n var current = iteratee(array[index]);\n if (current !== undefined) {\n result = result === undefined ? current : (result + current);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\n function baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n }\n\n /**\n * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array\n * of key-value pairs for `object` corresponding to the property names of `props`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} props The property names to get values for.\n * @returns {Object} Returns the key-value pairs.\n */\n function baseToPairs(object, props) {\n return arrayMap(props, function(key) {\n return [key, object[key]];\n });\n }\n\n /**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\n function baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n }\n\n /**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\n function baseUnary(func) {\n return function(value) {\n return func(value);\n };\n }\n\n /**\n * The base implementation of `_.values` and `_.valuesIn` which creates an\n * array of `object` property values corresponding to the property names\n * of `props`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} props The property names to get values for.\n * @returns {Object} Returns the array of property values.\n */\n function baseValues(object, props) {\n return arrayMap(props, function(key) {\n return object[key];\n });\n }\n\n /**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function cacheHas(cache, key) {\n return cache.has(key);\n }\n\n /**\n * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol\n * that is not found in the character symbols.\n *\n * @private\n * @param {Array} strSymbols The string symbols to inspect.\n * @param {Array} chrSymbols The character symbols to find.\n * @returns {number} Returns the index of the first unmatched string symbol.\n */\n function charsStartIndex(strSymbols, chrSymbols) {\n var index = -1,\n length = strSymbols.length;\n\n while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n return index;\n }\n\n /**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol\n * that is not found in the character symbols.\n *\n * @private\n * @param {Array} strSymbols The string symbols to inspect.\n * @param {Array} chrSymbols The character symbols to find.\n * @returns {number} Returns the index of the last unmatched string symbol.\n */\n function charsEndIndex(strSymbols, chrSymbols) {\n var index = strSymbols.length;\n\n while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n return index;\n }\n\n /**\n * Gets the number of `placeholder` occurrences in `array`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} placeholder The placeholder to search for.\n * @returns {number} Returns the placeholder count.\n */\n function countHolders(array, placeholder) {\n var length = array.length,\n result = 0;\n\n while (length--) {\n if (array[length] === placeholder) {\n ++result;\n }\n }\n return result;\n }\n\n /**\n * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A\n * letters to basic Latin letters.\n *\n * @private\n * @param {string} letter The matched letter to deburr.\n * @returns {string} Returns the deburred letter.\n */\n var deburrLetter = basePropertyOf(deburredLetters);\n\n /**\n * Used by `_.escape` to convert characters to HTML entities.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\n var escapeHtmlChar = basePropertyOf(htmlEscapes);\n\n /**\n * Used by `_.template` to escape characters for inclusion in compiled string literals.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\n function escapeStringChar(chr) {\n return '\\\\' + stringEscapes[chr];\n }\n\n /**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\n function getValue(object, key) {\n return object == null ? undefined : object[key];\n }\n\n /**\n * Checks if `string` contains Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a symbol is found, else `false`.\n */\n function hasUnicode(string) {\n return reHasUnicode.test(string);\n }\n\n /**\n * Checks if `string` contains a word composed of Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a word is found, else `false`.\n */\n function hasUnicodeWord(string) {\n return reHasUnicodeWord.test(string);\n }\n\n /**\n * Converts `iterator` to an array.\n *\n * @private\n * @param {Object} iterator The iterator to convert.\n * @returns {Array} Returns the converted array.\n */\n function iteratorToArray(iterator) {\n var data,\n result = [];\n\n while (!(data = iterator.next()).done) {\n result.push(data.value);\n }\n return result;\n }\n\n /**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\n function mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n }\n\n /**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\n function overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n }\n\n /**\n * Replaces all `placeholder` elements in `array` with an internal placeholder\n * and returns an array of their indexes.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {*} placeholder The placeholder to replace.\n * @returns {Array} Returns the new array of placeholder indexes.\n */\n function replaceHolders(array, placeholder) {\n var index = -1,\n length = array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value === placeholder || value === PLACEHOLDER) {\n array[index] = PLACEHOLDER;\n result[resIndex++] = index;\n }\n }\n return result;\n }\n\n /**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\n function setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n }\n\n /**\n * Converts `set` to its value-value pairs.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the value-value pairs.\n */\n function setToPairs(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = [value, value];\n });\n return result;\n }\n\n /**\n * A specialized version of `_.indexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function strictIndexOf(array, value, fromIndex) {\n var index = fromIndex - 1,\n length = array.length;\n\n while (++index < length) {\n if (array[index] === value) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * A specialized version of `_.lastIndexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function strictLastIndexOf(array, value, fromIndex) {\n var index = fromIndex + 1;\n while (index--) {\n if (array[index] === value) {\n return index;\n }\n }\n return index;\n }\n\n /**\n * Gets the number of symbols in `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the string size.\n */\n function stringSize(string) {\n return hasUnicode(string)\n ? unicodeSize(string)\n : asciiSize(string);\n }\n\n /**\n * Converts `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function stringToArray(string) {\n return hasUnicode(string)\n ? unicodeToArray(string)\n : asciiToArray(string);\n }\n\n /**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\n function trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n }\n\n /**\n * Used by `_.unescape` to convert HTML entities to characters.\n *\n * @private\n * @param {string} chr The matched character to unescape.\n * @returns {string} Returns the unescaped character.\n */\n var unescapeHtmlChar = basePropertyOf(htmlUnescapes);\n\n /**\n * Gets the size of a Unicode `string`.\n *\n * @private\n * @param {string} string The string inspect.\n * @returns {number} Returns the string size.\n */\n function unicodeSize(string) {\n var result = reUnicode.lastIndex = 0;\n while (reUnicode.test(string)) {\n ++result;\n }\n return result;\n }\n\n /**\n * Converts a Unicode `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function unicodeToArray(string) {\n return string.match(reUnicode) || [];\n }\n\n /**\n * Splits a Unicode `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\n function unicodeWords(string) {\n return string.match(reUnicodeWord) || [];\n }\n\n /*--------------------------------------------------------------------------*/\n\n /**\n * Create a new pristine `lodash` function using the `context` object.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Util\n * @param {Object} [context=root] The context object.\n * @returns {Function} Returns a new `lodash` function.\n * @example\n *\n * _.mixin({ 'foo': _.constant('foo') });\n *\n * var lodash = _.runInContext();\n * lodash.mixin({ 'bar': lodash.constant('bar') });\n *\n * _.isFunction(_.foo);\n * // => true\n * _.isFunction(_.bar);\n * // => false\n *\n * lodash.isFunction(lodash.foo);\n * // => false\n * lodash.isFunction(lodash.bar);\n * // => true\n *\n * // Create a suped-up `defer` in Node.js.\n * var defer = _.runInContext({ 'setTimeout': setImmediate }).defer;\n */\n var runInContext = (function runInContext(context) {\n context = context == null ? root : _.defaults(root.Object(), context, _.pick(root, contextProps));\n\n /** Built-in constructor references. */\n var Array = context.Array,\n Date = context.Date,\n Error = context.Error,\n Function = context.Function,\n Math = context.Math,\n Object = context.Object,\n RegExp = context.RegExp,\n String = context.String,\n TypeError = context.TypeError;\n\n /** Used for built-in method references. */\n var arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n /** Used to detect overreaching core-js shims. */\n var coreJsData = context['__core-js_shared__'];\n\n /** Used to resolve the decompiled source of functions. */\n var funcToString = funcProto.toString;\n\n /** Used to check objects for own properties. */\n var hasOwnProperty = objectProto.hasOwnProperty;\n\n /** Used to generate unique IDs. */\n var idCounter = 0;\n\n /** Used to detect methods masquerading as native. */\n var maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n }());\n\n /**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\n var nativeObjectToString = objectProto.toString;\n\n /** Used to infer the `Object` constructor. */\n var objectCtorString = funcToString.call(Object);\n\n /** Used to restore the original `_` reference in `_.noConflict`. */\n var oldDash = root._;\n\n /** Used to detect if a method is native. */\n var reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n );\n\n /** Built-in value references. */\n var Buffer = moduleExports ? context.Buffer : undefined,\n Symbol = context.Symbol,\n Uint8Array = context.Uint8Array,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined,\n getPrototype = overArg(Object.getPrototypeOf, Object),\n objectCreate = Object.create,\n propertyIsEnumerable = objectProto.propertyIsEnumerable,\n splice = arrayProto.splice,\n spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined,\n symIterator = Symbol ? Symbol.iterator : undefined,\n symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n var defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n }());\n\n /** Mocked built-ins. */\n var ctxClearTimeout = context.clearTimeout !== root.clearTimeout && context.clearTimeout,\n ctxNow = Date && Date.now !== root.Date.now && Date.now,\n ctxSetTimeout = context.setTimeout !== root.setTimeout && context.setTimeout;\n\n /* Built-in method references for those with the same name as other `lodash` methods. */\n var nativeCeil = Math.ceil,\n nativeFloor = Math.floor,\n nativeGetSymbols = Object.getOwnPropertySymbols,\n nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,\n nativeIsFinite = context.isFinite,\n nativeJoin = arrayProto.join,\n nativeKeys = overArg(Object.keys, Object),\n nativeMax = Math.max,\n nativeMin = Math.min,\n nativeNow = Date.now,\n nativeParseInt = context.parseInt,\n nativeRandom = Math.random,\n nativeReverse = arrayProto.reverse;\n\n /* Built-in method references that are verified to be native. */\n var DataView = getNative(context, 'DataView'),\n Map = getNative(context, 'Map'),\n Promise = getNative(context, 'Promise'),\n Set = getNative(context, 'Set'),\n WeakMap = getNative(context, 'WeakMap'),\n nativeCreate = getNative(Object, 'create');\n\n /** Used to store function metadata. */\n var metaMap = WeakMap && new WeakMap;\n\n /** Used to lookup unminified function names. */\n var realNames = {};\n\n /** Used to detect maps, sets, and weakmaps. */\n var dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n /** Used to convert symbols to primitives and strings. */\n var symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a `lodash` object which wraps `value` to enable implicit method\n * chain sequences. Methods that operate on and return arrays, collections,\n * and functions can be chained together. Methods that retrieve a single value\n * or may return a primitive value will automatically end the chain sequence\n * and return the unwrapped value. Otherwise, the value must be unwrapped\n * with `_#value`.\n *\n * Explicit chain sequences, which must be unwrapped with `_#value`, may be\n * enabled using `_.chain`.\n *\n * The execution of chained methods is lazy, that is, it's deferred until\n * `_#value` is implicitly or explicitly called.\n *\n * Lazy evaluation allows several methods to support shortcut fusion.\n * Shortcut fusion is an optimization to merge iteratee calls; this avoids\n * the creation of intermediate arrays and can greatly reduce the number of\n * iteratee executions. Sections of a chain sequence qualify for shortcut\n * fusion if the section is applied to an array and iteratees accept only\n * one argument. The heuristic for whether a section qualifies for shortcut\n * fusion is subject to change.\n *\n * Chaining is supported in custom builds as long as the `_#value` method is\n * directly or indirectly included in the build.\n *\n * In addition to lodash methods, wrappers have `Array` and `String` methods.\n *\n * The wrapper `Array` methods are:\n * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift`\n *\n * The wrapper `String` methods are:\n * `replace` and `split`\n *\n * The wrapper methods that support shortcut fusion are:\n * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`,\n * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`,\n * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray`\n *\n * The chainable wrapper methods are:\n * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`,\n * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`,\n * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`,\n * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`,\n * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`,\n * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`,\n * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`,\n * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`,\n * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`,\n * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`,\n * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`,\n * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`,\n * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`,\n * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`,\n * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`,\n * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`,\n * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`,\n * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`,\n * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`,\n * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`,\n * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`,\n * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`,\n * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`,\n * `zipObject`, `zipObjectDeep`, and `zipWith`\n *\n * The wrapper methods that are **not** chainable by default are:\n * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`,\n * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`,\n * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`,\n * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`,\n * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`,\n * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`,\n * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`,\n * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`,\n * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`,\n * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`,\n * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`,\n * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`,\n * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`,\n * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`,\n * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`,\n * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`,\n * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`,\n * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`,\n * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`,\n * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`,\n * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`,\n * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`,\n * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`,\n * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`,\n * `upperFirst`, `value`, and `words`\n *\n * @name _\n * @constructor\n * @category Seq\n * @param {*} value The value to wrap in a `lodash` instance.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var wrapped = _([1, 2, 3]);\n *\n * // Returns an unwrapped value.\n * wrapped.reduce(_.add);\n * // => 6\n *\n * // Returns a wrapped value.\n * var squares = wrapped.map(square);\n *\n * _.isArray(squares);\n * // => false\n *\n * _.isArray(squares.value());\n * // => true\n */\n function lodash(value) {\n if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) {\n if (value instanceof LodashWrapper) {\n return value;\n }\n if (hasOwnProperty.call(value, '__wrapped__')) {\n return wrapperClone(value);\n }\n }\n return new LodashWrapper(value);\n }\n\n /**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\n var baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n }());\n\n /**\n * The function whose prototype chain sequence wrappers inherit from.\n *\n * @private\n */\n function baseLodash() {\n // No operation performed.\n }\n\n /**\n * The base constructor for creating `lodash` wrapper objects.\n *\n * @private\n * @param {*} value The value to wrap.\n * @param {boolean} [chainAll] Enable explicit method chain sequences.\n */\n function LodashWrapper(value, chainAll) {\n this.__wrapped__ = value;\n this.__actions__ = [];\n this.__chain__ = !!chainAll;\n this.__index__ = 0;\n this.__values__ = undefined;\n }\n\n /**\n * By default, the template delimiters used by lodash are like those in\n * embedded Ruby (ERB) as well as ES2015 template strings. Change the\n * following template settings to use alternative delimiters.\n *\n * @static\n * @memberOf _\n * @type {Object}\n */\n lodash.templateSettings = {\n\n /**\n * Used to detect `data` property values to be HTML-escaped.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'escape': reEscape,\n\n /**\n * Used to detect code to be evaluated.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'evaluate': reEvaluate,\n\n /**\n * Used to detect `data` property values to inject.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'interpolate': reInterpolate,\n\n /**\n * Used to reference the data object in the template text.\n *\n * @memberOf _.templateSettings\n * @type {string}\n */\n 'variable': '',\n\n /**\n * Used to import variables into the compiled template.\n *\n * @memberOf _.templateSettings\n * @type {Object}\n */\n 'imports': {\n\n /**\n * A reference to the `lodash` function.\n *\n * @memberOf _.templateSettings.imports\n * @type {Function}\n */\n '_': lodash\n }\n };\n\n // Ensure wrappers are instances of `baseLodash`.\n lodash.prototype = baseLodash.prototype;\n lodash.prototype.constructor = lodash;\n\n LodashWrapper.prototype = baseCreate(baseLodash.prototype);\n LodashWrapper.prototype.constructor = LodashWrapper;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation.\n *\n * @private\n * @constructor\n * @param {*} value The value to wrap.\n */\n function LazyWrapper(value) {\n this.__wrapped__ = value;\n this.__actions__ = [];\n this.__dir__ = 1;\n this.__filtered__ = false;\n this.__iteratees__ = [];\n this.__takeCount__ = MAX_ARRAY_LENGTH;\n this.__views__ = [];\n }\n\n /**\n * Creates a clone of the lazy wrapper object.\n *\n * @private\n * @name clone\n * @memberOf LazyWrapper\n * @returns {Object} Returns the cloned `LazyWrapper` object.\n */\n function lazyClone() {\n var result = new LazyWrapper(this.__wrapped__);\n result.__actions__ = copyArray(this.__actions__);\n result.__dir__ = this.__dir__;\n result.__filtered__ = this.__filtered__;\n result.__iteratees__ = copyArray(this.__iteratees__);\n result.__takeCount__ = this.__takeCount__;\n result.__views__ = copyArray(this.__views__);\n return result;\n }\n\n /**\n * Reverses the direction of lazy iteration.\n *\n * @private\n * @name reverse\n * @memberOf LazyWrapper\n * @returns {Object} Returns the new reversed `LazyWrapper` object.\n */\n function lazyReverse() {\n if (this.__filtered__) {\n var result = new LazyWrapper(this);\n result.__dir__ = -1;\n result.__filtered__ = true;\n } else {\n result = this.clone();\n result.__dir__ *= -1;\n }\n return result;\n }\n\n /**\n * Extracts the unwrapped value from its lazy wrapper.\n *\n * @private\n * @name value\n * @memberOf LazyWrapper\n * @returns {*} Returns the unwrapped value.\n */\n function lazyValue() {\n var array = this.__wrapped__.value(),\n dir = this.__dir__,\n isArr = isArray(array),\n isRight = dir < 0,\n arrLength = isArr ? array.length : 0,\n view = getView(0, arrLength, this.__views__),\n start = view.start,\n end = view.end,\n length = end - start,\n index = isRight ? end : (start - 1),\n iteratees = this.__iteratees__,\n iterLength = iteratees.length,\n resIndex = 0,\n takeCount = nativeMin(length, this.__takeCount__);\n\n if (!isArr || (!isRight && arrLength == length && takeCount == length)) {\n return baseWrapperValue(array, this.__actions__);\n }\n var result = [];\n\n outer:\n while (length-- && resIndex < takeCount) {\n index += dir;\n\n var iterIndex = -1,\n value = array[index];\n\n while (++iterIndex < iterLength) {\n var data = iteratees[iterIndex],\n iteratee = data.iteratee,\n type = data.type,\n computed = iteratee(value);\n\n if (type == LAZY_MAP_FLAG) {\n value = computed;\n } else if (!computed) {\n if (type == LAZY_FILTER_FLAG) {\n continue outer;\n } else {\n break outer;\n }\n }\n }\n result[resIndex++] = value;\n }\n return result;\n }\n\n // Ensure `LazyWrapper` is an instance of `baseLodash`.\n LazyWrapper.prototype = baseCreate(baseLodash.prototype);\n LazyWrapper.prototype.constructor = LazyWrapper;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\n function hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n }\n\n /**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n }\n\n /**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n }\n\n /**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\n function hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n }\n\n // Add methods to `Hash`.\n Hash.prototype.clear = hashClear;\n Hash.prototype['delete'] = hashDelete;\n Hash.prototype.get = hashGet;\n Hash.prototype.has = hashHas;\n Hash.prototype.set = hashSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\n function listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n }\n\n /**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n }\n\n /**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n }\n\n /**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\n function listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n }\n\n // Add methods to `ListCache`.\n ListCache.prototype.clear = listCacheClear;\n ListCache.prototype['delete'] = listCacheDelete;\n ListCache.prototype.get = listCacheGet;\n ListCache.prototype.has = listCacheHas;\n ListCache.prototype.set = listCacheSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\n function mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n }\n\n /**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n }\n\n /**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function mapCacheGet(key) {\n return getMapData(this, key).get(key);\n }\n\n /**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function mapCacheHas(key) {\n return getMapData(this, key).has(key);\n }\n\n /**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\n function mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n }\n\n // Add methods to `MapCache`.\n MapCache.prototype.clear = mapCacheClear;\n MapCache.prototype['delete'] = mapCacheDelete;\n MapCache.prototype.get = mapCacheGet;\n MapCache.prototype.has = mapCacheHas;\n MapCache.prototype.set = mapCacheSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\n function SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n }\n\n /**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\n function setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n }\n\n /**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\n function setCacheHas(value) {\n return this.__data__.has(value);\n }\n\n // Add methods to `SetCache`.\n SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\n SetCache.prototype.has = setCacheHas;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n }\n\n /**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\n function stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n }\n\n /**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function stackGet(key) {\n return this.__data__.get(key);\n }\n\n /**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function stackHas(key) {\n return this.__data__.has(key);\n }\n\n /**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\n function stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n }\n\n // Add methods to `Stack`.\n Stack.prototype.clear = stackClear;\n Stack.prototype['delete'] = stackDelete;\n Stack.prototype.get = stackGet;\n Stack.prototype.has = stackHas;\n Stack.prototype.set = stackSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\n function arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `_.sample` for arrays.\n *\n * @private\n * @param {Array} array The array to sample.\n * @returns {*} Returns the random element.\n */\n function arraySample(array) {\n var length = array.length;\n return length ? array[baseRandom(0, length - 1)] : undefined;\n }\n\n /**\n * A specialized version of `_.sampleSize` for arrays.\n *\n * @private\n * @param {Array} array The array to sample.\n * @param {number} n The number of elements to sample.\n * @returns {Array} Returns the random elements.\n */\n function arraySampleSize(array, n) {\n return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length));\n }\n\n /**\n * A specialized version of `_.shuffle` for arrays.\n *\n * @private\n * @param {Array} array The array to shuffle.\n * @returns {Array} Returns the new shuffled array.\n */\n function arrayShuffle(array) {\n return shuffleSelf(copyArray(array));\n }\n\n /**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n }\n\n /**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n }\n\n /**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n }\n\n /**\n * Aggregates elements of `collection` on `accumulator` with keys transformed\n * by `iteratee` and values set by `setter`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\n function baseAggregator(collection, setter, iteratee, accumulator) {\n baseEach(collection, function(value, key, collection) {\n setter(accumulator, value, iteratee(value), collection);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.assign` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\n function baseAssign(object, source) {\n return object && copyObject(source, keys(source), object);\n }\n\n /**\n * The base implementation of `_.assignIn` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\n function baseAssignIn(object, source) {\n return object && copyObject(source, keysIn(source), object);\n }\n\n /**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n }\n\n /**\n * The base implementation of `_.at` without support for individual paths.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {string[]} paths The property paths to pick.\n * @returns {Array} Returns the picked elements.\n */\n function baseAt(object, paths) {\n var index = -1,\n length = paths.length,\n result = Array(length),\n skip = object == null;\n\n while (++index < length) {\n result[index] = skip ? undefined : get(object, paths[index]);\n }\n return result;\n }\n\n /**\n * The base implementation of `_.clamp` which doesn't coerce arguments.\n *\n * @private\n * @param {number} number The number to clamp.\n * @param {number} [lower] The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the clamped number.\n */\n function baseClamp(number, lower, upper) {\n if (number === number) {\n if (upper !== undefined) {\n number = number <= upper ? number : upper;\n }\n if (lower !== undefined) {\n number = number >= lower ? number : lower;\n }\n }\n return number;\n }\n\n /**\n * The base implementation of `_.clone` and `_.cloneDeep` which tracks\n * traversed objects.\n *\n * @private\n * @param {*} value The value to clone.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Deep clone\n * 2 - Flatten inherited properties\n * 4 - Clone symbols\n * @param {Function} [customizer] The function to customize cloning.\n * @param {string} [key] The key of `value`.\n * @param {Object} [object] The parent object of `value`.\n * @param {Object} [stack] Tracks traversed objects and their clone counterparts.\n * @returns {*} Returns the cloned value.\n */\n function baseClone(value, bitmask, customizer, key, object, stack) {\n var result,\n isDeep = bitmask & CLONE_DEEP_FLAG,\n isFlat = bitmask & CLONE_FLAT_FLAG,\n isFull = bitmask & CLONE_SYMBOLS_FLAG;\n\n if (customizer) {\n result = object ? customizer(value, key, object, stack) : customizer(value);\n }\n if (result !== undefined) {\n return result;\n }\n if (!isObject(value)) {\n return value;\n }\n var isArr = isArray(value);\n if (isArr) {\n result = initCloneArray(value);\n if (!isDeep) {\n return copyArray(value, result);\n }\n } else {\n var tag = getTag(value),\n isFunc = tag == funcTag || tag == genTag;\n\n if (isBuffer(value)) {\n return cloneBuffer(value, isDeep);\n }\n if (tag == objectTag || tag == argsTag || (isFunc && !object)) {\n result = (isFlat || isFunc) ? {} : initCloneObject(value);\n if (!isDeep) {\n return isFlat\n ? copySymbolsIn(value, baseAssignIn(result, value))\n : copySymbols(value, baseAssign(result, value));\n }\n } else {\n if (!cloneableTags[tag]) {\n return object ? value : {};\n }\n result = initCloneByTag(value, tag, isDeep);\n }\n }\n // Check for circular references and return its corresponding clone.\n stack || (stack = new Stack);\n var stacked = stack.get(value);\n if (stacked) {\n return stacked;\n }\n stack.set(value, result);\n\n if (isSet(value)) {\n value.forEach(function(subValue) {\n result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));\n });\n } else if (isMap(value)) {\n value.forEach(function(subValue, key) {\n result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n }\n\n var keysFunc = isFull\n ? (isFlat ? getAllKeysIn : getAllKeys)\n : (isFlat ? keysIn : keys);\n\n var props = isArr ? undefined : keysFunc(value);\n arrayEach(props || value, function(subValue, key) {\n if (props) {\n key = subValue;\n subValue = value[key];\n }\n // Recursively populate clone (susceptible to call stack limits).\n assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n return result;\n }\n\n /**\n * The base implementation of `_.conforms` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property predicates to conform to.\n * @returns {Function} Returns the new spec function.\n */\n function baseConforms(source) {\n var props = keys(source);\n return function(object) {\n return baseConformsTo(object, source, props);\n };\n }\n\n /**\n * The base implementation of `_.conformsTo` which accepts `props` to check.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property predicates to conform to.\n * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n */\n function baseConformsTo(object, source, props) {\n var length = props.length;\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (length--) {\n var key = props[length],\n predicate = source[key],\n value = object[key];\n\n if ((value === undefined && !(key in object)) || !predicate(value)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * The base implementation of `_.delay` and `_.defer` which accepts `args`\n * to provide to `func`.\n *\n * @private\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @param {Array} args The arguments to provide to `func`.\n * @returns {number|Object} Returns the timer id or timeout object.\n */\n function baseDelay(func, wait, args) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n return setTimeout(function() { func.apply(undefined, args); }, wait);\n }\n\n /**\n * The base implementation of methods like `_.difference` without support\n * for excluding multiple arrays or iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Array} values The values to exclude.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n */\n function baseDifference(array, values, iteratee, comparator) {\n var index = -1,\n includes = arrayIncludes,\n isCommon = true,\n length = array.length,\n result = [],\n valuesLength = values.length;\n\n if (!length) {\n return result;\n }\n if (iteratee) {\n values = arrayMap(values, baseUnary(iteratee));\n }\n if (comparator) {\n includes = arrayIncludesWith;\n isCommon = false;\n }\n else if (values.length >= LARGE_ARRAY_SIZE) {\n includes = cacheHas;\n isCommon = false;\n values = new SetCache(values);\n }\n outer:\n while (++index < length) {\n var value = array[index],\n computed = iteratee == null ? value : iteratee(value);\n\n value = (comparator || value !== 0) ? value : 0;\n if (isCommon && computed === computed) {\n var valuesIndex = valuesLength;\n while (valuesIndex--) {\n if (values[valuesIndex] === computed) {\n continue outer;\n }\n }\n result.push(value);\n }\n else if (!includes(values, computed, comparator)) {\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.forEach` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\n var baseEach = createBaseEach(baseForOwn);\n\n /**\n * The base implementation of `_.forEachRight` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\n var baseEachRight = createBaseEach(baseForOwnRight, true);\n\n /**\n * The base implementation of `_.every` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`\n */\n function baseEvery(collection, predicate) {\n var result = true;\n baseEach(collection, function(value, index, collection) {\n result = !!predicate(value, index, collection);\n return result;\n });\n return result;\n }\n\n /**\n * The base implementation of methods like `_.max` and `_.min` which accepts a\n * `comparator` to determine the extremum value.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The iteratee invoked per iteration.\n * @param {Function} comparator The comparator used to compare values.\n * @returns {*} Returns the extremum value.\n */\n function baseExtremum(array, iteratee, comparator) {\n var index = -1,\n length = array.length;\n\n while (++index < length) {\n var value = array[index],\n current = iteratee(value);\n\n if (current != null && (computed === undefined\n ? (current === current && !isSymbol(current))\n : comparator(current, computed)\n )) {\n var computed = current,\n result = value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.fill` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to fill.\n * @param {*} value The value to fill `array` with.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns `array`.\n */\n function baseFill(array, value, start, end) {\n var length = array.length;\n\n start = toInteger(start);\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = (end === undefined || end > length) ? length : toInteger(end);\n if (end < 0) {\n end += length;\n }\n end = start > end ? 0 : toLength(end);\n while (start < end) {\n array[start++] = value;\n }\n return array;\n }\n\n /**\n * The base implementation of `_.filter` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\n function baseFilter(collection, predicate) {\n var result = [];\n baseEach(collection, function(value, index, collection) {\n if (predicate(value, index, collection)) {\n result.push(value);\n }\n });\n return result;\n }\n\n /**\n * The base implementation of `_.flatten` with support for restricting flattening.\n *\n * @private\n * @param {Array} array The array to flatten.\n * @param {number} depth The maximum recursion depth.\n * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.\n * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.\n * @param {Array} [result=[]] The initial result value.\n * @returns {Array} Returns the new flattened array.\n */\n function baseFlatten(array, depth, predicate, isStrict, result) {\n var index = -1,\n length = array.length;\n\n predicate || (predicate = isFlattenable);\n result || (result = []);\n\n while (++index < length) {\n var value = array[index];\n if (depth > 0 && predicate(value)) {\n if (depth > 1) {\n // Recursively flatten arrays (susceptible to call stack limits).\n baseFlatten(value, depth - 1, predicate, isStrict, result);\n } else {\n arrayPush(result, value);\n }\n } else if (!isStrict) {\n result[result.length] = value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\n var baseFor = createBaseFor();\n\n /**\n * This function is like `baseFor` except that it iterates over properties\n * in the opposite order.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\n var baseForRight = createBaseFor(true);\n\n /**\n * The base implementation of `_.forOwn` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\n function baseForOwn(object, iteratee) {\n return object && baseFor(object, iteratee, keys);\n }\n\n /**\n * The base implementation of `_.forOwnRight` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\n function baseForOwnRight(object, iteratee) {\n return object && baseForRight(object, iteratee, keys);\n }\n\n /**\n * The base implementation of `_.functions` which creates an array of\n * `object` function property names filtered from `props`.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Array} props The property names to filter.\n * @returns {Array} Returns the function names.\n */\n function baseFunctions(object, props) {\n return arrayFilter(props, function(key) {\n return isFunction(object[key]);\n });\n }\n\n /**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\n function baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n }\n\n /**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n }\n\n /**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\n function baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n }\n\n /**\n * The base implementation of `_.gt` which doesn't coerce arguments.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than `other`,\n * else `false`.\n */\n function baseGt(value, other) {\n return value > other;\n }\n\n /**\n * The base implementation of `_.has` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\n function baseHas(object, key) {\n return object != null && hasOwnProperty.call(object, key);\n }\n\n /**\n * The base implementation of `_.hasIn` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\n function baseHasIn(object, key) {\n return object != null && key in Object(object);\n }\n\n /**\n * The base implementation of `_.inRange` which doesn't coerce arguments.\n *\n * @private\n * @param {number} number The number to check.\n * @param {number} start The start of the range.\n * @param {number} end The end of the range.\n * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n */\n function baseInRange(number, start, end) {\n return number >= nativeMin(start, end) && number < nativeMax(start, end);\n }\n\n /**\n * The base implementation of methods like `_.intersection`, without support\n * for iteratee shorthands, that accepts an array of arrays to inspect.\n *\n * @private\n * @param {Array} arrays The arrays to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of shared values.\n */\n function baseIntersection(arrays, iteratee, comparator) {\n var includes = comparator ? arrayIncludesWith : arrayIncludes,\n length = arrays[0].length,\n othLength = arrays.length,\n othIndex = othLength,\n caches = Array(othLength),\n maxLength = Infinity,\n result = [];\n\n while (othIndex--) {\n var array = arrays[othIndex];\n if (othIndex && iteratee) {\n array = arrayMap(array, baseUnary(iteratee));\n }\n maxLength = nativeMin(array.length, maxLength);\n caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120))\n ? new SetCache(othIndex && array)\n : undefined;\n }\n array = arrays[0];\n\n var index = -1,\n seen = caches[0];\n\n outer:\n while (++index < length && result.length < maxLength) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (!(seen\n ? cacheHas(seen, computed)\n : includes(result, computed, comparator)\n )) {\n othIndex = othLength;\n while (--othIndex) {\n var cache = caches[othIndex];\n if (!(cache\n ? cacheHas(cache, computed)\n : includes(arrays[othIndex], computed, comparator))\n ) {\n continue outer;\n }\n }\n if (seen) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.invert` and `_.invertBy` which inverts\n * `object` with values transformed by `iteratee` and set by `setter`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform values.\n * @param {Object} accumulator The initial inverted object.\n * @returns {Function} Returns `accumulator`.\n */\n function baseInverter(object, setter, iteratee, accumulator) {\n baseForOwn(object, function(value, key, object) {\n setter(accumulator, iteratee(value), key, object);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.invoke` without support for individual\n * method arguments.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the method to invoke.\n * @param {Array} args The arguments to invoke the method with.\n * @returns {*} Returns the result of the invoked method.\n */\n function baseInvoke(object, path, args) {\n path = castPath(path, object);\n object = parent(object, path);\n var func = object == null ? object : object[toKey(last(path))];\n return func == null ? undefined : apply(func, object, args);\n }\n\n /**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\n function baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n }\n\n /**\n * The base implementation of `_.isArrayBuffer` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n */\n function baseIsArrayBuffer(value) {\n return isObjectLike(value) && baseGetTag(value) == arrayBufferTag;\n }\n\n /**\n * The base implementation of `_.isDate` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n */\n function baseIsDate(value) {\n return isObjectLike(value) && baseGetTag(value) == dateTag;\n }\n\n /**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\n function baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n }\n\n /**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n }\n\n /**\n * The base implementation of `_.isMap` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n */\n function baseIsMap(value) {\n return isObjectLike(value) && getTag(value) == mapTag;\n }\n\n /**\n * The base implementation of `_.isMatch` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Array} matchData The property names, values, and compare flags to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n */\n function baseIsMatch(object, source, matchData, customizer) {\n var index = matchData.length,\n length = index,\n noCustomizer = !customizer;\n\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (index--) {\n var data = matchData[index];\n if ((noCustomizer && data[2])\n ? data[1] !== object[data[0]]\n : !(data[0] in object)\n ) {\n return false;\n }\n }\n while (++index < length) {\n data = matchData[index];\n var key = data[0],\n objValue = object[key],\n srcValue = data[1];\n\n if (noCustomizer && data[2]) {\n if (objValue === undefined && !(key in object)) {\n return false;\n }\n } else {\n var stack = new Stack;\n if (customizer) {\n var result = customizer(objValue, srcValue, key, object, source, stack);\n }\n if (!(result === undefined\n ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)\n : result\n )) {\n return false;\n }\n }\n }\n return true;\n }\n\n /**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\n function baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n }\n\n /**\n * The base implementation of `_.isRegExp` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n */\n function baseIsRegExp(value) {\n return isObjectLike(value) && baseGetTag(value) == regexpTag;\n }\n\n /**\n * The base implementation of `_.isSet` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n */\n function baseIsSet(value) {\n return isObjectLike(value) && getTag(value) == setTag;\n }\n\n /**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\n function baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n }\n\n /**\n * The base implementation of `_.iteratee`.\n *\n * @private\n * @param {*} [value=_.identity] The value to convert to an iteratee.\n * @returns {Function} Returns the iteratee.\n */\n function baseIteratee(value) {\n // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.\n // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.\n if (typeof value == 'function') {\n return value;\n }\n if (value == null) {\n return identity;\n }\n if (typeof value == 'object') {\n return isArray(value)\n ? baseMatchesProperty(value[0], value[1])\n : baseMatches(value);\n }\n return property(value);\n }\n\n /**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.lt` which doesn't coerce arguments.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than `other`,\n * else `false`.\n */\n function baseLt(value, other) {\n return value < other;\n }\n\n /**\n * The base implementation of `_.map` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\n function baseMap(collection, iteratee) {\n var index = -1,\n result = isArrayLike(collection) ? Array(collection.length) : [];\n\n baseEach(collection, function(value, key, collection) {\n result[++index] = iteratee(value, key, collection);\n });\n return result;\n }\n\n /**\n * The base implementation of `_.matches` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property values to match.\n * @returns {Function} Returns the new spec function.\n */\n function baseMatches(source) {\n var matchData = getMatchData(source);\n if (matchData.length == 1 && matchData[0][2]) {\n return matchesStrictComparable(matchData[0][0], matchData[0][1]);\n }\n return function(object) {\n return object === source || baseIsMatch(object, source, matchData);\n };\n }\n\n /**\n * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.\n *\n * @private\n * @param {string} path The path of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\n function baseMatchesProperty(path, srcValue) {\n if (isKey(path) && isStrictComparable(srcValue)) {\n return matchesStrictComparable(toKey(path), srcValue);\n }\n return function(object) {\n var objValue = get(object, path);\n return (objValue === undefined && objValue === srcValue)\n ? hasIn(object, path)\n : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);\n };\n }\n\n /**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\n function baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n }\n\n /**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\n function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n }\n\n /**\n * The base implementation of `_.nth` which doesn't coerce arguments.\n *\n * @private\n * @param {Array} array The array to query.\n * @param {number} n The index of the element to return.\n * @returns {*} Returns the nth element of `array`.\n */\n function baseNth(array, n) {\n var length = array.length;\n if (!length) {\n return;\n }\n n += n < 0 ? length : 0;\n return isIndex(n, length) ? array[n] : undefined;\n }\n\n /**\n * The base implementation of `_.orderBy` without param guards.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.\n * @param {string[]} orders The sort orders of `iteratees`.\n * @returns {Array} Returns the new sorted array.\n */\n function baseOrderBy(collection, iteratees, orders) {\n if (iteratees.length) {\n iteratees = arrayMap(iteratees, function(iteratee) {\n if (isArray(iteratee)) {\n return function(value) {\n return baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee);\n }\n }\n return iteratee;\n });\n } else {\n iteratees = [identity];\n }\n\n var index = -1;\n iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n\n var result = baseMap(collection, function(value, key, collection) {\n var criteria = arrayMap(iteratees, function(iteratee) {\n return iteratee(value);\n });\n return { 'criteria': criteria, 'index': ++index, 'value': value };\n });\n\n return baseSortBy(result, function(object, other) {\n return compareMultiple(object, other, orders);\n });\n }\n\n /**\n * The base implementation of `_.pick` without support for individual\n * property identifiers.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @returns {Object} Returns the new object.\n */\n function basePick(object, paths) {\n return basePickBy(object, paths, function(value, path) {\n return hasIn(object, path);\n });\n }\n\n /**\n * The base implementation of `_.pickBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @param {Function} predicate The function invoked per property.\n * @returns {Object} Returns the new object.\n */\n function basePickBy(object, paths, predicate) {\n var index = -1,\n length = paths.length,\n result = {};\n\n while (++index < length) {\n var path = paths[index],\n value = baseGet(object, path);\n\n if (predicate(value, path)) {\n baseSet(result, castPath(path, object), value);\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `baseProperty` which supports deep paths.\n *\n * @private\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\n function basePropertyDeep(path) {\n return function(object) {\n return baseGet(object, path);\n };\n }\n\n /**\n * The base implementation of `_.pullAllBy` without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns `array`.\n */\n function basePullAll(array, values, iteratee, comparator) {\n var indexOf = comparator ? baseIndexOfWith : baseIndexOf,\n index = -1,\n length = values.length,\n seen = array;\n\n if (array === values) {\n values = copyArray(values);\n }\n if (iteratee) {\n seen = arrayMap(array, baseUnary(iteratee));\n }\n while (++index < length) {\n var fromIndex = 0,\n value = values[index],\n computed = iteratee ? iteratee(value) : value;\n\n while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) {\n if (seen !== array) {\n splice.call(seen, fromIndex, 1);\n }\n splice.call(array, fromIndex, 1);\n }\n }\n return array;\n }\n\n /**\n * The base implementation of `_.pullAt` without support for individual\n * indexes or capturing the removed elements.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {number[]} indexes The indexes of elements to remove.\n * @returns {Array} Returns `array`.\n */\n function basePullAt(array, indexes) {\n var length = array ? indexes.length : 0,\n lastIndex = length - 1;\n\n while (length--) {\n var index = indexes[length];\n if (length == lastIndex || index !== previous) {\n var previous = index;\n if (isIndex(index)) {\n splice.call(array, index, 1);\n } else {\n baseUnset(array, index);\n }\n }\n }\n return array;\n }\n\n /**\n * The base implementation of `_.random` without support for returning\n * floating-point numbers.\n *\n * @private\n * @param {number} lower The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the random number.\n */\n function baseRandom(lower, upper) {\n return lower + nativeFloor(nativeRandom() * (upper - lower + 1));\n }\n\n /**\n * The base implementation of `_.range` and `_.rangeRight` which doesn't\n * coerce arguments.\n *\n * @private\n * @param {number} start The start of the range.\n * @param {number} end The end of the range.\n * @param {number} step The value to increment or decrement by.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Array} Returns the range of numbers.\n */\n function baseRange(start, end, step, fromRight) {\n var index = -1,\n length = nativeMax(nativeCeil((end - start) / (step || 1)), 0),\n result = Array(length);\n\n while (length--) {\n result[fromRight ? length : ++index] = start;\n start += step;\n }\n return result;\n }\n\n /**\n * The base implementation of `_.repeat` which doesn't coerce arguments.\n *\n * @private\n * @param {string} string The string to repeat.\n * @param {number} n The number of times to repeat the string.\n * @returns {string} Returns the repeated string.\n */\n function baseRepeat(string, n) {\n var result = '';\n if (!string || n < 1 || n > MAX_SAFE_INTEGER) {\n return result;\n }\n // Leverage the exponentiation by squaring algorithm for a faster repeat.\n // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.\n do {\n if (n % 2) {\n result += string;\n }\n n = nativeFloor(n / 2);\n if (n) {\n string += string;\n }\n } while (n);\n\n return result;\n }\n\n /**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\n function baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n }\n\n /**\n * The base implementation of `_.sample`.\n *\n * @private\n * @param {Array|Object} collection The collection to sample.\n * @returns {*} Returns the random element.\n */\n function baseSample(collection) {\n return arraySample(values(collection));\n }\n\n /**\n * The base implementation of `_.sampleSize` without param guards.\n *\n * @private\n * @param {Array|Object} collection The collection to sample.\n * @param {number} n The number of elements to sample.\n * @returns {Array} Returns the random elements.\n */\n function baseSampleSize(collection, n) {\n var array = values(collection);\n return shuffleSelf(array, baseClamp(n, 0, array.length));\n }\n\n /**\n * The base implementation of `_.set`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\n function baseSet(object, path, value, customizer) {\n if (!isObject(object)) {\n return object;\n }\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n lastIndex = length - 1,\n nested = object;\n\n while (nested != null && ++index < length) {\n var key = toKey(path[index]),\n newValue = value;\n\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return object;\n }\n\n if (index != lastIndex) {\n var objValue = nested[key];\n newValue = customizer ? customizer(objValue, key, nested) : undefined;\n if (newValue === undefined) {\n newValue = isObject(objValue)\n ? objValue\n : (isIndex(path[index + 1]) ? [] : {});\n }\n }\n assignValue(nested, key, newValue);\n nested = nested[key];\n }\n return object;\n }\n\n /**\n * The base implementation of `setData` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to associate metadata with.\n * @param {*} data The metadata.\n * @returns {Function} Returns `func`.\n */\n var baseSetData = !metaMap ? identity : function(func, data) {\n metaMap.set(func, data);\n return func;\n };\n\n /**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\n var baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n };\n\n /**\n * The base implementation of `_.shuffle`.\n *\n * @private\n * @param {Array|Object} collection The collection to shuffle.\n * @returns {Array} Returns the new shuffled array.\n */\n function baseShuffle(collection) {\n return shuffleSelf(values(collection));\n }\n\n /**\n * The base implementation of `_.slice` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\n function baseSlice(array, start, end) {\n var index = -1,\n length = array.length;\n\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = end > length ? length : end;\n if (end < 0) {\n end += length;\n }\n length = start > end ? 0 : ((end - start) >>> 0);\n start >>>= 0;\n\n var result = Array(length);\n while (++index < length) {\n result[index] = array[index + start];\n }\n return result;\n }\n\n /**\n * The base implementation of `_.some` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\n function baseSome(collection, predicate) {\n var result;\n\n baseEach(collection, function(value, index, collection) {\n result = predicate(value, index, collection);\n return !result;\n });\n return !!result;\n }\n\n /**\n * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which\n * performs a binary search of `array` to determine the index at which `value`\n * should be inserted into `array` in order to maintain its sort order.\n *\n * @private\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {boolean} [retHighest] Specify returning the highest qualified index.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n */\n function baseSortedIndex(array, value, retHighest) {\n var low = 0,\n high = array == null ? low : array.length;\n\n if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) {\n while (low < high) {\n var mid = (low + high) >>> 1,\n computed = array[mid];\n\n if (computed !== null && !isSymbol(computed) &&\n (retHighest ? (computed <= value) : (computed < value))) {\n low = mid + 1;\n } else {\n high = mid;\n }\n }\n return high;\n }\n return baseSortedIndexBy(array, value, identity, retHighest);\n }\n\n /**\n * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy`\n * which invokes `iteratee` for `value` and each element of `array` to compute\n * their sort ranking. The iteratee is invoked with one argument; (value).\n *\n * @private\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} iteratee The iteratee invoked per element.\n * @param {boolean} [retHighest] Specify returning the highest qualified index.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n */\n function baseSortedIndexBy(array, value, iteratee, retHighest) {\n var low = 0,\n high = array == null ? 0 : array.length;\n if (high === 0) {\n return 0;\n }\n\n value = iteratee(value);\n var valIsNaN = value !== value,\n valIsNull = value === null,\n valIsSymbol = isSymbol(value),\n valIsUndefined = value === undefined;\n\n while (low < high) {\n var mid = nativeFloor((low + high) / 2),\n computed = iteratee(array[mid]),\n othIsDefined = computed !== undefined,\n othIsNull = computed === null,\n othIsReflexive = computed === computed,\n othIsSymbol = isSymbol(computed);\n\n if (valIsNaN) {\n var setLow = retHighest || othIsReflexive;\n } else if (valIsUndefined) {\n setLow = othIsReflexive && (retHighest || othIsDefined);\n } else if (valIsNull) {\n setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull);\n } else if (valIsSymbol) {\n setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol);\n } else if (othIsNull || othIsSymbol) {\n setLow = false;\n } else {\n setLow = retHighest ? (computed <= value) : (computed < value);\n }\n if (setLow) {\n low = mid + 1;\n } else {\n high = mid;\n }\n }\n return nativeMin(high, MAX_ARRAY_INDEX);\n }\n\n /**\n * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\n function baseSortedUniq(array, iteratee) {\n var index = -1,\n length = array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n if (!index || !eq(computed, seen)) {\n var seen = computed;\n result[resIndex++] = value === 0 ? 0 : value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.toNumber` which doesn't ensure correct\n * conversions of binary, hexadecimal, or octal string values.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n */\n function baseToNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n return +value;\n }\n\n /**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\n function baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n }\n\n /**\n * The base implementation of `_.uniqBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\n function baseUniq(array, iteratee, comparator) {\n var index = -1,\n includes = arrayIncludes,\n length = array.length,\n isCommon = true,\n result = [],\n seen = result;\n\n if (comparator) {\n isCommon = false;\n includes = arrayIncludesWith;\n }\n else if (length >= LARGE_ARRAY_SIZE) {\n var set = iteratee ? null : createSet(array);\n if (set) {\n return setToArray(set);\n }\n isCommon = false;\n includes = cacheHas;\n seen = new SetCache;\n }\n else {\n seen = iteratee ? [] : result;\n }\n outer:\n while (++index < length) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (isCommon && computed === computed) {\n var seenIndex = seen.length;\n while (seenIndex--) {\n if (seen[seenIndex] === computed) {\n continue outer;\n }\n }\n if (iteratee) {\n seen.push(computed);\n }\n result.push(value);\n }\n else if (!includes(seen, computed, comparator)) {\n if (seen !== result) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.unset`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The property path to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n */\n function baseUnset(object, path) {\n path = castPath(path, object);\n object = parent(object, path);\n return object == null || delete object[toKey(last(path))];\n }\n\n /**\n * The base implementation of `_.update`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to update.\n * @param {Function} updater The function to produce the updated value.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\n function baseUpdate(object, path, updater, customizer) {\n return baseSet(object, path, updater(baseGet(object, path)), customizer);\n }\n\n /**\n * The base implementation of methods like `_.dropWhile` and `_.takeWhile`\n * without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to query.\n * @param {Function} predicate The function invoked per iteration.\n * @param {boolean} [isDrop] Specify dropping elements instead of taking them.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Array} Returns the slice of `array`.\n */\n function baseWhile(array, predicate, isDrop, fromRight) {\n var length = array.length,\n index = fromRight ? length : -1;\n\n while ((fromRight ? index-- : ++index < length) &&\n predicate(array[index], index, array)) {}\n\n return isDrop\n ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length))\n : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index));\n }\n\n /**\n * The base implementation of `wrapperValue` which returns the result of\n * performing a sequence of actions on the unwrapped `value`, where each\n * successive action is supplied the return value of the previous.\n *\n * @private\n * @param {*} value The unwrapped value.\n * @param {Array} actions Actions to perform to resolve the unwrapped value.\n * @returns {*} Returns the resolved value.\n */\n function baseWrapperValue(value, actions) {\n var result = value;\n if (result instanceof LazyWrapper) {\n result = result.value();\n }\n return arrayReduce(actions, function(result, action) {\n return action.func.apply(action.thisArg, arrayPush([result], action.args));\n }, result);\n }\n\n /**\n * The base implementation of methods like `_.xor`, without support for\n * iteratee shorthands, that accepts an array of arrays to inspect.\n *\n * @private\n * @param {Array} arrays The arrays to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of values.\n */\n function baseXor(arrays, iteratee, comparator) {\n var length = arrays.length;\n if (length < 2) {\n return length ? baseUniq(arrays[0]) : [];\n }\n var index = -1,\n result = Array(length);\n\n while (++index < length) {\n var array = arrays[index],\n othIndex = -1;\n\n while (++othIndex < length) {\n if (othIndex != index) {\n result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator);\n }\n }\n }\n return baseUniq(baseFlatten(result, 1), iteratee, comparator);\n }\n\n /**\n * This base implementation of `_.zipObject` which assigns values using `assignFunc`.\n *\n * @private\n * @param {Array} props The property identifiers.\n * @param {Array} values The property values.\n * @param {Function} assignFunc The function to assign values.\n * @returns {Object} Returns the new object.\n */\n function baseZipObject(props, values, assignFunc) {\n var index = -1,\n length = props.length,\n valsLength = values.length,\n result = {};\n\n while (++index < length) {\n var value = index < valsLength ? values[index] : undefined;\n assignFunc(result, props[index], value);\n }\n return result;\n }\n\n /**\n * Casts `value` to an empty array if it's not an array like object.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Array|Object} Returns the cast array-like object.\n */\n function castArrayLikeObject(value) {\n return isArrayLikeObject(value) ? value : [];\n }\n\n /**\n * Casts `value` to `identity` if it's not a function.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Function} Returns cast function.\n */\n function castFunction(value) {\n return typeof value == 'function' ? value : identity;\n }\n\n /**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\n function castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n }\n\n /**\n * A `baseRest` alias which can be replaced with `identity` by module\n * replacement plugins.\n *\n * @private\n * @type {Function}\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\n var castRest = baseRest;\n\n /**\n * Casts `array` to a slice if it's needed.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {number} start The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the cast slice.\n */\n function castSlice(array, start, end) {\n var length = array.length;\n end = end === undefined ? length : end;\n return (!start && end >= length) ? array : baseSlice(array, start, end);\n }\n\n /**\n * A simple wrapper around the global [`clearTimeout`](https://mdn.io/clearTimeout).\n *\n * @private\n * @param {number|Object} id The timer id or timeout object of the timer to clear.\n */\n var clearTimeout = ctxClearTimeout || function(id) {\n return root.clearTimeout(id);\n };\n\n /**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\n function cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n }\n\n /**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\n function cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n }\n\n /**\n * Creates a clone of `dataView`.\n *\n * @private\n * @param {Object} dataView The data view to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned data view.\n */\n function cloneDataView(dataView, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;\n return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);\n }\n\n /**\n * Creates a clone of `regexp`.\n *\n * @private\n * @param {Object} regexp The regexp to clone.\n * @returns {Object} Returns the cloned regexp.\n */\n function cloneRegExp(regexp) {\n var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));\n result.lastIndex = regexp.lastIndex;\n return result;\n }\n\n /**\n * Creates a clone of the `symbol` object.\n *\n * @private\n * @param {Object} symbol The symbol object to clone.\n * @returns {Object} Returns the cloned symbol object.\n */\n function cloneSymbol(symbol) {\n return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};\n }\n\n /**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\n function cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n }\n\n /**\n * Compares values to sort them in ascending order.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {number} Returns the sort order indicator for `value`.\n */\n function compareAscending(value, other) {\n if (value !== other) {\n var valIsDefined = value !== undefined,\n valIsNull = value === null,\n valIsReflexive = value === value,\n valIsSymbol = isSymbol(value);\n\n var othIsDefined = other !== undefined,\n othIsNull = other === null,\n othIsReflexive = other === other,\n othIsSymbol = isSymbol(other);\n\n if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) ||\n (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) ||\n (valIsNull && othIsDefined && othIsReflexive) ||\n (!valIsDefined && othIsReflexive) ||\n !valIsReflexive) {\n return 1;\n }\n if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) ||\n (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) ||\n (othIsNull && valIsDefined && valIsReflexive) ||\n (!othIsDefined && valIsReflexive) ||\n !othIsReflexive) {\n return -1;\n }\n }\n return 0;\n }\n\n /**\n * Used by `_.orderBy` to compare multiple properties of a value to another\n * and stable sort them.\n *\n * If `orders` is unspecified, all values are sorted in ascending order. Otherwise,\n * specify an order of \"desc\" for descending or \"asc\" for ascending sort order\n * of corresponding values.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {boolean[]|string[]} orders The order to sort by for each property.\n * @returns {number} Returns the sort order indicator for `object`.\n */\n function compareMultiple(object, other, orders) {\n var index = -1,\n objCriteria = object.criteria,\n othCriteria = other.criteria,\n length = objCriteria.length,\n ordersLength = orders.length;\n\n while (++index < length) {\n var result = compareAscending(objCriteria[index], othCriteria[index]);\n if (result) {\n if (index >= ordersLength) {\n return result;\n }\n var order = orders[index];\n return result * (order == 'desc' ? -1 : 1);\n }\n }\n // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications\n // that causes it, under certain circumstances, to provide the same value for\n // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247\n // for more details.\n //\n // This also ensures a stable sort in V8 and other engines.\n // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details.\n return object.index - other.index;\n }\n\n /**\n * Creates an array that is the composition of partially applied arguments,\n * placeholders, and provided arguments into a single array of arguments.\n *\n * @private\n * @param {Array} args The provided arguments.\n * @param {Array} partials The arguments to prepend to those provided.\n * @param {Array} holders The `partials` placeholder indexes.\n * @params {boolean} [isCurried] Specify composing for a curried function.\n * @returns {Array} Returns the new array of composed arguments.\n */\n function composeArgs(args, partials, holders, isCurried) {\n var argsIndex = -1,\n argsLength = args.length,\n holdersLength = holders.length,\n leftIndex = -1,\n leftLength = partials.length,\n rangeLength = nativeMax(argsLength - holdersLength, 0),\n result = Array(leftLength + rangeLength),\n isUncurried = !isCurried;\n\n while (++leftIndex < leftLength) {\n result[leftIndex] = partials[leftIndex];\n }\n while (++argsIndex < holdersLength) {\n if (isUncurried || argsIndex < argsLength) {\n result[holders[argsIndex]] = args[argsIndex];\n }\n }\n while (rangeLength--) {\n result[leftIndex++] = args[argsIndex++];\n }\n return result;\n }\n\n /**\n * This function is like `composeArgs` except that the arguments composition\n * is tailored for `_.partialRight`.\n *\n * @private\n * @param {Array} args The provided arguments.\n * @param {Array} partials The arguments to append to those provided.\n * @param {Array} holders The `partials` placeholder indexes.\n * @params {boolean} [isCurried] Specify composing for a curried function.\n * @returns {Array} Returns the new array of composed arguments.\n */\n function composeArgsRight(args, partials, holders, isCurried) {\n var argsIndex = -1,\n argsLength = args.length,\n holdersIndex = -1,\n holdersLength = holders.length,\n rightIndex = -1,\n rightLength = partials.length,\n rangeLength = nativeMax(argsLength - holdersLength, 0),\n result = Array(rangeLength + rightLength),\n isUncurried = !isCurried;\n\n while (++argsIndex < rangeLength) {\n result[argsIndex] = args[argsIndex];\n }\n var offset = argsIndex;\n while (++rightIndex < rightLength) {\n result[offset + rightIndex] = partials[rightIndex];\n }\n while (++holdersIndex < holdersLength) {\n if (isUncurried || argsIndex < argsLength) {\n result[offset + holders[holdersIndex]] = args[argsIndex++];\n }\n }\n return result;\n }\n\n /**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\n function copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n }\n\n /**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\n function copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n }\n\n /**\n * Copies own symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\n function copySymbols(source, object) {\n return copyObject(source, getSymbols(source), object);\n }\n\n /**\n * Copies own and inherited symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\n function copySymbolsIn(source, object) {\n return copyObject(source, getSymbolsIn(source), object);\n }\n\n /**\n * Creates a function like `_.groupBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} [initializer] The accumulator object initializer.\n * @returns {Function} Returns the new aggregator function.\n */\n function createAggregator(setter, initializer) {\n return function(collection, iteratee) {\n var func = isArray(collection) ? arrayAggregator : baseAggregator,\n accumulator = initializer ? initializer() : {};\n\n return func(collection, setter, getIteratee(iteratee, 2), accumulator);\n };\n }\n\n /**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\n function createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n }\n\n /**\n * Creates a `baseEach` or `baseEachRight` function.\n *\n * @private\n * @param {Function} eachFunc The function to iterate over a collection.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\n function createBaseEach(eachFunc, fromRight) {\n return function(collection, iteratee) {\n if (collection == null) {\n return collection;\n }\n if (!isArrayLike(collection)) {\n return eachFunc(collection, iteratee);\n }\n var length = collection.length,\n index = fromRight ? length : -1,\n iterable = Object(collection);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (iteratee(iterable[index], index, iterable) === false) {\n break;\n }\n }\n return collection;\n };\n }\n\n /**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\n function createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with the optional `this`\n * binding of `thisArg`.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createBind(func, bitmask, thisArg) {\n var isBind = bitmask & WRAP_BIND_FLAG,\n Ctor = createCtor(func);\n\n function wrapper() {\n var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n return fn.apply(isBind ? thisArg : this, arguments);\n }\n return wrapper;\n }\n\n /**\n * Creates a function like `_.lowerFirst`.\n *\n * @private\n * @param {string} methodName The name of the `String` case method to use.\n * @returns {Function} Returns the new case function.\n */\n function createCaseFirst(methodName) {\n return function(string) {\n string = toString(string);\n\n var strSymbols = hasUnicode(string)\n ? stringToArray(string)\n : undefined;\n\n var chr = strSymbols\n ? strSymbols[0]\n : string.charAt(0);\n\n var trailing = strSymbols\n ? castSlice(strSymbols, 1).join('')\n : string.slice(1);\n\n return chr[methodName]() + trailing;\n };\n }\n\n /**\n * Creates a function like `_.camelCase`.\n *\n * @private\n * @param {Function} callback The function to combine each word.\n * @returns {Function} Returns the new compounder function.\n */\n function createCompounder(callback) {\n return function(string) {\n return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');\n };\n }\n\n /**\n * Creates a function that produces an instance of `Ctor` regardless of\n * whether it was invoked as part of a `new` expression or by `call` or `apply`.\n *\n * @private\n * @param {Function} Ctor The constructor to wrap.\n * @returns {Function} Returns the new wrapped function.\n */\n function createCtor(Ctor) {\n return function() {\n // Use a `switch` statement to work with class constructors. See\n // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist\n // for more details.\n var args = arguments;\n switch (args.length) {\n case 0: return new Ctor;\n case 1: return new Ctor(args[0]);\n case 2: return new Ctor(args[0], args[1]);\n case 3: return new Ctor(args[0], args[1], args[2]);\n case 4: return new Ctor(args[0], args[1], args[2], args[3]);\n case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]);\n case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]);\n case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);\n }\n var thisBinding = baseCreate(Ctor.prototype),\n result = Ctor.apply(thisBinding, args);\n\n // Mimic the constructor's `return` behavior.\n // See https://es5.github.io/#x13.2.2 for more details.\n return isObject(result) ? result : thisBinding;\n };\n }\n\n /**\n * Creates a function that wraps `func` to enable currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {number} arity The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createCurry(func, bitmask, arity) {\n var Ctor = createCtor(func);\n\n function wrapper() {\n var length = arguments.length,\n args = Array(length),\n index = length,\n placeholder = getHolder(wrapper);\n\n while (index--) {\n args[index] = arguments[index];\n }\n var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder)\n ? []\n : replaceHolders(args, placeholder);\n\n length -= holders.length;\n if (length < arity) {\n return createRecurry(\n func, bitmask, createHybrid, wrapper.placeholder, undefined,\n args, holders, undefined, undefined, arity - length);\n }\n var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n return apply(fn, this, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a `_.find` or `_.findLast` function.\n *\n * @private\n * @param {Function} findIndexFunc The function to find the collection index.\n * @returns {Function} Returns the new find function.\n */\n function createFind(findIndexFunc) {\n return function(collection, predicate, fromIndex) {\n var iterable = Object(collection);\n if (!isArrayLike(collection)) {\n var iteratee = getIteratee(predicate, 3);\n collection = keys(collection);\n predicate = function(key) { return iteratee(iterable[key], key, iterable); };\n }\n var index = findIndexFunc(collection, predicate, fromIndex);\n return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined;\n };\n }\n\n /**\n * Creates a `_.flow` or `_.flowRight` function.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new flow function.\n */\n function createFlow(fromRight) {\n return flatRest(function(funcs) {\n var length = funcs.length,\n index = length,\n prereq = LodashWrapper.prototype.thru;\n\n if (fromRight) {\n funcs.reverse();\n }\n while (index--) {\n var func = funcs[index];\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (prereq && !wrapper && getFuncName(func) == 'wrapper') {\n var wrapper = new LodashWrapper([], true);\n }\n }\n index = wrapper ? index : length;\n while (++index < length) {\n func = funcs[index];\n\n var funcName = getFuncName(func),\n data = funcName == 'wrapper' ? getData(func) : undefined;\n\n if (data && isLaziable(data[0]) &&\n data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) &&\n !data[4].length && data[9] == 1\n ) {\n wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]);\n } else {\n wrapper = (func.length == 1 && isLaziable(func))\n ? wrapper[funcName]()\n : wrapper.thru(func);\n }\n }\n return function() {\n var args = arguments,\n value = args[0];\n\n if (wrapper && args.length == 1 && isArray(value)) {\n return wrapper.plant(value).value();\n }\n var index = 0,\n result = length ? funcs[index].apply(this, args) : value;\n\n while (++index < length) {\n result = funcs[index].call(this, result);\n }\n return result;\n };\n });\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with optional `this`\n * binding of `thisArg`, partial application, and currying.\n *\n * @private\n * @param {Function|string} func The function or method name to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to prepend to those provided to\n * the new function.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [partialsRight] The arguments to append to those provided\n * to the new function.\n * @param {Array} [holdersRight] The `partialsRight` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) {\n var isAry = bitmask & WRAP_ARY_FLAG,\n isBind = bitmask & WRAP_BIND_FLAG,\n isBindKey = bitmask & WRAP_BIND_KEY_FLAG,\n isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG),\n isFlip = bitmask & WRAP_FLIP_FLAG,\n Ctor = isBindKey ? undefined : createCtor(func);\n\n function wrapper() {\n var length = arguments.length,\n args = Array(length),\n index = length;\n\n while (index--) {\n args[index] = arguments[index];\n }\n if (isCurried) {\n var placeholder = getHolder(wrapper),\n holdersCount = countHolders(args, placeholder);\n }\n if (partials) {\n args = composeArgs(args, partials, holders, isCurried);\n }\n if (partialsRight) {\n args = composeArgsRight(args, partialsRight, holdersRight, isCurried);\n }\n length -= holdersCount;\n if (isCurried && length < arity) {\n var newHolders = replaceHolders(args, placeholder);\n return createRecurry(\n func, bitmask, createHybrid, wrapper.placeholder, thisArg,\n args, newHolders, argPos, ary, arity - length\n );\n }\n var thisBinding = isBind ? thisArg : this,\n fn = isBindKey ? thisBinding[func] : func;\n\n length = args.length;\n if (argPos) {\n args = reorder(args, argPos);\n } else if (isFlip && length > 1) {\n args.reverse();\n }\n if (isAry && ary < length) {\n args.length = ary;\n }\n if (this && this !== root && this instanceof wrapper) {\n fn = Ctor || createCtor(fn);\n }\n return fn.apply(thisBinding, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a function like `_.invertBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} toIteratee The function to resolve iteratees.\n * @returns {Function} Returns the new inverter function.\n */\n function createInverter(setter, toIteratee) {\n return function(object, iteratee) {\n return baseInverter(object, setter, toIteratee(iteratee), {});\n };\n }\n\n /**\n * Creates a function that performs a mathematical operation on two values.\n *\n * @private\n * @param {Function} operator The function to perform the operation.\n * @param {number} [defaultValue] The value used for `undefined` arguments.\n * @returns {Function} Returns the new mathematical operation function.\n */\n function createMathOperation(operator, defaultValue) {\n return function(value, other) {\n var result;\n if (value === undefined && other === undefined) {\n return defaultValue;\n }\n if (value !== undefined) {\n result = value;\n }\n if (other !== undefined) {\n if (result === undefined) {\n return other;\n }\n if (typeof value == 'string' || typeof other == 'string') {\n value = baseToString(value);\n other = baseToString(other);\n } else {\n value = baseToNumber(value);\n other = baseToNumber(other);\n }\n result = operator(value, other);\n }\n return result;\n };\n }\n\n /**\n * Creates a function like `_.over`.\n *\n * @private\n * @param {Function} arrayFunc The function to iterate over iteratees.\n * @returns {Function} Returns the new over function.\n */\n function createOver(arrayFunc) {\n return flatRest(function(iteratees) {\n iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n return baseRest(function(args) {\n var thisArg = this;\n return arrayFunc(iteratees, function(iteratee) {\n return apply(iteratee, thisArg, args);\n });\n });\n });\n }\n\n /**\n * Creates the padding for `string` based on `length`. The `chars` string\n * is truncated if the number of characters exceeds `length`.\n *\n * @private\n * @param {number} length The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padding for `string`.\n */\n function createPadding(length, chars) {\n chars = chars === undefined ? ' ' : baseToString(chars);\n\n var charsLength = chars.length;\n if (charsLength < 2) {\n return charsLength ? baseRepeat(chars, length) : chars;\n }\n var result = baseRepeat(chars, nativeCeil(length / stringSize(chars)));\n return hasUnicode(chars)\n ? castSlice(stringToArray(result), 0, length).join('')\n : result.slice(0, length);\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with the `this` binding\n * of `thisArg` and `partials` prepended to the arguments it receives.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} partials The arguments to prepend to those provided to\n * the new function.\n * @returns {Function} Returns the new wrapped function.\n */\n function createPartial(func, bitmask, thisArg, partials) {\n var isBind = bitmask & WRAP_BIND_FLAG,\n Ctor = createCtor(func);\n\n function wrapper() {\n var argsIndex = -1,\n argsLength = arguments.length,\n leftIndex = -1,\n leftLength = partials.length,\n args = Array(leftLength + argsLength),\n fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n\n while (++leftIndex < leftLength) {\n args[leftIndex] = partials[leftIndex];\n }\n while (argsLength--) {\n args[leftIndex++] = arguments[++argsIndex];\n }\n return apply(fn, isBind ? thisArg : this, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a `_.range` or `_.rangeRight` function.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new range function.\n */\n function createRange(fromRight) {\n return function(start, end, step) {\n if (step && typeof step != 'number' && isIterateeCall(start, end, step)) {\n end = step = undefined;\n }\n // Ensure the sign of `-0` is preserved.\n start = toFinite(start);\n if (end === undefined) {\n end = start;\n start = 0;\n } else {\n end = toFinite(end);\n }\n step = step === undefined ? (start < end ? 1 : -1) : toFinite(step);\n return baseRange(start, end, step, fromRight);\n };\n }\n\n /**\n * Creates a function that performs a relational operation on two values.\n *\n * @private\n * @param {Function} operator The function to perform the operation.\n * @returns {Function} Returns the new relational operation function.\n */\n function createRelationalOperation(operator) {\n return function(value, other) {\n if (!(typeof value == 'string' && typeof other == 'string')) {\n value = toNumber(value);\n other = toNumber(other);\n }\n return operator(value, other);\n };\n }\n\n /**\n * Creates a function that wraps `func` to continue currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {Function} wrapFunc The function to create the `func` wrapper.\n * @param {*} placeholder The placeholder value.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to prepend to those provided to\n * the new function.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) {\n var isCurry = bitmask & WRAP_CURRY_FLAG,\n newHolders = isCurry ? holders : undefined,\n newHoldersRight = isCurry ? undefined : holders,\n newPartials = isCurry ? partials : undefined,\n newPartialsRight = isCurry ? undefined : partials;\n\n bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG);\n bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG);\n\n if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) {\n bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG);\n }\n var newData = [\n func, bitmask, thisArg, newPartials, newHolders, newPartialsRight,\n newHoldersRight, argPos, ary, arity\n ];\n\n var result = wrapFunc.apply(undefined, newData);\n if (isLaziable(func)) {\n setData(result, newData);\n }\n result.placeholder = placeholder;\n return setWrapToString(result, func, bitmask);\n }\n\n /**\n * Creates a function like `_.round`.\n *\n * @private\n * @param {string} methodName The name of the `Math` method to use when rounding.\n * @returns {Function} Returns the new round function.\n */\n function createRound(methodName) {\n var func = Math[methodName];\n return function(number, precision) {\n number = toNumber(number);\n precision = precision == null ? 0 : nativeMin(toInteger(precision), 292);\n if (precision && nativeIsFinite(number)) {\n // Shift with exponential notation to avoid floating-point issues.\n // See [MDN](https://mdn.io/round#Examples) for more details.\n var pair = (toString(number) + 'e').split('e'),\n value = func(pair[0] + 'e' + (+pair[1] + precision));\n\n pair = (toString(value) + 'e').split('e');\n return +(pair[0] + 'e' + (+pair[1] - precision));\n }\n return func(number);\n };\n }\n\n /**\n * Creates a set object of `values`.\n *\n * @private\n * @param {Array} values The values to add to the set.\n * @returns {Object} Returns the new set.\n */\n var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) {\n return new Set(values);\n };\n\n /**\n * Creates a `_.toPairs` or `_.toPairsIn` function.\n *\n * @private\n * @param {Function} keysFunc The function to get the keys of a given object.\n * @returns {Function} Returns the new pairs function.\n */\n function createToPairs(keysFunc) {\n return function(object) {\n var tag = getTag(object);\n if (tag == mapTag) {\n return mapToArray(object);\n }\n if (tag == setTag) {\n return setToPairs(object);\n }\n return baseToPairs(object, keysFunc(object));\n };\n }\n\n /**\n * Creates a function that either curries or invokes `func` with optional\n * `this` binding and partially applied arguments.\n *\n * @private\n * @param {Function|string} func The function or method name to wrap.\n * @param {number} bitmask The bitmask flags.\n * 1 - `_.bind`\n * 2 - `_.bindKey`\n * 4 - `_.curry` or `_.curryRight` of a bound function\n * 8 - `_.curry`\n * 16 - `_.curryRight`\n * 32 - `_.partial`\n * 64 - `_.partialRight`\n * 128 - `_.rearg`\n * 256 - `_.ary`\n * 512 - `_.flip`\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to be partially applied.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) {\n var isBindKey = bitmask & WRAP_BIND_KEY_FLAG;\n if (!isBindKey && typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var length = partials ? partials.length : 0;\n if (!length) {\n bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG);\n partials = holders = undefined;\n }\n ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0);\n arity = arity === undefined ? arity : toInteger(arity);\n length -= holders ? holders.length : 0;\n\n if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) {\n var partialsRight = partials,\n holdersRight = holders;\n\n partials = holders = undefined;\n }\n var data = isBindKey ? undefined : getData(func);\n\n var newData = [\n func, bitmask, thisArg, partials, holders, partialsRight, holdersRight,\n argPos, ary, arity\n ];\n\n if (data) {\n mergeData(newData, data);\n }\n func = newData[0];\n bitmask = newData[1];\n thisArg = newData[2];\n partials = newData[3];\n holders = newData[4];\n arity = newData[9] = newData[9] === undefined\n ? (isBindKey ? 0 : func.length)\n : nativeMax(newData[9] - length, 0);\n\n if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) {\n bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG);\n }\n if (!bitmask || bitmask == WRAP_BIND_FLAG) {\n var result = createBind(func, bitmask, thisArg);\n } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) {\n result = createCurry(func, bitmask, arity);\n } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) {\n result = createPartial(func, bitmask, thisArg, partials);\n } else {\n result = createHybrid.apply(undefined, newData);\n }\n var setter = data ? baseSetData : setData;\n return setWrapToString(setter(result, newData), func, bitmask);\n }\n\n /**\n * Used by `_.defaults` to customize its `_.assignIn` use to assign properties\n * of source objects to the destination object for all destination properties\n * that resolve to `undefined`.\n *\n * @private\n * @param {*} objValue The destination value.\n * @param {*} srcValue The source value.\n * @param {string} key The key of the property to assign.\n * @param {Object} object The parent object of `objValue`.\n * @returns {*} Returns the value to assign.\n */\n function customDefaultsAssignIn(objValue, srcValue, key, object) {\n if (objValue === undefined ||\n (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n return srcValue;\n }\n return objValue;\n }\n\n /**\n * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source\n * objects into destination objects that are passed thru.\n *\n * @private\n * @param {*} objValue The destination value.\n * @param {*} srcValue The source value.\n * @param {string} key The key of the property to merge.\n * @param {Object} object The parent object of `objValue`.\n * @param {Object} source The parent object of `srcValue`.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n * @returns {*} Returns the value to assign.\n */\n function customDefaultsMerge(objValue, srcValue, key, object, source, stack) {\n if (isObject(objValue) && isObject(srcValue)) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, objValue);\n baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack);\n stack['delete'](srcValue);\n }\n return objValue;\n }\n\n /**\n * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain\n * objects.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {string} key The key of the property to inspect.\n * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`.\n */\n function customOmitClone(value) {\n return isPlainObject(value) ? undefined : value;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\n function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n }\n\n /**\n * A specialized version of `baseRest` which flattens the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\n function flatRest(func) {\n return setToString(overRest(func, undefined, flatten), func + '');\n }\n\n /**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n }\n\n /**\n * Creates an array of own and inherited enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function getAllKeysIn(object) {\n return baseGetAllKeys(object, keysIn, getSymbolsIn);\n }\n\n /**\n * Gets metadata for `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {*} Returns the metadata for `func`.\n */\n var getData = !metaMap ? noop : function(func) {\n return metaMap.get(func);\n };\n\n /**\n * Gets the name of `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {string} Returns the function name.\n */\n function getFuncName(func) {\n var result = (func.name + ''),\n array = realNames[result],\n length = hasOwnProperty.call(realNames, result) ? array.length : 0;\n\n while (length--) {\n var data = array[length],\n otherFunc = data.func;\n if (otherFunc == null || otherFunc == func) {\n return data.name;\n }\n }\n return result;\n }\n\n /**\n * Gets the argument placeholder value for `func`.\n *\n * @private\n * @param {Function} func The function to inspect.\n * @returns {*} Returns the placeholder value.\n */\n function getHolder(func) {\n var object = hasOwnProperty.call(lodash, 'placeholder') ? lodash : func;\n return object.placeholder;\n }\n\n /**\n * Gets the appropriate \"iteratee\" function. If `_.iteratee` is customized,\n * this function returns the custom method, otherwise it returns `baseIteratee`.\n * If arguments are provided, the chosen function is invoked with them and\n * its result is returned.\n *\n * @private\n * @param {*} [value] The value to convert to an iteratee.\n * @param {number} [arity] The arity of the created iteratee.\n * @returns {Function} Returns the chosen function or its result.\n */\n function getIteratee() {\n var result = lodash.iteratee || iteratee;\n result = result === iteratee ? baseIteratee : result;\n return arguments.length ? result(arguments[0], arguments[1]) : result;\n }\n\n /**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\n function getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n }\n\n /**\n * Gets the property names, values, and compare flags of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the match data of `object`.\n */\n function getMatchData(object) {\n var result = keys(object),\n length = result.length;\n\n while (length--) {\n var key = result[length],\n value = object[key];\n\n result[length] = [key, value, isStrictComparable(value)];\n }\n return result;\n }\n\n /**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\n function getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n }\n\n /**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\n function getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n }\n\n /**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\n var getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n };\n\n /**\n * Creates an array of the own and inherited enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\n var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {\n var result = [];\n while (object) {\n arrayPush(result, getSymbols(object));\n object = getPrototype(object);\n }\n return result;\n };\n\n /**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\n var getTag = baseGetTag;\n\n // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\n if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n }\n\n /**\n * Gets the view, applying any `transforms` to the `start` and `end` positions.\n *\n * @private\n * @param {number} start The start of the view.\n * @param {number} end The end of the view.\n * @param {Array} transforms The transformations to apply to the view.\n * @returns {Object} Returns an object containing the `start` and `end`\n * positions of the view.\n */\n function getView(start, end, transforms) {\n var index = -1,\n length = transforms.length;\n\n while (++index < length) {\n var data = transforms[index],\n size = data.size;\n\n switch (data.type) {\n case 'drop': start += size; break;\n case 'dropRight': end -= size; break;\n case 'take': end = nativeMin(end, start + size); break;\n case 'takeRight': start = nativeMax(start, end - size); break;\n }\n }\n return { 'start': start, 'end': end };\n }\n\n /**\n * Extracts wrapper details from the `source` body comment.\n *\n * @private\n * @param {string} source The source to inspect.\n * @returns {Array} Returns the wrapper details.\n */\n function getWrapDetails(source) {\n var match = source.match(reWrapDetails);\n return match ? match[1].split(reSplitDetails) : [];\n }\n\n /**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\n function hasPath(object, path, hasFunc) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n result = false;\n\n while (++index < length) {\n var key = toKey(path[index]);\n if (!(result = object != null && hasFunc(object, key))) {\n break;\n }\n object = object[key];\n }\n if (result || ++index != length) {\n return result;\n }\n length = object == null ? 0 : object.length;\n return !!length && isLength(length) && isIndex(key, length) &&\n (isArray(object) || isArguments(object));\n }\n\n /**\n * Initializes an array clone.\n *\n * @private\n * @param {Array} array The array to clone.\n * @returns {Array} Returns the initialized clone.\n */\n function initCloneArray(array) {\n var length = array.length,\n result = new array.constructor(length);\n\n // Add properties assigned by `RegExp#exec`.\n if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {\n result.index = array.index;\n result.input = array.input;\n }\n return result;\n }\n\n /**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\n function initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n }\n\n /**\n * Initializes an object clone based on its `toStringTag`.\n *\n * **Note:** This function only supports cloning values with tags of\n * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.\n *\n * @private\n * @param {Object} object The object to clone.\n * @param {string} tag The `toStringTag` of the object to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the initialized clone.\n */\n function initCloneByTag(object, tag, isDeep) {\n var Ctor = object.constructor;\n switch (tag) {\n case arrayBufferTag:\n return cloneArrayBuffer(object);\n\n case boolTag:\n case dateTag:\n return new Ctor(+object);\n\n case dataViewTag:\n return cloneDataView(object, isDeep);\n\n case float32Tag: case float64Tag:\n case int8Tag: case int16Tag: case int32Tag:\n case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:\n return cloneTypedArray(object, isDeep);\n\n case mapTag:\n return new Ctor;\n\n case numberTag:\n case stringTag:\n return new Ctor(object);\n\n case regexpTag:\n return cloneRegExp(object);\n\n case setTag:\n return new Ctor;\n\n case symbolTag:\n return cloneSymbol(object);\n }\n }\n\n /**\n * Inserts wrapper `details` in a comment at the top of the `source` body.\n *\n * @private\n * @param {string} source The source to modify.\n * @returns {Array} details The details to insert.\n * @returns {string} Returns the modified source.\n */\n function insertWrapDetails(source, details) {\n var length = details.length;\n if (!length) {\n return source;\n }\n var lastIndex = length - 1;\n details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex];\n details = details.join(length > 2 ? ', ' : ' ');\n return source.replace(reWrapComment, '{\\n/* [wrapped with ' + details + '] */\\n');\n }\n\n /**\n * Checks if `value` is a flattenable `arguments` object or array.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.\n */\n function isFlattenable(value) {\n return isArray(value) || isArguments(value) ||\n !!(spreadableSymbol && value && value[spreadableSymbol]);\n }\n\n /**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\n function isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n }\n\n /**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\n function isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n }\n\n /**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\n function isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n }\n\n /**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\n function isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n }\n\n /**\n * Checks if `func` has a lazy counterpart.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` has a lazy counterpart,\n * else `false`.\n */\n function isLaziable(func) {\n var funcName = getFuncName(func),\n other = lodash[funcName];\n\n if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) {\n return false;\n }\n if (func === other) {\n return true;\n }\n var data = getData(other);\n return !!data && func === data[0];\n }\n\n /**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\n function isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n }\n\n /**\n * Checks if `func` is capable of being masked.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `func` is maskable, else `false`.\n */\n var isMaskable = coreJsData ? isFunction : stubFalse;\n\n /**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\n function isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n }\n\n /**\n * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` if suitable for strict\n * equality comparisons, else `false`.\n */\n function isStrictComparable(value) {\n return value === value && !isObject(value);\n }\n\n /**\n * A specialized version of `matchesProperty` for source values suitable\n * for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\n function matchesStrictComparable(key, srcValue) {\n return function(object) {\n if (object == null) {\n return false;\n }\n return object[key] === srcValue &&\n (srcValue !== undefined || (key in Object(object)));\n };\n }\n\n /**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\n function memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n }\n\n /**\n * Merges the function metadata of `source` into `data`.\n *\n * Merging metadata reduces the number of wrappers used to invoke a function.\n * This is possible because methods like `_.bind`, `_.curry`, and `_.partial`\n * may be applied regardless of execution order. Methods like `_.ary` and\n * `_.rearg` modify function arguments, making the order in which they are\n * executed important, preventing the merging of metadata. However, we make\n * an exception for a safe combined case where curried functions have `_.ary`\n * and or `_.rearg` applied.\n *\n * @private\n * @param {Array} data The destination metadata.\n * @param {Array} source The source metadata.\n * @returns {Array} Returns `data`.\n */\n function mergeData(data, source) {\n var bitmask = data[1],\n srcBitmask = source[1],\n newBitmask = bitmask | srcBitmask,\n isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG);\n\n var isCombo =\n ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) ||\n ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) ||\n ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG));\n\n // Exit early if metadata can't be merged.\n if (!(isCommon || isCombo)) {\n return data;\n }\n // Use source `thisArg` if available.\n if (srcBitmask & WRAP_BIND_FLAG) {\n data[2] = source[2];\n // Set when currying a bound function.\n newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG;\n }\n // Compose partial arguments.\n var value = source[3];\n if (value) {\n var partials = data[3];\n data[3] = partials ? composeArgs(partials, value, source[4]) : value;\n data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4];\n }\n // Compose partial right arguments.\n value = source[5];\n if (value) {\n partials = data[5];\n data[5] = partials ? composeArgsRight(partials, value, source[6]) : value;\n data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6];\n }\n // Use source `argPos` if available.\n value = source[7];\n if (value) {\n data[7] = value;\n }\n // Use source `ary` if it's smaller.\n if (srcBitmask & WRAP_ARY_FLAG) {\n data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]);\n }\n // Use source `arity` if one is not provided.\n if (data[9] == null) {\n data[9] = source[9];\n }\n // Use source `func` and merge bitmasks.\n data[0] = source[0];\n data[1] = newBitmask;\n\n return data;\n }\n\n /**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\n function objectToString(value) {\n return nativeObjectToString.call(value);\n }\n\n /**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\n function overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n }\n\n /**\n * Gets the parent value at `path` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} path The path to get the parent value of.\n * @returns {*} Returns the parent value.\n */\n function parent(object, path) {\n return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));\n }\n\n /**\n * Reorder `array` according to the specified indexes where the element at\n * the first index is assigned as the first element, the element at\n * the second index is assigned as the second element, and so on.\n *\n * @private\n * @param {Array} array The array to reorder.\n * @param {Array} indexes The arranged array indexes.\n * @returns {Array} Returns `array`.\n */\n function reorder(array, indexes) {\n var arrLength = array.length,\n length = nativeMin(indexes.length, arrLength),\n oldArray = copyArray(array);\n\n while (length--) {\n var index = indexes[length];\n array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined;\n }\n return array;\n }\n\n /**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\n function safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n }\n\n /**\n * Sets metadata for `func`.\n *\n * **Note:** If this function becomes hot, i.e. is invoked a lot in a short\n * period of time, it will trip its breaker and transition to an identity\n * function to avoid garbage collection pauses in V8. See\n * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070)\n * for more details.\n *\n * @private\n * @param {Function} func The function to associate metadata with.\n * @param {*} data The metadata.\n * @returns {Function} Returns `func`.\n */\n var setData = shortOut(baseSetData);\n\n /**\n * A simple wrapper around the global [`setTimeout`](https://mdn.io/setTimeout).\n *\n * @private\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @returns {number|Object} Returns the timer id or timeout object.\n */\n var setTimeout = ctxSetTimeout || function(func, wait) {\n return root.setTimeout(func, wait);\n };\n\n /**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\n var setToString = shortOut(baseSetToString);\n\n /**\n * Sets the `toString` method of `wrapper` to mimic the source of `reference`\n * with wrapper details in a comment at the top of the source body.\n *\n * @private\n * @param {Function} wrapper The function to modify.\n * @param {Function} reference The reference function.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Function} Returns `wrapper`.\n */\n function setWrapToString(wrapper, reference, bitmask) {\n var source = (reference + '');\n return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask)));\n }\n\n /**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\n function shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n }\n\n /**\n * A specialized version of `_.shuffle` which mutates and sets the size of `array`.\n *\n * @private\n * @param {Array} array The array to shuffle.\n * @param {number} [size=array.length] The size of `array`.\n * @returns {Array} Returns `array`.\n */\n function shuffleSelf(array, size) {\n var index = -1,\n length = array.length,\n lastIndex = length - 1;\n\n size = size === undefined ? length : size;\n while (++index < size) {\n var rand = baseRandom(index, lastIndex),\n value = array[rand];\n\n array[rand] = array[index];\n array[index] = value;\n }\n array.length = size;\n return array;\n }\n\n /**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\n var stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n });\n\n /**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\n function toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n }\n\n /**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\n function toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n }\n\n /**\n * Updates wrapper `details` based on `bitmask` flags.\n *\n * @private\n * @returns {Array} details The details to modify.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Array} Returns `details`.\n */\n function updateWrapDetails(details, bitmask) {\n arrayEach(wrapFlags, function(pair) {\n var value = '_.' + pair[0];\n if ((bitmask & pair[1]) && !arrayIncludes(details, value)) {\n details.push(value);\n }\n });\n return details.sort();\n }\n\n /**\n * Creates a clone of `wrapper`.\n *\n * @private\n * @param {Object} wrapper The wrapper to clone.\n * @returns {Object} Returns the cloned wrapper.\n */\n function wrapperClone(wrapper) {\n if (wrapper instanceof LazyWrapper) {\n return wrapper.clone();\n }\n var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__);\n result.__actions__ = copyArray(wrapper.__actions__);\n result.__index__ = wrapper.__index__;\n result.__values__ = wrapper.__values__;\n return result;\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an array of elements split into groups the length of `size`.\n * If `array` can't be split evenly, the final chunk will be the remaining\n * elements.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to process.\n * @param {number} [size=1] The length of each chunk\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the new array of chunks.\n * @example\n *\n * _.chunk(['a', 'b', 'c', 'd'], 2);\n * // => [['a', 'b'], ['c', 'd']]\n *\n * _.chunk(['a', 'b', 'c', 'd'], 3);\n * // => [['a', 'b', 'c'], ['d']]\n */\n function chunk(array, size, guard) {\n if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) {\n size = 1;\n } else {\n size = nativeMax(toInteger(size), 0);\n }\n var length = array == null ? 0 : array.length;\n if (!length || size < 1) {\n return [];\n }\n var index = 0,\n resIndex = 0,\n result = Array(nativeCeil(length / size));\n\n while (index < length) {\n result[resIndex++] = baseSlice(array, index, (index += size));\n }\n return result;\n }\n\n /**\n * Creates an array with all falsey values removed. The values `false`, `null`,\n * `0`, `\"\"`, `undefined`, and `NaN` are falsey.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to compact.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.compact([0, 1, false, 2, '', 3]);\n * // => [1, 2, 3]\n */\n function compact(array) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value) {\n result[resIndex++] = value;\n }\n }\n return result;\n }\n\n /**\n * Creates a new array concatenating `array` with any additional arrays\n * and/or values.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to concatenate.\n * @param {...*} [values] The values to concatenate.\n * @returns {Array} Returns the new concatenated array.\n * @example\n *\n * var array = [1];\n * var other = _.concat(array, 2, [3], [[4]]);\n *\n * console.log(other);\n * // => [1, 2, 3, [4]]\n *\n * console.log(array);\n * // => [1]\n */\n function concat() {\n var length = arguments.length;\n if (!length) {\n return [];\n }\n var args = Array(length - 1),\n array = arguments[0],\n index = length;\n\n while (index--) {\n args[index - 1] = arguments[index];\n }\n return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1));\n }\n\n /**\n * Creates an array of `array` values not included in the other given arrays\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. The order and references of result values are\n * determined by the first array.\n *\n * **Note:** Unlike `_.pullAll`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.without, _.xor\n * @example\n *\n * _.difference([2, 1], [2, 3]);\n * // => [1]\n */\n var difference = baseRest(function(array, values) {\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true))\n : [];\n });\n\n /**\n * This method is like `_.difference` except that it accepts `iteratee` which\n * is invoked for each element of `array` and `values` to generate the criterion\n * by which they're compared. The order and references of result values are\n * determined by the first array. The iteratee is invoked with one argument:\n * (value).\n *\n * **Note:** Unlike `_.pullAllBy`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x');\n * // => [{ 'x': 2 }]\n */\n var differenceBy = baseRest(function(array, values) {\n var iteratee = last(values);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), getIteratee(iteratee, 2))\n : [];\n });\n\n /**\n * This method is like `_.difference` except that it accepts `comparator`\n * which is invoked to compare elements of `array` to `values`. The order and\n * references of result values are determined by the first array. The comparator\n * is invoked with two arguments: (arrVal, othVal).\n *\n * **Note:** Unlike `_.pullAllWith`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n *\n * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual);\n * // => [{ 'x': 2, 'y': 1 }]\n */\n var differenceWith = baseRest(function(array, values) {\n var comparator = last(values);\n if (isArrayLikeObject(comparator)) {\n comparator = undefined;\n }\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator)\n : [];\n });\n\n /**\n * Creates a slice of `array` with `n` elements dropped from the beginning.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to drop.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.drop([1, 2, 3]);\n * // => [2, 3]\n *\n * _.drop([1, 2, 3], 2);\n * // => [3]\n *\n * _.drop([1, 2, 3], 5);\n * // => []\n *\n * _.drop([1, 2, 3], 0);\n * // => [1, 2, 3]\n */\n function drop(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n return baseSlice(array, n < 0 ? 0 : n, length);\n }\n\n /**\n * Creates a slice of `array` with `n` elements dropped from the end.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to drop.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.dropRight([1, 2, 3]);\n * // => [1, 2]\n *\n * _.dropRight([1, 2, 3], 2);\n * // => [1]\n *\n * _.dropRight([1, 2, 3], 5);\n * // => []\n *\n * _.dropRight([1, 2, 3], 0);\n * // => [1, 2, 3]\n */\n function dropRight(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n n = length - n;\n return baseSlice(array, 0, n < 0 ? 0 : n);\n }\n\n /**\n * Creates a slice of `array` excluding elements dropped from the end.\n * Elements are dropped until `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.dropRightWhile(users, function(o) { return !o.active; });\n * // => objects for ['barney']\n *\n * // The `_.matches` iteratee shorthand.\n * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false });\n * // => objects for ['barney', 'fred']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.dropRightWhile(users, ['active', false]);\n * // => objects for ['barney']\n *\n * // The `_.property` iteratee shorthand.\n * _.dropRightWhile(users, 'active');\n * // => objects for ['barney', 'fred', 'pebbles']\n */\n function dropRightWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), true, true)\n : [];\n }\n\n /**\n * Creates a slice of `array` excluding elements dropped from the beginning.\n * Elements are dropped until `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.dropWhile(users, function(o) { return !o.active; });\n * // => objects for ['pebbles']\n *\n * // The `_.matches` iteratee shorthand.\n * _.dropWhile(users, { 'user': 'barney', 'active': false });\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.dropWhile(users, ['active', false]);\n * // => objects for ['pebbles']\n *\n * // The `_.property` iteratee shorthand.\n * _.dropWhile(users, 'active');\n * // => objects for ['barney', 'fred', 'pebbles']\n */\n function dropWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), true)\n : [];\n }\n\n /**\n * Fills elements of `array` with `value` from `start` up to, but not\n * including, `end`.\n *\n * **Note:** This method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 3.2.0\n * @category Array\n * @param {Array} array The array to fill.\n * @param {*} value The value to fill `array` with.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _.fill(array, 'a');\n * console.log(array);\n * // => ['a', 'a', 'a']\n *\n * _.fill(Array(3), 2);\n * // => [2, 2, 2]\n *\n * _.fill([4, 6, 8, 10], '*', 1, 3);\n * // => [4, '*', '*', 10]\n */\n function fill(array, value, start, end) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n if (start && typeof start != 'number' && isIterateeCall(array, value, start)) {\n start = 0;\n end = length;\n }\n return baseFill(array, value, start, end);\n }\n\n /**\n * This method is like `_.find` except that it returns the index of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.findIndex(users, function(o) { return o.user == 'barney'; });\n * // => 0\n *\n * // The `_.matches` iteratee shorthand.\n * _.findIndex(users, { 'user': 'fred', 'active': false });\n * // => 1\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findIndex(users, ['active', false]);\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.findIndex(users, 'active');\n * // => 2\n */\n function findIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseFindIndex(array, getIteratee(predicate, 3), index);\n }\n\n /**\n * This method is like `_.findIndex` except that it iterates over elements\n * of `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; });\n * // => 2\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastIndex(users, { 'user': 'barney', 'active': true });\n * // => 0\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastIndex(users, ['active', false]);\n * // => 2\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastIndex(users, 'active');\n * // => 0\n */\n function findLastIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length - 1;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = fromIndex < 0\n ? nativeMax(length + index, 0)\n : nativeMin(index, length - 1);\n }\n return baseFindIndex(array, getIteratee(predicate, 3), index, true);\n }\n\n /**\n * Flattens `array` a single level deep.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flatten([1, [2, [3, [4]], 5]]);\n * // => [1, 2, [3, [4]], 5]\n */\n function flatten(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, 1) : [];\n }\n\n /**\n * Recursively flattens `array`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flattenDeep([1, [2, [3, [4]], 5]]);\n * // => [1, 2, 3, 4, 5]\n */\n function flattenDeep(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, INFINITY) : [];\n }\n\n /**\n * Recursively flatten `array` up to `depth` times.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @param {number} [depth=1] The maximum recursion depth.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * var array = [1, [2, [3, [4]], 5]];\n *\n * _.flattenDepth(array, 1);\n * // => [1, 2, [3, [4]], 5]\n *\n * _.flattenDepth(array, 2);\n * // => [1, 2, 3, [4], 5]\n */\n function flattenDepth(array, depth) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n depth = depth === undefined ? 1 : toInteger(depth);\n return baseFlatten(array, depth);\n }\n\n /**\n * The inverse of `_.toPairs`; this method returns an object composed\n * from key-value `pairs`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} pairs The key-value pairs.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.fromPairs([['a', 1], ['b', 2]]);\n * // => { 'a': 1, 'b': 2 }\n */\n function fromPairs(pairs) {\n var index = -1,\n length = pairs == null ? 0 : pairs.length,\n result = {};\n\n while (++index < length) {\n var pair = pairs[index];\n result[pair[0]] = pair[1];\n }\n return result;\n }\n\n /**\n * Gets the first element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @alias first\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the first element of `array`.\n * @example\n *\n * _.head([1, 2, 3]);\n * // => 1\n *\n * _.head([]);\n * // => undefined\n */\n function head(array) {\n return (array && array.length) ? array[0] : undefined;\n }\n\n /**\n * Gets the index at which the first occurrence of `value` is found in `array`\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. If `fromIndex` is negative, it's used as the\n * offset from the end of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.indexOf([1, 2, 1, 2], 2);\n * // => 1\n *\n * // Search from the `fromIndex`.\n * _.indexOf([1, 2, 1, 2], 2, 2);\n * // => 3\n */\n function indexOf(array, value, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseIndexOf(array, value, index);\n }\n\n /**\n * Gets all but the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.initial([1, 2, 3]);\n * // => [1, 2]\n */\n function initial(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseSlice(array, 0, -1) : [];\n }\n\n /**\n * Creates an array of unique values that are included in all given arrays\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. The order and references of result values are\n * determined by the first array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * _.intersection([2, 1], [2, 3]);\n * // => [2]\n */\n var intersection = baseRest(function(arrays) {\n var mapped = arrayMap(arrays, castArrayLikeObject);\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped)\n : [];\n });\n\n /**\n * This method is like `_.intersection` except that it accepts `iteratee`\n * which is invoked for each element of each `arrays` to generate the criterion\n * by which they're compared. The order and references of result values are\n * determined by the first array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [2.1]\n *\n * // The `_.property` iteratee shorthand.\n * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }]\n */\n var intersectionBy = baseRest(function(arrays) {\n var iteratee = last(arrays),\n mapped = arrayMap(arrays, castArrayLikeObject);\n\n if (iteratee === last(mapped)) {\n iteratee = undefined;\n } else {\n mapped.pop();\n }\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped, getIteratee(iteratee, 2))\n : [];\n });\n\n /**\n * This method is like `_.intersection` except that it accepts `comparator`\n * which is invoked to compare elements of `arrays`. The order and references\n * of result values are determined by the first array. The comparator is\n * invoked with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.intersectionWith(objects, others, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }]\n */\n var intersectionWith = baseRest(function(arrays) {\n var comparator = last(arrays),\n mapped = arrayMap(arrays, castArrayLikeObject);\n\n comparator = typeof comparator == 'function' ? comparator : undefined;\n if (comparator) {\n mapped.pop();\n }\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped, undefined, comparator)\n : [];\n });\n\n /**\n * Converts all elements in `array` into a string separated by `separator`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to convert.\n * @param {string} [separator=','] The element separator.\n * @returns {string} Returns the joined string.\n * @example\n *\n * _.join(['a', 'b', 'c'], '~');\n * // => 'a~b~c'\n */\n function join(array, separator) {\n return array == null ? '' : nativeJoin.call(array, separator);\n }\n\n /**\n * Gets the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the last element of `array`.\n * @example\n *\n * _.last([1, 2, 3]);\n * // => 3\n */\n function last(array) {\n var length = array == null ? 0 : array.length;\n return length ? array[length - 1] : undefined;\n }\n\n /**\n * This method is like `_.indexOf` except that it iterates over elements of\n * `array` from right to left.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.lastIndexOf([1, 2, 1, 2], 2);\n * // => 3\n *\n * // Search from the `fromIndex`.\n * _.lastIndexOf([1, 2, 1, 2], 2, 2);\n * // => 1\n */\n function lastIndexOf(array, value, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1);\n }\n return value === value\n ? strictLastIndexOf(array, value, index)\n : baseFindIndex(array, baseIsNaN, index, true);\n }\n\n /**\n * Gets the element at index `n` of `array`. If `n` is negative, the nth\n * element from the end is returned.\n *\n * @static\n * @memberOf _\n * @since 4.11.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=0] The index of the element to return.\n * @returns {*} Returns the nth element of `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'd'];\n *\n * _.nth(array, 1);\n * // => 'b'\n *\n * _.nth(array, -2);\n * // => 'c';\n */\n function nth(array, n) {\n return (array && array.length) ? baseNth(array, toInteger(n)) : undefined;\n }\n\n /**\n * Removes all given values from `array` using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * **Note:** Unlike `_.without`, this method mutates `array`. Use `_.remove`\n * to remove elements from an array by predicate.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {...*} [values] The values to remove.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n *\n * _.pull(array, 'a', 'c');\n * console.log(array);\n * // => ['b', 'b']\n */\n var pull = baseRest(pullAll);\n\n /**\n * This method is like `_.pull` except that it accepts an array of values to remove.\n *\n * **Note:** Unlike `_.difference`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n *\n * _.pullAll(array, ['a', 'c']);\n * console.log(array);\n * // => ['b', 'b']\n */\n function pullAll(array, values) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values)\n : array;\n }\n\n /**\n * This method is like `_.pullAll` except that it accepts `iteratee` which is\n * invoked for each element of `array` and `values` to generate the criterion\n * by which they're compared. The iteratee is invoked with one argument: (value).\n *\n * **Note:** Unlike `_.differenceBy`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }];\n *\n * _.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x');\n * console.log(array);\n * // => [{ 'x': 2 }]\n */\n function pullAllBy(array, values, iteratee) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values, getIteratee(iteratee, 2))\n : array;\n }\n\n /**\n * This method is like `_.pullAll` except that it accepts `comparator` which\n * is invoked to compare elements of `array` to `values`. The comparator is\n * invoked with two arguments: (arrVal, othVal).\n *\n * **Note:** Unlike `_.differenceWith`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [{ 'x': 1, 'y': 2 }, { 'x': 3, 'y': 4 }, { 'x': 5, 'y': 6 }];\n *\n * _.pullAllWith(array, [{ 'x': 3, 'y': 4 }], _.isEqual);\n * console.log(array);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 5, 'y': 6 }]\n */\n function pullAllWith(array, values, comparator) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values, undefined, comparator)\n : array;\n }\n\n /**\n * Removes elements from `array` corresponding to `indexes` and returns an\n * array of removed elements.\n *\n * **Note:** Unlike `_.at`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {...(number|number[])} [indexes] The indexes of elements to remove.\n * @returns {Array} Returns the new array of removed elements.\n * @example\n *\n * var array = ['a', 'b', 'c', 'd'];\n * var pulled = _.pullAt(array, [1, 3]);\n *\n * console.log(array);\n * // => ['a', 'c']\n *\n * console.log(pulled);\n * // => ['b', 'd']\n */\n var pullAt = flatRest(function(array, indexes) {\n var length = array == null ? 0 : array.length,\n result = baseAt(array, indexes);\n\n basePullAt(array, arrayMap(indexes, function(index) {\n return isIndex(index, length) ? +index : index;\n }).sort(compareAscending));\n\n return result;\n });\n\n /**\n * Removes all elements from `array` that `predicate` returns truthy for\n * and returns an array of the removed elements. The predicate is invoked\n * with three arguments: (value, index, array).\n *\n * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull`\n * to pull elements from an array by value.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new array of removed elements.\n * @example\n *\n * var array = [1, 2, 3, 4];\n * var evens = _.remove(array, function(n) {\n * return n % 2 == 0;\n * });\n *\n * console.log(array);\n * // => [1, 3]\n *\n * console.log(evens);\n * // => [2, 4]\n */\n function remove(array, predicate) {\n var result = [];\n if (!(array && array.length)) {\n return result;\n }\n var index = -1,\n indexes = [],\n length = array.length;\n\n predicate = getIteratee(predicate, 3);\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result.push(value);\n indexes.push(index);\n }\n }\n basePullAt(array, indexes);\n return result;\n }\n\n /**\n * Reverses `array` so that the first element becomes the last, the second\n * element becomes the second to last, and so on.\n *\n * **Note:** This method mutates `array` and is based on\n * [`Array#reverse`](https://mdn.io/Array/reverse).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _.reverse(array);\n * // => [3, 2, 1]\n *\n * console.log(array);\n * // => [3, 2, 1]\n */\n function reverse(array) {\n return array == null ? array : nativeReverse.call(array);\n }\n\n /**\n * Creates a slice of `array` from `start` up to, but not including, `end`.\n *\n * **Note:** This method is used instead of\n * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are\n * returned.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\n function slice(array, start, end) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n if (end && typeof end != 'number' && isIterateeCall(array, start, end)) {\n start = 0;\n end = length;\n }\n else {\n start = start == null ? 0 : toInteger(start);\n end = end === undefined ? length : toInteger(end);\n }\n return baseSlice(array, start, end);\n }\n\n /**\n * Uses a binary search to determine the lowest index at which `value`\n * should be inserted into `array` in order to maintain its sort order.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * _.sortedIndex([30, 50], 40);\n * // => 1\n */\n function sortedIndex(array, value) {\n return baseSortedIndex(array, value);\n }\n\n /**\n * This method is like `_.sortedIndex` except that it accepts `iteratee`\n * which is invoked for `value` and each element of `array` to compute their\n * sort ranking. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * var objects = [{ 'x': 4 }, { 'x': 5 }];\n *\n * _.sortedIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.sortedIndexBy(objects, { 'x': 4 }, 'x');\n * // => 0\n */\n function sortedIndexBy(array, value, iteratee) {\n return baseSortedIndexBy(array, value, getIteratee(iteratee, 2));\n }\n\n /**\n * This method is like `_.indexOf` except that it performs a binary\n * search on a sorted `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.sortedIndexOf([4, 5, 5, 5, 6], 5);\n * // => 1\n */\n function sortedIndexOf(array, value) {\n var length = array == null ? 0 : array.length;\n if (length) {\n var index = baseSortedIndex(array, value);\n if (index < length && eq(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * This method is like `_.sortedIndex` except that it returns the highest\n * index at which `value` should be inserted into `array` in order to\n * maintain its sort order.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * _.sortedLastIndex([4, 5, 5, 5, 6], 5);\n * // => 4\n */\n function sortedLastIndex(array, value) {\n return baseSortedIndex(array, value, true);\n }\n\n /**\n * This method is like `_.sortedLastIndex` except that it accepts `iteratee`\n * which is invoked for `value` and each element of `array` to compute their\n * sort ranking. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * var objects = [{ 'x': 4 }, { 'x': 5 }];\n *\n * _.sortedLastIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n * // => 1\n *\n * // The `_.property` iteratee shorthand.\n * _.sortedLastIndexBy(objects, { 'x': 4 }, 'x');\n * // => 1\n */\n function sortedLastIndexBy(array, value, iteratee) {\n return baseSortedIndexBy(array, value, getIteratee(iteratee, 2), true);\n }\n\n /**\n * This method is like `_.lastIndexOf` except that it performs a binary\n * search on a sorted `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.sortedLastIndexOf([4, 5, 5, 5, 6], 5);\n * // => 3\n */\n function sortedLastIndexOf(array, value) {\n var length = array == null ? 0 : array.length;\n if (length) {\n var index = baseSortedIndex(array, value, true) - 1;\n if (eq(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * This method is like `_.uniq` except that it's designed and optimized\n * for sorted arrays.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.sortedUniq([1, 1, 2]);\n * // => [1, 2]\n */\n function sortedUniq(array) {\n return (array && array.length)\n ? baseSortedUniq(array)\n : [];\n }\n\n /**\n * This method is like `_.uniqBy` except that it's designed and optimized\n * for sorted arrays.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor);\n * // => [1.1, 2.3]\n */\n function sortedUniqBy(array, iteratee) {\n return (array && array.length)\n ? baseSortedUniq(array, getIteratee(iteratee, 2))\n : [];\n }\n\n /**\n * Gets all but the first element of `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.tail([1, 2, 3]);\n * // => [2, 3]\n */\n function tail(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseSlice(array, 1, length) : [];\n }\n\n /**\n * Creates a slice of `array` with `n` elements taken from the beginning.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to take.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.take([1, 2, 3]);\n * // => [1]\n *\n * _.take([1, 2, 3], 2);\n * // => [1, 2]\n *\n * _.take([1, 2, 3], 5);\n * // => [1, 2, 3]\n *\n * _.take([1, 2, 3], 0);\n * // => []\n */\n function take(array, n, guard) {\n if (!(array && array.length)) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n return baseSlice(array, 0, n < 0 ? 0 : n);\n }\n\n /**\n * Creates a slice of `array` with `n` elements taken from the end.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to take.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.takeRight([1, 2, 3]);\n * // => [3]\n *\n * _.takeRight([1, 2, 3], 2);\n * // => [2, 3]\n *\n * _.takeRight([1, 2, 3], 5);\n * // => [1, 2, 3]\n *\n * _.takeRight([1, 2, 3], 0);\n * // => []\n */\n function takeRight(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n n = length - n;\n return baseSlice(array, n < 0 ? 0 : n, length);\n }\n\n /**\n * Creates a slice of `array` with elements taken from the end. Elements are\n * taken until `predicate` returns falsey. The predicate is invoked with\n * three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.takeRightWhile(users, function(o) { return !o.active; });\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.matches` iteratee shorthand.\n * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false });\n * // => objects for ['pebbles']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.takeRightWhile(users, ['active', false]);\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.property` iteratee shorthand.\n * _.takeRightWhile(users, 'active');\n * // => []\n */\n function takeRightWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), false, true)\n : [];\n }\n\n /**\n * Creates a slice of `array` with elements taken from the beginning. Elements\n * are taken until `predicate` returns falsey. The predicate is invoked with\n * three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.takeWhile(users, function(o) { return !o.active; });\n * // => objects for ['barney', 'fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.takeWhile(users, { 'user': 'barney', 'active': false });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.takeWhile(users, ['active', false]);\n * // => objects for ['barney', 'fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.takeWhile(users, 'active');\n * // => []\n */\n function takeWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3))\n : [];\n }\n\n /**\n * Creates an array of unique values, in order, from all given arrays using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * _.union([2], [1, 2]);\n * // => [2, 1]\n */\n var union = baseRest(function(arrays) {\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true));\n });\n\n /**\n * This method is like `_.union` except that it accepts `iteratee` which is\n * invoked for each element of each `arrays` to generate the criterion by\n * which uniqueness is computed. Result values are chosen from the first\n * array in which the value occurs. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * _.unionBy([2.1], [1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\n var unionBy = baseRest(function(arrays) {\n var iteratee = last(arrays);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee, 2));\n });\n\n /**\n * This method is like `_.union` except that it accepts `comparator` which\n * is invoked to compare elements of `arrays`. Result values are chosen from\n * the first array in which the value occurs. The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.unionWith(objects, others, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n */\n var unionWith = baseRest(function(arrays) {\n var comparator = last(arrays);\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined, comparator);\n });\n\n /**\n * Creates a duplicate-free version of an array, using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons, in which only the first occurrence of each element\n * is kept. The order of result values is determined by the order they occur\n * in the array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniq([2, 1, 2]);\n * // => [2, 1]\n */\n function uniq(array) {\n return (array && array.length) ? baseUniq(array) : [];\n }\n\n /**\n * This method is like `_.uniq` except that it accepts `iteratee` which is\n * invoked for each element in `array` to generate the criterion by which\n * uniqueness is computed. The order of result values is determined by the\n * order they occur in the array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniqBy([2.1, 1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\n function uniqBy(array, iteratee) {\n return (array && array.length) ? baseUniq(array, getIteratee(iteratee, 2)) : [];\n }\n\n /**\n * This method is like `_.uniq` except that it accepts `comparator` which\n * is invoked to compare elements of `array`. The order of result values is\n * determined by the order they occur in the array.The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.uniqWith(objects, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]\n */\n function uniqWith(array, comparator) {\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return (array && array.length) ? baseUniq(array, undefined, comparator) : [];\n }\n\n /**\n * This method is like `_.zip` except that it accepts an array of grouped\n * elements and creates an array regrouping the elements to their pre-zip\n * configuration.\n *\n * @static\n * @memberOf _\n * @since 1.2.0\n * @category Array\n * @param {Array} array The array of grouped elements to process.\n * @returns {Array} Returns the new array of regrouped elements.\n * @example\n *\n * var zipped = _.zip(['a', 'b'], [1, 2], [true, false]);\n * // => [['a', 1, true], ['b', 2, false]]\n *\n * _.unzip(zipped);\n * // => [['a', 'b'], [1, 2], [true, false]]\n */\n function unzip(array) {\n if (!(array && array.length)) {\n return [];\n }\n var length = 0;\n array = arrayFilter(array, function(group) {\n if (isArrayLikeObject(group)) {\n length = nativeMax(group.length, length);\n return true;\n }\n });\n return baseTimes(length, function(index) {\n return arrayMap(array, baseProperty(index));\n });\n }\n\n /**\n * This method is like `_.unzip` except that it accepts `iteratee` to specify\n * how regrouped values should be combined. The iteratee is invoked with the\n * elements of each group: (...group).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Array\n * @param {Array} array The array of grouped elements to process.\n * @param {Function} [iteratee=_.identity] The function to combine\n * regrouped values.\n * @returns {Array} Returns the new array of regrouped elements.\n * @example\n *\n * var zipped = _.zip([1, 2], [10, 20], [100, 200]);\n * // => [[1, 10, 100], [2, 20, 200]]\n *\n * _.unzipWith(zipped, _.add);\n * // => [3, 30, 300]\n */\n function unzipWith(array, iteratee) {\n if (!(array && array.length)) {\n return [];\n }\n var result = unzip(array);\n if (iteratee == null) {\n return result;\n }\n return arrayMap(result, function(group) {\n return apply(iteratee, undefined, group);\n });\n }\n\n /**\n * Creates an array excluding all given values using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * **Note:** Unlike `_.pull`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...*} [values] The values to exclude.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.difference, _.xor\n * @example\n *\n * _.without([2, 1, 2, 3], 1, 2);\n * // => [3]\n */\n var without = baseRest(function(array, values) {\n return isArrayLikeObject(array)\n ? baseDifference(array, values)\n : [];\n });\n\n /**\n * Creates an array of unique values that is the\n * [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference)\n * of the given arrays. The order of result values is determined by the order\n * they occur in the arrays.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.difference, _.without\n * @example\n *\n * _.xor([2, 1], [2, 3]);\n * // => [1, 3]\n */\n var xor = baseRest(function(arrays) {\n return baseXor(arrayFilter(arrays, isArrayLikeObject));\n });\n\n /**\n * This method is like `_.xor` except that it accepts `iteratee` which is\n * invoked for each element of each `arrays` to generate the criterion by\n * which by which they're compared. The order of result values is determined\n * by the order they occur in the arrays. The iteratee is invoked with one\n * argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.xorBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [1.2, 3.4]\n *\n * // The `_.property` iteratee shorthand.\n * _.xorBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 2 }]\n */\n var xorBy = baseRest(function(arrays) {\n var iteratee = last(arrays);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee, 2));\n });\n\n /**\n * This method is like `_.xor` except that it accepts `comparator` which is\n * invoked to compare elements of `arrays`. The order of result values is\n * determined by the order they occur in the arrays. The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.xorWith(objects, others, _.isEqual);\n * // => [{ 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n */\n var xorWith = baseRest(function(arrays) {\n var comparator = last(arrays);\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined, comparator);\n });\n\n /**\n * Creates an array of grouped elements, the first of which contains the\n * first elements of the given arrays, the second of which contains the\n * second elements of the given arrays, and so on.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to process.\n * @returns {Array} Returns the new array of grouped elements.\n * @example\n *\n * _.zip(['a', 'b'], [1, 2], [true, false]);\n * // => [['a', 1, true], ['b', 2, false]]\n */\n var zip = baseRest(unzip);\n\n /**\n * This method is like `_.fromPairs` except that it accepts two arrays,\n * one of property identifiers and one of corresponding values.\n *\n * @static\n * @memberOf _\n * @since 0.4.0\n * @category Array\n * @param {Array} [props=[]] The property identifiers.\n * @param {Array} [values=[]] The property values.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.zipObject(['a', 'b'], [1, 2]);\n * // => { 'a': 1, 'b': 2 }\n */\n function zipObject(props, values) {\n return baseZipObject(props || [], values || [], assignValue);\n }\n\n /**\n * This method is like `_.zipObject` except that it supports property paths.\n *\n * @static\n * @memberOf _\n * @since 4.1.0\n * @category Array\n * @param {Array} [props=[]] The property identifiers.\n * @param {Array} [values=[]] The property values.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.zipObjectDeep(['a.b[0].c', 'a.b[1].d'], [1, 2]);\n * // => { 'a': { 'b': [{ 'c': 1 }, { 'd': 2 }] } }\n */\n function zipObjectDeep(props, values) {\n return baseZipObject(props || [], values || [], baseSet);\n }\n\n /**\n * This method is like `_.zip` except that it accepts `iteratee` to specify\n * how grouped values should be combined. The iteratee is invoked with the\n * elements of each group: (...group).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Array\n * @param {...Array} [arrays] The arrays to process.\n * @param {Function} [iteratee=_.identity] The function to combine\n * grouped values.\n * @returns {Array} Returns the new array of grouped elements.\n * @example\n *\n * _.zipWith([1, 2], [10, 20], [100, 200], function(a, b, c) {\n * return a + b + c;\n * });\n * // => [111, 222]\n */\n var zipWith = baseRest(function(arrays) {\n var length = arrays.length,\n iteratee = length > 1 ? arrays[length - 1] : undefined;\n\n iteratee = typeof iteratee == 'function' ? (arrays.pop(), iteratee) : undefined;\n return unzipWith(arrays, iteratee);\n });\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a `lodash` wrapper instance that wraps `value` with explicit method\n * chain sequences enabled. The result of such sequences must be unwrapped\n * with `_#value`.\n *\n * @static\n * @memberOf _\n * @since 1.3.0\n * @category Seq\n * @param {*} value The value to wrap.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 40 },\n * { 'user': 'pebbles', 'age': 1 }\n * ];\n *\n * var youngest = _\n * .chain(users)\n * .sortBy('age')\n * .map(function(o) {\n * return o.user + ' is ' + o.age;\n * })\n * .head()\n * .value();\n * // => 'pebbles is 1'\n */\n function chain(value) {\n var result = lodash(value);\n result.__chain__ = true;\n return result;\n }\n\n /**\n * This method invokes `interceptor` and returns `value`. The interceptor\n * is invoked with one argument; (value). The purpose of this method is to\n * \"tap into\" a method chain sequence in order to modify intermediate results.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @param {*} value The value to provide to `interceptor`.\n * @param {Function} interceptor The function to invoke.\n * @returns {*} Returns `value`.\n * @example\n *\n * _([1, 2, 3])\n * .tap(function(array) {\n * // Mutate input array.\n * array.pop();\n * })\n * .reverse()\n * .value();\n * // => [2, 1]\n */\n function tap(value, interceptor) {\n interceptor(value);\n return value;\n }\n\n /**\n * This method is like `_.tap` except that it returns the result of `interceptor`.\n * The purpose of this method is to \"pass thru\" values replacing intermediate\n * results in a method chain sequence.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Seq\n * @param {*} value The value to provide to `interceptor`.\n * @param {Function} interceptor The function to invoke.\n * @returns {*} Returns the result of `interceptor`.\n * @example\n *\n * _(' abc ')\n * .chain()\n * .trim()\n * .thru(function(value) {\n * return [value];\n * })\n * .value();\n * // => ['abc']\n */\n function thru(value, interceptor) {\n return interceptor(value);\n }\n\n /**\n * This method is the wrapper version of `_.at`.\n *\n * @name at\n * @memberOf _\n * @since 1.0.0\n * @category Seq\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n *\n * _(object).at(['a[0].b.c', 'a[1]']).value();\n * // => [3, 4]\n */\n var wrapperAt = flatRest(function(paths) {\n var length = paths.length,\n start = length ? paths[0] : 0,\n value = this.__wrapped__,\n interceptor = function(object) { return baseAt(object, paths); };\n\n if (length > 1 || this.__actions__.length ||\n !(value instanceof LazyWrapper) || !isIndex(start)) {\n return this.thru(interceptor);\n }\n value = value.slice(start, +start + (length ? 1 : 0));\n value.__actions__.push({\n 'func': thru,\n 'args': [interceptor],\n 'thisArg': undefined\n });\n return new LodashWrapper(value, this.__chain__).thru(function(array) {\n if (length && !array.length) {\n array.push(undefined);\n }\n return array;\n });\n });\n\n /**\n * Creates a `lodash` wrapper instance with explicit method chain sequences enabled.\n *\n * @name chain\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 40 }\n * ];\n *\n * // A sequence without explicit chaining.\n * _(users).head();\n * // => { 'user': 'barney', 'age': 36 }\n *\n * // A sequence with explicit chaining.\n * _(users)\n * .chain()\n * .head()\n * .pick('user')\n * .value();\n * // => { 'user': 'barney' }\n */\n function wrapperChain() {\n return chain(this);\n }\n\n /**\n * Executes the chain sequence and returns the wrapped result.\n *\n * @name commit\n * @memberOf _\n * @since 3.2.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var array = [1, 2];\n * var wrapped = _(array).push(3);\n *\n * console.log(array);\n * // => [1, 2]\n *\n * wrapped = wrapped.commit();\n * console.log(array);\n * // => [1, 2, 3]\n *\n * wrapped.last();\n * // => 3\n *\n * console.log(array);\n * // => [1, 2, 3]\n */\n function wrapperCommit() {\n return new LodashWrapper(this.value(), this.__chain__);\n }\n\n /**\n * Gets the next value on a wrapped object following the\n * [iterator protocol](https://mdn.io/iteration_protocols#iterator).\n *\n * @name next\n * @memberOf _\n * @since 4.0.0\n * @category Seq\n * @returns {Object} Returns the next iterator value.\n * @example\n *\n * var wrapped = _([1, 2]);\n *\n * wrapped.next();\n * // => { 'done': false, 'value': 1 }\n *\n * wrapped.next();\n * // => { 'done': false, 'value': 2 }\n *\n * wrapped.next();\n * // => { 'done': true, 'value': undefined }\n */\n function wrapperNext() {\n if (this.__values__ === undefined) {\n this.__values__ = toArray(this.value());\n }\n var done = this.__index__ >= this.__values__.length,\n value = done ? undefined : this.__values__[this.__index__++];\n\n return { 'done': done, 'value': value };\n }\n\n /**\n * Enables the wrapper to be iterable.\n *\n * @name Symbol.iterator\n * @memberOf _\n * @since 4.0.0\n * @category Seq\n * @returns {Object} Returns the wrapper object.\n * @example\n *\n * var wrapped = _([1, 2]);\n *\n * wrapped[Symbol.iterator]() === wrapped;\n * // => true\n *\n * Array.from(wrapped);\n * // => [1, 2]\n */\n function wrapperToIterator() {\n return this;\n }\n\n /**\n * Creates a clone of the chain sequence planting `value` as the wrapped value.\n *\n * @name plant\n * @memberOf _\n * @since 3.2.0\n * @category Seq\n * @param {*} value The value to plant.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var wrapped = _([1, 2]).map(square);\n * var other = wrapped.plant([3, 4]);\n *\n * other.value();\n * // => [9, 16]\n *\n * wrapped.value();\n * // => [1, 4]\n */\n function wrapperPlant(value) {\n var result,\n parent = this;\n\n while (parent instanceof baseLodash) {\n var clone = wrapperClone(parent);\n clone.__index__ = 0;\n clone.__values__ = undefined;\n if (result) {\n previous.__wrapped__ = clone;\n } else {\n result = clone;\n }\n var previous = clone;\n parent = parent.__wrapped__;\n }\n previous.__wrapped__ = value;\n return result;\n }\n\n /**\n * This method is the wrapper version of `_.reverse`.\n *\n * **Note:** This method mutates the wrapped array.\n *\n * @name reverse\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _(array).reverse().value()\n * // => [3, 2, 1]\n *\n * console.log(array);\n * // => [3, 2, 1]\n */\n function wrapperReverse() {\n var value = this.__wrapped__;\n if (value instanceof LazyWrapper) {\n var wrapped = value;\n if (this.__actions__.length) {\n wrapped = new LazyWrapper(this);\n }\n wrapped = wrapped.reverse();\n wrapped.__actions__.push({\n 'func': thru,\n 'args': [reverse],\n 'thisArg': undefined\n });\n return new LodashWrapper(wrapped, this.__chain__);\n }\n return this.thru(reverse);\n }\n\n /**\n * Executes the chain sequence to resolve the unwrapped value.\n *\n * @name value\n * @memberOf _\n * @since 0.1.0\n * @alias toJSON, valueOf\n * @category Seq\n * @returns {*} Returns the resolved unwrapped value.\n * @example\n *\n * _([1, 2, 3]).value();\n * // => [1, 2, 3]\n */\n function wrapperValue() {\n return baseWrapperValue(this.__wrapped__, this.__actions__);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The corresponding value of\n * each key is the number of times the key was returned by `iteratee`. The\n * iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.countBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': 1, '6': 2 }\n *\n * // The `_.property` iteratee shorthand.\n * _.countBy(['one', 'two', 'three'], 'length');\n * // => { '3': 2, '5': 1 }\n */\n var countBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n ++result[key];\n } else {\n baseAssignValue(result, key, 1);\n }\n });\n\n /**\n * Checks if `predicate` returns truthy for **all** elements of `collection`.\n * Iteration is stopped once `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index|key, collection).\n *\n * **Note:** This method returns `true` for\n * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because\n * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of\n * elements of empty collections.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`.\n * @example\n *\n * _.every([true, 1, null, 'yes'], Boolean);\n * // => false\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * // The `_.matches` iteratee shorthand.\n * _.every(users, { 'user': 'barney', 'active': false });\n * // => false\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.every(users, ['active', false]);\n * // => true\n *\n * // The `_.property` iteratee shorthand.\n * _.every(users, 'active');\n * // => false\n */\n function every(collection, predicate, guard) {\n var func = isArray(collection) ? arrayEvery : baseEvery;\n if (guard && isIterateeCall(collection, predicate, guard)) {\n predicate = undefined;\n }\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Iterates over elements of `collection`, returning an array of all elements\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * **Note:** Unlike `_.remove`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.reject\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * _.filter(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.filter(users, { 'age': 36, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.filter(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.filter(users, 'active');\n * // => objects for ['barney']\n *\n * // Combining several predicates using `_.overEvery` or `_.overSome`.\n * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]]));\n * // => objects for ['fred', 'barney']\n */\n function filter(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Iterates over elements of `collection`, returning the first element\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false },\n * { 'user': 'pebbles', 'age': 1, 'active': true }\n * ];\n *\n * _.find(users, function(o) { return o.age < 40; });\n * // => object for 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.find(users, { 'age': 1, 'active': true });\n * // => object for 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.find(users, ['active', false]);\n * // => object for 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.find(users, 'active');\n * // => object for 'barney'\n */\n var find = createFind(findIndex);\n\n /**\n * This method is like `_.find` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=collection.length-1] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * _.findLast([1, 2, 3, 4], function(n) {\n * return n % 2 == 1;\n * });\n * // => 3\n */\n var findLast = createFind(findLastIndex);\n\n /**\n * Creates a flattened array of values by running each element in `collection`\n * thru `iteratee` and flattening the mapped results. The iteratee is invoked\n * with three arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [n, n];\n * }\n *\n * _.flatMap([1, 2], duplicate);\n * // => [1, 1, 2, 2]\n */\n function flatMap(collection, iteratee) {\n return baseFlatten(map(collection, iteratee), 1);\n }\n\n /**\n * This method is like `_.flatMap` except that it recursively flattens the\n * mapped results.\n *\n * @static\n * @memberOf _\n * @since 4.7.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [[[n, n]]];\n * }\n *\n * _.flatMapDeep([1, 2], duplicate);\n * // => [1, 1, 2, 2]\n */\n function flatMapDeep(collection, iteratee) {\n return baseFlatten(map(collection, iteratee), INFINITY);\n }\n\n /**\n * This method is like `_.flatMap` except that it recursively flattens the\n * mapped results up to `depth` times.\n *\n * @static\n * @memberOf _\n * @since 4.7.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {number} [depth=1] The maximum recursion depth.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [[[n, n]]];\n * }\n *\n * _.flatMapDepth([1, 2], duplicate, 2);\n * // => [[1, 1], [2, 2]]\n */\n function flatMapDepth(collection, iteratee, depth) {\n depth = depth === undefined ? 1 : toInteger(depth);\n return baseFlatten(map(collection, iteratee), depth);\n }\n\n /**\n * Iterates over elements of `collection` and invokes `iteratee` for each element.\n * The iteratee is invoked with three arguments: (value, index|key, collection).\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * **Note:** As with other \"Collections\" methods, objects with a \"length\"\n * property are iterated like arrays. To avoid this behavior use `_.forIn`\n * or `_.forOwn` for object iteration.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @alias each\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n * @see _.forEachRight\n * @example\n *\n * _.forEach([1, 2], function(value) {\n * console.log(value);\n * });\n * // => Logs `1` then `2`.\n *\n * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n */\n function forEach(collection, iteratee) {\n var func = isArray(collection) ? arrayEach : baseEach;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.forEach` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @alias eachRight\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n * @see _.forEach\n * @example\n *\n * _.forEachRight([1, 2], function(value) {\n * console.log(value);\n * });\n * // => Logs `2` then `1`.\n */\n function forEachRight(collection, iteratee) {\n var func = isArray(collection) ? arrayEachRight : baseEachRight;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The order of grouped values\n * is determined by the order they occur in `collection`. The corresponding\n * value of each key is an array of elements responsible for generating the\n * key. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.groupBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': [4.2], '6': [6.1, 6.3] }\n *\n * // The `_.property` iteratee shorthand.\n * _.groupBy(['one', 'two', 'three'], 'length');\n * // => { '3': ['one', 'two'], '5': ['three'] }\n */\n var groupBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n result[key].push(value);\n } else {\n baseAssignValue(result, key, [value]);\n }\n });\n\n /**\n * Checks if `value` is in `collection`. If `collection` is a string, it's\n * checked for a substring of `value`, otherwise\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * is used for equality comparisons. If `fromIndex` is negative, it's used as\n * the offset from the end of `collection`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object|string} collection The collection to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=0] The index to search from.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n * @returns {boolean} Returns `true` if `value` is found, else `false`.\n * @example\n *\n * _.includes([1, 2, 3], 1);\n * // => true\n *\n * _.includes([1, 2, 3], 1, 2);\n * // => false\n *\n * _.includes({ 'a': 1, 'b': 2 }, 1);\n * // => true\n *\n * _.includes('abcd', 'bc');\n * // => true\n */\n function includes(collection, value, fromIndex, guard) {\n collection = isArrayLike(collection) ? collection : values(collection);\n fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0;\n\n var length = collection.length;\n if (fromIndex < 0) {\n fromIndex = nativeMax(length + fromIndex, 0);\n }\n return isString(collection)\n ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1)\n : (!!length && baseIndexOf(collection, value, fromIndex) > -1);\n }\n\n /**\n * Invokes the method at `path` of each element in `collection`, returning\n * an array of the results of each invoked method. Any additional arguments\n * are provided to each invoked method. If `path` is a function, it's invoked\n * for, and `this` bound to, each element in `collection`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Array|Function|string} path The path of the method to invoke or\n * the function invoked per iteration.\n * @param {...*} [args] The arguments to invoke each method with.\n * @returns {Array} Returns the array of results.\n * @example\n *\n * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort');\n * // => [[1, 5, 7], [1, 2, 3]]\n *\n * _.invokeMap([123, 456], String.prototype.split, '');\n * // => [['1', '2', '3'], ['4', '5', '6']]\n */\n var invokeMap = baseRest(function(collection, path, args) {\n var index = -1,\n isFunc = typeof path == 'function',\n result = isArrayLike(collection) ? Array(collection.length) : [];\n\n baseEach(collection, function(value) {\n result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args);\n });\n return result;\n });\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The corresponding value of\n * each key is the last element responsible for generating the key. The\n * iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * var array = [\n * { 'dir': 'left', 'code': 97 },\n * { 'dir': 'right', 'code': 100 }\n * ];\n *\n * _.keyBy(array, function(o) {\n * return String.fromCharCode(o.code);\n * });\n * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } }\n *\n * _.keyBy(array, 'dir');\n * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } }\n */\n var keyBy = createAggregator(function(result, value, key) {\n baseAssignValue(result, key, value);\n });\n\n /**\n * Creates an array of values by running each element in `collection` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.\n *\n * The guarded methods are:\n * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`,\n * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`,\n * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`,\n * `template`, `trim`, `trimEnd`, `trimStart`, and `words`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * _.map([4, 8], square);\n * // => [16, 64]\n *\n * _.map({ 'a': 4, 'b': 8 }, square);\n * // => [16, 64] (iteration order is not guaranteed)\n *\n * var users = [\n * { 'user': 'barney' },\n * { 'user': 'fred' }\n * ];\n *\n * // The `_.property` iteratee shorthand.\n * _.map(users, 'user');\n * // => ['barney', 'fred']\n */\n function map(collection, iteratee) {\n var func = isArray(collection) ? arrayMap : baseMap;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.sortBy` except that it allows specifying the sort\n * orders of the iteratees to sort by. If `orders` is unspecified, all values\n * are sorted in ascending order. Otherwise, specify an order of \"desc\" for\n * descending or \"asc\" for ascending sort order of corresponding values.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]]\n * The iteratees to sort by.\n * @param {string[]} [orders] The sort orders of `iteratees`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n * @returns {Array} Returns the new sorted array.\n * @example\n *\n * var users = [\n * { 'user': 'fred', 'age': 48 },\n * { 'user': 'barney', 'age': 34 },\n * { 'user': 'fred', 'age': 40 },\n * { 'user': 'barney', 'age': 36 }\n * ];\n *\n * // Sort by `user` in ascending order and by `age` in descending order.\n * _.orderBy(users, ['user', 'age'], ['asc', 'desc']);\n * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]]\n */\n function orderBy(collection, iteratees, orders, guard) {\n if (collection == null) {\n return [];\n }\n if (!isArray(iteratees)) {\n iteratees = iteratees == null ? [] : [iteratees];\n }\n orders = guard ? undefined : orders;\n if (!isArray(orders)) {\n orders = orders == null ? [] : [orders];\n }\n return baseOrderBy(collection, iteratees, orders);\n }\n\n /**\n * Creates an array of elements split into two groups, the first of which\n * contains elements `predicate` returns truthy for, the second of which\n * contains elements `predicate` returns falsey for. The predicate is\n * invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the array of grouped elements.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': true },\n * { 'user': 'pebbles', 'age': 1, 'active': false }\n * ];\n *\n * _.partition(users, function(o) { return o.active; });\n * // => objects for [['fred'], ['barney', 'pebbles']]\n *\n * // The `_.matches` iteratee shorthand.\n * _.partition(users, { 'age': 1, 'active': false });\n * // => objects for [['pebbles'], ['barney', 'fred']]\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.partition(users, ['active', false]);\n * // => objects for [['barney', 'pebbles'], ['fred']]\n *\n * // The `_.property` iteratee shorthand.\n * _.partition(users, 'active');\n * // => objects for [['fred'], ['barney', 'pebbles']]\n */\n var partition = createAggregator(function(result, value, key) {\n result[key ? 0 : 1].push(value);\n }, function() { return [[], []]; });\n\n /**\n * Reduces `collection` to a value which is the accumulated result of running\n * each element in `collection` thru `iteratee`, where each successive\n * invocation is supplied the return value of the previous. If `accumulator`\n * is not given, the first element of `collection` is used as the initial\n * value. The iteratee is invoked with four arguments:\n * (accumulator, value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.reduce`, `_.reduceRight`, and `_.transform`.\n *\n * The guarded methods are:\n * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`,\n * and `sortBy`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @returns {*} Returns the accumulated value.\n * @see _.reduceRight\n * @example\n *\n * _.reduce([1, 2], function(sum, n) {\n * return sum + n;\n * }, 0);\n * // => 3\n *\n * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n * (result[value] || (result[value] = [])).push(key);\n * return result;\n * }, {});\n * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed)\n */\n function reduce(collection, iteratee, accumulator) {\n var func = isArray(collection) ? arrayReduce : baseReduce,\n initAccum = arguments.length < 3;\n\n return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEach);\n }\n\n /**\n * This method is like `_.reduce` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @returns {*} Returns the accumulated value.\n * @see _.reduce\n * @example\n *\n * var array = [[0, 1], [2, 3], [4, 5]];\n *\n * _.reduceRight(array, function(flattened, other) {\n * return flattened.concat(other);\n * }, []);\n * // => [4, 5, 2, 3, 0, 1]\n */\n function reduceRight(collection, iteratee, accumulator) {\n var func = isArray(collection) ? arrayReduceRight : baseReduce,\n initAccum = arguments.length < 3;\n\n return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight);\n }\n\n /**\n * The opposite of `_.filter`; this method returns the elements of `collection`\n * that `predicate` does **not** return truthy for.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.filter\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': true }\n * ];\n *\n * _.reject(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.reject(users, { 'age': 40, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.reject(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.reject(users, 'active');\n * // => objects for ['barney']\n */\n function reject(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, negate(getIteratee(predicate, 3)));\n }\n\n /**\n * Gets a random element from `collection`.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to sample.\n * @returns {*} Returns the random element.\n * @example\n *\n * _.sample([1, 2, 3, 4]);\n * // => 2\n */\n function sample(collection) {\n var func = isArray(collection) ? arraySample : baseSample;\n return func(collection);\n }\n\n /**\n * Gets `n` random elements at unique keys from `collection` up to the\n * size of `collection`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to sample.\n * @param {number} [n=1] The number of elements to sample.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the random elements.\n * @example\n *\n * _.sampleSize([1, 2, 3], 2);\n * // => [3, 1]\n *\n * _.sampleSize([1, 2, 3], 4);\n * // => [2, 3, 1]\n */\n function sampleSize(collection, n, guard) {\n if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) {\n n = 1;\n } else {\n n = toInteger(n);\n }\n var func = isArray(collection) ? arraySampleSize : baseSampleSize;\n return func(collection, n);\n }\n\n /**\n * Creates an array of shuffled values, using a version of the\n * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to shuffle.\n * @returns {Array} Returns the new shuffled array.\n * @example\n *\n * _.shuffle([1, 2, 3, 4]);\n * // => [4, 1, 3, 2]\n */\n function shuffle(collection) {\n var func = isArray(collection) ? arrayShuffle : baseShuffle;\n return func(collection);\n }\n\n /**\n * Gets the size of `collection` by returning its length for array-like\n * values or the number of own enumerable string keyed properties for objects.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object|string} collection The collection to inspect.\n * @returns {number} Returns the collection size.\n * @example\n *\n * _.size([1, 2, 3]);\n * // => 3\n *\n * _.size({ 'a': 1, 'b': 2 });\n * // => 2\n *\n * _.size('pebbles');\n * // => 7\n */\n function size(collection) {\n if (collection == null) {\n return 0;\n }\n if (isArrayLike(collection)) {\n return isString(collection) ? stringSize(collection) : collection.length;\n }\n var tag = getTag(collection);\n if (tag == mapTag || tag == setTag) {\n return collection.size;\n }\n return baseKeys(collection).length;\n }\n\n /**\n * Checks if `predicate` returns truthy for **any** element of `collection`.\n * Iteration is stopped once `predicate` returns truthy. The predicate is\n * invoked with three arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n * @example\n *\n * _.some([null, 0, 'yes', false], Boolean);\n * // => true\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false }\n * ];\n *\n * // The `_.matches` iteratee shorthand.\n * _.some(users, { 'user': 'barney', 'active': false });\n * // => false\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.some(users, ['active', false]);\n * // => true\n *\n * // The `_.property` iteratee shorthand.\n * _.some(users, 'active');\n * // => true\n */\n function some(collection, predicate, guard) {\n var func = isArray(collection) ? arraySome : baseSome;\n if (guard && isIterateeCall(collection, predicate, guard)) {\n predicate = undefined;\n }\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Creates an array of elements, sorted in ascending order by the results of\n * running each element in a collection thru each iteratee. This method\n * performs a stable sort, that is, it preserves the original sort order of\n * equal elements. The iteratees are invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {...(Function|Function[])} [iteratees=[_.identity]]\n * The iteratees to sort by.\n * @returns {Array} Returns the new sorted array.\n * @example\n *\n * var users = [\n * { 'user': 'fred', 'age': 48 },\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 30 },\n * { 'user': 'barney', 'age': 34 }\n * ];\n *\n * _.sortBy(users, [function(o) { return o.user; }]);\n * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 30]]\n *\n * _.sortBy(users, ['user', 'age']);\n * // => objects for [['barney', 34], ['barney', 36], ['fred', 30], ['fred', 48]]\n */\n var sortBy = baseRest(function(collection, iteratees) {\n if (collection == null) {\n return [];\n }\n var length = iteratees.length;\n if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) {\n iteratees = [];\n } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) {\n iteratees = [iteratees[0]];\n }\n return baseOrderBy(collection, baseFlatten(iteratees, 1), []);\n });\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\n var now = ctxNow || function() {\n return root.Date.now();\n };\n\n /*------------------------------------------------------------------------*/\n\n /**\n * The opposite of `_.before`; this method creates a function that invokes\n * `func` once it's called `n` or more times.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {number} n The number of calls before `func` is invoked.\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * var saves = ['profile', 'settings'];\n *\n * var done = _.after(saves.length, function() {\n * console.log('done saving!');\n * });\n *\n * _.forEach(saves, function(type) {\n * asyncSave({ 'type': type, 'complete': done });\n * });\n * // => Logs 'done saving!' after the two async saves have completed.\n */\n function after(n, func) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n n = toInteger(n);\n return function() {\n if (--n < 1) {\n return func.apply(this, arguments);\n }\n };\n }\n\n /**\n * Creates a function that invokes `func`, with up to `n` arguments,\n * ignoring any additional arguments.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to cap arguments for.\n * @param {number} [n=func.length] The arity cap.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new capped function.\n * @example\n *\n * _.map(['6', '8', '10'], _.ary(parseInt, 1));\n * // => [6, 8, 10]\n */\n function ary(func, n, guard) {\n n = guard ? undefined : n;\n n = (func && n == null) ? func.length : n;\n return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n);\n }\n\n /**\n * Creates a function that invokes `func`, with the `this` binding and arguments\n * of the created function, while it's called less than `n` times. Subsequent\n * calls to the created function return the result of the last `func` invocation.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {number} n The number of calls at which `func` is no longer invoked.\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * jQuery(element).on('click', _.before(5, addContactToList));\n * // => Allows adding up to 4 contacts to the list.\n */\n function before(n, func) {\n var result;\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n n = toInteger(n);\n return function() {\n if (--n > 0) {\n result = func.apply(this, arguments);\n }\n if (n <= 1) {\n func = undefined;\n }\n return result;\n };\n }\n\n /**\n * Creates a function that invokes `func` with the `this` binding of `thisArg`\n * and `partials` prepended to the arguments it receives.\n *\n * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds,\n * may be used as a placeholder for partially applied arguments.\n *\n * **Note:** Unlike native `Function#bind`, this method doesn't set the \"length\"\n * property of bound functions.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to bind.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new bound function.\n * @example\n *\n * function greet(greeting, punctuation) {\n * return greeting + ' ' + this.user + punctuation;\n * }\n *\n * var object = { 'user': 'fred' };\n *\n * var bound = _.bind(greet, object, 'hi');\n * bound('!');\n * // => 'hi fred!'\n *\n * // Bound with placeholders.\n * var bound = _.bind(greet, object, _, '!');\n * bound('hi');\n * // => 'hi fred!'\n */\n var bind = baseRest(function(func, thisArg, partials) {\n var bitmask = WRAP_BIND_FLAG;\n if (partials.length) {\n var holders = replaceHolders(partials, getHolder(bind));\n bitmask |= WRAP_PARTIAL_FLAG;\n }\n return createWrap(func, bitmask, thisArg, partials, holders);\n });\n\n /**\n * Creates a function that invokes the method at `object[key]` with `partials`\n * prepended to the arguments it receives.\n *\n * This method differs from `_.bind` by allowing bound functions to reference\n * methods that may be redefined or don't yet exist. See\n * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern)\n * for more details.\n *\n * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * @static\n * @memberOf _\n * @since 0.10.0\n * @category Function\n * @param {Object} object The object to invoke the method on.\n * @param {string} key The key of the method.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new bound function.\n * @example\n *\n * var object = {\n * 'user': 'fred',\n * 'greet': function(greeting, punctuation) {\n * return greeting + ' ' + this.user + punctuation;\n * }\n * };\n *\n * var bound = _.bindKey(object, 'greet', 'hi');\n * bound('!');\n * // => 'hi fred!'\n *\n * object.greet = function(greeting, punctuation) {\n * return greeting + 'ya ' + this.user + punctuation;\n * };\n *\n * bound('!');\n * // => 'hiya fred!'\n *\n * // Bound with placeholders.\n * var bound = _.bindKey(object, 'greet', _, '!');\n * bound('hi');\n * // => 'hiya fred!'\n */\n var bindKey = baseRest(function(object, key, partials) {\n var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG;\n if (partials.length) {\n var holders = replaceHolders(partials, getHolder(bindKey));\n bitmask |= WRAP_PARTIAL_FLAG;\n }\n return createWrap(key, bitmask, object, partials, holders);\n });\n\n /**\n * Creates a function that accepts arguments of `func` and either invokes\n * `func` returning its result, if at least `arity` number of arguments have\n * been provided, or returns a function that accepts the remaining `func`\n * arguments, and so on. The arity of `func` may be specified if `func.length`\n * is not sufficient.\n *\n * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds,\n * may be used as a placeholder for provided arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of curried functions.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Function\n * @param {Function} func The function to curry.\n * @param {number} [arity=func.length] The arity of `func`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new curried function.\n * @example\n *\n * var abc = function(a, b, c) {\n * return [a, b, c];\n * };\n *\n * var curried = _.curry(abc);\n *\n * curried(1)(2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2, 3);\n * // => [1, 2, 3]\n *\n * // Curried with placeholders.\n * curried(1)(_, 3)(2);\n * // => [1, 2, 3]\n */\n function curry(func, arity, guard) {\n arity = guard ? undefined : arity;\n var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n result.placeholder = curry.placeholder;\n return result;\n }\n\n /**\n * This method is like `_.curry` except that arguments are applied to `func`\n * in the manner of `_.partialRight` instead of `_.partial`.\n *\n * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for provided arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of curried functions.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to curry.\n * @param {number} [arity=func.length] The arity of `func`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new curried function.\n * @example\n *\n * var abc = function(a, b, c) {\n * return [a, b, c];\n * };\n *\n * var curried = _.curryRight(abc);\n *\n * curried(3)(2)(1);\n * // => [1, 2, 3]\n *\n * curried(2, 3)(1);\n * // => [1, 2, 3]\n *\n * curried(1, 2, 3);\n * // => [1, 2, 3]\n *\n * // Curried with placeholders.\n * curried(3)(1, _)(2);\n * // => [1, 2, 3]\n */\n function curryRight(func, arity, guard) {\n arity = guard ? undefined : arity;\n var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n result.placeholder = curryRight.placeholder;\n return result;\n }\n\n /**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\n function debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n }\n\n /**\n * Defers invoking the `func` until the current call stack has cleared. Any\n * additional arguments are provided to `func` when it's invoked.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to defer.\n * @param {...*} [args] The arguments to invoke `func` with.\n * @returns {number} Returns the timer id.\n * @example\n *\n * _.defer(function(text) {\n * console.log(text);\n * }, 'deferred');\n * // => Logs 'deferred' after one millisecond.\n */\n var defer = baseRest(function(func, args) {\n return baseDelay(func, 1, args);\n });\n\n /**\n * Invokes `func` after `wait` milliseconds. Any additional arguments are\n * provided to `func` when it's invoked.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @param {...*} [args] The arguments to invoke `func` with.\n * @returns {number} Returns the timer id.\n * @example\n *\n * _.delay(function(text) {\n * console.log(text);\n * }, 1000, 'later');\n * // => Logs 'later' after one second.\n */\n var delay = baseRest(function(func, wait, args) {\n return baseDelay(func, toNumber(wait) || 0, args);\n });\n\n /**\n * Creates a function that invokes `func` with arguments reversed.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to flip arguments for.\n * @returns {Function} Returns the new flipped function.\n * @example\n *\n * var flipped = _.flip(function() {\n * return _.toArray(arguments);\n * });\n *\n * flipped('a', 'b', 'c', 'd');\n * // => ['d', 'c', 'b', 'a']\n */\n function flip(func) {\n return createWrap(func, WRAP_FLIP_FLAG);\n }\n\n /**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\n function memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n }\n\n // Expose `MapCache`.\n memoize.Cache = MapCache;\n\n /**\n * Creates a function that negates the result of the predicate `func`. The\n * `func` predicate is invoked with the `this` binding and arguments of the\n * created function.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} predicate The predicate to negate.\n * @returns {Function} Returns the new negated function.\n * @example\n *\n * function isEven(n) {\n * return n % 2 == 0;\n * }\n *\n * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));\n * // => [1, 3, 5]\n */\n function negate(predicate) {\n if (typeof predicate != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n return function() {\n var args = arguments;\n switch (args.length) {\n case 0: return !predicate.call(this);\n case 1: return !predicate.call(this, args[0]);\n case 2: return !predicate.call(this, args[0], args[1]);\n case 3: return !predicate.call(this, args[0], args[1], args[2]);\n }\n return !predicate.apply(this, args);\n };\n }\n\n /**\n * Creates a function that is restricted to invoking `func` once. Repeat calls\n * to the function return the value of the first invocation. The `func` is\n * invoked with the `this` binding and arguments of the created function.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * var initialize = _.once(createApplication);\n * initialize();\n * initialize();\n * // => `createApplication` is invoked once\n */\n function once(func) {\n return before(2, func);\n }\n\n /**\n * Creates a function that invokes `func` with its arguments transformed.\n *\n * @static\n * @since 4.0.0\n * @memberOf _\n * @category Function\n * @param {Function} func The function to wrap.\n * @param {...(Function|Function[])} [transforms=[_.identity]]\n * The argument transforms.\n * @returns {Function} Returns the new function.\n * @example\n *\n * function doubled(n) {\n * return n * 2;\n * }\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var func = _.overArgs(function(x, y) {\n * return [x, y];\n * }, [square, doubled]);\n *\n * func(9, 3);\n * // => [81, 6]\n *\n * func(10, 5);\n * // => [100, 10]\n */\n var overArgs = castRest(function(func, transforms) {\n transforms = (transforms.length == 1 && isArray(transforms[0]))\n ? arrayMap(transforms[0], baseUnary(getIteratee()))\n : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee()));\n\n var funcsLength = transforms.length;\n return baseRest(function(args) {\n var index = -1,\n length = nativeMin(args.length, funcsLength);\n\n while (++index < length) {\n args[index] = transforms[index].call(this, args[index]);\n }\n return apply(func, this, args);\n });\n });\n\n /**\n * Creates a function that invokes `func` with `partials` prepended to the\n * arguments it receives. This method is like `_.bind` except it does **not**\n * alter the `this` binding.\n *\n * The `_.partial.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of partially\n * applied functions.\n *\n * @static\n * @memberOf _\n * @since 0.2.0\n * @category Function\n * @param {Function} func The function to partially apply arguments to.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new partially applied function.\n * @example\n *\n * function greet(greeting, name) {\n * return greeting + ' ' + name;\n * }\n *\n * var sayHelloTo = _.partial(greet, 'hello');\n * sayHelloTo('fred');\n * // => 'hello fred'\n *\n * // Partially applied with placeholders.\n * var greetFred = _.partial(greet, _, 'fred');\n * greetFred('hi');\n * // => 'hi fred'\n */\n var partial = baseRest(function(func, partials) {\n var holders = replaceHolders(partials, getHolder(partial));\n return createWrap(func, WRAP_PARTIAL_FLAG, undefined, partials, holders);\n });\n\n /**\n * This method is like `_.partial` except that partially applied arguments\n * are appended to the arguments it receives.\n *\n * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of partially\n * applied functions.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Function\n * @param {Function} func The function to partially apply arguments to.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new partially applied function.\n * @example\n *\n * function greet(greeting, name) {\n * return greeting + ' ' + name;\n * }\n *\n * var greetFred = _.partialRight(greet, 'fred');\n * greetFred('hi');\n * // => 'hi fred'\n *\n * // Partially applied with placeholders.\n * var sayHelloTo = _.partialRight(greet, 'hello', _);\n * sayHelloTo('fred');\n * // => 'hello fred'\n */\n var partialRight = baseRest(function(func, partials) {\n var holders = replaceHolders(partials, getHolder(partialRight));\n return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined, partials, holders);\n });\n\n /**\n * Creates a function that invokes `func` with arguments arranged according\n * to the specified `indexes` where the argument value at the first index is\n * provided as the first argument, the argument value at the second index is\n * provided as the second argument, and so on.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to rearrange arguments for.\n * @param {...(number|number[])} indexes The arranged argument indexes.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var rearged = _.rearg(function(a, b, c) {\n * return [a, b, c];\n * }, [2, 0, 1]);\n *\n * rearged('b', 'c', 'a')\n * // => ['a', 'b', 'c']\n */\n var rearg = flatRest(function(func, indexes) {\n return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes);\n });\n\n /**\n * Creates a function that invokes `func` with the `this` binding of the\n * created function and arguments from `start` and beyond provided as\n * an array.\n *\n * **Note:** This method is based on the\n * [rest parameter](https://mdn.io/rest_parameters).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var say = _.rest(function(what, names) {\n * return what + ' ' + _.initial(names).join(', ') +\n * (_.size(names) > 1 ? ', & ' : '') + _.last(names);\n * });\n *\n * say('hello', 'fred', 'barney', 'pebbles');\n * // => 'hello fred, barney, & pebbles'\n */\n function rest(func, start) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n start = start === undefined ? start : toInteger(start);\n return baseRest(func, start);\n }\n\n /**\n * Creates a function that invokes `func` with the `this` binding of the\n * create function and an array of arguments much like\n * [`Function#apply`](http://www.ecma-international.org/ecma-262/7.0/#sec-function.prototype.apply).\n *\n * **Note:** This method is based on the\n * [spread operator](https://mdn.io/spread_operator).\n *\n * @static\n * @memberOf _\n * @since 3.2.0\n * @category Function\n * @param {Function} func The function to spread arguments over.\n * @param {number} [start=0] The start position of the spread.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var say = _.spread(function(who, what) {\n * return who + ' says ' + what;\n * });\n *\n * say(['fred', 'hello']);\n * // => 'fred says hello'\n *\n * var numbers = Promise.all([\n * Promise.resolve(40),\n * Promise.resolve(36)\n * ]);\n *\n * numbers.then(_.spread(function(x, y) {\n * return x + y;\n * }));\n * // => a Promise of 76\n */\n function spread(func, start) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n start = start == null ? 0 : nativeMax(toInteger(start), 0);\n return baseRest(function(args) {\n var array = args[start],\n otherArgs = castSlice(args, 0, start);\n\n if (array) {\n arrayPush(otherArgs, array);\n }\n return apply(func, this, otherArgs);\n });\n }\n\n /**\n * Creates a throttled function that only invokes `func` at most once per\n * every `wait` milliseconds. The throttled function comes with a `cancel`\n * method to cancel delayed `func` invocations and a `flush` method to\n * immediately invoke them. Provide `options` to indicate whether `func`\n * should be invoked on the leading and/or trailing edge of the `wait`\n * timeout. The `func` is invoked with the last arguments provided to the\n * throttled function. Subsequent calls to the throttled function return the\n * result of the last `func` invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the throttled function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.throttle` and `_.debounce`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to throttle.\n * @param {number} [wait=0] The number of milliseconds to throttle invocations to.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=true]\n * Specify invoking on the leading edge of the timeout.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new throttled function.\n * @example\n *\n * // Avoid excessively updating the position while scrolling.\n * jQuery(window).on('scroll', _.throttle(updatePosition, 100));\n *\n * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.\n * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });\n * jQuery(element).on('click', throttled);\n *\n * // Cancel the trailing throttled invocation.\n * jQuery(window).on('popstate', throttled.cancel);\n */\n function throttle(func, wait, options) {\n var leading = true,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (isObject(options)) {\n leading = 'leading' in options ? !!options.leading : leading;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n return debounce(func, wait, {\n 'leading': leading,\n 'maxWait': wait,\n 'trailing': trailing\n });\n }\n\n /**\n * Creates a function that accepts up to one argument, ignoring any\n * additional arguments.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n * @example\n *\n * _.map(['6', '8', '10'], _.unary(parseInt));\n * // => [6, 8, 10]\n */\n function unary(func) {\n return ary(func, 1);\n }\n\n /**\n * Creates a function that provides `value` to `wrapper` as its first\n * argument. Any additional arguments provided to the function are appended\n * to those provided to the `wrapper`. The wrapper is invoked with the `this`\n * binding of the created function.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {*} value The value to wrap.\n * @param {Function} [wrapper=identity] The wrapper function.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var p = _.wrap(_.escape, function(func, text) {\n * return '

' + func(text) + '

';\n * });\n *\n * p('fred, barney, & pebbles');\n * // => '

fred, barney, & pebbles

'\n */\n function wrap(value, wrapper) {\n return partial(castFunction(wrapper), value);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Casts `value` as an array if it's not one.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Lang\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast array.\n * @example\n *\n * _.castArray(1);\n * // => [1]\n *\n * _.castArray({ 'a': 1 });\n * // => [{ 'a': 1 }]\n *\n * _.castArray('abc');\n * // => ['abc']\n *\n * _.castArray(null);\n * // => [null]\n *\n * _.castArray(undefined);\n * // => [undefined]\n *\n * _.castArray();\n * // => []\n *\n * var array = [1, 2, 3];\n * console.log(_.castArray(array) === array);\n * // => true\n */\n function castArray() {\n if (!arguments.length) {\n return [];\n }\n var value = arguments[0];\n return isArray(value) ? value : [value];\n }\n\n /**\n * Creates a shallow clone of `value`.\n *\n * **Note:** This method is loosely based on the\n * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)\n * and supports cloning arrays, array buffers, booleans, date objects, maps,\n * numbers, `Object` objects, regexes, sets, strings, symbols, and typed\n * arrays. The own enumerable properties of `arguments` objects are cloned\n * as plain objects. An empty object is returned for uncloneable values such\n * as error objects, functions, DOM nodes, and WeakMaps.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to clone.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeep\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var shallow = _.clone(objects);\n * console.log(shallow[0] === objects[0]);\n * // => true\n */\n function clone(value) {\n return baseClone(value, CLONE_SYMBOLS_FLAG);\n }\n\n /**\n * This method is like `_.clone` except that it accepts `customizer` which\n * is invoked to produce the cloned value. If `customizer` returns `undefined`,\n * cloning is handled by the method instead. The `customizer` is invoked with\n * up to four arguments; (value [, index|key, object, stack]).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to clone.\n * @param {Function} [customizer] The function to customize cloning.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeepWith\n * @example\n *\n * function customizer(value) {\n * if (_.isElement(value)) {\n * return value.cloneNode(false);\n * }\n * }\n *\n * var el = _.cloneWith(document.body, customizer);\n *\n * console.log(el === document.body);\n * // => false\n * console.log(el.nodeName);\n * // => 'BODY'\n * console.log(el.childNodes.length);\n * // => 0\n */\n function cloneWith(value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseClone(value, CLONE_SYMBOLS_FLAG, customizer);\n }\n\n /**\n * This method is like `_.clone` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @returns {*} Returns the deep cloned value.\n * @see _.clone\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var deep = _.cloneDeep(objects);\n * console.log(deep[0] === objects[0]);\n * // => false\n */\n function cloneDeep(value) {\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);\n }\n\n /**\n * This method is like `_.cloneWith` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @param {Function} [customizer] The function to customize cloning.\n * @returns {*} Returns the deep cloned value.\n * @see _.cloneWith\n * @example\n *\n * function customizer(value) {\n * if (_.isElement(value)) {\n * return value.cloneNode(true);\n * }\n * }\n *\n * var el = _.cloneDeepWith(document.body, customizer);\n *\n * console.log(el === document.body);\n * // => false\n * console.log(el.nodeName);\n * // => 'BODY'\n * console.log(el.childNodes.length);\n * // => 20\n */\n function cloneDeepWith(value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer);\n }\n\n /**\n * Checks if `object` conforms to `source` by invoking the predicate\n * properties of `source` with the corresponding property values of `object`.\n *\n * **Note:** This method is equivalent to `_.conforms` when `source` is\n * partially applied.\n *\n * @static\n * @memberOf _\n * @since 4.14.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property predicates to conform to.\n * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n *\n * _.conformsTo(object, { 'b': function(n) { return n > 1; } });\n * // => true\n *\n * _.conformsTo(object, { 'b': function(n) { return n > 2; } });\n * // => false\n */\n function conformsTo(object, source) {\n return source == null || baseConformsTo(object, source, keys(source));\n }\n\n /**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\n function eq(value, other) {\n return value === other || (value !== value && other !== other);\n }\n\n /**\n * Checks if `value` is greater than `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than `other`,\n * else `false`.\n * @see _.lt\n * @example\n *\n * _.gt(3, 1);\n * // => true\n *\n * _.gt(3, 3);\n * // => false\n *\n * _.gt(1, 3);\n * // => false\n */\n var gt = createRelationalOperation(baseGt);\n\n /**\n * Checks if `value` is greater than or equal to `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than or equal to\n * `other`, else `false`.\n * @see _.lte\n * @example\n *\n * _.gte(3, 1);\n * // => true\n *\n * _.gte(3, 3);\n * // => true\n *\n * _.gte(1, 3);\n * // => false\n */\n var gte = createRelationalOperation(function(value, other) {\n return value >= other;\n });\n\n /**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\n var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n };\n\n /**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\n var isArray = Array.isArray;\n\n /**\n * Checks if `value` is classified as an `ArrayBuffer` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n * @example\n *\n * _.isArrayBuffer(new ArrayBuffer(2));\n * // => true\n *\n * _.isArrayBuffer(new Array(2));\n * // => false\n */\n var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer;\n\n /**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\n function isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n }\n\n /**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\n function isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n }\n\n /**\n * Checks if `value` is classified as a boolean primitive or object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.\n * @example\n *\n * _.isBoolean(false);\n * // => true\n *\n * _.isBoolean(null);\n * // => false\n */\n function isBoolean(value) {\n return value === true || value === false ||\n (isObjectLike(value) && baseGetTag(value) == boolTag);\n }\n\n /**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\n var isBuffer = nativeIsBuffer || stubFalse;\n\n /**\n * Checks if `value` is classified as a `Date` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n * @example\n *\n * _.isDate(new Date);\n * // => true\n *\n * _.isDate('Mon April 23 2012');\n * // => false\n */\n var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate;\n\n /**\n * Checks if `value` is likely a DOM element.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`.\n * @example\n *\n * _.isElement(document.body);\n * // => true\n *\n * _.isElement('');\n * // => false\n */\n function isElement(value) {\n return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value);\n }\n\n /**\n * Checks if `value` is an empty object, collection, map, or set.\n *\n * Objects are considered empty if they have no own enumerable string keyed\n * properties.\n *\n * Array-like values such as `arguments` objects, arrays, buffers, strings, or\n * jQuery-like collections are considered empty if they have a `length` of `0`.\n * Similarly, maps and sets are considered empty if they have a `size` of `0`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is empty, else `false`.\n * @example\n *\n * _.isEmpty(null);\n * // => true\n *\n * _.isEmpty(true);\n * // => true\n *\n * _.isEmpty(1);\n * // => true\n *\n * _.isEmpty([1, 2, 3]);\n * // => false\n *\n * _.isEmpty({ 'a': 1 });\n * // => false\n */\n function isEmpty(value) {\n if (value == null) {\n return true;\n }\n if (isArrayLike(value) &&\n (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' ||\n isBuffer(value) || isTypedArray(value) || isArguments(value))) {\n return !value.length;\n }\n var tag = getTag(value);\n if (tag == mapTag || tag == setTag) {\n return !value.size;\n }\n if (isPrototype(value)) {\n return !baseKeys(value).length;\n }\n for (var key in value) {\n if (hasOwnProperty.call(value, key)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\n function isEqual(value, other) {\n return baseIsEqual(value, other);\n }\n\n /**\n * This method is like `_.isEqual` except that it accepts `customizer` which\n * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n * are handled by the method instead. The `customizer` is invoked with up to\n * six arguments: (objValue, othValue [, index|key, object, other, stack]).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * function isGreeting(value) {\n * return /^h(?:i|ello)$/.test(value);\n * }\n *\n * function customizer(objValue, othValue) {\n * if (isGreeting(objValue) && isGreeting(othValue)) {\n * return true;\n * }\n * }\n *\n * var array = ['hello', 'goodbye'];\n * var other = ['hi', 'goodbye'];\n *\n * _.isEqualWith(array, other, customizer);\n * // => true\n */\n function isEqualWith(value, other, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n var result = customizer ? customizer(value, other) : undefined;\n return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result;\n }\n\n /**\n * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,\n * `SyntaxError`, `TypeError`, or `URIError` object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an error object, else `false`.\n * @example\n *\n * _.isError(new Error);\n * // => true\n *\n * _.isError(Error);\n * // => false\n */\n function isError(value) {\n if (!isObjectLike(value)) {\n return false;\n }\n var tag = baseGetTag(value);\n return tag == errorTag || tag == domExcTag ||\n (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value));\n }\n\n /**\n * Checks if `value` is a finite primitive number.\n *\n * **Note:** This method is based on\n * [`Number.isFinite`](https://mdn.io/Number/isFinite).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a finite number, else `false`.\n * @example\n *\n * _.isFinite(3);\n * // => true\n *\n * _.isFinite(Number.MIN_VALUE);\n * // => true\n *\n * _.isFinite(Infinity);\n * // => false\n *\n * _.isFinite('3');\n * // => false\n */\n function isFinite(value) {\n return typeof value == 'number' && nativeIsFinite(value);\n }\n\n /**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\n function isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n }\n\n /**\n * Checks if `value` is an integer.\n *\n * **Note:** This method is based on\n * [`Number.isInteger`](https://mdn.io/Number/isInteger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an integer, else `false`.\n * @example\n *\n * _.isInteger(3);\n * // => true\n *\n * _.isInteger(Number.MIN_VALUE);\n * // => false\n *\n * _.isInteger(Infinity);\n * // => false\n *\n * _.isInteger('3');\n * // => false\n */\n function isInteger(value) {\n return typeof value == 'number' && value == toInteger(value);\n }\n\n /**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\n function isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n }\n\n /**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\n function isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n }\n\n /**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\n function isObjectLike(value) {\n return value != null && typeof value == 'object';\n }\n\n /**\n * Checks if `value` is classified as a `Map` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n * @example\n *\n * _.isMap(new Map);\n * // => true\n *\n * _.isMap(new WeakMap);\n * // => false\n */\n var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;\n\n /**\n * Performs a partial deep comparison between `object` and `source` to\n * determine if `object` contains equivalent property values.\n *\n * **Note:** This method is equivalent to `_.matches` when `source` is\n * partially applied.\n *\n * Partial comparisons will match empty array and empty object `source`\n * values against any array or object value, respectively. See `_.isEqual`\n * for a list of supported value comparisons.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n *\n * _.isMatch(object, { 'b': 2 });\n * // => true\n *\n * _.isMatch(object, { 'b': 1 });\n * // => false\n */\n function isMatch(object, source) {\n return object === source || baseIsMatch(object, source, getMatchData(source));\n }\n\n /**\n * This method is like `_.isMatch` except that it accepts `customizer` which\n * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n * are handled by the method instead. The `customizer` is invoked with five\n * arguments: (objValue, srcValue, index|key, object, source).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n * @example\n *\n * function isGreeting(value) {\n * return /^h(?:i|ello)$/.test(value);\n * }\n *\n * function customizer(objValue, srcValue) {\n * if (isGreeting(objValue) && isGreeting(srcValue)) {\n * return true;\n * }\n * }\n *\n * var object = { 'greeting': 'hello' };\n * var source = { 'greeting': 'hi' };\n *\n * _.isMatchWith(object, source, customizer);\n * // => true\n */\n function isMatchWith(object, source, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseIsMatch(object, source, getMatchData(source), customizer);\n }\n\n /**\n * Checks if `value` is `NaN`.\n *\n * **Note:** This method is based on\n * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as\n * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for\n * `undefined` and other non-number values.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n * @example\n *\n * _.isNaN(NaN);\n * // => true\n *\n * _.isNaN(new Number(NaN));\n * // => true\n *\n * isNaN(undefined);\n * // => true\n *\n * _.isNaN(undefined);\n * // => false\n */\n function isNaN(value) {\n // An `NaN` primitive is the only value that is not equal to itself.\n // Perform the `toStringTag` check first to avoid errors with some\n // ActiveX objects in IE.\n return isNumber(value) && value != +value;\n }\n\n /**\n * Checks if `value` is a pristine native function.\n *\n * **Note:** This method can't reliably detect native functions in the presence\n * of the core-js package because core-js circumvents this kind of detection.\n * Despite multiple requests, the core-js maintainer has made it clear: any\n * attempt to fix the detection will be obstructed. As a result, we're left\n * with little choice but to throw an error. Unfortunately, this also affects\n * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill),\n * which rely on core-js.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n * @example\n *\n * _.isNative(Array.prototype.push);\n * // => true\n *\n * _.isNative(_);\n * // => false\n */\n function isNative(value) {\n if (isMaskable(value)) {\n throw new Error(CORE_ERROR_TEXT);\n }\n return baseIsNative(value);\n }\n\n /**\n * Checks if `value` is `null`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `null`, else `false`.\n * @example\n *\n * _.isNull(null);\n * // => true\n *\n * _.isNull(void 0);\n * // => false\n */\n function isNull(value) {\n return value === null;\n }\n\n /**\n * Checks if `value` is `null` or `undefined`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is nullish, else `false`.\n * @example\n *\n * _.isNil(null);\n * // => true\n *\n * _.isNil(void 0);\n * // => true\n *\n * _.isNil(NaN);\n * // => false\n */\n function isNil(value) {\n return value == null;\n }\n\n /**\n * Checks if `value` is classified as a `Number` primitive or object.\n *\n * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are\n * classified as numbers, use the `_.isFinite` method.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a number, else `false`.\n * @example\n *\n * _.isNumber(3);\n * // => true\n *\n * _.isNumber(Number.MIN_VALUE);\n * // => true\n *\n * _.isNumber(Infinity);\n * // => true\n *\n * _.isNumber('3');\n * // => false\n */\n function isNumber(value) {\n return typeof value == 'number' ||\n (isObjectLike(value) && baseGetTag(value) == numberTag);\n }\n\n /**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\n function isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n }\n\n /**\n * Checks if `value` is classified as a `RegExp` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n * @example\n *\n * _.isRegExp(/abc/);\n * // => true\n *\n * _.isRegExp('/abc/');\n * // => false\n */\n var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp;\n\n /**\n * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754\n * double precision number which isn't the result of a rounded unsafe integer.\n *\n * **Note:** This method is based on\n * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`.\n * @example\n *\n * _.isSafeInteger(3);\n * // => true\n *\n * _.isSafeInteger(Number.MIN_VALUE);\n * // => false\n *\n * _.isSafeInteger(Infinity);\n * // => false\n *\n * _.isSafeInteger('3');\n * // => false\n */\n function isSafeInteger(value) {\n return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER;\n }\n\n /**\n * Checks if `value` is classified as a `Set` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n * @example\n *\n * _.isSet(new Set);\n * // => true\n *\n * _.isSet(new WeakSet);\n * // => false\n */\n var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;\n\n /**\n * Checks if `value` is classified as a `String` primitive or object.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n * @example\n *\n * _.isString('abc');\n * // => true\n *\n * _.isString(1);\n * // => false\n */\n function isString(value) {\n return typeof value == 'string' ||\n (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n }\n\n /**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\n function isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n }\n\n /**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\n var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\n /**\n * Checks if `value` is `undefined`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.\n * @example\n *\n * _.isUndefined(void 0);\n * // => true\n *\n * _.isUndefined(null);\n * // => false\n */\n function isUndefined(value) {\n return value === undefined;\n }\n\n /**\n * Checks if `value` is classified as a `WeakMap` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a weak map, else `false`.\n * @example\n *\n * _.isWeakMap(new WeakMap);\n * // => true\n *\n * _.isWeakMap(new Map);\n * // => false\n */\n function isWeakMap(value) {\n return isObjectLike(value) && getTag(value) == weakMapTag;\n }\n\n /**\n * Checks if `value` is classified as a `WeakSet` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a weak set, else `false`.\n * @example\n *\n * _.isWeakSet(new WeakSet);\n * // => true\n *\n * _.isWeakSet(new Set);\n * // => false\n */\n function isWeakSet(value) {\n return isObjectLike(value) && baseGetTag(value) == weakSetTag;\n }\n\n /**\n * Checks if `value` is less than `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than `other`,\n * else `false`.\n * @see _.gt\n * @example\n *\n * _.lt(1, 3);\n * // => true\n *\n * _.lt(3, 3);\n * // => false\n *\n * _.lt(3, 1);\n * // => false\n */\n var lt = createRelationalOperation(baseLt);\n\n /**\n * Checks if `value` is less than or equal to `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than or equal to\n * `other`, else `false`.\n * @see _.gte\n * @example\n *\n * _.lte(1, 3);\n * // => true\n *\n * _.lte(3, 3);\n * // => true\n *\n * _.lte(3, 1);\n * // => false\n */\n var lte = createRelationalOperation(function(value, other) {\n return value <= other;\n });\n\n /**\n * Converts `value` to an array.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Array} Returns the converted array.\n * @example\n *\n * _.toArray({ 'a': 1, 'b': 2 });\n * // => [1, 2]\n *\n * _.toArray('abc');\n * // => ['a', 'b', 'c']\n *\n * _.toArray(1);\n * // => []\n *\n * _.toArray(null);\n * // => []\n */\n function toArray(value) {\n if (!value) {\n return [];\n }\n if (isArrayLike(value)) {\n return isString(value) ? stringToArray(value) : copyArray(value);\n }\n if (symIterator && value[symIterator]) {\n return iteratorToArray(value[symIterator]());\n }\n var tag = getTag(value),\n func = tag == mapTag ? mapToArray : (tag == setTag ? setToArray : values);\n\n return func(value);\n }\n\n /**\n * Converts `value` to a finite number.\n *\n * @static\n * @memberOf _\n * @since 4.12.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted number.\n * @example\n *\n * _.toFinite(3.2);\n * // => 3.2\n *\n * _.toFinite(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toFinite(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toFinite('3.2');\n * // => 3.2\n */\n function toFinite(value) {\n if (!value) {\n return value === 0 ? value : 0;\n }\n value = toNumber(value);\n if (value === INFINITY || value === -INFINITY) {\n var sign = (value < 0 ? -1 : 1);\n return sign * MAX_INTEGER;\n }\n return value === value ? value : 0;\n }\n\n /**\n * Converts `value` to an integer.\n *\n * **Note:** This method is loosely based on\n * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toInteger(3.2);\n * // => 3\n *\n * _.toInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toInteger(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toInteger('3.2');\n * // => 3\n */\n function toInteger(value) {\n var result = toFinite(value),\n remainder = result % 1;\n\n return result === result ? (remainder ? result - remainder : result) : 0;\n }\n\n /**\n * Converts `value` to an integer suitable for use as the length of an\n * array-like object.\n *\n * **Note:** This method is based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toLength(3.2);\n * // => 3\n *\n * _.toLength(Number.MIN_VALUE);\n * // => 0\n *\n * _.toLength(Infinity);\n * // => 4294967295\n *\n * _.toLength('3.2');\n * // => 3\n */\n function toLength(value) {\n return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0;\n }\n\n /**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\n function toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n }\n\n /**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\n function toPlainObject(value) {\n return copyObject(value, keysIn(value));\n }\n\n /**\n * Converts `value` to a safe integer. A safe integer can be compared and\n * represented correctly.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toSafeInteger(3.2);\n * // => 3\n *\n * _.toSafeInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toSafeInteger(Infinity);\n * // => 9007199254740991\n *\n * _.toSafeInteger('3.2');\n * // => 3\n */\n function toSafeInteger(value) {\n return value\n ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER)\n : (value === 0 ? value : 0);\n }\n\n /**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\n function toString(value) {\n return value == null ? '' : baseToString(value);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Assigns own enumerable string keyed properties of source objects to the\n * destination object. Source objects are applied from left to right.\n * Subsequent sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object` and is loosely based on\n * [`Object.assign`](https://mdn.io/Object/assign).\n *\n * @static\n * @memberOf _\n * @since 0.10.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.assignIn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * function Bar() {\n * this.c = 3;\n * }\n *\n * Foo.prototype.b = 2;\n * Bar.prototype.d = 4;\n *\n * _.assign({ 'a': 0 }, new Foo, new Bar);\n * // => { 'a': 1, 'c': 3 }\n */\n var assign = createAssigner(function(object, source) {\n if (isPrototype(source) || isArrayLike(source)) {\n copyObject(source, keys(source), object);\n return;\n }\n for (var key in source) {\n if (hasOwnProperty.call(source, key)) {\n assignValue(object, key, source[key]);\n }\n }\n });\n\n /**\n * This method is like `_.assign` except that it iterates over own and\n * inherited source properties.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias extend\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.assign\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * function Bar() {\n * this.c = 3;\n * }\n *\n * Foo.prototype.b = 2;\n * Bar.prototype.d = 4;\n *\n * _.assignIn({ 'a': 0 }, new Foo, new Bar);\n * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 }\n */\n var assignIn = createAssigner(function(object, source) {\n copyObject(source, keysIn(source), object);\n });\n\n /**\n * This method is like `_.assignIn` except that it accepts `customizer`\n * which is invoked to produce the assigned values. If `customizer` returns\n * `undefined`, assignment is handled by the method instead. The `customizer`\n * is invoked with five arguments: (objValue, srcValue, key, object, source).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias extendWith\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @see _.assignWith\n * @example\n *\n * function customizer(objValue, srcValue) {\n * return _.isUndefined(objValue) ? srcValue : objValue;\n * }\n *\n * var defaults = _.partialRight(_.assignInWith, customizer);\n *\n * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var assignInWith = createAssigner(function(object, source, srcIndex, customizer) {\n copyObject(source, keysIn(source), object, customizer);\n });\n\n /**\n * This method is like `_.assign` except that it accepts `customizer`\n * which is invoked to produce the assigned values. If `customizer` returns\n * `undefined`, assignment is handled by the method instead. The `customizer`\n * is invoked with five arguments: (objValue, srcValue, key, object, source).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @see _.assignInWith\n * @example\n *\n * function customizer(objValue, srcValue) {\n * return _.isUndefined(objValue) ? srcValue : objValue;\n * }\n *\n * var defaults = _.partialRight(_.assignWith, customizer);\n *\n * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var assignWith = createAssigner(function(object, source, srcIndex, customizer) {\n copyObject(source, keys(source), object, customizer);\n });\n\n /**\n * Creates an array of values corresponding to `paths` of `object`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Array} Returns the picked values.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n *\n * _.at(object, ['a[0].b.c', 'a[1]']);\n * // => [3, 4]\n */\n var at = flatRest(baseAt);\n\n /**\n * Creates an object that inherits from the `prototype` object. If a\n * `properties` object is given, its own enumerable string keyed properties\n * are assigned to the created object.\n *\n * @static\n * @memberOf _\n * @since 2.3.0\n * @category Object\n * @param {Object} prototype The object to inherit from.\n * @param {Object} [properties] The properties to assign to the object.\n * @returns {Object} Returns the new object.\n * @example\n *\n * function Shape() {\n * this.x = 0;\n * this.y = 0;\n * }\n *\n * function Circle() {\n * Shape.call(this);\n * }\n *\n * Circle.prototype = _.create(Shape.prototype, {\n * 'constructor': Circle\n * });\n *\n * var circle = new Circle;\n * circle instanceof Circle;\n * // => true\n *\n * circle instanceof Shape;\n * // => true\n */\n function create(prototype, properties) {\n var result = baseCreate(prototype);\n return properties == null ? result : baseAssign(result, properties);\n }\n\n /**\n * Assigns own and inherited enumerable string keyed properties of source\n * objects to the destination object for all destination properties that\n * resolve to `undefined`. Source objects are applied from left to right.\n * Once a property is set, additional values of the same property are ignored.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.defaultsDeep\n * @example\n *\n * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var defaults = baseRest(function(object, sources) {\n object = Object(object);\n\n var index = -1;\n var length = sources.length;\n var guard = length > 2 ? sources[2] : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n length = 1;\n }\n\n while (++index < length) {\n var source = sources[index];\n var props = keysIn(source);\n var propsIndex = -1;\n var propsLength = props.length;\n\n while (++propsIndex < propsLength) {\n var key = props[propsIndex];\n var value = object[key];\n\n if (value === undefined ||\n (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n object[key] = source[key];\n }\n }\n }\n\n return object;\n });\n\n /**\n * This method is like `_.defaults` except that it recursively assigns\n * default properties.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.10.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.defaults\n * @example\n *\n * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } });\n * // => { 'a': { 'b': 2, 'c': 3 } }\n */\n var defaultsDeep = baseRest(function(args) {\n args.push(undefined, customDefaultsMerge);\n return apply(mergeWith, undefined, args);\n });\n\n /**\n * This method is like `_.find` except that it returns the key of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {string|undefined} Returns the key of the matched element,\n * else `undefined`.\n * @example\n *\n * var users = {\n * 'barney': { 'age': 36, 'active': true },\n * 'fred': { 'age': 40, 'active': false },\n * 'pebbles': { 'age': 1, 'active': true }\n * };\n *\n * _.findKey(users, function(o) { return o.age < 40; });\n * // => 'barney' (iteration order is not guaranteed)\n *\n * // The `_.matches` iteratee shorthand.\n * _.findKey(users, { 'age': 1, 'active': true });\n * // => 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findKey(users, ['active', false]);\n * // => 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.findKey(users, 'active');\n * // => 'barney'\n */\n function findKey(object, predicate) {\n return baseFindKey(object, getIteratee(predicate, 3), baseForOwn);\n }\n\n /**\n * This method is like `_.findKey` except that it iterates over elements of\n * a collection in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {string|undefined} Returns the key of the matched element,\n * else `undefined`.\n * @example\n *\n * var users = {\n * 'barney': { 'age': 36, 'active': true },\n * 'fred': { 'age': 40, 'active': false },\n * 'pebbles': { 'age': 1, 'active': true }\n * };\n *\n * _.findLastKey(users, function(o) { return o.age < 40; });\n * // => returns 'pebbles' assuming `_.findKey` returns 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastKey(users, { 'age': 36, 'active': true });\n * // => 'barney'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastKey(users, ['active', false]);\n * // => 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastKey(users, 'active');\n * // => 'pebbles'\n */\n function findLastKey(object, predicate) {\n return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight);\n }\n\n /**\n * Iterates over own and inherited enumerable string keyed properties of an\n * object and invokes `iteratee` for each property. The iteratee is invoked\n * with three arguments: (value, key, object). Iteratee functions may exit\n * iteration early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 0.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forInRight\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forIn(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed).\n */\n function forIn(object, iteratee) {\n return object == null\n ? object\n : baseFor(object, getIteratee(iteratee, 3), keysIn);\n }\n\n /**\n * This method is like `_.forIn` except that it iterates over properties of\n * `object` in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forIn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forInRight(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'.\n */\n function forInRight(object, iteratee) {\n return object == null\n ? object\n : baseForRight(object, getIteratee(iteratee, 3), keysIn);\n }\n\n /**\n * Iterates over own enumerable string keyed properties of an object and\n * invokes `iteratee` for each property. The iteratee is invoked with three\n * arguments: (value, key, object). Iteratee functions may exit iteration\n * early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 0.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forOwnRight\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forOwn(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n */\n function forOwn(object, iteratee) {\n return object && baseForOwn(object, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.forOwn` except that it iterates over properties of\n * `object` in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forOwn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forOwnRight(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'.\n */\n function forOwnRight(object, iteratee) {\n return object && baseForOwnRight(object, getIteratee(iteratee, 3));\n }\n\n /**\n * Creates an array of function property names from own enumerable properties\n * of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to inspect.\n * @returns {Array} Returns the function names.\n * @see _.functionsIn\n * @example\n *\n * function Foo() {\n * this.a = _.constant('a');\n * this.b = _.constant('b');\n * }\n *\n * Foo.prototype.c = _.constant('c');\n *\n * _.functions(new Foo);\n * // => ['a', 'b']\n */\n function functions(object) {\n return object == null ? [] : baseFunctions(object, keys(object));\n }\n\n /**\n * Creates an array of function property names from own and inherited\n * enumerable properties of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @returns {Array} Returns the function names.\n * @see _.functions\n * @example\n *\n * function Foo() {\n * this.a = _.constant('a');\n * this.b = _.constant('b');\n * }\n *\n * Foo.prototype.c = _.constant('c');\n *\n * _.functionsIn(new Foo);\n * // => ['a', 'b', 'c']\n */\n function functionsIn(object) {\n return object == null ? [] : baseFunctions(object, keysIn(object));\n }\n\n /**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\n function get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n }\n\n /**\n * Checks if `path` is a direct property of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = { 'a': { 'b': 2 } };\n * var other = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.has(object, 'a');\n * // => true\n *\n * _.has(object, 'a.b');\n * // => true\n *\n * _.has(object, ['a', 'b']);\n * // => true\n *\n * _.has(other, 'a');\n * // => false\n */\n function has(object, path) {\n return object != null && hasPath(object, path, baseHas);\n }\n\n /**\n * Checks if `path` is a direct or inherited property of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.hasIn(object, 'a');\n * // => true\n *\n * _.hasIn(object, 'a.b');\n * // => true\n *\n * _.hasIn(object, ['a', 'b']);\n * // => true\n *\n * _.hasIn(object, 'b');\n * // => false\n */\n function hasIn(object, path) {\n return object != null && hasPath(object, path, baseHasIn);\n }\n\n /**\n * Creates an object composed of the inverted keys and values of `object`.\n * If `object` contains duplicate values, subsequent values overwrite\n * property assignments of previous values.\n *\n * @static\n * @memberOf _\n * @since 0.7.0\n * @category Object\n * @param {Object} object The object to invert.\n * @returns {Object} Returns the new inverted object.\n * @example\n *\n * var object = { 'a': 1, 'b': 2, 'c': 1 };\n *\n * _.invert(object);\n * // => { '1': 'c', '2': 'b' }\n */\n var invert = createInverter(function(result, value, key) {\n if (value != null &&\n typeof value.toString != 'function') {\n value = nativeObjectToString.call(value);\n }\n\n result[value] = key;\n }, constant(identity));\n\n /**\n * This method is like `_.invert` except that the inverted object is generated\n * from the results of running each element of `object` thru `iteratee`. The\n * corresponding inverted value of each inverted key is an array of keys\n * responsible for generating the inverted value. The iteratee is invoked\n * with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.1.0\n * @category Object\n * @param {Object} object The object to invert.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Object} Returns the new inverted object.\n * @example\n *\n * var object = { 'a': 1, 'b': 2, 'c': 1 };\n *\n * _.invertBy(object);\n * // => { '1': ['a', 'c'], '2': ['b'] }\n *\n * _.invertBy(object, function(value) {\n * return 'group' + value;\n * });\n * // => { 'group1': ['a', 'c'], 'group2': ['b'] }\n */\n var invertBy = createInverter(function(result, value, key) {\n if (value != null &&\n typeof value.toString != 'function') {\n value = nativeObjectToString.call(value);\n }\n\n if (hasOwnProperty.call(result, value)) {\n result[value].push(key);\n } else {\n result[value] = [key];\n }\n }, getIteratee);\n\n /**\n * Invokes the method at `path` of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the method to invoke.\n * @param {...*} [args] The arguments to invoke the method with.\n * @returns {*} Returns the result of the invoked method.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] };\n *\n * _.invoke(object, 'a[0].b.c.slice', 1, 3);\n * // => [2, 3]\n */\n var invoke = baseRest(baseInvoke);\n\n /**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\n function keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n }\n\n /**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\n function keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n }\n\n /**\n * The opposite of `_.mapValues`; this method creates an object with the\n * same values as `object` and keys generated by running each own enumerable\n * string keyed property of `object` thru `iteratee`. The iteratee is invoked\n * with three arguments: (value, key, object).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns the new mapped object.\n * @see _.mapValues\n * @example\n *\n * _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) {\n * return key + value;\n * });\n * // => { 'a1': 1, 'b2': 2 }\n */\n function mapKeys(object, iteratee) {\n var result = {};\n iteratee = getIteratee(iteratee, 3);\n\n baseForOwn(object, function(value, key, object) {\n baseAssignValue(result, iteratee(value, key, object), value);\n });\n return result;\n }\n\n /**\n * Creates an object with the same keys as `object` and values generated\n * by running each own enumerable string keyed property of `object` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, key, object).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns the new mapped object.\n * @see _.mapKeys\n * @example\n *\n * var users = {\n * 'fred': { 'user': 'fred', 'age': 40 },\n * 'pebbles': { 'user': 'pebbles', 'age': 1 }\n * };\n *\n * _.mapValues(users, function(o) { return o.age; });\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n *\n * // The `_.property` iteratee shorthand.\n * _.mapValues(users, 'age');\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n */\n function mapValues(object, iteratee) {\n var result = {};\n iteratee = getIteratee(iteratee, 3);\n\n baseForOwn(object, function(value, key, object) {\n baseAssignValue(result, key, iteratee(value, key, object));\n });\n return result;\n }\n\n /**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\n var merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n });\n\n /**\n * This method is like `_.merge` except that it accepts `customizer` which\n * is invoked to produce the merged values of the destination and source\n * properties. If `customizer` returns `undefined`, merging is handled by the\n * method instead. The `customizer` is invoked with six arguments:\n * (objValue, srcValue, key, object, source, stack).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} customizer The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * function customizer(objValue, srcValue) {\n * if (_.isArray(objValue)) {\n * return objValue.concat(srcValue);\n * }\n * }\n *\n * var object = { 'a': [1], 'b': [2] };\n * var other = { 'a': [3], 'b': [4] };\n *\n * _.mergeWith(object, other, customizer);\n * // => { 'a': [1, 3], 'b': [2, 4] }\n */\n var mergeWith = createAssigner(function(object, source, srcIndex, customizer) {\n baseMerge(object, source, srcIndex, customizer);\n });\n\n /**\n * The opposite of `_.pick`; this method creates an object composed of the\n * own and inherited enumerable property paths of `object` that are not omitted.\n *\n * **Note:** This method is considerably slower than `_.pick`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to omit.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omit(object, ['a', 'c']);\n * // => { 'b': '2' }\n */\n var omit = flatRest(function(object, paths) {\n var result = {};\n if (object == null) {\n return result;\n }\n var isDeep = false;\n paths = arrayMap(paths, function(path) {\n path = castPath(path, object);\n isDeep || (isDeep = path.length > 1);\n return path;\n });\n copyObject(object, getAllKeysIn(object), result);\n if (isDeep) {\n result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone);\n }\n var length = paths.length;\n while (length--) {\n baseUnset(result, paths[length]);\n }\n return result;\n });\n\n /**\n * The opposite of `_.pickBy`; this method creates an object composed of\n * the own and inherited enumerable string keyed properties of `object` that\n * `predicate` doesn't return truthy for. The predicate is invoked with two\n * arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omitBy(object, _.isNumber);\n * // => { 'b': '2' }\n */\n function omitBy(object, predicate) {\n return pickBy(object, negate(getIteratee(predicate)));\n }\n\n /**\n * Creates an object composed of the picked `object` properties.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pick(object, ['a', 'c']);\n * // => { 'a': 1, 'c': 3 }\n */\n var pick = flatRest(function(object, paths) {\n return object == null ? {} : basePick(object, paths);\n });\n\n /**\n * Creates an object composed of the `object` properties `predicate` returns\n * truthy for. The predicate is invoked with two arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pickBy(object, _.isNumber);\n * // => { 'a': 1, 'c': 3 }\n */\n function pickBy(object, predicate) {\n if (object == null) {\n return {};\n }\n var props = arrayMap(getAllKeysIn(object), function(prop) {\n return [prop];\n });\n predicate = getIteratee(predicate);\n return basePickBy(object, props, function(value, path) {\n return predicate(value, path[0]);\n });\n }\n\n /**\n * This method is like `_.get` except that if the resolved value is a\n * function it's invoked with the `this` binding of its parent object and\n * its result is returned.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to resolve.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] };\n *\n * _.result(object, 'a[0].b.c1');\n * // => 3\n *\n * _.result(object, 'a[0].b.c2');\n * // => 4\n *\n * _.result(object, 'a[0].b.c3', 'default');\n * // => 'default'\n *\n * _.result(object, 'a[0].b.c3', _.constant('default'));\n * // => 'default'\n */\n function result(object, path, defaultValue) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length;\n\n // Ensure the loop is entered when path is empty.\n if (!length) {\n length = 1;\n object = undefined;\n }\n while (++index < length) {\n var value = object == null ? undefined : object[toKey(path[index])];\n if (value === undefined) {\n index = length;\n value = defaultValue;\n }\n object = isFunction(value) ? value.call(object) : value;\n }\n return object;\n }\n\n /**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\n function set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n }\n\n /**\n * This method is like `_.set` except that it accepts `customizer` which is\n * invoked to produce the objects of `path`. If `customizer` returns `undefined`\n * path creation is handled by the method instead. The `customizer` is invoked\n * with three arguments: (nsValue, key, nsObject).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {};\n *\n * _.setWith(object, '[0][1]', 'a', Object);\n * // => { '0': { '1': 'a' } }\n */\n function setWith(object, path, value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return object == null ? object : baseSet(object, path, value, customizer);\n }\n\n /**\n * Creates an array of own enumerable string keyed-value pairs for `object`\n * which can be consumed by `_.fromPairs`. If `object` is a map or set, its\n * entries are returned.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias entries\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the key-value pairs.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.toPairs(new Foo);\n * // => [['a', 1], ['b', 2]] (iteration order is not guaranteed)\n */\n var toPairs = createToPairs(keys);\n\n /**\n * Creates an array of own and inherited enumerable string keyed-value pairs\n * for `object` which can be consumed by `_.fromPairs`. If `object` is a map\n * or set, its entries are returned.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias entriesIn\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the key-value pairs.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.toPairsIn(new Foo);\n * // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed)\n */\n var toPairsIn = createToPairs(keysIn);\n\n /**\n * An alternative to `_.reduce`; this method transforms `object` to a new\n * `accumulator` object which is the result of running each of its own\n * enumerable string keyed properties thru `iteratee`, with each invocation\n * potentially mutating the `accumulator` object. If `accumulator` is not\n * provided, a new object with the same `[[Prototype]]` will be used. The\n * iteratee is invoked with four arguments: (accumulator, value, key, object).\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 1.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The custom accumulator value.\n * @returns {*} Returns the accumulated value.\n * @example\n *\n * _.transform([2, 3, 4], function(result, n) {\n * result.push(n *= n);\n * return n % 2 == 0;\n * }, []);\n * // => [4, 9]\n *\n * _.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n * (result[value] || (result[value] = [])).push(key);\n * }, {});\n * // => { '1': ['a', 'c'], '2': ['b'] }\n */\n function transform(object, iteratee, accumulator) {\n var isArr = isArray(object),\n isArrLike = isArr || isBuffer(object) || isTypedArray(object);\n\n iteratee = getIteratee(iteratee, 4);\n if (accumulator == null) {\n var Ctor = object && object.constructor;\n if (isArrLike) {\n accumulator = isArr ? new Ctor : [];\n }\n else if (isObject(object)) {\n accumulator = isFunction(Ctor) ? baseCreate(getPrototype(object)) : {};\n }\n else {\n accumulator = {};\n }\n }\n (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object) {\n return iteratee(accumulator, value, index, object);\n });\n return accumulator;\n }\n\n /**\n * Removes the property at `path` of `object`.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 7 } }] };\n * _.unset(object, 'a[0].b.c');\n * // => true\n *\n * console.log(object);\n * // => { 'a': [{ 'b': {} }] };\n *\n * _.unset(object, ['a', '0', 'b', 'c']);\n * // => true\n *\n * console.log(object);\n * // => { 'a': [{ 'b': {} }] };\n */\n function unset(object, path) {\n return object == null ? true : baseUnset(object, path);\n }\n\n /**\n * This method is like `_.set` except that accepts `updater` to produce the\n * value to set. Use `_.updateWith` to customize `path` creation. The `updater`\n * is invoked with one argument: (value).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {Function} updater The function to produce the updated value.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.update(object, 'a[0].b.c', function(n) { return n * n; });\n * console.log(object.a[0].b.c);\n * // => 9\n *\n * _.update(object, 'x[0].y.z', function(n) { return n ? n + 1 : 0; });\n * console.log(object.x[0].y.z);\n * // => 0\n */\n function update(object, path, updater) {\n return object == null ? object : baseUpdate(object, path, castFunction(updater));\n }\n\n /**\n * This method is like `_.update` except that it accepts `customizer` which is\n * invoked to produce the objects of `path`. If `customizer` returns `undefined`\n * path creation is handled by the method instead. The `customizer` is invoked\n * with three arguments: (nsValue, key, nsObject).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {Function} updater The function to produce the updated value.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {};\n *\n * _.updateWith(object, '[0][1]', _.constant('a'), Object);\n * // => { '0': { '1': 'a' } }\n */\n function updateWith(object, path, updater, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return object == null ? object : baseUpdate(object, path, castFunction(updater), customizer);\n }\n\n /**\n * Creates an array of the own enumerable string keyed property values of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property values.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.values(new Foo);\n * // => [1, 2] (iteration order is not guaranteed)\n *\n * _.values('hi');\n * // => ['h', 'i']\n */\n function values(object) {\n return object == null ? [] : baseValues(object, keys(object));\n }\n\n /**\n * Creates an array of the own and inherited enumerable string keyed property\n * values of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property values.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.valuesIn(new Foo);\n * // => [1, 2, 3] (iteration order is not guaranteed)\n */\n function valuesIn(object) {\n return object == null ? [] : baseValues(object, keysIn(object));\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Clamps `number` within the inclusive `lower` and `upper` bounds.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Number\n * @param {number} number The number to clamp.\n * @param {number} [lower] The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the clamped number.\n * @example\n *\n * _.clamp(-10, -5, 5);\n * // => -5\n *\n * _.clamp(10, -5, 5);\n * // => 5\n */\n function clamp(number, lower, upper) {\n if (upper === undefined) {\n upper = lower;\n lower = undefined;\n }\n if (upper !== undefined) {\n upper = toNumber(upper);\n upper = upper === upper ? upper : 0;\n }\n if (lower !== undefined) {\n lower = toNumber(lower);\n lower = lower === lower ? lower : 0;\n }\n return baseClamp(toNumber(number), lower, upper);\n }\n\n /**\n * Checks if `n` is between `start` and up to, but not including, `end`. If\n * `end` is not specified, it's set to `start` with `start` then set to `0`.\n * If `start` is greater than `end` the params are swapped to support\n * negative ranges.\n *\n * @static\n * @memberOf _\n * @since 3.3.0\n * @category Number\n * @param {number} number The number to check.\n * @param {number} [start=0] The start of the range.\n * @param {number} end The end of the range.\n * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n * @see _.range, _.rangeRight\n * @example\n *\n * _.inRange(3, 2, 4);\n * // => true\n *\n * _.inRange(4, 8);\n * // => true\n *\n * _.inRange(4, 2);\n * // => false\n *\n * _.inRange(2, 2);\n * // => false\n *\n * _.inRange(1.2, 2);\n * // => true\n *\n * _.inRange(5.2, 4);\n * // => false\n *\n * _.inRange(-3, -2, -6);\n * // => true\n */\n function inRange(number, start, end) {\n start = toFinite(start);\n if (end === undefined) {\n end = start;\n start = 0;\n } else {\n end = toFinite(end);\n }\n number = toNumber(number);\n return baseInRange(number, start, end);\n }\n\n /**\n * Produces a random number between the inclusive `lower` and `upper` bounds.\n * If only one argument is provided a number between `0` and the given number\n * is returned. If `floating` is `true`, or either `lower` or `upper` are\n * floats, a floating-point number is returned instead of an integer.\n *\n * **Note:** JavaScript follows the IEEE-754 standard for resolving\n * floating-point values which can produce unexpected results.\n *\n * @static\n * @memberOf _\n * @since 0.7.0\n * @category Number\n * @param {number} [lower=0] The lower bound.\n * @param {number} [upper=1] The upper bound.\n * @param {boolean} [floating] Specify returning a floating-point number.\n * @returns {number} Returns the random number.\n * @example\n *\n * _.random(0, 5);\n * // => an integer between 0 and 5\n *\n * _.random(5);\n * // => also an integer between 0 and 5\n *\n * _.random(5, true);\n * // => a floating-point number between 0 and 5\n *\n * _.random(1.2, 5.2);\n * // => a floating-point number between 1.2 and 5.2\n */\n function random(lower, upper, floating) {\n if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) {\n upper = floating = undefined;\n }\n if (floating === undefined) {\n if (typeof upper == 'boolean') {\n floating = upper;\n upper = undefined;\n }\n else if (typeof lower == 'boolean') {\n floating = lower;\n lower = undefined;\n }\n }\n if (lower === undefined && upper === undefined) {\n lower = 0;\n upper = 1;\n }\n else {\n lower = toFinite(lower);\n if (upper === undefined) {\n upper = lower;\n lower = 0;\n } else {\n upper = toFinite(upper);\n }\n }\n if (lower > upper) {\n var temp = lower;\n lower = upper;\n upper = temp;\n }\n if (floating || lower % 1 || upper % 1) {\n var rand = nativeRandom();\n return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper);\n }\n return baseRandom(lower, upper);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the camel cased string.\n * @example\n *\n * _.camelCase('Foo Bar');\n * // => 'fooBar'\n *\n * _.camelCase('--foo-bar--');\n * // => 'fooBar'\n *\n * _.camelCase('__FOO_BAR__');\n * // => 'fooBar'\n */\n var camelCase = createCompounder(function(result, word, index) {\n word = word.toLowerCase();\n return result + (index ? capitalize(word) : word);\n });\n\n /**\n * Converts the first character of `string` to upper case and the remaining\n * to lower case.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to capitalize.\n * @returns {string} Returns the capitalized string.\n * @example\n *\n * _.capitalize('FRED');\n * // => 'Fred'\n */\n function capitalize(string) {\n return upperFirst(toString(string).toLowerCase());\n }\n\n /**\n * Deburrs `string` by converting\n * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)\n * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)\n * letters to basic Latin letters and removing\n * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to deburr.\n * @returns {string} Returns the deburred string.\n * @example\n *\n * _.deburr('déjà vu');\n * // => 'deja vu'\n */\n function deburr(string) {\n string = toString(string);\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\n }\n\n /**\n * Checks if `string` ends with the given target string.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {string} [target] The string to search for.\n * @param {number} [position=string.length] The position to search up to.\n * @returns {boolean} Returns `true` if `string` ends with `target`,\n * else `false`.\n * @example\n *\n * _.endsWith('abc', 'c');\n * // => true\n *\n * _.endsWith('abc', 'b');\n * // => false\n *\n * _.endsWith('abc', 'b', 2);\n * // => true\n */\n function endsWith(string, target, position) {\n string = toString(string);\n target = baseToString(target);\n\n var length = string.length;\n position = position === undefined\n ? length\n : baseClamp(toInteger(position), 0, length);\n\n var end = position;\n position -= target.length;\n return position >= 0 && string.slice(position, end) == target;\n }\n\n /**\n * Converts the characters \"&\", \"<\", \">\", '\"', and \"'\" in `string` to their\n * corresponding HTML entities.\n *\n * **Note:** No other characters are escaped. To escape additional\n * characters use a third-party library like [_he_](https://mths.be/he).\n *\n * Though the \">\" character is escaped for symmetry, characters like\n * \">\" and \"/\" don't need escaping in HTML and have no special meaning\n * unless they're part of a tag or unquoted attribute value. See\n * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands)\n * (under \"semi-related fun fact\") for more details.\n *\n * When working with HTML you should always\n * [quote attribute values](http://wonko.com/post/html-escaping) to reduce\n * XSS vectors.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The string to escape.\n * @returns {string} Returns the escaped string.\n * @example\n *\n * _.escape('fred, barney, & pebbles');\n * // => 'fred, barney, & pebbles'\n */\n function escape(string) {\n string = toString(string);\n return (string && reHasUnescapedHtml.test(string))\n ? string.replace(reUnescapedHtml, escapeHtmlChar)\n : string;\n }\n\n /**\n * Escapes the `RegExp` special characters \"^\", \"$\", \"\\\", \".\", \"*\", \"+\",\n * \"?\", \"(\", \")\", \"[\", \"]\", \"{\", \"}\", and \"|\" in `string`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to escape.\n * @returns {string} Returns the escaped string.\n * @example\n *\n * _.escapeRegExp('[lodash](https://lodash.com/)');\n * // => '\\[lodash\\]\\(https://lodash\\.com/\\)'\n */\n function escapeRegExp(string) {\n string = toString(string);\n return (string && reHasRegExpChar.test(string))\n ? string.replace(reRegExpChar, '\\\\$&')\n : string;\n }\n\n /**\n * Converts `string` to\n * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the kebab cased string.\n * @example\n *\n * _.kebabCase('Foo Bar');\n * // => 'foo-bar'\n *\n * _.kebabCase('fooBar');\n * // => 'foo-bar'\n *\n * _.kebabCase('__FOO_BAR__');\n * // => 'foo-bar'\n */\n var kebabCase = createCompounder(function(result, word, index) {\n return result + (index ? '-' : '') + word.toLowerCase();\n });\n\n /**\n * Converts `string`, as space separated words, to lower case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the lower cased string.\n * @example\n *\n * _.lowerCase('--Foo-Bar--');\n * // => 'foo bar'\n *\n * _.lowerCase('fooBar');\n * // => 'foo bar'\n *\n * _.lowerCase('__FOO_BAR__');\n * // => 'foo bar'\n */\n var lowerCase = createCompounder(function(result, word, index) {\n return result + (index ? ' ' : '') + word.toLowerCase();\n });\n\n /**\n * Converts the first character of `string` to lower case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.lowerFirst('Fred');\n * // => 'fred'\n *\n * _.lowerFirst('FRED');\n * // => 'fRED'\n */\n var lowerFirst = createCaseFirst('toLowerCase');\n\n /**\n * Pads `string` on the left and right sides if it's shorter than `length`.\n * Padding characters are truncated if they can't be evenly divided by `length`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.pad('abc', 8);\n * // => ' abc '\n *\n * _.pad('abc', 8, '_-');\n * // => '_-abc_-_'\n *\n * _.pad('abc', 3);\n * // => 'abc'\n */\n function pad(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n if (!length || strLength >= length) {\n return string;\n }\n var mid = (length - strLength) / 2;\n return (\n createPadding(nativeFloor(mid), chars) +\n string +\n createPadding(nativeCeil(mid), chars)\n );\n }\n\n /**\n * Pads `string` on the right side if it's shorter than `length`. Padding\n * characters are truncated if they exceed `length`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.padEnd('abc', 6);\n * // => 'abc '\n *\n * _.padEnd('abc', 6, '_-');\n * // => 'abc_-_'\n *\n * _.padEnd('abc', 3);\n * // => 'abc'\n */\n function padEnd(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n return (length && strLength < length)\n ? (string + createPadding(length - strLength, chars))\n : string;\n }\n\n /**\n * Pads `string` on the left side if it's shorter than `length`. Padding\n * characters are truncated if they exceed `length`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.padStart('abc', 6);\n * // => ' abc'\n *\n * _.padStart('abc', 6, '_-');\n * // => '_-_abc'\n *\n * _.padStart('abc', 3);\n * // => 'abc'\n */\n function padStart(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n return (length && strLength < length)\n ? (createPadding(length - strLength, chars) + string)\n : string;\n }\n\n /**\n * Converts `string` to an integer of the specified radix. If `radix` is\n * `undefined` or `0`, a `radix` of `10` is used unless `value` is a\n * hexadecimal, in which case a `radix` of `16` is used.\n *\n * **Note:** This method aligns with the\n * [ES5 implementation](https://es5.github.io/#x15.1.2.2) of `parseInt`.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category String\n * @param {string} string The string to convert.\n * @param {number} [radix=10] The radix to interpret `value` by.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.parseInt('08');\n * // => 8\n *\n * _.map(['6', '08', '10'], _.parseInt);\n * // => [6, 8, 10]\n */\n function parseInt(string, radix, guard) {\n if (guard || radix == null) {\n radix = 0;\n } else if (radix) {\n radix = +radix;\n }\n return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0);\n }\n\n /**\n * Repeats the given string `n` times.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to repeat.\n * @param {number} [n=1] The number of times to repeat the string.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {string} Returns the repeated string.\n * @example\n *\n * _.repeat('*', 3);\n * // => '***'\n *\n * _.repeat('abc', 2);\n * // => 'abcabc'\n *\n * _.repeat('abc', 0);\n * // => ''\n */\n function repeat(string, n, guard) {\n if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) {\n n = 1;\n } else {\n n = toInteger(n);\n }\n return baseRepeat(toString(string), n);\n }\n\n /**\n * Replaces matches for `pattern` in `string` with `replacement`.\n *\n * **Note:** This method is based on\n * [`String#replace`](https://mdn.io/String/replace).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to modify.\n * @param {RegExp|string} pattern The pattern to replace.\n * @param {Function|string} replacement The match replacement.\n * @returns {string} Returns the modified string.\n * @example\n *\n * _.replace('Hi Fred', 'Fred', 'Barney');\n * // => 'Hi Barney'\n */\n function replace() {\n var args = arguments,\n string = toString(args[0]);\n\n return args.length < 3 ? string : string.replace(args[1], args[2]);\n }\n\n /**\n * Converts `string` to\n * [snake case](https://en.wikipedia.org/wiki/Snake_case).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the snake cased string.\n * @example\n *\n * _.snakeCase('Foo Bar');\n * // => 'foo_bar'\n *\n * _.snakeCase('fooBar');\n * // => 'foo_bar'\n *\n * _.snakeCase('--FOO-BAR--');\n * // => 'foo_bar'\n */\n var snakeCase = createCompounder(function(result, word, index) {\n return result + (index ? '_' : '') + word.toLowerCase();\n });\n\n /**\n * Splits `string` by `separator`.\n *\n * **Note:** This method is based on\n * [`String#split`](https://mdn.io/String/split).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to split.\n * @param {RegExp|string} separator The separator pattern to split by.\n * @param {number} [limit] The length to truncate results to.\n * @returns {Array} Returns the string segments.\n * @example\n *\n * _.split('a-b-c', '-', 2);\n * // => ['a', 'b']\n */\n function split(string, separator, limit) {\n if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) {\n separator = limit = undefined;\n }\n limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0;\n if (!limit) {\n return [];\n }\n string = toString(string);\n if (string && (\n typeof separator == 'string' ||\n (separator != null && !isRegExp(separator))\n )) {\n separator = baseToString(separator);\n if (!separator && hasUnicode(string)) {\n return castSlice(stringToArray(string), 0, limit);\n }\n }\n return string.split(separator, limit);\n }\n\n /**\n * Converts `string` to\n * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage).\n *\n * @static\n * @memberOf _\n * @since 3.1.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the start cased string.\n * @example\n *\n * _.startCase('--foo-bar--');\n * // => 'Foo Bar'\n *\n * _.startCase('fooBar');\n * // => 'Foo Bar'\n *\n * _.startCase('__FOO_BAR__');\n * // => 'FOO BAR'\n */\n var startCase = createCompounder(function(result, word, index) {\n return result + (index ? ' ' : '') + upperFirst(word);\n });\n\n /**\n * Checks if `string` starts with the given target string.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {string} [target] The string to search for.\n * @param {number} [position=0] The position to search from.\n * @returns {boolean} Returns `true` if `string` starts with `target`,\n * else `false`.\n * @example\n *\n * _.startsWith('abc', 'a');\n * // => true\n *\n * _.startsWith('abc', 'b');\n * // => false\n *\n * _.startsWith('abc', 'b', 1);\n * // => true\n */\n function startsWith(string, target, position) {\n string = toString(string);\n position = position == null\n ? 0\n : baseClamp(toInteger(position), 0, string.length);\n\n target = baseToString(target);\n return string.slice(position, position + target.length) == target;\n }\n\n /**\n * Creates a compiled template function that can interpolate data properties\n * in \"interpolate\" delimiters, HTML-escape interpolated data properties in\n * \"escape\" delimiters, and execute JavaScript in \"evaluate\" delimiters. Data\n * properties may be accessed as free variables in the template. If a setting\n * object is given, it takes precedence over `_.templateSettings` values.\n *\n * **Note:** In the development build `_.template` utilizes\n * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)\n * for easier debugging.\n *\n * For more information on precompiling templates see\n * [lodash's custom builds documentation](https://lodash.com/custom-builds).\n *\n * For more information on Chrome extension sandboxes see\n * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The template string.\n * @param {Object} [options={}] The options object.\n * @param {RegExp} [options.escape=_.templateSettings.escape]\n * The HTML \"escape\" delimiter.\n * @param {RegExp} [options.evaluate=_.templateSettings.evaluate]\n * The \"evaluate\" delimiter.\n * @param {Object} [options.imports=_.templateSettings.imports]\n * An object to import into the template as free variables.\n * @param {RegExp} [options.interpolate=_.templateSettings.interpolate]\n * The \"interpolate\" delimiter.\n * @param {string} [options.sourceURL='lodash.templateSources[n]']\n * The sourceURL of the compiled template.\n * @param {string} [options.variable='obj']\n * The data object variable name.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the compiled template function.\n * @example\n *\n * // Use the \"interpolate\" delimiter to create a compiled template.\n * var compiled = _.template('hello <%= user %>!');\n * compiled({ 'user': 'fred' });\n * // => 'hello fred!'\n *\n * // Use the HTML \"escape\" delimiter to escape data property values.\n * var compiled = _.template('<%- value %>');\n * compiled({ 'value': '