@tonconnect/ui 2.0.7-beta.2 → 2.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- var __defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,n)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,__spreadValues=(e,t)=>{for(var n in t||(t={}))__hasOwnProp.call(t,n)&&__defNormalProp(e,n,t[n]);if(__getOwnPropSymbols)for(var n of __getOwnPropSymbols(t))__propIsEnum.call(t,n)&&__defNormalProp(e,n,t[n]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t)),__publicField=(e,t,n)=>(__defNormalProp(e,"symbol"!=typeof t?t+"":t,n),n),__async=(e,t,n)=>new Promise(((r,o)=>{var i=e=>{try{a(n.next(e))}catch(t){o(t)}},s=e=>{try{a(n.throw(e))}catch(t){o(t)}},a=e=>e.done?r(e.value):Promise.resolve(e.value).then(i,s);a((n=n.apply(e,t)).next())}));!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TON_CONNECT_UI={})}(this,(function(e){var t,n,r,o,i,s,a,l,c="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function u(e){var t=e.default;if("function"==typeof t){var n=function(){return t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach((function(t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})})),n}var d,h,f,g={exports:{}};h=c,f=function(){var e={};function t(e){if(!/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/.test(e))throw new TypeError("invalid encoding")}return e.decodeUTF8=function(e){if("string"!=typeof e)throw new TypeError("expected string");var t,n=unescape(encodeURIComponent(e)),r=new Uint8Array(n.length);for(t=0;t<n.length;t++)r[t]=n.charCodeAt(t);return r},e.encodeUTF8=function(e){var t,n=[];for(t=0;t<e.length;t++)n.push(String.fromCharCode(e[t]));return decodeURIComponent(escape(n.join("")))},"undefined"==typeof atob?void 0!==Buffer.from?(e.encodeBase64=function(e){return Buffer.from(e).toString("base64")},e.decodeBase64=function(e){return t(e),new Uint8Array(Array.prototype.slice.call(Buffer.from(e,"base64"),0))}):(e.encodeBase64=function(e){return new Buffer(e).toString("base64")},e.decodeBase64=function(e){return t(e),new Uint8Array(Array.prototype.slice.call(new Buffer(e,"base64"),0))}):(e.encodeBase64=function(e){var t,n=[],r=e.length;for(t=0;t<r;t++)n.push(String.fromCharCode(e[t]));return btoa(n.join(""))},e.decodeBase64=function(e){t(e);var n,r=atob(e),o=new Uint8Array(r.length);for(n=0;n<r.length;n++)o[n]=r.charCodeAt(n);return o}),e},(d=g).exports?d.exports=f():(h.nacl||(h.nacl={}),h.nacl.util=f());const p=g.exports;function w(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var m={exports:{}};const v=u(Object.freeze(Object.defineProperty({__proto__:null,default:{}},Symbol.toStringTag,{value:"Module"})));!function(e){!function(e){var t=function(e){var t,n=new Float64Array(16);if(e)for(t=0;t<e.length;t++)n[t]=e[t];return n},n=function(){throw new Error("no PRNG")},r=new Uint8Array(16),o=new Uint8Array(32);o[0]=9;var i=t(),s=t([1]),a=t([56129,1]),l=t([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),c=t([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),u=t([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),d=t([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),h=t([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function f(e,t,n,r){e[t]=n>>24&255,e[t+1]=n>>16&255,e[t+2]=n>>8&255,e[t+3]=255&n,e[t+4]=r>>24&255,e[t+5]=r>>16&255,e[t+6]=r>>8&255,e[t+7]=255&r}function g(e,t,n,r,o){var i,s=0;for(i=0;i<o;i++)s|=e[t+i]^n[r+i];return(1&s-1>>>8)-1}function p(e,t,n,r){return g(e,t,n,r,16)}function m(e,t,n,r){return g(e,t,n,r,32)}function y(e,t,n,r){!function(e,t,n,r){for(var o,i=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,s=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,a=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,l=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,c=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,u=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,d=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,h=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,f=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,g=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,p=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,w=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,m=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,y=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,b=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,C=i,x=s,_=a,k=l,S=c,E=u,R=d,T=h,L=f,A=g,M=p,O=w,N=m,$=v,P=y,I=b,U=0;U<20;U+=2)C^=(o=(N^=(o=(L^=(o=(S^=(o=C+N|0)<<7|o>>>25)+C|0)<<9|o>>>23)+S|0)<<13|o>>>19)+L|0)<<18|o>>>14,E^=(o=(x^=(o=($^=(o=(A^=(o=E+x|0)<<7|o>>>25)+E|0)<<9|o>>>23)+A|0)<<13|o>>>19)+$|0)<<18|o>>>14,M^=(o=(R^=(o=(_^=(o=(P^=(o=M+R|0)<<7|o>>>25)+M|0)<<9|o>>>23)+P|0)<<13|o>>>19)+_|0)<<18|o>>>14,I^=(o=(O^=(o=(T^=(o=(k^=(o=I+O|0)<<7|o>>>25)+I|0)<<9|o>>>23)+k|0)<<13|o>>>19)+T|0)<<18|o>>>14,C^=(o=(k^=(o=(_^=(o=(x^=(o=C+k|0)<<7|o>>>25)+C|0)<<9|o>>>23)+x|0)<<13|o>>>19)+_|0)<<18|o>>>14,E^=(o=(S^=(o=(T^=(o=(R^=(o=E+S|0)<<7|o>>>25)+E|0)<<9|o>>>23)+R|0)<<13|o>>>19)+T|0)<<18|o>>>14,M^=(o=(A^=(o=(L^=(o=(O^=(o=M+A|0)<<7|o>>>25)+M|0)<<9|o>>>23)+O|0)<<13|o>>>19)+L|0)<<18|o>>>14,I^=(o=(P^=(o=($^=(o=(N^=(o=I+P|0)<<7|o>>>25)+I|0)<<9|o>>>23)+N|0)<<13|o>>>19)+$|0)<<18|o>>>14;C=C+i|0,x=x+s|0,_=_+a|0,k=k+l|0,S=S+c|0,E=E+u|0,R=R+d|0,T=T+h|0,L=L+f|0,A=A+g|0,M=M+p|0,O=O+w|0,N=N+m|0,$=$+v|0,P=P+y|0,I=I+b|0,e[0]=C>>>0&255,e[1]=C>>>8&255,e[2]=C>>>16&255,e[3]=C>>>24&255,e[4]=x>>>0&255,e[5]=x>>>8&255,e[6]=x>>>16&255,e[7]=x>>>24&255,e[8]=_>>>0&255,e[9]=_>>>8&255,e[10]=_>>>16&255,e[11]=_>>>24&255,e[12]=k>>>0&255,e[13]=k>>>8&255,e[14]=k>>>16&255,e[15]=k>>>24&255,e[16]=S>>>0&255,e[17]=S>>>8&255,e[18]=S>>>16&255,e[19]=S>>>24&255,e[20]=E>>>0&255,e[21]=E>>>8&255,e[22]=E>>>16&255,e[23]=E>>>24&255,e[24]=R>>>0&255,e[25]=R>>>8&255,e[26]=R>>>16&255,e[27]=R>>>24&255,e[28]=T>>>0&255,e[29]=T>>>8&255,e[30]=T>>>16&255,e[31]=T>>>24&255,e[32]=L>>>0&255,e[33]=L>>>8&255,e[34]=L>>>16&255,e[35]=L>>>24&255,e[36]=A>>>0&255,e[37]=A>>>8&255,e[38]=A>>>16&255,e[39]=A>>>24&255,e[40]=M>>>0&255,e[41]=M>>>8&255,e[42]=M>>>16&255,e[43]=M>>>24&255,e[44]=O>>>0&255,e[45]=O>>>8&255,e[46]=O>>>16&255,e[47]=O>>>24&255,e[48]=N>>>0&255,e[49]=N>>>8&255,e[50]=N>>>16&255,e[51]=N>>>24&255,e[52]=$>>>0&255,e[53]=$>>>8&255,e[54]=$>>>16&255,e[55]=$>>>24&255,e[56]=P>>>0&255,e[57]=P>>>8&255,e[58]=P>>>16&255,e[59]=P>>>24&255,e[60]=I>>>0&255,e[61]=I>>>8&255,e[62]=I>>>16&255,e[63]=I>>>24&255}(e,t,n,r)}function b(e,t,n,r){!function(e,t,n,r){for(var o,i=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,s=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,a=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,l=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,c=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,u=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,d=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,h=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,f=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,g=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,p=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,w=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,m=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,y=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,b=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,C=0;C<20;C+=2)i^=(o=(m^=(o=(f^=(o=(c^=(o=i+m|0)<<7|o>>>25)+i|0)<<9|o>>>23)+c|0)<<13|o>>>19)+f|0)<<18|o>>>14,u^=(o=(s^=(o=(v^=(o=(g^=(o=u+s|0)<<7|o>>>25)+u|0)<<9|o>>>23)+g|0)<<13|o>>>19)+v|0)<<18|o>>>14,p^=(o=(d^=(o=(a^=(o=(y^=(o=p+d|0)<<7|o>>>25)+p|0)<<9|o>>>23)+y|0)<<13|o>>>19)+a|0)<<18|o>>>14,b^=(o=(w^=(o=(h^=(o=(l^=(o=b+w|0)<<7|o>>>25)+b|0)<<9|o>>>23)+l|0)<<13|o>>>19)+h|0)<<18|o>>>14,i^=(o=(l^=(o=(a^=(o=(s^=(o=i+l|0)<<7|o>>>25)+i|0)<<9|o>>>23)+s|0)<<13|o>>>19)+a|0)<<18|o>>>14,u^=(o=(c^=(o=(h^=(o=(d^=(o=u+c|0)<<7|o>>>25)+u|0)<<9|o>>>23)+d|0)<<13|o>>>19)+h|0)<<18|o>>>14,p^=(o=(g^=(o=(f^=(o=(w^=(o=p+g|0)<<7|o>>>25)+p|0)<<9|o>>>23)+w|0)<<13|o>>>19)+f|0)<<18|o>>>14,b^=(o=(y^=(o=(v^=(o=(m^=(o=b+y|0)<<7|o>>>25)+b|0)<<9|o>>>23)+m|0)<<13|o>>>19)+v|0)<<18|o>>>14;e[0]=i>>>0&255,e[1]=i>>>8&255,e[2]=i>>>16&255,e[3]=i>>>24&255,e[4]=u>>>0&255,e[5]=u>>>8&255,e[6]=u>>>16&255,e[7]=u>>>24&255,e[8]=p>>>0&255,e[9]=p>>>8&255,e[10]=p>>>16&255,e[11]=p>>>24&255,e[12]=b>>>0&255,e[13]=b>>>8&255,e[14]=b>>>16&255,e[15]=b>>>24&255,e[16]=d>>>0&255,e[17]=d>>>8&255,e[18]=d>>>16&255,e[19]=d>>>24&255,e[20]=h>>>0&255,e[21]=h>>>8&255,e[22]=h>>>16&255,e[23]=h>>>24&255,e[24]=f>>>0&255,e[25]=f>>>8&255,e[26]=f>>>16&255,e[27]=f>>>24&255,e[28]=g>>>0&255,e[29]=g>>>8&255,e[30]=g>>>16&255,e[31]=g>>>24&255}(e,t,n,r)}var C=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function x(e,t,n,r,o,i,s){var a,l,c=new Uint8Array(16),u=new Uint8Array(64);for(l=0;l<16;l++)c[l]=0;for(l=0;l<8;l++)c[l]=i[l];for(;o>=64;){for(y(u,c,s,C),l=0;l<64;l++)e[t+l]=n[r+l]^u[l];for(a=1,l=8;l<16;l++)a=a+(255&c[l])|0,c[l]=255&a,a>>>=8;o-=64,t+=64,r+=64}if(o>0)for(y(u,c,s,C),l=0;l<o;l++)e[t+l]=n[r+l]^u[l];return 0}function _(e,t,n,r,o){var i,s,a=new Uint8Array(16),l=new Uint8Array(64);for(s=0;s<16;s++)a[s]=0;for(s=0;s<8;s++)a[s]=r[s];for(;n>=64;){for(y(l,a,o,C),s=0;s<64;s++)e[t+s]=l[s];for(i=1,s=8;s<16;s++)i=i+(255&a[s])|0,a[s]=255&i,i>>>=8;n-=64,t+=64}if(n>0)for(y(l,a,o,C),s=0;s<n;s++)e[t+s]=l[s];return 0}function k(e,t,n,r,o){var i=new Uint8Array(32);b(i,r,o,C);for(var s=new Uint8Array(8),a=0;a<8;a++)s[a]=r[a+16];return _(e,t,n,s,i)}function S(e,t,n,r,o,i,s){var a=new Uint8Array(32);b(a,i,s,C);for(var l=new Uint8Array(8),c=0;c<8;c++)l[c]=i[c+16];return x(e,t,n,r,o,l,a)}var E=function(e){var t,n,r,o,i,s,a,l;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,t=255&e[0]|(255&e[1])<<8,this.r[0]=8191&t,n=255&e[2]|(255&e[3])<<8,this.r[1]=8191&(t>>>13|n<<3),r=255&e[4]|(255&e[5])<<8,this.r[2]=7939&(n>>>10|r<<6),o=255&e[6]|(255&e[7])<<8,this.r[3]=8191&(r>>>7|o<<9),i=255&e[8]|(255&e[9])<<8,this.r[4]=255&(o>>>4|i<<12),this.r[5]=i>>>1&8190,s=255&e[10]|(255&e[11])<<8,this.r[6]=8191&(i>>>14|s<<2),a=255&e[12]|(255&e[13])<<8,this.r[7]=8065&(s>>>11|a<<5),l=255&e[14]|(255&e[15])<<8,this.r[8]=8191&(a>>>8|l<<8),this.r[9]=l>>>5&127,this.pad[0]=255&e[16]|(255&e[17])<<8,this.pad[1]=255&e[18]|(255&e[19])<<8,this.pad[2]=255&e[20]|(255&e[21])<<8,this.pad[3]=255&e[22]|(255&e[23])<<8,this.pad[4]=255&e[24]|(255&e[25])<<8,this.pad[5]=255&e[26]|(255&e[27])<<8,this.pad[6]=255&e[28]|(255&e[29])<<8,this.pad[7]=255&e[30]|(255&e[31])<<8};function R(e,t,n,r,o,i){var s=new E(i);return s.update(n,r,o),s.finish(e,t),0}function T(e,t,n,r,o,i){var s=new Uint8Array(16);return R(s,0,n,r,o,i),p(e,t,s,0)}function L(e,t,n,r,o){var i;if(n<32)return-1;for(S(e,0,t,0,n,r,o),R(e,16,e,32,n-32,e),i=0;i<16;i++)e[i]=0;return 0}function A(e,t,n,r,o){var i,s=new Uint8Array(32);if(n<32)return-1;if(k(s,0,32,r,o),0!==T(t,16,t,32,n-32,s))return-1;for(S(e,0,t,0,n,r,o),i=0;i<32;i++)e[i]=0;return 0}function M(e,t){var n;for(n=0;n<16;n++)e[n]=0|t[n]}function O(e){var t,n,r=1;for(t=0;t<16;t++)n=e[t]+r+65535,r=Math.floor(n/65536),e[t]=n-65536*r;e[0]+=r-1+37*(r-1)}function N(e,t,n){for(var r,o=~(n-1),i=0;i<16;i++)r=o&(e[i]^t[i]),e[i]^=r,t[i]^=r}function $(e,n){var r,o,i,s=t(),a=t();for(r=0;r<16;r++)a[r]=n[r];for(O(a),O(a),O(a),o=0;o<2;o++){for(s[0]=a[0]-65517,r=1;r<15;r++)s[r]=a[r]-65535-(s[r-1]>>16&1),s[r-1]&=65535;s[15]=a[15]-32767-(s[14]>>16&1),i=s[15]>>16&1,s[14]&=65535,N(a,s,1-i)}for(r=0;r<16;r++)e[2*r]=255&a[r],e[2*r+1]=a[r]>>8}function P(e,t){var n=new Uint8Array(32),r=new Uint8Array(32);return $(n,e),$(r,t),m(n,0,r,0)}function I(e){var t=new Uint8Array(32);return $(t,e),1&t[0]}function U(e,t){var n;for(n=0;n<16;n++)e[n]=t[2*n]+(t[2*n+1]<<8);e[15]&=32767}function W(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]+n[r]}function j(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]-n[r]}function B(e,t,n){var r,o,i=0,s=0,a=0,l=0,c=0,u=0,d=0,h=0,f=0,g=0,p=0,w=0,m=0,v=0,y=0,b=0,C=0,x=0,_=0,k=0,S=0,E=0,R=0,T=0,L=0,A=0,M=0,O=0,N=0,$=0,P=0,I=n[0],U=n[1],W=n[2],j=n[3],B=n[4],D=n[5],H=n[6],V=n[7],K=n[8],F=n[9],q=n[10],z=n[11],Z=n[12],G=n[13],Y=n[14],Q=n[15];i+=(r=t[0])*I,s+=r*U,a+=r*W,l+=r*j,c+=r*B,u+=r*D,d+=r*H,h+=r*V,f+=r*K,g+=r*F,p+=r*q,w+=r*z,m+=r*Z,v+=r*G,y+=r*Y,b+=r*Q,s+=(r=t[1])*I,a+=r*U,l+=r*W,c+=r*j,u+=r*B,d+=r*D,h+=r*H,f+=r*V,g+=r*K,p+=r*F,w+=r*q,m+=r*z,v+=r*Z,y+=r*G,b+=r*Y,C+=r*Q,a+=(r=t[2])*I,l+=r*U,c+=r*W,u+=r*j,d+=r*B,h+=r*D,f+=r*H,g+=r*V,p+=r*K,w+=r*F,m+=r*q,v+=r*z,y+=r*Z,b+=r*G,C+=r*Y,x+=r*Q,l+=(r=t[3])*I,c+=r*U,u+=r*W,d+=r*j,h+=r*B,f+=r*D,g+=r*H,p+=r*V,w+=r*K,m+=r*F,v+=r*q,y+=r*z,b+=r*Z,C+=r*G,x+=r*Y,_+=r*Q,c+=(r=t[4])*I,u+=r*U,d+=r*W,h+=r*j,f+=r*B,g+=r*D,p+=r*H,w+=r*V,m+=r*K,v+=r*F,y+=r*q,b+=r*z,C+=r*Z,x+=r*G,_+=r*Y,k+=r*Q,u+=(r=t[5])*I,d+=r*U,h+=r*W,f+=r*j,g+=r*B,p+=r*D,w+=r*H,m+=r*V,v+=r*K,y+=r*F,b+=r*q,C+=r*z,x+=r*Z,_+=r*G,k+=r*Y,S+=r*Q,d+=(r=t[6])*I,h+=r*U,f+=r*W,g+=r*j,p+=r*B,w+=r*D,m+=r*H,v+=r*V,y+=r*K,b+=r*F,C+=r*q,x+=r*z,_+=r*Z,k+=r*G,S+=r*Y,E+=r*Q,h+=(r=t[7])*I,f+=r*U,g+=r*W,p+=r*j,w+=r*B,m+=r*D,v+=r*H,y+=r*V,b+=r*K,C+=r*F,x+=r*q,_+=r*z,k+=r*Z,S+=r*G,E+=r*Y,R+=r*Q,f+=(r=t[8])*I,g+=r*U,p+=r*W,w+=r*j,m+=r*B,v+=r*D,y+=r*H,b+=r*V,C+=r*K,x+=r*F,_+=r*q,k+=r*z,S+=r*Z,E+=r*G,R+=r*Y,T+=r*Q,g+=(r=t[9])*I,p+=r*U,w+=r*W,m+=r*j,v+=r*B,y+=r*D,b+=r*H,C+=r*V,x+=r*K,_+=r*F,k+=r*q,S+=r*z,E+=r*Z,R+=r*G,T+=r*Y,L+=r*Q,p+=(r=t[10])*I,w+=r*U,m+=r*W,v+=r*j,y+=r*B,b+=r*D,C+=r*H,x+=r*V,_+=r*K,k+=r*F,S+=r*q,E+=r*z,R+=r*Z,T+=r*G,L+=r*Y,A+=r*Q,w+=(r=t[11])*I,m+=r*U,v+=r*W,y+=r*j,b+=r*B,C+=r*D,x+=r*H,_+=r*V,k+=r*K,S+=r*F,E+=r*q,R+=r*z,T+=r*Z,L+=r*G,A+=r*Y,M+=r*Q,m+=(r=t[12])*I,v+=r*U,y+=r*W,b+=r*j,C+=r*B,x+=r*D,_+=r*H,k+=r*V,S+=r*K,E+=r*F,R+=r*q,T+=r*z,L+=r*Z,A+=r*G,M+=r*Y,O+=r*Q,v+=(r=t[13])*I,y+=r*U,b+=r*W,C+=r*j,x+=r*B,_+=r*D,k+=r*H,S+=r*V,E+=r*K,R+=r*F,T+=r*q,L+=r*z,A+=r*Z,M+=r*G,O+=r*Y,N+=r*Q,y+=(r=t[14])*I,b+=r*U,C+=r*W,x+=r*j,_+=r*B,k+=r*D,S+=r*H,E+=r*V,R+=r*K,T+=r*F,L+=r*q,A+=r*z,M+=r*Z,O+=r*G,N+=r*Y,$+=r*Q,b+=(r=t[15])*I,s+=38*(x+=r*W),a+=38*(_+=r*j),l+=38*(k+=r*B),c+=38*(S+=r*D),u+=38*(E+=r*H),d+=38*(R+=r*V),h+=38*(T+=r*K),f+=38*(L+=r*F),g+=38*(A+=r*q),p+=38*(M+=r*z),w+=38*(O+=r*Z),m+=38*(N+=r*G),v+=38*($+=r*Y),y+=38*(P+=r*Q),i=(r=(i+=38*(C+=r*U))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),a=(r=a+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),w=(r=w+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),i=(r=(i+=o-1+37*(o-1))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),a=(r=a+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),w=(r=w+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),i+=o-1+37*(o-1),e[0]=i,e[1]=s,e[2]=a,e[3]=l,e[4]=c,e[5]=u,e[6]=d,e[7]=h,e[8]=f,e[9]=g,e[10]=p,e[11]=w,e[12]=m,e[13]=v,e[14]=y,e[15]=b}function D(e,t){B(e,t,t)}function H(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=253;r>=0;r--)D(o,o),2!==r&&4!==r&&B(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function V(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=250;r>=0;r--)D(o,o),1!==r&&B(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function K(e,n,r){var o,i,s=new Uint8Array(32),l=new Float64Array(80),c=t(),u=t(),d=t(),h=t(),f=t(),g=t();for(i=0;i<31;i++)s[i]=n[i];for(s[31]=127&n[31]|64,s[0]&=248,U(l,r),i=0;i<16;i++)u[i]=l[i],h[i]=c[i]=d[i]=0;for(c[0]=h[0]=1,i=254;i>=0;--i)N(c,u,o=s[i>>>3]>>>(7&i)&1),N(d,h,o),W(f,c,d),j(c,c,d),W(d,u,h),j(u,u,h),D(h,f),D(g,c),B(c,d,c),B(d,u,f),W(f,c,d),j(c,c,d),D(u,c),j(d,h,g),B(c,d,a),W(c,c,h),B(d,d,c),B(c,h,g),B(h,u,l),D(u,f),N(c,u,o),N(d,h,o);for(i=0;i<16;i++)l[i+16]=c[i],l[i+32]=d[i],l[i+48]=u[i],l[i+64]=h[i];var p=l.subarray(32),w=l.subarray(16);return H(p,p),B(w,w,p),$(e,w),0}function F(e,t){return K(e,t,o)}function q(e,t){return n(t,32),F(e,t)}function z(e,t,n){var o=new Uint8Array(32);return K(o,n,t),b(e,r,o,C)}E.prototype.blocks=function(e,t,n){for(var r,o,i,s,a,l,c,u,d,h,f,g,p,w,m,v,y,b,C,x=this.fin?0:2048,_=this.h[0],k=this.h[1],S=this.h[2],E=this.h[3],R=this.h[4],T=this.h[5],L=this.h[6],A=this.h[7],M=this.h[8],O=this.h[9],N=this.r[0],$=this.r[1],P=this.r[2],I=this.r[3],U=this.r[4],W=this.r[5],j=this.r[6],B=this.r[7],D=this.r[8],H=this.r[9];n>=16;)h=d=0,h+=(_+=8191&(r=255&e[t+0]|(255&e[t+1])<<8))*N,h+=(k+=8191&(r>>>13|(o=255&e[t+2]|(255&e[t+3])<<8)<<3))*(5*H),h+=(S+=8191&(o>>>10|(i=255&e[t+4]|(255&e[t+5])<<8)<<6))*(5*D),h+=(E+=8191&(i>>>7|(s=255&e[t+6]|(255&e[t+7])<<8)<<9))*(5*B),d=(h+=(R+=8191&(s>>>4|(a=255&e[t+8]|(255&e[t+9])<<8)<<12))*(5*j))>>>13,h&=8191,h+=(T+=a>>>1&8191)*(5*W),h+=(L+=8191&(a>>>14|(l=255&e[t+10]|(255&e[t+11])<<8)<<2))*(5*U),h+=(A+=8191&(l>>>11|(c=255&e[t+12]|(255&e[t+13])<<8)<<5))*(5*I),h+=(M+=8191&(c>>>8|(u=255&e[t+14]|(255&e[t+15])<<8)<<8))*(5*P),f=d+=(h+=(O+=u>>>5|x)*(5*$))>>>13,f+=_*$,f+=k*N,f+=S*(5*H),f+=E*(5*D),d=(f+=R*(5*B))>>>13,f&=8191,f+=T*(5*j),f+=L*(5*W),f+=A*(5*U),f+=M*(5*I),d+=(f+=O*(5*P))>>>13,f&=8191,g=d,g+=_*P,g+=k*$,g+=S*N,g+=E*(5*H),d=(g+=R*(5*D))>>>13,g&=8191,g+=T*(5*B),g+=L*(5*j),g+=A*(5*W),g+=M*(5*U),p=d+=(g+=O*(5*I))>>>13,p+=_*I,p+=k*P,p+=S*$,p+=E*N,d=(p+=R*(5*H))>>>13,p&=8191,p+=T*(5*D),p+=L*(5*B),p+=A*(5*j),p+=M*(5*W),w=d+=(p+=O*(5*U))>>>13,w+=_*U,w+=k*I,w+=S*P,w+=E*$,d=(w+=R*N)>>>13,w&=8191,w+=T*(5*H),w+=L*(5*D),w+=A*(5*B),w+=M*(5*j),m=d+=(w+=O*(5*W))>>>13,m+=_*W,m+=k*U,m+=S*I,m+=E*P,d=(m+=R*$)>>>13,m&=8191,m+=T*N,m+=L*(5*H),m+=A*(5*D),m+=M*(5*B),v=d+=(m+=O*(5*j))>>>13,v+=_*j,v+=k*W,v+=S*U,v+=E*I,d=(v+=R*P)>>>13,v&=8191,v+=T*$,v+=L*N,v+=A*(5*H),v+=M*(5*D),y=d+=(v+=O*(5*B))>>>13,y+=_*B,y+=k*j,y+=S*W,y+=E*U,d=(y+=R*I)>>>13,y&=8191,y+=T*P,y+=L*$,y+=A*N,y+=M*(5*H),b=d+=(y+=O*(5*D))>>>13,b+=_*D,b+=k*B,b+=S*j,b+=E*W,d=(b+=R*U)>>>13,b&=8191,b+=T*I,b+=L*P,b+=A*$,b+=M*N,C=d+=(b+=O*(5*H))>>>13,C+=_*H,C+=k*D,C+=S*B,C+=E*j,d=(C+=R*W)>>>13,C&=8191,C+=T*U,C+=L*I,C+=A*P,C+=M*$,_=h=8191&(d=(d=((d+=(C+=O*N)>>>13)<<2)+d|0)+(h&=8191)|0),k=f+=d>>>=13,S=g&=8191,E=p&=8191,R=w&=8191,T=m&=8191,L=v&=8191,A=y&=8191,M=b&=8191,O=C&=8191,t+=16,n-=16;this.h[0]=_,this.h[1]=k,this.h[2]=S,this.h[3]=E,this.h[4]=R,this.h[5]=T,this.h[6]=L,this.h[7]=A,this.h[8]=M,this.h[9]=O},E.prototype.finish=function(e,t){var n,r,o,i,s=new Uint16Array(10);if(this.leftover){for(i=this.leftover,this.buffer[i++]=1;i<16;i++)this.buffer[i]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(n=this.h[1]>>>13,this.h[1]&=8191,i=2;i<10;i++)this.h[i]+=n,n=this.h[i]>>>13,this.h[i]&=8191;for(this.h[0]+=5*n,n=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=n,n=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=n,s[0]=this.h[0]+5,n=s[0]>>>13,s[0]&=8191,i=1;i<10;i++)s[i]=this.h[i]+n,n=s[i]>>>13,s[i]&=8191;for(s[9]-=8192,r=(1^n)-1,i=0;i<10;i++)s[i]&=r;for(r=~r,i=0;i<10;i++)this.h[i]=this.h[i]&r|s[i];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),o=this.h[0]+this.pad[0],this.h[0]=65535&o,i=1;i<8;i++)o=(this.h[i]+this.pad[i]|0)+(o>>>16)|0,this.h[i]=65535&o;e[t+0]=this.h[0]>>>0&255,e[t+1]=this.h[0]>>>8&255,e[t+2]=this.h[1]>>>0&255,e[t+3]=this.h[1]>>>8&255,e[t+4]=this.h[2]>>>0&255,e[t+5]=this.h[2]>>>8&255,e[t+6]=this.h[3]>>>0&255,e[t+7]=this.h[3]>>>8&255,e[t+8]=this.h[4]>>>0&255,e[t+9]=this.h[4]>>>8&255,e[t+10]=this.h[5]>>>0&255,e[t+11]=this.h[5]>>>8&255,e[t+12]=this.h[6]>>>0&255,e[t+13]=this.h[6]>>>8&255,e[t+14]=this.h[7]>>>0&255,e[t+15]=this.h[7]>>>8&255},E.prototype.update=function(e,t,n){var r,o;if(this.leftover){for((o=16-this.leftover)>n&&(o=n),r=0;r<o;r++)this.buffer[this.leftover+r]=e[t+r];if(n-=o,t+=o,this.leftover+=o,this.leftover<16)return;this.blocks(this.buffer,0,16),this.leftover=0}if(n>=16&&(o=n-n%16,this.blocks(e,t,o),t+=o,n-=o),n){for(r=0;r<n;r++)this.buffer[this.leftover+r]=e[t+r];this.leftover+=n}};var Z=L,G=A;var 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 Q(e,t,n,r){for(var o,i,s,a,l,c,u,d,h,f,g,p,w,m,v,y,b,C,x,_,k,S,E,R,T,L,A=new Int32Array(16),M=new Int32Array(16),O=e[0],N=e[1],$=e[2],P=e[3],I=e[4],U=e[5],W=e[6],j=e[7],B=t[0],D=t[1],H=t[2],V=t[3],K=t[4],F=t[5],q=t[6],z=t[7],Z=0;r>=128;){for(x=0;x<16;x++)_=8*x+Z,A[x]=n[_+0]<<24|n[_+1]<<16|n[_+2]<<8|n[_+3],M[x]=n[_+4]<<24|n[_+5]<<16|n[_+6]<<8|n[_+7];for(x=0;x<80;x++)if(o=O,i=N,s=$,a=P,l=I,c=U,u=W,j,h=B,f=D,g=H,p=V,w=K,m=F,v=q,z,E=65535&(S=z),R=S>>>16,T=65535&(k=j),L=k>>>16,E+=65535&(S=(K>>>14|I<<18)^(K>>>18|I<<14)^(I>>>9|K<<23)),R+=S>>>16,T+=65535&(k=(I>>>14|K<<18)^(I>>>18|K<<14)^(K>>>9|I<<23)),L+=k>>>16,E+=65535&(S=K&F^~K&q),R+=S>>>16,T+=65535&(k=I&U^~I&W),L+=k>>>16,k=Y[2*x],E+=65535&(S=Y[2*x+1]),R+=S>>>16,T+=65535&k,L+=k>>>16,k=A[x%16],R+=(S=M[x%16])>>>16,T+=65535&k,L+=k>>>16,T+=(R+=(E+=65535&S)>>>16)>>>16,E=65535&(S=C=65535&E|R<<16),R=S>>>16,T=65535&(k=b=65535&T|(L+=T>>>16)<<16),L=k>>>16,E+=65535&(S=(B>>>28|O<<4)^(O>>>2|B<<30)^(O>>>7|B<<25)),R+=S>>>16,T+=65535&(k=(O>>>28|B<<4)^(B>>>2|O<<30)^(B>>>7|O<<25)),L+=k>>>16,R+=(S=B&D^B&H^D&H)>>>16,T+=65535&(k=O&N^O&$^N&$),L+=k>>>16,d=65535&(T+=(R+=(E+=65535&S)>>>16)>>>16)|(L+=T>>>16)<<16,y=65535&E|R<<16,E=65535&(S=p),R=S>>>16,T=65535&(k=a),L=k>>>16,R+=(S=C)>>>16,T+=65535&(k=b),L+=k>>>16,N=o,$=i,P=s,I=a=65535&(T+=(R+=(E+=65535&S)>>>16)>>>16)|(L+=T>>>16)<<16,U=l,W=c,j=u,O=d,D=h,H=f,V=g,K=p=65535&E|R<<16,F=w,q=m,z=v,B=y,x%16==15)for(_=0;_<16;_++)k=A[_],E=65535&(S=M[_]),R=S>>>16,T=65535&k,L=k>>>16,k=A[(_+9)%16],E+=65535&(S=M[(_+9)%16]),R+=S>>>16,T+=65535&k,L+=k>>>16,b=A[(_+1)%16],E+=65535&(S=((C=M[(_+1)%16])>>>1|b<<31)^(C>>>8|b<<24)^(C>>>7|b<<25)),R+=S>>>16,T+=65535&(k=(b>>>1|C<<31)^(b>>>8|C<<24)^b>>>7),L+=k>>>16,b=A[(_+14)%16],R+=(S=((C=M[(_+14)%16])>>>19|b<<13)^(b>>>29|C<<3)^(C>>>6|b<<26))>>>16,T+=65535&(k=(b>>>19|C<<13)^(C>>>29|b<<3)^b>>>6),L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,A[_]=65535&T|L<<16,M[_]=65535&E|R<<16;E=65535&(S=B),R=S>>>16,T=65535&(k=O),L=k>>>16,k=e[0],R+=(S=t[0])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[0]=O=65535&T|L<<16,t[0]=B=65535&E|R<<16,E=65535&(S=D),R=S>>>16,T=65535&(k=N),L=k>>>16,k=e[1],R+=(S=t[1])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[1]=N=65535&T|L<<16,t[1]=D=65535&E|R<<16,E=65535&(S=H),R=S>>>16,T=65535&(k=$),L=k>>>16,k=e[2],R+=(S=t[2])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[2]=$=65535&T|L<<16,t[2]=H=65535&E|R<<16,E=65535&(S=V),R=S>>>16,T=65535&(k=P),L=k>>>16,k=e[3],R+=(S=t[3])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[3]=P=65535&T|L<<16,t[3]=V=65535&E|R<<16,E=65535&(S=K),R=S>>>16,T=65535&(k=I),L=k>>>16,k=e[4],R+=(S=t[4])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[4]=I=65535&T|L<<16,t[4]=K=65535&E|R<<16,E=65535&(S=F),R=S>>>16,T=65535&(k=U),L=k>>>16,k=e[5],R+=(S=t[5])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[5]=U=65535&T|L<<16,t[5]=F=65535&E|R<<16,E=65535&(S=q),R=S>>>16,T=65535&(k=W),L=k>>>16,k=e[6],R+=(S=t[6])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[6]=W=65535&T|L<<16,t[6]=q=65535&E|R<<16,E=65535&(S=z),R=S>>>16,T=65535&(k=j),L=k>>>16,k=e[7],R+=(S=t[7])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[7]=j=65535&T|L<<16,t[7]=z=65535&E|R<<16,Z+=128,r-=128}return r}function J(e,t,n){var r,o=new Int32Array(8),i=new Int32Array(8),s=new Uint8Array(256),a=n;for(o[0]=1779033703,o[1]=3144134277,o[2]=1013904242,o[3]=2773480762,o[4]=1359893119,o[5]=2600822924,o[6]=528734635,o[7]=1541459225,i[0]=4089235720,i[1]=2227873595,i[2]=4271175723,i[3]=1595750129,i[4]=2917565137,i[5]=725511199,i[6]=4215389547,i[7]=327033209,Q(o,i,t,n),n%=128,r=0;r<n;r++)s[r]=t[a-n+r];for(s[n]=128,s[(n=256-128*(n<112?1:0))-9]=0,f(s,n-8,a/536870912|0,a<<3),Q(o,i,s,n),r=0;r<8;r++)f(e,8*r,o[r],i[r]);return 0}function X(e,n){var r=t(),o=t(),i=t(),s=t(),a=t(),l=t(),u=t(),d=t(),h=t();j(r,e[1],e[0]),j(h,n[1],n[0]),B(r,r,h),W(o,e[0],e[1]),W(h,n[0],n[1]),B(o,o,h),B(i,e[3],n[3]),B(i,i,c),B(s,e[2],n[2]),W(s,s,s),j(a,o,r),j(l,s,i),W(u,s,i),W(d,o,r),B(e[0],a,l),B(e[1],d,u),B(e[2],u,l),B(e[3],a,d)}function ee(e,t,n){var r;for(r=0;r<4;r++)N(e[r],t[r],n)}function te(e,n){var r=t(),o=t(),i=t();H(i,n[2]),B(r,n[0],i),B(o,n[1],i),$(e,o),e[31]^=I(r)<<7}function ne(e,t,n){var r,o;for(M(e[0],i),M(e[1],s),M(e[2],s),M(e[3],i),o=255;o>=0;--o)ee(e,t,r=n[o/8|0]>>(7&o)&1),X(t,e),X(e,e),ee(e,t,r)}function re(e,n){var r=[t(),t(),t(),t()];M(r[0],u),M(r[1],d),M(r[2],s),B(r[3],u,d),ne(e,r,n)}function oe(e,r,o){var i,s=new Uint8Array(64),a=[t(),t(),t(),t()];for(o||n(r,32),J(s,r,32),s[0]&=248,s[31]&=127,s[31]|=64,re(a,s),te(e,a),i=0;i<32;i++)r[i+32]=e[i];return 0}var ie=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 se(e,t){var n,r,o,i;for(r=63;r>=32;--r){for(n=0,o=r-32,i=r-12;o<i;++o)t[o]+=n-16*t[r]*ie[o-(r-32)],n=Math.floor((t[o]+128)/256),t[o]-=256*n;t[o]+=n,t[r]=0}for(n=0,o=0;o<32;o++)t[o]+=n-(t[31]>>4)*ie[o],n=t[o]>>8,t[o]&=255;for(o=0;o<32;o++)t[o]-=n*ie[o];for(r=0;r<32;r++)t[r+1]+=t[r]>>8,e[r]=255&t[r]}function ae(e){var t,n=new Float64Array(64);for(t=0;t<64;t++)n[t]=e[t];for(t=0;t<64;t++)e[t]=0;se(e,n)}function le(e,n,r,o){var i,s,a=new Uint8Array(64),l=new Uint8Array(64),c=new Uint8Array(64),u=new Float64Array(64),d=[t(),t(),t(),t()];J(a,o,32),a[0]&=248,a[31]&=127,a[31]|=64;var h=r+64;for(i=0;i<r;i++)e[64+i]=n[i];for(i=0;i<32;i++)e[32+i]=a[32+i];for(J(c,e.subarray(32),r+32),ae(c),re(d,c),te(e,d),i=32;i<64;i++)e[i]=o[i];for(J(l,e,r+64),ae(l),i=0;i<64;i++)u[i]=0;for(i=0;i<32;i++)u[i]=c[i];for(i=0;i<32;i++)for(s=0;s<32;s++)u[i+s]+=l[i]*a[s];return se(e.subarray(32),u),h}function ce(e,n,r,o){var a,c=new Uint8Array(32),u=new Uint8Array(64),d=[t(),t(),t(),t()],f=[t(),t(),t(),t()];if(r<64)return-1;if(function(e,n){var r=t(),o=t(),a=t(),c=t(),u=t(),d=t(),f=t();return M(e[2],s),U(e[1],n),D(a,e[1]),B(c,a,l),j(a,a,e[2]),W(c,e[2],c),D(u,c),D(d,u),B(f,d,u),B(r,f,a),B(r,r,c),V(r,r),B(r,r,a),B(r,r,c),B(r,r,c),B(e[0],r,c),D(o,e[0]),B(o,o,c),P(o,a)&&B(e[0],e[0],h),D(o,e[0]),B(o,o,c),P(o,a)?-1:(I(e[0])===n[31]>>7&&j(e[0],i,e[0]),B(e[3],e[0],e[1]),0)}(f,o))return-1;for(a=0;a<r;a++)e[a]=n[a];for(a=0;a<32;a++)e[a+32]=o[a];if(J(u,e,r),ae(u),ne(d,f,u),re(f,n.subarray(32)),X(d,f),te(c,d),r-=64,m(n,0,c,0)){for(a=0;a<r;a++)e[a]=0;return-1}for(a=0;a<r;a++)e[a]=n[a+64];return r}var ue=32,de=24,he=16,fe=32,ge=32,pe=de,we=64,me=32,ve=64;function ye(e,t){if(e.length!==ue)throw new Error("bad key size");if(t.length!==de)throw new Error("bad nonce size")}function be(){for(var e=0;e<arguments.length;e++)if(!(arguments[e]instanceof Uint8Array))throw new TypeError("unexpected type, use Uint8Array")}function Ce(e){for(var t=0;t<e.length;t++)e[t]=0}e.lowlevel={crypto_core_hsalsa20:b,crypto_stream_xor:S,crypto_stream:k,crypto_stream_salsa20_xor:x,crypto_stream_salsa20:_,crypto_onetimeauth:R,crypto_onetimeauth_verify:T,crypto_verify_16:p,crypto_verify_32:m,crypto_secretbox:L,crypto_secretbox_open:A,crypto_scalarmult:K,crypto_scalarmult_base:F,crypto_box_beforenm:z,crypto_box_afternm:Z,crypto_box:function(e,t,n,r,o,i){var s=new Uint8Array(32);return z(s,o,i),Z(e,t,n,r,s)},crypto_box_open:function(e,t,n,r,o,i){var s=new Uint8Array(32);return z(s,o,i),G(e,t,n,r,s)},crypto_box_keypair:q,crypto_hash:J,crypto_sign:le,crypto_sign_keypair:oe,crypto_sign_open:ce,crypto_secretbox_KEYBYTES:ue,crypto_secretbox_NONCEBYTES:de,crypto_secretbox_ZEROBYTES:32,crypto_secretbox_BOXZEROBYTES:he,crypto_scalarmult_BYTES:32,crypto_scalarmult_SCALARBYTES:32,crypto_box_PUBLICKEYBYTES:fe,crypto_box_SECRETKEYBYTES:ge,crypto_box_BEFORENMBYTES:32,crypto_box_NONCEBYTES:pe,crypto_box_ZEROBYTES:32,crypto_box_BOXZEROBYTES:16,crypto_sign_BYTES:we,crypto_sign_PUBLICKEYBYTES:me,crypto_sign_SECRETKEYBYTES:ve,crypto_sign_SEEDBYTES:32,crypto_hash_BYTES:64,gf:t,D:l,L:ie,pack25519:$,unpack25519:U,M:B,A:W,S:D,Z:j,pow2523:V,add:X,set25519:M,modL:se,scalarmult:ne,scalarbase:re},e.randomBytes=function(e){var t=new Uint8Array(e);return n(t,e),t},e.secretbox=function(e,t,n){be(e,t,n),ye(n,t);for(var r=new Uint8Array(32+e.length),o=new Uint8Array(r.length),i=0;i<e.length;i++)r[i+32]=e[i];return L(o,r,r.length,t,n),o.subarray(he)},e.secretbox.open=function(e,t,n){be(e,t,n),ye(n,t);for(var r=new Uint8Array(he+e.length),o=new Uint8Array(r.length),i=0;i<e.length;i++)r[i+he]=e[i];return r.length<32||0!==A(o,r,r.length,t,n)?null:o.subarray(32)},e.secretbox.keyLength=ue,e.secretbox.nonceLength=de,e.secretbox.overheadLength=he,e.scalarMult=function(e,t){if(be(e,t),32!==e.length)throw new Error("bad n size");if(32!==t.length)throw new Error("bad p size");var n=new Uint8Array(32);return K(n,e,t),n},e.scalarMult.base=function(e){if(be(e),32!==e.length)throw new Error("bad n size");var t=new Uint8Array(32);return F(t,e),t},e.scalarMult.scalarLength=32,e.scalarMult.groupElementLength=32,e.box=function(t,n,r,o){var i=e.box.before(r,o);return e.secretbox(t,n,i)},e.box.before=function(e,t){be(e,t),function(e,t){if(e.length!==fe)throw new Error("bad public key size");if(t.length!==ge)throw new Error("bad secret key size")}(e,t);var n=new Uint8Array(32);return z(n,e,t),n},e.box.after=e.secretbox,e.box.open=function(t,n,r,o){var i=e.box.before(r,o);return e.secretbox.open(t,n,i)},e.box.open.after=e.secretbox.open,e.box.keyPair=function(){var e=new Uint8Array(fe),t=new Uint8Array(ge);return q(e,t),{publicKey:e,secretKey:t}},e.box.keyPair.fromSecretKey=function(e){if(be(e),e.length!==ge)throw new Error("bad secret key size");var t=new Uint8Array(fe);return F(t,e),{publicKey:t,secretKey:new Uint8Array(e)}},e.box.publicKeyLength=fe,e.box.secretKeyLength=ge,e.box.sharedKeyLength=32,e.box.nonceLength=pe,e.box.overheadLength=e.secretbox.overheadLength,e.sign=function(e,t){if(be(e,t),t.length!==ve)throw new Error("bad secret key size");var n=new Uint8Array(we+e.length);return le(n,e,e.length,t),n},e.sign.open=function(e,t){if(be(e,t),t.length!==me)throw new Error("bad public key size");var n=new Uint8Array(e.length),r=ce(n,e,e.length,t);if(r<0)return null;for(var o=new Uint8Array(r),i=0;i<o.length;i++)o[i]=n[i];return o},e.sign.detached=function(t,n){for(var r=e.sign(t,n),o=new Uint8Array(we),i=0;i<o.length;i++)o[i]=r[i];return o},e.sign.detached.verify=function(e,t,n){if(be(e,t,n),t.length!==we)throw new Error("bad signature size");if(n.length!==me)throw new Error("bad public key size");var r,o=new Uint8Array(we+e.length),i=new Uint8Array(we+e.length);for(r=0;r<we;r++)o[r]=t[r];for(r=0;r<e.length;r++)o[r+we]=e[r];return ce(i,o,o.length,n)>=0},e.sign.keyPair=function(){var e=new Uint8Array(me),t=new Uint8Array(ve);return oe(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(be(e),e.length!==ve)throw new Error("bad secret key size");for(var t=new Uint8Array(me),n=0;n<t.length;n++)t[n]=e[32+n];return{publicKey:t,secretKey:new Uint8Array(e)}},e.sign.keyPair.fromSeed=function(e){if(be(e),32!==e.length)throw new Error("bad seed size");for(var t=new Uint8Array(me),n=new Uint8Array(ve),r=0;r<32;r++)n[r]=e[r];return oe(t,n,!0),{publicKey:t,secretKey:n}},e.sign.publicKeyLength=me,e.sign.secretKeyLength=ve,e.sign.seedLength=32,e.sign.signatureLength=we,e.hash=function(e){be(e);var t=new Uint8Array(64);return J(t,e,e.length),t},e.hash.hashLength=64,e.verify=function(e,t){return be(e,t),0!==e.length&&0!==t.length&&(e.length===t.length&&0===g(e,0,t,0,e.length))},e.setPRNG=function(e){n=e},function(){var t="undefined"!=typeof self?self.crypto||self.msCrypto:null;if(t&&t.getRandomValues){e.setPRNG((function(e,n){var r,o=new Uint8Array(n);for(r=0;r<n;r+=65536)t.getRandomValues(o.subarray(r,r+Math.min(n-r,65536)));for(r=0;r<n;r++)e[r]=o[r];Ce(o)}))}else void 0!==w&&(t=v)&&t.randomBytes&&e.setPRNG((function(e,n){var r,o=t.randomBytes(n);for(r=0;r<n;r++)e[r]=o[r];Ce(o)}))}()}(e.exports?e.exports:self.nacl=self.nacl||{})}(m);const y=m.exports;var b,C,x,_,k,S,E,R;e.CONNECT_EVENT_ERROR_CODES=void 0,(b=e.CONNECT_EVENT_ERROR_CODES||(e.CONNECT_EVENT_ERROR_CODES={}))[b.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",b[b.BAD_REQUEST_ERROR=1]="BAD_REQUEST_ERROR",b[b.MANIFEST_NOT_FOUND_ERROR=2]="MANIFEST_NOT_FOUND_ERROR",b[b.MANIFEST_CONTENT_ERROR=3]="MANIFEST_CONTENT_ERROR",b[b.UNKNOWN_APP_ERROR=100]="UNKNOWN_APP_ERROR",b[b.USER_REJECTS_ERROR=300]="USER_REJECTS_ERROR",b[b.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED",e.CONNECT_ITEM_ERROR_CODES=void 0,(C=e.CONNECT_ITEM_ERROR_CODES||(e.CONNECT_ITEM_ERROR_CODES={}))[C.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",C[C.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED",e.SEND_TRANSACTION_ERROR_CODES=void 0,(x=e.SEND_TRANSACTION_ERROR_CODES||(e.SEND_TRANSACTION_ERROR_CODES={}))[x.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",x[x.BAD_REQUEST_ERROR=1]="BAD_REQUEST_ERROR",x[x.UNKNOWN_APP_ERROR=100]="UNKNOWN_APP_ERROR",x[x.USER_REJECTS_ERROR=300]="USER_REJECTS_ERROR",x[x.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED",(k=_||(_={}))[k.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",k[k.BAD_REQUEST_ERROR=1]="BAD_REQUEST_ERROR",k[k.UNKNOWN_APP_ERROR=100]="UNKNOWN_APP_ERROR",k[k.USER_REJECTS_ERROR=300]="USER_REJECTS_ERROR",k[k.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED",(E=S||(S={}))[E.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",E[E.BAD_REQUEST_ERROR=1]="BAD_REQUEST_ERROR",E[E.UNKNOWN_APP_ERROR=100]="UNKNOWN_APP_ERROR",E[E.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED",e.CHAIN=void 0,(R=e.CHAIN||(e.CHAIN={})).MAINNET="-239",R.TESTNET="-3";const T={encode:function(e,t=!1){let n;return e instanceof Uint8Array?n=e:("string"!=typeof e&&(e=JSON.stringify(e)),n=p.decodeUTF8(e)),function(e,t){const n=p.encodeBase64(e);return t?encodeURIComponent(n):n}(n,t)},decode:function(e,t=!1){const n=function(e,t){return t&&(e=decodeURIComponent(e)),p.decodeBase64(e)}(e,t);return{toString:()=>p.encodeUTF8(n),toObject(){try{return JSON.parse(p.encodeUTF8(n))}catch(e){return null}},toUint8Array:()=>n}}};function L(e){let t="";return e.forEach((e=>{t+=("0"+(255&e).toString(16)).slice(-2)})),t}function A(e){if(e.length%2!=0)throw new Error(`Cannot convert ${e} to bytesArray`);const t=new Uint8Array(e.length/2);for(let n=0;n<e.length;n+=2)t[n/2]=parseInt(e.slice(n,n+2),16);return t}class M{constructor(e){this.nonceLength=24,this.keyPair=e?this.createKeypairFromString(e):this.createKeypair(),this.sessionId=L(this.keyPair.publicKey)}createKeypair(){return y.box.keyPair()}createKeypairFromString(e){return{publicKey:A(e.publicKey),secretKey:A(e.secretKey)}}createNonce(){return y.randomBytes(this.nonceLength)}encrypt(e,t){const n=(new TextEncoder).encode(e),r=this.createNonce();return function(e,t){const n=new Uint8Array(e.length+t.length);return n.set(e),n.set(t,e.length),n}(r,y.box(n,r,t,this.keyPair.secretKey))}decrypt(e,t){const[n,r]=function(e,t){if(t>=e.length)throw new Error("Index is out of buffer");return[e.slice(0,t),e.slice(t)]}(e,this.nonceLength),o=y.box.open(r,n,t,this.keyPair.secretKey);if(!o)throw new Error(`Decryption error: \n message: ${e.toString()} \n sender pubkey: ${t.toString()} \n keypair pubkey: ${this.keyPair.publicKey.toString()} \n keypair secretkey: ${this.keyPair.secretKey.toString()}`);return(new TextDecoder).decode(o)}stringifyKeypair(){return{publicKey:L(this.keyPair.publicKey),secretKey:L(this.keyPair.secretKey)}}}function O(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{l(r.next(e))}catch(t){i(t)}}function a(e){try{l(r.throw(e))}catch(t){i(t)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}l((r=r.apply(e,t||[])).next())}))}class N extends Error{constructor(e,t){super(e,t),this.message=`${N.prefix} ${this.constructor.name}${this.info?": "+this.info:""}${e?"\n"+e:""}`,Object.setPrototypeOf(this,N.prototype)}get info(){return""}}N.prefix="[TON_CONNECT_SDK_ERROR]";class $ extends N{get info(){return"Passed DappMetadata is in incorrect format."}constructor(...e){super(...e),Object.setPrototypeOf(this,$.prototype)}}class P extends N{get info(){return"Passed `tonconnect-manifest.json` contains errors. Check format of your manifest. See more https://github.com/ton-connect/docs/blob/main/requests-responses.md#app-manifest"}constructor(...e){super(...e),Object.setPrototypeOf(this,P.prototype)}}class I extends N{get info(){return"Manifest not found. Make sure you added `tonconnect-manifest.json` to the root of your app or passed correct manifestUrl. See more https://github.com/ton-connect/docs/blob/main/requests-responses.md#app-manifest"}constructor(...e){super(...e),Object.setPrototypeOf(this,I.prototype)}}class U extends N{get info(){return"Wallet connection called but wallet already connected. To avoid the error, disconnect the wallet before doing a new connection."}constructor(...e){super(...e),Object.setPrototypeOf(this,U.prototype)}}class W extends N{get info(){return"Send transaction or other protocol methods called while wallet is not connected."}constructor(...e){super(...e),Object.setPrototypeOf(this,W.prototype)}}class j extends N{get info(){return"User rejects the action in the wallet."}constructor(...e){super(...e),Object.setPrototypeOf(this,j.prototype)}}class B extends N{get info(){return"Request to the wallet contains errors."}constructor(...e){super(...e),Object.setPrototypeOf(this,B.prototype)}}class D extends N{get info(){return"App tries to send rpc request to the injected wallet while not connected."}constructor(...e){super(...e),Object.setPrototypeOf(this,D.prototype)}}class H extends N{get info(){return"There is an attempt to connect to the injected wallet while it is not exists in the webpage."}constructor(...e){super(...e),Object.setPrototypeOf(this,H.prototype)}}class V extends N{get info(){return"Storage was not specified in the `DappMetadata` and default `localStorage` was not detected in the environment."}constructor(...e){super(...e),Object.setPrototypeOf(this,V.prototype)}}class K extends N{get info(){return"An error occurred while fetching the wallets list."}constructor(...e){super(...e),Object.setPrototypeOf(this,K.prototype)}}class F extends N{get info(){return"Passed address is in incorrect format."}constructor(...e){super(...e),Object.setPrototypeOf(this,F.prototype)}}class q extends N{get info(){return"Passed hex is in incorrect format."}constructor(...e){super(...e),Object.setPrototypeOf(this,q.prototype)}}class z extends N{constructor(...e){super(...e),Object.setPrototypeOf(this,z.prototype)}}const Z={[e.CONNECT_EVENT_ERROR_CODES.UNKNOWN_ERROR]:z,[e.CONNECT_EVENT_ERROR_CODES.USER_REJECTS_ERROR]:j,[e.CONNECT_EVENT_ERROR_CODES.BAD_REQUEST_ERROR]:B,[e.CONNECT_EVENT_ERROR_CODES.UNKNOWN_APP_ERROR]:D,[e.CONNECT_EVENT_ERROR_CODES.MANIFEST_NOT_FOUND_ERROR]:I,[e.CONNECT_EVENT_ERROR_CODES.MANIFEST_CONTENT_ERROR]:P};const G=new class{parseError(e){let t=z;return e.code in Z&&(t=Z[e.code]||z),new t(e.message)}};class Y{isError(e){return"error"in e}}const Q={[e.SEND_TRANSACTION_ERROR_CODES.UNKNOWN_ERROR]:z,[e.SEND_TRANSACTION_ERROR_CODES.USER_REJECTS_ERROR]:j,[e.SEND_TRANSACTION_ERROR_CODES.BAD_REQUEST_ERROR]:B,[e.SEND_TRANSACTION_ERROR_CODES.UNKNOWN_APP_ERROR]:D};const J=new class extends Y{convertToRpcRequest(e){return{method:"sendTransaction",params:[JSON.stringify(e)]}}parseAndThrowError(e){let t=z;throw e.error.code in Q&&(t=Q[e.error.code]||z),new t(e.error.message)}convertFromRpcResponse(e){return{boc:e.result}}};class X{constructor(e,t){this.storage=e,this.storeKey="ton-connect-storage_http-bridge-gateway::"+t}storeLastEventId(e){return O(this,void 0,void 0,(function*(){return this.storage.setItem(this.storeKey,e)}))}removeLastEventId(){return O(this,void 0,void 0,(function*(){return this.storage.removeItem(this.storeKey)}))}getLastEventId(){return O(this,void 0,void 0,(function*(){const e=yield this.storage.getItem(this.storeKey);return e||null}))}}function ee(e,t){return function(e){return"/"===e.slice(-1)?e.slice(0,-1):e}(e)+"/"+t}function te(e){if(!e)return!1;const t=new URL(e);return"tg:"===t.protocol||"t.me"===t.hostname}function ne(e){return e.replaceAll(".","%2E").replaceAll("-","%2D").replaceAll("_","%5F").replaceAll("&","-").replaceAll("=","__").replaceAll("%","--")}function re(e,t){return O(this,void 0,void 0,(function*(){return new Promise(((n,r)=>{var o,i;if(null===(o=null==t?void 0:t.signal)||void 0===o?void 0:o.aborted)return void r(new N("Delay aborted"));const s=setTimeout((()=>n()),e);null===(i=null==t?void 0:t.signal)||void 0===i||i.addEventListener("abort",(()=>{clearTimeout(s),r(new N("Delay aborted"))}))}))}))}function oe(e){const t=new AbortController;return(null==e?void 0:e.aborted)?t.abort():null==e||e.addEventListener("abort",(()=>t.abort()),{once:!0}),t}function ie(e,t){var n,r;return O(this,void 0,void 0,(function*(){const o=null!==(n=null==t?void 0:t.attempts)&&void 0!==n?n:10,i=null!==(r=null==t?void 0:t.delayMs)&&void 0!==r?r:200,s=oe(null==t?void 0:t.signal);if("function"!=typeof e)throw new N("Expected a function, got "+typeof e);let a,l=0;for(;l<o;){if(s.signal.aborted)throw new N(`Aborted after attempts ${l}`);try{return yield e({signal:s.signal})}catch(c){a=c,l++,l<o&&(yield re(i))}}throw a}))}function se(...e){try{console.debug("[TON_CONNECT_SDK]",...e)}catch(t){}}function ae(...e){try{console.error("[TON_CONNECT_SDK]",...e)}catch(t){}}class le{constructor(e,t,n,r,o){this.bridgeUrl=t,this.sessionId=n,this.listener=r,this.errorsListener=o,this.ssePath="events",this.postPath="message",this.heartbeatMessage="heartbeat",this.defaultTtl=300,this.defaultReconnectDelay=2e3,this.defaultResendDelay=5e3,this.eventSource=function(e,t){let n=null,r=null,o=null,i=null,s=null;const a=(a,...l)=>O(this,void 0,void 0,(function*(){if(i=null!=a?a:null,null==s||s.abort(),s=oe(a),s.signal.aborted)throw new N("Resource creation was aborted");r=null!=l?l:null;const c=e(s.signal,...l);o=c;const u=yield c;if(o!==c&&u!==n)throw yield t(u),new N("Resource creation was aborted by a new resource creation");return n=u,n}));return{create:a,current:()=>null!=n?n:null,dispose:()=>O(this,void 0,void 0,(function*(){try{const r=n;n=null;const i=o;o=null;try{null==s||s.abort()}catch(e){}yield Promise.allSettled([r?t(r):Promise.resolve(),i?t(yield i):Promise.resolve()])}catch(e){}})),recreate:e=>O(this,void 0,void 0,(function*(){const t=n,s=o,l=r,c=i;if(yield re(e),t===n&&s===o&&l===r&&c===i)return yield a(i,...null!=l?l:[]);throw new N("Resource recreation was aborted by a new resource creation")}))}}(((e,t)=>O(this,void 0,void 0,(function*(){const n={bridgeUrl:this.bridgeUrl,ssePath:this.ssePath,sessionId:this.sessionId,bridgeGatewayStorage:this.bridgeGatewayStorage,errorHandler:this.errorsHandler.bind(this),messageHandler:this.messagesHandler.bind(this),signal:e,openingDeadlineMS:t};return yield function(e){return O(this,void 0,void 0,(function*(){return yield function(e,t){const n=null==t?void 0:t.timeout,r=oe(null==t?void 0:t.signal);return new Promise(((t,o)=>O(this,void 0,void 0,(function*(){if(r.signal.aborted)return void o(new N("Operation aborted"));let i;void 0!==n&&(i=setTimeout((()=>{r.abort(),o(new N(`Timeout after ${n}ms`))}),n)),r.signal.addEventListener("abort",(()=>{clearTimeout(i),o(new N("Operation aborted"))}),{once:!0});const s={timeout:n,abort:r.signal};yield e(((...e)=>{clearTimeout(i),t(...e)}),(()=>{clearTimeout(i),o()}),s)}))))}(((t,n,r)=>O(this,void 0,void 0,(function*(){var o;const i=oe(r.signal).signal;if(i.aborted)return void n(new N("Bridge connection aborted"));const s=new URL(ee(e.bridgeUrl,e.ssePath));s.searchParams.append("client_id",e.sessionId);const a=yield e.bridgeGatewayStorage.getLastEventId();if(a&&s.searchParams.append("last_event_id",a),i.aborted)return void n(new N("Bridge connection aborted"));const l=new EventSource(s.toString());l.onerror=r=>O(this,void 0,void 0,(function*(){if(i.aborted)return l.close(),void n(new N("Bridge connection aborted"));try{const n=yield e.errorHandler(l,r);n!==l&&l.close(),n&&n!==l&&t(n)}catch(o){l.close(),n(o)}})),l.onopen=()=>{if(i.aborted)return l.close(),void n(new N("Bridge connection aborted"));t(l)},l.onmessage=t=>{if(i.aborted)return l.close(),void n(new N("Bridge connection aborted"));e.messageHandler(t)},null===(o=e.signal)||void 0===o||o.addEventListener("abort",(()=>{l.close(),n(new N("Bridge connection aborted"))}))}))),{timeout:e.openingDeadlineMS,signal:e.signal})}))}(n)}))),(e=>O(this,void 0,void 0,(function*(){e.close()})))),this.bridgeGatewayStorage=new X(e,t)}get isReady(){const e=this.eventSource.current();return(null==e?void 0:e.readyState)===EventSource.OPEN}get isClosed(){const e=this.eventSource.current();return(null==e?void 0:e.readyState)!==EventSource.OPEN}get isConnecting(){const e=this.eventSource.current();return(null==e?void 0:e.readyState)===EventSource.CONNECTING}registerSession(e){return O(this,void 0,void 0,(function*(){yield this.eventSource.create(null==e?void 0:e.signal,null==e?void 0:e.openingDeadlineMS)}))}send(e,t,n,r){var o;return O(this,void 0,void 0,(function*(){const i={};"number"==typeof r?i.ttl=r:(i.ttl=null==r?void 0:r.ttl,i.signal=null==r?void 0:r.signal,i.attempts=null==r?void 0:r.attempts);const s=new URL(ee(this.bridgeUrl,this.postPath));s.searchParams.append("client_id",this.sessionId),s.searchParams.append("to",t),s.searchParams.append("ttl",((null==i?void 0:i.ttl)||this.defaultTtl).toString()),s.searchParams.append("topic",n);const a=T.encode(e);yield ie((e=>O(this,void 0,void 0,(function*(){const t=yield this.post(s,a,e.signal);if(!t.ok)throw new N(`Bridge send failed, status ${t.status}`)}))),{attempts:null!==(o=null==i?void 0:i.attempts)&&void 0!==o?o:Number.MAX_SAFE_INTEGER,delayMs:this.defaultResendDelay,signal:null==i?void 0:i.signal})}))}pause(){this.eventSource.dispose().catch((e=>ae(`Bridge pause failed, ${e}`)))}unPause(){return O(this,void 0,void 0,(function*(){yield this.eventSource.recreate(0)}))}close(){return O(this,void 0,void 0,(function*(){yield this.eventSource.dispose().catch((e=>ae(`Bridge close failed, ${e}`)))}))}setListener(e){this.listener=e}setErrorsListener(e){this.errorsListener=e}post(e,t,n){return O(this,void 0,void 0,(function*(){const r=yield fetch(e,{method:"post",body:t,signal:n});if(!r.ok)throw new N(`Bridge send failed, status ${r.status}`);return r}))}errorsHandler(e,t){return O(this,void 0,void 0,(function*(){if(this.isConnecting)throw e.close(),new N("Bridge error, failed to connect");if(!this.isReady){if(this.isClosed)return e.close(),se(`Bridge reconnecting, ${this.defaultReconnectDelay}ms delay`),yield this.eventSource.recreate(this.defaultReconnectDelay);throw new N("Bridge error, unknown state")}try{this.errorsListener(t)}catch(n){}}))}messagesHandler(e){return O(this,void 0,void 0,(function*(){if(e.data===this.heartbeatMessage)return;if(yield this.bridgeGatewayStorage.storeLastEventId(e.lastEventId),this.isClosed)return;let t;try{t=JSON.parse(e.data)}catch(n){throw new N(`Bridge message parse failed, message ${n.data}`)}this.listener(t)}))}}function ce(e){return!("connectEvent"in e)}class ue{constructor(e){this.storage=e,this.storeKey="ton-connect-storage_bridge-connection"}storeConnection(e){return O(this,void 0,void 0,(function*(){if("injected"===e.type)return this.storage.setItem(this.storeKey,JSON.stringify(e));if(!ce(e)){const t={sessionKeyPair:e.session.sessionCrypto.stringifyKeypair(),walletPublicKey:e.session.walletPublicKey,bridgeUrl:e.session.bridgeUrl},n={type:"http",connectEvent:e.connectEvent,session:t,lastWalletEventId:e.lastWalletEventId,nextRpcRequestId:e.nextRpcRequestId};return this.storage.setItem(this.storeKey,JSON.stringify(n))}const t={type:"http",connectionSource:e.connectionSource,sessionCrypto:e.sessionCrypto.stringifyKeypair()};return this.storage.setItem(this.storeKey,JSON.stringify(t))}))}removeConnection(){return O(this,void 0,void 0,(function*(){return this.storage.removeItem(this.storeKey)}))}getConnection(){return O(this,void 0,void 0,(function*(){const e=yield this.storage.getItem(this.storeKey);if(!e)return null;const t=JSON.parse(e);if("injected"===t.type)return t;if("connectEvent"in t){const e=new M(t.session.sessionKeyPair);return{type:"http",connectEvent:t.connectEvent,lastWalletEventId:t.lastWalletEventId,nextRpcRequestId:t.nextRpcRequestId,session:{sessionCrypto:e,bridgeUrl:t.session.bridgeUrl,walletPublicKey:t.session.walletPublicKey}}}return{type:"http",sessionCrypto:new M(t.sessionCrypto),connectionSource:t.connectionSource}}))}getHttpConnection(){return O(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(!e)throw new N("Trying to read HTTP connection source while nothing is stored");if("injected"===e.type)throw new N("Trying to read HTTP connection source while injected connection is stored");return e}))}getHttpPendingConnection(){return O(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(!e)throw new N("Trying to read HTTP connection source while nothing is stored");if("injected"===e.type)throw new N("Trying to read HTTP connection source while injected connection is stored");if(!ce(e))throw new N("Trying to read HTTP-pending connection while http connection is stored");return e}))}getInjectedConnection(){return O(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(!e)throw new N("Trying to read Injected bridge connection source while nothing is stored");if("http"===(null==e?void 0:e.type))throw new N("Trying to read Injected bridge connection source while HTTP connection is stored");return e}))}storedConnectionType(){return O(this,void 0,void 0,(function*(){const e=yield this.storage.getItem(this.storeKey);if(!e)return null;return JSON.parse(e).type}))}storeLastWalletEventId(e){return O(this,void 0,void 0,(function*(){const t=yield this.getConnection();if(t&&"http"===t.type&&!ce(t))return t.lastWalletEventId=e,this.storeConnection(t)}))}getLastWalletEventId(){return O(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(e&&"lastWalletEventId"in e)return e.lastWalletEventId}))}increaseNextRpcRequestId(){return O(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(e&&"nextRpcRequestId"in e){const t=e.nextRpcRequestId||0;return e.nextRpcRequestId=t+1,this.storeConnection(e)}}))}getNextRpcRequestId(){return O(this,void 0,void 0,(function*(){const e=yield this.getConnection();return e&&"nextRpcRequestId"in e&&e.nextRpcRequestId||0}))}}class de{constructor(e,t){this.storage=e,this.walletConnectionSource=t,this.type="http",this.standardUniversalLink="tc://",this.pendingRequests=new Map,this.session=null,this.gateway=null,this.pendingGateways=[],this.listeners=[],this.defaultOpeningDeadlineMS=12e3,this.defaultRetryTimeoutMS=2e3,this.connectionStorage=new ue(e)}static fromStorage(e){return O(this,void 0,void 0,(function*(){const t=new ue(e),n=yield t.getHttpConnection();return ce(n)?new de(e,n.connectionSource):new de(e,{bridgeUrl:n.session.bridgeUrl})}))}connect(e,t){var n;const r=oe(null==t?void 0:t.signal);null===(n=this.abortController)||void 0===n||n.abort(),this.abortController=r,this.closeGateways();const o=new M;this.session={sessionCrypto:o,bridgeUrl:"bridgeUrl"in this.walletConnectionSource?this.walletConnectionSource.bridgeUrl:""},this.connectionStorage.storeConnection({type:"http",connectionSource:this.walletConnectionSource,sessionCrypto:o}).then((()=>O(this,void 0,void 0,(function*(){r.signal.aborted||(yield ie((e=>{var n;return this.openGateways(o,{openingDeadlineMS:null!==(n=null==t?void 0:t.openingDeadlineMS)&&void 0!==n?n:this.defaultOpeningDeadlineMS,signal:null==e?void 0:e.signal})}),{attempts:Number.MAX_SAFE_INTEGER,delayMs:this.defaultRetryTimeoutMS,signal:r.signal}))}))));const i="universalLink"in this.walletConnectionSource&&this.walletConnectionSource.universalLink?this.walletConnectionSource.universalLink:this.standardUniversalLink;return this.generateUniversalLink(i,e)}restoreConnection(e){var t,n;return O(this,void 0,void 0,(function*(){const r=oe(null==e?void 0:e.signal);if(null===(t=this.abortController)||void 0===t||t.abort(),this.abortController=r,r.signal.aborted)return;this.closeGateways();const o=yield this.connectionStorage.getHttpConnection();if(!o)return;if(r.signal.aborted)return;const i=null!==(n=null==e?void 0:e.openingDeadlineMS)&&void 0!==n?n:this.defaultOpeningDeadlineMS;if(ce(o))return this.session={sessionCrypto:o.sessionCrypto,bridgeUrl:"bridgeUrl"in this.walletConnectionSource?this.walletConnectionSource.bridgeUrl:""},yield this.openGateways(o.sessionCrypto,{openingDeadlineMS:i,signal:null==r?void 0:r.signal});if(Array.isArray(this.walletConnectionSource))throw new N("Internal error. Connection source is array while WalletConnectionSourceHTTP was expected.");if(this.session=o.session,this.gateway&&(se("Gateway is already opened, closing previous gateway"),yield this.gateway.close()),this.gateway=new le(this.storage,this.walletConnectionSource.bridgeUrl,o.session.sessionCrypto.sessionId,this.gatewayListener.bind(this),this.gatewayErrorsListener.bind(this)),!r.signal.aborted){this.listeners.forEach((e=>e(o.connectEvent)));try{yield ie((e=>this.gateway.registerSession({openingDeadlineMS:i,signal:e.signal})),{attempts:Number.MAX_SAFE_INTEGER,delayMs:this.defaultRetryTimeoutMS,signal:r.signal})}catch(s){return void(yield this.disconnect({signal:r.signal}))}}}))}sendRequest(e,t){const n={};return"function"==typeof t?n.onRequestSent=t:(n.onRequestSent=null==t?void 0:t.onRequestSent,n.signal=null==t?void 0:t.signal,n.attempts=null==t?void 0:t.attempts),new Promise(((t,r)=>O(this,void 0,void 0,(function*(){var o;if(!this.gateway||!this.session||!("walletPublicKey"in this.session))throw new N("Trying to send bridge request without session");const i=(yield this.connectionStorage.getNextRpcRequestId()).toString();yield this.connectionStorage.increaseNextRpcRequestId(),se("Send http-bridge request:",Object.assign(Object.assign({},e),{id:i}));const s=this.session.sessionCrypto.encrypt(JSON.stringify(Object.assign(Object.assign({},e),{id:i})),A(this.session.walletPublicKey));try{yield this.gateway.send(s,this.session.walletPublicKey,e.method,{attempts:null==n?void 0:n.attempts,signal:null==n?void 0:n.signal}),null===(o=null==n?void 0:n.onRequestSent)||void 0===o||o.call(n),this.pendingRequests.set(i.toString(),t)}catch(a){r(a)}}))))}closeConnection(){this.closeGateways(),this.listeners=[],this.session=null,this.gateway=null}disconnect(e){return O(this,void 0,void 0,(function*(){return new Promise((t=>O(this,void 0,void 0,(function*(){let n=!1,r=null;const o=()=>{n||(n=!0,this.removeBridgeAndSession().then(t))};try{this.closeGateways();const t=oe(null==e?void 0:e.signal);r=setTimeout((()=>{t.abort()}),this.defaultOpeningDeadlineMS),yield this.sendRequest({method:"disconnect",params:[]},{onRequestSent:o,signal:t.signal,attempts:1})}catch(i){se("Disconnect error:",i),n||this.removeBridgeAndSession().then(t)}finally{r&&clearTimeout(r),o()}}))))}))}listen(e){return this.listeners.push(e),()=>this.listeners=this.listeners.filter((t=>t!==e))}pause(){var e;null===(e=this.gateway)||void 0===e||e.pause(),this.pendingGateways.forEach((e=>e.pause()))}unPause(){return O(this,void 0,void 0,(function*(){const e=this.pendingGateways.map((e=>e.unPause()));this.gateway&&e.push(this.gateway.unPause()),yield Promise.all(e)}))}pendingGatewaysListener(e,t,n){return O(this,void 0,void 0,(function*(){if(this.pendingGateways.includes(e))return this.closeGateways({except:e}),this.gateway&&(se("Gateway is already opened, closing previous gateway"),yield this.gateway.close()),this.session.bridgeUrl=t,this.gateway=e,this.gateway.setErrorsListener(this.gatewayErrorsListener.bind(this)),this.gateway.setListener(this.gatewayListener.bind(this)),this.gatewayListener(n);yield e.close()}))}gatewayListener(e){return O(this,void 0,void 0,(function*(){const t=JSON.parse(this.session.sessionCrypto.decrypt(T.decode(e.message).toUint8Array(),A(e.from)));if(se("Wallet message received:",t),!("event"in t)){const e=t.id.toString(),n=this.pendingRequests.get(e);return n?(n(t),void this.pendingRequests.delete(e)):void se(`Response id ${e} doesn't match any request's id`)}if(void 0!==t.id){const e=yield this.connectionStorage.getLastWalletEventId();if(void 0!==e&&t.id<=e)return void ae(`Received event id (=${t.id}) must be greater than stored last wallet event id (=${e}) `);"connect"!==t.event&&(yield this.connectionStorage.storeLastWalletEventId(t.id))}const n=this.listeners;"connect"===t.event&&(yield this.updateSession(t,e.from)),"disconnect"===t.event&&(se("Removing bridge and session: received disconnect event"),yield this.removeBridgeAndSession()),n.forEach((e=>e(t)))}))}gatewayErrorsListener(e){return O(this,void 0,void 0,(function*(){throw new N(`Bridge error ${JSON.stringify(e)}`)}))}updateSession(e,t){return O(this,void 0,void 0,(function*(){this.session=Object.assign(Object.assign({},this.session),{walletPublicKey:t});const n=e.payload.items.find((e=>"ton_addr"===e.name)),r=Object.assign(Object.assign({},e),{payload:Object.assign(Object.assign({},e.payload),{items:[n]})});yield this.connectionStorage.storeConnection({type:"http",session:this.session,lastWalletEventId:e.id,connectEvent:r,nextRpcRequestId:0})}))}removeBridgeAndSession(){return O(this,void 0,void 0,(function*(){this.closeConnection(),yield this.connectionStorage.removeConnection()}))}generateUniversalLink(e,t){return te(e)?this.generateTGUniversalLink(e,t):this.generateRegularUniversalLink(e,t)}generateRegularUniversalLink(e,t){const n=new URL(e);return n.searchParams.append("v",2..toString()),n.searchParams.append("id",this.session.sessionCrypto.sessionId),n.searchParams.append("r",JSON.stringify(t)),n.toString()}generateTGUniversalLink(e,t){const n="tonconnect-"+ne(this.generateRegularUniversalLink("about:blank",t).split("?")[1]),r=this.convertToDirectLink(e),o=new URL(r);return o.searchParams.append("startapp",n),o.toString()}convertToDirectLink(e){const t=new URL(e);return t.searchParams.has("attach")&&(t.searchParams.delete("attach"),t.pathname+="/start"),t.toString()}openGateways(e,t){return O(this,void 0,void 0,(function*(){return Array.isArray(this.walletConnectionSource)?(this.pendingGateways.map((e=>e.close().catch())),this.pendingGateways=this.walletConnectionSource.map((t=>{const n=new le(this.storage,t.bridgeUrl,e.sessionId,(()=>{}),(()=>{}));return n.setListener((e=>this.pendingGatewaysListener(n,t.bridgeUrl,e))),n})),void(yield Promise.allSettled(this.pendingGateways.map((e=>ie((n=>{var r;return this.pendingGateways.some((t=>t===e))?e.registerSession({openingDeadlineMS:null!==(r=null==t?void 0:t.openingDeadlineMS)&&void 0!==r?r:this.defaultOpeningDeadlineMS,signal:n.signal}):e.close()}),{attempts:Number.MAX_SAFE_INTEGER,delayMs:this.defaultRetryTimeoutMS,signal:null==t?void 0:t.signal})))))):(this.gateway&&(se("Gateway is already opened, closing previous gateway"),yield this.gateway.close()),this.gateway=new le(this.storage,this.walletConnectionSource.bridgeUrl,e.sessionId,this.gatewayListener.bind(this),this.gatewayErrorsListener.bind(this)),yield this.gateway.registerSession({openingDeadlineMS:null==t?void 0:t.openingDeadlineMS,signal:null==t?void 0:t.signal}))}))}closeGateways(e){var t;null===(t=this.gateway)||void 0===t||t.close(),this.pendingGateways.filter((t=>t!==(null==e?void 0:e.except))).forEach((e=>e.close())),this.pendingGateways=[]}}function he(e,t){return fe(e,[t])}function fe(e,t){return!(!e||"object"!=typeof e)&&t.every((t=>t in e))}class ge{constructor(){this.storage={}}static getInstance(){return ge.instance||(ge.instance=new ge),ge.instance}get length(){return Object.keys(this.storage).length}clear(){this.storage={}}getItem(e){var t;return null!==(t=this.storage[e])&&void 0!==t?t:null}key(e){var t;const n=Object.keys(this.storage);return e<0||e>=n.length?null:null!==(t=n[e])&&void 0!==t?t:null}removeItem(e){delete this.storage[e]}setItem(e,t){this.storage[e]=t}}function pe(){if("undefined"!=typeof window)return window}function we(){var e;const t=null===(e=pe())||void 0===e?void 0:e.location.origin;return t?t+"/tonconnect-manifest.json":""}function me(){if(function(){try{return"undefined"!=typeof localStorage}catch(e){return!1}}())return localStorage;if("undefined"!=typeof process&&null!=process.versions&&null!=process.versions.node)throw new N("`localStorage` is unavailable, but it is required for TonConnect. For more details, see https://github.com/ton-connect/sdk/tree/main/packages/sdk#init-connector");return ge.getInstance()}class ve{constructor(e,t){this.injectedWalletKey=t,this.type="injected",this.unsubscribeCallback=null,this.listenSubscriptions=!1,this.listeners=[];const n=ve.window;if(!ve.isWindowContainsWallet(n,t))throw new H;this.connectionStorage=new ue(e),this.injectedWallet=n[t].tonconnect}static fromStorage(e){return O(this,void 0,void 0,(function*(){const t=new ue(e),n=yield t.getInjectedConnection();return new ve(e,n.jsBridgeKey)}))}static isWalletInjected(e){return ve.isWindowContainsWallet(this.window,e)}static isInsideWalletBrowser(e){return!!ve.isWindowContainsWallet(this.window,e)&&this.window[e].tonconnect.isWalletBrowser}static getCurrentlyInjectedWallets(){if(!this.window)return[];return function(){const e=pe();if(!e)return[];try{return Object.keys(e)}catch(t){return[]}}().filter((([e,t])=>function(e){try{return!(!he(e,"tonconnect")||!he(e.tonconnect,"walletInfo"))&&fe(e.tonconnect.walletInfo,["name","app_name","image","about_url","platforms"])}catch(t){return!1}}(t))).map((([e,t])=>({name:t.tonconnect.walletInfo.name,appName:t.tonconnect.walletInfo.app_name,aboutUrl:t.tonconnect.walletInfo.about_url,imageUrl:t.tonconnect.walletInfo.image,tondns:t.tonconnect.walletInfo.tondns,jsBridgeKey:e,injected:!0,embedded:t.tonconnect.isWalletBrowser,platforms:t.tonconnect.walletInfo.platforms})))}static isWindowContainsWallet(e,t){return!!e&&t in e&&"object"==typeof e[t]&&"tonconnect"in e[t]}connect(e){this._connect(2,e)}restoreConnection(){return O(this,void 0,void 0,(function*(){try{se("Injected Provider restoring connection...");const e=yield this.injectedWallet.restoreConnection();se("Injected Provider restoring connection response",e),"connect"===e.event?(this.makeSubscriptions(),this.listeners.forEach((t=>t(e)))):yield this.connectionStorage.removeConnection()}catch(e){yield this.connectionStorage.removeConnection(),console.error(e)}}))}closeConnection(){this.listenSubscriptions&&this.injectedWallet.disconnect(),this.closeAllListeners()}disconnect(){return O(this,void 0,void 0,(function*(){return new Promise((e=>{const t=()=>{this.closeAllListeners(),this.connectionStorage.removeConnection().then(e)};try{this.injectedWallet.disconnect(),t()}catch(n){se(n),this.sendRequest({method:"disconnect",params:[]},t)}}))}))}closeAllListeners(){var e;this.listenSubscriptions=!1,this.listeners=[],null===(e=this.unsubscribeCallback)||void 0===e||e.call(this)}listen(e){return this.listeners.push(e),()=>this.listeners=this.listeners.filter((t=>t!==e))}sendRequest(e,t){var n;return O(this,void 0,void 0,(function*(){const r={};"function"==typeof t?r.onRequestSent=t:(r.onRequestSent=null==t?void 0:t.onRequestSent,r.signal=null==t?void 0:t.signal);const o=(yield this.connectionStorage.getNextRpcRequestId()).toString();yield this.connectionStorage.increaseNextRpcRequestId(),se("Send injected-bridge request:",Object.assign(Object.assign({},e),{id:o}));const i=this.injectedWallet.send(Object.assign(Object.assign({},e),{id:o}));return i.then((e=>se("Wallet message received:",e))),null===(n=null==r?void 0:r.onRequestSent)||void 0===n||n.call(r),i}))}_connect(e,t){return O(this,void 0,void 0,(function*(){try{se(`Injected Provider connect request: protocolVersion: ${e}, message:`,t);const n=yield this.injectedWallet.connect(e,t);se("Injected Provider connect response:",n),"connect"===n.event&&(yield this.updateSession(),this.makeSubscriptions()),this.listeners.forEach((e=>e(n)))}catch(n){se("Injected Provider connect error:",n);const e={event:"connect_error",payload:{code:0,message:null==n?void 0:n.toString()}};this.listeners.forEach((t=>t(e)))}}))}makeSubscriptions(){this.listenSubscriptions=!0,this.unsubscribeCallback=this.injectedWallet.listen((e=>{se("Wallet message received:",e),this.listenSubscriptions&&this.listeners.forEach((t=>t(e))),"disconnect"===e.event&&this.disconnect()}))}updateSession(){return this.connectionStorage.storeConnection({type:"injected",jsBridgeKey:this.injectedWalletKey,nextRpcRequestId:0})}}ve.window=pe();class ye{constructor(){this.localStorage=me()}getItem(e){return O(this,void 0,void 0,(function*(){return this.localStorage.getItem(e)}))}removeItem(e){return O(this,void 0,void 0,(function*(){this.localStorage.removeItem(e)}))}setItem(e,t){return O(this,void 0,void 0,(function*(){this.localStorage.setItem(e,t)}))}}function be(e){return xe(e)&&e.injected}function Ce(e){return be(e)&&e.embedded}function xe(e){return"jsBridgeKey"in e}function _e(e){return"bridgeUrl"in e}const ke=[{app_name:"telegram-wallet",name:"Wallet",image:"https://wallet.tg/images/logo-288.png",about_url:"https://wallet.tg/",universal_url:"https://t.me/wallet?attach=wallet",bridge:[{type:"sse",url:"https://bridge.tonapi.io/bridge"}],platforms:["ios","android","macos","windows","linux"]},{app_name:"tonkeeper",name:"Tonkeeper",image:"https://tonkeeper.com/assets/tonconnect-icon.png",tondns:"tonkeeper.ton",about_url:"https://tonkeeper.com",universal_url:"https://app.tonkeeper.com/ton-connect",deepLink:"tonkeeper-tc://",bridge:[{type:"sse",url:"https://bridge.tonapi.io/bridge"},{type:"js",key:"tonkeeper"}],platforms:["ios","android","chrome","firefox","macos"]},{app_name:"mytonwallet",name:"MyTonWallet",image:"https://mytonwallet.io/icon-256.png",about_url:"https://mytonwallet.io",universal_url:"https://connect.mytonwallet.org",bridge:[{type:"js",key:"mytonwallet"},{type:"sse",url:"https://tonconnectbridge.mytonwallet.org/bridge/"}],platforms:["chrome","windows","macos","linux","ios","android","firefox"]},{app_name:"openmask",name:"OpenMask",image:"https://raw.githubusercontent.com/OpenProduct/openmask-extension/main/public/openmask-logo-288.png",about_url:"https://www.openmask.app/",bridge:[{type:"js",key:"openmask"}],platforms:["chrome"]},{app_name:"tonhub",name:"Tonhub",image:"https://tonhub.com/tonconnect_logo.png",about_url:"https://tonhub.com",universal_url:"https://tonhub.com/ton-connect",bridge:[{type:"js",key:"tonhub"},{type:"sse",url:"https://connect.tonhubapi.com/tonconnect"}],platforms:["ios","android"]},{app_name:"dewallet",name:"DeWallet",image:"https://app.delabwallet.com/logo_black.png",about_url:"https://delabwallet.com",bridge:[{type:"js",key:"dewallet"}],platforms:["chrome"]},{app_name:"xtonwallet",name:"XTONWallet",image:"https://xtonwallet.com/assets/img/icon-256-back.png",about_url:"https://xtonwallet.com",bridge:[{type:"js",key:"xtonwallet"}],platforms:["chrome","firefox"]},{app_name:"tonwallet",name:"TON Wallet",image:"https://wallet.ton.org/assets/ui/qr-logo.png",about_url:"https://chrome.google.com/webstore/detail/ton-wallet/nphplpgoakhhjchkkhmiggakijnkhfnd",bridge:[{type:"js",key:"tonwallet"}],platforms:["chrome"]}];class Se{constructor(e){this.walletsListCache=null,this.walletsListCacheCreationTimestamp=null,this.walletsListSource="https://raw.githubusercontent.com/ton-blockchain/wallets-list/main/wallets-v2.json",(null==e?void 0:e.walletsListSource)&&(this.walletsListSource=e.walletsListSource),(null==e?void 0:e.cacheTTLMs)&&(this.cacheTTLMs=e.cacheTTLMs)}getWallets(){return O(this,void 0,void 0,(function*(){return this.cacheTTLMs&&this.walletsListCacheCreationTimestamp&&Date.now()>this.walletsListCacheCreationTimestamp+this.cacheTTLMs&&(this.walletsListCache=null),this.walletsListCache||(this.walletsListCache=this.fetchWalletsList(),this.walletsListCache.then((()=>{this.walletsListCacheCreationTimestamp=Date.now()})).catch((()=>{this.walletsListCache=null,this.walletsListCacheCreationTimestamp=null}))),this.walletsListCache}))}getEmbeddedWallet(){return O(this,void 0,void 0,(function*(){const e=(yield this.getWallets()).filter(Ce);return 1!==e.length?null:e[0]}))}fetchWalletsList(){return O(this,void 0,void 0,(function*(){let e=[];try{const t=yield fetch(this.walletsListSource);if(e=yield t.json(),!Array.isArray(e))throw new K("Wrong wallets list format, wallets list must be an array.");const n=e.filter((e=>!this.isCorrectWalletConfigDTO(e)));n.length&&(ae(`Wallet(s) ${n.map((e=>e.name)).join(", ")} config format is wrong. They were removed from the wallets list.`),e=e.filter((e=>this.isCorrectWalletConfigDTO(e))))}catch(n){ae(n),e=ke}let t=[];try{t=ve.getCurrentlyInjectedWallets()}catch(n){ae(n)}return this.mergeWalletsLists(this.walletConfigDTOListToWalletConfigList(e),t)}))}walletConfigDTOListToWalletConfigList(e){return e.map((e=>{const t={name:e.name,appName:e.app_name,imageUrl:e.image,aboutUrl:e.about_url,tondns:e.tondns,platforms:e.platforms};return e.bridge.forEach((n=>{if("sse"===n.type&&(t.bridgeUrl=n.url,t.universalLink=e.universal_url,t.deepLink=e.deepLink),"js"===n.type){const e=n.key;t.jsBridgeKey=e,t.injected=ve.isWalletInjected(e),t.embedded=ve.isInsideWalletBrowser(e)}})),t}))}mergeWalletsLists(e,t){return[...new Set(e.concat(t).map((e=>e.name))).values()].map((n=>{const r=e.find((e=>e.name===n)),o=t.find((e=>e.name===n));return Object.assign(Object.assign({},r&&Object.assign({},r)),o&&Object.assign({},o))}))}isCorrectWalletConfigDTO(e){if(!e||"object"!=typeof e)return!1;if(!("name"in e&&"image"in e&&"about_url"in e&&"platforms"in e&&"app_name"in e))return!1;if(!e.platforms||!Array.isArray(e.platforms)||!e.platforms.length)return!1;if(!("bridge"in e)||!Array.isArray(e.bridge)||!e.bridge.length)return!1;const t=e.bridge;if(t.some((e=>!e||"object"!=typeof e||!("type"in e))))return!1;const n=t.find((e=>"sse"===e.type));if(n&&(!("url"in n)||!n.url||!e.universal_url))return!1;const r=t.find((e=>"js"===e.type));return!!(!r||"key"in r&&r.key)}}class Ee extends N{get info(){return"Wallet doesn't support requested feature method."}constructor(...e){super(...e),Object.setPrototypeOf(this,Ee.prototype)}}function Re(e,t){const n=e.includes("SendTransaction"),r=e.find((e=>e&&"object"==typeof e&&"SendTransaction"===e.name));if(!n&&!r)throw new Ee("Wallet doesn't support SendTransaction feature.");if(r&&void 0!==r.maxMessages){if(r.maxMessages<t.requiredMessagesNumber)throw new Ee(`Wallet is not able to handle such SendTransaction request. Max support messages number is ${r.maxMessages}, but ${t.requiredMessagesNumber} is required.`)}else!function(...e){try{console.warn("[TON_CONNECT_SDK]",...e)}catch(t){}}("Connected wallet didn't provide information about max allowed messages in the SendTransaction request. Request may be rejected by the wallet.")}function Te(){return{type:"request-version"}}function Le(e){return{type:"response-version",version:e}}function Ae(e){return{ton_connect_sdk_lib:e.ton_connect_sdk_lib,ton_connect_ui_lib:e.ton_connect_ui_lib}}function Me(e,t){var n,r,o,i,s,a,l,c;const u=(null===(n=null==t?void 0:t.connectItems)||void 0===n?void 0:n.tonProof)&&"proof"in t.connectItems.tonProof?"ton_proof":"ton_addr";return{wallet_address:null!==(o=null===(r=null==t?void 0:t.account)||void 0===r?void 0:r.address)&&void 0!==o?o:null,wallet_type:null!==(i=null==t?void 0:t.device.appName)&&void 0!==i?i:null,wallet_version:null!==(s=null==t?void 0:t.device.appVersion)&&void 0!==s?s:null,auth_type:u,custom_data:Object.assign({chain_id:null!==(l=null===(a=null==t?void 0:t.account)||void 0===a?void 0:a.chain)&&void 0!==l?l:null,provider:null!==(c=null==t?void 0:t.provider)&&void 0!==c?c:null},Ae(e))}}function Oe(e){return{type:"connection-started",custom_data:Ae(e)}}function Ne(e,t){return Object.assign({type:"connection-completed",is_success:!0},Me(e,t))}function $e(e,t,n){return{type:"connection-error",is_success:!1,error_message:t,error_code:null!=n?n:null,custom_data:Ae(e)}}function Pe(e){return{type:"connection-restoring-started",custom_data:Ae(e)}}function Ie(e,t){return Object.assign({type:"connection-restoring-completed",is_success:!0},Me(e,t))}function Ue(e,t){return{type:"connection-restoring-error",is_success:!1,error_message:t,custom_data:Ae(e)}}function We(e,t){var n,r,o,i;return{valid_until:null!==(n=String(t.validUntil))&&void 0!==n?n:null,from:null!==(i=null!==(r=t.from)&&void 0!==r?r:null===(o=null==e?void 0:e.account)||void 0===o?void 0:o.address)&&void 0!==i?i:null,messages:t.messages.map((e=>{var t,n;return{address:null!==(t=e.address)&&void 0!==t?t:null,amount:null!==(n=e.amount)&&void 0!==n?n:null}}))}}function je(e,t,n){return Object.assign(Object.assign({type:"transaction-sent-for-signature"},Me(e,t)),We(t,n))}function Be(e,t,n,r){return Object.assign(Object.assign({type:"transaction-signed",is_success:!0,signed_transaction:r.boc},Me(e,t)),We(t,n))}function De(e,t,n,r,o){return Object.assign(Object.assign({type:"transaction-signing-failed",is_success:!1,error_message:r,error_code:null!=o?o:null},Me(e,t)),We(t,n))}function He(e,t,n){return Object.assign({type:"disconnection",scope:n},Me(e,t))}class Ve{constructor(){this.window=pe()}dispatchEvent(e,t){var n;return O(this,void 0,void 0,(function*(){const r=new CustomEvent(e,{detail:t});null===(n=this.window)||void 0===n||n.dispatchEvent(r)}))}addEventListener(e,t,n){var r;return O(this,void 0,void 0,(function*(){return null===(r=this.window)||void 0===r||r.addEventListener(e,t,n),()=>{var n;return null===(n=this.window)||void 0===n?void 0:n.removeEventListener(e,t)}}))}}class Ke{constructor(e){var t;this.eventPrefix="ton-connect-",this.tonConnectUiVersion=null,this.eventDispatcher=null!==(t=null==e?void 0:e.eventDispatcher)&&void 0!==t?t:new Ve,this.tonConnectSdkVersion=e.tonConnectSdkVersion,this.init().catch()}get version(){return Ae({ton_connect_sdk_lib:this.tonConnectSdkVersion,ton_connect_ui_lib:this.tonConnectUiVersion})}init(){return O(this,void 0,void 0,(function*(){try{yield this.setRequestVersionHandler(),this.tonConnectUiVersion=yield this.requestTonConnectUiVersion()}catch(e){}}))}setRequestVersionHandler(){return O(this,void 0,void 0,(function*(){yield this.eventDispatcher.addEventListener("ton-connect-request-version",(()=>O(this,void 0,void 0,(function*(){yield this.eventDispatcher.dispatchEvent("ton-connect-response-version",Le(this.tonConnectSdkVersion))}))))}))}requestTonConnectUiVersion(){return O(this,void 0,void 0,(function*(){return new Promise(((e,t)=>O(this,void 0,void 0,(function*(){try{yield this.eventDispatcher.addEventListener("ton-connect-ui-response-version",(t=>{e(t.detail.version)}),{once:!0}),yield this.eventDispatcher.dispatchEvent("ton-connect-ui-request-version",{type:"request-version"})}catch(n){t(n)}}))))}))}dispatchUserActionEvent(e){try{this.eventDispatcher.dispatchEvent(`${this.eventPrefix}${e.type}`,e).catch()}catch(t){}}trackConnectionStarted(...e){try{const t=Oe(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackConnectionCompleted(...e){try{const t=Ne(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackConnectionError(...e){try{const t=$e(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackConnectionRestoringStarted(...e){try{const t=Pe(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackConnectionRestoringCompleted(...e){try{const t=Ie(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackConnectionRestoringError(...e){try{const t=Ue(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackDisconnection(...e){try{const t=He(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackTransactionSentForSignature(...e){try{const t=je(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackTransactionSigned(...e){try{const t=Be(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackTransactionSigningFailed(...e){try{const t=De(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}}class Fe{constructor(e){if(this.walletsList=new Se,this._wallet=null,this.provider=null,this.statusChangeSubscriptions=[],this.statusChangeErrorSubscriptions=[],this.dappSettings={manifestUrl:(null==e?void 0:e.manifestUrl)||we(),storage:(null==e?void 0:e.storage)||new ye},this.walletsList=new Se({walletsListSource:null==e?void 0:e.walletsListSource,cacheTTLMs:null==e?void 0:e.walletsListCacheTTLMs}),this.tracker=new Ke({eventDispatcher:null==e?void 0:e.eventDispatcher,tonConnectSdkVersion:"3.0.4-beta.2"}),!this.dappSettings.manifestUrl)throw new $("Dapp tonconnect-manifest.json must be specified if window.location.origin is undefined. See more https://github.com/ton-connect/docs/blob/main/requests-responses.md#app-manifest");this.bridgeConnectionStorage=new ue(this.dappSettings.storage),(null==e?void 0:e.disableAutoPauseConnection)||this.addWindowFocusAndBlurSubscriptions()}static getWallets(){return this.walletsList.getWallets()}get connected(){return null!==this._wallet}get account(){var e;return(null===(e=this._wallet)||void 0===e?void 0:e.account)||null}get wallet(){return this._wallet}set wallet(e){this._wallet=e,this.statusChangeSubscriptions.forEach((e=>e(this._wallet)))}getWallets(){return this.walletsList.getWallets()}onStatusChange(e,t){return this.statusChangeSubscriptions.push(e),t&&this.statusChangeErrorSubscriptions.push(t),()=>{this.statusChangeSubscriptions=this.statusChangeSubscriptions.filter((t=>t!==e)),t&&(this.statusChangeErrorSubscriptions=this.statusChangeErrorSubscriptions.filter((e=>e!==t)))}}connect(e,t){var n,r;const o={};if("object"==typeof t&&"tonProof"in t&&(o.request=t),"object"==typeof t&&("openingDeadlineMS"in t||"signal"in t||"request"in t)&&(o.request=null==t?void 0:t.request,o.openingDeadlineMS=null==t?void 0:t.openingDeadlineMS,o.signal=null==t?void 0:t.signal),this.connected)throw new U;const i=oe(null==o?void 0:o.signal);if(null===(n=this.abortController)||void 0===n||n.abort(),this.abortController=i,i.signal.aborted)throw new N("Connection was aborted");return null===(r=this.provider)||void 0===r||r.closeConnection(),this.provider=this.createProvider(e),i.signal.addEventListener("abort",(()=>{var e;null===(e=this.provider)||void 0===e||e.closeConnection(),this.provider=null})),this.tracker.trackConnectionStarted(),this.provider.connect(this.createConnectRequest(null==o?void 0:o.request),{openingDeadlineMS:null==o?void 0:o.openingDeadlineMS,signal:i.signal})}restoreConnection(e){var t,n;return O(this,void 0,void 0,(function*(){this.tracker.trackConnectionRestoringStarted();const r=oe(null==e?void 0:e.signal);if(null===(t=this.abortController)||void 0===t||t.abort(),this.abortController=r,r.signal.aborted)return void this.tracker.trackConnectionRestoringError("Connection restoring was aborted");const[o,i]=yield Promise.all([this.bridgeConnectionStorage.storedConnectionType(),this.walletsList.getEmbeddedWallet()]);if(r.signal.aborted)return void this.tracker.trackConnectionRestoringError("Connection restoring was aborted");let s=null;try{switch(o){case"http":s=yield de.fromStorage(this.dappSettings.storage);break;case"injected":s=yield ve.fromStorage(this.dappSettings.storage);break;default:if(!i)return;s=this.createProvider(i)}}catch(u){return this.tracker.trackConnectionRestoringError("Provider is not restored"),yield this.bridgeConnectionStorage.removeConnection(),null==s||s.closeConnection(),void(s=null)}if(r.signal.aborted)return null==s||s.closeConnection(),void this.tracker.trackConnectionRestoringError("Connection restoring was aborted");if(!s)return ae("Provider is not restored"),void this.tracker.trackConnectionRestoringError("Provider is not restored");null===(n=this.provider)||void 0===n||n.closeConnection(),this.provider=s,s.listen(this.walletEventsListener.bind(this));const a=()=>{this.tracker.trackConnectionRestoringError("Connection restoring was aborted"),null==s||s.closeConnection(),s=null};r.signal.addEventListener("abort",a);const l=ie((t=>O(this,void 0,void 0,(function*(){yield null==s?void 0:s.restoreConnection({openingDeadlineMS:null==e?void 0:e.openingDeadlineMS,signal:t.signal}),r.signal.removeEventListener("abort",a),this.connected?this.tracker.trackConnectionRestoringCompleted(this.wallet):this.tracker.trackConnectionRestoringError("Connection restoring failed")}))),{attempts:Number.MAX_SAFE_INTEGER,delayMs:2e3,signal:null==e?void 0:e.signal}),c=new Promise((e=>setTimeout((()=>e()),12e3)));return Promise.race([l,c])}))}sendTransaction(e,t){return O(this,void 0,void 0,(function*(){const n={};"function"==typeof t?n.onRequestSent=t:(n.onRequestSent=null==t?void 0:t.onRequestSent,n.signal=null==t?void 0:t.signal);const r=oe(null==n?void 0:n.signal);if(r.signal.aborted)throw new N("Transaction sending was aborted");this.checkConnection(),Re(this.wallet.device.features,{requiredMessagesNumber:e.messages.length}),this.tracker.trackTransactionSentForSignature(this.wallet,e);const{validUntil:o}=e,i=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n}(e,["validUntil"]),s=e.from||this.account.address,a=e.network||this.account.chain,l=yield this.provider.sendRequest(J.convertToRpcRequest(Object.assign(Object.assign({},i),{valid_until:o,from:s,network:a})),{onRequestSent:n.onRequestSent,signal:r.signal});if(J.isError(l))return this.tracker.trackTransactionSigningFailed(this.wallet,e,l.error.message,l.error.code),J.parseAndThrowError(l);const c=J.convertFromRpcResponse(l);return this.tracker.trackTransactionSigned(this.wallet,e,c),c}))}disconnect(e){var t;return O(this,void 0,void 0,(function*(){if(!this.connected)throw new W;const n=oe(null==e?void 0:e.signal),r=this.abortController;if(this.abortController=n,n.signal.aborted)throw new N("Disconnect was aborted");this.onWalletDisconnected("dapp"),yield null===(t=this.provider)||void 0===t?void 0:t.disconnect({signal:n.signal}),null==r||r.abort()}))}pauseConnection(){var e;"http"===(null===(e=this.provider)||void 0===e?void 0:e.type)&&this.provider.pause()}unPauseConnection(){var e;return"http"!==(null===(e=this.provider)||void 0===e?void 0:e.type)?Promise.resolve():this.provider.unPause()}addWindowFocusAndBlurSubscriptions(){const e=function(){if("undefined"!=typeof document)return document}();if(e)try{e.addEventListener("visibilitychange",(()=>{e.hidden?this.pauseConnection():this.unPauseConnection().catch()}))}catch(t){ae("Cannot subscribe to the document.visibilitychange: ",t)}}createProvider(e){let t;return t=!Array.isArray(e)&&"jsBridgeKey"in e?new ve(this.dappSettings.storage,e.jsBridgeKey):new de(this.dappSettings.storage,e),t.listen(this.walletEventsListener.bind(this)),t}walletEventsListener(e){switch(e.event){case"connect":this.onWalletConnected(e.payload);break;case"connect_error":this.onWalletConnectError(e.payload);break;case"disconnect":this.onWalletDisconnected("wallet")}}onWalletConnected(e){const t=e.items.find((e=>"ton_addr"===e.name)),n=e.items.find((e=>"ton_proof"===e.name));if(!t)throw new N("ton_addr connection item was not found");const r={device:e.device,provider:this.provider.type,account:{address:t.address,chain:t.network,walletStateInit:t.walletStateInit,publicKey:t.publicKey}};n&&(r.connectItems={tonProof:n}),this.wallet=r,this.tracker.trackConnectionCompleted(r)}onWalletConnectError(e){const t=G.parseError(e);if(this.statusChangeErrorSubscriptions.forEach((e=>e(t))),se(t),this.tracker.trackConnectionError(e.message,e.code),t instanceof I||t instanceof P)throw ae(t),t}onWalletDisconnected(e){this.tracker.trackDisconnection(this.wallet,e),this.wallet=null}checkConnection(){if(!this.connected)throw new W}createConnectRequest(e){const t=[{name:"ton_addr"}];return(null==e?void 0:e.tonProof)&&t.push({name:"ton_proof",payload:e.tonProof}),{manifestUrl:this.dappSettings.manifestUrl,items:t}}}Fe.walletsList=new Se,Fe.isWalletInjected=e=>ve.isWalletInjected(e),Fe.isInsideWalletBrowser=e=>ve.isInsideWalletBrowser(e);const qe=81,ze=128;function Ze(e,t=!1){const{wc:n,hex:r}=function(e){if(!e.includes(":"))throw new F(`Wrong address ${e}. Address must include ":".`);const t=e.split(":");if(2!==t.length)throw new F(`Wrong address ${e}. Address must include ":" only once.`);const n=parseInt(t[0]);if(0!==n&&-1!==n)throw new F(`Wrong address ${e}. WC must be eq 0 or -1, but ${n} received.`);const r=t[1];if(64!==(null==r?void 0:r.length))throw new F(`Wrong address ${e}. Hex part must be 64bytes length, but ${null==r?void 0:r.length} received.`);return{wc:n,hex:Ye(r)}}(e);let o=qe;t&&(o|=ze);const i=new Int8Array(34);i[0]=o,i[1]=n,i.set(r,2);const s=new Uint8Array(36);return s.set(i),s.set(function(e){const t=4129;let n=0;const r=new Uint8Array(e.length+2);r.set(e);for(let o of r){let e=128;for(;e>0;)n<<=1,o&e&&(n+=1),e>>=1,n>65535&&(n&=65535,n^=t)}return new Uint8Array([Math.floor(n/256),n%256])}(i),34),T.encode(s).replace(/\+/g,"-").replace(/\//g,"_")}const Ge={};for(let Ju=0;Ju<=255;Ju++){let e=Ju.toString(16);e.length<2&&(e="0"+e),Ge[e]=Ju}function Ye(e){const t=(e=e.toLowerCase()).length;if(t%2!=0)throw new q("Hex string must have length a multiple of 2: "+e);const n=t/2,r=new Uint8Array(n);for(let o=0;o<n;o++){const t=2*o,n=e.substring(t,t+2);if(!Ge.hasOwnProperty(n))throw new q("Invalid hex character: "+n);r[o]=Ge[n]}return r}const Qe={};const Je=Symbol("solid-proxy"),Xe=Symbol("solid-track"),et={equals:(e,t)=>e===t};let tt=$t;const nt=1,rt=2,ot={owned:null,cleanups:null,context:null,owner:null},it={};var st=null;let at,lt=null,ct=null,ut=null,dt=null,ht=0;function ft(e,t){const n=ct,r=st,o=0===e.length,i=o?ot:{owned:null,cleanups:null,context:null,owner:void 0===t?r:t},s=o?e:()=>e((()=>Ct((()=>Wt(i)))));st=i,ct=null;try{return Nt(s,!0)}finally{ct=n,st=r}}function gt(e,t){const n={value:e,observers:null,observerSlots:null,comparator:(t=t?Object.assign({},et,t):et).equals||void 0};return[Tt.bind(n),e=>("function"==typeof e&&(e=e(n.value)),Lt(n,e))]}function pt(e,t,n){At(Mt(e,t,!0,nt))}function wt(e,t,n){At(Mt(e,t,!1,nt))}function mt(e,t,n){tt=Pt;const r=Mt(e,t,!1,nt);r.user=!0,dt?dt.push(r):At(r)}function vt(e,t,n){n=n?Object.assign({},et,n):et;const r=Mt(e,t,!0,0);return r.observers=null,r.observerSlots=null,r.comparator=n.equals||void 0,At(r),Tt.bind(r)}function yt(e,t,n){let r,o,i;2===arguments.length&&"object"==typeof t||1===arguments.length?(r=!0,o=e,i=t||{}):(r=e,o=t,i=n||{});let s=null,a=it,l=null,c=!1,u="initialValue"in i,d="function"==typeof r&&vt(r);const h=new Set,[f,g]=(i.storage||gt)(i.initialValue),[p,w]=gt(void 0),[m,v]=gt(void 0,{equals:!1}),[y,b]=gt(u?"ready":"unresolved");if(Qe.context){let e;l=`${Qe.context.id}${Qe.context.count++}`,"initial"===i.ssrLoadFrom?a=i.initialValue:Qe.load&&(e=Qe.load(l))&&(a=e[0])}function C(e,t,n,r){return s===e&&(s=null,u=!0,e!==a&&t!==a||!i.onHydrated||queueMicrotask((()=>i.onHydrated(r,{value:t}))),a=it,function(e,t){Nt((()=>{void 0===t&&g((()=>e)),b(void 0!==t?"errored":"ready"),w(t);for(const e of h.keys())e.decrement();h.clear()}),!1)}(t,n)),t}function x(){const e=at,t=f(),n=p();if(void 0!==n&&!s)throw n;return ct&&!ct.user&&e&&pt((()=>{m(),s&&(e.resolved||h.has(e)||(e.increment(),h.add(e)))})),t}function _(e=!0){if(!1!==e&&c)return;c=!1;const t=d?d():r;if(null==t||!1===t)return void C(s,Ct(f));const n=a!==it?a:Ct((()=>o(t,{value:f(),refetching:e})));return"object"==typeof n&&n&&"then"in n?(s=n,c=!0,queueMicrotask((()=>c=!1)),Nt((()=>{b(u?"refreshing":"pending"),v()}),!1),n.then((e=>C(n,e,void 0,t)),(e=>C(n,void 0,jt(e),t)))):(C(s,n,void 0,t),n)}return Object.defineProperties(x,{state:{get:()=>y()},error:{get:()=>p()},loading:{get(){const e=y();return"pending"===e||"refreshing"===e}},latest:{get(){if(!u)return x();const e=p();if(e&&!s)throw e;return f()}}}),d?pt((()=>_(!1))):_(!1),[x,{refetch:_,mutate:g}]}function bt(e){return Nt(e,!1)}function Ct(e){if(null===ct)return e();const t=ct;ct=null;try{return e()}finally{ct=t}}function xt(e){mt((()=>Ct(e)))}function _t(e){return null===st||(null===st.cleanups?st.cleanups=[e]:st.cleanups.push(e)),e}function kt(){return ct}function St(e,t){const n=Symbol("context");return{id:n,Provider:Vt(n),defaultValue:e}}function Et(e){let t;return void 0!==(t=Dt(st,e.id))?t:e.defaultValue}function Rt(e){const t=vt(e),n=vt((()=>Ht(t())));return n.toArray=()=>{const e=n();return Array.isArray(e)?e:null!=e?[e]:[]},n}function Tt(){const e=lt;if(this.sources&&(this.state||e))if(this.state===nt||e)At(this);else{const e=ut;ut=null,Nt((()=>It(this)),!1),ut=e}if(ct){const e=this.observers?this.observers.length:0;ct.sources?(ct.sources.push(this),ct.sourceSlots.push(e)):(ct.sources=[this],ct.sourceSlots=[e]),this.observers?(this.observers.push(ct),this.observerSlots.push(ct.sources.length-1)):(this.observers=[ct],this.observerSlots=[ct.sources.length-1])}return this.value}function Lt(e,t,n){let r=e.value;return e.comparator&&e.comparator(r,t)||(e.value=t,e.observers&&e.observers.length&&Nt((()=>{for(let t=0;t<e.observers.length;t+=1){const n=e.observers[t],r=lt&&lt.running;r&&lt.disposed.has(n),(r&&!n.tState||!r&&!n.state)&&(n.pure?ut.push(n):dt.push(n),n.observers&&Ut(n)),r||(n.state=nt)}if(ut.length>1e6)throw ut=[],new Error}),!1)),t}function At(e){if(!e.fn)return;Wt(e);const t=st,n=ct,r=ht;ct=st=e,function(e,t,n){let r;try{r=e.fn(t)}catch(o){e.pure&&(e.state=nt,e.owned&&e.owned.forEach(Wt),e.owned=null),Bt(o)}(!e.updatedAt||e.updatedAt<=n)&&(null!=e.updatedAt&&"observers"in e?Lt(e,r):e.value=r,e.updatedAt=n)}(e,e.value,r),ct=n,st=t}function Mt(e,t,n,r=nt,o){const i={fn:e,state:r,updatedAt:null,owned:null,sources:null,sourceSlots:null,cleanups:null,value:t,owner:st,context:null,pure:n};return null===st||st!==ot&&(st.owned?st.owned.push(i):st.owned=[i]),i}function Ot(e){const t=lt;if(0===e.state||t)return;if(e.state===rt||t)return It(e);if(e.suspense&&Ct(e.suspense.inFallback))return e.suspense.effects.push(e);const n=[e];for(;(e=e.owner)&&(!e.updatedAt||e.updatedAt<ht);)(e.state||t)&&n.push(e);for(let r=n.length-1;r>=0;r--)if((e=n[r]).state===nt||t)At(e);else if(e.state===rt||t){const t=ut;ut=null,Nt((()=>It(e,n[0])),!1),ut=t}}function Nt(e,t){if(ut)return e();let n=!1;t||(ut=[]),dt?n=!0:dt=[],ht++;try{const t=e();return function(e){ut&&($t(ut),ut=null);if(e)return;const t=dt;dt=null,t.length&&Nt((()=>tt(t)),!1)}(n),t}catch(r){n||(dt=null),ut=null,Bt(r)}}function $t(e){for(let t=0;t<e.length;t++)Ot(e[t])}function Pt(e){let t,n=0;for(t=0;t<e.length;t++){const r=e[t];r.user?e[n++]=r:Ot(r)}var r;for(Qe.context&&(Qe.context=r),t=0;t<n;t++)Ot(e[t])}function It(e,t){const n=lt;e.state=0;for(let r=0;r<e.sources.length;r+=1){const o=e.sources[r];o.sources&&(o.state===nt||n?o!==t&&Ot(o):(o.state===rt||n)&&It(o,t))}}function Ut(e){const t=lt;for(let n=0;n<e.observers.length;n+=1){const r=e.observers[n];r.state&&!t||(r.state=rt,r.pure?ut.push(r):dt.push(r),r.observers&&Ut(r))}}function Wt(e){let t;if(e.sources)for(;e.sources.length;){const t=e.sources.pop(),n=e.sourceSlots.pop(),r=t.observers;if(r&&r.length){const e=r.pop(),o=t.observerSlots.pop();n<r.length&&(e.sourceSlots[o]=n,r[n]=e,t.observerSlots[n]=o)}}if(e.owned){for(t=0;t<e.owned.length;t++)Wt(e.owned[t]);e.owned=null}if(e.cleanups){for(t=0;t<e.cleanups.length;t++)e.cleanups[t]();e.cleanups=null}e.state=0,e.context=null}function jt(e){return e instanceof Error||"string"==typeof e?e:new Error("Unknown error")}function Bt(e){throw e=jt(e)}function Dt(e,t){return e?e.context&&void 0!==e.context[t]?e.context[t]:Dt(e.owner,t):void 0}function Ht(e){if("function"==typeof e&&!e.length)return Ht(e());if(Array.isArray(e)){const t=[];for(let n=0;n<e.length;n++){const r=Ht(e[n]);Array.isArray(r)?t.push.apply(t,r):t.push(r)}return t}return e}function Vt(e,t){return function(t){let n;return wt((()=>n=Ct((()=>(st.context={[e]:t.value},Rt((()=>t.children)))))),void 0),n}}const Kt=Symbol("fallback");function Ft(e){for(let t=0;t<e.length;t++)e[t]()}function qt(e,t){return Ct((()=>e(t||{})))}function zt(){return!0}const Zt={get:(e,t,n)=>t===Je?n:e.get(t),has:(e,t)=>t===Je||e.has(t),set:zt,deleteProperty:zt,getOwnPropertyDescriptor:(e,t)=>({configurable:!0,enumerable:!0,get:()=>e.get(t),set:zt,deleteProperty:zt}),ownKeys:e=>e.keys()};function Gt(e){return(e="function"==typeof e?e():e)?e:{}}function Yt(...e){let t=!1;for(let r=0;r<e.length;r++){const n=e[r];t=t||!!n&&Je in n,e[r]="function"==typeof n?(t=!0,vt(n)):n}if(t)return new Proxy({get(t){for(let n=e.length-1;n>=0;n--){const r=Gt(e[n])[t];if(void 0!==r)return r}},has(t){for(let n=e.length-1;n>=0;n--)if(t in Gt(e[n]))return!0;return!1},keys(){const t=[];for(let n=0;n<e.length;n++)t.push(...Object.keys(Gt(e[n])));return[...new Set(t)]}},Zt);const n={};for(let r=e.length-1;r>=0;r--)if(e[r]){const t=Object.getOwnPropertyDescriptors(e[r]);for(const r in t)r in n||Object.defineProperty(n,r,{enumerable:!0,get(){for(let t=e.length-1;t>=0;t--){const n=(e[t]||{})[r];if(void 0!==n)return n}}})}return n}function Qt(e,...t){const n=new Set(t.flat());if(Je in e){const r=t.map((t=>new Proxy({get:n=>t.includes(n)?e[n]:void 0,has:n=>t.includes(n)&&n in e,keys:()=>t.filter((t=>t in e))},Zt)));return r.push(new Proxy({get:t=>n.has(t)?void 0:e[t],has:t=>!n.has(t)&&t in e,keys:()=>Object.keys(e).filter((e=>!n.has(e)))},Zt)),r}const r=Object.getOwnPropertyDescriptors(e);return t.push(Object.keys(r).filter((e=>!n.has(e)))),t.map((t=>{const n={};for(let o=0;o<t.length;o++){const i=t[o];i in e&&Object.defineProperty(n,i,r[i]?r[i]:{get:()=>e[i],set:()=>!0,enumerable:!0})}return n}))}function Jt(e){const t="fallback"in e&&{fallback:()=>e.fallback};return vt(function(e,t,n={}){let r=[],o=[],i=[],s=0,a=t.length>1?[]:null;return _t((()=>Ft(i))),()=>{let l,c,u=e()||[];return u[Xe],Ct((()=>{let e,t,h,f,g,p,w,m,v,y=u.length;if(0===y)0!==s&&(Ft(i),i=[],r=[],o=[],s=0,a&&(a=[])),n.fallback&&(r=[Kt],o[0]=ft((e=>(i[0]=e,n.fallback()))),s=1);else if(0===s){for(o=new Array(y),c=0;c<y;c++)r[c]=u[c],o[c]=ft(d);s=y}else{for(h=new Array(y),f=new Array(y),a&&(g=new Array(y)),p=0,w=Math.min(s,y);p<w&&r[p]===u[p];p++);for(w=s-1,m=y-1;w>=p&&m>=p&&r[w]===u[m];w--,m--)h[m]=o[w],f[m]=i[w],a&&(g[m]=a[w]);for(e=new Map,t=new Array(m+1),c=m;c>=p;c--)v=u[c],l=e.get(v),t[c]=void 0===l?-1:l,e.set(v,c);for(l=p;l<=w;l++)v=r[l],c=e.get(v),void 0!==c&&-1!==c?(h[c]=o[l],f[c]=i[l],a&&(g[c]=a[l]),c=t[c],e.set(v,c)):i[l]();for(c=p;c<y;c++)c in h?(o[c]=h[c],i[c]=f[c],a&&(a[c]=g[c],a[c](c))):o[c]=ft(d);o=o.slice(0,s=y),r=u.slice(0)}return o}));function d(e){if(i[c]=e,a){const[e,n]=gt(c);return a[c]=n,t(u[c],e)}return t(u[c])}}}((()=>e.each),e.children,t||void 0))}function Xt(e){let t=!1;const n=e.keyed,r=vt((()=>e.when),void 0,{equals:(e,n)=>t?e===n:!e==!n});return vt((()=>{const o=r();if(o){const r=e.children,i="function"==typeof r&&r.length>0;return t=n||i,i?Ct((()=>r(o))):r}return e.fallback}),void 0,void 0)}function en(e){let t=!1,n=!1;const r=Rt((()=>e.children)),o=vt((()=>{let e=r();Array.isArray(e)||(e=[e]);for(let t=0;t<e.length;t++){const r=e[t].when;if(r)return n=!!e[t].keyed,[t,r,e[t]]}return[-1]}),void 0,{equals:(e,n)=>e[0]===n[0]&&(t?e[1]===n[1]:!e[1]==!n[1])&&e[2]===n[2]});return vt((()=>{const[r,i,s]=o();if(r<0)return e.fallback;const a=s.children,l="function"==typeof a&&a.length>0;return t=n||l,l?Ct((()=>a(i))):a}),void 0,void 0)}function tn(e){return e}const nn=new Set(["className","value","readOnly","formNoValidate","isMap","noModule","playsInline","allowfullscreen","async","autofocus","autoplay","checked","controls","default","disabled","formnovalidate","hidden","indeterminate","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","readonly","required","reversed","seamless","selected"]),rn=new Set(["innerHTML","textContent","innerText","children"]),on=Object.assign(Object.create(null),{className:"class",htmlFor:"for"}),sn=Object.assign(Object.create(null),{class:"className",formnovalidate:"formNoValidate",ismap:"isMap",nomodule:"noModule",playsinline:"playsInline",readonly:"readOnly"}),an=new Set(["beforeinput","click","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"]),ln=new Set(["altGlyph","altGlyphDef","altGlyphItem","animate","animateColor","animateMotion","animateTransform","circle","clipPath","color-profile","cursor","defs","desc","ellipse","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","font","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignObject","g","glyph","glyphRef","hkern","image","line","linearGradient","marker","mask","metadata","missing-glyph","mpath","path","pattern","polygon","polyline","radialGradient","rect","set","stop","svg","switch","symbol","text","textPath","tref","tspan","use","view","vkern"]),cn={xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace"};const un="_$DX_DELEGATE";function dn(e,t,n){const r=document.createElement("template");r.innerHTML=e;let o=r.content.firstChild;return n&&(o=o.firstChild),o}function hn(e,t,n){null==n?e.removeAttribute(t):e.setAttribute(t,n)}function fn(e,t){null==t?e.removeAttribute("class"):e.className=t}function gn(e,t={},n,r){const o={};return r||wt((()=>o.children=Cn(e,t.children,o.children))),wt((()=>t.ref&&t.ref(e))),wt((()=>function(e,t,n,r,o={},i=!1){t||(t={});for(const s in o)if(!(s in t)){if("children"===s)continue;o[s]=yn(e,s,null,o[s],n,i)}for(const s in t){if("children"===s){r||Cn(e,t.children);continue}const a=t[s];o[s]=yn(e,s,a,o[s],n,i)}}(e,t,n,!0,o,!0))),o}function pn(e,t,n){return Ct((()=>e(t,n)))}function wn(e,t,n,r){if(void 0===n||r||(r=[]),"function"!=typeof t)return Cn(e,t,r,n);wt((r=>Cn(e,t(),r,n)),r)}function mn(e){let t,n;return Qe.context&&(t=Qe.registry.get(n=function(){const e=Qe.context;return`${e.id}${e.count++}`}()))?(Qe.completed&&Qe.completed.add(t),Qe.registry.delete(n),t):e.cloneNode(!0)}function vn(e,t,n){const r=t.trim().split(/\s+/);for(let o=0,i=r.length;o<i;o++)e.classList.toggle(r[o],n)}function yn(e,t,n,r,o,i){let s,a,l;if("style"===t)return function(e,t,n){if(!t)return n?hn(e,"style"):t;const r=e.style;if("string"==typeof t)return r.cssText=t;let o,i;for(i in"string"==typeof n&&(r.cssText=n=void 0),n||(n={}),t||(t={}),n)null==t[i]&&r.removeProperty(i),delete n[i];for(i in t)o=t[i],o!==n[i]&&(r.setProperty(i,o),n[i]=o);return n}(e,n,r);if("classList"===t)return function(e,t,n={}){const r=Object.keys(t||{}),o=Object.keys(n);let i,s;for(i=0,s=o.length;i<s;i++){const r=o[i];r&&"undefined"!==r&&!t[r]&&(vn(e,r,!1),delete n[r])}for(i=0,s=r.length;i<s;i++){const o=r[i],s=!!t[o];o&&"undefined"!==o&&n[o]!==s&&s&&(vn(e,o,!0),n[o]=s)}return n}(e,n,r);if(n===r)return r;if("ref"===t)i||n(e);else if("on:"===t.slice(0,3)){const o=t.slice(3);r&&e.removeEventListener(o,r),n&&e.addEventListener(o,n)}else if("oncapture:"===t.slice(0,10)){const o=t.slice(10);r&&e.removeEventListener(o,r,!0),n&&e.addEventListener(o,n,!0)}else if("on"===t.slice(0,2)){const o=t.slice(2).toLowerCase(),i=an.has(o);if(!i&&r){const t=Array.isArray(r)?r[0]:r;e.removeEventListener(o,t)}(i||n)&&(function(e,t,n,r){if(r)Array.isArray(n)?(e[`$$${t}`]=n[0],e[`$$${t}Data`]=n[1]):e[`$$${t}`]=n;else if(Array.isArray(n)){const r=n[0];e.addEventListener(t,n[0]=t=>r.call(e,n[1],t))}else e.addEventListener(t,n)}(e,o,n,i),i&&function(e,t=window.document){const n=t[un]||(t[un]=new Set);for(let r=0,o=e.length;r<o;r++){const o=e[r];n.has(o)||(n.add(o),t.addEventListener(o,bn))}}([o]))}else if((l=rn.has(t))||!o&&(sn[t]||(a=nn.has(t)))||(s=e.nodeName.includes("-")))"class"===t||"className"===t?fn(e,n):!s||a||l?e[sn[t]||t]=n:e[(c=t,c.toLowerCase().replace(/-([a-z])/g,((e,t)=>t.toUpperCase())))]=n;else{const r=o&&t.indexOf(":")>-1&&cn[t.split(":")[0]];r?function(e,t,n,r){null==r?e.removeAttributeNS(t,n):e.setAttributeNS(t,n,r)}(e,r,t,n):hn(e,on[t]||t,n)}var c;return n}function bn(e){const t=`$$${e.type}`;let n=e.composedPath&&e.composedPath()[0]||e.target;for(e.target!==n&&Object.defineProperty(e,"target",{configurable:!0,value:n}),Object.defineProperty(e,"currentTarget",{configurable:!0,get:()=>n||document}),Qe.registry&&!Qe.done&&(Qe.done=!0,document.querySelectorAll("[id^=pl-]").forEach((t=>{for(;t&&8!==t.nodeType&&t.nodeValue!=="pl-"+e;){let e=t.nextSibling;t.remove(),t=e}t&&t.remove()})));n;){const r=n[t];if(r&&!n.disabled){const o=n[`${t}Data`];if(void 0!==o?r.call(n,o,e):r.call(n,e),e.cancelBubble)return}n=n._$host||n.parentNode||n.host}}function Cn(e,t,n,r,o){for(Qe.context&&!n&&(n=[...e.childNodes]);"function"==typeof n;)n=n();if(t===n)return n;const i=typeof t,s=void 0!==r;if(e=s&&n[0]&&n[0].parentNode||e,"string"===i||"number"===i){if(Qe.context)return n;if("number"===i&&(t=t.toString()),s){let o=n[0];o&&3===o.nodeType?o.data=t:o=document.createTextNode(t),n=kn(e,n,r,o)}else n=""!==n&&"string"==typeof n?e.firstChild.data=t:e.textContent=t}else if(null==t||"boolean"===i){if(Qe.context)return n;n=kn(e,n,r)}else{if("function"===i)return wt((()=>{let o=t();for(;"function"==typeof o;)o=o();n=Cn(e,o,n,r)})),()=>n;if(Array.isArray(t)){const i=[],a=n&&Array.isArray(n);if(xn(i,t,n,o))return wt((()=>n=Cn(e,i,n,r,!0))),()=>n;if(Qe.context){if(!i.length)return n;for(let e=0;e<i.length;e++)if(i[e].parentNode)return n=i}if(0===i.length){if(n=kn(e,n,r),s)return n}else a?0===n.length?_n(e,i,r):function(e,t,n){let r=n.length,o=t.length,i=r,s=0,a=0,l=t[o-1].nextSibling,c=null;for(;s<o||a<i;)if(t[s]!==n[a]){for(;t[o-1]===n[i-1];)o--,i--;if(o===s){const t=i<r?a?n[a-1].nextSibling:n[i-a]:l;for(;a<i;)e.insertBefore(n[a++],t)}else if(i===a)for(;s<o;)c&&c.has(t[s])||t[s].remove(),s++;else if(t[s]===n[i-1]&&n[a]===t[o-1]){const r=t[--o].nextSibling;e.insertBefore(n[a++],t[s++].nextSibling),e.insertBefore(n[--i],r),t[o]=n[i]}else{if(!c){c=new Map;let e=a;for(;e<i;)c.set(n[e],e++)}const r=c.get(t[s]);if(null!=r)if(a<r&&r<i){let l,u=s,d=1;for(;++u<o&&u<i&&null!=(l=c.get(t[u]))&&l===r+d;)d++;if(d>r-a){const o=t[s];for(;a<r;)e.insertBefore(n[a++],o)}else e.replaceChild(n[a++],t[s++])}else s++;else t[s++].remove()}}else s++,a++}(e,n,i):(n&&kn(e),_n(e,i));n=i}else if(t instanceof Node){if(Qe.context&&t.parentNode)return n=s?[t]:t;if(Array.isArray(n)){if(s)return n=kn(e,n,r,t);kn(e,n,null,t)}else null!=n&&""!==n&&e.firstChild?e.replaceChild(t,e.firstChild):e.appendChild(t);n=t}}return n}function xn(e,t,n,r){let o=!1;for(let i=0,s=t.length;i<s;i++){let s=t[i],a=n&&n[i];if(s instanceof Node)e.push(s);else if(null==s||!0===s||!1===s);else if(Array.isArray(s))o=xn(e,s,a)||o;else if("function"==typeof s)if(r){for(;"function"==typeof s;)s=s();o=xn(e,Array.isArray(s)?s:[s],Array.isArray(a)?a:[a])||o}else e.push(s),o=!0;else{const t=String(s);a&&3===a.nodeType&&a.data===t?e.push(a):e.push(document.createTextNode(t))}}return o}function _n(e,t,n=null){for(let r=0,o=t.length;r<o;r++)e.insertBefore(t[r],n)}function kn(e,t,n,r){if(void 0===n)return e.textContent="";const o=r||document.createTextNode("");if(t.length){let r=!1;for(let i=t.length-1;i>=0;i--){const s=t[i];if(o!==s){const t=s.parentNode===e;r||i?t&&s.remove():t?e.replaceChild(o,s):e.insertBefore(o,n)}else r=!0}}else e.insertBefore(o,n);return[o]}const Sn="http://www.w3.org/2000/svg";function En(e,t=!1){return t?document.createElementNS(Sn,e):document.createElement(e)}function Rn(e){const{useShadow:t}=e,n=document.createTextNode(""),r=e.mount||document.body;function o(){if(Qe.context){const[t,n]=gt(!1);return queueMicrotask((()=>n(!0))),()=>t()&&e.children}return()=>e.children}if(r instanceof HTMLHeadElement){const[e,t]=gt(!1),n=()=>t(!0);ft((t=>wn(r,(()=>e()?t():o()()),null))),_t((()=>{Qe.context?queueMicrotask(n):n()}))}else{const i=En(e.isSVG?"g":"div",e.isSVG),s=t&&i.attachShadow?i.attachShadow({mode:"open"}):i;Object.defineProperty(i,"_$host",{get:()=>n.parentNode,configurable:!0}),wn(s,o()),r.appendChild(i),e.ref&&e.ref(i),_t((()=>r.removeChild(i)))}return n}function Tn(e){const[t,n]=Qt(e,["component"]),r=vt((()=>t.component));return vt((()=>{const e=r();switch(typeof e){case"function":return Ct((()=>e(n)));case"string":const t=ln.has(e),r=Qe.context?mn():En(e,t);return gn(r,n,t),r}}))}var Ln=(e=>(e.DARK="DARK",e.LIGHT="LIGHT",e))(Ln||{});let An={data:""},Mn=e=>"object"==typeof window?((e?e.querySelector("#_goober"):window._goober)||Object.assign((e||document.head).appendChild(document.createElement("style")),{innerHTML:" ",id:"_goober"})).firstChild:e||An,On=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g,Nn=/\/\*[^]*?\*\/| +/g,$n=/\n+/g,Pn=(e,t)=>{let n="",r="",o="";for(let i in e){let s=e[i];"@"==i[0]?"i"==i[1]?n=i+" "+s+";":r+="f"==i[1]?Pn(s,i):i+"{"+Pn(s,"k"==i[1]?"":t)+"}":"object"==typeof s?r+=Pn(s,t?t.replace(/([^,])+/g,(e=>i.replace(/(^:.*)|([^,])+/g,(t=>/&/.test(t)?t.replace(/&/g,e):e?e+" "+t:t)))):i):null!=s&&(i=/^--/.test(i)?i:i.replace(/[A-Z]/g,"-$&").toLowerCase(),o+=Pn.p?Pn.p(i,s):i+":"+s+";")}return n+(t&&o?t+"{"+o+"}":o)+r},In={},Un=e=>{if("object"==typeof e){let t="";for(let n in e)t+=n+Un(e[n]);return t}return e},Wn=(e,t,n,r,o)=>{let i=Un(e),s=In[i]||(In[i]=(e=>{let t=0,n=11;for(;t<e.length;)n=101*n+e.charCodeAt(t++)>>>0;return"go"+n})(i));if(!In[s]){let t=i!==e?e:(e=>{let t,n,r=[{}];for(;t=On.exec(e.replace(Nn,""));)t[4]?r.shift():t[3]?(n=t[3].replace($n," ").trim(),r.unshift(r[0][n]=r[0][n]||{})):r[0][t[1]]=t[2].replace($n," ").trim();return r[0]})(e);In[s]=Pn(o?{["@keyframes "+s]:t}:t,n?"":"."+s)}let a=n&&In.g?In.g:null;return n&&(In.g=In[s]),l=In[s],c=t,u=r,(d=a)?c.data=c.data.replace(d,l):-1===c.data.indexOf(l)&&(c.data=u?l+c.data:c.data+l),s;var l,c,u,d},jn=(e,t,n)=>e.reduce(((e,r,o)=>{let i=t[o];if(i&&i.call){let e=i(n),t=e&&e.props&&e.props.className||/^go/.test(e)&&e;i=t?"."+t:e&&"object"==typeof e?e.props?"":Pn(e,""):!1===e?"":e}return e+r+(null==i?"":i)}),"");function Bn(e){let t=this||{},n=e.call?e(t.p):e;return Wn(n.unshift?n.raw?jn(n,[].slice.call(arguments,1),t.p):n.reduce(((e,n)=>Object.assign(e,n&&n.call?n(t.p):n)),{}):n,Mn(t.target),t.g,t.o,t.k)}Bn.bind({g:1});let Dn=Bn.bind({k:1});const Hn=St();function Vn(e){return qt(Hn.Provider,{value:e.theme,get children(){return e.children}})}function Kn(){return Et(Hn)}function Fn(e){let t=this||{};return(...n)=>{const r=r=>{const o=Yt(r,{theme:Et(Hn)}),i=Yt(o,{get class(){const e=o.class,r="class"in o&&/^go[0-9]+/.test(e);return[e,Bn.apply({target:t.target,o:r,p:o,g:t.g},n)].filter(Boolean).join(" ")}}),[s,a]=Qt(i,["as","theme"]),l=a,c=s.as||e;let u;return"function"==typeof c?u=c(l):1==t.g?(u=document.createElement(c),gn(u,l)):u=Tn(Yt({component:c},l)),u};return r.class=e=>Ct((()=>Bn.apply({target:t.target,p:e,g:t.g},n))),r}}const qn=new Proxy(Fn,{get:(e,t)=>e(t)});function zn(){const e=Fn.call({g:1},"div").apply(null,arguments);return function(t){return e(t),null}}const Zn="tc-root",Gn="tc-disable-scroll",Yn="tc-using-mouse",Qn=()=>{document.body.addEventListener("mousedown",(()=>document.body.classList.add(Yn))),document.body.addEventListener("keydown",(e=>{"Tab"===e.key&&document.body.classList.remove(Yn)}));return qt(zn`
1
+ var __defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,n)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,__spreadValues=(e,t)=>{for(var n in t||(t={}))__hasOwnProp.call(t,n)&&__defNormalProp(e,n,t[n]);if(__getOwnPropSymbols)for(var n of __getOwnPropSymbols(t))__propIsEnum.call(t,n)&&__defNormalProp(e,n,t[n]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t)),__publicField=(e,t,n)=>(__defNormalProp(e,"symbol"!=typeof t?t+"":t,n),n),__async=(e,t,n)=>new Promise(((r,o)=>{var i=e=>{try{a(n.next(e))}catch(t){o(t)}},s=e=>{try{a(n.throw(e))}catch(t){o(t)}},a=e=>e.done?r(e.value):Promise.resolve(e.value).then(i,s);a((n=n.apply(e,t)).next())}));!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TON_CONNECT_UI={})}(this,(function(e){var t,n,r,o,i,s,a,l,c="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function u(e){var t=e.default;if("function"==typeof t){var n=function(){return t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach((function(t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})})),n}var d,h,f,g={exports:{}};h=c,f=function(){var e={};function t(e){if(!/^(?:[A-Za-z0-9+\/]{2}[A-Za-z0-9+\/]{2})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/.test(e))throw new TypeError("invalid encoding")}return e.decodeUTF8=function(e){if("string"!=typeof e)throw new TypeError("expected string");var t,n=unescape(encodeURIComponent(e)),r=new Uint8Array(n.length);for(t=0;t<n.length;t++)r[t]=n.charCodeAt(t);return r},e.encodeUTF8=function(e){var t,n=[];for(t=0;t<e.length;t++)n.push(String.fromCharCode(e[t]));return decodeURIComponent(escape(n.join("")))},"undefined"==typeof atob?void 0!==Buffer.from?(e.encodeBase64=function(e){return Buffer.from(e).toString("base64")},e.decodeBase64=function(e){return t(e),new Uint8Array(Array.prototype.slice.call(Buffer.from(e,"base64"),0))}):(e.encodeBase64=function(e){return new Buffer(e).toString("base64")},e.decodeBase64=function(e){return t(e),new Uint8Array(Array.prototype.slice.call(new Buffer(e,"base64"),0))}):(e.encodeBase64=function(e){var t,n=[],r=e.length;for(t=0;t<r;t++)n.push(String.fromCharCode(e[t]));return btoa(n.join(""))},e.decodeBase64=function(e){t(e);var n,r=atob(e),o=new Uint8Array(r.length);for(n=0;n<r.length;n++)o[n]=r.charCodeAt(n);return o}),e},(d=g).exports?d.exports=f():(h.nacl||(h.nacl={}),h.nacl.util=f());const p=g.exports;function w(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var m={exports:{}};const v=u(Object.freeze(Object.defineProperty({__proto__:null,default:{}},Symbol.toStringTag,{value:"Module"})));!function(e){!function(e){var t=function(e){var t,n=new Float64Array(16);if(e)for(t=0;t<e.length;t++)n[t]=e[t];return n},n=function(){throw new Error("no PRNG")},r=new Uint8Array(16),o=new Uint8Array(32);o[0]=9;var i=t(),s=t([1]),a=t([56129,1]),l=t([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),c=t([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),u=t([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),d=t([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),h=t([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function f(e,t,n,r){e[t]=n>>24&255,e[t+1]=n>>16&255,e[t+2]=n>>8&255,e[t+3]=255&n,e[t+4]=r>>24&255,e[t+5]=r>>16&255,e[t+6]=r>>8&255,e[t+7]=255&r}function g(e,t,n,r,o){var i,s=0;for(i=0;i<o;i++)s|=e[t+i]^n[r+i];return(1&s-1>>>8)-1}function p(e,t,n,r){return g(e,t,n,r,16)}function m(e,t,n,r){return g(e,t,n,r,32)}function y(e,t,n,r){!function(e,t,n,r){for(var o,i=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,s=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,a=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,l=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,c=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,u=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,d=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,h=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,f=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,g=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,p=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,w=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,m=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,y=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,b=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,C=i,x=s,_=a,k=l,S=c,E=u,R=d,T=h,L=f,A=g,M=p,O=w,N=m,$=v,P=y,I=b,U=0;U<20;U+=2)C^=(o=(N^=(o=(L^=(o=(S^=(o=C+N|0)<<7|o>>>25)+C|0)<<9|o>>>23)+S|0)<<13|o>>>19)+L|0)<<18|o>>>14,E^=(o=(x^=(o=($^=(o=(A^=(o=E+x|0)<<7|o>>>25)+E|0)<<9|o>>>23)+A|0)<<13|o>>>19)+$|0)<<18|o>>>14,M^=(o=(R^=(o=(_^=(o=(P^=(o=M+R|0)<<7|o>>>25)+M|0)<<9|o>>>23)+P|0)<<13|o>>>19)+_|0)<<18|o>>>14,I^=(o=(O^=(o=(T^=(o=(k^=(o=I+O|0)<<7|o>>>25)+I|0)<<9|o>>>23)+k|0)<<13|o>>>19)+T|0)<<18|o>>>14,C^=(o=(k^=(o=(_^=(o=(x^=(o=C+k|0)<<7|o>>>25)+C|0)<<9|o>>>23)+x|0)<<13|o>>>19)+_|0)<<18|o>>>14,E^=(o=(S^=(o=(T^=(o=(R^=(o=E+S|0)<<7|o>>>25)+E|0)<<9|o>>>23)+R|0)<<13|o>>>19)+T|0)<<18|o>>>14,M^=(o=(A^=(o=(L^=(o=(O^=(o=M+A|0)<<7|o>>>25)+M|0)<<9|o>>>23)+O|0)<<13|o>>>19)+L|0)<<18|o>>>14,I^=(o=(P^=(o=($^=(o=(N^=(o=I+P|0)<<7|o>>>25)+I|0)<<9|o>>>23)+N|0)<<13|o>>>19)+$|0)<<18|o>>>14;C=C+i|0,x=x+s|0,_=_+a|0,k=k+l|0,S=S+c|0,E=E+u|0,R=R+d|0,T=T+h|0,L=L+f|0,A=A+g|0,M=M+p|0,O=O+w|0,N=N+m|0,$=$+v|0,P=P+y|0,I=I+b|0,e[0]=C>>>0&255,e[1]=C>>>8&255,e[2]=C>>>16&255,e[3]=C>>>24&255,e[4]=x>>>0&255,e[5]=x>>>8&255,e[6]=x>>>16&255,e[7]=x>>>24&255,e[8]=_>>>0&255,e[9]=_>>>8&255,e[10]=_>>>16&255,e[11]=_>>>24&255,e[12]=k>>>0&255,e[13]=k>>>8&255,e[14]=k>>>16&255,e[15]=k>>>24&255,e[16]=S>>>0&255,e[17]=S>>>8&255,e[18]=S>>>16&255,e[19]=S>>>24&255,e[20]=E>>>0&255,e[21]=E>>>8&255,e[22]=E>>>16&255,e[23]=E>>>24&255,e[24]=R>>>0&255,e[25]=R>>>8&255,e[26]=R>>>16&255,e[27]=R>>>24&255,e[28]=T>>>0&255,e[29]=T>>>8&255,e[30]=T>>>16&255,e[31]=T>>>24&255,e[32]=L>>>0&255,e[33]=L>>>8&255,e[34]=L>>>16&255,e[35]=L>>>24&255,e[36]=A>>>0&255,e[37]=A>>>8&255,e[38]=A>>>16&255,e[39]=A>>>24&255,e[40]=M>>>0&255,e[41]=M>>>8&255,e[42]=M>>>16&255,e[43]=M>>>24&255,e[44]=O>>>0&255,e[45]=O>>>8&255,e[46]=O>>>16&255,e[47]=O>>>24&255,e[48]=N>>>0&255,e[49]=N>>>8&255,e[50]=N>>>16&255,e[51]=N>>>24&255,e[52]=$>>>0&255,e[53]=$>>>8&255,e[54]=$>>>16&255,e[55]=$>>>24&255,e[56]=P>>>0&255,e[57]=P>>>8&255,e[58]=P>>>16&255,e[59]=P>>>24&255,e[60]=I>>>0&255,e[61]=I>>>8&255,e[62]=I>>>16&255,e[63]=I>>>24&255}(e,t,n,r)}function b(e,t,n,r){!function(e,t,n,r){for(var o,i=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,s=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,a=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,l=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,c=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,u=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,d=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,h=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,f=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,g=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,p=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,w=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,m=255&n[20]|(255&n[21])<<8|(255&n[22])<<16|(255&n[23])<<24,v=255&n[24]|(255&n[25])<<8|(255&n[26])<<16|(255&n[27])<<24,y=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,b=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,C=0;C<20;C+=2)i^=(o=(m^=(o=(f^=(o=(c^=(o=i+m|0)<<7|o>>>25)+i|0)<<9|o>>>23)+c|0)<<13|o>>>19)+f|0)<<18|o>>>14,u^=(o=(s^=(o=(v^=(o=(g^=(o=u+s|0)<<7|o>>>25)+u|0)<<9|o>>>23)+g|0)<<13|o>>>19)+v|0)<<18|o>>>14,p^=(o=(d^=(o=(a^=(o=(y^=(o=p+d|0)<<7|o>>>25)+p|0)<<9|o>>>23)+y|0)<<13|o>>>19)+a|0)<<18|o>>>14,b^=(o=(w^=(o=(h^=(o=(l^=(o=b+w|0)<<7|o>>>25)+b|0)<<9|o>>>23)+l|0)<<13|o>>>19)+h|0)<<18|o>>>14,i^=(o=(l^=(o=(a^=(o=(s^=(o=i+l|0)<<7|o>>>25)+i|0)<<9|o>>>23)+s|0)<<13|o>>>19)+a|0)<<18|o>>>14,u^=(o=(c^=(o=(h^=(o=(d^=(o=u+c|0)<<7|o>>>25)+u|0)<<9|o>>>23)+d|0)<<13|o>>>19)+h|0)<<18|o>>>14,p^=(o=(g^=(o=(f^=(o=(w^=(o=p+g|0)<<7|o>>>25)+p|0)<<9|o>>>23)+w|0)<<13|o>>>19)+f|0)<<18|o>>>14,b^=(o=(y^=(o=(v^=(o=(m^=(o=b+y|0)<<7|o>>>25)+b|0)<<9|o>>>23)+m|0)<<13|o>>>19)+v|0)<<18|o>>>14;e[0]=i>>>0&255,e[1]=i>>>8&255,e[2]=i>>>16&255,e[3]=i>>>24&255,e[4]=u>>>0&255,e[5]=u>>>8&255,e[6]=u>>>16&255,e[7]=u>>>24&255,e[8]=p>>>0&255,e[9]=p>>>8&255,e[10]=p>>>16&255,e[11]=p>>>24&255,e[12]=b>>>0&255,e[13]=b>>>8&255,e[14]=b>>>16&255,e[15]=b>>>24&255,e[16]=d>>>0&255,e[17]=d>>>8&255,e[18]=d>>>16&255,e[19]=d>>>24&255,e[20]=h>>>0&255,e[21]=h>>>8&255,e[22]=h>>>16&255,e[23]=h>>>24&255,e[24]=f>>>0&255,e[25]=f>>>8&255,e[26]=f>>>16&255,e[27]=f>>>24&255,e[28]=g>>>0&255,e[29]=g>>>8&255,e[30]=g>>>16&255,e[31]=g>>>24&255}(e,t,n,r)}var C=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function x(e,t,n,r,o,i,s){var a,l,c=new Uint8Array(16),u=new Uint8Array(64);for(l=0;l<16;l++)c[l]=0;for(l=0;l<8;l++)c[l]=i[l];for(;o>=64;){for(y(u,c,s,C),l=0;l<64;l++)e[t+l]=n[r+l]^u[l];for(a=1,l=8;l<16;l++)a=a+(255&c[l])|0,c[l]=255&a,a>>>=8;o-=64,t+=64,r+=64}if(o>0)for(y(u,c,s,C),l=0;l<o;l++)e[t+l]=n[r+l]^u[l];return 0}function _(e,t,n,r,o){var i,s,a=new Uint8Array(16),l=new Uint8Array(64);for(s=0;s<16;s++)a[s]=0;for(s=0;s<8;s++)a[s]=r[s];for(;n>=64;){for(y(l,a,o,C),s=0;s<64;s++)e[t+s]=l[s];for(i=1,s=8;s<16;s++)i=i+(255&a[s])|0,a[s]=255&i,i>>>=8;n-=64,t+=64}if(n>0)for(y(l,a,o,C),s=0;s<n;s++)e[t+s]=l[s];return 0}function k(e,t,n,r,o){var i=new Uint8Array(32);b(i,r,o,C);for(var s=new Uint8Array(8),a=0;a<8;a++)s[a]=r[a+16];return _(e,t,n,s,i)}function S(e,t,n,r,o,i,s){var a=new Uint8Array(32);b(a,i,s,C);for(var l=new Uint8Array(8),c=0;c<8;c++)l[c]=i[c+16];return x(e,t,n,r,o,l,a)}var E=function(e){var t,n,r,o,i,s,a,l;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,t=255&e[0]|(255&e[1])<<8,this.r[0]=8191&t,n=255&e[2]|(255&e[3])<<8,this.r[1]=8191&(t>>>13|n<<3),r=255&e[4]|(255&e[5])<<8,this.r[2]=7939&(n>>>10|r<<6),o=255&e[6]|(255&e[7])<<8,this.r[3]=8191&(r>>>7|o<<9),i=255&e[8]|(255&e[9])<<8,this.r[4]=255&(o>>>4|i<<12),this.r[5]=i>>>1&8190,s=255&e[10]|(255&e[11])<<8,this.r[6]=8191&(i>>>14|s<<2),a=255&e[12]|(255&e[13])<<8,this.r[7]=8065&(s>>>11|a<<5),l=255&e[14]|(255&e[15])<<8,this.r[8]=8191&(a>>>8|l<<8),this.r[9]=l>>>5&127,this.pad[0]=255&e[16]|(255&e[17])<<8,this.pad[1]=255&e[18]|(255&e[19])<<8,this.pad[2]=255&e[20]|(255&e[21])<<8,this.pad[3]=255&e[22]|(255&e[23])<<8,this.pad[4]=255&e[24]|(255&e[25])<<8,this.pad[5]=255&e[26]|(255&e[27])<<8,this.pad[6]=255&e[28]|(255&e[29])<<8,this.pad[7]=255&e[30]|(255&e[31])<<8};function R(e,t,n,r,o,i){var s=new E(i);return s.update(n,r,o),s.finish(e,t),0}function T(e,t,n,r,o,i){var s=new Uint8Array(16);return R(s,0,n,r,o,i),p(e,t,s,0)}function L(e,t,n,r,o){var i;if(n<32)return-1;for(S(e,0,t,0,n,r,o),R(e,16,e,32,n-32,e),i=0;i<16;i++)e[i]=0;return 0}function A(e,t,n,r,o){var i,s=new Uint8Array(32);if(n<32)return-1;if(k(s,0,32,r,o),0!==T(t,16,t,32,n-32,s))return-1;for(S(e,0,t,0,n,r,o),i=0;i<32;i++)e[i]=0;return 0}function M(e,t){var n;for(n=0;n<16;n++)e[n]=0|t[n]}function O(e){var t,n,r=1;for(t=0;t<16;t++)n=e[t]+r+65535,r=Math.floor(n/65536),e[t]=n-65536*r;e[0]+=r-1+37*(r-1)}function N(e,t,n){for(var r,o=~(n-1),i=0;i<16;i++)r=o&(e[i]^t[i]),e[i]^=r,t[i]^=r}function $(e,n){var r,o,i,s=t(),a=t();for(r=0;r<16;r++)a[r]=n[r];for(O(a),O(a),O(a),o=0;o<2;o++){for(s[0]=a[0]-65517,r=1;r<15;r++)s[r]=a[r]-65535-(s[r-1]>>16&1),s[r-1]&=65535;s[15]=a[15]-32767-(s[14]>>16&1),i=s[15]>>16&1,s[14]&=65535,N(a,s,1-i)}for(r=0;r<16;r++)e[2*r]=255&a[r],e[2*r+1]=a[r]>>8}function P(e,t){var n=new Uint8Array(32),r=new Uint8Array(32);return $(n,e),$(r,t),m(n,0,r,0)}function I(e){var t=new Uint8Array(32);return $(t,e),1&t[0]}function U(e,t){var n;for(n=0;n<16;n++)e[n]=t[2*n]+(t[2*n+1]<<8);e[15]&=32767}function W(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]+n[r]}function j(e,t,n){for(var r=0;r<16;r++)e[r]=t[r]-n[r]}function B(e,t,n){var r,o,i=0,s=0,a=0,l=0,c=0,u=0,d=0,h=0,f=0,g=0,p=0,w=0,m=0,v=0,y=0,b=0,C=0,x=0,_=0,k=0,S=0,E=0,R=0,T=0,L=0,A=0,M=0,O=0,N=0,$=0,P=0,I=n[0],U=n[1],W=n[2],j=n[3],B=n[4],D=n[5],H=n[6],V=n[7],K=n[8],F=n[9],q=n[10],z=n[11],Z=n[12],G=n[13],Y=n[14],Q=n[15];i+=(r=t[0])*I,s+=r*U,a+=r*W,l+=r*j,c+=r*B,u+=r*D,d+=r*H,h+=r*V,f+=r*K,g+=r*F,p+=r*q,w+=r*z,m+=r*Z,v+=r*G,y+=r*Y,b+=r*Q,s+=(r=t[1])*I,a+=r*U,l+=r*W,c+=r*j,u+=r*B,d+=r*D,h+=r*H,f+=r*V,g+=r*K,p+=r*F,w+=r*q,m+=r*z,v+=r*Z,y+=r*G,b+=r*Y,C+=r*Q,a+=(r=t[2])*I,l+=r*U,c+=r*W,u+=r*j,d+=r*B,h+=r*D,f+=r*H,g+=r*V,p+=r*K,w+=r*F,m+=r*q,v+=r*z,y+=r*Z,b+=r*G,C+=r*Y,x+=r*Q,l+=(r=t[3])*I,c+=r*U,u+=r*W,d+=r*j,h+=r*B,f+=r*D,g+=r*H,p+=r*V,w+=r*K,m+=r*F,v+=r*q,y+=r*z,b+=r*Z,C+=r*G,x+=r*Y,_+=r*Q,c+=(r=t[4])*I,u+=r*U,d+=r*W,h+=r*j,f+=r*B,g+=r*D,p+=r*H,w+=r*V,m+=r*K,v+=r*F,y+=r*q,b+=r*z,C+=r*Z,x+=r*G,_+=r*Y,k+=r*Q,u+=(r=t[5])*I,d+=r*U,h+=r*W,f+=r*j,g+=r*B,p+=r*D,w+=r*H,m+=r*V,v+=r*K,y+=r*F,b+=r*q,C+=r*z,x+=r*Z,_+=r*G,k+=r*Y,S+=r*Q,d+=(r=t[6])*I,h+=r*U,f+=r*W,g+=r*j,p+=r*B,w+=r*D,m+=r*H,v+=r*V,y+=r*K,b+=r*F,C+=r*q,x+=r*z,_+=r*Z,k+=r*G,S+=r*Y,E+=r*Q,h+=(r=t[7])*I,f+=r*U,g+=r*W,p+=r*j,w+=r*B,m+=r*D,v+=r*H,y+=r*V,b+=r*K,C+=r*F,x+=r*q,_+=r*z,k+=r*Z,S+=r*G,E+=r*Y,R+=r*Q,f+=(r=t[8])*I,g+=r*U,p+=r*W,w+=r*j,m+=r*B,v+=r*D,y+=r*H,b+=r*V,C+=r*K,x+=r*F,_+=r*q,k+=r*z,S+=r*Z,E+=r*G,R+=r*Y,T+=r*Q,g+=(r=t[9])*I,p+=r*U,w+=r*W,m+=r*j,v+=r*B,y+=r*D,b+=r*H,C+=r*V,x+=r*K,_+=r*F,k+=r*q,S+=r*z,E+=r*Z,R+=r*G,T+=r*Y,L+=r*Q,p+=(r=t[10])*I,w+=r*U,m+=r*W,v+=r*j,y+=r*B,b+=r*D,C+=r*H,x+=r*V,_+=r*K,k+=r*F,S+=r*q,E+=r*z,R+=r*Z,T+=r*G,L+=r*Y,A+=r*Q,w+=(r=t[11])*I,m+=r*U,v+=r*W,y+=r*j,b+=r*B,C+=r*D,x+=r*H,_+=r*V,k+=r*K,S+=r*F,E+=r*q,R+=r*z,T+=r*Z,L+=r*G,A+=r*Y,M+=r*Q,m+=(r=t[12])*I,v+=r*U,y+=r*W,b+=r*j,C+=r*B,x+=r*D,_+=r*H,k+=r*V,S+=r*K,E+=r*F,R+=r*q,T+=r*z,L+=r*Z,A+=r*G,M+=r*Y,O+=r*Q,v+=(r=t[13])*I,y+=r*U,b+=r*W,C+=r*j,x+=r*B,_+=r*D,k+=r*H,S+=r*V,E+=r*K,R+=r*F,T+=r*q,L+=r*z,A+=r*Z,M+=r*G,O+=r*Y,N+=r*Q,y+=(r=t[14])*I,b+=r*U,C+=r*W,x+=r*j,_+=r*B,k+=r*D,S+=r*H,E+=r*V,R+=r*K,T+=r*F,L+=r*q,A+=r*z,M+=r*Z,O+=r*G,N+=r*Y,$+=r*Q,b+=(r=t[15])*I,s+=38*(x+=r*W),a+=38*(_+=r*j),l+=38*(k+=r*B),c+=38*(S+=r*D),u+=38*(E+=r*H),d+=38*(R+=r*V),h+=38*(T+=r*K),f+=38*(L+=r*F),g+=38*(A+=r*q),p+=38*(M+=r*z),w+=38*(O+=r*Z),m+=38*(N+=r*G),v+=38*($+=r*Y),y+=38*(P+=r*Q),i=(r=(i+=38*(C+=r*U))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),a=(r=a+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),w=(r=w+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),i=(r=(i+=o-1+37*(o-1))+(o=1)+65535)-65536*(o=Math.floor(r/65536)),s=(r=s+o+65535)-65536*(o=Math.floor(r/65536)),a=(r=a+o+65535)-65536*(o=Math.floor(r/65536)),l=(r=l+o+65535)-65536*(o=Math.floor(r/65536)),c=(r=c+o+65535)-65536*(o=Math.floor(r/65536)),u=(r=u+o+65535)-65536*(o=Math.floor(r/65536)),d=(r=d+o+65535)-65536*(o=Math.floor(r/65536)),h=(r=h+o+65535)-65536*(o=Math.floor(r/65536)),f=(r=f+o+65535)-65536*(o=Math.floor(r/65536)),g=(r=g+o+65535)-65536*(o=Math.floor(r/65536)),p=(r=p+o+65535)-65536*(o=Math.floor(r/65536)),w=(r=w+o+65535)-65536*(o=Math.floor(r/65536)),m=(r=m+o+65535)-65536*(o=Math.floor(r/65536)),v=(r=v+o+65535)-65536*(o=Math.floor(r/65536)),y=(r=y+o+65535)-65536*(o=Math.floor(r/65536)),b=(r=b+o+65535)-65536*(o=Math.floor(r/65536)),i+=o-1+37*(o-1),e[0]=i,e[1]=s,e[2]=a,e[3]=l,e[4]=c,e[5]=u,e[6]=d,e[7]=h,e[8]=f,e[9]=g,e[10]=p,e[11]=w,e[12]=m,e[13]=v,e[14]=y,e[15]=b}function D(e,t){B(e,t,t)}function H(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=253;r>=0;r--)D(o,o),2!==r&&4!==r&&B(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function V(e,n){var r,o=t();for(r=0;r<16;r++)o[r]=n[r];for(r=250;r>=0;r--)D(o,o),1!==r&&B(o,o,n);for(r=0;r<16;r++)e[r]=o[r]}function K(e,n,r){var o,i,s=new Uint8Array(32),l=new Float64Array(80),c=t(),u=t(),d=t(),h=t(),f=t(),g=t();for(i=0;i<31;i++)s[i]=n[i];for(s[31]=127&n[31]|64,s[0]&=248,U(l,r),i=0;i<16;i++)u[i]=l[i],h[i]=c[i]=d[i]=0;for(c[0]=h[0]=1,i=254;i>=0;--i)N(c,u,o=s[i>>>3]>>>(7&i)&1),N(d,h,o),W(f,c,d),j(c,c,d),W(d,u,h),j(u,u,h),D(h,f),D(g,c),B(c,d,c),B(d,u,f),W(f,c,d),j(c,c,d),D(u,c),j(d,h,g),B(c,d,a),W(c,c,h),B(d,d,c),B(c,h,g),B(h,u,l),D(u,f),N(c,u,o),N(d,h,o);for(i=0;i<16;i++)l[i+16]=c[i],l[i+32]=d[i],l[i+48]=u[i],l[i+64]=h[i];var p=l.subarray(32),w=l.subarray(16);return H(p,p),B(w,w,p),$(e,w),0}function F(e,t){return K(e,t,o)}function q(e,t){return n(t,32),F(e,t)}function z(e,t,n){var o=new Uint8Array(32);return K(o,n,t),b(e,r,o,C)}E.prototype.blocks=function(e,t,n){for(var r,o,i,s,a,l,c,u,d,h,f,g,p,w,m,v,y,b,C,x=this.fin?0:2048,_=this.h[0],k=this.h[1],S=this.h[2],E=this.h[3],R=this.h[4],T=this.h[5],L=this.h[6],A=this.h[7],M=this.h[8],O=this.h[9],N=this.r[0],$=this.r[1],P=this.r[2],I=this.r[3],U=this.r[4],W=this.r[5],j=this.r[6],B=this.r[7],D=this.r[8],H=this.r[9];n>=16;)h=d=0,h+=(_+=8191&(r=255&e[t+0]|(255&e[t+1])<<8))*N,h+=(k+=8191&(r>>>13|(o=255&e[t+2]|(255&e[t+3])<<8)<<3))*(5*H),h+=(S+=8191&(o>>>10|(i=255&e[t+4]|(255&e[t+5])<<8)<<6))*(5*D),h+=(E+=8191&(i>>>7|(s=255&e[t+6]|(255&e[t+7])<<8)<<9))*(5*B),d=(h+=(R+=8191&(s>>>4|(a=255&e[t+8]|(255&e[t+9])<<8)<<12))*(5*j))>>>13,h&=8191,h+=(T+=a>>>1&8191)*(5*W),h+=(L+=8191&(a>>>14|(l=255&e[t+10]|(255&e[t+11])<<8)<<2))*(5*U),h+=(A+=8191&(l>>>11|(c=255&e[t+12]|(255&e[t+13])<<8)<<5))*(5*I),h+=(M+=8191&(c>>>8|(u=255&e[t+14]|(255&e[t+15])<<8)<<8))*(5*P),f=d+=(h+=(O+=u>>>5|x)*(5*$))>>>13,f+=_*$,f+=k*N,f+=S*(5*H),f+=E*(5*D),d=(f+=R*(5*B))>>>13,f&=8191,f+=T*(5*j),f+=L*(5*W),f+=A*(5*U),f+=M*(5*I),d+=(f+=O*(5*P))>>>13,f&=8191,g=d,g+=_*P,g+=k*$,g+=S*N,g+=E*(5*H),d=(g+=R*(5*D))>>>13,g&=8191,g+=T*(5*B),g+=L*(5*j),g+=A*(5*W),g+=M*(5*U),p=d+=(g+=O*(5*I))>>>13,p+=_*I,p+=k*P,p+=S*$,p+=E*N,d=(p+=R*(5*H))>>>13,p&=8191,p+=T*(5*D),p+=L*(5*B),p+=A*(5*j),p+=M*(5*W),w=d+=(p+=O*(5*U))>>>13,w+=_*U,w+=k*I,w+=S*P,w+=E*$,d=(w+=R*N)>>>13,w&=8191,w+=T*(5*H),w+=L*(5*D),w+=A*(5*B),w+=M*(5*j),m=d+=(w+=O*(5*W))>>>13,m+=_*W,m+=k*U,m+=S*I,m+=E*P,d=(m+=R*$)>>>13,m&=8191,m+=T*N,m+=L*(5*H),m+=A*(5*D),m+=M*(5*B),v=d+=(m+=O*(5*j))>>>13,v+=_*j,v+=k*W,v+=S*U,v+=E*I,d=(v+=R*P)>>>13,v&=8191,v+=T*$,v+=L*N,v+=A*(5*H),v+=M*(5*D),y=d+=(v+=O*(5*B))>>>13,y+=_*B,y+=k*j,y+=S*W,y+=E*U,d=(y+=R*I)>>>13,y&=8191,y+=T*P,y+=L*$,y+=A*N,y+=M*(5*H),b=d+=(y+=O*(5*D))>>>13,b+=_*D,b+=k*B,b+=S*j,b+=E*W,d=(b+=R*U)>>>13,b&=8191,b+=T*I,b+=L*P,b+=A*$,b+=M*N,C=d+=(b+=O*(5*H))>>>13,C+=_*H,C+=k*D,C+=S*B,C+=E*j,d=(C+=R*W)>>>13,C&=8191,C+=T*U,C+=L*I,C+=A*P,C+=M*$,_=h=8191&(d=(d=((d+=(C+=O*N)>>>13)<<2)+d|0)+(h&=8191)|0),k=f+=d>>>=13,S=g&=8191,E=p&=8191,R=w&=8191,T=m&=8191,L=v&=8191,A=y&=8191,M=b&=8191,O=C&=8191,t+=16,n-=16;this.h[0]=_,this.h[1]=k,this.h[2]=S,this.h[3]=E,this.h[4]=R,this.h[5]=T,this.h[6]=L,this.h[7]=A,this.h[8]=M,this.h[9]=O},E.prototype.finish=function(e,t){var n,r,o,i,s=new Uint16Array(10);if(this.leftover){for(i=this.leftover,this.buffer[i++]=1;i<16;i++)this.buffer[i]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(n=this.h[1]>>>13,this.h[1]&=8191,i=2;i<10;i++)this.h[i]+=n,n=this.h[i]>>>13,this.h[i]&=8191;for(this.h[0]+=5*n,n=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=n,n=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=n,s[0]=this.h[0]+5,n=s[0]>>>13,s[0]&=8191,i=1;i<10;i++)s[i]=this.h[i]+n,n=s[i]>>>13,s[i]&=8191;for(s[9]-=8192,r=(1^n)-1,i=0;i<10;i++)s[i]&=r;for(r=~r,i=0;i<10;i++)this.h[i]=this.h[i]&r|s[i];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),o=this.h[0]+this.pad[0],this.h[0]=65535&o,i=1;i<8;i++)o=(this.h[i]+this.pad[i]|0)+(o>>>16)|0,this.h[i]=65535&o;e[t+0]=this.h[0]>>>0&255,e[t+1]=this.h[0]>>>8&255,e[t+2]=this.h[1]>>>0&255,e[t+3]=this.h[1]>>>8&255,e[t+4]=this.h[2]>>>0&255,e[t+5]=this.h[2]>>>8&255,e[t+6]=this.h[3]>>>0&255,e[t+7]=this.h[3]>>>8&255,e[t+8]=this.h[4]>>>0&255,e[t+9]=this.h[4]>>>8&255,e[t+10]=this.h[5]>>>0&255,e[t+11]=this.h[5]>>>8&255,e[t+12]=this.h[6]>>>0&255,e[t+13]=this.h[6]>>>8&255,e[t+14]=this.h[7]>>>0&255,e[t+15]=this.h[7]>>>8&255},E.prototype.update=function(e,t,n){var r,o;if(this.leftover){for((o=16-this.leftover)>n&&(o=n),r=0;r<o;r++)this.buffer[this.leftover+r]=e[t+r];if(n-=o,t+=o,this.leftover+=o,this.leftover<16)return;this.blocks(this.buffer,0,16),this.leftover=0}if(n>=16&&(o=n-n%16,this.blocks(e,t,o),t+=o,n-=o),n){for(r=0;r<n;r++)this.buffer[this.leftover+r]=e[t+r];this.leftover+=n}};var Z=L,G=A;var 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 Q(e,t,n,r){for(var o,i,s,a,l,c,u,d,h,f,g,p,w,m,v,y,b,C,x,_,k,S,E,R,T,L,A=new Int32Array(16),M=new Int32Array(16),O=e[0],N=e[1],$=e[2],P=e[3],I=e[4],U=e[5],W=e[6],j=e[7],B=t[0],D=t[1],H=t[2],V=t[3],K=t[4],F=t[5],q=t[6],z=t[7],Z=0;r>=128;){for(x=0;x<16;x++)_=8*x+Z,A[x]=n[_+0]<<24|n[_+1]<<16|n[_+2]<<8|n[_+3],M[x]=n[_+4]<<24|n[_+5]<<16|n[_+6]<<8|n[_+7];for(x=0;x<80;x++)if(o=O,i=N,s=$,a=P,l=I,c=U,u=W,j,h=B,f=D,g=H,p=V,w=K,m=F,v=q,z,E=65535&(S=z),R=S>>>16,T=65535&(k=j),L=k>>>16,E+=65535&(S=(K>>>14|I<<18)^(K>>>18|I<<14)^(I>>>9|K<<23)),R+=S>>>16,T+=65535&(k=(I>>>14|K<<18)^(I>>>18|K<<14)^(K>>>9|I<<23)),L+=k>>>16,E+=65535&(S=K&F^~K&q),R+=S>>>16,T+=65535&(k=I&U^~I&W),L+=k>>>16,k=Y[2*x],E+=65535&(S=Y[2*x+1]),R+=S>>>16,T+=65535&k,L+=k>>>16,k=A[x%16],R+=(S=M[x%16])>>>16,T+=65535&k,L+=k>>>16,T+=(R+=(E+=65535&S)>>>16)>>>16,E=65535&(S=C=65535&E|R<<16),R=S>>>16,T=65535&(k=b=65535&T|(L+=T>>>16)<<16),L=k>>>16,E+=65535&(S=(B>>>28|O<<4)^(O>>>2|B<<30)^(O>>>7|B<<25)),R+=S>>>16,T+=65535&(k=(O>>>28|B<<4)^(B>>>2|O<<30)^(B>>>7|O<<25)),L+=k>>>16,R+=(S=B&D^B&H^D&H)>>>16,T+=65535&(k=O&N^O&$^N&$),L+=k>>>16,d=65535&(T+=(R+=(E+=65535&S)>>>16)>>>16)|(L+=T>>>16)<<16,y=65535&E|R<<16,E=65535&(S=p),R=S>>>16,T=65535&(k=a),L=k>>>16,R+=(S=C)>>>16,T+=65535&(k=b),L+=k>>>16,N=o,$=i,P=s,I=a=65535&(T+=(R+=(E+=65535&S)>>>16)>>>16)|(L+=T>>>16)<<16,U=l,W=c,j=u,O=d,D=h,H=f,V=g,K=p=65535&E|R<<16,F=w,q=m,z=v,B=y,x%16==15)for(_=0;_<16;_++)k=A[_],E=65535&(S=M[_]),R=S>>>16,T=65535&k,L=k>>>16,k=A[(_+9)%16],E+=65535&(S=M[(_+9)%16]),R+=S>>>16,T+=65535&k,L+=k>>>16,b=A[(_+1)%16],E+=65535&(S=((C=M[(_+1)%16])>>>1|b<<31)^(C>>>8|b<<24)^(C>>>7|b<<25)),R+=S>>>16,T+=65535&(k=(b>>>1|C<<31)^(b>>>8|C<<24)^b>>>7),L+=k>>>16,b=A[(_+14)%16],R+=(S=((C=M[(_+14)%16])>>>19|b<<13)^(b>>>29|C<<3)^(C>>>6|b<<26))>>>16,T+=65535&(k=(b>>>19|C<<13)^(C>>>29|b<<3)^b>>>6),L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,A[_]=65535&T|L<<16,M[_]=65535&E|R<<16;E=65535&(S=B),R=S>>>16,T=65535&(k=O),L=k>>>16,k=e[0],R+=(S=t[0])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[0]=O=65535&T|L<<16,t[0]=B=65535&E|R<<16,E=65535&(S=D),R=S>>>16,T=65535&(k=N),L=k>>>16,k=e[1],R+=(S=t[1])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[1]=N=65535&T|L<<16,t[1]=D=65535&E|R<<16,E=65535&(S=H),R=S>>>16,T=65535&(k=$),L=k>>>16,k=e[2],R+=(S=t[2])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[2]=$=65535&T|L<<16,t[2]=H=65535&E|R<<16,E=65535&(S=V),R=S>>>16,T=65535&(k=P),L=k>>>16,k=e[3],R+=(S=t[3])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[3]=P=65535&T|L<<16,t[3]=V=65535&E|R<<16,E=65535&(S=K),R=S>>>16,T=65535&(k=I),L=k>>>16,k=e[4],R+=(S=t[4])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[4]=I=65535&T|L<<16,t[4]=K=65535&E|R<<16,E=65535&(S=F),R=S>>>16,T=65535&(k=U),L=k>>>16,k=e[5],R+=(S=t[5])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[5]=U=65535&T|L<<16,t[5]=F=65535&E|R<<16,E=65535&(S=q),R=S>>>16,T=65535&(k=W),L=k>>>16,k=e[6],R+=(S=t[6])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[6]=W=65535&T|L<<16,t[6]=q=65535&E|R<<16,E=65535&(S=z),R=S>>>16,T=65535&(k=j),L=k>>>16,k=e[7],R+=(S=t[7])>>>16,T+=65535&k,L+=k>>>16,L+=(T+=(R+=(E+=65535&S)>>>16)>>>16)>>>16,e[7]=j=65535&T|L<<16,t[7]=z=65535&E|R<<16,Z+=128,r-=128}return r}function J(e,t,n){var r,o=new Int32Array(8),i=new Int32Array(8),s=new Uint8Array(256),a=n;for(o[0]=1779033703,o[1]=3144134277,o[2]=1013904242,o[3]=2773480762,o[4]=1359893119,o[5]=2600822924,o[6]=528734635,o[7]=1541459225,i[0]=4089235720,i[1]=2227873595,i[2]=4271175723,i[3]=1595750129,i[4]=2917565137,i[5]=725511199,i[6]=4215389547,i[7]=327033209,Q(o,i,t,n),n%=128,r=0;r<n;r++)s[r]=t[a-n+r];for(s[n]=128,s[(n=256-128*(n<112?1:0))-9]=0,f(s,n-8,a/536870912|0,a<<3),Q(o,i,s,n),r=0;r<8;r++)f(e,8*r,o[r],i[r]);return 0}function X(e,n){var r=t(),o=t(),i=t(),s=t(),a=t(),l=t(),u=t(),d=t(),h=t();j(r,e[1],e[0]),j(h,n[1],n[0]),B(r,r,h),W(o,e[0],e[1]),W(h,n[0],n[1]),B(o,o,h),B(i,e[3],n[3]),B(i,i,c),B(s,e[2],n[2]),W(s,s,s),j(a,o,r),j(l,s,i),W(u,s,i),W(d,o,r),B(e[0],a,l),B(e[1],d,u),B(e[2],u,l),B(e[3],a,d)}function ee(e,t,n){var r;for(r=0;r<4;r++)N(e[r],t[r],n)}function te(e,n){var r=t(),o=t(),i=t();H(i,n[2]),B(r,n[0],i),B(o,n[1],i),$(e,o),e[31]^=I(r)<<7}function ne(e,t,n){var r,o;for(M(e[0],i),M(e[1],s),M(e[2],s),M(e[3],i),o=255;o>=0;--o)ee(e,t,r=n[o/8|0]>>(7&o)&1),X(t,e),X(e,e),ee(e,t,r)}function re(e,n){var r=[t(),t(),t(),t()];M(r[0],u),M(r[1],d),M(r[2],s),B(r[3],u,d),ne(e,r,n)}function oe(e,r,o){var i,s=new Uint8Array(64),a=[t(),t(),t(),t()];for(o||n(r,32),J(s,r,32),s[0]&=248,s[31]&=127,s[31]|=64,re(a,s),te(e,a),i=0;i<32;i++)r[i+32]=e[i];return 0}var ie=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 se(e,t){var n,r,o,i;for(r=63;r>=32;--r){for(n=0,o=r-32,i=r-12;o<i;++o)t[o]+=n-16*t[r]*ie[o-(r-32)],n=Math.floor((t[o]+128)/256),t[o]-=256*n;t[o]+=n,t[r]=0}for(n=0,o=0;o<32;o++)t[o]+=n-(t[31]>>4)*ie[o],n=t[o]>>8,t[o]&=255;for(o=0;o<32;o++)t[o]-=n*ie[o];for(r=0;r<32;r++)t[r+1]+=t[r]>>8,e[r]=255&t[r]}function ae(e){var t,n=new Float64Array(64);for(t=0;t<64;t++)n[t]=e[t];for(t=0;t<64;t++)e[t]=0;se(e,n)}function le(e,n,r,o){var i,s,a=new Uint8Array(64),l=new Uint8Array(64),c=new Uint8Array(64),u=new Float64Array(64),d=[t(),t(),t(),t()];J(a,o,32),a[0]&=248,a[31]&=127,a[31]|=64;var h=r+64;for(i=0;i<r;i++)e[64+i]=n[i];for(i=0;i<32;i++)e[32+i]=a[32+i];for(J(c,e.subarray(32),r+32),ae(c),re(d,c),te(e,d),i=32;i<64;i++)e[i]=o[i];for(J(l,e,r+64),ae(l),i=0;i<64;i++)u[i]=0;for(i=0;i<32;i++)u[i]=c[i];for(i=0;i<32;i++)for(s=0;s<32;s++)u[i+s]+=l[i]*a[s];return se(e.subarray(32),u),h}function ce(e,n,r,o){var a,c=new Uint8Array(32),u=new Uint8Array(64),d=[t(),t(),t(),t()],f=[t(),t(),t(),t()];if(r<64)return-1;if(function(e,n){var r=t(),o=t(),a=t(),c=t(),u=t(),d=t(),f=t();return M(e[2],s),U(e[1],n),D(a,e[1]),B(c,a,l),j(a,a,e[2]),W(c,e[2],c),D(u,c),D(d,u),B(f,d,u),B(r,f,a),B(r,r,c),V(r,r),B(r,r,a),B(r,r,c),B(r,r,c),B(e[0],r,c),D(o,e[0]),B(o,o,c),P(o,a)&&B(e[0],e[0],h),D(o,e[0]),B(o,o,c),P(o,a)?-1:(I(e[0])===n[31]>>7&&j(e[0],i,e[0]),B(e[3],e[0],e[1]),0)}(f,o))return-1;for(a=0;a<r;a++)e[a]=n[a];for(a=0;a<32;a++)e[a+32]=o[a];if(J(u,e,r),ae(u),ne(d,f,u),re(f,n.subarray(32)),X(d,f),te(c,d),r-=64,m(n,0,c,0)){for(a=0;a<r;a++)e[a]=0;return-1}for(a=0;a<r;a++)e[a]=n[a+64];return r}var ue=32,de=24,he=16,fe=32,ge=32,pe=de,we=64,me=32,ve=64;function ye(e,t){if(e.length!==ue)throw new Error("bad key size");if(t.length!==de)throw new Error("bad nonce size")}function be(){for(var e=0;e<arguments.length;e++)if(!(arguments[e]instanceof Uint8Array))throw new TypeError("unexpected type, use Uint8Array")}function Ce(e){for(var t=0;t<e.length;t++)e[t]=0}e.lowlevel={crypto_core_hsalsa20:b,crypto_stream_xor:S,crypto_stream:k,crypto_stream_salsa20_xor:x,crypto_stream_salsa20:_,crypto_onetimeauth:R,crypto_onetimeauth_verify:T,crypto_verify_16:p,crypto_verify_32:m,crypto_secretbox:L,crypto_secretbox_open:A,crypto_scalarmult:K,crypto_scalarmult_base:F,crypto_box_beforenm:z,crypto_box_afternm:Z,crypto_box:function(e,t,n,r,o,i){var s=new Uint8Array(32);return z(s,o,i),Z(e,t,n,r,s)},crypto_box_open:function(e,t,n,r,o,i){var s=new Uint8Array(32);return z(s,o,i),G(e,t,n,r,s)},crypto_box_keypair:q,crypto_hash:J,crypto_sign:le,crypto_sign_keypair:oe,crypto_sign_open:ce,crypto_secretbox_KEYBYTES:ue,crypto_secretbox_NONCEBYTES:de,crypto_secretbox_ZEROBYTES:32,crypto_secretbox_BOXZEROBYTES:he,crypto_scalarmult_BYTES:32,crypto_scalarmult_SCALARBYTES:32,crypto_box_PUBLICKEYBYTES:fe,crypto_box_SECRETKEYBYTES:ge,crypto_box_BEFORENMBYTES:32,crypto_box_NONCEBYTES:pe,crypto_box_ZEROBYTES:32,crypto_box_BOXZEROBYTES:16,crypto_sign_BYTES:we,crypto_sign_PUBLICKEYBYTES:me,crypto_sign_SECRETKEYBYTES:ve,crypto_sign_SEEDBYTES:32,crypto_hash_BYTES:64,gf:t,D:l,L:ie,pack25519:$,unpack25519:U,M:B,A:W,S:D,Z:j,pow2523:V,add:X,set25519:M,modL:se,scalarmult:ne,scalarbase:re},e.randomBytes=function(e){var t=new Uint8Array(e);return n(t,e),t},e.secretbox=function(e,t,n){be(e,t,n),ye(n,t);for(var r=new Uint8Array(32+e.length),o=new Uint8Array(r.length),i=0;i<e.length;i++)r[i+32]=e[i];return L(o,r,r.length,t,n),o.subarray(he)},e.secretbox.open=function(e,t,n){be(e,t,n),ye(n,t);for(var r=new Uint8Array(he+e.length),o=new Uint8Array(r.length),i=0;i<e.length;i++)r[i+he]=e[i];return r.length<32||0!==A(o,r,r.length,t,n)?null:o.subarray(32)},e.secretbox.keyLength=ue,e.secretbox.nonceLength=de,e.secretbox.overheadLength=he,e.scalarMult=function(e,t){if(be(e,t),32!==e.length)throw new Error("bad n size");if(32!==t.length)throw new Error("bad p size");var n=new Uint8Array(32);return K(n,e,t),n},e.scalarMult.base=function(e){if(be(e),32!==e.length)throw new Error("bad n size");var t=new Uint8Array(32);return F(t,e),t},e.scalarMult.scalarLength=32,e.scalarMult.groupElementLength=32,e.box=function(t,n,r,o){var i=e.box.before(r,o);return e.secretbox(t,n,i)},e.box.before=function(e,t){be(e,t),function(e,t){if(e.length!==fe)throw new Error("bad public key size");if(t.length!==ge)throw new Error("bad secret key size")}(e,t);var n=new Uint8Array(32);return z(n,e,t),n},e.box.after=e.secretbox,e.box.open=function(t,n,r,o){var i=e.box.before(r,o);return e.secretbox.open(t,n,i)},e.box.open.after=e.secretbox.open,e.box.keyPair=function(){var e=new Uint8Array(fe),t=new Uint8Array(ge);return q(e,t),{publicKey:e,secretKey:t}},e.box.keyPair.fromSecretKey=function(e){if(be(e),e.length!==ge)throw new Error("bad secret key size");var t=new Uint8Array(fe);return F(t,e),{publicKey:t,secretKey:new Uint8Array(e)}},e.box.publicKeyLength=fe,e.box.secretKeyLength=ge,e.box.sharedKeyLength=32,e.box.nonceLength=pe,e.box.overheadLength=e.secretbox.overheadLength,e.sign=function(e,t){if(be(e,t),t.length!==ve)throw new Error("bad secret key size");var n=new Uint8Array(we+e.length);return le(n,e,e.length,t),n},e.sign.open=function(e,t){if(be(e,t),t.length!==me)throw new Error("bad public key size");var n=new Uint8Array(e.length),r=ce(n,e,e.length,t);if(r<0)return null;for(var o=new Uint8Array(r),i=0;i<o.length;i++)o[i]=n[i];return o},e.sign.detached=function(t,n){for(var r=e.sign(t,n),o=new Uint8Array(we),i=0;i<o.length;i++)o[i]=r[i];return o},e.sign.detached.verify=function(e,t,n){if(be(e,t,n),t.length!==we)throw new Error("bad signature size");if(n.length!==me)throw new Error("bad public key size");var r,o=new Uint8Array(we+e.length),i=new Uint8Array(we+e.length);for(r=0;r<we;r++)o[r]=t[r];for(r=0;r<e.length;r++)o[r+we]=e[r];return ce(i,o,o.length,n)>=0},e.sign.keyPair=function(){var e=new Uint8Array(me),t=new Uint8Array(ve);return oe(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(be(e),e.length!==ve)throw new Error("bad secret key size");for(var t=new Uint8Array(me),n=0;n<t.length;n++)t[n]=e[32+n];return{publicKey:t,secretKey:new Uint8Array(e)}},e.sign.keyPair.fromSeed=function(e){if(be(e),32!==e.length)throw new Error("bad seed size");for(var t=new Uint8Array(me),n=new Uint8Array(ve),r=0;r<32;r++)n[r]=e[r];return oe(t,n,!0),{publicKey:t,secretKey:n}},e.sign.publicKeyLength=me,e.sign.secretKeyLength=ve,e.sign.seedLength=32,e.sign.signatureLength=we,e.hash=function(e){be(e);var t=new Uint8Array(64);return J(t,e,e.length),t},e.hash.hashLength=64,e.verify=function(e,t){return be(e,t),0!==e.length&&0!==t.length&&(e.length===t.length&&0===g(e,0,t,0,e.length))},e.setPRNG=function(e){n=e},function(){var t="undefined"!=typeof self?self.crypto||self.msCrypto:null;if(t&&t.getRandomValues){e.setPRNG((function(e,n){var r,o=new Uint8Array(n);for(r=0;r<n;r+=65536)t.getRandomValues(o.subarray(r,r+Math.min(n-r,65536)));for(r=0;r<n;r++)e[r]=o[r];Ce(o)}))}else void 0!==w&&(t=v)&&t.randomBytes&&e.setPRNG((function(e,n){var r,o=t.randomBytes(n);for(r=0;r<n;r++)e[r]=o[r];Ce(o)}))}()}(e.exports?e.exports:self.nacl=self.nacl||{})}(m);const y=m.exports;var b,C,x,_,k,S,E,R;e.CONNECT_EVENT_ERROR_CODES=void 0,(b=e.CONNECT_EVENT_ERROR_CODES||(e.CONNECT_EVENT_ERROR_CODES={}))[b.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",b[b.BAD_REQUEST_ERROR=1]="BAD_REQUEST_ERROR",b[b.MANIFEST_NOT_FOUND_ERROR=2]="MANIFEST_NOT_FOUND_ERROR",b[b.MANIFEST_CONTENT_ERROR=3]="MANIFEST_CONTENT_ERROR",b[b.UNKNOWN_APP_ERROR=100]="UNKNOWN_APP_ERROR",b[b.USER_REJECTS_ERROR=300]="USER_REJECTS_ERROR",b[b.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED",e.CONNECT_ITEM_ERROR_CODES=void 0,(C=e.CONNECT_ITEM_ERROR_CODES||(e.CONNECT_ITEM_ERROR_CODES={}))[C.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",C[C.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED",e.SEND_TRANSACTION_ERROR_CODES=void 0,(x=e.SEND_TRANSACTION_ERROR_CODES||(e.SEND_TRANSACTION_ERROR_CODES={}))[x.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",x[x.BAD_REQUEST_ERROR=1]="BAD_REQUEST_ERROR",x[x.UNKNOWN_APP_ERROR=100]="UNKNOWN_APP_ERROR",x[x.USER_REJECTS_ERROR=300]="USER_REJECTS_ERROR",x[x.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED",(k=_||(_={}))[k.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",k[k.BAD_REQUEST_ERROR=1]="BAD_REQUEST_ERROR",k[k.UNKNOWN_APP_ERROR=100]="UNKNOWN_APP_ERROR",k[k.USER_REJECTS_ERROR=300]="USER_REJECTS_ERROR",k[k.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED",(E=S||(S={}))[E.UNKNOWN_ERROR=0]="UNKNOWN_ERROR",E[E.BAD_REQUEST_ERROR=1]="BAD_REQUEST_ERROR",E[E.UNKNOWN_APP_ERROR=100]="UNKNOWN_APP_ERROR",E[E.METHOD_NOT_SUPPORTED=400]="METHOD_NOT_SUPPORTED",e.CHAIN=void 0,(R=e.CHAIN||(e.CHAIN={})).MAINNET="-239",R.TESTNET="-3";const T={encode:function(e,t=!1){let n;return e instanceof Uint8Array?n=e:("string"!=typeof e&&(e=JSON.stringify(e)),n=p.decodeUTF8(e)),function(e,t){const n=p.encodeBase64(e);return t?encodeURIComponent(n):n}(n,t)},decode:function(e,t=!1){const n=function(e,t){return t&&(e=decodeURIComponent(e)),p.decodeBase64(e)}(e,t);return{toString:()=>p.encodeUTF8(n),toObject(){try{return JSON.parse(p.encodeUTF8(n))}catch(e){return null}},toUint8Array:()=>n}}};function L(e){let t="";return e.forEach((e=>{t+=("0"+(255&e).toString(16)).slice(-2)})),t}function A(e){if(e.length%2!=0)throw new Error(`Cannot convert ${e} to bytesArray`);const t=new Uint8Array(e.length/2);for(let n=0;n<e.length;n+=2)t[n/2]=parseInt(e.slice(n,n+2),16);return t}class M{constructor(e){this.nonceLength=24,this.keyPair=e?this.createKeypairFromString(e):this.createKeypair(),this.sessionId=L(this.keyPair.publicKey)}createKeypair(){return y.box.keyPair()}createKeypairFromString(e){return{publicKey:A(e.publicKey),secretKey:A(e.secretKey)}}createNonce(){return y.randomBytes(this.nonceLength)}encrypt(e,t){const n=(new TextEncoder).encode(e),r=this.createNonce();return function(e,t){const n=new Uint8Array(e.length+t.length);return n.set(e),n.set(t,e.length),n}(r,y.box(n,r,t,this.keyPair.secretKey))}decrypt(e,t){const[n,r]=function(e,t){if(t>=e.length)throw new Error("Index is out of buffer");return[e.slice(0,t),e.slice(t)]}(e,this.nonceLength),o=y.box.open(r,n,t,this.keyPair.secretKey);if(!o)throw new Error(`Decryption error: \n message: ${e.toString()} \n sender pubkey: ${t.toString()} \n keypair pubkey: ${this.keyPair.publicKey.toString()} \n keypair secretkey: ${this.keyPair.secretKey.toString()}`);return(new TextDecoder).decode(o)}stringifyKeypair(){return{publicKey:L(this.keyPair.publicKey),secretKey:L(this.keyPair.secretKey)}}}function O(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{l(r.next(e))}catch(t){i(t)}}function a(e){try{l(r.throw(e))}catch(t){i(t)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}l((r=r.apply(e,t||[])).next())}))}class N extends Error{constructor(e,t){super(e,t),this.message=`${N.prefix} ${this.constructor.name}${this.info?": "+this.info:""}${e?"\n"+e:""}`,Object.setPrototypeOf(this,N.prototype)}get info(){return""}}N.prefix="[TON_CONNECT_SDK_ERROR]";class $ extends N{get info(){return"Passed DappMetadata is in incorrect format."}constructor(...e){super(...e),Object.setPrototypeOf(this,$.prototype)}}class P extends N{get info(){return"Passed `tonconnect-manifest.json` contains errors. Check format of your manifest. See more https://github.com/ton-connect/docs/blob/main/requests-responses.md#app-manifest"}constructor(...e){super(...e),Object.setPrototypeOf(this,P.prototype)}}class I extends N{get info(){return"Manifest not found. Make sure you added `tonconnect-manifest.json` to the root of your app or passed correct manifestUrl. See more https://github.com/ton-connect/docs/blob/main/requests-responses.md#app-manifest"}constructor(...e){super(...e),Object.setPrototypeOf(this,I.prototype)}}class U extends N{get info(){return"Wallet connection called but wallet already connected. To avoid the error, disconnect the wallet before doing a new connection."}constructor(...e){super(...e),Object.setPrototypeOf(this,U.prototype)}}class W extends N{get info(){return"Send transaction or other protocol methods called while wallet is not connected."}constructor(...e){super(...e),Object.setPrototypeOf(this,W.prototype)}}class j extends N{get info(){return"User rejects the action in the wallet."}constructor(...e){super(...e),Object.setPrototypeOf(this,j.prototype)}}class B extends N{get info(){return"Request to the wallet contains errors."}constructor(...e){super(...e),Object.setPrototypeOf(this,B.prototype)}}class D extends N{get info(){return"App tries to send rpc request to the injected wallet while not connected."}constructor(...e){super(...e),Object.setPrototypeOf(this,D.prototype)}}class H extends N{get info(){return"There is an attempt to connect to the injected wallet while it is not exists in the webpage."}constructor(...e){super(...e),Object.setPrototypeOf(this,H.prototype)}}class V extends N{get info(){return"Storage was not specified in the `DappMetadata` and default `localStorage` was not detected in the environment."}constructor(...e){super(...e),Object.setPrototypeOf(this,V.prototype)}}class K extends N{get info(){return"An error occurred while fetching the wallets list."}constructor(...e){super(...e),Object.setPrototypeOf(this,K.prototype)}}class F extends N{get info(){return"Passed address is in incorrect format."}constructor(...e){super(...e),Object.setPrototypeOf(this,F.prototype)}}class q extends N{get info(){return"Passed hex is in incorrect format."}constructor(...e){super(...e),Object.setPrototypeOf(this,q.prototype)}}class z extends N{constructor(...e){super(...e),Object.setPrototypeOf(this,z.prototype)}}const Z={[e.CONNECT_EVENT_ERROR_CODES.UNKNOWN_ERROR]:z,[e.CONNECT_EVENT_ERROR_CODES.USER_REJECTS_ERROR]:j,[e.CONNECT_EVENT_ERROR_CODES.BAD_REQUEST_ERROR]:B,[e.CONNECT_EVENT_ERROR_CODES.UNKNOWN_APP_ERROR]:D,[e.CONNECT_EVENT_ERROR_CODES.MANIFEST_NOT_FOUND_ERROR]:I,[e.CONNECT_EVENT_ERROR_CODES.MANIFEST_CONTENT_ERROR]:P};const G=new class{parseError(e){let t=z;return e.code in Z&&(t=Z[e.code]||z),new t(e.message)}};class Y{isError(e){return"error"in e}}const Q={[e.SEND_TRANSACTION_ERROR_CODES.UNKNOWN_ERROR]:z,[e.SEND_TRANSACTION_ERROR_CODES.USER_REJECTS_ERROR]:j,[e.SEND_TRANSACTION_ERROR_CODES.BAD_REQUEST_ERROR]:B,[e.SEND_TRANSACTION_ERROR_CODES.UNKNOWN_APP_ERROR]:D};const J=new class extends Y{convertToRpcRequest(e){return{method:"sendTransaction",params:[JSON.stringify(e)]}}parseAndThrowError(e){let t=z;throw e.error.code in Q&&(t=Q[e.error.code]||z),new t(e.error.message)}convertFromRpcResponse(e){return{boc:e.result}}};class X{constructor(e,t){this.storage=e,this.storeKey="ton-connect-storage_http-bridge-gateway::"+t}storeLastEventId(e){return O(this,void 0,void 0,(function*(){return this.storage.setItem(this.storeKey,e)}))}removeLastEventId(){return O(this,void 0,void 0,(function*(){return this.storage.removeItem(this.storeKey)}))}getLastEventId(){return O(this,void 0,void 0,(function*(){const e=yield this.storage.getItem(this.storeKey);return e||null}))}}function ee(e,t){return function(e){return"/"===e.slice(-1)?e.slice(0,-1):e}(e)+"/"+t}function te(e){if(!e)return!1;const t=new URL(e);return"tg:"===t.protocol||"t.me"===t.hostname}function ne(e){return e.replaceAll(".","%2E").replaceAll("-","%2D").replaceAll("_","%5F").replaceAll("&","-").replaceAll("=","__").replaceAll("%","--")}function re(e,t){return O(this,void 0,void 0,(function*(){return new Promise(((n,r)=>{var o,i;if(null===(o=null==t?void 0:t.signal)||void 0===o?void 0:o.aborted)return void r(new N("Delay aborted"));const s=setTimeout((()=>n()),e);null===(i=null==t?void 0:t.signal)||void 0===i||i.addEventListener("abort",(()=>{clearTimeout(s),r(new N("Delay aborted"))}))}))}))}function oe(e){const t=new AbortController;return(null==e?void 0:e.aborted)?t.abort():null==e||e.addEventListener("abort",(()=>t.abort()),{once:!0}),t}function ie(e,t){var n,r;return O(this,void 0,void 0,(function*(){const o=null!==(n=null==t?void 0:t.attempts)&&void 0!==n?n:10,i=null!==(r=null==t?void 0:t.delayMs)&&void 0!==r?r:200,s=oe(null==t?void 0:t.signal);if("function"!=typeof e)throw new N("Expected a function, got "+typeof e);let a,l=0;for(;l<o;){if(s.signal.aborted)throw new N(`Aborted after attempts ${l}`);try{return yield e({signal:s.signal})}catch(c){a=c,l++,l<o&&(yield re(i))}}throw a}))}function se(...e){try{console.debug("[TON_CONNECT_SDK]",...e)}catch(t){}}function ae(...e){try{console.error("[TON_CONNECT_SDK]",...e)}catch(t){}}class le{constructor(e,t,n,r,o){this.bridgeUrl=t,this.sessionId=n,this.listener=r,this.errorsListener=o,this.ssePath="events",this.postPath="message",this.heartbeatMessage="heartbeat",this.defaultTtl=300,this.defaultReconnectDelay=2e3,this.defaultResendDelay=5e3,this.eventSource=function(e,t){let n=null,r=null,o=null,i=null,s=null;const a=(a,...l)=>O(this,void 0,void 0,(function*(){if(i=null!=a?a:null,null==s||s.abort(),s=oe(a),s.signal.aborted)throw new N("Resource creation was aborted");r=null!=l?l:null;const c=e(s.signal,...l);o=c;const u=yield c;if(o!==c&&u!==n)throw yield t(u),new N("Resource creation was aborted by a new resource creation");return n=u,n}));return{create:a,current:()=>null!=n?n:null,dispose:()=>O(this,void 0,void 0,(function*(){try{const r=n;n=null;const i=o;o=null;try{null==s||s.abort()}catch(e){}yield Promise.allSettled([r?t(r):Promise.resolve(),i?t(yield i):Promise.resolve()])}catch(e){}})),recreate:e=>O(this,void 0,void 0,(function*(){const t=n,s=o,l=r,c=i;if(yield re(e),t===n&&s===o&&l===r&&c===i)return yield a(i,...null!=l?l:[]);throw new N("Resource recreation was aborted by a new resource creation")}))}}(((e,t)=>O(this,void 0,void 0,(function*(){const n={bridgeUrl:this.bridgeUrl,ssePath:this.ssePath,sessionId:this.sessionId,bridgeGatewayStorage:this.bridgeGatewayStorage,errorHandler:this.errorsHandler.bind(this),messageHandler:this.messagesHandler.bind(this),signal:e,openingDeadlineMS:t};return yield function(e){return O(this,void 0,void 0,(function*(){return yield function(e,t){const n=null==t?void 0:t.timeout,r=oe(null==t?void 0:t.signal);return new Promise(((t,o)=>O(this,void 0,void 0,(function*(){if(r.signal.aborted)return void o(new N("Operation aborted"));let i;void 0!==n&&(i=setTimeout((()=>{r.abort(),o(new N(`Timeout after ${n}ms`))}),n)),r.signal.addEventListener("abort",(()=>{clearTimeout(i),o(new N("Operation aborted"))}),{once:!0});const s={timeout:n,abort:r.signal};yield e(((...e)=>{clearTimeout(i),t(...e)}),(()=>{clearTimeout(i),o()}),s)}))))}(((t,n,r)=>O(this,void 0,void 0,(function*(){var o;const i=oe(r.signal).signal;if(i.aborted)return void n(new N("Bridge connection aborted"));const s=new URL(ee(e.bridgeUrl,e.ssePath));s.searchParams.append("client_id",e.sessionId);const a=yield e.bridgeGatewayStorage.getLastEventId();if(a&&s.searchParams.append("last_event_id",a),i.aborted)return void n(new N("Bridge connection aborted"));const l=new EventSource(s.toString());l.onerror=r=>O(this,void 0,void 0,(function*(){if(i.aborted)return l.close(),void n(new N("Bridge connection aborted"));try{const n=yield e.errorHandler(l,r);n!==l&&l.close(),n&&n!==l&&t(n)}catch(o){l.close(),n(o)}})),l.onopen=()=>{if(i.aborted)return l.close(),void n(new N("Bridge connection aborted"));t(l)},l.onmessage=t=>{if(i.aborted)return l.close(),void n(new N("Bridge connection aborted"));e.messageHandler(t)},null===(o=e.signal)||void 0===o||o.addEventListener("abort",(()=>{l.close(),n(new N("Bridge connection aborted"))}))}))),{timeout:e.openingDeadlineMS,signal:e.signal})}))}(n)}))),(e=>O(this,void 0,void 0,(function*(){e.close()})))),this.bridgeGatewayStorage=new X(e,t)}get isReady(){const e=this.eventSource.current();return(null==e?void 0:e.readyState)===EventSource.OPEN}get isClosed(){const e=this.eventSource.current();return(null==e?void 0:e.readyState)!==EventSource.OPEN}get isConnecting(){const e=this.eventSource.current();return(null==e?void 0:e.readyState)===EventSource.CONNECTING}registerSession(e){return O(this,void 0,void 0,(function*(){yield this.eventSource.create(null==e?void 0:e.signal,null==e?void 0:e.openingDeadlineMS)}))}send(e,t,n,r){var o;return O(this,void 0,void 0,(function*(){const i={};"number"==typeof r?i.ttl=r:(i.ttl=null==r?void 0:r.ttl,i.signal=null==r?void 0:r.signal,i.attempts=null==r?void 0:r.attempts);const s=new URL(ee(this.bridgeUrl,this.postPath));s.searchParams.append("client_id",this.sessionId),s.searchParams.append("to",t),s.searchParams.append("ttl",((null==i?void 0:i.ttl)||this.defaultTtl).toString()),s.searchParams.append("topic",n);const a=T.encode(e);yield ie((e=>O(this,void 0,void 0,(function*(){const t=yield this.post(s,a,e.signal);if(!t.ok)throw new N(`Bridge send failed, status ${t.status}`)}))),{attempts:null!==(o=null==i?void 0:i.attempts)&&void 0!==o?o:Number.MAX_SAFE_INTEGER,delayMs:this.defaultResendDelay,signal:null==i?void 0:i.signal})}))}pause(){this.eventSource.dispose().catch((e=>ae(`Bridge pause failed, ${e}`)))}unPause(){return O(this,void 0,void 0,(function*(){yield this.eventSource.recreate(0)}))}close(){return O(this,void 0,void 0,(function*(){yield this.eventSource.dispose().catch((e=>ae(`Bridge close failed, ${e}`)))}))}setListener(e){this.listener=e}setErrorsListener(e){this.errorsListener=e}post(e,t,n){return O(this,void 0,void 0,(function*(){const r=yield fetch(e,{method:"post",body:t,signal:n});if(!r.ok)throw new N(`Bridge send failed, status ${r.status}`);return r}))}errorsHandler(e,t){return O(this,void 0,void 0,(function*(){if(this.isConnecting)throw e.close(),new N("Bridge error, failed to connect");if(!this.isReady){if(this.isClosed)return e.close(),se(`Bridge reconnecting, ${this.defaultReconnectDelay}ms delay`),yield this.eventSource.recreate(this.defaultReconnectDelay);throw new N("Bridge error, unknown state")}try{this.errorsListener(t)}catch(n){}}))}messagesHandler(e){return O(this,void 0,void 0,(function*(){if(e.data===this.heartbeatMessage)return;if(yield this.bridgeGatewayStorage.storeLastEventId(e.lastEventId),this.isClosed)return;let t;try{t=JSON.parse(e.data)}catch(n){throw new N(`Bridge message parse failed, message ${n.data}`)}this.listener(t)}))}}function ce(e){return!("connectEvent"in e)}class ue{constructor(e){this.storage=e,this.storeKey="ton-connect-storage_bridge-connection"}storeConnection(e){return O(this,void 0,void 0,(function*(){if("injected"===e.type)return this.storage.setItem(this.storeKey,JSON.stringify(e));if(!ce(e)){const t={sessionKeyPair:e.session.sessionCrypto.stringifyKeypair(),walletPublicKey:e.session.walletPublicKey,bridgeUrl:e.session.bridgeUrl},n={type:"http",connectEvent:e.connectEvent,session:t,lastWalletEventId:e.lastWalletEventId,nextRpcRequestId:e.nextRpcRequestId};return this.storage.setItem(this.storeKey,JSON.stringify(n))}const t={type:"http",connectionSource:e.connectionSource,sessionCrypto:e.sessionCrypto.stringifyKeypair()};return this.storage.setItem(this.storeKey,JSON.stringify(t))}))}removeConnection(){return O(this,void 0,void 0,(function*(){return this.storage.removeItem(this.storeKey)}))}getConnection(){return O(this,void 0,void 0,(function*(){const e=yield this.storage.getItem(this.storeKey);if(!e)return null;const t=JSON.parse(e);if("injected"===t.type)return t;if("connectEvent"in t){const e=new M(t.session.sessionKeyPair);return{type:"http",connectEvent:t.connectEvent,lastWalletEventId:t.lastWalletEventId,nextRpcRequestId:t.nextRpcRequestId,session:{sessionCrypto:e,bridgeUrl:t.session.bridgeUrl,walletPublicKey:t.session.walletPublicKey}}}return{type:"http",sessionCrypto:new M(t.sessionCrypto),connectionSource:t.connectionSource}}))}getHttpConnection(){return O(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(!e)throw new N("Trying to read HTTP connection source while nothing is stored");if("injected"===e.type)throw new N("Trying to read HTTP connection source while injected connection is stored");return e}))}getHttpPendingConnection(){return O(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(!e)throw new N("Trying to read HTTP connection source while nothing is stored");if("injected"===e.type)throw new N("Trying to read HTTP connection source while injected connection is stored");if(!ce(e))throw new N("Trying to read HTTP-pending connection while http connection is stored");return e}))}getInjectedConnection(){return O(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(!e)throw new N("Trying to read Injected bridge connection source while nothing is stored");if("http"===(null==e?void 0:e.type))throw new N("Trying to read Injected bridge connection source while HTTP connection is stored");return e}))}storedConnectionType(){return O(this,void 0,void 0,(function*(){const e=yield this.storage.getItem(this.storeKey);if(!e)return null;return JSON.parse(e).type}))}storeLastWalletEventId(e){return O(this,void 0,void 0,(function*(){const t=yield this.getConnection();if(t&&"http"===t.type&&!ce(t))return t.lastWalletEventId=e,this.storeConnection(t)}))}getLastWalletEventId(){return O(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(e&&"lastWalletEventId"in e)return e.lastWalletEventId}))}increaseNextRpcRequestId(){return O(this,void 0,void 0,(function*(){const e=yield this.getConnection();if(e&&"nextRpcRequestId"in e){const t=e.nextRpcRequestId||0;return e.nextRpcRequestId=t+1,this.storeConnection(e)}}))}getNextRpcRequestId(){return O(this,void 0,void 0,(function*(){const e=yield this.getConnection();return e&&"nextRpcRequestId"in e&&e.nextRpcRequestId||0}))}}class de{constructor(e,t){this.storage=e,this.walletConnectionSource=t,this.type="http",this.standardUniversalLink="tc://",this.pendingRequests=new Map,this.session=null,this.gateway=null,this.pendingGateways=[],this.listeners=[],this.defaultOpeningDeadlineMS=12e3,this.defaultRetryTimeoutMS=2e3,this.connectionStorage=new ue(e)}static fromStorage(e){return O(this,void 0,void 0,(function*(){const t=new ue(e),n=yield t.getHttpConnection();return ce(n)?new de(e,n.connectionSource):new de(e,{bridgeUrl:n.session.bridgeUrl})}))}connect(e,t){var n;const r=oe(null==t?void 0:t.signal);null===(n=this.abortController)||void 0===n||n.abort(),this.abortController=r,this.closeGateways();const o=new M;this.session={sessionCrypto:o,bridgeUrl:"bridgeUrl"in this.walletConnectionSource?this.walletConnectionSource.bridgeUrl:""},this.connectionStorage.storeConnection({type:"http",connectionSource:this.walletConnectionSource,sessionCrypto:o}).then((()=>O(this,void 0,void 0,(function*(){r.signal.aborted||(yield ie((e=>{var n;return this.openGateways(o,{openingDeadlineMS:null!==(n=null==t?void 0:t.openingDeadlineMS)&&void 0!==n?n:this.defaultOpeningDeadlineMS,signal:null==e?void 0:e.signal})}),{attempts:Number.MAX_SAFE_INTEGER,delayMs:this.defaultRetryTimeoutMS,signal:r.signal}))}))));const i="universalLink"in this.walletConnectionSource&&this.walletConnectionSource.universalLink?this.walletConnectionSource.universalLink:this.standardUniversalLink;return this.generateUniversalLink(i,e)}restoreConnection(e){var t,n;return O(this,void 0,void 0,(function*(){const r=oe(null==e?void 0:e.signal);if(null===(t=this.abortController)||void 0===t||t.abort(),this.abortController=r,r.signal.aborted)return;this.closeGateways();const o=yield this.connectionStorage.getHttpConnection();if(!o)return;if(r.signal.aborted)return;const i=null!==(n=null==e?void 0:e.openingDeadlineMS)&&void 0!==n?n:this.defaultOpeningDeadlineMS;if(ce(o))return this.session={sessionCrypto:o.sessionCrypto,bridgeUrl:"bridgeUrl"in this.walletConnectionSource?this.walletConnectionSource.bridgeUrl:""},yield this.openGateways(o.sessionCrypto,{openingDeadlineMS:i,signal:null==r?void 0:r.signal});if(Array.isArray(this.walletConnectionSource))throw new N("Internal error. Connection source is array while WalletConnectionSourceHTTP was expected.");if(this.session=o.session,this.gateway&&(se("Gateway is already opened, closing previous gateway"),yield this.gateway.close()),this.gateway=new le(this.storage,this.walletConnectionSource.bridgeUrl,o.session.sessionCrypto.sessionId,this.gatewayListener.bind(this),this.gatewayErrorsListener.bind(this)),!r.signal.aborted){this.listeners.forEach((e=>e(o.connectEvent)));try{yield ie((e=>this.gateway.registerSession({openingDeadlineMS:i,signal:e.signal})),{attempts:Number.MAX_SAFE_INTEGER,delayMs:this.defaultRetryTimeoutMS,signal:r.signal})}catch(s){return void(yield this.disconnect({signal:r.signal}))}}}))}sendRequest(e,t){const n={};return"function"==typeof t?n.onRequestSent=t:(n.onRequestSent=null==t?void 0:t.onRequestSent,n.signal=null==t?void 0:t.signal,n.attempts=null==t?void 0:t.attempts),new Promise(((t,r)=>O(this,void 0,void 0,(function*(){var o;if(!this.gateway||!this.session||!("walletPublicKey"in this.session))throw new N("Trying to send bridge request without session");const i=(yield this.connectionStorage.getNextRpcRequestId()).toString();yield this.connectionStorage.increaseNextRpcRequestId(),se("Send http-bridge request:",Object.assign(Object.assign({},e),{id:i}));const s=this.session.sessionCrypto.encrypt(JSON.stringify(Object.assign(Object.assign({},e),{id:i})),A(this.session.walletPublicKey));try{yield this.gateway.send(s,this.session.walletPublicKey,e.method,{attempts:null==n?void 0:n.attempts,signal:null==n?void 0:n.signal}),null===(o=null==n?void 0:n.onRequestSent)||void 0===o||o.call(n),this.pendingRequests.set(i.toString(),t)}catch(a){r(a)}}))))}closeConnection(){this.closeGateways(),this.listeners=[],this.session=null,this.gateway=null}disconnect(e){return O(this,void 0,void 0,(function*(){return new Promise((t=>O(this,void 0,void 0,(function*(){let n=!1,r=null;const o=()=>{n||(n=!0,this.removeBridgeAndSession().then(t))};try{this.closeGateways();const t=oe(null==e?void 0:e.signal);r=setTimeout((()=>{t.abort()}),this.defaultOpeningDeadlineMS),yield this.sendRequest({method:"disconnect",params:[]},{onRequestSent:o,signal:t.signal,attempts:1})}catch(i){se("Disconnect error:",i),n||this.removeBridgeAndSession().then(t)}finally{r&&clearTimeout(r),o()}}))))}))}listen(e){return this.listeners.push(e),()=>this.listeners=this.listeners.filter((t=>t!==e))}pause(){var e;null===(e=this.gateway)||void 0===e||e.pause(),this.pendingGateways.forEach((e=>e.pause()))}unPause(){return O(this,void 0,void 0,(function*(){const e=this.pendingGateways.map((e=>e.unPause()));this.gateway&&e.push(this.gateway.unPause()),yield Promise.all(e)}))}pendingGatewaysListener(e,t,n){return O(this,void 0,void 0,(function*(){if(this.pendingGateways.includes(e))return this.closeGateways({except:e}),this.gateway&&(se("Gateway is already opened, closing previous gateway"),yield this.gateway.close()),this.session.bridgeUrl=t,this.gateway=e,this.gateway.setErrorsListener(this.gatewayErrorsListener.bind(this)),this.gateway.setListener(this.gatewayListener.bind(this)),this.gatewayListener(n);yield e.close()}))}gatewayListener(e){return O(this,void 0,void 0,(function*(){const t=JSON.parse(this.session.sessionCrypto.decrypt(T.decode(e.message).toUint8Array(),A(e.from)));if(se("Wallet message received:",t),!("event"in t)){const e=t.id.toString(),n=this.pendingRequests.get(e);return n?(n(t),void this.pendingRequests.delete(e)):void se(`Response id ${e} doesn't match any request's id`)}if(void 0!==t.id){const e=yield this.connectionStorage.getLastWalletEventId();if(void 0!==e&&t.id<=e)return void ae(`Received event id (=${t.id}) must be greater than stored last wallet event id (=${e}) `);"connect"!==t.event&&(yield this.connectionStorage.storeLastWalletEventId(t.id))}const n=this.listeners;"connect"===t.event&&(yield this.updateSession(t,e.from)),"disconnect"===t.event&&(se("Removing bridge and session: received disconnect event"),yield this.removeBridgeAndSession()),n.forEach((e=>e(t)))}))}gatewayErrorsListener(e){return O(this,void 0,void 0,(function*(){throw new N(`Bridge error ${JSON.stringify(e)}`)}))}updateSession(e,t){return O(this,void 0,void 0,(function*(){this.session=Object.assign(Object.assign({},this.session),{walletPublicKey:t});const n=e.payload.items.find((e=>"ton_addr"===e.name)),r=Object.assign(Object.assign({},e),{payload:Object.assign(Object.assign({},e.payload),{items:[n]})});yield this.connectionStorage.storeConnection({type:"http",session:this.session,lastWalletEventId:e.id,connectEvent:r,nextRpcRequestId:0})}))}removeBridgeAndSession(){return O(this,void 0,void 0,(function*(){this.closeConnection(),yield this.connectionStorage.removeConnection()}))}generateUniversalLink(e,t){return te(e)?this.generateTGUniversalLink(e,t):this.generateRegularUniversalLink(e,t)}generateRegularUniversalLink(e,t){const n=new URL(e);return n.searchParams.append("v",2..toString()),n.searchParams.append("id",this.session.sessionCrypto.sessionId),n.searchParams.append("r",JSON.stringify(t)),n.toString()}generateTGUniversalLink(e,t){const n="tonconnect-"+ne(this.generateRegularUniversalLink("about:blank",t).split("?")[1]),r=this.convertToDirectLink(e),o=new URL(r);return o.searchParams.append("startapp",n),o.toString()}convertToDirectLink(e){const t=new URL(e);return t.searchParams.has("attach")&&(t.searchParams.delete("attach"),t.pathname+="/start"),t.toString()}openGateways(e,t){return O(this,void 0,void 0,(function*(){return Array.isArray(this.walletConnectionSource)?(this.pendingGateways.map((e=>e.close().catch())),this.pendingGateways=this.walletConnectionSource.map((t=>{const n=new le(this.storage,t.bridgeUrl,e.sessionId,(()=>{}),(()=>{}));return n.setListener((e=>this.pendingGatewaysListener(n,t.bridgeUrl,e))),n})),void(yield Promise.allSettled(this.pendingGateways.map((e=>ie((n=>{var r;return this.pendingGateways.some((t=>t===e))?e.registerSession({openingDeadlineMS:null!==(r=null==t?void 0:t.openingDeadlineMS)&&void 0!==r?r:this.defaultOpeningDeadlineMS,signal:n.signal}):e.close()}),{attempts:Number.MAX_SAFE_INTEGER,delayMs:this.defaultRetryTimeoutMS,signal:null==t?void 0:t.signal})))))):(this.gateway&&(se("Gateway is already opened, closing previous gateway"),yield this.gateway.close()),this.gateway=new le(this.storage,this.walletConnectionSource.bridgeUrl,e.sessionId,this.gatewayListener.bind(this),this.gatewayErrorsListener.bind(this)),yield this.gateway.registerSession({openingDeadlineMS:null==t?void 0:t.openingDeadlineMS,signal:null==t?void 0:t.signal}))}))}closeGateways(e){var t;null===(t=this.gateway)||void 0===t||t.close(),this.pendingGateways.filter((t=>t!==(null==e?void 0:e.except))).forEach((e=>e.close())),this.pendingGateways=[]}}function he(e,t){return fe(e,[t])}function fe(e,t){return!(!e||"object"!=typeof e)&&t.every((t=>t in e))}class ge{constructor(){this.storage={}}static getInstance(){return ge.instance||(ge.instance=new ge),ge.instance}get length(){return Object.keys(this.storage).length}clear(){this.storage={}}getItem(e){var t;return null!==(t=this.storage[e])&&void 0!==t?t:null}key(e){var t;const n=Object.keys(this.storage);return e<0||e>=n.length?null:null!==(t=n[e])&&void 0!==t?t:null}removeItem(e){delete this.storage[e]}setItem(e,t){this.storage[e]=t}}function pe(){if("undefined"!=typeof window)return window}function we(){var e;const t=null===(e=pe())||void 0===e?void 0:e.location.origin;return t?t+"/tonconnect-manifest.json":""}function me(){if(function(){try{return"undefined"!=typeof localStorage}catch(e){return!1}}())return localStorage;if("undefined"!=typeof process&&null!=process.versions&&null!=process.versions.node)throw new N("`localStorage` is unavailable, but it is required for TonConnect. For more details, see https://github.com/ton-connect/sdk/tree/main/packages/sdk#init-connector");return ge.getInstance()}class ve{constructor(e,t){this.injectedWalletKey=t,this.type="injected",this.unsubscribeCallback=null,this.listenSubscriptions=!1,this.listeners=[];const n=ve.window;if(!ve.isWindowContainsWallet(n,t))throw new H;this.connectionStorage=new ue(e),this.injectedWallet=n[t].tonconnect}static fromStorage(e){return O(this,void 0,void 0,(function*(){const t=new ue(e),n=yield t.getInjectedConnection();return new ve(e,n.jsBridgeKey)}))}static isWalletInjected(e){return ve.isWindowContainsWallet(this.window,e)}static isInsideWalletBrowser(e){return!!ve.isWindowContainsWallet(this.window,e)&&this.window[e].tonconnect.isWalletBrowser}static getCurrentlyInjectedWallets(){if(!this.window)return[];return function(){const e=pe();if(!e)return[];try{return Object.keys(e)}catch(t){return[]}}().filter((([e,t])=>function(e){try{return!(!he(e,"tonconnect")||!he(e.tonconnect,"walletInfo"))&&fe(e.tonconnect.walletInfo,["name","app_name","image","about_url","platforms"])}catch(t){return!1}}(t))).map((([e,t])=>({name:t.tonconnect.walletInfo.name,appName:t.tonconnect.walletInfo.app_name,aboutUrl:t.tonconnect.walletInfo.about_url,imageUrl:t.tonconnect.walletInfo.image,tondns:t.tonconnect.walletInfo.tondns,jsBridgeKey:e,injected:!0,embedded:t.tonconnect.isWalletBrowser,platforms:t.tonconnect.walletInfo.platforms})))}static isWindowContainsWallet(e,t){return!!e&&t in e&&"object"==typeof e[t]&&"tonconnect"in e[t]}connect(e){this._connect(2,e)}restoreConnection(){return O(this,void 0,void 0,(function*(){try{se("Injected Provider restoring connection...");const e=yield this.injectedWallet.restoreConnection();se("Injected Provider restoring connection response",e),"connect"===e.event?(this.makeSubscriptions(),this.listeners.forEach((t=>t(e)))):yield this.connectionStorage.removeConnection()}catch(e){yield this.connectionStorage.removeConnection(),console.error(e)}}))}closeConnection(){this.listenSubscriptions&&this.injectedWallet.disconnect(),this.closeAllListeners()}disconnect(){return O(this,void 0,void 0,(function*(){return new Promise((e=>{const t=()=>{this.closeAllListeners(),this.connectionStorage.removeConnection().then(e)};try{this.injectedWallet.disconnect(),t()}catch(n){se(n),this.sendRequest({method:"disconnect",params:[]},t)}}))}))}closeAllListeners(){var e;this.listenSubscriptions=!1,this.listeners=[],null===(e=this.unsubscribeCallback)||void 0===e||e.call(this)}listen(e){return this.listeners.push(e),()=>this.listeners=this.listeners.filter((t=>t!==e))}sendRequest(e,t){var n;return O(this,void 0,void 0,(function*(){const r={};"function"==typeof t?r.onRequestSent=t:(r.onRequestSent=null==t?void 0:t.onRequestSent,r.signal=null==t?void 0:t.signal);const o=(yield this.connectionStorage.getNextRpcRequestId()).toString();yield this.connectionStorage.increaseNextRpcRequestId(),se("Send injected-bridge request:",Object.assign(Object.assign({},e),{id:o}));const i=this.injectedWallet.send(Object.assign(Object.assign({},e),{id:o}));return i.then((e=>se("Wallet message received:",e))),null===(n=null==r?void 0:r.onRequestSent)||void 0===n||n.call(r),i}))}_connect(e,t){return O(this,void 0,void 0,(function*(){try{se(`Injected Provider connect request: protocolVersion: ${e}, message:`,t);const n=yield this.injectedWallet.connect(e,t);se("Injected Provider connect response:",n),"connect"===n.event&&(yield this.updateSession(),this.makeSubscriptions()),this.listeners.forEach((e=>e(n)))}catch(n){se("Injected Provider connect error:",n);const e={event:"connect_error",payload:{code:0,message:null==n?void 0:n.toString()}};this.listeners.forEach((t=>t(e)))}}))}makeSubscriptions(){this.listenSubscriptions=!0,this.unsubscribeCallback=this.injectedWallet.listen((e=>{se("Wallet message received:",e),this.listenSubscriptions&&this.listeners.forEach((t=>t(e))),"disconnect"===e.event&&this.disconnect()}))}updateSession(){return this.connectionStorage.storeConnection({type:"injected",jsBridgeKey:this.injectedWalletKey,nextRpcRequestId:0})}}ve.window=pe();class ye{constructor(){this.localStorage=me()}getItem(e){return O(this,void 0,void 0,(function*(){return this.localStorage.getItem(e)}))}removeItem(e){return O(this,void 0,void 0,(function*(){this.localStorage.removeItem(e)}))}setItem(e,t){return O(this,void 0,void 0,(function*(){this.localStorage.setItem(e,t)}))}}function be(e){return xe(e)&&e.injected}function Ce(e){return be(e)&&e.embedded}function xe(e){return"jsBridgeKey"in e}function _e(e){return"bridgeUrl"in e}const ke=[{app_name:"telegram-wallet",name:"Wallet",image:"https://wallet.tg/images/logo-288.png",about_url:"https://wallet.tg/",universal_url:"https://t.me/wallet?attach=wallet",bridge:[{type:"sse",url:"https://bridge.tonapi.io/bridge"}],platforms:["ios","android","macos","windows","linux"]},{app_name:"tonkeeper",name:"Tonkeeper",image:"https://tonkeeper.com/assets/tonconnect-icon.png",tondns:"tonkeeper.ton",about_url:"https://tonkeeper.com",universal_url:"https://app.tonkeeper.com/ton-connect",deepLink:"tonkeeper-tc://",bridge:[{type:"sse",url:"https://bridge.tonapi.io/bridge"},{type:"js",key:"tonkeeper"}],platforms:["ios","android","chrome","firefox","macos"]},{app_name:"mytonwallet",name:"MyTonWallet",image:"https://mytonwallet.io/icon-256.png",about_url:"https://mytonwallet.io",universal_url:"https://connect.mytonwallet.org",bridge:[{type:"js",key:"mytonwallet"},{type:"sse",url:"https://tonconnectbridge.mytonwallet.org/bridge/"}],platforms:["chrome","windows","macos","linux","ios","android","firefox"]},{app_name:"openmask",name:"OpenMask",image:"https://raw.githubusercontent.com/OpenProduct/openmask-extension/main/public/openmask-logo-288.png",about_url:"https://www.openmask.app/",bridge:[{type:"js",key:"openmask"}],platforms:["chrome"]},{app_name:"tonhub",name:"Tonhub",image:"https://tonhub.com/tonconnect_logo.png",about_url:"https://tonhub.com",universal_url:"https://tonhub.com/ton-connect",bridge:[{type:"js",key:"tonhub"},{type:"sse",url:"https://connect.tonhubapi.com/tonconnect"}],platforms:["ios","android"]},{app_name:"dewallet",name:"DeWallet",image:"https://app.delabwallet.com/logo_black.png",about_url:"https://delabwallet.com",bridge:[{type:"js",key:"dewallet"}],platforms:["chrome"]},{app_name:"xtonwallet",name:"XTONWallet",image:"https://xtonwallet.com/assets/img/icon-256-back.png",about_url:"https://xtonwallet.com",bridge:[{type:"js",key:"xtonwallet"}],platforms:["chrome","firefox"]},{app_name:"tonwallet",name:"TON Wallet",image:"https://wallet.ton.org/assets/ui/qr-logo.png",about_url:"https://chrome.google.com/webstore/detail/ton-wallet/nphplpgoakhhjchkkhmiggakijnkhfnd",bridge:[{type:"js",key:"tonwallet"}],platforms:["chrome"]}];class Se{constructor(e){this.walletsListCache=null,this.walletsListCacheCreationTimestamp=null,this.walletsListSource="https://raw.githubusercontent.com/ton-blockchain/wallets-list/main/wallets-v2.json",(null==e?void 0:e.walletsListSource)&&(this.walletsListSource=e.walletsListSource),(null==e?void 0:e.cacheTTLMs)&&(this.cacheTTLMs=e.cacheTTLMs)}getWallets(){return O(this,void 0,void 0,(function*(){return this.cacheTTLMs&&this.walletsListCacheCreationTimestamp&&Date.now()>this.walletsListCacheCreationTimestamp+this.cacheTTLMs&&(this.walletsListCache=null),this.walletsListCache||(this.walletsListCache=this.fetchWalletsList(),this.walletsListCache.then((()=>{this.walletsListCacheCreationTimestamp=Date.now()})).catch((()=>{this.walletsListCache=null,this.walletsListCacheCreationTimestamp=null}))),this.walletsListCache}))}getEmbeddedWallet(){return O(this,void 0,void 0,(function*(){const e=(yield this.getWallets()).filter(Ce);return 1!==e.length?null:e[0]}))}fetchWalletsList(){return O(this,void 0,void 0,(function*(){let e=[];try{const t=yield fetch(this.walletsListSource);if(e=yield t.json(),!Array.isArray(e))throw new K("Wrong wallets list format, wallets list must be an array.");const n=e.filter((e=>!this.isCorrectWalletConfigDTO(e)));n.length&&(ae(`Wallet(s) ${n.map((e=>e.name)).join(", ")} config format is wrong. They were removed from the wallets list.`),e=e.filter((e=>this.isCorrectWalletConfigDTO(e))))}catch(n){ae(n),e=ke}let t=[];try{t=ve.getCurrentlyInjectedWallets()}catch(n){ae(n)}return this.mergeWalletsLists(this.walletConfigDTOListToWalletConfigList(e),t)}))}walletConfigDTOListToWalletConfigList(e){return e.map((e=>{const t={name:e.name,appName:e.app_name,imageUrl:e.image,aboutUrl:e.about_url,tondns:e.tondns,platforms:e.platforms};return e.bridge.forEach((n=>{if("sse"===n.type&&(t.bridgeUrl=n.url,t.universalLink=e.universal_url,t.deepLink=e.deepLink),"js"===n.type){const e=n.key;t.jsBridgeKey=e,t.injected=ve.isWalletInjected(e),t.embedded=ve.isInsideWalletBrowser(e)}})),t}))}mergeWalletsLists(e,t){return[...new Set(e.concat(t).map((e=>e.name))).values()].map((n=>{const r=e.find((e=>e.name===n)),o=t.find((e=>e.name===n));return Object.assign(Object.assign({},r&&Object.assign({},r)),o&&Object.assign({},o))}))}isCorrectWalletConfigDTO(e){if(!e||"object"!=typeof e)return!1;if(!("name"in e&&"image"in e&&"about_url"in e&&"platforms"in e&&"app_name"in e))return!1;if(!e.platforms||!Array.isArray(e.platforms)||!e.platforms.length)return!1;if(!("bridge"in e)||!Array.isArray(e.bridge)||!e.bridge.length)return!1;const t=e.bridge;if(t.some((e=>!e||"object"!=typeof e||!("type"in e))))return!1;const n=t.find((e=>"sse"===e.type));if(n&&(!("url"in n)||!n.url||!e.universal_url))return!1;const r=t.find((e=>"js"===e.type));return!!(!r||"key"in r&&r.key)}}class Ee extends N{get info(){return"Wallet doesn't support requested feature method."}constructor(...e){super(...e),Object.setPrototypeOf(this,Ee.prototype)}}function Re(e,t){const n=e.includes("SendTransaction"),r=e.find((e=>e&&"object"==typeof e&&"SendTransaction"===e.name));if(!n&&!r)throw new Ee("Wallet doesn't support SendTransaction feature.");if(r&&void 0!==r.maxMessages){if(r.maxMessages<t.requiredMessagesNumber)throw new Ee(`Wallet is not able to handle such SendTransaction request. Max support messages number is ${r.maxMessages}, but ${t.requiredMessagesNumber} is required.`)}else!function(...e){try{console.warn("[TON_CONNECT_SDK]",...e)}catch(t){}}("Connected wallet didn't provide information about max allowed messages in the SendTransaction request. Request may be rejected by the wallet.")}function Te(){return{type:"request-version"}}function Le(e){return{type:"response-version",version:e}}function Ae(e){return{ton_connect_sdk_lib:e.ton_connect_sdk_lib,ton_connect_ui_lib:e.ton_connect_ui_lib}}function Me(e,t){var n,r,o,i,s,a,l,c;const u=(null===(n=null==t?void 0:t.connectItems)||void 0===n?void 0:n.tonProof)&&"proof"in t.connectItems.tonProof?"ton_proof":"ton_addr";return{wallet_address:null!==(o=null===(r=null==t?void 0:t.account)||void 0===r?void 0:r.address)&&void 0!==o?o:null,wallet_type:null!==(i=null==t?void 0:t.device.appName)&&void 0!==i?i:null,wallet_version:null!==(s=null==t?void 0:t.device.appVersion)&&void 0!==s?s:null,auth_type:u,custom_data:Object.assign({chain_id:null!==(l=null===(a=null==t?void 0:t.account)||void 0===a?void 0:a.chain)&&void 0!==l?l:null,provider:null!==(c=null==t?void 0:t.provider)&&void 0!==c?c:null},Ae(e))}}function Oe(e){return{type:"connection-started",custom_data:Ae(e)}}function Ne(e,t){return Object.assign({type:"connection-completed",is_success:!0},Me(e,t))}function $e(e,t,n){return{type:"connection-error",is_success:!1,error_message:t,error_code:null!=n?n:null,custom_data:Ae(e)}}function Pe(e){return{type:"connection-restoring-started",custom_data:Ae(e)}}function Ie(e,t){return Object.assign({type:"connection-restoring-completed",is_success:!0},Me(e,t))}function Ue(e,t){return{type:"connection-restoring-error",is_success:!1,error_message:t,custom_data:Ae(e)}}function We(e,t){var n,r,o,i;return{valid_until:null!==(n=String(t.validUntil))&&void 0!==n?n:null,from:null!==(i=null!==(r=t.from)&&void 0!==r?r:null===(o=null==e?void 0:e.account)||void 0===o?void 0:o.address)&&void 0!==i?i:null,messages:t.messages.map((e=>{var t,n;return{address:null!==(t=e.address)&&void 0!==t?t:null,amount:null!==(n=e.amount)&&void 0!==n?n:null}}))}}function je(e,t,n){return Object.assign(Object.assign({type:"transaction-sent-for-signature"},Me(e,t)),We(t,n))}function Be(e,t,n,r){return Object.assign(Object.assign({type:"transaction-signed",is_success:!0,signed_transaction:r.boc},Me(e,t)),We(t,n))}function De(e,t,n,r,o){return Object.assign(Object.assign({type:"transaction-signing-failed",is_success:!1,error_message:r,error_code:null!=o?o:null},Me(e,t)),We(t,n))}function He(e,t,n){return Object.assign({type:"disconnection",scope:n},Me(e,t))}class Ve{constructor(){this.window=pe()}dispatchEvent(e,t){var n;return O(this,void 0,void 0,(function*(){const r=new CustomEvent(e,{detail:t});null===(n=this.window)||void 0===n||n.dispatchEvent(r)}))}addEventListener(e,t,n){var r;return O(this,void 0,void 0,(function*(){return null===(r=this.window)||void 0===r||r.addEventListener(e,t,n),()=>{var n;return null===(n=this.window)||void 0===n?void 0:n.removeEventListener(e,t)}}))}}class Ke{constructor(e){var t;this.eventPrefix="ton-connect-",this.tonConnectUiVersion=null,this.eventDispatcher=null!==(t=null==e?void 0:e.eventDispatcher)&&void 0!==t?t:new Ve,this.tonConnectSdkVersion=e.tonConnectSdkVersion,this.init().catch()}get version(){return Ae({ton_connect_sdk_lib:this.tonConnectSdkVersion,ton_connect_ui_lib:this.tonConnectUiVersion})}init(){return O(this,void 0,void 0,(function*(){try{yield this.setRequestVersionHandler(),this.tonConnectUiVersion=yield this.requestTonConnectUiVersion()}catch(e){}}))}setRequestVersionHandler(){return O(this,void 0,void 0,(function*(){yield this.eventDispatcher.addEventListener("ton-connect-request-version",(()=>O(this,void 0,void 0,(function*(){yield this.eventDispatcher.dispatchEvent("ton-connect-response-version",Le(this.tonConnectSdkVersion))}))))}))}requestTonConnectUiVersion(){return O(this,void 0,void 0,(function*(){return new Promise(((e,t)=>O(this,void 0,void 0,(function*(){try{yield this.eventDispatcher.addEventListener("ton-connect-ui-response-version",(t=>{e(t.detail.version)}),{once:!0}),yield this.eventDispatcher.dispatchEvent("ton-connect-ui-request-version",{type:"request-version"})}catch(n){t(n)}}))))}))}dispatchUserActionEvent(e){try{this.eventDispatcher.dispatchEvent(`${this.eventPrefix}${e.type}`,e).catch()}catch(t){}}trackConnectionStarted(...e){try{const t=Oe(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackConnectionCompleted(...e){try{const t=Ne(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackConnectionError(...e){try{const t=$e(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackConnectionRestoringStarted(...e){try{const t=Pe(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackConnectionRestoringCompleted(...e){try{const t=Ie(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackConnectionRestoringError(...e){try{const t=Ue(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackDisconnection(...e){try{const t=He(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackTransactionSentForSignature(...e){try{const t=je(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackTransactionSigned(...e){try{const t=Be(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}trackTransactionSigningFailed(...e){try{const t=De(this.version,...e);this.dispatchUserActionEvent(t)}catch(t){}}}class Fe{constructor(e){if(this.walletsList=new Se,this._wallet=null,this.provider=null,this.statusChangeSubscriptions=[],this.statusChangeErrorSubscriptions=[],this.dappSettings={manifestUrl:(null==e?void 0:e.manifestUrl)||we(),storage:(null==e?void 0:e.storage)||new ye},this.walletsList=new Se({walletsListSource:null==e?void 0:e.walletsListSource,cacheTTLMs:null==e?void 0:e.walletsListCacheTTLMs}),this.tracker=new Ke({eventDispatcher:null==e?void 0:e.eventDispatcher,tonConnectSdkVersion:"3.0.4"}),!this.dappSettings.manifestUrl)throw new $("Dapp tonconnect-manifest.json must be specified if window.location.origin is undefined. See more https://github.com/ton-connect/docs/blob/main/requests-responses.md#app-manifest");this.bridgeConnectionStorage=new ue(this.dappSettings.storage),(null==e?void 0:e.disableAutoPauseConnection)||this.addWindowFocusAndBlurSubscriptions()}static getWallets(){return this.walletsList.getWallets()}get connected(){return null!==this._wallet}get account(){var e;return(null===(e=this._wallet)||void 0===e?void 0:e.account)||null}get wallet(){return this._wallet}set wallet(e){this._wallet=e,this.statusChangeSubscriptions.forEach((e=>e(this._wallet)))}getWallets(){return this.walletsList.getWallets()}onStatusChange(e,t){return this.statusChangeSubscriptions.push(e),t&&this.statusChangeErrorSubscriptions.push(t),()=>{this.statusChangeSubscriptions=this.statusChangeSubscriptions.filter((t=>t!==e)),t&&(this.statusChangeErrorSubscriptions=this.statusChangeErrorSubscriptions.filter((e=>e!==t)))}}connect(e,t){var n,r;const o={};if("object"==typeof t&&"tonProof"in t&&(o.request=t),"object"==typeof t&&("openingDeadlineMS"in t||"signal"in t||"request"in t)&&(o.request=null==t?void 0:t.request,o.openingDeadlineMS=null==t?void 0:t.openingDeadlineMS,o.signal=null==t?void 0:t.signal),this.connected)throw new U;const i=oe(null==o?void 0:o.signal);if(null===(n=this.abortController)||void 0===n||n.abort(),this.abortController=i,i.signal.aborted)throw new N("Connection was aborted");return null===(r=this.provider)||void 0===r||r.closeConnection(),this.provider=this.createProvider(e),i.signal.addEventListener("abort",(()=>{var e;null===(e=this.provider)||void 0===e||e.closeConnection(),this.provider=null})),this.tracker.trackConnectionStarted(),this.provider.connect(this.createConnectRequest(null==o?void 0:o.request),{openingDeadlineMS:null==o?void 0:o.openingDeadlineMS,signal:i.signal})}restoreConnection(e){var t,n;return O(this,void 0,void 0,(function*(){this.tracker.trackConnectionRestoringStarted();const r=oe(null==e?void 0:e.signal);if(null===(t=this.abortController)||void 0===t||t.abort(),this.abortController=r,r.signal.aborted)return void this.tracker.trackConnectionRestoringError("Connection restoring was aborted");const[o,i]=yield Promise.all([this.bridgeConnectionStorage.storedConnectionType(),this.walletsList.getEmbeddedWallet()]);if(r.signal.aborted)return void this.tracker.trackConnectionRestoringError("Connection restoring was aborted");let s=null;try{switch(o){case"http":s=yield de.fromStorage(this.dappSettings.storage);break;case"injected":s=yield ve.fromStorage(this.dappSettings.storage);break;default:if(!i)return;s=this.createProvider(i)}}catch(u){return this.tracker.trackConnectionRestoringError("Provider is not restored"),yield this.bridgeConnectionStorage.removeConnection(),null==s||s.closeConnection(),void(s=null)}if(r.signal.aborted)return null==s||s.closeConnection(),void this.tracker.trackConnectionRestoringError("Connection restoring was aborted");if(!s)return ae("Provider is not restored"),void this.tracker.trackConnectionRestoringError("Provider is not restored");null===(n=this.provider)||void 0===n||n.closeConnection(),this.provider=s,s.listen(this.walletEventsListener.bind(this));const a=()=>{this.tracker.trackConnectionRestoringError("Connection restoring was aborted"),null==s||s.closeConnection(),s=null};r.signal.addEventListener("abort",a);const l=ie((t=>O(this,void 0,void 0,(function*(){yield null==s?void 0:s.restoreConnection({openingDeadlineMS:null==e?void 0:e.openingDeadlineMS,signal:t.signal}),r.signal.removeEventListener("abort",a),this.connected?this.tracker.trackConnectionRestoringCompleted(this.wallet):this.tracker.trackConnectionRestoringError("Connection restoring failed")}))),{attempts:Number.MAX_SAFE_INTEGER,delayMs:2e3,signal:null==e?void 0:e.signal}),c=new Promise((e=>setTimeout((()=>e()),12e3)));return Promise.race([l,c])}))}sendTransaction(e,t){return O(this,void 0,void 0,(function*(){const n={};"function"==typeof t?n.onRequestSent=t:(n.onRequestSent=null==t?void 0:t.onRequestSent,n.signal=null==t?void 0:t.signal);const r=oe(null==n?void 0:n.signal);if(r.signal.aborted)throw new N("Transaction sending was aborted");this.checkConnection(),Re(this.wallet.device.features,{requiredMessagesNumber:e.messages.length}),this.tracker.trackTransactionSentForSignature(this.wallet,e);const{validUntil:o}=e,i=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(e);o<r.length;o++)t.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(n[r[o]]=e[r[o]])}return n}(e,["validUntil"]),s=e.from||this.account.address,a=e.network||this.account.chain,l=yield this.provider.sendRequest(J.convertToRpcRequest(Object.assign(Object.assign({},i),{valid_until:o,from:s,network:a})),{onRequestSent:n.onRequestSent,signal:r.signal});if(J.isError(l))return this.tracker.trackTransactionSigningFailed(this.wallet,e,l.error.message,l.error.code),J.parseAndThrowError(l);const c=J.convertFromRpcResponse(l);return this.tracker.trackTransactionSigned(this.wallet,e,c),c}))}disconnect(e){var t;return O(this,void 0,void 0,(function*(){if(!this.connected)throw new W;const n=oe(null==e?void 0:e.signal),r=this.abortController;if(this.abortController=n,n.signal.aborted)throw new N("Disconnect was aborted");this.onWalletDisconnected("dapp"),yield null===(t=this.provider)||void 0===t?void 0:t.disconnect({signal:n.signal}),null==r||r.abort()}))}pauseConnection(){var e;"http"===(null===(e=this.provider)||void 0===e?void 0:e.type)&&this.provider.pause()}unPauseConnection(){var e;return"http"!==(null===(e=this.provider)||void 0===e?void 0:e.type)?Promise.resolve():this.provider.unPause()}addWindowFocusAndBlurSubscriptions(){const e=function(){if("undefined"!=typeof document)return document}();if(e)try{e.addEventListener("visibilitychange",(()=>{e.hidden?this.pauseConnection():this.unPauseConnection().catch()}))}catch(t){ae("Cannot subscribe to the document.visibilitychange: ",t)}}createProvider(e){let t;return t=!Array.isArray(e)&&"jsBridgeKey"in e?new ve(this.dappSettings.storage,e.jsBridgeKey):new de(this.dappSettings.storage,e),t.listen(this.walletEventsListener.bind(this)),t}walletEventsListener(e){switch(e.event){case"connect":this.onWalletConnected(e.payload);break;case"connect_error":this.onWalletConnectError(e.payload);break;case"disconnect":this.onWalletDisconnected("wallet")}}onWalletConnected(e){const t=e.items.find((e=>"ton_addr"===e.name)),n=e.items.find((e=>"ton_proof"===e.name));if(!t)throw new N("ton_addr connection item was not found");const r={device:e.device,provider:this.provider.type,account:{address:t.address,chain:t.network,walletStateInit:t.walletStateInit,publicKey:t.publicKey}};n&&(r.connectItems={tonProof:n}),this.wallet=r,this.tracker.trackConnectionCompleted(r)}onWalletConnectError(e){const t=G.parseError(e);if(this.statusChangeErrorSubscriptions.forEach((e=>e(t))),se(t),this.tracker.trackConnectionError(e.message,e.code),t instanceof I||t instanceof P)throw ae(t),t}onWalletDisconnected(e){this.tracker.trackDisconnection(this.wallet,e),this.wallet=null}checkConnection(){if(!this.connected)throw new W}createConnectRequest(e){const t=[{name:"ton_addr"}];return(null==e?void 0:e.tonProof)&&t.push({name:"ton_proof",payload:e.tonProof}),{manifestUrl:this.dappSettings.manifestUrl,items:t}}}Fe.walletsList=new Se,Fe.isWalletInjected=e=>ve.isWalletInjected(e),Fe.isInsideWalletBrowser=e=>ve.isInsideWalletBrowser(e);const qe=81,ze=128;function Ze(e,t=!1){const{wc:n,hex:r}=function(e){if(!e.includes(":"))throw new F(`Wrong address ${e}. Address must include ":".`);const t=e.split(":");if(2!==t.length)throw new F(`Wrong address ${e}. Address must include ":" only once.`);const n=parseInt(t[0]);if(0!==n&&-1!==n)throw new F(`Wrong address ${e}. WC must be eq 0 or -1, but ${n} received.`);const r=t[1];if(64!==(null==r?void 0:r.length))throw new F(`Wrong address ${e}. Hex part must be 64bytes length, but ${null==r?void 0:r.length} received.`);return{wc:n,hex:Ye(r)}}(e);let o=qe;t&&(o|=ze);const i=new Int8Array(34);i[0]=o,i[1]=n,i.set(r,2);const s=new Uint8Array(36);return s.set(i),s.set(function(e){const t=4129;let n=0;const r=new Uint8Array(e.length+2);r.set(e);for(let o of r){let e=128;for(;e>0;)n<<=1,o&e&&(n+=1),e>>=1,n>65535&&(n&=65535,n^=t)}return new Uint8Array([Math.floor(n/256),n%256])}(i),34),T.encode(s).replace(/\+/g,"-").replace(/\//g,"_")}const Ge={};for(let Ju=0;Ju<=255;Ju++){let e=Ju.toString(16);e.length<2&&(e="0"+e),Ge[e]=Ju}function Ye(e){const t=(e=e.toLowerCase()).length;if(t%2!=0)throw new q("Hex string must have length a multiple of 2: "+e);const n=t/2,r=new Uint8Array(n);for(let o=0;o<n;o++){const t=2*o,n=e.substring(t,t+2);if(!Ge.hasOwnProperty(n))throw new q("Invalid hex character: "+n);r[o]=Ge[n]}return r}const Qe={};const Je=Symbol("solid-proxy"),Xe=Symbol("solid-track"),et={equals:(e,t)=>e===t};let tt=$t;const nt=1,rt=2,ot={owned:null,cleanups:null,context:null,owner:null},it={};var st=null;let at,lt=null,ct=null,ut=null,dt=null,ht=0;function ft(e,t){const n=ct,r=st,o=0===e.length,i=o?ot:{owned:null,cleanups:null,context:null,owner:void 0===t?r:t},s=o?e:()=>e((()=>Ct((()=>Wt(i)))));st=i,ct=null;try{return Nt(s,!0)}finally{ct=n,st=r}}function gt(e,t){const n={value:e,observers:null,observerSlots:null,comparator:(t=t?Object.assign({},et,t):et).equals||void 0};return[Tt.bind(n),e=>("function"==typeof e&&(e=e(n.value)),Lt(n,e))]}function pt(e,t,n){At(Mt(e,t,!0,nt))}function wt(e,t,n){At(Mt(e,t,!1,nt))}function mt(e,t,n){tt=Pt;const r=Mt(e,t,!1,nt);r.user=!0,dt?dt.push(r):At(r)}function vt(e,t,n){n=n?Object.assign({},et,n):et;const r=Mt(e,t,!0,0);return r.observers=null,r.observerSlots=null,r.comparator=n.equals||void 0,At(r),Tt.bind(r)}function yt(e,t,n){let r,o,i;2===arguments.length&&"object"==typeof t||1===arguments.length?(r=!0,o=e,i=t||{}):(r=e,o=t,i=n||{});let s=null,a=it,l=null,c=!1,u="initialValue"in i,d="function"==typeof r&&vt(r);const h=new Set,[f,g]=(i.storage||gt)(i.initialValue),[p,w]=gt(void 0),[m,v]=gt(void 0,{equals:!1}),[y,b]=gt(u?"ready":"unresolved");if(Qe.context){let e;l=`${Qe.context.id}${Qe.context.count++}`,"initial"===i.ssrLoadFrom?a=i.initialValue:Qe.load&&(e=Qe.load(l))&&(a=e[0])}function C(e,t,n,r){return s===e&&(s=null,u=!0,e!==a&&t!==a||!i.onHydrated||queueMicrotask((()=>i.onHydrated(r,{value:t}))),a=it,function(e,t){Nt((()=>{void 0===t&&g((()=>e)),b(void 0!==t?"errored":"ready"),w(t);for(const e of h.keys())e.decrement();h.clear()}),!1)}(t,n)),t}function x(){const e=at,t=f(),n=p();if(void 0!==n&&!s)throw n;return ct&&!ct.user&&e&&pt((()=>{m(),s&&(e.resolved||h.has(e)||(e.increment(),h.add(e)))})),t}function _(e=!0){if(!1!==e&&c)return;c=!1;const t=d?d():r;if(null==t||!1===t)return void C(s,Ct(f));const n=a!==it?a:Ct((()=>o(t,{value:f(),refetching:e})));return"object"==typeof n&&n&&"then"in n?(s=n,c=!0,queueMicrotask((()=>c=!1)),Nt((()=>{b(u?"refreshing":"pending"),v()}),!1),n.then((e=>C(n,e,void 0,t)),(e=>C(n,void 0,jt(e),t)))):(C(s,n,void 0,t),n)}return Object.defineProperties(x,{state:{get:()=>y()},error:{get:()=>p()},loading:{get(){const e=y();return"pending"===e||"refreshing"===e}},latest:{get(){if(!u)return x();const e=p();if(e&&!s)throw e;return f()}}}),d?pt((()=>_(!1))):_(!1),[x,{refetch:_,mutate:g}]}function bt(e){return Nt(e,!1)}function Ct(e){if(null===ct)return e();const t=ct;ct=null;try{return e()}finally{ct=t}}function xt(e){mt((()=>Ct(e)))}function _t(e){return null===st||(null===st.cleanups?st.cleanups=[e]:st.cleanups.push(e)),e}function kt(){return ct}function St(e,t){const n=Symbol("context");return{id:n,Provider:Vt(n),defaultValue:e}}function Et(e){let t;return void 0!==(t=Dt(st,e.id))?t:e.defaultValue}function Rt(e){const t=vt(e),n=vt((()=>Ht(t())));return n.toArray=()=>{const e=n();return Array.isArray(e)?e:null!=e?[e]:[]},n}function Tt(){const e=lt;if(this.sources&&(this.state||e))if(this.state===nt||e)At(this);else{const e=ut;ut=null,Nt((()=>It(this)),!1),ut=e}if(ct){const e=this.observers?this.observers.length:0;ct.sources?(ct.sources.push(this),ct.sourceSlots.push(e)):(ct.sources=[this],ct.sourceSlots=[e]),this.observers?(this.observers.push(ct),this.observerSlots.push(ct.sources.length-1)):(this.observers=[ct],this.observerSlots=[ct.sources.length-1])}return this.value}function Lt(e,t,n){let r=e.value;return e.comparator&&e.comparator(r,t)||(e.value=t,e.observers&&e.observers.length&&Nt((()=>{for(let t=0;t<e.observers.length;t+=1){const n=e.observers[t],r=lt&&lt.running;r&&lt.disposed.has(n),(r&&!n.tState||!r&&!n.state)&&(n.pure?ut.push(n):dt.push(n),n.observers&&Ut(n)),r||(n.state=nt)}if(ut.length>1e6)throw ut=[],new Error}),!1)),t}function At(e){if(!e.fn)return;Wt(e);const t=st,n=ct,r=ht;ct=st=e,function(e,t,n){let r;try{r=e.fn(t)}catch(o){e.pure&&(e.state=nt,e.owned&&e.owned.forEach(Wt),e.owned=null),Bt(o)}(!e.updatedAt||e.updatedAt<=n)&&(null!=e.updatedAt&&"observers"in e?Lt(e,r):e.value=r,e.updatedAt=n)}(e,e.value,r),ct=n,st=t}function Mt(e,t,n,r=nt,o){const i={fn:e,state:r,updatedAt:null,owned:null,sources:null,sourceSlots:null,cleanups:null,value:t,owner:st,context:null,pure:n};return null===st||st!==ot&&(st.owned?st.owned.push(i):st.owned=[i]),i}function Ot(e){const t=lt;if(0===e.state||t)return;if(e.state===rt||t)return It(e);if(e.suspense&&Ct(e.suspense.inFallback))return e.suspense.effects.push(e);const n=[e];for(;(e=e.owner)&&(!e.updatedAt||e.updatedAt<ht);)(e.state||t)&&n.push(e);for(let r=n.length-1;r>=0;r--)if((e=n[r]).state===nt||t)At(e);else if(e.state===rt||t){const t=ut;ut=null,Nt((()=>It(e,n[0])),!1),ut=t}}function Nt(e,t){if(ut)return e();let n=!1;t||(ut=[]),dt?n=!0:dt=[],ht++;try{const t=e();return function(e){ut&&($t(ut),ut=null);if(e)return;const t=dt;dt=null,t.length&&Nt((()=>tt(t)),!1)}(n),t}catch(r){n||(dt=null),ut=null,Bt(r)}}function $t(e){for(let t=0;t<e.length;t++)Ot(e[t])}function Pt(e){let t,n=0;for(t=0;t<e.length;t++){const r=e[t];r.user?e[n++]=r:Ot(r)}var r;for(Qe.context&&(Qe.context=r),t=0;t<n;t++)Ot(e[t])}function It(e,t){const n=lt;e.state=0;for(let r=0;r<e.sources.length;r+=1){const o=e.sources[r];o.sources&&(o.state===nt||n?o!==t&&Ot(o):(o.state===rt||n)&&It(o,t))}}function Ut(e){const t=lt;for(let n=0;n<e.observers.length;n+=1){const r=e.observers[n];r.state&&!t||(r.state=rt,r.pure?ut.push(r):dt.push(r),r.observers&&Ut(r))}}function Wt(e){let t;if(e.sources)for(;e.sources.length;){const t=e.sources.pop(),n=e.sourceSlots.pop(),r=t.observers;if(r&&r.length){const e=r.pop(),o=t.observerSlots.pop();n<r.length&&(e.sourceSlots[o]=n,r[n]=e,t.observerSlots[n]=o)}}if(e.owned){for(t=0;t<e.owned.length;t++)Wt(e.owned[t]);e.owned=null}if(e.cleanups){for(t=0;t<e.cleanups.length;t++)e.cleanups[t]();e.cleanups=null}e.state=0,e.context=null}function jt(e){return e instanceof Error||"string"==typeof e?e:new Error("Unknown error")}function Bt(e){throw e=jt(e)}function Dt(e,t){return e?e.context&&void 0!==e.context[t]?e.context[t]:Dt(e.owner,t):void 0}function Ht(e){if("function"==typeof e&&!e.length)return Ht(e());if(Array.isArray(e)){const t=[];for(let n=0;n<e.length;n++){const r=Ht(e[n]);Array.isArray(r)?t.push.apply(t,r):t.push(r)}return t}return e}function Vt(e,t){return function(t){let n;return wt((()=>n=Ct((()=>(st.context={[e]:t.value},Rt((()=>t.children)))))),void 0),n}}const Kt=Symbol("fallback");function Ft(e){for(let t=0;t<e.length;t++)e[t]()}function qt(e,t){return Ct((()=>e(t||{})))}function zt(){return!0}const Zt={get:(e,t,n)=>t===Je?n:e.get(t),has:(e,t)=>t===Je||e.has(t),set:zt,deleteProperty:zt,getOwnPropertyDescriptor:(e,t)=>({configurable:!0,enumerable:!0,get:()=>e.get(t),set:zt,deleteProperty:zt}),ownKeys:e=>e.keys()};function Gt(e){return(e="function"==typeof e?e():e)?e:{}}function Yt(...e){let t=!1;for(let r=0;r<e.length;r++){const n=e[r];t=t||!!n&&Je in n,e[r]="function"==typeof n?(t=!0,vt(n)):n}if(t)return new Proxy({get(t){for(let n=e.length-1;n>=0;n--){const r=Gt(e[n])[t];if(void 0!==r)return r}},has(t){for(let n=e.length-1;n>=0;n--)if(t in Gt(e[n]))return!0;return!1},keys(){const t=[];for(let n=0;n<e.length;n++)t.push(...Object.keys(Gt(e[n])));return[...new Set(t)]}},Zt);const n={};for(let r=e.length-1;r>=0;r--)if(e[r]){const t=Object.getOwnPropertyDescriptors(e[r]);for(const r in t)r in n||Object.defineProperty(n,r,{enumerable:!0,get(){for(let t=e.length-1;t>=0;t--){const n=(e[t]||{})[r];if(void 0!==n)return n}}})}return n}function Qt(e,...t){const n=new Set(t.flat());if(Je in e){const r=t.map((t=>new Proxy({get:n=>t.includes(n)?e[n]:void 0,has:n=>t.includes(n)&&n in e,keys:()=>t.filter((t=>t in e))},Zt)));return r.push(new Proxy({get:t=>n.has(t)?void 0:e[t],has:t=>!n.has(t)&&t in e,keys:()=>Object.keys(e).filter((e=>!n.has(e)))},Zt)),r}const r=Object.getOwnPropertyDescriptors(e);return t.push(Object.keys(r).filter((e=>!n.has(e)))),t.map((t=>{const n={};for(let o=0;o<t.length;o++){const i=t[o];i in e&&Object.defineProperty(n,i,r[i]?r[i]:{get:()=>e[i],set:()=>!0,enumerable:!0})}return n}))}function Jt(e){const t="fallback"in e&&{fallback:()=>e.fallback};return vt(function(e,t,n={}){let r=[],o=[],i=[],s=0,a=t.length>1?[]:null;return _t((()=>Ft(i))),()=>{let l,c,u=e()||[];return u[Xe],Ct((()=>{let e,t,h,f,g,p,w,m,v,y=u.length;if(0===y)0!==s&&(Ft(i),i=[],r=[],o=[],s=0,a&&(a=[])),n.fallback&&(r=[Kt],o[0]=ft((e=>(i[0]=e,n.fallback()))),s=1);else if(0===s){for(o=new Array(y),c=0;c<y;c++)r[c]=u[c],o[c]=ft(d);s=y}else{for(h=new Array(y),f=new Array(y),a&&(g=new Array(y)),p=0,w=Math.min(s,y);p<w&&r[p]===u[p];p++);for(w=s-1,m=y-1;w>=p&&m>=p&&r[w]===u[m];w--,m--)h[m]=o[w],f[m]=i[w],a&&(g[m]=a[w]);for(e=new Map,t=new Array(m+1),c=m;c>=p;c--)v=u[c],l=e.get(v),t[c]=void 0===l?-1:l,e.set(v,c);for(l=p;l<=w;l++)v=r[l],c=e.get(v),void 0!==c&&-1!==c?(h[c]=o[l],f[c]=i[l],a&&(g[c]=a[l]),c=t[c],e.set(v,c)):i[l]();for(c=p;c<y;c++)c in h?(o[c]=h[c],i[c]=f[c],a&&(a[c]=g[c],a[c](c))):o[c]=ft(d);o=o.slice(0,s=y),r=u.slice(0)}return o}));function d(e){if(i[c]=e,a){const[e,n]=gt(c);return a[c]=n,t(u[c],e)}return t(u[c])}}}((()=>e.each),e.children,t||void 0))}function Xt(e){let t=!1;const n=e.keyed,r=vt((()=>e.when),void 0,{equals:(e,n)=>t?e===n:!e==!n});return vt((()=>{const o=r();if(o){const r=e.children,i="function"==typeof r&&r.length>0;return t=n||i,i?Ct((()=>r(o))):r}return e.fallback}),void 0,void 0)}function en(e){let t=!1,n=!1;const r=Rt((()=>e.children)),o=vt((()=>{let e=r();Array.isArray(e)||(e=[e]);for(let t=0;t<e.length;t++){const r=e[t].when;if(r)return n=!!e[t].keyed,[t,r,e[t]]}return[-1]}),void 0,{equals:(e,n)=>e[0]===n[0]&&(t?e[1]===n[1]:!e[1]==!n[1])&&e[2]===n[2]});return vt((()=>{const[r,i,s]=o();if(r<0)return e.fallback;const a=s.children,l="function"==typeof a&&a.length>0;return t=n||l,l?Ct((()=>a(i))):a}),void 0,void 0)}function tn(e){return e}const nn=new Set(["className","value","readOnly","formNoValidate","isMap","noModule","playsInline","allowfullscreen","async","autofocus","autoplay","checked","controls","default","disabled","formnovalidate","hidden","indeterminate","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","readonly","required","reversed","seamless","selected"]),rn=new Set(["innerHTML","textContent","innerText","children"]),on=Object.assign(Object.create(null),{className:"class",htmlFor:"for"}),sn=Object.assign(Object.create(null),{class:"className",formnovalidate:"formNoValidate",ismap:"isMap",nomodule:"noModule",playsinline:"playsInline",readonly:"readOnly"}),an=new Set(["beforeinput","click","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"]),ln=new Set(["altGlyph","altGlyphDef","altGlyphItem","animate","animateColor","animateMotion","animateTransform","circle","clipPath","color-profile","cursor","defs","desc","ellipse","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","font","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignObject","g","glyph","glyphRef","hkern","image","line","linearGradient","marker","mask","metadata","missing-glyph","mpath","path","pattern","polygon","polyline","radialGradient","rect","set","stop","svg","switch","symbol","text","textPath","tref","tspan","use","view","vkern"]),cn={xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace"};const un="_$DX_DELEGATE";function dn(e,t,n){const r=document.createElement("template");r.innerHTML=e;let o=r.content.firstChild;return n&&(o=o.firstChild),o}function hn(e,t,n){null==n?e.removeAttribute(t):e.setAttribute(t,n)}function fn(e,t){null==t?e.removeAttribute("class"):e.className=t}function gn(e,t={},n,r){const o={};return r||wt((()=>o.children=Cn(e,t.children,o.children))),wt((()=>t.ref&&t.ref(e))),wt((()=>function(e,t,n,r,o={},i=!1){t||(t={});for(const s in o)if(!(s in t)){if("children"===s)continue;o[s]=yn(e,s,null,o[s],n,i)}for(const s in t){if("children"===s){r||Cn(e,t.children);continue}const a=t[s];o[s]=yn(e,s,a,o[s],n,i)}}(e,t,n,!0,o,!0))),o}function pn(e,t,n){return Ct((()=>e(t,n)))}function wn(e,t,n,r){if(void 0===n||r||(r=[]),"function"!=typeof t)return Cn(e,t,r,n);wt((r=>Cn(e,t(),r,n)),r)}function mn(e){let t,n;return Qe.context&&(t=Qe.registry.get(n=function(){const e=Qe.context;return`${e.id}${e.count++}`}()))?(Qe.completed&&Qe.completed.add(t),Qe.registry.delete(n),t):e.cloneNode(!0)}function vn(e,t,n){const r=t.trim().split(/\s+/);for(let o=0,i=r.length;o<i;o++)e.classList.toggle(r[o],n)}function yn(e,t,n,r,o,i){let s,a,l;if("style"===t)return function(e,t,n){if(!t)return n?hn(e,"style"):t;const r=e.style;if("string"==typeof t)return r.cssText=t;let o,i;for(i in"string"==typeof n&&(r.cssText=n=void 0),n||(n={}),t||(t={}),n)null==t[i]&&r.removeProperty(i),delete n[i];for(i in t)o=t[i],o!==n[i]&&(r.setProperty(i,o),n[i]=o);return n}(e,n,r);if("classList"===t)return function(e,t,n={}){const r=Object.keys(t||{}),o=Object.keys(n);let i,s;for(i=0,s=o.length;i<s;i++){const r=o[i];r&&"undefined"!==r&&!t[r]&&(vn(e,r,!1),delete n[r])}for(i=0,s=r.length;i<s;i++){const o=r[i],s=!!t[o];o&&"undefined"!==o&&n[o]!==s&&s&&(vn(e,o,!0),n[o]=s)}return n}(e,n,r);if(n===r)return r;if("ref"===t)i||n(e);else if("on:"===t.slice(0,3)){const o=t.slice(3);r&&e.removeEventListener(o,r),n&&e.addEventListener(o,n)}else if("oncapture:"===t.slice(0,10)){const o=t.slice(10);r&&e.removeEventListener(o,r,!0),n&&e.addEventListener(o,n,!0)}else if("on"===t.slice(0,2)){const o=t.slice(2).toLowerCase(),i=an.has(o);if(!i&&r){const t=Array.isArray(r)?r[0]:r;e.removeEventListener(o,t)}(i||n)&&(function(e,t,n,r){if(r)Array.isArray(n)?(e[`$$${t}`]=n[0],e[`$$${t}Data`]=n[1]):e[`$$${t}`]=n;else if(Array.isArray(n)){const r=n[0];e.addEventListener(t,n[0]=t=>r.call(e,n[1],t))}else e.addEventListener(t,n)}(e,o,n,i),i&&function(e,t=window.document){const n=t[un]||(t[un]=new Set);for(let r=0,o=e.length;r<o;r++){const o=e[r];n.has(o)||(n.add(o),t.addEventListener(o,bn))}}([o]))}else if((l=rn.has(t))||!o&&(sn[t]||(a=nn.has(t)))||(s=e.nodeName.includes("-")))"class"===t||"className"===t?fn(e,n):!s||a||l?e[sn[t]||t]=n:e[(c=t,c.toLowerCase().replace(/-([a-z])/g,((e,t)=>t.toUpperCase())))]=n;else{const r=o&&t.indexOf(":")>-1&&cn[t.split(":")[0]];r?function(e,t,n,r){null==r?e.removeAttributeNS(t,n):e.setAttributeNS(t,n,r)}(e,r,t,n):hn(e,on[t]||t,n)}var c;return n}function bn(e){const t=`$$${e.type}`;let n=e.composedPath&&e.composedPath()[0]||e.target;for(e.target!==n&&Object.defineProperty(e,"target",{configurable:!0,value:n}),Object.defineProperty(e,"currentTarget",{configurable:!0,get:()=>n||document}),Qe.registry&&!Qe.done&&(Qe.done=!0,document.querySelectorAll("[id^=pl-]").forEach((t=>{for(;t&&8!==t.nodeType&&t.nodeValue!=="pl-"+e;){let e=t.nextSibling;t.remove(),t=e}t&&t.remove()})));n;){const r=n[t];if(r&&!n.disabled){const o=n[`${t}Data`];if(void 0!==o?r.call(n,o,e):r.call(n,e),e.cancelBubble)return}n=n._$host||n.parentNode||n.host}}function Cn(e,t,n,r,o){for(Qe.context&&!n&&(n=[...e.childNodes]);"function"==typeof n;)n=n();if(t===n)return n;const i=typeof t,s=void 0!==r;if(e=s&&n[0]&&n[0].parentNode||e,"string"===i||"number"===i){if(Qe.context)return n;if("number"===i&&(t=t.toString()),s){let o=n[0];o&&3===o.nodeType?o.data=t:o=document.createTextNode(t),n=kn(e,n,r,o)}else n=""!==n&&"string"==typeof n?e.firstChild.data=t:e.textContent=t}else if(null==t||"boolean"===i){if(Qe.context)return n;n=kn(e,n,r)}else{if("function"===i)return wt((()=>{let o=t();for(;"function"==typeof o;)o=o();n=Cn(e,o,n,r)})),()=>n;if(Array.isArray(t)){const i=[],a=n&&Array.isArray(n);if(xn(i,t,n,o))return wt((()=>n=Cn(e,i,n,r,!0))),()=>n;if(Qe.context){if(!i.length)return n;for(let e=0;e<i.length;e++)if(i[e].parentNode)return n=i}if(0===i.length){if(n=kn(e,n,r),s)return n}else a?0===n.length?_n(e,i,r):function(e,t,n){let r=n.length,o=t.length,i=r,s=0,a=0,l=t[o-1].nextSibling,c=null;for(;s<o||a<i;)if(t[s]!==n[a]){for(;t[o-1]===n[i-1];)o--,i--;if(o===s){const t=i<r?a?n[a-1].nextSibling:n[i-a]:l;for(;a<i;)e.insertBefore(n[a++],t)}else if(i===a)for(;s<o;)c&&c.has(t[s])||t[s].remove(),s++;else if(t[s]===n[i-1]&&n[a]===t[o-1]){const r=t[--o].nextSibling;e.insertBefore(n[a++],t[s++].nextSibling),e.insertBefore(n[--i],r),t[o]=n[i]}else{if(!c){c=new Map;let e=a;for(;e<i;)c.set(n[e],e++)}const r=c.get(t[s]);if(null!=r)if(a<r&&r<i){let l,u=s,d=1;for(;++u<o&&u<i&&null!=(l=c.get(t[u]))&&l===r+d;)d++;if(d>r-a){const o=t[s];for(;a<r;)e.insertBefore(n[a++],o)}else e.replaceChild(n[a++],t[s++])}else s++;else t[s++].remove()}}else s++,a++}(e,n,i):(n&&kn(e),_n(e,i));n=i}else if(t instanceof Node){if(Qe.context&&t.parentNode)return n=s?[t]:t;if(Array.isArray(n)){if(s)return n=kn(e,n,r,t);kn(e,n,null,t)}else null!=n&&""!==n&&e.firstChild?e.replaceChild(t,e.firstChild):e.appendChild(t);n=t}}return n}function xn(e,t,n,r){let o=!1;for(let i=0,s=t.length;i<s;i++){let s=t[i],a=n&&n[i];if(s instanceof Node)e.push(s);else if(null==s||!0===s||!1===s);else if(Array.isArray(s))o=xn(e,s,a)||o;else if("function"==typeof s)if(r){for(;"function"==typeof s;)s=s();o=xn(e,Array.isArray(s)?s:[s],Array.isArray(a)?a:[a])||o}else e.push(s),o=!0;else{const t=String(s);a&&3===a.nodeType&&a.data===t?e.push(a):e.push(document.createTextNode(t))}}return o}function _n(e,t,n=null){for(let r=0,o=t.length;r<o;r++)e.insertBefore(t[r],n)}function kn(e,t,n,r){if(void 0===n)return e.textContent="";const o=r||document.createTextNode("");if(t.length){let r=!1;for(let i=t.length-1;i>=0;i--){const s=t[i];if(o!==s){const t=s.parentNode===e;r||i?t&&s.remove():t?e.replaceChild(o,s):e.insertBefore(o,n)}else r=!0}}else e.insertBefore(o,n);return[o]}const Sn="http://www.w3.org/2000/svg";function En(e,t=!1){return t?document.createElementNS(Sn,e):document.createElement(e)}function Rn(e){const{useShadow:t}=e,n=document.createTextNode(""),r=e.mount||document.body;function o(){if(Qe.context){const[t,n]=gt(!1);return queueMicrotask((()=>n(!0))),()=>t()&&e.children}return()=>e.children}if(r instanceof HTMLHeadElement){const[e,t]=gt(!1),n=()=>t(!0);ft((t=>wn(r,(()=>e()?t():o()()),null))),_t((()=>{Qe.context?queueMicrotask(n):n()}))}else{const i=En(e.isSVG?"g":"div",e.isSVG),s=t&&i.attachShadow?i.attachShadow({mode:"open"}):i;Object.defineProperty(i,"_$host",{get:()=>n.parentNode,configurable:!0}),wn(s,o()),r.appendChild(i),e.ref&&e.ref(i),_t((()=>r.removeChild(i)))}return n}function Tn(e){const[t,n]=Qt(e,["component"]),r=vt((()=>t.component));return vt((()=>{const e=r();switch(typeof e){case"function":return Ct((()=>e(n)));case"string":const t=ln.has(e),r=Qe.context?mn():En(e,t);return gn(r,n,t),r}}))}var Ln=(e=>(e.DARK="DARK",e.LIGHT="LIGHT",e))(Ln||{});let An={data:""},Mn=e=>"object"==typeof window?((e?e.querySelector("#_goober"):window._goober)||Object.assign((e||document.head).appendChild(document.createElement("style")),{innerHTML:" ",id:"_goober"})).firstChild:e||An,On=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g,Nn=/\/\*[^]*?\*\/| +/g,$n=/\n+/g,Pn=(e,t)=>{let n="",r="",o="";for(let i in e){let s=e[i];"@"==i[0]?"i"==i[1]?n=i+" "+s+";":r+="f"==i[1]?Pn(s,i):i+"{"+Pn(s,"k"==i[1]?"":t)+"}":"object"==typeof s?r+=Pn(s,t?t.replace(/([^,])+/g,(e=>i.replace(/(^:.*)|([^,])+/g,(t=>/&/.test(t)?t.replace(/&/g,e):e?e+" "+t:t)))):i):null!=s&&(i=/^--/.test(i)?i:i.replace(/[A-Z]/g,"-$&").toLowerCase(),o+=Pn.p?Pn.p(i,s):i+":"+s+";")}return n+(t&&o?t+"{"+o+"}":o)+r},In={},Un=e=>{if("object"==typeof e){let t="";for(let n in e)t+=n+Un(e[n]);return t}return e},Wn=(e,t,n,r,o)=>{let i=Un(e),s=In[i]||(In[i]=(e=>{let t=0,n=11;for(;t<e.length;)n=101*n+e.charCodeAt(t++)>>>0;return"go"+n})(i));if(!In[s]){let t=i!==e?e:(e=>{let t,n,r=[{}];for(;t=On.exec(e.replace(Nn,""));)t[4]?r.shift():t[3]?(n=t[3].replace($n," ").trim(),r.unshift(r[0][n]=r[0][n]||{})):r[0][t[1]]=t[2].replace($n," ").trim();return r[0]})(e);In[s]=Pn(o?{["@keyframes "+s]:t}:t,n?"":"."+s)}let a=n&&In.g?In.g:null;return n&&(In.g=In[s]),l=In[s],c=t,u=r,(d=a)?c.data=c.data.replace(d,l):-1===c.data.indexOf(l)&&(c.data=u?l+c.data:c.data+l),s;var l,c,u,d},jn=(e,t,n)=>e.reduce(((e,r,o)=>{let i=t[o];if(i&&i.call){let e=i(n),t=e&&e.props&&e.props.className||/^go/.test(e)&&e;i=t?"."+t:e&&"object"==typeof e?e.props?"":Pn(e,""):!1===e?"":e}return e+r+(null==i?"":i)}),"");function Bn(e){let t=this||{},n=e.call?e(t.p):e;return Wn(n.unshift?n.raw?jn(n,[].slice.call(arguments,1),t.p):n.reduce(((e,n)=>Object.assign(e,n&&n.call?n(t.p):n)),{}):n,Mn(t.target),t.g,t.o,t.k)}Bn.bind({g:1});let Dn=Bn.bind({k:1});const Hn=St();function Vn(e){return qt(Hn.Provider,{value:e.theme,get children(){return e.children}})}function Kn(){return Et(Hn)}function Fn(e){let t=this||{};return(...n)=>{const r=r=>{const o=Yt(r,{theme:Et(Hn)}),i=Yt(o,{get class(){const e=o.class,r="class"in o&&/^go[0-9]+/.test(e);return[e,Bn.apply({target:t.target,o:r,p:o,g:t.g},n)].filter(Boolean).join(" ")}}),[s,a]=Qt(i,["as","theme"]),l=a,c=s.as||e;let u;return"function"==typeof c?u=c(l):1==t.g?(u=document.createElement(c),gn(u,l)):u=Tn(Yt({component:c},l)),u};return r.class=e=>Ct((()=>Bn.apply({target:t.target,p:e,g:t.g},n))),r}}const qn=new Proxy(Fn,{get:(e,t)=>e(t)});function zn(){const e=Fn.call({g:1},"div").apply(null,arguments);return function(t){return e(t),null}}const Zn="tc-root",Gn="tc-disable-scroll",Yn="tc-using-mouse",Qn=()=>{document.body.addEventListener("mousedown",(()=>document.body.classList.add(Yn))),document.body.addEventListener("keydown",(e=>{"Tab"===e.key&&document.body.classList.remove(Yn)}));return qt(zn`
2
2
  ${Zn} * {
3
3
  margin: 0;
4
4
  padding: 0;
@@ -1024,5 +1024,5 @@ var __defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnP
1024
1024
  width: 16px;
1025
1025
  `,Au=qn(Wo)`
1026
1026
  margin-top: 32px;
1027
- `,Mu=e=>{const t=Uo(e),n=Et(wa),[r,o]=gt(!0),[i,s]=gt(!1);let a,l;mt((()=>{const e=Mr();s(!!e&&"sent"in e&&e.sent)})),(null==n?void 0:n.wallet)&&"universalLink"in n.wallet&&("universal-link"===n.wallet.openMethod||te(n.wallet.universalLink)&&_o())&&(a=n.wallet.universalLink),(null==n?void 0:n.wallet)&&"deepLink"in n.wallet&&("custom-deeplink"===n.wallet.openMethod||te(n.wallet.deepLink)&&_o())&&(l=n.wallet.deepLink);const c=()=>{const e=Mr(),t="returnStrategy"in e?e.returnStrategy:Bl.returnStrategy,n=!r();o(!1),te(a)?yc(a,{returnStrategy:t,twaReturnUrl:"twaReturnUrl"in e?e.twaReturnUrl:Bl.twaReturnUrl,forceRedirect:n}):bc(a,l,{returnStrategy:t,forceRedirect:n},(()=>{}))};return qt(Su,Yt(t,{get children(){return[vt((()=>e.icon)),qt(Eu,{get translationKey(){return e.headerTranslationKey},get translationValues(){return e.headerTranslationValues}}),qt(Ru,{get translationKey(){return e.textTranslationKey},get translationValues(){return e.textTranslationValues}}),qt(Xt,{get when(){return!i()&&("open-wallet"===e.showButton&&a||"open-wallet"!==e.showButton)},get children(){return qt(Tu,{disabled:!0,"data-tc-connect-button-loading":"true",get children(){return qt(Lu,{})}})}}),qt(Xt,{get when(){return i()},get children(){return[qt(Xt,{get when(){return"open-wallet"!==e.showButton},get children(){return qt(Au,{onClick:()=>e.onClose(),get children(){return qt(mc,{translationKey:"common.close",children:"Close"})}})}}),qt(Xt,{get when(){return"open-wallet"===e.showButton&&a},get children(){return qt(Au,{onClick:c,get children(){return qt(mc,{translationKey:"common.openWallet",children:"Open wallet"})}})}})]}})]}}))},Ou=e=>{const t=Et(wa),[n]=Wi();return qt(Mu,{headerTranslationKey:"actionModal.confirmTransaction.header",get headerTranslationValues(){return{name:t.wallet&&"name"in t.wallet?t.wallet.name:n("common.yourWallet",{},"Your wallet")}},textTranslationKey:"actionModal.confirmTransaction.text",get icon(){return qt(bs,{size:"m"})},onClose:()=>e.onClose(),showButton:"open-wallet","data-tc-confirm-modal":"true"})},Nu=e=>qt(Mu,{headerTranslationKey:"actionModal.transactionCanceled.header",textTranslationKey:"actionModal.transactionCanceled.text",get icon(){return qt(ws,{size:"m"})},onClose:()=>e.onClose(),"data-tc-transaction-canceled-modal":"true"}),$u=e=>qt(Mu,{headerTranslationKey:"actionModal.transactionSent.header",textTranslationKey:"actionModal.transactionSent.text",get icon(){return qt(hs,{size:"m"})},onClose:()=>e.onClose(),"data-tc-transaction-sent-modal":"true"}),Pu=()=>qt(pi,{get opened(){var e;return vt((()=>null!==Mr()))()&&!0===(null==(e=Mr())?void 0:e.openModal)},get enableAndroidBackHandler(){return Bl.enableAndroidBackHandler},onClose:()=>Or(null),"data-tc-actions-modal-container":"true",get children(){return qt(en,{get children(){return[qt(tn,{get when(){return"transaction-sent"===Mr().name},get children(){return qt($u,{onClose:()=>Or(null)})}}),qt(tn,{get when(){return"transaction-canceled"===Mr().name},get children(){return qt(Nu,{onClose:()=>Or(null)})}}),qt(tn,{get when(){return"confirm-transaction"===Mr().name},get children(){return qt(Ou,{onClose:()=>Or(null)})}})]}})}}),Iu=()=>{const{locale:e}=Wi()[1];mt((()=>e(Bl.language))),mt((()=>{Sr()&&ha()}));const t=Et(Ir),n=Et(wa),[r,o]=gt(!1),i=()=>{var e;return"loading"===(null==(e=Bl.connectRequestParameters)?void 0:e.state)},s=vt((()=>{var e;if(!i())return null==(e=Bl.connectRequestParameters)?void 0:e.value})),a=e=>{n.closeSingleWalletModal(e)};return _t(t.onStatusChange((e=>{e&&a("wallet-selected")}))),_t((()=>{o(!1)})),qt(Ul,{get opened(){return Sr()},get enableAndroidBackHandler(){return Bl.enableAndroidBackHandler},onClose:()=>a("action-cancelled"),onClickQuestion:()=>o((e=>!e)),"data-tc-wallets-modal-container":"true",get children(){return[qt(Xt,{get when(){return r()},get children(){return qt(Oc,{onBackClick:()=>o(!1)})}}),qt(Xt,{get when(){return!r()},get children(){return[qt(Xt,{get when(){return i()},get children(){return[qt(Wl,{translationKey:"walletModal.loading",children:"Wallets list is loading"}),qt(jl,{get children(){return qt(bs,{size:"m"})}})]}}),qt(Xt,{get when(){return!i()},get children(){return qt(Tn,{get component(){return ua()?Zc:xc},get wallet(){return Er()},get additionalRequest(){return s()},onBackClick:()=>{},backDisabled:!0})}})]}})]}})},Uu=e=>{const t=Ii($r,Bl.language);return customElements.define(Zn,class extends HTMLElement{}),document.body.hasAttribute("ontouchstart")||document.body.setAttribute("ontouchstart",""),qt(Ui.Provider,{value:t,get children(){return qt(wa.Provider,{get value(){return e.tonConnectUI},get children(){return qt(Ir.Provider,{get value(){return Bl.connector},get children(){return[qt(Qn,{}),qt(Vn,{theme:ho,get children(){return[qt(Xt,{get when(){return Bl.buttonRootId},get children(){return qt(Rn,{get mount(){return document.getElementById(Bl.buttonRootId)},get children(){return qt(Il,{})}})}}),qt(Tn,{component:Zn,get children(){return[qt(ku,{}),qt(Iu,{}),qt(Pu,{})]}})]}})]}})}})}})},Wu=()=>{setTimeout((()=>Cr({status:"opened",closeReason:null})))},ju=e=>{setTimeout((()=>Cr({status:"closed",closeReason:e})))},Bu=e=>{setTimeout((()=>kr({status:"opened",closeReason:null,walletInfo:e})))},Du=e=>{setTimeout((()=>kr({status:"closed",closeReason:e})))},Hu=e=>{setTimeout((()=>Or(e)))},Vu=()=>{setTimeout((()=>Or(null)))},Ku=()=>Tr(),Fu=()=>Ar(null),qu=(e,t)=>function(e,t,n,r={}){let o;return ft((r=>{o=r,t===document?e():wn(t,e(),t.firstChild?null:void 0,n)}),r.owner),()=>{o(),t.textContent=""}}((()=>qt(Uu,{tonConnectUI:t})),document.getElementById(e));class zu{constructor(e){__publicField(this,"connector"),__publicField(this,"setConnectRequestParametersCallback"),__publicField(this,"consumers",[]),__publicField(this,"tracker"),__publicField(this,"state",br()),this.connector=e.connector,this.tracker=e.tracker,this.setConnectRequestParametersCallback=e.setConnectRequestParametersCallback,mt((()=>{const e=br();this.state=e,this.consumers.forEach((t=>t(e)))}))}open(){return __async(this,null,(function*(){this.tracker.trackConnectionStarted();const e=(yield this.connector.getWallets()).find(Ce);return e?this.connectEmbeddedWallet(e):this.openWalletsModal()}))}close(e="action-cancelled"){"action-cancelled"===e&&this.tracker.trackConnectionError("Connection was cancelled"),ju(e)}onStateChange(e){return this.consumers.push(e),()=>{this.consumers=this.consumers.filter((t=>t!==e))}}connectEmbeddedWallet(e){const t=t=>{Ar(e),this.connector.connect({jsBridgeKey:e.jsBridgeKey},t)},n=Bl.connectRequestParameters;"loading"===(null==n?void 0:n.state)?this.setConnectRequestParametersCallback(t):t(null==n?void 0:n.value)}openWalletsModal(){return __async(this,null,(function*(){return _o()&&ko(),Wu(),new Promise((e=>{const t=this.onStateChange((n=>{const{status:r}=n;"opened"===r&&(t(),e())}))}))}))}}class Zu{constructor(e){__publicField(this,"connector"),__publicField(this,"consumers",[]),this.connector=e.connector,mt((()=>{const e=Mr();this.consumers.forEach((t=>t(e)))}))}onStateChange(e){return this.consumers.push(e),()=>{this.consumers=this.consumers.filter((t=>t!==e))}}}class Gu{constructor(e){__publicField(this,"connector"),__publicField(this,"setConnectRequestParametersCallback"),__publicField(this,"consumers",[]),__publicField(this,"tracker"),__publicField(this,"state",_r()),this.connector=e.connector,this.tracker=e.tracker,this.setConnectRequestParametersCallback=e.setConnectRequestParametersCallback,mt((()=>{const e=_r();this.state=e,this.consumers.forEach((t=>t(e)))}))}open(e){return __async(this,null,(function*(){this.tracker.trackConnectionStarted();const t=Vl(yield this.connector.getWallets(),Bl.walletsListConfiguration),n=t.find(Ce);if(!!n)return this.connectEmbeddedWallet(n);const r=t.filter(_e).find((t=>zl(t,e)));if(!!r)return this.openSingleWalletModal(r);const o=`Trying to open modal window with unknown wallet "${e}".`;throw this.tracker.trackConnectionError(o),new or(o)}))}close(e="action-cancelled"){"action-cancelled"===e&&this.tracker.trackConnectionError("Connection was cancelled"),Du("action-cancelled")}onStateChange(e){return this.consumers.push(e),()=>{this.consumers=this.consumers.filter((t=>t!==e))}}connectEmbeddedWallet(e){const t=t=>{Ar(e),this.connector.connect({jsBridgeKey:e.jsBridgeKey},t)},n=Bl.connectRequestParameters;"loading"===(null==n?void 0:n.state)?this.setConnectRequestParametersCallback(t):t(null==n?void 0:n.value)}openSingleWalletModal(e){return __async(this,null,(function*(){return _o()&&ko(),Bu(e),new Promise((e=>{const t=this.onStateChange((n=>{const{status:r}=n;"opened"===r&&(t(),e())}))}))}))}}class Yu{constructor(e){var t;__publicField(this,"eventPrefix","ton-connect-ui-"),__publicField(this,"tonConnectUiVersion"),__publicField(this,"tonConnectSdkVersion",null),__publicField(this,"eventDispatcher"),this.eventDispatcher=null!=(t=null==e?void 0:e.eventDispatcher)?t:new Ve,this.tonConnectUiVersion=e.tonConnectUiVersion,this.init().catch()}get version(){return Ae({ton_connect_sdk_lib:this.tonConnectSdkVersion,ton_connect_ui_lib:this.tonConnectUiVersion})}init(){return __async(this,null,(function*(){try{yield this.setRequestVersionHandler(),this.tonConnectSdkVersion=yield this.requestTonConnectSdkVersion()}catch(Qu){}}))}setRequestVersionHandler(){return __async(this,null,(function*(){yield this.eventDispatcher.addEventListener("ton-connect-ui-request-version",(()=>__async(this,null,(function*(){yield this.eventDispatcher.dispatchEvent("ton-connect-ui-response-version",Le(this.tonConnectUiVersion))}))))}))}requestTonConnectSdkVersion(){return __async(this,null,(function*(){return new Promise(((e,t)=>__async(this,null,(function*(){try{yield this.eventDispatcher.addEventListener("ton-connect-response-version",(t=>{e(t.detail.version)}),{once:!0}),yield this.eventDispatcher.dispatchEvent("ton-connect-request-version",{type:"request-version"})}catch(Qu){t(Qu)}}))))}))}dispatchUserActionEvent(e){var t;try{null==(t=this.eventDispatcher)||t.dispatchEvent(`${this.eventPrefix}${e.type}`,e).catch()}catch(Qu){}}trackConnectionStarted(...e){try{const t=Oe(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackConnectionCompleted(...e){try{const t=Ne(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackConnectionError(...e){try{const t=$e(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackConnectionRestoringStarted(...e){try{const t=Pe(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackConnectionRestoringCompleted(...e){try{const t=Ie(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackConnectionRestoringError(...e){try{const t=Ue(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackDisconnection(...e){try{const t=He(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackTransactionSentForSignature(...e){try{const t=je(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackTransactionSigned(...e){try{const t=Be(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackTransactionSigningFailed(...e){try{const t=De(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}}e.BadRequestError=B,e.BrowserEventDispatcher=Ve,e.FetchWalletsError=K,e.LocalstorageNotFoundError=V,e.ParseHexError=q,e.THEME=Ln,e.TonConnect=Fe,e.TonConnectError=N,e.TonConnectUI=class{constructor(e){if(__publicField(this,"walletInfoStorage",new mr),__publicField(this,"preferredWalletStorage",new vr),__publicField(this,"tracker"),__publicField(this,"walletInfo",null),__publicField(this,"systemThemeChangeUnsubscribe",null),__publicField(this,"actionsConfiguration"),__publicField(this,"walletsList"),__publicField(this,"connectRequestParametersCallback"),__publicField(this,"connector"),__publicField(this,"modal"),__publicField(this,"singleWalletModal"),__publicField(this,"transactionModal"),__publicField(this,"connectionRestored",Promise.resolve(!1)),e&&"connector"in e&&e.connector)this.connector=e.connector;else{if(!(e&&"manifestUrl"in e&&e.manifestUrl))throw new or("You have to specify a `manifestUrl` or a `connector` in the options.");this.connector=new Fe({manifestUrl:e.manifestUrl,eventDispatcher:null==e?void 0:e.eventDispatcher})}this.tracker=new Yu({eventDispatcher:null==e?void 0:e.eventDispatcher,tonConnectUiVersion:"2.0.7-beta.2"}),this.modal=new zu({connector:this.connector,tracker:this.tracker,setConnectRequestParametersCallback:e=>{this.connectRequestParametersCallback=e}}),this.singleWalletModal=new Gu({connector:this.connector,tracker:this.tracker,setConnectRequestParametersCallback:e=>{this.connectRequestParametersCallback=e}}),this.transactionModal=new Zu({connector:this.connector}),this.walletsList=this.getWallets(),this.walletsList.then((e=>{return ur((t=e.map((e=>e.imageUrl)),[...new Set(t)]));var t}));const t=this.normalizeWidgetRoot(null==e?void 0:e.widgetRootId);this.subscribeToWalletChange(),!1!==(null==e?void 0:e.restoreConnection)&&(this.connectionRestored=function(e){return __async(this,null,(function*(){return yield new Promise((e=>requestAnimationFrame(e))),e()}))}((()=>__async(this,null,(function*(){return this.tracker.trackConnectionRestoringStarted(),yield this.connector.restoreConnection(),this.connector.connected?this.tracker.trackConnectionRestoringCompleted(this.wallet):(this.tracker.trackConnectionRestoringError("Connection was not restored"),this.walletInfoStorage.removeWalletInfo()),this.connector.connected}))))),this.uiOptions=uo(e,{uiPreferences:{theme:"SYSTEM"}});const n=this.preferredWalletStorage.getPreferredWalletAppName();Dl({connector:this.connector,preferredWalletAppName:n}),qu(t,this)}static getWallets(){return Fe.getWallets()}get connected(){return this.connector.connected}get account(){return this.connector.account}get wallet(){return this.connector.wallet?__spreadValues(__spreadValues({},this.connector.wallet),this.walletInfo):null}set uiOptions(e){var t,n,r,o,i,s,a;this.checkButtonRootExist(e.buttonRootId),this.actionsConfiguration=e.actionsConfiguration,(null==(t=e.uiPreferences)?void 0:t.theme)?"SYSTEM"!==(null==(n=e.uiPreferences)?void 0:n.theme)?(null==(r=this.systemThemeChangeUnsubscribe)||r.call(this),wo(e.uiPreferences.theme,e.uiPreferences.colorsSet)):(wo(window.matchMedia&&window.matchMedia("(prefers-color-scheme: light)").matches?Ln.LIGHT:Ln.DARK,e.uiPreferences.colorsSet),this.systemThemeChangeUnsubscribe||(this.systemThemeChangeUnsubscribe=function(e){const t=t=>e(t.matches?Ln.DARK:Ln.LIGHT);return window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",t),()=>window.matchMedia("(prefers-color-scheme: dark)").removeEventListener("change",t)}(wo))):(null==(o=e.uiPreferences)?void 0:o.colorsSet)&&(s=e.uiPreferences.colorsSet,po[Ln.DARK]=uo(s[Ln.DARK],po[Ln.DARK]),po[Ln.LIGHT]=uo(s[Ln.LIGHT],po[Ln.LIGHT]),fo((e=>({colors:uo(po[e.theme],go[e.theme])})))),(null==(i=e.uiPreferences)?void 0:i.borderRadius)&&(a=e.uiPreferences.borderRadius,fo({borderRadius:a})),Dl((t=>{var n,r;const o=uo(__spreadValues(__spreadValues(__spreadValues(__spreadValues({},e.language&&{language:e.language}),!!(null==(n=e.actionsConfiguration)?void 0:n.returnStrategy)&&{returnStrategy:e.actionsConfiguration.returnStrategy}),!!(null==(r=e.actionsConfiguration)?void 0:r.twaReturnUrl)&&{twaReturnUrl:e.actionsConfiguration.twaReturnUrl}),!!e.walletsListConfiguration&&{walletsListConfiguration:e.walletsListConfiguration}),Hr(t));return void 0!==e.buttonRootId&&(o.buttonRootId=e.buttonRootId),void 0!==e.enableAndroidBackHandler&&(o.enableAndroidBackHandler=e.enableAndroidBackHandler),o}))}setConnectRequestParameters(e){var t;Dl({connectRequestParameters:e}),"ready"!==(null==e?void 0:e.state)&&e||null==(t=this.connectRequestParametersCallback)||t.call(this,null==e?void 0:e.value)}getWallets(){return __async(this,null,(function*(){return this.connector.getWallets()}))}onStatusChange(e,t){return this.connector.onStatusChange((t=>__async(this,null,(function*(){if(t){const n=yield this.getSelectedWalletInfo(t);e(__spreadValues(__spreadValues({},t),n||this.walletInfoStorage.getWalletInfo()))}else e(t)}))),t)}openModal(){return __async(this,null,(function*(){return this.modal.open()}))}closeModal(e){this.modal.close(e)}onModalStateChange(e){return this.modal.onStateChange(e)}get modalState(){return this.modal.state}openSingleWalletModal(e){return __async(this,null,(function*(){return this.singleWalletModal.open(e)}))}closeSingleWalletModal(e){this.singleWalletModal.close(e)}onSingleWalletModalStateChange(e){return this.singleWalletModal.onStateChange(e)}get singleWalletModalState(){return this.singleWalletModal.state}connectWallet(){return __async(this,null,(function*(){const e=(yield this.getWallets()).find(Ce);return e?yield this.connectEmbeddedWallet(e):yield this.connectExternalWallet()}))}disconnect(){return this.tracker.trackDisconnection(this.wallet,"dapp"),Vu(),Fu(),this.walletInfoStorage.removeWalletInfo(),this.connector.disconnect()}sendTransaction(e,t){return __async(this,null,(function*(){if(this.tracker.trackTransactionSentForSignature(this.wallet,e),!this.connected)throw this.tracker.trackTransactionSigningFailed(this.wallet,e,"Wallet was not connected"),new or("Connect wallet to send a transaction.");_o()&&ko();const{notifications:n,modals:r,returnStrategy:o,twaReturnUrl:i,skipRedirectToWallet:s}=this.getModalsAndNotificationsConfiguration(t);Hu({name:"confirm-transaction",showNotification:n.includes("before"),openModal:r.includes("before"),sent:!1});const a=()=>{l.signal.aborted||(Hu({name:"confirm-transaction",showNotification:n.includes("before"),openModal:r.includes("before"),sent:!0}),this.walletInfo&&"universalLink"in this.walletInfo&&("universal-link"===this.walletInfo.openMethod||"custom-deeplink"===this.walletInfo.openMethod)&&(te(this.walletInfo.universalLink)?yc(this.walletInfo.universalLink,{returnStrategy:o,twaReturnUrl:i||Bl.twaReturnUrl,forceRedirect:!1}):bc(this.walletInfo.universalLink,this.walletInfo.deepLink,{returnStrategy:o,forceRedirect:!1},(()=>{}))))},l=new AbortController,c=this.onTransactionModalStateChange((e=>{(null==e?void 0:e.openModal)||(c(),e||l.abort())}));try{const t=yield this.waitForSendTransaction({transaction:e,signal:l.signal},a);return this.tracker.trackTransactionSigned(this.wallet,e,t),Hu({name:"transaction-sent",showNotification:n.includes("success"),openModal:r.includes("success")}),t}catch(Qu){throw Hu({name:"transaction-canceled",showNotification:n.includes("error"),openModal:r.includes("error")}),Qu instanceof N?Qu:(console.error(Qu),new or("Unhandled error:"+Qu))}finally{c()}}))}connectEmbeddedWallet(e){return __async(this,null,(function*(){const t=t=>{Ar(e),this.connector.connect({jsBridgeKey:e.jsBridgeKey},t)},n=Bl.connectRequestParameters;return"loading"===(null==n?void 0:n.state)?this.connectRequestParametersCallback=t:t(null==n?void 0:n.value),yield this.waitForWalletConnection({ignoreErrors:!1})}))}connectExternalWallet(){return __async(this,null,(function*(){const e=new AbortController;Wu();const t=this.onModalStateChange((n=>{const{status:r,closeReason:o}=n;"opened"!==r&&(t(),"action-cancelled"===o&&e.abort())}));return yield this.waitForWalletConnection({ignoreErrors:!0,signal:e.signal})}))}waitForWalletConnection(e){return __async(this,null,(function*(){return new Promise(((t,n)=>{this.tracker.trackConnectionStarted();const{ignoreErrors:r=!1,signal:o=null}=e;if(o&&o.aborted)return this.tracker.trackConnectionError("Connection was cancelled"),n(new or("Wallet was not connected"));const i=e=>__async(this,null,(function*(){if(e)this.tracker.trackConnectionCompleted(e),a(),t(e);else{if(this.tracker.trackConnectionError("Connection was cancelled"),r)return;a(),n(new or("Wallet was not connected"))}})),s=e=>{this.tracker.trackConnectionError(e.message),r||(a(),n(e))},a=this.onStatusChange((e=>i(e)),(e=>s(e)));o&&o.addEventListener("abort",(()=>{a(),n(new or("Wallet was not connected"))}),{once:!0})}))}))}waitForSendTransaction(e,t){return __async(this,null,(function*(){return new Promise(((n,r)=>{const{transaction:o,signal:i}=e;if(i.aborted)return this.tracker.trackTransactionSigningFailed(this.wallet,o,"Transaction was cancelled"),r(new or("Transaction was not sent"));const s=e=>__async(this,null,(function*(){n(e)})),a=()=>{this.tracker.trackTransactionSigningFailed(this.wallet,o,"Transaction was cancelled"),r(new or("Transaction was not sent"))};i.addEventListener("abort",a,{once:!0}),this.connector.sendTransaction(o,{onRequestSent:t,signal:i}).then((e=>(i.removeEventListener("abort",a),s(e)))).catch((e=>(i.removeEventListener("abort",a),(e=>{r(e)})(e))))}))}))}onTransactionModalStateChange(e){return this.transactionModal.onStateChange(e)}subscribeToWalletChange(){this.connector.onStatusChange((e=>__async(this,null,(function*(){var t;e?(yield this.updateWalletInfo(e),this.setPreferredWalletAppName((null==(t=this.walletInfo)?void 0:t.appName)||e.device.appName)):this.walletInfoStorage.removeWalletInfo()}))))}setPreferredWalletAppName(e){this.preferredWalletStorage.setPreferredWalletAppName(e),Dl({preferredWalletAppName:e})}getSelectedWalletInfo(e){return __async(this,null,(function*(){let t,n=Ku();if(!n)return null;if("name"in n)t=n;else{const r=Vl(yield this.walletsList,Bl.walletsListConfiguration).find((t=>zl(t,e.device.appName)));if(!r)throw new or(`Cannot find WalletInfo for the '${e.device.appName}' wallet`);t=__spreadValues(__spreadValues({},r),n)}return t}))}updateWalletInfo(e){return __async(this,null,(function*(){const t=yield this.getSelectedWalletInfo(e);if(t)return this.walletInfo=t,void this.walletInfoStorage.setWalletInfo(t);const n=this.walletInfoStorage.getWalletInfo();this.walletInfo=n||((yield this.walletsList).find((t=>zl(t,e.device.appName)))||null)}))}normalizeWidgetRoot(e){if(!e||!document.getElementById(e)){e="tc-widget-root";const t=document.createElement("div");t.id=e,document.body.appendChild(t)}return e}checkButtonRootExist(e){if(null!=e&&!document.getElementById(e))throw new or(`${e} element not found in the document.`)}getModalsAndNotificationsConfiguration(e){var t,n,r,o,i,s;const a=["before","success","error"];let l=a;(null==(t=this.actionsConfiguration)?void 0:t.notifications)&&"all"!==(null==(n=this.actionsConfiguration)?void 0:n.notifications)&&(l=this.actionsConfiguration.notifications),(null==e?void 0:e.notifications)&&(l="all"===e.notifications?a:e.notifications);let c=["before"];(null==(r=this.actionsConfiguration)?void 0:r.modals)&&(c="all"===this.actionsConfiguration.modals?a:this.actionsConfiguration.modals),(null==e?void 0:e.modals)&&(c="all"===e.modals?a:e.modals);const u=(null==e?void 0:e.returnStrategy)||(null==(o=this.actionsConfiguration)?void 0:o.returnStrategy)||"back",d=(null==e?void 0:e.twaReturnUrl)||(null==(i=this.actionsConfiguration)?void 0:i.twaReturnUrl);let h=(null==e?void 0:e.skipRedirectToWallet)||(null==(s=this.actionsConfiguration)?void 0:s.skipRedirectToWallet)||"ios";return _o()&&(h="never"),{notifications:l,modals:c,returnStrategy:u,twaReturnUrl:d,skipRedirectToWallet:h}}},e.TonConnectUIError=or,e.UnknownAppError=D,e.UnknownError=z,e.UserRejectsError=j,e.WalletAlreadyConnectedError=U,e.WalletNotConnectedError=W,e.WalletNotInjectedError=H,e.WalletsListManager=Se,e.WrongAddressError=F,e.createConnectionCompletedEvent=Ne,e.createConnectionErrorEvent=$e,e.createConnectionRestoringCompletedEvent=Ie,e.createConnectionRestoringErrorEvent=Ue,e.createConnectionRestoringStartedEvent=Pe,e.createConnectionStartedEvent=Oe,e.createDisconnectionEvent=He,e.createRequestVersionEvent=Te,e.createResponseVersionEvent=Le,e.createTransactionSentForSignatureEvent=je,e.createTransactionSignedEvent=Be,e.createTransactionSigningFailedEvent=De,e.createVersionInfo=Ae,e.encodeTelegramUrlParameters=ne,e.isTelegramUrl=te,e.isWalletInfoCurrentlyEmbedded=Ce,e.isWalletInfoCurrentlyInjected=be,e.isWalletInfoInjectable=xe,e.isWalletInfoInjected=function(e){return"jsBridgeKey"in e},e.isWalletInfoRemote=_e,e.toUserFriendlyAddress=Ze,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
1027
+ `,Mu=e=>{const t=Uo(e),n=Et(wa),[r,o]=gt(!0),[i,s]=gt(!1);let a,l;mt((()=>{const e=Mr();s(!!e&&"sent"in e&&e.sent)})),(null==n?void 0:n.wallet)&&"universalLink"in n.wallet&&("universal-link"===n.wallet.openMethod||te(n.wallet.universalLink)&&_o())&&(a=n.wallet.universalLink),(null==n?void 0:n.wallet)&&"deepLink"in n.wallet&&("custom-deeplink"===n.wallet.openMethod||te(n.wallet.deepLink)&&_o())&&(l=n.wallet.deepLink);const c=()=>{const e=Mr(),t="returnStrategy"in e?e.returnStrategy:Bl.returnStrategy,n=!r();o(!1),te(a)?yc(a,{returnStrategy:t,twaReturnUrl:"twaReturnUrl"in e?e.twaReturnUrl:Bl.twaReturnUrl,forceRedirect:n}):bc(a,l,{returnStrategy:t,forceRedirect:n},(()=>{}))};return qt(Su,Yt(t,{get children(){return[vt((()=>e.icon)),qt(Eu,{get translationKey(){return e.headerTranslationKey},get translationValues(){return e.headerTranslationValues}}),qt(Ru,{get translationKey(){return e.textTranslationKey},get translationValues(){return e.textTranslationValues}}),qt(Xt,{get when(){return!i()&&("open-wallet"===e.showButton&&a||"open-wallet"!==e.showButton)},get children(){return qt(Tu,{disabled:!0,"data-tc-connect-button-loading":"true",get children(){return qt(Lu,{})}})}}),qt(Xt,{get when(){return i()},get children(){return[qt(Xt,{get when(){return"open-wallet"!==e.showButton},get children(){return qt(Au,{onClick:()=>e.onClose(),get children(){return qt(mc,{translationKey:"common.close",children:"Close"})}})}}),qt(Xt,{get when(){return"open-wallet"===e.showButton&&a},get children(){return qt(Au,{onClick:c,get children(){return qt(mc,{translationKey:"common.openWallet",children:"Open wallet"})}})}})]}})]}}))},Ou=e=>{const t=Et(wa),[n]=Wi();return qt(Mu,{headerTranslationKey:"actionModal.confirmTransaction.header",get headerTranslationValues(){return{name:t.wallet&&"name"in t.wallet?t.wallet.name:n("common.yourWallet",{},"Your wallet")}},textTranslationKey:"actionModal.confirmTransaction.text",get icon(){return qt(bs,{size:"m"})},onClose:()=>e.onClose(),showButton:"open-wallet","data-tc-confirm-modal":"true"})},Nu=e=>qt(Mu,{headerTranslationKey:"actionModal.transactionCanceled.header",textTranslationKey:"actionModal.transactionCanceled.text",get icon(){return qt(ws,{size:"m"})},onClose:()=>e.onClose(),"data-tc-transaction-canceled-modal":"true"}),$u=e=>qt(Mu,{headerTranslationKey:"actionModal.transactionSent.header",textTranslationKey:"actionModal.transactionSent.text",get icon(){return qt(hs,{size:"m"})},onClose:()=>e.onClose(),"data-tc-transaction-sent-modal":"true"}),Pu=()=>qt(pi,{get opened(){var e;return vt((()=>null!==Mr()))()&&!0===(null==(e=Mr())?void 0:e.openModal)},get enableAndroidBackHandler(){return Bl.enableAndroidBackHandler},onClose:()=>Or(null),"data-tc-actions-modal-container":"true",get children(){return qt(en,{get children(){return[qt(tn,{get when(){return"transaction-sent"===Mr().name},get children(){return qt($u,{onClose:()=>Or(null)})}}),qt(tn,{get when(){return"transaction-canceled"===Mr().name},get children(){return qt(Nu,{onClose:()=>Or(null)})}}),qt(tn,{get when(){return"confirm-transaction"===Mr().name},get children(){return qt(Ou,{onClose:()=>Or(null)})}})]}})}}),Iu=()=>{const{locale:e}=Wi()[1];mt((()=>e(Bl.language))),mt((()=>{Sr()&&ha()}));const t=Et(Ir),n=Et(wa),[r,o]=gt(!1),i=()=>{var e;return"loading"===(null==(e=Bl.connectRequestParameters)?void 0:e.state)},s=vt((()=>{var e;if(!i())return null==(e=Bl.connectRequestParameters)?void 0:e.value})),a=e=>{n.closeSingleWalletModal(e)};return _t(t.onStatusChange((e=>{e&&a("wallet-selected")}))),_t((()=>{o(!1)})),qt(Ul,{get opened(){return Sr()},get enableAndroidBackHandler(){return Bl.enableAndroidBackHandler},onClose:()=>a("action-cancelled"),onClickQuestion:()=>o((e=>!e)),"data-tc-wallets-modal-container":"true",get children(){return[qt(Xt,{get when(){return r()},get children(){return qt(Oc,{onBackClick:()=>o(!1)})}}),qt(Xt,{get when(){return!r()},get children(){return[qt(Xt,{get when(){return i()},get children(){return[qt(Wl,{translationKey:"walletModal.loading",children:"Wallets list is loading"}),qt(jl,{get children(){return qt(bs,{size:"m"})}})]}}),qt(Xt,{get when(){return!i()},get children(){return qt(Tn,{get component(){return ua()?Zc:xc},get wallet(){return Er()},get additionalRequest(){return s()},onBackClick:()=>{},backDisabled:!0})}})]}})]}})},Uu=e=>{const t=Ii($r,Bl.language);return customElements.define(Zn,class extends HTMLElement{}),document.body.hasAttribute("ontouchstart")||document.body.setAttribute("ontouchstart",""),qt(Ui.Provider,{value:t,get children(){return qt(wa.Provider,{get value(){return e.tonConnectUI},get children(){return qt(Ir.Provider,{get value(){return Bl.connector},get children(){return[qt(Qn,{}),qt(Vn,{theme:ho,get children(){return[qt(Xt,{get when(){return Bl.buttonRootId},get children(){return qt(Rn,{get mount(){return document.getElementById(Bl.buttonRootId)},get children(){return qt(Il,{})}})}}),qt(Tn,{component:Zn,get children(){return[qt(ku,{}),qt(Iu,{}),qt(Pu,{})]}})]}})]}})}})}})},Wu=()=>{setTimeout((()=>Cr({status:"opened",closeReason:null})))},ju=e=>{setTimeout((()=>Cr({status:"closed",closeReason:e})))},Bu=e=>{setTimeout((()=>kr({status:"opened",closeReason:null,walletInfo:e})))},Du=e=>{setTimeout((()=>kr({status:"closed",closeReason:e})))},Hu=e=>{setTimeout((()=>Or(e)))},Vu=()=>{setTimeout((()=>Or(null)))},Ku=()=>Tr(),Fu=()=>Ar(null),qu=(e,t)=>function(e,t,n,r={}){let o;return ft((r=>{o=r,t===document?e():wn(t,e(),t.firstChild?null:void 0,n)}),r.owner),()=>{o(),t.textContent=""}}((()=>qt(Uu,{tonConnectUI:t})),document.getElementById(e));class zu{constructor(e){__publicField(this,"connector"),__publicField(this,"setConnectRequestParametersCallback"),__publicField(this,"consumers",[]),__publicField(this,"tracker"),__publicField(this,"state",br()),this.connector=e.connector,this.tracker=e.tracker,this.setConnectRequestParametersCallback=e.setConnectRequestParametersCallback,mt((()=>{const e=br();this.state=e,this.consumers.forEach((t=>t(e)))}))}open(){return __async(this,null,(function*(){this.tracker.trackConnectionStarted();const e=(yield this.connector.getWallets()).find(Ce);return e?this.connectEmbeddedWallet(e):this.openWalletsModal()}))}close(e="action-cancelled"){"action-cancelled"===e&&this.tracker.trackConnectionError("Connection was cancelled"),ju(e)}onStateChange(e){return this.consumers.push(e),()=>{this.consumers=this.consumers.filter((t=>t!==e))}}connectEmbeddedWallet(e){const t=t=>{Ar(e),this.connector.connect({jsBridgeKey:e.jsBridgeKey},t)},n=Bl.connectRequestParameters;"loading"===(null==n?void 0:n.state)?this.setConnectRequestParametersCallback(t):t(null==n?void 0:n.value)}openWalletsModal(){return __async(this,null,(function*(){return _o()&&ko(),Wu(),new Promise((e=>{const t=this.onStateChange((n=>{const{status:r}=n;"opened"===r&&(t(),e())}))}))}))}}class Zu{constructor(e){__publicField(this,"connector"),__publicField(this,"consumers",[]),this.connector=e.connector,mt((()=>{const e=Mr();this.consumers.forEach((t=>t(e)))}))}onStateChange(e){return this.consumers.push(e),()=>{this.consumers=this.consumers.filter((t=>t!==e))}}}class Gu{constructor(e){__publicField(this,"connector"),__publicField(this,"setConnectRequestParametersCallback"),__publicField(this,"consumers",[]),__publicField(this,"tracker"),__publicField(this,"state",_r()),this.connector=e.connector,this.tracker=e.tracker,this.setConnectRequestParametersCallback=e.setConnectRequestParametersCallback,mt((()=>{const e=_r();this.state=e,this.consumers.forEach((t=>t(e)))}))}open(e){return __async(this,null,(function*(){this.tracker.trackConnectionStarted();const t=Vl(yield this.connector.getWallets(),Bl.walletsListConfiguration),n=t.find(Ce);if(!!n)return this.connectEmbeddedWallet(n);const r=t.filter(_e).find((t=>zl(t,e)));if(!!r)return this.openSingleWalletModal(r);const o=`Trying to open modal window with unknown wallet "${e}".`;throw this.tracker.trackConnectionError(o),new or(o)}))}close(e="action-cancelled"){"action-cancelled"===e&&this.tracker.trackConnectionError("Connection was cancelled"),Du("action-cancelled")}onStateChange(e){return this.consumers.push(e),()=>{this.consumers=this.consumers.filter((t=>t!==e))}}connectEmbeddedWallet(e){const t=t=>{Ar(e),this.connector.connect({jsBridgeKey:e.jsBridgeKey},t)},n=Bl.connectRequestParameters;"loading"===(null==n?void 0:n.state)?this.setConnectRequestParametersCallback(t):t(null==n?void 0:n.value)}openSingleWalletModal(e){return __async(this,null,(function*(){return _o()&&ko(),Bu(e),new Promise((e=>{const t=this.onStateChange((n=>{const{status:r}=n;"opened"===r&&(t(),e())}))}))}))}}class Yu{constructor(e){var t;__publicField(this,"eventPrefix","ton-connect-ui-"),__publicField(this,"tonConnectUiVersion"),__publicField(this,"tonConnectSdkVersion",null),__publicField(this,"eventDispatcher"),this.eventDispatcher=null!=(t=null==e?void 0:e.eventDispatcher)?t:new Ve,this.tonConnectUiVersion=e.tonConnectUiVersion,this.init().catch()}get version(){return Ae({ton_connect_sdk_lib:this.tonConnectSdkVersion,ton_connect_ui_lib:this.tonConnectUiVersion})}init(){return __async(this,null,(function*(){try{yield this.setRequestVersionHandler(),this.tonConnectSdkVersion=yield this.requestTonConnectSdkVersion()}catch(Qu){}}))}setRequestVersionHandler(){return __async(this,null,(function*(){yield this.eventDispatcher.addEventListener("ton-connect-ui-request-version",(()=>__async(this,null,(function*(){yield this.eventDispatcher.dispatchEvent("ton-connect-ui-response-version",Le(this.tonConnectUiVersion))}))))}))}requestTonConnectSdkVersion(){return __async(this,null,(function*(){return new Promise(((e,t)=>__async(this,null,(function*(){try{yield this.eventDispatcher.addEventListener("ton-connect-response-version",(t=>{e(t.detail.version)}),{once:!0}),yield this.eventDispatcher.dispatchEvent("ton-connect-request-version",{type:"request-version"})}catch(Qu){t(Qu)}}))))}))}dispatchUserActionEvent(e){var t;try{null==(t=this.eventDispatcher)||t.dispatchEvent(`${this.eventPrefix}${e.type}`,e).catch()}catch(Qu){}}trackConnectionStarted(...e){try{const t=Oe(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackConnectionCompleted(...e){try{const t=Ne(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackConnectionError(...e){try{const t=$e(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackConnectionRestoringStarted(...e){try{const t=Pe(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackConnectionRestoringCompleted(...e){try{const t=Ie(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackConnectionRestoringError(...e){try{const t=Ue(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackDisconnection(...e){try{const t=He(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackTransactionSentForSignature(...e){try{const t=je(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackTransactionSigned(...e){try{const t=Be(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}trackTransactionSigningFailed(...e){try{const t=De(this.version,...e);this.dispatchUserActionEvent(t)}catch(Qu){}}}e.BadRequestError=B,e.BrowserEventDispatcher=Ve,e.FetchWalletsError=K,e.LocalstorageNotFoundError=V,e.ParseHexError=q,e.THEME=Ln,e.TonConnect=Fe,e.TonConnectError=N,e.TonConnectUI=class{constructor(e){if(__publicField(this,"walletInfoStorage",new mr),__publicField(this,"preferredWalletStorage",new vr),__publicField(this,"tracker"),__publicField(this,"walletInfo",null),__publicField(this,"systemThemeChangeUnsubscribe",null),__publicField(this,"actionsConfiguration"),__publicField(this,"walletsList"),__publicField(this,"connectRequestParametersCallback"),__publicField(this,"connector"),__publicField(this,"modal"),__publicField(this,"singleWalletModal"),__publicField(this,"transactionModal"),__publicField(this,"connectionRestored",Promise.resolve(!1)),e&&"connector"in e&&e.connector)this.connector=e.connector;else{if(!(e&&"manifestUrl"in e&&e.manifestUrl))throw new or("You have to specify a `manifestUrl` or a `connector` in the options.");this.connector=new Fe({manifestUrl:e.manifestUrl,eventDispatcher:null==e?void 0:e.eventDispatcher})}this.tracker=new Yu({eventDispatcher:null==e?void 0:e.eventDispatcher,tonConnectUiVersion:"2.0.7"}),this.modal=new zu({connector:this.connector,tracker:this.tracker,setConnectRequestParametersCallback:e=>{this.connectRequestParametersCallback=e}}),this.singleWalletModal=new Gu({connector:this.connector,tracker:this.tracker,setConnectRequestParametersCallback:e=>{this.connectRequestParametersCallback=e}}),this.transactionModal=new Zu({connector:this.connector}),this.walletsList=this.getWallets(),this.walletsList.then((e=>{return ur((t=e.map((e=>e.imageUrl)),[...new Set(t)]));var t}));const t=this.normalizeWidgetRoot(null==e?void 0:e.widgetRootId);this.subscribeToWalletChange(),!1!==(null==e?void 0:e.restoreConnection)&&(this.connectionRestored=function(e){return __async(this,null,(function*(){return yield new Promise((e=>requestAnimationFrame(e))),e()}))}((()=>__async(this,null,(function*(){return this.tracker.trackConnectionRestoringStarted(),yield this.connector.restoreConnection(),this.connector.connected?this.tracker.trackConnectionRestoringCompleted(this.wallet):(this.tracker.trackConnectionRestoringError("Connection was not restored"),this.walletInfoStorage.removeWalletInfo()),this.connector.connected}))))),this.uiOptions=uo(e,{uiPreferences:{theme:"SYSTEM"}});const n=this.preferredWalletStorage.getPreferredWalletAppName();Dl({connector:this.connector,preferredWalletAppName:n}),qu(t,this)}static getWallets(){return Fe.getWallets()}get connected(){return this.connector.connected}get account(){return this.connector.account}get wallet(){return this.connector.wallet?__spreadValues(__spreadValues({},this.connector.wallet),this.walletInfo):null}set uiOptions(e){var t,n,r,o,i,s,a;this.checkButtonRootExist(e.buttonRootId),this.actionsConfiguration=e.actionsConfiguration,(null==(t=e.uiPreferences)?void 0:t.theme)?"SYSTEM"!==(null==(n=e.uiPreferences)?void 0:n.theme)?(null==(r=this.systemThemeChangeUnsubscribe)||r.call(this),wo(e.uiPreferences.theme,e.uiPreferences.colorsSet)):(wo(window.matchMedia&&window.matchMedia("(prefers-color-scheme: light)").matches?Ln.LIGHT:Ln.DARK,e.uiPreferences.colorsSet),this.systemThemeChangeUnsubscribe||(this.systemThemeChangeUnsubscribe=function(e){const t=t=>e(t.matches?Ln.DARK:Ln.LIGHT);return window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",t),()=>window.matchMedia("(prefers-color-scheme: dark)").removeEventListener("change",t)}(wo))):(null==(o=e.uiPreferences)?void 0:o.colorsSet)&&(s=e.uiPreferences.colorsSet,po[Ln.DARK]=uo(s[Ln.DARK],po[Ln.DARK]),po[Ln.LIGHT]=uo(s[Ln.LIGHT],po[Ln.LIGHT]),fo((e=>({colors:uo(po[e.theme],go[e.theme])})))),(null==(i=e.uiPreferences)?void 0:i.borderRadius)&&(a=e.uiPreferences.borderRadius,fo({borderRadius:a})),Dl((t=>{var n,r;const o=uo(__spreadValues(__spreadValues(__spreadValues(__spreadValues({},e.language&&{language:e.language}),!!(null==(n=e.actionsConfiguration)?void 0:n.returnStrategy)&&{returnStrategy:e.actionsConfiguration.returnStrategy}),!!(null==(r=e.actionsConfiguration)?void 0:r.twaReturnUrl)&&{twaReturnUrl:e.actionsConfiguration.twaReturnUrl}),!!e.walletsListConfiguration&&{walletsListConfiguration:e.walletsListConfiguration}),Hr(t));return void 0!==e.buttonRootId&&(o.buttonRootId=e.buttonRootId),void 0!==e.enableAndroidBackHandler&&(o.enableAndroidBackHandler=e.enableAndroidBackHandler),o}))}setConnectRequestParameters(e){var t;Dl({connectRequestParameters:e}),"ready"!==(null==e?void 0:e.state)&&e||null==(t=this.connectRequestParametersCallback)||t.call(this,null==e?void 0:e.value)}getWallets(){return __async(this,null,(function*(){return this.connector.getWallets()}))}onStatusChange(e,t){return this.connector.onStatusChange((t=>__async(this,null,(function*(){if(t){const n=yield this.getSelectedWalletInfo(t);e(__spreadValues(__spreadValues({},t),n||this.walletInfoStorage.getWalletInfo()))}else e(t)}))),t)}openModal(){return __async(this,null,(function*(){return this.modal.open()}))}closeModal(e){this.modal.close(e)}onModalStateChange(e){return this.modal.onStateChange(e)}get modalState(){return this.modal.state}openSingleWalletModal(e){return __async(this,null,(function*(){return this.singleWalletModal.open(e)}))}closeSingleWalletModal(e){this.singleWalletModal.close(e)}onSingleWalletModalStateChange(e){return this.singleWalletModal.onStateChange(e)}get singleWalletModalState(){return this.singleWalletModal.state}connectWallet(){return __async(this,null,(function*(){const e=(yield this.getWallets()).find(Ce);return e?yield this.connectEmbeddedWallet(e):yield this.connectExternalWallet()}))}disconnect(){return this.tracker.trackDisconnection(this.wallet,"dapp"),Vu(),Fu(),this.walletInfoStorage.removeWalletInfo(),this.connector.disconnect()}sendTransaction(e,t){return __async(this,null,(function*(){if(this.tracker.trackTransactionSentForSignature(this.wallet,e),!this.connected)throw this.tracker.trackTransactionSigningFailed(this.wallet,e,"Wallet was not connected"),new or("Connect wallet to send a transaction.");_o()&&ko();const{notifications:n,modals:r,returnStrategy:o,twaReturnUrl:i,skipRedirectToWallet:s}=this.getModalsAndNotificationsConfiguration(t);Hu({name:"confirm-transaction",showNotification:n.includes("before"),openModal:r.includes("before"),sent:!1});const a=()=>{l.signal.aborted||(Hu({name:"confirm-transaction",showNotification:n.includes("before"),openModal:r.includes("before"),sent:!0}),this.walletInfo&&"universalLink"in this.walletInfo&&("universal-link"===this.walletInfo.openMethod||"custom-deeplink"===this.walletInfo.openMethod)&&(te(this.walletInfo.universalLink)?yc(this.walletInfo.universalLink,{returnStrategy:o,twaReturnUrl:i||Bl.twaReturnUrl,forceRedirect:!1}):bc(this.walletInfo.universalLink,this.walletInfo.deepLink,{returnStrategy:o,forceRedirect:!1},(()=>{}))))},l=new AbortController,c=this.onTransactionModalStateChange((e=>{(null==e?void 0:e.openModal)||(c(),e||l.abort())}));try{const t=yield this.waitForSendTransaction({transaction:e,signal:l.signal},a);return this.tracker.trackTransactionSigned(this.wallet,e,t),Hu({name:"transaction-sent",showNotification:n.includes("success"),openModal:r.includes("success")}),t}catch(Qu){throw Hu({name:"transaction-canceled",showNotification:n.includes("error"),openModal:r.includes("error")}),Qu instanceof N?Qu:(console.error(Qu),new or("Unhandled error:"+Qu))}finally{c()}}))}connectEmbeddedWallet(e){return __async(this,null,(function*(){const t=t=>{Ar(e),this.connector.connect({jsBridgeKey:e.jsBridgeKey},t)},n=Bl.connectRequestParameters;return"loading"===(null==n?void 0:n.state)?this.connectRequestParametersCallback=t:t(null==n?void 0:n.value),yield this.waitForWalletConnection({ignoreErrors:!1})}))}connectExternalWallet(){return __async(this,null,(function*(){const e=new AbortController;Wu();const t=this.onModalStateChange((n=>{const{status:r,closeReason:o}=n;"opened"!==r&&(t(),"action-cancelled"===o&&e.abort())}));return yield this.waitForWalletConnection({ignoreErrors:!0,signal:e.signal})}))}waitForWalletConnection(e){return __async(this,null,(function*(){return new Promise(((t,n)=>{this.tracker.trackConnectionStarted();const{ignoreErrors:r=!1,signal:o=null}=e;if(o&&o.aborted)return this.tracker.trackConnectionError("Connection was cancelled"),n(new or("Wallet was not connected"));const i=e=>__async(this,null,(function*(){if(e)this.tracker.trackConnectionCompleted(e),a(),t(e);else{if(this.tracker.trackConnectionError("Connection was cancelled"),r)return;a(),n(new or("Wallet was not connected"))}})),s=e=>{this.tracker.trackConnectionError(e.message),r||(a(),n(e))},a=this.onStatusChange((e=>i(e)),(e=>s(e)));o&&o.addEventListener("abort",(()=>{a(),n(new or("Wallet was not connected"))}),{once:!0})}))}))}waitForSendTransaction(e,t){return __async(this,null,(function*(){return new Promise(((n,r)=>{const{transaction:o,signal:i}=e;if(i.aborted)return this.tracker.trackTransactionSigningFailed(this.wallet,o,"Transaction was cancelled"),r(new or("Transaction was not sent"));const s=e=>__async(this,null,(function*(){n(e)})),a=()=>{this.tracker.trackTransactionSigningFailed(this.wallet,o,"Transaction was cancelled"),r(new or("Transaction was not sent"))};i.addEventListener("abort",a,{once:!0}),this.connector.sendTransaction(o,{onRequestSent:t,signal:i}).then((e=>(i.removeEventListener("abort",a),s(e)))).catch((e=>(i.removeEventListener("abort",a),(e=>{r(e)})(e))))}))}))}onTransactionModalStateChange(e){return this.transactionModal.onStateChange(e)}subscribeToWalletChange(){this.connector.onStatusChange((e=>__async(this,null,(function*(){var t;e?(yield this.updateWalletInfo(e),this.setPreferredWalletAppName((null==(t=this.walletInfo)?void 0:t.appName)||e.device.appName)):this.walletInfoStorage.removeWalletInfo()}))))}setPreferredWalletAppName(e){this.preferredWalletStorage.setPreferredWalletAppName(e),Dl({preferredWalletAppName:e})}getSelectedWalletInfo(e){return __async(this,null,(function*(){let t,n=Ku();if(!n)return null;if("name"in n)t=n;else{const r=Vl(yield this.walletsList,Bl.walletsListConfiguration).find((t=>zl(t,e.device.appName)));if(!r)throw new or(`Cannot find WalletInfo for the '${e.device.appName}' wallet`);t=__spreadValues(__spreadValues({},r),n)}return t}))}updateWalletInfo(e){return __async(this,null,(function*(){const t=yield this.getSelectedWalletInfo(e);if(t)return this.walletInfo=t,void this.walletInfoStorage.setWalletInfo(t);const n=this.walletInfoStorage.getWalletInfo();this.walletInfo=n||((yield this.walletsList).find((t=>zl(t,e.device.appName)))||null)}))}normalizeWidgetRoot(e){if(!e||!document.getElementById(e)){e="tc-widget-root";const t=document.createElement("div");t.id=e,document.body.appendChild(t)}return e}checkButtonRootExist(e){if(null!=e&&!document.getElementById(e))throw new or(`${e} element not found in the document.`)}getModalsAndNotificationsConfiguration(e){var t,n,r,o,i,s;const a=["before","success","error"];let l=a;(null==(t=this.actionsConfiguration)?void 0:t.notifications)&&"all"!==(null==(n=this.actionsConfiguration)?void 0:n.notifications)&&(l=this.actionsConfiguration.notifications),(null==e?void 0:e.notifications)&&(l="all"===e.notifications?a:e.notifications);let c=["before"];(null==(r=this.actionsConfiguration)?void 0:r.modals)&&(c="all"===this.actionsConfiguration.modals?a:this.actionsConfiguration.modals),(null==e?void 0:e.modals)&&(c="all"===e.modals?a:e.modals);const u=(null==e?void 0:e.returnStrategy)||(null==(o=this.actionsConfiguration)?void 0:o.returnStrategy)||"back",d=(null==e?void 0:e.twaReturnUrl)||(null==(i=this.actionsConfiguration)?void 0:i.twaReturnUrl);let h=(null==e?void 0:e.skipRedirectToWallet)||(null==(s=this.actionsConfiguration)?void 0:s.skipRedirectToWallet)||"ios";return _o()&&(h="never"),{notifications:l,modals:c,returnStrategy:u,twaReturnUrl:d,skipRedirectToWallet:h}}},e.TonConnectUIError=or,e.UnknownAppError=D,e.UnknownError=z,e.UserRejectsError=j,e.WalletAlreadyConnectedError=U,e.WalletNotConnectedError=W,e.WalletNotInjectedError=H,e.WalletsListManager=Se,e.WrongAddressError=F,e.createConnectionCompletedEvent=Ne,e.createConnectionErrorEvent=$e,e.createConnectionRestoringCompletedEvent=Ie,e.createConnectionRestoringErrorEvent=Ue,e.createConnectionRestoringStartedEvent=Pe,e.createConnectionStartedEvent=Oe,e.createDisconnectionEvent=He,e.createRequestVersionEvent=Te,e.createResponseVersionEvent=Le,e.createTransactionSentForSignatureEvent=je,e.createTransactionSignedEvent=Be,e.createTransactionSigningFailedEvent=De,e.createVersionInfo=Ae,e.encodeTelegramUrlParameters=ne,e.isTelegramUrl=te,e.isWalletInfoCurrentlyEmbedded=Ce,e.isWalletInfoCurrentlyInjected=be,e.isWalletInfoInjectable=xe,e.isWalletInfoInjected=function(e){return"jsBridgeKey"in e},e.isWalletInfoRemote=_e,e.toUserFriendlyAddress=Ze,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
1028
1028
  //# sourceMappingURL=tonconnect-ui.min.js.map