diff --git a/crypto_challenge.txt b/crypto_challenge.txt
new file mode 100644
index 0000000..ca64a53
--- /dev/null
+++ b/crypto_challenge.txt
@@ -0,0 +1,47 @@
+## CRYPTO DEFI
+https://ipfs.copylaradio.com/ipfs/QmUtGpGeMZvwp47ftqebVmoFWCmvroy5wEtWsKvWvDWJpR/Foret%20Enchant%C3%A9e%20-%20PROJET%20ASTROPORT.pdf
+
+LES CLEFS DES TW DE LA FORET ONT ETE PERDUES
+
+Effacées de leur Station Astroport, les salt pepper manquent pour en reprendre le contrôle.
+
+http://ipfs.copylaradio.com:8080/ipns/k51qzi5uqu5dioeckikst5f8jw1tbljom6acjbw9zerl3671921krs4nm1531r
+http://ipfs.copylaradio.com:8080/ipfs/QmWWwcnfpUssFpxPu2yz67sAofXiUhB7Hyiaqj58dtoyBd
+
+➢ Ğ1Actions /ipns/k51qzi5uqu5diyc1079mmusanhqz2feyl7ofrkbn7nw80x91tg3npbpn7ls9vn
+/ipfs/QmNetNqjthacvam2zvRJnpYryB2ZYKUiAyXsHvdq2MHJh7
+
+➢ Ğ1ArrosageJardin /ipns/k51qzi5uqu5dgrkrfhckkdyfeksxnsqa6jwtomm48g2ps6yfhg75ab6mu976s6
+Qma2dykfMxWD5mUPr7dCQCfPUSscCBDtJgg5piKVMXPkLk
+
+➢ Ğ1BioDigesteur /ipns/k51qzi5uqu5dko3yxg214k3o957g2m14ih3miiry9472k7tkb55o3auyvmggnq
+Qmar1kpndh4sBZvANaCxY2RSnhtfKRQqC5cpL1ypA5hpHX
+
+
+➢ Ğ1DessinsAnimes /ipns/k51qzi5uqu5dko0pdbr21whjz531g96rsgkg46xtwvek4h4jw5wurk0s3s0z47
+QmThfC4JiPXrzJ4euFXxvYgNey7Qim4XUHyBh2y5X1pykJ
+
+➢ Ğ1EauVivante /ipns/k51qzi5uqu5dgxuink7ch8a5m3bcwwir7nw6lfievvg7l1moompj5swkk4vsjx
+QmYcQb7rQY2TJXxm7LKa5qRNnimPVZj7vctWHwg2rL3rxx
+
+➢ Ğ1Films /ipns/k51qzi5uqu5djlq9uxpjss08t2lr7n6kwn858w8wcqs1ym5wpzbo2n1j1o8xu7
+QmNMPQ46SX83CtDcCzMwUY4Z6yCVvwM9wgTGNvqSUzAC6w
+
+➢ Ğ1FiltreEauDIY /ipns/k51qzi5uqu5dll22sr6jw7nuamzc6jz9fgqoxmts3jkg1r9jdfd2j65lhp8kbn
+QmcmLV31qfDmmAwUXiMrJZfsPoEKVGNX9LKrVfuDJ8trSX
+
+➢ Ğ1Flexyourte /ipns/k51qzi5uqu5dgmwympoar0pt719akiwhh3d9ire8ad66uaxxdprmu0w6ffy7cx
+
+➢ Ğ1ForetJardin /ipns/k51qzi5uqu5djtz886qkuwcwao0zkbkfz6ct5j7k5hslzkvihk26eqx57fhane
+
+
+➢ Ğ1Ğ1Ronds /ipns/k51qzi5uqu5dmdjma9ew6vqrbqp3hrzh3aen1c37ahq4tm9tt738cpd19r86e4
+➢ Ğ1Kerterre /ipns/k51qzi5uqu5dgh0n8i418g154vhf9yhfegdmessww9eae7o11w2uaionso7zej
+➢ Ğ1ReacteurBoisHuileEau /ipns/k51qzi5uqu5dkv77ezda27py7rdoi1jnnljpv2pdjt0z9s6si5ontp2gu6480p
+➢ Ğ1Ressourcerie /ipns/k51qzi5uqu5dltlzvbhypviokoyy31gnc4zxdcrbs9bpawo9ed7sqyjlrrq203
+➢ Ğ1Solaire /ipns/k51qzi5uqu5dj0dgu97f8we2ra8h8ze4hcuw48pscfbxkfw6038zhh015q225v
+➢ Ğ1ToilettesSeches /ipns/k51qzi5uqu5dmgh97e27tpsm9yj4ko04j5labaqdsqg0yyic6ymui7v0knq57y
+
+
+ARRIVEREZ-VOUS A RACCORDER CE TW A UN ASTROPORT ?
+Des incides otn été laissés...
diff --git a/templates/twdefault.html b/templates/twdefault.html
index 59ee926..811c48a 100644
--- a/templates/twdefault.html
+++ b/templates/twdefault.html
@@ -69,68 +69,68 @@ Error message and password prompt
*/
.tc-error-form {
- font-family: sans-serif;
- color: #fff;
- z-index: 20000;
- position: fixed;
- background-color: rgb(255, 75, 75);
- border: 8px solid rgb(255, 0, 0);
- border-radius: 8px;
- width: 50%;
- margin-left: 25%;
- margin-top: 4em;
- padding: 0 2em 1em 2em;
+ font-family: sans-serif;
+ color: #fff;
+ z-index: 20000;
+ position: fixed;
+ background-color: rgb(255, 75, 75);
+ border: 8px solid rgb(255, 0, 0);
+ border-radius: 8px;
+ width: 50%;
+ margin-left: 25%;
+ margin-top: 4em;
+ padding: 0 2em 1em 2em;
}
.tc-error-form h1 {
- text-align: center;
+ text-align: center;
}
.tc-error-prompt {
- text-align: center;
- color: #000;
+ text-align: center;
+ color: #000;
}
.tc-error-message {
- overflow: auto;
- max-height: 40em;
- padding-right: 1em;
- margin: 1em 0;
- white-space: pre-line;
+ overflow: auto;
+ max-height: 40em;
+ padding-right: 1em;
+ margin: 1em 0;
+ white-space: pre-line;
}
.tc-password-wrapper {
font-family: sans-serif;
- z-index: 20000;
- position: fixed;
- text-align: center;
- width: 200px;
- top: 4em;
- left: 50%;
- margin-left: -144px; /* - width/2 - paddingHorz/2 - border */
- padding: 16px 16px 16px 16px;
- border-radius: 8px;
+ z-index: 20000;
+ position: fixed;
+ text-align: center;
+ width: 200px;
+ top: 4em;
+ left: 50%;
+ margin-left: -144px; /* - width/2 - paddingHorz/2 - border */
+ padding: 16px 16px 16px 16px;
+ border-radius: 8px;
}
.tc-password-wrapper {
- color: #000;
- text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
- background-color: rgb(197, 235, 183);
- border: 8px solid rgb(164, 197, 152);
+ color: #000;
+ text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
+ background-color: rgb(197, 235, 183);
+ border: 8px solid rgb(164, 197, 152);
}
.tc-password-wrapper form {
- text-align: left;
+ text-align: left;
}
.tc-password-wrapper h1 {
- font-size: 16px;
- line-height: 20px;
- padding-bottom: 16px;
+ font-size: 16px;
+ line-height: 20px;
+ padding-bottom: 16px;
}
.tc-password-wrapper input {
- width: 100%;
+ width: 100%;
}
@@ -658,26 +658,26 @@ $tw.boot = $tw.boot || Object.create(null);
// Detect platforms
if(!("browser" in $tw)) {
- $tw.browser = typeof(window) !== "undefined" ? {} : null;
+ $tw.browser = typeof(window) !== "undefined" ? {} : null;
}
if(!("node" in $tw)) {
- $tw.node = typeof(process) === "object" ? {} : null;
+ $tw.node = typeof(process) === "object" ? {} : null;
}
if(!("nodeWebKit" in $tw)) {
- $tw.nodeWebKit = $tw.node && global.window && global.window.nwDispatcher ? {} : null;
+ $tw.nodeWebKit = $tw.node && global.window && global.window.nwDispatcher ? {} : null;
}
// Set default boot tasks
$tw.boot.tasks = {
- trapErrors: !!($tw.browser && !$tw.node),
- readBrowserTiddlers: !!($tw.browser && !$tw.node)
+ trapErrors: !!($tw.browser && !$tw.node),
+ readBrowserTiddlers: !!($tw.browser && !$tw.node)
};
/*
Information about each module is kept in an object with these members:
- moduleType: type of module
- definition: object, function or string defining the module; see below
- exports: exports of the module, filled in after execution
+ moduleType: type of module
+ definition: object, function or string defining the module; see below
+ exports: exports of the module, filled in after execution
The `definition` can be of several types:
@@ -688,40 +688,40 @@ The `definition` can be of several types:
Each moduleInfo object is stored in two hashmaps: $tw.modules.titles and $tw.modules.types. The first is indexed by title and the second is indexed by type and then title
*/
$tw.modules = {
- titles: {}, // hashmap by module name of moduleInfo
- types: {} // hashmap by module type and then name of moduleInfo
+ titles: {}, // hashmap by module name of moduleInfo
+ types: {} // hashmap by module type and then name of moduleInfo
};
/*
Define a JavaScript tiddler module for later execution
- moduleName: name of module being defined
- moduleType: type of module
- definition: module definition; see discussion above
+ moduleName: name of module being defined
+ moduleType: type of module
+ definition: module definition; see discussion above
*/
$tw.modules.define = function(moduleName,moduleType,definition) {
- // Create the moduleInfo
- var moduleInfo = {
- moduleType: moduleType,
- definition: definition,
- exports: undefined
- };
- // If the definition is already an object we can use it as the exports
- if(typeof moduleInfo.definition === "object") {
- moduleInfo.exports = definition;
- }
- // Store the module in the titles hashmap
- if(Object.prototype.hasOwnProperty.call($tw.modules.titles,moduleName)) {
- console.log("Warning: Redefined module - " + moduleName);
- }
- $tw.modules.titles[moduleName] = moduleInfo;
- // Store the module in the types hashmap
- if(!Object.prototype.hasOwnProperty.call($tw.modules.types,moduleType)) {
- $tw.modules.types[moduleType] = {};
- }
- if(Object.prototype.hasOwnProperty.call($tw.modules.types[moduleType],moduleName)) {
- console.log("Warning: Redefined module - " + moduleName);
- }
- $tw.modules.types[moduleType][moduleName] = moduleInfo;
+ // Create the moduleInfo
+ var moduleInfo = {
+ moduleType: moduleType,
+ definition: definition,
+ exports: undefined
+ };
+ // If the definition is already an object we can use it as the exports
+ if(typeof moduleInfo.definition === "object") {
+ moduleInfo.exports = definition;
+ }
+ // Store the module in the titles hashmap
+ if(Object.prototype.hasOwnProperty.call($tw.modules.titles,moduleName)) {
+ console.log("Warning: Redefined module - " + moduleName);
+ }
+ $tw.modules.titles[moduleName] = moduleInfo;
+ // Store the module in the types hashmap
+ if(!Object.prototype.hasOwnProperty.call($tw.modules.types,moduleType)) {
+ $tw.modules.types[moduleType] = {};
+ }
+ if(Object.prototype.hasOwnProperty.call($tw.modules.types[moduleType],moduleName)) {
+ console.log("Warning: Redefined module - " + moduleName);
+ }
+ $tw.modules.types[moduleType][moduleName] = moduleInfo;
};
/*
@@ -733,14 +733,14 @@ $tw.preloadTiddlers = $tw.preloadTiddlers || [];
Convenience function for pushing a tiddler onto the preloading array
*/
$tw.preloadTiddler = function(fields) {
- $tw.preloadTiddlers.push(fields);
+ $tw.preloadTiddlers.push(fields);
};
/*
Convenience function for pushing an array of tiddlers onto the preloading array
*/
$tw.preloadTiddlerArray = function(fieldsArray) {
- $tw.preloadTiddlers.push.apply($tw.preloadTiddlers,fieldsArray);
+ $tw.preloadTiddlers.push.apply($tw.preloadTiddlers,fieldsArray);
};
return $tw;
@@ -748,17 +748,18 @@ return $tw;
});
if(typeof(exports) === "undefined") {
- // Set up $tw global for the browser
- window.$tw = _bootprefix(window.$tw);
+ // Set up $tw global for the browser
+ window.$tw = _bootprefix(window.$tw);
} else {
- // Export functionality as a module
- exports.bootprefix = _bootprefix;
+ // Export functionality as a module
+ exports.bootprefix = _bootprefix;
}
//# sourceURL=$:/boot/bootprefix.js
+
diff --git a/www/crypto.mjs b/www/crypto.mjs
index ce339ae..621c0f7 100644
--- a/www/crypto.mjs
+++ b/www/crypto.mjs
@@ -1 +1,3 @@
-import t from"tweetnacl";function a(t,r,n){var e=void 0===n?{}:n,o=e.N,i=void 0===o?16384:o,s=e.logN,f=e.r,a=void 0===f?8:f,c=e.p,u=void 0===c?1:c,l=e.dkLen,y=void 0===l?32:l,d=e.interruptStep,p=void 0===d?0:d,w=e.encoding;return new Promise((function(n,e){if(!s&&!i)return e(new Error("scrypt: missing N or logN parameter"));if(s||0===s){if(s<1||s>31)return e(new Error("scrypt: logN must be between 1 and 31"));i=1<>>0}else{if(i<2||i>h)return e(new Error("scrypt: N is out of range"));if(0!=(i&i-1))return e(Error("scrypt: N is not a power of 2"))}return u<1?e(new Error("scrypt: invalid p")):a<1?e(new Error("scrypt: invalid r")):void function(t,r){var n,e,o,i,s=t.password,f=t.salt,a=t.N,c=t.r,u=t.p,l=t.dkLen,y=t.interruptStep,d=t.encoding;function p(t){var r=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],n=1779033703,e=3144134277,o=1013904242,i=2773480762,s=1359893119,f=2600822924,h=528734635,a=1541459225,c=new Array(64);function u(t){for(var u=0,l=t.length;l>=64;){var y=n,d=e,p=o,w=i,g=s,v=f,b=h,A=a,E=void 0,m=void 0,x=void 0,_=void 0,B=void 0;for(m=0;m<16;m++)x=u+4*m,c[m]=(255&t[x])<<24|(255&t[x+1])<<16|(255&t[x+2])<<8|255&t[x+3];for(m=16;m<64;m++)_=((E=c[m-2])>>>17|E<<15)^(E>>>19|E<<13)^E>>>10,B=((E=c[m-15])>>>7|E<<25)^(E>>>18|E<<14)^E>>>3,c[m]=(_+c[m-7]|0)+(B+c[m-16]|0)|0;for(m=0;m<64;m++)_=(((g>>>6|g<<26)^(g>>>11|g<<21)^(g>>>25|g<<7))+(g&v^~g&b)|0)+(A+(r[m]+c[m]|0)|0)|0,B=((y>>>2|y<<30)^(y>>>13|y<<19)^(y>>>22|y<<10))+(y&d^y&p^d&p)|0,A=b,b=v,v=g,g=w+_|0,w=p,p=d,d=y,y=_+B|0;n=n+y|0,e=e+d|0,o=o+p|0,i=i+w|0,s=s+g|0,f=f+v|0,h=h+b|0,a=a+A|0,u+=64,l-=64}}u(t);var l,y=t.length%64,d=t.length/536870912|0,p=t.length<<3,w=y<56?56:120,g=t.slice(t.length-y,t.length);for(g.push(128),l=y+1;l>>24&255),g.push(d>>>16&255),g.push(d>>>8&255),g.push(d>>>0&255),g.push(p>>>24&255),g.push(p>>>16&255),g.push(p>>>8&255),g.push(p>>>0&255),u(g),[n>>>24&255,n>>>16&255,n>>>8&255,n>>>0&255,e>>>24&255,e>>>16&255,e>>>8&255,e>>>0&255,o>>>24&255,o>>>16&255,o>>>8&255,o>>>0&255,i>>>24&255,i>>>16&255,i>>>8&255,i>>>0&255,s>>>24&255,s>>>16&255,s>>>8&255,s>>>0&255,f>>>24&255,f>>>16&255,f>>>8&255,f>>>0&255,h>>>24&255,h>>>16&255,h>>>8&255,h>>>0&255,a>>>24&255,a>>>16&255,a>>>8&255,a>>>0&255]}function w(t,r,n){t.length>64&&(t=p(t.push?t:function(){for(var t=0,r=0,n=arguments.length;r=o-4;t--){if(i[t]++,i[t]<=255)return;i[t]=0}}for(;n>=32;)h(),f=f.concat(p(s.concat(p(i)))),n-=32;return n>0&&(h(),f=f.concat(p(s.concat(p(i))).slice(0,n))),f}function g(t,r,n,e){var o,i,s=t[0]^r[n++],f=t[1]^r[n++],h=t[2]^r[n++],a=t[3]^r[n++],c=t[4]^r[n++],u=t[5]^r[n++],l=t[6]^r[n++],y=t[7]^r[n++],d=t[8]^r[n++],p=t[9]^r[n++],w=t[10]^r[n++],g=t[11]^r[n++],v=t[12]^r[n++],b=t[13]^r[n++],A=t[14]^r[n++],E=t[15]^r[n++],m=s,x=f,_=h,B=a,U=c,S=u,P=l,k=y,M=d,I=p,T=w,R=g,z=v,N=b,L=A,K=E;for(i=0;i<8;i+=2)m^=(o=(z^=(o=(M^=(o=(U^=(o=m+z)<<7|o>>>25)+m)<<9|o>>>23)+U)<<13|o>>>19)+M)<<18|o>>>14,S^=(o=(x^=(o=(N^=(o=(I^=(o=S+x)<<7|o>>>25)+S)<<9|o>>>23)+I)<<13|o>>>19)+N)<<18|o>>>14,T^=(o=(P^=(o=(_^=(o=(L^=(o=T+P)<<7|o>>>25)+T)<<9|o>>>23)+L)<<13|o>>>19)+_)<<18|o>>>14,K^=(o=(R^=(o=(k^=(o=(B^=(o=K+R)<<7|o>>>25)+K)<<9|o>>>23)+B)<<13|o>>>19)+k)<<18|o>>>14,m^=(o=(B^=(o=(_^=(o=(x^=(o=m+B)<<7|o>>>25)+m)<<9|o>>>23)+x)<<13|o>>>19)+_)<<18|o>>>14,S^=(o=(U^=(o=(k^=(o=(P^=(o=S+U)<<7|o>>>25)+S)<<9|o>>>23)+P)<<13|o>>>19)+k)<<18|o>>>14,T^=(o=(I^=(o=(M^=(o=(R^=(o=T+I)<<7|o>>>25)+T)<<9|o>>>23)+R)<<13|o>>>19)+M)<<18|o>>>14,K^=(o=(L^=(o=(N^=(o=(z^=(o=K+L)<<7|o>>>25)+K)<<9|o>>>23)+z)<<13|o>>>19)+N)<<18|o>>>14;r[e++]=t[0]=m+s|0,r[e++]=t[1]=x+f|0,r[e++]=t[2]=_+h|0,r[e++]=t[3]=B+a|0,r[e++]=t[4]=U+c|0,r[e++]=t[5]=S+u|0,r[e++]=t[6]=P+l|0,r[e++]=t[7]=k+y|0,r[e++]=t[8]=M+d|0,r[e++]=t[9]=I+p|0,r[e++]=t[10]=T+w|0,r[e++]=t[11]=R+g|0,r[e++]=t[12]=z+v|0,r[e++]=t[13]=N+b|0,r[e++]=t[14]=L+A|0,r[e++]=t[15]=K+E|0}function v(t,r,n,e,o){for(;o--;)t[r++]=n[e++]}function b(t,r,n,e,o){for(;o--;)t[r++]^=n[e++]}function A(t,r,n,e,o){v(t,0,r,n+16*(2*o-1),16);for(var i=0;i<2*o;i+=2)g(t,r,n+16*i,e+8*i),g(t,r,n+16*i+16,e+8*i+16*o)}function E(t,r,n){return t[r+16*(2*n-1)]}function m(t){for(var r=[],n=0;n>6),r.push(128|63&e);else if(e<55296)r.push(224|e>>12),r.push(128|e>>6&63),r.push(128|63&e);else{if(n>=t.length-1)throw new Error("invalid string");n++,e=(1023&e)<<10,e|=1023&t.charCodeAt(n),e+=65536,r.push(240|e>>18),r.push(128|e>>12&63),r.push(128|e>>6&63),r.push(128|63&e)}}return r}if(c*u>=1<<30||c>h/128/u||c>h/256||a>h/128/c)throw new Error("scrypt: parameters are too large");"string"==typeof s&&(s=m(s)),"string"==typeof f&&(f=m(f)),"undefined"!=typeof Int32Array?(n=new Int32Array(64*c),e=new Int32Array(32*a*c),i=new Int32Array(16)):(n=[],e=[],i=new Array(16)),o=w(s,f,128*u*c);var x=32*c;function _(t){for(var r=0;r<32*c;r++){var e=t+4*r;n[0+r]=(255&o[e+3])<<24|(255&o[e+2])<<16|(255&o[e+1])<<8|(255&o[e+0])<<0}}function B(t,r){for(var o=t;o>>0&255,o[t+4*r+1]=e>>>8&255,o[t+4*r+2]=e>>>16&255,o[t+4*r+3]=e>>>24&255}}var P="undefined"!=typeof setImmediate?setImmediate:setTimeout;function k(t,r,n,e,o){!function i(){P((function(){e(t,t+n>>18&63]),o.push(n[r>>>12&63]),o.push(n[r>>>6&63]),o.push(n[r>>>0&63]);return e%3>0&&(o[o.length-1]="=",e%3==1&&(o[o.length-2]="=")),o.join("")}(r):"hex"===t?function(t){for(var r="0123456789abcdef".split(""),n=t.length,e=[],o=0;o>>4&15]),e.push(r[t[o]>>>0&15]);return e.join("")}(r):"binary"===t?new Uint8Array(r):r}y<=0?function(){for(var t=0;t>>0,c="input is invalid type";"object"==typeof process&&process.versions&&process.versions.node;var u="0123456789abcdef".split(""),l=[-2147483648,8388608,32768,128],y=[24,16,8,0],p=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],d=["hex","array","digest","arrayBuffer"],w=[],g=function(t,r){return function(n){return new E(r,!0).update(n)[t]()}};function b(t){var r=g("hex",t);r.create=function(){return new E(t)},r.update=function(t){return r.create().update(t)};for(var n=0;n>6,s[h++]=128|63&i):i<55296||i>=57344?(s[h++]=224|i>>12,s[h++]=128|i>>6&63,s[h++]=128|63&i):(i=65536+((1023&i)<<10|1023&t.charCodeAt(++e)),s[h++]=240|i>>18,s[h++]=128|i>>12&63,s[h++]=128|i>>6&63,s[h++]=128|63&i);t=s}else{if("object"!==o)throw new Error(c);if(null===t)throw new Error(c);t=new Uint8Array(t)}t.length>64&&(t=new E(r,!0).update(t).array());var a=[],u=[];for(e=0;e<64;++e){var l=t[e]||0;a[e]=92^l,u[e]=54^l}E.call(this,r,n),this.update(u),this.oKeyPad=a,this.inner=!0,this.sharedMemory=n}E.prototype.update=function(t){if(!this.finalized){var r,n=typeof t;if("string"!==n){if("object"!==n)throw new Error(c);if(null===t)throw new Error(c);t=new Uint8Array(t),r=!0}for(var e,o,i=0,s=t.length,f=this.blocks;i>2]|=t[i]<>2]|=e<>2]|=(192|e>>6)<>2]|=(128|63&e)<=57344?(f[o>>2]|=(224|e>>12)<>2]|=(128|e>>6&63)<>2]|=(128|63&e)<>2]|=(240|e>>18)<>2]|=(128|e>>12&63)<>2]|=(128|e>>6&63)<>2]|=(128|63&e)<=64?(this.block=f[16],this.start=o-64,this.hash(),this.hashed=!0):this.start=o}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}},E.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var t=this.blocks,r=this.lastByteIndex;t[16]=this.block,t[r>>2]|=l[3&r],this.block=t[16],r>=56&&(this.hashed||this.hash(),t[0]=this.block,t[16]=t[1]=t[2]=t[3]=t[4]=t[5]=t[6]=t[7]=t[8]=t[9]=t[10]=t[11]=t[12]=t[13]=t[14]=t[15]=0),t[14]=this.hBytes<<3|this.bytes>>>29,t[15]=this.bytes<<3,this.hash()}},E.prototype.hash=function(){var t,r,n,e,o,i,s,f,h,a=this.h0,c=this.h1,u=this.h2,l=this.h3,y=this.h4,d=this.h5,w=this.h6,g=this.h7,v=this.blocks;for(t=16;t<64;++t)r=((o=v[t-15])>>>7|o<<25)^(o>>>18|o<<14)^o>>>3,n=((o=v[t-2])>>>17|o<<15)^(o>>>19|o<<13)^o>>>10,v[t]=v[t-16]+r+v[t-7]+n<<0;for(h=c&u,t=0;t<64;t+=4)this.first?(this.is224?(i=300032,g=(o=v[0]-1413257819)-150054599<<0,l=o+24177077<<0):(i=704751109,g=(o=v[0]-210244248)-1521486534<<0,l=o+143694565<<0),this.first=!1):(r=(a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10),e=(i=a&c)^a&u^h,g=l+(o=g+(n=(y>>>6|y<<26)^(y>>>11|y<<21)^(y>>>25|y<<7))+(y&d^~y&w)+p[t]+v[t])<<0,l=o+(r+e)<<0),r=(l>>>2|l<<30)^(l>>>13|l<<19)^(l>>>22|l<<10),e=(s=l&a)^l&c^i,w=u+(o=w+(n=(g>>>6|g<<26)^(g>>>11|g<<21)^(g>>>25|g<<7))+(g&y^~g&d)+p[t+1]+v[t+1])<<0,r=((u=o+(r+e)<<0)>>>2|u<<30)^(u>>>13|u<<19)^(u>>>22|u<<10),e=(f=u&l)^u&a^s,d=c+(o=d+(n=(w>>>6|w<<26)^(w>>>11|w<<21)^(w>>>25|w<<7))+(w&g^~w&y)+p[t+2]+v[t+2])<<0,r=((c=o+(r+e)<<0)>>>2|c<<30)^(c>>>13|c<<19)^(c>>>22|c<<10),e=(h=c&u)^c&l^f,y=a+(o=y+(n=(d>>>6|d<<26)^(d>>>11|d<<21)^(d>>>25|d<<7))+(d&w^~d&g)+p[t+3]+v[t+3])<<0,a=o+(r+e)<<0;this.h0=this.h0+a<<0,this.h1=this.h1+c<<0,this.h2=this.h2+u<<0,this.h3=this.h3+l<<0,this.h4=this.h4+y<<0,this.h5=this.h5+d<<0,this.h6=this.h6+w<<0,this.h7=this.h7+g<<0},E.prototype.hex=function(){this.finalize();var t=this.h0,r=this.h1,n=this.h2,e=this.h3,o=this.h4,i=this.h5,s=this.h6,f=this.h7,h=u[t>>28&15]+u[t>>24&15]+u[t>>20&15]+u[t>>16&15]+u[t>>12&15]+u[t>>8&15]+u[t>>4&15]+u[15&t]+u[r>>28&15]+u[r>>24&15]+u[r>>20&15]+u[r>>16&15]+u[r>>12&15]+u[r>>8&15]+u[r>>4&15]+u[15&r]+u[n>>28&15]+u[n>>24&15]+u[n>>20&15]+u[n>>16&15]+u[n>>12&15]+u[n>>8&15]+u[n>>4&15]+u[15&n]+u[e>>28&15]+u[e>>24&15]+u[e>>20&15]+u[e>>16&15]+u[e>>12&15]+u[e>>8&15]+u[e>>4&15]+u[15&e]+u[o>>28&15]+u[o>>24&15]+u[o>>20&15]+u[o>>16&15]+u[o>>12&15]+u[o>>8&15]+u[o>>4&15]+u[15&o]+u[i>>28&15]+u[i>>24&15]+u[i>>20&15]+u[i>>16&15]+u[i>>12&15]+u[i>>8&15]+u[i>>4&15]+u[15&i]+u[s>>28&15]+u[s>>24&15]+u[s>>20&15]+u[s>>16&15]+u[s>>12&15]+u[s>>8&15]+u[s>>4&15]+u[15&s];return this.is224||(h+=u[f>>28&15]+u[f>>24&15]+u[f>>20&15]+u[f>>16&15]+u[f>>12&15]+u[f>>8&15]+u[f>>4&15]+u[15&f]),h},E.prototype.toString=E.prototype.hex,E.prototype.digest=function(){this.finalize();var t=this.h0,r=this.h1,n=this.h2,e=this.h3,o=this.h4,i=this.h5,s=this.h6,f=this.h7,h=[t>>24&255,t>>16&255,t>>8&255,255&t,r>>24&255,r>>16&255,r>>8&255,255&r,n>>24&255,n>>16&255,n>>8&255,255&n,e>>24&255,e>>16&255,e>>8&255,255&e,o>>24&255,o>>16&255,o>>8&255,255&o,i>>24&255,i>>16&255,i>>8&255,255&i,s>>24&255,s>>16&255,s>>8&255,255&s];return this.is224||h.push(f>>24&255,f>>16&255,f>>8&255,255&f),h},E.prototype.array=E.prototype.digest,E.prototype.arrayBuffer=function(){this.finalize();var t=new ArrayBuffer(this.is224?28:32),r=new DataView(t);return r.setUint32(0,this.h0),r.setUint32(4,this.h1),r.setUint32(8,this.h2),r.setUint32(12,this.h3),r.setUint32(16,this.h4),r.setUint32(20,this.h5),r.setUint32(24,this.h6),this.is224||r.setUint32(28,this.h7),t},m.prototype=new E,m.prototype.finalize=function(){if(E.prototype.finalize.call(this),this.inner){this.inner=!1;var t=this.array();E.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(t),E.prototype.finalize.call(this)}};const _=b();_.sha256=_,_.sha224=b(!0),_.sha256.hmac=A(),_.sha224.hmac=A(!0);var x={},U=function(t){var r,n=new Float64Array(16);if(t)for(r=0;r>24&255,t[r+1]=n>>16&255,t[r+2]=n>>8&255,t[r+3]=255&n,t[r+4]=e>>24&255,t[r+5]=e>>16&255,t[r+6]=e>>8&255,t[r+7]=255&e}function L(t,r,n,e,o){var i,s=0;for(i=0;i>>8)-1}function K(t,r,n,e){return L(t,r,n,e,16)}function j(t,r,n,e){return L(t,r,n,e,32)}function D(t,r,n,e){!function(t,r,n,e){for(var o,i=255&e[0]|(255&e[1])<<8|(255&e[2])<<16|(255&e[3])<<24,s=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,f=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,h=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,a=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,c=255&e[4]|(255&e[5])<<8|(255&e[6])<<16|(255&e[7])<<24,u=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,d=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,p=255&e[8]|(255&e[9])<<8|(255&e[10])<<16|(255&e[11])<<24,w=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,g=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,b=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,A=255&e[12]|(255&e[13])<<8|(255&e[14])<<16|(255&e[15])<<24,E=i,m=s,x=f,_=h,B=a,U=c,S=u,P=l,k=y,M=d,I=p,T=w,R=g,z=v,N=b,L=A,K=0;K<20;K+=2)E^=(o=(R^=(o=(k^=(o=(B^=(o=E+R|0)<<7|o>>>25)+E|0)<<9|o>>>23)+B|0)<<13|o>>>19)+k|0)<<18|o>>>14,U^=(o=(m^=(o=(z^=(o=(M^=(o=U+m|0)<<7|o>>>25)+U|0)<<9|o>>>23)+M|0)<<13|o>>>19)+z|0)<<18|o>>>14,I^=(o=(S^=(o=(x^=(o=(N^=(o=I+S|0)<<7|o>>>25)+I|0)<<9|o>>>23)+N|0)<<13|o>>>19)+x|0)<<18|o>>>14,L^=(o=(T^=(o=(P^=(o=(_^=(o=L+T|0)<<7|o>>>25)+L|0)<<9|o>>>23)+_|0)<<13|o>>>19)+P|0)<<18|o>>>14,E^=(o=(_^=(o=(x^=(o=(m^=(o=E+_|0)<<7|o>>>25)+E|0)<<9|o>>>23)+m|0)<<13|o>>>19)+x|0)<<18|o>>>14,U^=(o=(B^=(o=(P^=(o=(S^=(o=U+B|0)<<7|o>>>25)+U|0)<<9|o>>>23)+S|0)<<13|o>>>19)+P|0)<<18|o>>>14,I^=(o=(M^=(o=(k^=(o=(T^=(o=I+M|0)<<7|o>>>25)+I|0)<<9|o>>>23)+T|0)<<13|o>>>19)+k|0)<<18|o>>>14,L^=(o=(N^=(o=(z^=(o=(R^=(o=L+N|0)<<7|o>>>25)+L|0)<<9|o>>>23)+R|0)<<13|o>>>19)+z|0)<<18|o>>>14;E=E+i|0,m=m+s|0,x=x+f|0,_=_+h|0,B=B+a|0,U=U+c|0,S=S+u|0,P=P+l|0,k=k+y|0,M=M+d|0,I=I+p|0,T=T+w|0,R=R+g|0,z=z+v|0,N=N+b|0,L=L+A|0,t[0]=E>>>0&255,t[1]=E>>>8&255,t[2]=E>>>16&255,t[3]=E>>>24&255,t[4]=m>>>0&255,t[5]=m>>>8&255,t[6]=m>>>16&255,t[7]=m>>>24&255,t[8]=x>>>0&255,t[9]=x>>>8&255,t[10]=x>>>16&255,t[11]=x>>>24&255,t[12]=_>>>0&255,t[13]=_>>>8&255,t[14]=_>>>16&255,t[15]=_>>>24&255,t[16]=B>>>0&255,t[17]=B>>>8&255,t[18]=B>>>16&255,t[19]=B>>>24&255,t[20]=U>>>0&255,t[21]=U>>>8&255,t[22]=U>>>16&255,t[23]=U>>>24&255,t[24]=S>>>0&255,t[25]=S>>>8&255,t[26]=S>>>16&255,t[27]=S>>>24&255,t[28]=P>>>0&255,t[29]=P>>>8&255,t[30]=P>>>16&255,t[31]=P>>>24&255,t[32]=k>>>0&255,t[33]=k>>>8&255,t[34]=k>>>16&255,t[35]=k>>>24&255,t[36]=M>>>0&255,t[37]=M>>>8&255,t[38]=M>>>16&255,t[39]=M>>>24&255,t[40]=I>>>0&255,t[41]=I>>>8&255,t[42]=I>>>16&255,t[43]=I>>>24&255,t[44]=T>>>0&255,t[45]=T>>>8&255,t[46]=T>>>16&255,t[47]=T>>>24&255,t[48]=R>>>0&255,t[49]=R>>>8&255,t[50]=R>>>16&255,t[51]=R>>>24&255,t[52]=z>>>0&255,t[53]=z>>>8&255,t[54]=z>>>16&255,t[55]=z>>>24&255,t[56]=N>>>0&255,t[57]=N>>>8&255,t[58]=N>>>16&255,t[59]=N>>>24&255,t[60]=L>>>0&255,t[61]=L>>>8&255,t[62]=L>>>16&255,t[63]=L>>>24&255}(t,r,n,e)}function Z(t,r,n,e){!function(t,r,n,e){for(var o,i=255&e[0]|(255&e[1])<<8|(255&e[2])<<16|(255&e[3])<<24,s=255&n[0]|(255&n[1])<<8|(255&n[2])<<16|(255&n[3])<<24,f=255&n[4]|(255&n[5])<<8|(255&n[6])<<16|(255&n[7])<<24,h=255&n[8]|(255&n[9])<<8|(255&n[10])<<16|(255&n[11])<<24,a=255&n[12]|(255&n[13])<<8|(255&n[14])<<16|(255&n[15])<<24,c=255&e[4]|(255&e[5])<<8|(255&e[6])<<16|(255&e[7])<<24,u=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,l=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,y=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,d=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,p=255&e[8]|(255&e[9])<<8|(255&e[10])<<16|(255&e[11])<<24,w=255&n[16]|(255&n[17])<<8|(255&n[18])<<16|(255&n[19])<<24,g=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,b=255&n[28]|(255&n[29])<<8|(255&n[30])<<16|(255&n[31])<<24,A=255&e[12]|(255&e[13])<<8|(255&e[14])<<16|(255&e[15])<<24,E=0;E<20;E+=2)i^=(o=(g^=(o=(y^=(o=(a^=(o=i+g|0)<<7|o>>>25)+i|0)<<9|o>>>23)+a|0)<<13|o>>>19)+y|0)<<18|o>>>14,c^=(o=(s^=(o=(v^=(o=(d^=(o=c+s|0)<<7|o>>>25)+c|0)<<9|o>>>23)+d|0)<<13|o>>>19)+v|0)<<18|o>>>14,p^=(o=(u^=(o=(f^=(o=(b^=(o=p+u|0)<<7|o>>>25)+p|0)<<9|o>>>23)+b|0)<<13|o>>>19)+f|0)<<18|o>>>14,A^=(o=(w^=(o=(l^=(o=(h^=(o=A+w|0)<<7|o>>>25)+A|0)<<9|o>>>23)+h|0)<<13|o>>>19)+l|0)<<18|o>>>14,i^=(o=(h^=(o=(f^=(o=(s^=(o=i+h|0)<<7|o>>>25)+i|0)<<9|o>>>23)+s|0)<<13|o>>>19)+f|0)<<18|o>>>14,c^=(o=(a^=(o=(l^=(o=(u^=(o=c+a|0)<<7|o>>>25)+c|0)<<9|o>>>23)+u|0)<<13|o>>>19)+l|0)<<18|o>>>14,p^=(o=(d^=(o=(y^=(o=(w^=(o=p+d|0)<<7|o>>>25)+p|0)<<9|o>>>23)+w|0)<<13|o>>>19)+y|0)<<18|o>>>14,A^=(o=(b^=(o=(v^=(o=(g^=(o=A+b|0)<<7|o>>>25)+A|0)<<9|o>>>23)+g|0)<<13|o>>>19)+v|0)<<18|o>>>14;t[0]=i>>>0&255,t[1]=i>>>8&255,t[2]=i>>>16&255,t[3]=i>>>24&255,t[4]=c>>>0&255,t[5]=c>>>8&255,t[6]=c>>>16&255,t[7]=c>>>24&255,t[8]=p>>>0&255,t[9]=p>>>8&255,t[10]=p>>>16&255,t[11]=p>>>24&255,t[12]=A>>>0&255,t[13]=A>>>8&255,t[14]=A>>>16&255,t[15]=A>>>24&255,t[16]=u>>>0&255,t[17]=u>>>8&255,t[18]=u>>>16&255,t[19]=u>>>24&255,t[20]=l>>>0&255,t[21]=l>>>8&255,t[22]=l>>>16&255,t[23]=l>>>24&255,t[24]=y>>>0&255,t[25]=y>>>8&255,t[26]=y>>>16&255,t[27]=y>>>24&255,t[28]=d>>>0&255,t[29]=d>>>8&255,t[30]=d>>>16&255,t[31]=d>>>24&255}(t,r,n,e)}var Y=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function H(t,r,n,e,o,i,s){var f,h,a=new Uint8Array(16),c=new Uint8Array(64);for(h=0;h<16;h++)a[h]=0;for(h=0;h<8;h++)a[h]=i[h];for(;o>=64;){for(D(c,a,s,Y),h=0;h<64;h++)t[r+h]=n[e+h]^c[h];for(f=1,h=8;h<16;h++)f=f+(255&a[h])|0,a[h]=255&f,f>>>=8;o-=64,r+=64,e+=64}if(o>0)for(D(c,a,s,Y),h=0;h=64;){for(D(h,f,o,Y),s=0;s<64;s++)t[r+s]=h[s];for(i=1,s=8;s<16;s++)i=i+(255&f[s])|0,f[s]=255&i,i>>>=8;n-=64,r+=64}if(n>0)for(D(h,f,o,Y),s=0;s>>13|n<<3),e=255&t[4]|(255&t[5])<<8,this.r[2]=7939&(n>>>10|e<<6),o=255&t[6]|(255&t[7])<<8,this.r[3]=8191&(e>>>7|o<<9),i=255&t[8]|(255&t[9])<<8,this.r[4]=255&(o>>>4|i<<12),this.r[5]=i>>>1&8190,s=255&t[10]|(255&t[11])<<8,this.r[6]=8191&(i>>>14|s<<2),f=255&t[12]|(255&t[13])<<8,this.r[7]=8065&(s>>>11|f<<5),h=255&t[14]|(255&t[15])<<8,this.r[8]=8191&(f>>>8|h<<8),this.r[9]=h>>>5&127,this.pad[0]=255&t[16]|(255&t[17])<<8,this.pad[1]=255&t[18]|(255&t[19])<<8,this.pad[2]=255&t[20]|(255&t[21])<<8,this.pad[3]=255&t[22]|(255&t[23])<<8,this.pad[4]=255&t[24]|(255&t[25])<<8,this.pad[5]=255&t[26]|(255&t[27])<<8,this.pad[6]=255&t[28]|(255&t[29])<<8,this.pad[7]=255&t[30]|(255&t[31])<<8};function q(t,r,n,e,o,i){var s=new F(i);return s.update(n,e,o),s.finish(t,r),0}function W(t,r,n,e,o,i){var s=new Uint8Array(16);return q(s,0,n,e,o,i),K(t,r,s,0)}function J(t,r,n,e,o){var i;if(n<32)return-1;for(V(t,0,r,0,n,e,o),q(t,16,t,32,n-32,t),i=0;i<16;i++)t[i]=0;return 0}function X(t,r,n,e,o){var i,s=new Uint8Array(32);if(n<32)return-1;if(G(s,0,32,e,o),0!==W(r,16,r,32,n-32,s))return-1;for(V(t,0,r,0,n,e,o),i=0;i<32;i++)t[i]=0;return 0}function Q(t,r){var n;for(n=0;n<16;n++)t[n]=0|r[n]}function tt(t){var r,n,e=1;for(r=0;r<16;r++)n=t[r]+e+65535,e=Math.floor(n/65536),t[r]=n-65536*e;t[0]+=e-1+37*(e-1)}function rt(t,r,n){for(var e,o=~(n-1),i=0;i<16;i++)e=o&(t[i]^r[i]),t[i]^=e,r[i]^=e}function et(t,r){var n,e,o,i=U(),s=U();for(n=0;n<16;n++)s[n]=r[n];for(tt(s),tt(s),tt(s),e=0;e<2;e++){for(i[0]=s[0]-65517,n=1;n<15;n++)i[n]=s[n]-65535-(i[n-1]>>16&1),i[n-1]&=65535;i[15]=s[15]-32767-(i[14]>>16&1),o=i[15]>>16&1,i[14]&=65535,rt(s,i,1-o)}for(n=0;n<16;n++)t[2*n]=255&s[n],t[2*n+1]=s[n]>>8}function nt(t,r){var n=new Uint8Array(32),e=new Uint8Array(32);return et(n,t),et(e,r),j(n,0,e,0)}function ot(t){var r=new Uint8Array(32);return et(r,t),1&r[0]}function it(t,r){var n;for(n=0;n<16;n++)t[n]=r[2*n]+(r[2*n+1]<<8);t[15]&=32767}function st(t,r,n){for(var e=0;e<16;e++)t[e]=r[e]+n[e]}function ft(t,r,n){for(var e=0;e<16;e++)t[e]=r[e]-n[e]}function at(t,r,n){var e,o,i=0,s=0,f=0,h=0,a=0,c=0,u=0,l=0,y=0,d=0,p=0,w=0,g=0,v=0,b=0,A=0,E=0,m=0,x=0,_=0,B=0,U=0,S=0,P=0,k=0,M=0,I=0,T=0,R=0,z=0,N=0,L=n[0],K=n[1],O=n[2],Z=n[3],C=n[4],Y=n[5],H=n[6],F=n[7],D=n[8],G=n[9],V=n[10],q=n[11],j=n[12],W=n[13],$=n[14],J=n[15];i+=(e=r[0])*L,s+=e*K,f+=e*O,h+=e*Z,a+=e*C,c+=e*Y,u+=e*H,l+=e*F,y+=e*D,d+=e*G,p+=e*V,w+=e*q,g+=e*j,v+=e*W,b+=e*$,A+=e*J,s+=(e=r[1])*L,f+=e*K,h+=e*O,a+=e*Z,c+=e*C,u+=e*Y,l+=e*H,y+=e*F,d+=e*D,p+=e*G,w+=e*V,g+=e*q,v+=e*j,b+=e*W,A+=e*$,E+=e*J,f+=(e=r[2])*L,h+=e*K,a+=e*O,c+=e*Z,u+=e*C,l+=e*Y,y+=e*H,d+=e*F,p+=e*D,w+=e*G,g+=e*V,v+=e*q,b+=e*j,A+=e*W,E+=e*$,m+=e*J,h+=(e=r[3])*L,a+=e*K,c+=e*O,u+=e*Z,l+=e*C,y+=e*Y,d+=e*H,p+=e*F,w+=e*D,g+=e*G,v+=e*V,b+=e*q,A+=e*j,E+=e*W,m+=e*$,x+=e*J,a+=(e=r[4])*L,c+=e*K,u+=e*O,l+=e*Z,y+=e*C,d+=e*Y,p+=e*H,w+=e*F,g+=e*D,v+=e*G,b+=e*V,A+=e*q,E+=e*j,m+=e*W,x+=e*$,_+=e*J,c+=(e=r[5])*L,u+=e*K,l+=e*O,y+=e*Z,d+=e*C,p+=e*Y,w+=e*H,g+=e*F,v+=e*D,b+=e*G,A+=e*V,E+=e*q,m+=e*j,x+=e*W,_+=e*$,B+=e*J,u+=(e=r[6])*L,l+=e*K,y+=e*O,d+=e*Z,p+=e*C,w+=e*Y,g+=e*H,v+=e*F,b+=e*D,A+=e*G,E+=e*V,m+=e*q,x+=e*j,_+=e*W,B+=e*$,U+=e*J,l+=(e=r[7])*L,y+=e*K,d+=e*O,p+=e*Z,w+=e*C,g+=e*Y,v+=e*H,b+=e*F,A+=e*D,E+=e*G,m+=e*V,x+=e*q,_+=e*j,B+=e*W,U+=e*$,S+=e*J,y+=(e=r[8])*L,d+=e*K,p+=e*O,w+=e*Z,g+=e*C,v+=e*Y,b+=e*H,A+=e*F,E+=e*D,m+=e*G,x+=e*V,_+=e*q,B+=e*j,U+=e*W,S+=e*$,P+=e*J,d+=(e=r[9])*L,p+=e*K,w+=e*O,g+=e*Z,v+=e*C,b+=e*Y,A+=e*H,E+=e*F,m+=e*D,x+=e*G,_+=e*V,B+=e*q,U+=e*j,S+=e*W,P+=e*$,k+=e*J,p+=(e=r[10])*L,w+=e*K,g+=e*O,v+=e*Z,b+=e*C,A+=e*Y,E+=e*H,m+=e*F,x+=e*D,_+=e*G,B+=e*V,U+=e*q,S+=e*j,P+=e*W,k+=e*$,M+=e*J,w+=(e=r[11])*L,g+=e*K,v+=e*O,b+=e*Z,A+=e*C,E+=e*Y,m+=e*H,x+=e*F,_+=e*D,B+=e*G,U+=e*V,S+=e*q,P+=e*j,k+=e*W,M+=e*$,I+=e*J,g+=(e=r[12])*L,v+=e*K,b+=e*O,A+=e*Z,E+=e*C,m+=e*Y,x+=e*H,_+=e*F,B+=e*D,U+=e*G,S+=e*V,P+=e*q,k+=e*j,M+=e*W,I+=e*$,T+=e*J,v+=(e=r[13])*L,b+=e*K,A+=e*O,E+=e*Z,m+=e*C,x+=e*Y,_+=e*H,B+=e*F,U+=e*D,S+=e*G,P+=e*V,k+=e*q,M+=e*j,I+=e*W,T+=e*$,R+=e*J,b+=(e=r[14])*L,A+=e*K,E+=e*O,m+=e*Z,x+=e*C,_+=e*Y,B+=e*H,U+=e*F,S+=e*D,P+=e*G,k+=e*V,M+=e*q,I+=e*j,T+=e*W,R+=e*$,z+=e*J,A+=(e=r[15])*L,s+=38*(m+=e*O),f+=38*(x+=e*Z),h+=38*(_+=e*C),a+=38*(B+=e*Y),c+=38*(U+=e*H),u+=38*(S+=e*F),l+=38*(P+=e*D),y+=38*(k+=e*G),d+=38*(M+=e*V),p+=38*(I+=e*q),w+=38*(T+=e*j),g+=38*(R+=e*W),v+=38*(z+=e*$),b+=38*(N+=e*J),i=(e=(i+=38*(E+=e*K))+(o=1)+65535)-65536*(o=Math.floor(e/65536)),s=(e=s+o+65535)-65536*(o=Math.floor(e/65536)),f=(e=f+o+65535)-65536*(o=Math.floor(e/65536)),h=(e=h+o+65535)-65536*(o=Math.floor(e/65536)),a=(e=a+o+65535)-65536*(o=Math.floor(e/65536)),c=(e=c+o+65535)-65536*(o=Math.floor(e/65536)),u=(e=u+o+65535)-65536*(o=Math.floor(e/65536)),l=(e=l+o+65535)-65536*(o=Math.floor(e/65536)),y=(e=y+o+65535)-65536*(o=Math.floor(e/65536)),d=(e=d+o+65535)-65536*(o=Math.floor(e/65536)),p=(e=p+o+65535)-65536*(o=Math.floor(e/65536)),w=(e=w+o+65535)-65536*(o=Math.floor(e/65536)),g=(e=g+o+65535)-65536*(o=Math.floor(e/65536)),v=(e=v+o+65535)-65536*(o=Math.floor(e/65536)),b=(e=b+o+65535)-65536*(o=Math.floor(e/65536)),A=(e=A+o+65535)-65536*(o=Math.floor(e/65536)),i=(e=(i+=o-1+37*(o-1))+(o=1)+65535)-65536*(o=Math.floor(e/65536)),s=(e=s+o+65535)-65536*(o=Math.floor(e/65536)),f=(e=f+o+65535)-65536*(o=Math.floor(e/65536)),h=(e=h+o+65535)-65536*(o=Math.floor(e/65536)),a=(e=a+o+65535)-65536*(o=Math.floor(e/65536)),c=(e=c+o+65535)-65536*(o=Math.floor(e/65536)),u=(e=u+o+65535)-65536*(o=Math.floor(e/65536)),l=(e=l+o+65535)-65536*(o=Math.floor(e/65536)),y=(e=y+o+65535)-65536*(o=Math.floor(e/65536)),d=(e=d+o+65535)-65536*(o=Math.floor(e/65536)),p=(e=p+o+65535)-65536*(o=Math.floor(e/65536)),w=(e=w+o+65535)-65536*(o=Math.floor(e/65536)),g=(e=g+o+65535)-65536*(o=Math.floor(e/65536)),v=(e=v+o+65535)-65536*(o=Math.floor(e/65536)),b=(e=b+o+65535)-65536*(o=Math.floor(e/65536)),A=(e=A+o+65535)-65536*(o=Math.floor(e/65536)),i+=o-1+37*(o-1),t[0]=i,t[1]=s,t[2]=f,t[3]=h,t[4]=a,t[5]=c,t[6]=u,t[7]=l,t[8]=y,t[9]=d,t[10]=p,t[11]=w,t[12]=g,t[13]=v,t[14]=b,t[15]=A}function ht(t,r){at(t,r,r)}function ct(t,r){var n,e=U();for(n=0;n<16;n++)e[n]=r[n];for(n=253;n>=0;n--)ht(e,e),2!==n&&4!==n&&at(e,e,r);for(n=0;n<16;n++)t[n]=e[n]}function ut(t,r){var n,e=U();for(n=0;n<16;n++)e[n]=r[n];for(n=250;n>=0;n--)ht(e,e),1!==n&&at(e,e,r);for(n=0;n<16;n++)t[n]=e[n]}function lt(t,r,n){var e,o,i=new Uint8Array(32),s=new Float64Array(80),f=U(),h=U(),a=U(),c=U(),u=U(),l=U();for(o=0;o<31;o++)i[o]=r[o];for(i[31]=127&r[31]|64,i[0]&=248,it(s,n),o=0;o<16;o++)h[o]=s[o],c[o]=f[o]=a[o]=0;for(f[0]=c[0]=1,o=254;o>=0;--o)rt(f,h,e=i[o>>>3]>>>(7&o)&1),rt(a,c,e),st(u,f,a),ft(f,f,a),st(a,h,c),ft(h,h,c),ht(c,u),ht(l,f),at(f,a,f),at(a,h,u),st(u,f,a),ft(f,f,a),ht(h,f),ft(a,c,l),at(f,a,C),st(f,f,c),at(a,a,f),at(f,c,l),at(c,h,s),ht(h,u),rt(f,h,e),rt(a,c,e);for(o=0;o<16;o++)s[o+16]=f[o],s[o+32]=a[o],s[o+48]=h[o],s[o+64]=c[o];var y=s.subarray(32),d=s.subarray(16);return ct(y,y),at(d,d,y),et(t,d),0}function yt(t,r){return lt(t,r,O)}function pt(t,r){return B(r,32),yt(t,r)}function dt(t,r,n){var e=new Uint8Array(32);return lt(e,n,r),Z(t,S,e,Y)}F.prototype.blocks=function(t,r,n){for(var e,o,i,s,f,h,a,c,u,l,y,d,p,w,g,v,b,A,E,m=this.fin?0:2048,x=this.h[0],_=this.h[1],B=this.h[2],U=this.h[3],S=this.h[4],P=this.h[5],k=this.h[6],M=this.h[7],I=this.h[8],T=this.h[9],R=this.r[0],z=this.r[1],N=this.r[2],L=this.r[3],K=this.r[4],O=this.r[5],Z=this.r[6],C=this.r[7],Y=this.r[8],H=this.r[9];n>=16;)l=u=0,l+=(x+=8191&(e=255&t[r+0]|(255&t[r+1])<<8))*R,l+=(_+=8191&(e>>>13|(o=255&t[r+2]|(255&t[r+3])<<8)<<3))*(5*H),l+=(B+=8191&(o>>>10|(i=255&t[r+4]|(255&t[r+5])<<8)<<6))*(5*Y),l+=(U+=8191&(i>>>7|(s=255&t[r+6]|(255&t[r+7])<<8)<<9))*(5*C),u=(l+=(S+=8191&(s>>>4|(f=255&t[r+8]|(255&t[r+9])<<8)<<12))*(5*Z))>>>13,l&=8191,l+=(P+=f>>>1&8191)*(5*O),l+=(k+=8191&(f>>>14|(h=255&t[r+10]|(255&t[r+11])<<8)<<2))*(5*K),l+=(M+=8191&(h>>>11|(a=255&t[r+12]|(255&t[r+13])<<8)<<5))*(5*L),l+=(I+=8191&(a>>>8|(c=255&t[r+14]|(255&t[r+15])<<8)<<8))*(5*N),y=u+=(l+=(T+=c>>>5|m)*(5*z))>>>13,y+=x*z,y+=_*R,y+=B*(5*H),y+=U*(5*Y),u=(y+=S*(5*C))>>>13,y&=8191,y+=P*(5*Z),y+=k*(5*O),y+=M*(5*K),y+=I*(5*L),u+=(y+=T*(5*N))>>>13,y&=8191,d=u,d+=x*N,d+=_*z,d+=B*R,d+=U*(5*H),u=(d+=S*(5*Y))>>>13,d&=8191,d+=P*(5*C),d+=k*(5*Z),d+=M*(5*O),d+=I*(5*K),p=u+=(d+=T*(5*L))>>>13,p+=x*L,p+=_*N,p+=B*z,p+=U*R,u=(p+=S*(5*H))>>>13,p&=8191,p+=P*(5*Y),p+=k*(5*C),p+=M*(5*Z),p+=I*(5*O),w=u+=(p+=T*(5*K))>>>13,w+=x*K,w+=_*L,w+=B*N,w+=U*z,u=(w+=S*R)>>>13,w&=8191,w+=P*(5*H),w+=k*(5*Y),w+=M*(5*C),w+=I*(5*Z),g=u+=(w+=T*(5*O))>>>13,g+=x*O,g+=_*K,g+=B*L,g+=U*N,u=(g+=S*z)>>>13,g&=8191,g+=P*R,g+=k*(5*H),g+=M*(5*Y),g+=I*(5*C),v=u+=(g+=T*(5*Z))>>>13,v+=x*Z,v+=_*O,v+=B*K,v+=U*L,u=(v+=S*N)>>>13,v&=8191,v+=P*z,v+=k*R,v+=M*(5*H),v+=I*(5*Y),b=u+=(v+=T*(5*C))>>>13,b+=x*C,b+=_*Z,b+=B*O,b+=U*K,u=(b+=S*L)>>>13,b&=8191,b+=P*N,b+=k*z,b+=M*R,b+=I*(5*H),A=u+=(b+=T*(5*Y))>>>13,A+=x*Y,A+=_*C,A+=B*Z,A+=U*O,u=(A+=S*K)>>>13,A&=8191,A+=P*L,A+=k*N,A+=M*z,A+=I*R,E=u+=(A+=T*(5*H))>>>13,E+=x*H,E+=_*Y,E+=B*C,E+=U*Z,u=(E+=S*O)>>>13,E&=8191,E+=P*K,E+=k*L,E+=M*N,E+=I*z,x=l=8191&(u=(u=((u+=(E+=T*R)>>>13)<<2)+u|0)+(l&=8191)|0),_=y+=u>>>=13,B=d&=8191,U=p&=8191,S=w&=8191,P=g&=8191,k=v&=8191,M=b&=8191,I=A&=8191,T=E&=8191,r+=16,n-=16;this.h[0]=x,this.h[1]=_,this.h[2]=B,this.h[3]=U,this.h[4]=S,this.h[5]=P,this.h[6]=k,this.h[7]=M,this.h[8]=I,this.h[9]=T},F.prototype.finish=function(t,r){var n,e,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,e=(1^n)-1,i=0;i<10;i++)s[i]&=e;for(e=~e,i=0;i<10;i++)this.h[i]=this.h[i]&e|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;t[r+0]=this.h[0]>>>0&255,t[r+1]=this.h[0]>>>8&255,t[r+2]=this.h[1]>>>0&255,t[r+3]=this.h[1]>>>8&255,t[r+4]=this.h[2]>>>0&255,t[r+5]=this.h[2]>>>8&255,t[r+6]=this.h[3]>>>0&255,t[r+7]=this.h[3]>>>8&255,t[r+8]=this.h[4]>>>0&255,t[r+9]=this.h[4]>>>8&255,t[r+10]=this.h[5]>>>0&255,t[r+11]=this.h[5]>>>8&255,t[r+12]=this.h[6]>>>0&255,t[r+13]=this.h[6]>>>8&255,t[r+14]=this.h[7]>>>0&255,t[r+15]=this.h[7]>>>8&255},F.prototype.update=function(t,r,n){var e,o;if(this.leftover){for((o=16-this.leftover)>n&&(o=n),e=0;e=16&&(o=n-n%16,this.blocks(t,r,o),r+=o,n-=o),n){for(e=0;e=128;){for(m=0;m<16;m++)x=8*m+j,M[m]=n[x+0]<<24|n[x+1]<<16|n[x+2]<<8|n[x+3],I[m]=n[x+4]<<24|n[x+5]<<16|n[x+6]<<8|n[x+7];for(m=0;m<80;m++)if(o=T,i=R,s=z,f=N,h=L,a=K,c=O,l=C,y=Y,d=H,p=F,w=D,g=G,v=V,U=65535&(B=q),S=B>>>16,P=65535&(_=Z),k=_>>>16,U+=65535&(B=(D>>>14|L<<18)^(D>>>18|L<<14)^(L>>>9|D<<23)),S+=B>>>16,P+=65535&(_=(L>>>14|D<<18)^(L>>>18|D<<14)^(D>>>9|L<<23)),k+=_>>>16,U+=65535&(B=D&G^~D&V),S+=B>>>16,P+=65535&(_=L&K^~L&O),k+=_>>>16,U+=65535&(B=bt[2*m+1]),S+=B>>>16,P+=65535&(_=bt[2*m]),k+=_>>>16,_=M[m%16],S+=(B=I[m%16])>>>16,P+=65535&_,k+=_>>>16,P+=(S+=(U+=65535&B)>>>16)>>>16,U=65535&(B=E=65535&U|S<<16),S=B>>>16,P=65535&(_=A=65535&P|(k+=P>>>16)<<16),k=_>>>16,U+=65535&(B=(C>>>28|T<<4)^(T>>>2|C<<30)^(T>>>7|C<<25)),S+=B>>>16,P+=65535&(_=(T>>>28|C<<4)^(C>>>2|T<<30)^(C>>>7|T<<25)),k+=_>>>16,S+=(B=C&Y^C&H^Y&H)>>>16,P+=65535&(_=T&R^T&z^R&z),k+=_>>>16,u=65535&(P+=(S+=(U+=65535&B)>>>16)>>>16)|(k+=P>>>16)<<16,b=65535&U|S<<16,U=65535&(B=p),S=B>>>16,P=65535&(_=f),k=_>>>16,S+=(B=E)>>>16,P+=65535&(_=A),k+=_>>>16,R=o,z=i,N=s,L=f=65535&(P+=(S+=(U+=65535&B)>>>16)>>>16)|(k+=P>>>16)<<16,K=h,O=a,Z=c,T=u,Y=l,H=y,F=d,D=p=65535&U|S<<16,G=w,V=g,q=v,C=b,m%16==15)for(x=0;x<16;x++)_=M[x],U=65535&(B=I[x]),S=B>>>16,P=65535&_,k=_>>>16,_=M[(x+9)%16],U+=65535&(B=I[(x+9)%16]),S+=B>>>16,P+=65535&_,k+=_>>>16,A=M[(x+1)%16],U+=65535&(B=((E=I[(x+1)%16])>>>1|A<<31)^(E>>>8|A<<24)^(E>>>7|A<<25)),S+=B>>>16,P+=65535&(_=(A>>>1|E<<31)^(A>>>8|E<<24)^A>>>7),k+=_>>>16,A=M[(x+14)%16],S+=(B=((E=I[(x+14)%16])>>>19|A<<13)^(A>>>29|E<<3)^(E>>>6|A<<26))>>>16,P+=65535&(_=(A>>>19|E<<13)^(E>>>29|A<<3)^A>>>6),k+=_>>>16,k+=(P+=(S+=(U+=65535&B)>>>16)>>>16)>>>16,M[x]=65535&P|k<<16,I[x]=65535&U|S<<16;U=65535&(B=C),S=B>>>16,P=65535&(_=T),k=_>>>16,_=t[0],S+=(B=r[0])>>>16,P+=65535&_,k+=_>>>16,k+=(P+=(S+=(U+=65535&B)>>>16)>>>16)>>>16,t[0]=T=65535&P|k<<16,r[0]=C=65535&U|S<<16,U=65535&(B=Y),S=B>>>16,P=65535&(_=R),k=_>>>16,_=t[1],S+=(B=r[1])>>>16,P+=65535&_,k+=_>>>16,k+=(P+=(S+=(U+=65535&B)>>>16)>>>16)>>>16,t[1]=R=65535&P|k<<16,r[1]=Y=65535&U|S<<16,U=65535&(B=H),S=B>>>16,P=65535&(_=z),k=_>>>16,_=t[2],S+=(B=r[2])>>>16,P+=65535&_,k+=_>>>16,k+=(P+=(S+=(U+=65535&B)>>>16)>>>16)>>>16,t[2]=z=65535&P|k<<16,r[2]=H=65535&U|S<<16,U=65535&(B=F),S=B>>>16,P=65535&(_=N),k=_>>>16,_=t[3],S+=(B=r[3])>>>16,P+=65535&_,k+=_>>>16,k+=(P+=(S+=(U+=65535&B)>>>16)>>>16)>>>16,t[3]=N=65535&P|k<<16,r[3]=F=65535&U|S<<16,U=65535&(B=D),S=B>>>16,P=65535&(_=L),k=_>>>16,_=t[4],S+=(B=r[4])>>>16,P+=65535&_,k+=_>>>16,k+=(P+=(S+=(U+=65535&B)>>>16)>>>16)>>>16,t[4]=L=65535&P|k<<16,r[4]=D=65535&U|S<<16,U=65535&(B=G),S=B>>>16,P=65535&(_=K),k=_>>>16,_=t[5],S+=(B=r[5])>>>16,P+=65535&_,k+=_>>>16,k+=(P+=(S+=(U+=65535&B)>>>16)>>>16)>>>16,t[5]=K=65535&P|k<<16,r[5]=G=65535&U|S<<16,U=65535&(B=V),S=B>>>16,P=65535&(_=O),k=_>>>16,_=t[6],S+=(B=r[6])>>>16,P+=65535&_,k+=_>>>16,k+=(P+=(S+=(U+=65535&B)>>>16)>>>16)>>>16,t[6]=O=65535&P|k<<16,r[6]=V=65535&U|S<<16,U=65535&(B=q),S=B>>>16,P=65535&(_=Z),k=_>>>16,_=t[7],S+=(B=r[7])>>>16,P+=65535&_,k+=_>>>16,k+=(P+=(S+=(U+=65535&B)>>>16)>>>16)>>>16,t[7]=Z=65535&P|k<<16,r[7]=q=65535&U|S<<16,j+=128,e-=128}return e}function At(t,r,n){var e,o=new Int32Array(8),i=new Int32Array(8),s=new Uint8Array(256),f=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,vt(o,i,r,n),n%=128,e=0;e=0;--o)mt(t,r,e=n[o/8|0]>>(7&o)&1),Et(r,t),Et(t,t),mt(t,r,e)}function Ut(t,r){var n=[U(),U(),U(),U()];Q(n[0],T),Q(n[1],R),Q(n[2],k),at(n[3],T,R),xt(t,n,r)}function Bt(t,r,n){var e,o=new Uint8Array(64),i=[U(),U(),U(),U()];for(n||B(r,32),At(o,r,32),o[0]&=248,o[31]&=127,o[31]|=64,Ut(i,o),_t(t,i),e=0;e<32;e++)r[e+32]=t[e];return 0}var St=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 Ot(t,r){var n,e,o,i;for(e=63;e>=32;--e){for(n=0,o=e-32,i=e-12;o>4)*St[o],n=r[o]>>8,r[o]&=255;for(o=0;o<32;o++)r[o]-=n*St[o];for(e=0;e<32;e++)r[e+1]+=r[e]>>8,t[e]=255&r[e]}function Pt(t){var r,n=new Float64Array(64);for(r=0;r<64;r++)n[r]=t[r];for(r=0;r<64;r++)t[r]=0;Ot(t,n)}function kt(t,r,n,e){var o,i,s=new Uint8Array(64),f=new Uint8Array(64),h=new Uint8Array(64),a=new Float64Array(64),c=[U(),U(),U(),U()];At(s,e,32),s[0]&=248,s[31]&=127,s[31]|=64;var u=n+64;for(o=0;o>7&&ft(t[0],P,t[0]),at(t[3],t[0],t[1]),0)}(h,e))return-1;for(o=0;o=0},x.sign.keyPair=function(){var t=new Uint8Array(32),r=new Uint8Array(64);return Bt(t,r),{publicKey:t,secretKey:r}},x.sign.keyPair.fromSecretKey=function(t){if(It(t),64!==t.length)throw new Error("bad secret key size");for(var r=new Uint8Array(32),n=0;n>16&1),i[n-1]&=65535;i[15]=s[15]-32767-(i[14]>>16&1),o=i[15]>>16&1,i[14]&=65535,Dt(s,i,1-o)}for(n=0;n<16;n++)t[2*n]=255&s[n],t[2*n+1]=s[n]>>8}function Vt(t,r){var n=new Uint8Array(32),e=new Uint8Array(32);return Gt(n,t),Gt(e,r),function(t,r,n,e,o){var i,s=0;for(i=0;i<32;i++)s|=t[0+i]^n[0+i];return(1&s-1>>>8)-1}(n,0,e)}function Ft(t){var r=new Uint8Array(32),n=[Rt(),Rt(),Rt(),Rt()],e=Rt(),o=Rt();if(function(t,r){var n,e,o=Rt(),i=Rt(),s=Rt(),f=Rt(),h=Rt(),a=Rt(),c=Rt();return function(t,r){var n;for(n=0;n<16;n++)t[n]=0|r[n]}(t[2],Nt),function(t,r){var n;for(n=0;n<16;n++)t[n]=r[2*n]+(r[2*n+1]<<8);t[15]&=32767}(t[1],r),$t(s,t[1]),Ht(f,s,Lt),Yt(s,s,t[2]),Zt(f,t[2],f),$t(h,f),$t(a,h),Ht(c,a,h),Ht(o,c,s),Ht(o,o,f),function(t,r){var n,e=Rt();for(n=0;n<16;n++)e[n]=r[n];for(n=250;n>=0;n--)$t(e,e),1!==n&&Ht(e,e,r);for(n=0;n<16;n++)t[n]=e[n]}(o,o),Ht(o,o,s),Ht(o,o,f),Ht(o,o,f),Ht(t[0],o,f),$t(i,t[0]),Ht(i,i,f),Vt(i,s)&&Ht(t[0],t[0],Kt),$t(i,t[0]),Ht(i,i,f),Vt(i,s)?-1:(n=t[0],Gt(e=new Uint8Array(32),n),(1&e[0])==r[31]>>7&&Yt(t[0],Mt,t[0]),Ht(t[3],t[0],t[1]),0)}(n,t))return null;var i=n[1];return Zt(e,Nt,i),Yt(o,Nt,i),function(t,r){var n,e=Rt();for(n=0;n<16;n++)e[n]=r[n];for(n=253;n>=0;n--)$t(e,e),2!==n&&4!==n&&Ht(e,e,r);for(n=0;n<16;n++)t[n]=e[n]}(o,o),Ht(e,e,o),Gt(r,e),r}function qt(r){var n,e=new Uint8Array(64),o=new Uint8Array(32);for(t.lowlevel.crypto_hash(e,r,32),e[0]&=248,e[31]&=127,e[31]|=64,n=0;n<32;n++)o[n]=e[n];for(n=0;n<64;n++)e[n]=0;return o}const r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",e=s("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),n=s("0123456789abcdef"),o=s(r),i={encode:t=>{const n="string"==typeof t?(new TextEncoder).encode(t):new Uint8Array(t),e=3*Math.ceil(n.length/3),i=new Uint8Array(e);i.set(n);const s=o.encode(i).split(""),f=4*e/3;for(;s.length{const r=o.decode(t.replace(/=/g,"A")),n=Math.ceil(3*t.length/4),e=(t.match(/=/g)||[]).length,i=r.length-n;return r.slice(i,r.length-e)}};function s(t){const r={ALPHABET_MAP:{},BASE:t.length,LEADER:t.charAt(0),ALPHABET:t};for(let t=0;tfunction(t,r){if(0===t.length)return"";const n=[0];for(let e of t){for(let t=0;t0;)n.push(e%r.BASE),e=e/r.BASE|0}let e="";for(let n=0;0===t[n]&&n=0;--t)e+=r.ALPHABET[n[t]];return e}(t,r),decode:t=>function(t,r){const n=function(t,r){if("string"!=typeof t)throw new TypeError("Expected String");if(0===t.length)return new Uint8Array(0);const n=[0];for(const e of t){const t=r.ALPHABET_MAP[e];if(void 0===t)return;let o=t;for(let t=0;t>=8;for(;o>0;)n.push(255&o),o>>=8}for(let e=0;t[e]===r.LEADER&&ee===Wt?t:(n[o]=t,xr(t*e,r))),Jt),r);return t.reduceRight(((t,e,o)=>e===Wt?t:(n[o]=xr(t*n[o],r),xr(t*e,r))),e),n}(t.map((t=>t.z)));return t.map(((t,n)=>t.toAffine(r[n])))}static normalizeZ(t){return this.toAffineBatch(t).map(this.fromAffine)}equals(t){ar(t);const{x:r,y:n,z:e}=this,{x:o,y:i,z:s}=t,f=xr(r*s),h=xr(o*e),a=xr(n*s),c=xr(i*e);return f===h&&a===c}negate(){return new fr(xr(-this.x),this.y,this.z,xr(-this.t))}double(){const{x:t,y:r,z:n}=this,{a:e}=tr,o=xr(t*t),i=xr(r*r),s=xr(Xt*xr(n*n)),f=xr(e*o),h=t+r,a=xr(xr(h*h)-o-i),c=f+i,u=c-s,l=f-i,y=xr(a*u),d=xr(c*l),p=xr(a*l),w=xr(u*c);return new fr(y,d,w,p)}add(t){ar(t);const{x:r,y:n,z:e,t:o}=this,{x:i,y:s,z:f,t:h}=t,a=xr((n-r)*(s+i)),c=xr((n+r)*(s-i)),u=xr(c-a);if(u===Wt)return this.double();const l=xr(e*Xt*h),y=xr(o*Xt*f),d=y+l,p=c+a,w=y-l,g=xr(d*u),v=xr(p*w),b=xr(d*w),A=xr(u*p);return new fr(g,v,A,b)}subtract(t){return this.add(t.negate())}precomputeWindow(t){const r=1+256/t,n=[];let e=this,o=e;for(let i=0;i>=c,s>f&&(s-=a,t+=Jt),0===s){let t=e[n];r%2&&(t=t.negate()),i=i.add(t)}else{let t=e[n+Math.abs(s)-1];s<0&&(t=t.negate()),o=o.add(t)}}return fr.normalizeZ([o,i])[0]}multiply(t,r){return this.wNAF(kr(t,tr.l),r)}multiplyUnsafe(t){let r=kr(t,tr.l,!1);const n=fr.BASE,e=fr.ZERO;if(r===Wt)return e;if(this.equals(e)||r===Jt)return this;if(this.equals(n))return this.wNAF(r);let o=e,i=this;for(;r>Wt;)r&Jt&&(o=o.add(i)),i=i.double(),r>>=Jt;return o}isSmallOrder(){return this.multiplyUnsafe(tr.h).equals(fr.ZERO)}isTorsionFree(){return this.multiplyUnsafe(tr.l).equals(fr.ZERO)}toAffine(t=Ur(this.z)){const{x:r,y:n,z:e}=this,o=xr(r*t),i=xr(n*t);if(xr(e*t)!==Jt)throw new Error("invZ was invalid");return new yr(o,i)}fromRistrettoBytes(){cr()}toRistrettoBytes(){cr()}fromRistrettoHash(){cr()}}function ar(t){if(!(t instanceof fr))throw new TypeError("ExtendedPoint expected")}function hr(t){if(!(t instanceof ur))throw new TypeError("RistrettoPoint expected")}function cr(){throw new Error("Legacy method: switch to RistrettoPoint")}fr.BASE=new fr(tr.Gx,tr.Gy,Jt,xr(tr.Gx*tr.Gy)),fr.ZERO=new fr(Wt,Jt,Jt,Wt);class ur{constructor(t){this.ep=t}static calcElligatorRistrettoMap(t){const{d:r}=tr,n=xr(er*t*t),e=xr((n+Jt)*ir);let o=BigInt(-1);const i=xr((o-r*n)*xr(n+r));let{isValid:s,value:f}=Sr(e,i),h=xr(f*t);Ar(h)||(h=xr(-h)),s||(f=h),s||(o=n);const a=xr(o*(n-Jt)*sr-i),c=f*f,u=xr((f+f)*i),l=xr(a*nr),y=xr(Jt-c),d=xr(Jt+c);return new fr(xr(u*d),xr(y*l),xr(l*d),xr(u*y))}static hashToCurve(t){const r=_r((t=Pr(t,64)).slice(0,32)),n=this.calcElligatorRistrettoMap(r),e=_r(t.slice(32,64)),o=this.calcElligatorRistrettoMap(e);return new ur(n.add(o))}static fromHex(t){t=Pr(t,32);const{a:r,d:n}=tr,e="RistrettoPoint.fromHex: the hex is not valid encoding of RistrettoPoint",o=_r(t);if(!function(t,r){if(t.length!==r.length)return!1;for(let n=0;n=e)throw new Error("Expected 0 < hex < P");if(!r&&i>=rr)throw new Error("Expected 0 < hex < 2**256");const s=xr(i*i),f=xr(s-Jt),h=xr(n*s+Jt);let{isValid:a,value:c}=Sr(f,h);if(!a)throw new Error("Point.fromHex: invalid y coordinate");const u=(c&Jt)===Jt;return 0!=(128&t[31])!==u&&(c=xr(-c)),new yr(c,i)}static async fromPrivateKey(t){return(await zr(t)).point}toRawBytes(){const t=vr(this.y);return t[31]|=this.x&Jt?128:0,t}toHex(){return wr(this.toRawBytes())}toX25519(){const{y:t}=this;return vr(xr((Jt+t)*Ur(Jt-t)))}isTorsionFree(){return fr.fromAffine(this).isTorsionFree()}equals(t){return this.x===t.x&&this.y===t.y}negate(){return new yr(xr(-this.x),this.y)}add(t){return fr.fromAffine(this).add(fr.fromAffine(t)).toAffine()}subtract(t){return this.add(t.negate())}multiply(t){return fr.fromAffine(this).multiply(t,this).toAffine()}}function pr(...t){if(!t.every((t=>t instanceof Uint8Array)))throw new Error("Expected Uint8Array list");if(1===t.length)return t[0];const r=t.reduce(((t,r)=>t+r.length),0),n=new Uint8Array(r);for(let r=0,e=0;rr.toString(16).padStart(2,"0")));function wr(t){if(!(t instanceof Uint8Array))throw new Error("Uint8Array expected");let r="";for(let n=0;n=Wt?n:r+n}function Ur(t,r=tr.P){if(t===Wt||r<=Wt)throw new Error(`invert: expected positive integers, got n=${t} mod=${r}`);let n=xr(t,r),e=r,o=Wt,i=Jt;for(;n!==Wt;){const t=e%n,r=o-i*(e/n);e=n,n=t,o=i,i=r}if(e!==Jt)throw new Error("invert: does not exist");return xr(o,r)}function Br(t,r){const{P:n}=tr;let e=t;for(;r-- >Wt;)e*=e,e%=n;return e}function Sr(t,r){const n=xr(r*r*r),e=function(t){const{P:r}=tr,n=BigInt(5),e=BigInt(10),o=BigInt(20),i=BigInt(40),s=BigInt(80),f=t*t%r*t%r,h=Br(f,Xt)*f%r,a=Br(h,Jt)*t%r,c=Br(a,n)*a%r,u=Br(c,e)*c%r,l=Br(u,o)*u%r,y=Br(l,i)*l%r,d=Br(y,s)*y%r,p=Br(d,s)*y%r,w=Br(p,e)*c%r;return{pow_p_5_8:Br(w,Xt)*t%r,b2:f}}(t*xr(n*n*r)).pow_p_5_8;let o=xr(t*n*e);const i=xr(r*o*o),s=o,f=xr(o*er),h=i===t,a=i===xr(-t),c=i===xr(-t*er);return h&&(o=s),(a||c)&&(o=f),Ar(o)&&(o=xr(-o)),{isValid:h||a,value:o}}function Or(t){return Sr(Jt,t)}function Pr(t,r){const n=t instanceof Uint8Array?Uint8Array.from(t):gr(t);if("number"==typeof r&&n.length!==r)throw new Error(`Expected ${r} bytes`);return n}function kr(t,r,n=!0){if(!r)throw new TypeError("Specify max value");if("number"==typeof t&&Number.isSafeInteger(t)&&(t=BigInt(t)),"bigint"==typeof t&&t{if((t=Pr(t)).length<40||t.length>1024)throw new Error("Expected 40-1024 bytes of private key as per FIPS 186");return xr(Er(t),tr.l-Jt)+Jt},randomBytes:(t=32)=>{if(se.web)return se.web.getRandomValues(new Uint8Array(t));throw new Error("The environment doesn't have randomBytes function")},randomPrivateKey:()=>Tr.randomBytes(32),sha512:async(...t)=>{const r=pr(...t);if(se.web){const t=await se.web.subtle.digest("SHA-512",r.buffer);return new Uint8Array(t)}throw new Error("The environment doesn't have sha512 function")},precompute(t=8,r=yr.BASE){const n=r.equals(yr.BASE)?r:new yr(r.x,r.y);return n._setWindowSize(t),n.multiply(Xt),n},sha512Sync:void 0};Object.defineProperties(Tr,{sha512Sync:{configurable:!1,get:()=>Cr,set(t){Cr||(Cr=t)}}}),x.setPRNG((async function(t,r){if(!t&&!r)return Math.random();r||"number"!=typeof t||(r=t,t=new Uint8Array(r));const n=r,e=new Uint8Array(r);for(let t=0;t44)throw new ie("too_long","Base58 string too long, see rfc/0009_Duniter_Blockchain_Protocol_V11.md#public-key for details.");if(!/^[A-HJ-NP-Za-km-z1-9]+$/.test(t))throw new ie("not_b58","Character out of base 58, see rfc/0009_Duniter_Blockchain_Protocol_V11.md#public-key for details.");if(e.decode(t).length>32)throw new ie("too_long","binary key too long, see rfc/0009_Duniter_Blockchain_Protocol_V11.md#public-key for details.");return!0}function Wr(t){const r=$r(t);try{yr.fromHex(r)}catch(t){throw new ie("bad_ed25519_point",`Invalid public key : not a valid ed25519 point RFC8032 5.1.3 https://www.rfc-editor.org/rfc/rfc8032#page-11 Internal:${t}`)}return!0}function en(t){try{return Wr(t)}catch(t){return!1}}function Jr(t,r=!0){if(!t)throw new ie("empty","Invalid public key : empty input.");let n;try{const r=$r(t);n="string"==typeof t?t:e.encode(r)}catch(t){if(t.message.match(/base58/))throw new ie("not_b58","Character out of base 58, see rfc/0009_Duniter_Blockchain_Protocol_V11.md#public-key for details.");if("RangeError"===t.name)throw new ie("too_long","Binary key too long, see rfc/0009_Duniter_Blockchain_Protocol_V11.md#public-key for details.");throw t}return!r||(qr(n),Wr(n),!0)}function on(t){try{return Jr(t)}catch(t){return!1}}async function sn(t,r){const n=await Xr(t.trim()+"\n",r);return`${t.trim()}\n${n}`}function Xr(t,r,n="b64"){const o=Qr((new TextEncoder).encode(t),Vr(r).slice(0,32));switch(n.toLocaleLowerCase()){case"raw":case"array":case"uint8array":return o;case"b64":return i.encode(o);case"b58":return e.encode(o);default:throw new Error(`OutputFormat ${n} not handled.`)}}function Qr(t,r){const n=Dr(r);return x.sign.detached(t,n.secretKey)}function te(t,r){return"string"==typeof t?r(t):t}function re(t){const r=new TextEncoder;return"string"==typeof t?r.encode(t):t}function fn(t){return te(t,i.decode)}function ee(t){return te(t,e.decode)}function ne(t){return(new TextDecoder).decode(t)}function oe(t){return ee(t).slice(0,32)}function hn(t,r,o,s=0,f=""){const h=f?e.decode(f):x.randomBytes(24);console.log("Défini : ",o);const a=Ft($r(o)),c=qt(oe(r)),u=t=>i.encode(x.box(re(t),h,a,c)),l=e.encode(Dr(oe(r)).publicKey),y=s||Math.trunc(Date.now()/1e3),d={nonce:e.encode(h),issuer:l,recipient:o,time:y,version:2};return t.title&&(d.title=u(t.title)),t.content&&(d.content=u(t.content)),d.hash=n.encode(Nr.digest(JSON.stringify(d))).toUpperCase(),d.signature=Xr(d.hash,r),d}function an(t,r){const n=e.decode(t.nonce),o=qt(oe(r)),s=Ft($r(t.issuer)),f=t=>ne(x.box.open(i.decode(t),n,s,o)),h={};return t.content&&(h.content=f(t.content)),t.title&&(h.title=f(t.title)),h}class ie extends Error{constructor(t,r){super(r),this.name=t}}export{e as b58,ee as b58orBin2bin,Gr as b58pubKey2bin,Vr as b58secretKey2bin,i as b64,fn as b64orBin2bin,ne as bin2str,qr as checkDuniterPubKey,Wr as checkEd25519PubKey,Jr as checkKey,tn as idSecPass2cleanKeys,Kr as idSecPass2rawAll,nn as isDuniterPubKey,en as isEd25519PubKey,on as isPubKey,Mr as mockRandom,Fr as onlyPubKey,$r as pubKey2bin,Yr as pubKey2checksum,rn as pubKey2shortKey,jr as raw2b58,Qr as rawSign,Zr as saltPass2seed,Dr as seed2keyPair,b as sha256,Xr as sign,sn as signDocument,Hr as sliceInitialsZero,re as strOrBin2bin,an as textDecrypt,hn as textEncrypt,te as typedStrOrBin2Bin};
\ No newline at end of file
+var Qt=function(){for(var t=0,r=0,e=arguments.length;r31)return P(new Error("scrypt: logN must be between 1 and 31"));x=1<>>0}else{if(x<2||x>cf)return P(new Error("scrypt: N is out of range"));if((x&x-1)!==0)return P(Error("scrypt: N is not a power of 2"))}if(d<1)return P(new Error("scrypt: invalid p"));if(a<1)return P(new Error("scrypt: invalid r"));kt({password:t,salt:r,N:x,r:a,p:d,dkLen:p,interruptStep:B,encoding:I},O)})}function kt(t,r){var e=t.password,f=t.salt,n=t.N,x=t.r,o=t.p,s=t.dkLen,a=t.interruptStep,b=t.encoding;function d(c){var i=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],y=1779033703,l=3144134277,N=1013904242,z=2773480762,X=1359893119,m=2600822924,W=528734635,V=1541459225,Q=new Array(64);function f0(L0){for(var J0=0,A=L0.length;A>=64;){var d0=y,w0=l,v0=N,R0=z,a0=X,E0=m,A0=W,I0=V,s0=void 0,e0=void 0,p0=void 0,g0=void 0,F0=void 0;for(e0=0;e0<16;e0++)p0=J0+e0*4,Q[e0]=(L0[p0]&255)<<24|(L0[p0+1]&255)<<16|(L0[p0+2]&255)<<8|L0[p0+3]&255;for(e0=16;e0<64;e0++)s0=Q[e0-2],g0=(s0>>>17|s0<<32-17)^(s0>>>19|s0<<32-19)^s0>>>10,s0=Q[e0-15],F0=(s0>>>7|s0<<32-7)^(s0>>>18|s0<<32-18)^s0>>>3,Q[e0]=(g0+Q[e0-7]|0)+(F0+Q[e0-16]|0)|0;for(e0=0;e0<64;e0++)g0=(((a0>>>6|a0<<32-6)^(a0>>>11|a0<<32-11)^(a0>>>25|a0<<32-25))+(a0&E0^~a0&A0)|0)+(I0+(i[e0]+Q[e0]|0)|0)|0,F0=((d0>>>2|d0<<32-2)^(d0>>>13|d0<<32-13)^(d0>>>22|d0<<32-22))+(d0&w0^d0&v0^w0&v0)|0,I0=A0,A0=E0,E0=a0,a0=R0+g0|0,R0=v0,v0=w0,w0=d0,d0=g0+F0|0;y=y+d0|0,l=l+w0|0,N=N+v0|0,z=z+R0|0,X=X+a0|0,m=m+E0|0,W=W+A0|0,V=V+I0|0,J0+=64,A-=64}}f0(c);var k,r0=c.length%64,n0=c.length/536870912|0,x0=c.length<<3,i0=r0<56?56:120,y0=c.slice(c.length-r0,c.length);for(y0.push(128),k=r0+1;k>>24&255),y0.push(n0>>>16&255),y0.push(n0>>>8&255),y0.push(n0>>>0&255),y0.push(x0>>>24&255),y0.push(x0>>>16&255),y0.push(x0>>>8&255),y0.push(x0>>>0&255),f0(y0),[y>>>24&255,y>>>16&255,y>>>8&255,y>>>0&255,l>>>24&255,l>>>16&255,l>>>8&255,l>>>0&255,N>>>24&255,N>>>16&255,N>>>8&255,N>>>0&255,z>>>24&255,z>>>16&255,z>>>8&255,z>>>0&255,X>>>24&255,X>>>16&255,X>>>8&255,X>>>0&255,m>>>24&255,m>>>16&255,m>>>8&255,m>>>0&255,W>>>24&255,W>>>16&255,W>>>8&255,W>>>0&255,V>>>24&255,V>>>16&255,V>>>8&255,V>>>0&255]}function S(c,i,y){c.length>64&&(c=d(c.push?c:Qt(c)));var l,N=64+i.length+4,z=new Array(N),X=new Array(64),m=[];for(l=0;l<64;l++)z[l]=54;for(l=0;l=N-4;V--){if(z[V]++,z[V]<=255)return;z[V]=0}}for(;y>=32;)W(),m=m.concat(d(X.concat(d(z)))),y-=32;return y>0&&(W(),m=m.concat(d(X.concat(d(z))).slice(0,y))),m}function p(c,i,y,l){var N=c[0]^i[y++],z=c[1]^i[y++],X=c[2]^i[y++],m=c[3]^i[y++],W=c[4]^i[y++],V=c[5]^i[y++],Q=c[6]^i[y++],f0=c[7]^i[y++],k=c[8]^i[y++],r0=c[9]^i[y++],n0=c[10]^i[y++],x0=c[11]^i[y++],i0=c[12]^i[y++],y0=c[13]^i[y++],L0=c[14]^i[y++],J0=c[15]^i[y++],A,d0,w0=N,v0=z,R0=X,a0=m,E0=W,A0=V,I0=Q,s0=f0,e0=k,p0=r0,g0=n0,F0=x0,C0=i0,j0=y0,Z0=L0,D0=J0;for(d0=0;d0<8;d0+=2)A=w0+C0,E0^=A<<7|A>>>32-7,A=E0+w0,e0^=A<<9|A>>>32-9,A=e0+E0,C0^=A<<13|A>>>32-13,A=C0+e0,w0^=A<<18|A>>>32-18,A=A0+v0,p0^=A<<7|A>>>32-7,A=p0+A0,j0^=A<<9|A>>>32-9,A=j0+p0,v0^=A<<13|A>>>32-13,A=v0+j0,A0^=A<<18|A>>>32-18,A=g0+I0,Z0^=A<<7|A>>>32-7,A=Z0+g0,R0^=A<<9|A>>>32-9,A=R0+Z0,I0^=A<<13|A>>>32-13,A=I0+R0,g0^=A<<18|A>>>32-18,A=D0+F0,a0^=A<<7|A>>>32-7,A=a0+D0,s0^=A<<9|A>>>32-9,A=s0+a0,F0^=A<<13|A>>>32-13,A=F0+s0,D0^=A<<18|A>>>32-18,A=w0+a0,v0^=A<<7|A>>>32-7,A=v0+w0,R0^=A<<9|A>>>32-9,A=R0+v0,a0^=A<<13|A>>>32-13,A=a0+R0,w0^=A<<18|A>>>32-18,A=A0+E0,I0^=A<<7|A>>>32-7,A=I0+A0,s0^=A<<9|A>>>32-9,A=s0+I0,E0^=A<<13|A>>>32-13,A=E0+s0,A0^=A<<18|A>>>32-18,A=g0+p0,F0^=A<<7|A>>>32-7,A=F0+g0,e0^=A<<9|A>>>32-9,A=e0+F0,p0^=A<<13|A>>>32-13,A=p0+e0,g0^=A<<18|A>>>32-18,A=D0+Z0,C0^=A<<7|A>>>32-7,A=C0+D0,j0^=A<<9|A>>>32-9,A=j0+C0,Z0^=A<<13|A>>>32-13,A=Z0+j0,D0^=A<<18|A>>>32-18;i[l++]=c[0]=w0+N|0,i[l++]=c[1]=v0+z|0,i[l++]=c[2]=R0+X|0,i[l++]=c[3]=a0+m|0,i[l++]=c[4]=E0+W|0,i[l++]=c[5]=A0+V|0,i[l++]=c[6]=I0+Q|0,i[l++]=c[7]=s0+f0|0,i[l++]=c[8]=e0+k|0,i[l++]=c[9]=p0+r0|0,i[l++]=c[10]=g0+n0|0,i[l++]=c[11]=F0+x0|0,i[l++]=c[12]=C0+i0|0,i[l++]=c[13]=j0+y0|0,i[l++]=c[14]=Z0+L0|0,i[l++]=c[15]=D0+J0|0}function g(c,i,y,l,N){for(;N--;)c[i++]=y[l++]}function B(c,i,y,l,N){for(;N--;)c[i++]^=y[l++]}function I(c,i,y,l,N){g(c,0,i,y+(2*N-1)*16,16);for(var z=0;z<2*N;z+=2)p(c,i,y+z*16,l+z*8),p(c,i,y+z*16+16,l+z*8+N*16)}function O(c,i,y){return c[i+(2*y-1)*16]}function P(c){for(var i=[],y=0;y>6),i.push(128|l&63);else if(l<55296)i.push(224|l>>12),i.push(128|l>>6&63),i.push(128|l&63);else{if(y>=c.length-1)throw new Error("invalid string");y++,l=(l&1023)<<10,l|=c.charCodeAt(y)&1023,l+=65536,i.push(240|l>>18),i.push(128|l>>12&63),i.push(128|l>>6&63),i.push(128|l&63)}}return i}function j(c){for(var i="0123456789abcdef".split(""),y=c.length,l=[],N=0;N>>4&15]),l.push(i[c[N]>>>0&15]);return l.join("")}function D(c){for(var i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),y=c.length,l=[],N=0,z,X,m,W;N>>3*6&63]),l.push(i[W>>>2*6&63]),l.push(i[W>>>1*6&63]),l.push(i[W>>>0*6&63]);return y%3>0&&(l[l.length-1]="=",y%3===1&&(l[l.length-2]="=")),l.join("")}var U,L,T,Y;if(x*o>=1<<30||x>cf/128/o||x>cf/256||n>cf/128/x)throw new Error("scrypt: parameters are too large");typeof e=="string"&&(e=P(e)),typeof f=="string"&&(f=P(f)),typeof Int32Array<"u"?(U=new Int32Array(64*x),L=new Int32Array(32*n*x),Y=new Int32Array(16)):(U=[],L=[],Y=new Array(16)),T=S(e,f,o*128*x);var M=0,R=32*x;function h(c){for(var i=0;i<32*x;i++){var y=c+i*4;U[M+i]=(T[y+3]&255)<<24|(T[y+2]&255)<<16|(T[y+1]&255)<<8|(T[y+0]&255)<<0}}function u(c,i){for(var y=c;y>>0&255,T[c+i*4+1]=y>>>8&255,T[c+i*4+2]=y>>>16&255,T[c+i*4+3]=y>>>24&255}}var v=typeof setImmediate<"u"?setImmediate:setTimeout;function F(c,i,y,l,N){(function z(){v(function(){l(c,c+y>>0;var uf="input is invalid type";typeof process=="object"&&process.versions&&process.versions.node;var K="0123456789abcdef".split(""),fr=[-2147483648,8388608,32768,128],N0=[24,16,8,0],sf=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],lf=["hex","array","digest","arrayBuffer"],c0=[],ht=function(t,r){return function(e){return new h0(r,!0).update(e)[t]()}};function Zf(t){var r=ht("hex",t);r.create=function(){return new h0(t)},r.update=function(n){return r.create().update(n)};for(var e=0;e>2]|=t[n]<>2]|=f<>2]|=(192|f>>6)<>2]|=(128|f&63)<=57344?(s[x>>2]|=(224|f>>12)<>2]|=(128|f>>6&63)<>2]|=(128|f&63)<>2]|=(240|f>>18)<>2]|=(128|f>>12&63)<>2]|=(128|f>>6&63)<>2]|=(128|f&63)<=64?(this.block=s[16],this.start=x-64,this.hash(),this.hashed=!0):this.start=x}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}};h0.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var t=this.blocks,r=this.lastByteIndex;t[16]=this.block,t[r>>2]|=fr[r&3],this.block=t[16],r>=56&&(this.hashed||this.hash(),t[0]=this.block,t[16]=t[1]=t[2]=t[3]=t[4]=t[5]=t[6]=t[7]=t[8]=t[9]=t[10]=t[11]=t[12]=t[13]=t[14]=t[15]=0),t[14]=this.hBytes<<3|this.bytes>>>29,t[15]=this.bytes<<3,this.hash()}};h0.prototype.hash=function(){var t=this.h0,r=this.h1,e=this.h2,f=this.h3,n=this.h4,x=this.h5,o=this.h6,s=this.h7,a=this.blocks,b,d,S,p,g,B,I,O,P,j,D;for(b=16;b<64;++b)g=a[b-15],d=(g>>>7|g<<25)^(g>>>18|g<<14)^g>>>3,g=a[b-2],S=(g>>>17|g<<15)^(g>>>19|g<<13)^g>>>10,a[b]=a[b-16]+d+a[b-7]+S<<0;for(D=r&e,b=0;b<64;b+=4)this.first?(this.is224?(O=300032,g=a[0]-1413257819,s=g-150054599<<0,f=g+24177077<<0):(O=704751109,g=a[0]-210244248,s=g-1521486534<<0,f=g+143694565<<0),this.first=!1):(d=(t>>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10),S=(n>>>6|n<<26)^(n>>>11|n<<21)^(n>>>25|n<<7),O=t&r,p=O^t&e^D,I=n&x^~n&o,g=s+S+I+sf[b]+a[b],B=d+p,s=f+g<<0,f=g+B<<0),d=(f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10),S=(s>>>6|s<<26)^(s>>>11|s<<21)^(s>>>25|s<<7),P=f&t,p=P^f&r^O,I=s&n^~s&x,g=o+S+I+sf[b+1]+a[b+1],B=d+p,o=e+g<<0,e=g+B<<0,d=(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10),S=(o>>>6|o<<26)^(o>>>11|o<<21)^(o>>>25|o<<7),j=e&f,p=j^e&t^P,I=o&s^~o&n,g=x+S+I+sf[b+2]+a[b+2],B=d+p,x=r+g<<0,r=g+B<<0,d=(r>>>2|r<<30)^(r>>>13|r<<19)^(r>>>22|r<<10),S=(x>>>6|x<<26)^(x>>>11|x<<21)^(x>>>25|x<<7),D=r&e,p=D^r&f^j,I=x&o^~x&s,g=n+S+I+sf[b+3]+a[b+3],B=d+p,n=t+g<<0,t=g+B<<0;this.h0=this.h0+t<<0,this.h1=this.h1+r<<0,this.h2=this.h2+e<<0,this.h3=this.h3+f<<0,this.h4=this.h4+n<<0,this.h5=this.h5+x<<0,this.h6=this.h6+o<<0,this.h7=this.h7+s<<0};h0.prototype.hex=function(){this.finalize();var t=this.h0,r=this.h1,e=this.h2,f=this.h3,n=this.h4,x=this.h5,o=this.h6,s=this.h7,a=K[t>>28&15]+K[t>>24&15]+K[t>>20&15]+K[t>>16&15]+K[t>>12&15]+K[t>>8&15]+K[t>>4&15]+K[t&15]+K[r>>28&15]+K[r>>24&15]+K[r>>20&15]+K[r>>16&15]+K[r>>12&15]+K[r>>8&15]+K[r>>4&15]+K[r&15]+K[e>>28&15]+K[e>>24&15]+K[e>>20&15]+K[e>>16&15]+K[e>>12&15]+K[e>>8&15]+K[e>>4&15]+K[e&15]+K[f>>28&15]+K[f>>24&15]+K[f>>20&15]+K[f>>16&15]+K[f>>12&15]+K[f>>8&15]+K[f>>4&15]+K[f&15]+K[n>>28&15]+K[n>>24&15]+K[n>>20&15]+K[n>>16&15]+K[n>>12&15]+K[n>>8&15]+K[n>>4&15]+K[n&15]+K[x>>28&15]+K[x>>24&15]+K[x>>20&15]+K[x>>16&15]+K[x>>12&15]+K[x>>8&15]+K[x>>4&15]+K[x&15]+K[o>>28&15]+K[o>>24&15]+K[o>>20&15]+K[o>>16&15]+K[o>>12&15]+K[o>>8&15]+K[o>>4&15]+K[o&15];return this.is224||(a+=K[s>>28&15]+K[s>>24&15]+K[s>>20&15]+K[s>>16&15]+K[s>>12&15]+K[s>>8&15]+K[s>>4&15]+K[s&15]),a};h0.prototype.toString=h0.prototype.hex;h0.prototype.digest=function(){this.finalize();var t=this.h0,r=this.h1,e=this.h2,f=this.h3,n=this.h4,x=this.h5,o=this.h6,s=this.h7,a=[t>>24&255,t>>16&255,t>>8&255,t&255,r>>24&255,r>>16&255,r>>8&255,r&255,e>>24&255,e>>16&255,e>>8&255,e&255,f>>24&255,f>>16&255,f>>8&255,f&255,n>>24&255,n>>16&255,n>>8&255,n&255,x>>24&255,x>>16&255,x>>8&255,x&255,o>>24&255,o>>16&255,o>>8&255,o&255];return this.is224||a.push(s>>24&255,s>>16&255,s>>8&255,s&255),a};h0.prototype.array=h0.prototype.digest;h0.prototype.arrayBuffer=function(){this.finalize();var t=new ArrayBuffer(this.is224?28:32),r=new DataView(t);return r.setUint32(0,this.h0),r.setUint32(4,this.h1),r.setUint32(8,this.h2),r.setUint32(12,this.h3),r.setUint32(16,this.h4),r.setUint32(20,this.h5),r.setUint32(24,this.h6),this.is224||r.setUint32(28,this.h7),t};function wf(t,r,e){var f,n=typeof t;if(n==="string"){var x=[],o=t.length,s=0,a;for(f=0;f>6,x[s++]=128|a&63):a<55296||a>=57344?(x[s++]=224|a>>12,x[s++]=128|a>>6&63,x[s++]=128|a&63):(a=65536+((a&1023)<<10|t.charCodeAt(++f)&1023),x[s++]=240|a>>18,x[s++]=128|a>>12&63,x[s++]=128|a>>6&63,x[s++]=128|a&63);t=x}else if(n==="object"){if(t===null)throw new Error(uf);t=new Uint8Array(t)}else throw new Error(uf);t.length>64&&(t=new h0(r,!0).update(t).array());var b=[],d=[];for(f=0;f<64;++f){var S=t[f]||0;b[f]=92^S,d[f]=54^S}h0.call(this,r,e),this.update(d),this.oKeyPad=b,this.inner=!0,this.sharedMemory=e}wf.prototype=new h0;wf.prototype.finalize=function(){if(h0.prototype.finalize.call(this),this.inner){this.inner=!1;var t=this.array();h0.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(t),h0.prototype.finalize.call(this)}};const ff=Zf();ff.sha256=ff;ff.sha224=Zf(!0);ff.sha256.hmac=Ut();ff.sha224.hmac=Ut(!0);var Z={},C=function(t){var r,e=new Float64Array(16);if(t)for(r=0;r>24&255,t[r+1]=e>>16&255,t[r+2]=e>>8&255,t[r+3]=e&255,t[r+4]=f>>24&255,t[r+5]=f>>16&255,t[r+6]=f>>8&255,t[r+7]=f&255}function Df(t,r,e,f,n){var x,o=0;for(x=0;x>>8)-1}function It(t,r,e,f){return Df(t,r,e,f,16)}function Hf(t,r,e,f){return Df(t,r,e,f,32)}function xr(t,r,e,f){for(var n=f[0]&255|(f[1]&255)<<8|(f[2]&255)<<16|(f[3]&255)<<24,x=e[0]&255|(e[1]&255)<<8|(e[2]&255)<<16|(e[3]&255)<<24,o=e[4]&255|(e[5]&255)<<8|(e[6]&255)<<16|(e[7]&255)<<24,s=e[8]&255|(e[9]&255)<<8|(e[10]&255)<<16|(e[11]&255)<<24,a=e[12]&255|(e[13]&255)<<8|(e[14]&255)<<16|(e[15]&255)<<24,b=f[4]&255|(f[5]&255)<<8|(f[6]&255)<<16|(f[7]&255)<<24,d=r[0]&255|(r[1]&255)<<8|(r[2]&255)<<16|(r[3]&255)<<24,S=r[4]&255|(r[5]&255)<<8|(r[6]&255)<<16|(r[7]&255)<<24,p=r[8]&255|(r[9]&255)<<8|(r[10]&255)<<16|(r[11]&255)<<24,g=r[12]&255|(r[13]&255)<<8|(r[14]&255)<<16|(r[15]&255)<<24,B=f[8]&255|(f[9]&255)<<8|(f[10]&255)<<16|(f[11]&255)<<24,I=e[16]&255|(e[17]&255)<<8|(e[18]&255)<<16|(e[19]&255)<<24,O=e[20]&255|(e[21]&255)<<8|(e[22]&255)<<16|(e[23]&255)<<24,P=e[24]&255|(e[25]&255)<<8|(e[26]&255)<<16|(e[27]&255)<<24,j=e[28]&255|(e[29]&255)<<8|(e[30]&255)<<16|(e[31]&255)<<24,D=f[12]&255|(f[13]&255)<<8|(f[14]&255)<<16|(f[15]&255)<<24,U=n,L=x,T=o,Y=s,M=a,R=b,h=d,u=S,_=p,w=g,v=B,F=I,H=O,q=P,G=j,c=D,i,y=0;y<20;y+=2)i=U+H|0,M^=i<<7|i>>>32-7,i=M+U|0,_^=i<<9|i>>>32-9,i=_+M|0,H^=i<<13|i>>>32-13,i=H+_|0,U^=i<<18|i>>>32-18,i=R+L|0,w^=i<<7|i>>>32-7,i=w+R|0,q^=i<<9|i>>>32-9,i=q+w|0,L^=i<<13|i>>>32-13,i=L+q|0,R^=i<<18|i>>>32-18,i=v+h|0,G^=i<<7|i>>>32-7,i=G+v|0,T^=i<<9|i>>>32-9,i=T+G|0,h^=i<<13|i>>>32-13,i=h+T|0,v^=i<<18|i>>>32-18,i=c+F|0,Y^=i<<7|i>>>32-7,i=Y+c|0,u^=i<<9|i>>>32-9,i=u+Y|0,F^=i<<13|i>>>32-13,i=F+u|0,c^=i<<18|i>>>32-18,i=U+Y|0,L^=i<<7|i>>>32-7,i=L+U|0,T^=i<<9|i>>>32-9,i=T+L|0,Y^=i<<13|i>>>32-13,i=Y+T|0,U^=i<<18|i>>>32-18,i=R+M|0,h^=i<<7|i>>>32-7,i=h+R|0,u^=i<<9|i>>>32-9,i=u+h|0,M^=i<<13|i>>>32-13,i=M+u|0,R^=i<<18|i>>>32-18,i=v+w|0,F^=i<<7|i>>>32-7,i=F+v|0,_^=i<<9|i>>>32-9,i=_+F|0,w^=i<<13|i>>>32-13,i=w+_|0,v^=i<<18|i>>>32-18,i=c+G|0,H^=i<<7|i>>>32-7,i=H+c|0,q^=i<<9|i>>>32-9,i=q+H|0,G^=i<<13|i>>>32-13,i=G+q|0,c^=i<<18|i>>>32-18;U=U+n|0,L=L+x|0,T=T+o|0,Y=Y+s|0,M=M+a|0,R=R+b|0,h=h+d|0,u=u+S|0,_=_+p|0,w=w+g|0,v=v+B|0,F=F+I|0,H=H+O|0,q=q+P|0,G=G+j|0,c=c+D|0,t[0]=U>>>0&255,t[1]=U>>>8&255,t[2]=U>>>16&255,t[3]=U>>>24&255,t[4]=L>>>0&255,t[5]=L>>>8&255,t[6]=L>>>16&255,t[7]=L>>>24&255,t[8]=T>>>0&255,t[9]=T>>>8&255,t[10]=T>>>16&255,t[11]=T>>>24&255,t[12]=Y>>>0&255,t[13]=Y>>>8&255,t[14]=Y>>>16&255,t[15]=Y>>>24&255,t[16]=M>>>0&255,t[17]=M>>>8&255,t[18]=M>>>16&255,t[19]=M>>>24&255,t[20]=R>>>0&255,t[21]=R>>>8&255,t[22]=R>>>16&255,t[23]=R>>>24&255,t[24]=h>>>0&255,t[25]=h>>>8&255,t[26]=h>>>16&255,t[27]=h>>>24&255,t[28]=u>>>0&255,t[29]=u>>>8&255,t[30]=u>>>16&255,t[31]=u>>>24&255,t[32]=_>>>0&255,t[33]=_>>>8&255,t[34]=_>>>16&255,t[35]=_>>>24&255,t[36]=w>>>0&255,t[37]=w>>>8&255,t[38]=w>>>16&255,t[39]=w>>>24&255,t[40]=v>>>0&255,t[41]=v>>>8&255,t[42]=v>>>16&255,t[43]=v>>>24&255,t[44]=F>>>0&255,t[45]=F>>>8&255,t[46]=F>>>16&255,t[47]=F>>>24&255,t[48]=H>>>0&255,t[49]=H>>>8&255,t[50]=H>>>16&255,t[51]=H>>>24&255,t[52]=q>>>0&255,t[53]=q>>>8&255,t[54]=q>>>16&255,t[55]=q>>>24&255,t[56]=G>>>0&255,t[57]=G>>>8&255,t[58]=G>>>16&255,t[59]=G>>>24&255,t[60]=c>>>0&255,t[61]=c>>>8&255,t[62]=c>>>16&255,t[63]=c>>>24&255}function ir(t,r,e,f){for(var n=f[0]&255|(f[1]&255)<<8|(f[2]&255)<<16|(f[3]&255)<<24,x=e[0]&255|(e[1]&255)<<8|(e[2]&255)<<16|(e[3]&255)<<24,o=e[4]&255|(e[5]&255)<<8|(e[6]&255)<<16|(e[7]&255)<<24,s=e[8]&255|(e[9]&255)<<8|(e[10]&255)<<16|(e[11]&255)<<24,a=e[12]&255|(e[13]&255)<<8|(e[14]&255)<<16|(e[15]&255)<<24,b=f[4]&255|(f[5]&255)<<8|(f[6]&255)<<16|(f[7]&255)<<24,d=r[0]&255|(r[1]&255)<<8|(r[2]&255)<<16|(r[3]&255)<<24,S=r[4]&255|(r[5]&255)<<8|(r[6]&255)<<16|(r[7]&255)<<24,p=r[8]&255|(r[9]&255)<<8|(r[10]&255)<<16|(r[11]&255)<<24,g=r[12]&255|(r[13]&255)<<8|(r[14]&255)<<16|(r[15]&255)<<24,B=f[8]&255|(f[9]&255)<<8|(f[10]&255)<<16|(f[11]&255)<<24,I=e[16]&255|(e[17]&255)<<8|(e[18]&255)<<16|(e[19]&255)<<24,O=e[20]&255|(e[21]&255)<<8|(e[22]&255)<<16|(e[23]&255)<<24,P=e[24]&255|(e[25]&255)<<8|(e[26]&255)<<16|(e[27]&255)<<24,j=e[28]&255|(e[29]&255)<<8|(e[30]&255)<<16|(e[31]&255)<<24,D=f[12]&255|(f[13]&255)<<8|(f[14]&255)<<16|(f[15]&255)<<24,U=n,L=x,T=o,Y=s,M=a,R=b,h=d,u=S,_=p,w=g,v=B,F=I,H=O,q=P,G=j,c=D,i,y=0;y<20;y+=2)i=U+H|0,M^=i<<7|i>>>32-7,i=M+U|0,_^=i<<9|i>>>32-9,i=_+M|0,H^=i<<13|i>>>32-13,i=H+_|0,U^=i<<18|i>>>32-18,i=R+L|0,w^=i<<7|i>>>32-7,i=w+R|0,q^=i<<9|i>>>32-9,i=q+w|0,L^=i<<13|i>>>32-13,i=L+q|0,R^=i<<18|i>>>32-18,i=v+h|0,G^=i<<7|i>>>32-7,i=G+v|0,T^=i<<9|i>>>32-9,i=T+G|0,h^=i<<13|i>>>32-13,i=h+T|0,v^=i<<18|i>>>32-18,i=c+F|0,Y^=i<<7|i>>>32-7,i=Y+c|0,u^=i<<9|i>>>32-9,i=u+Y|0,F^=i<<13|i>>>32-13,i=F+u|0,c^=i<<18|i>>>32-18,i=U+Y|0,L^=i<<7|i>>>32-7,i=L+U|0,T^=i<<9|i>>>32-9,i=T+L|0,Y^=i<<13|i>>>32-13,i=Y+T|0,U^=i<<18|i>>>32-18,i=R+M|0,h^=i<<7|i>>>32-7,i=h+R|0,u^=i<<9|i>>>32-9,i=u+h|0,M^=i<<13|i>>>32-13,i=M+u|0,R^=i<<18|i>>>32-18,i=v+w|0,F^=i<<7|i>>>32-7,i=F+v|0,_^=i<<9|i>>>32-9,i=_+F|0,w^=i<<13|i>>>32-13,i=w+_|0,v^=i<<18|i>>>32-18,i=c+G|0,H^=i<<7|i>>>32-7,i=H+c|0,q^=i<<9|i>>>32-9,i=q+H|0,G^=i<<13|i>>>32-13,i=G+q|0,c^=i<<18|i>>>32-18;t[0]=U>>>0&255,t[1]=U>>>8&255,t[2]=U>>>16&255,t[3]=U>>>24&255,t[4]=R>>>0&255,t[5]=R>>>8&255,t[6]=R>>>16&255,t[7]=R>>>24&255,t[8]=v>>>0&255,t[9]=v>>>8&255,t[10]=v>>>16&255,t[11]=v>>>24&255,t[12]=c>>>0&255,t[13]=c>>>8&255,t[14]=c>>>16&255,t[15]=c>>>24&255,t[16]=h>>>0&255,t[17]=h>>>8&255,t[18]=h>>>16&255,t[19]=h>>>24&255,t[20]=u>>>0&255,t[21]=u>>>8&255,t[22]=u>>>16&255,t[23]=u>>>24&255,t[24]=_>>>0&255,t[25]=_>>>8&255,t[26]=_>>>16&255,t[27]=_>>>24&255,t[28]=w>>>0&255,t[29]=w>>>8&255,t[30]=w>>>16&255,t[31]=w>>>24&255}function df(t,r,e,f){xr(t,r,e,f)}function pf(t,r,e,f){ir(t,r,e,f)}var m0=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function Nt(t,r,e,f,n,x,o){var s=new Uint8Array(16),a=new Uint8Array(64),b,d;for(d=0;d<16;d++)s[d]=0;for(d=0;d<8;d++)s[d]=x[d];for(;n>=64;){for(df(a,s,o,m0),d=0;d<64;d++)t[r+d]=e[f+d]^a[d];for(b=1,d=8;d<16;d++)b=b+(s[d]&255)|0,s[d]=b&255,b>>>=8;n-=64,r+=64,f+=64}if(n>0)for(df(a,s,o,m0),d=0;d=64;){for(df(o,x,n,m0),a=0;a<64;a++)t[r+a]=o[a];for(s=1,a=8;a<16;a++)s=s+(x[a]&255)|0,x[a]=s&255,s>>>=8;e-=64,r+=64}if(e>0)for(df(o,x,n,m0),a=0;a>>13|e<<3)&8191,f=t[4]&255|(t[5]&255)<<8,this.r[2]=(e>>>10|f<<6)&7939,n=t[6]&255|(t[7]&255)<<8,this.r[3]=(f>>>7|n<<9)&8191,x=t[8]&255|(t[9]&255)<<8,this.r[4]=(n>>>4|x<<12)&255,this.r[5]=x>>>1&8190,o=t[10]&255|(t[11]&255)<<8,this.r[6]=(x>>>14|o<<2)&8191,s=t[12]&255|(t[13]&255)<<8,this.r[7]=(o>>>11|s<<5)&8065,a=t[14]&255|(t[15]&255)<<8,this.r[8]=(s>>>8|a<<8)&8191,this.r[9]=a>>>5&127,this.pad[0]=t[16]&255|(t[17]&255)<<8,this.pad[1]=t[18]&255|(t[19]&255)<<8,this.pad[2]=t[20]&255|(t[21]&255)<<8,this.pad[3]=t[22]&255|(t[23]&255)<<8,this.pad[4]=t[24]&255|(t[25]&255)<<8,this.pad[5]=t[26]&255|(t[27]&255)<<8,this.pad[6]=t[28]&255|(t[29]&255)<<8,this.pad[7]=t[30]&255|(t[31]&255)<<8};gf.prototype.blocks=function(t,r,e){for(var f=this.fin?0:2048,n,x,o,s,a,b,d,S,p,g,B,I,O,P,j,D,U,L,T,Y=this.h[0],M=this.h[1],R=this.h[2],h=this.h[3],u=this.h[4],_=this.h[5],w=this.h[6],v=this.h[7],F=this.h[8],H=this.h[9],q=this.r[0],G=this.r[1],c=this.r[2],i=this.r[3],y=this.r[4],l=this.r[5],N=this.r[6],z=this.r[7],X=this.r[8],m=this.r[9];e>=16;)n=t[r+0]&255|(t[r+1]&255)<<8,Y+=n&8191,x=t[r+2]&255|(t[r+3]&255)<<8,M+=(n>>>13|x<<3)&8191,o=t[r+4]&255|(t[r+5]&255)<<8,R+=(x>>>10|o<<6)&8191,s=t[r+6]&255|(t[r+7]&255)<<8,h+=(o>>>7|s<<9)&8191,a=t[r+8]&255|(t[r+9]&255)<<8,u+=(s>>>4|a<<12)&8191,_+=a>>>1&8191,b=t[r+10]&255|(t[r+11]&255)<<8,w+=(a>>>14|b<<2)&8191,d=t[r+12]&255|(t[r+13]&255)<<8,v+=(b>>>11|d<<5)&8191,S=t[r+14]&255|(t[r+15]&255)<<8,F+=(d>>>8|S<<8)&8191,H+=S>>>5|f,p=0,g=p,g+=Y*q,g+=M*(5*m),g+=R*(5*X),g+=h*(5*z),g+=u*(5*N),p=g>>>13,g&=8191,g+=_*(5*l),g+=w*(5*y),g+=v*(5*i),g+=F*(5*c),g+=H*(5*G),p+=g>>>13,g&=8191,B=p,B+=Y*G,B+=M*q,B+=R*(5*m),B+=h*(5*X),B+=u*(5*z),p=B>>>13,B&=8191,B+=_*(5*N),B+=w*(5*l),B+=v*(5*y),B+=F*(5*i),B+=H*(5*c),p+=B>>>13,B&=8191,I=p,I+=Y*c,I+=M*G,I+=R*q,I+=h*(5*m),I+=u*(5*X),p=I>>>13,I&=8191,I+=_*(5*z),I+=w*(5*N),I+=v*(5*l),I+=F*(5*y),I+=H*(5*i),p+=I>>>13,I&=8191,O=p,O+=Y*i,O+=M*c,O+=R*G,O+=h*q,O+=u*(5*m),p=O>>>13,O&=8191,O+=_*(5*X),O+=w*(5*z),O+=v*(5*N),O+=F*(5*l),O+=H*(5*y),p+=O>>>13,O&=8191,P=p,P+=Y*y,P+=M*i,P+=R*c,P+=h*G,P+=u*q,p=P>>>13,P&=8191,P+=_*(5*m),P+=w*(5*X),P+=v*(5*z),P+=F*(5*N),P+=H*(5*l),p+=P>>>13,P&=8191,j=p,j+=Y*l,j+=M*y,j+=R*i,j+=h*c,j+=u*G,p=j>>>13,j&=8191,j+=_*q,j+=w*(5*m),j+=v*(5*X),j+=F*(5*z),j+=H*(5*N),p+=j>>>13,j&=8191,D=p,D+=Y*N,D+=M*l,D+=R*y,D+=h*i,D+=u*c,p=D>>>13,D&=8191,D+=_*G,D+=w*q,D+=v*(5*m),D+=F*(5*X),D+=H*(5*z),p+=D>>>13,D&=8191,U=p,U+=Y*z,U+=M*N,U+=R*l,U+=h*y,U+=u*i,p=U>>>13,U&=8191,U+=_*c,U+=w*G,U+=v*q,U+=F*(5*m),U+=H*(5*X),p+=U>>>13,U&=8191,L=p,L+=Y*X,L+=M*z,L+=R*N,L+=h*l,L+=u*y,p=L>>>13,L&=8191,L+=_*i,L+=w*c,L+=v*G,L+=F*q,L+=H*(5*m),p+=L>>>13,L&=8191,T=p,T+=Y*m,T+=M*X,T+=R*z,T+=h*N,T+=u*l,p=T>>>13,T&=8191,T+=_*y,T+=w*i,T+=v*c,T+=F*G,T+=H*q,p+=T>>>13,T&=8191,p=(p<<2)+p|0,p=p+g|0,g=p&8191,p=p>>>13,B+=p,Y=g,M=B,R=I,h=O,u=P,_=j,w=D,v=U,F=L,H=T,r+=16,e-=16;this.h[0]=Y,this.h[1]=M,this.h[2]=R,this.h[3]=h,this.h[4]=u,this.h[5]=_,this.h[6]=w,this.h[7]=v,this.h[8]=F,this.h[9]=H};gf.prototype.finish=function(t,r){var e=new Uint16Array(10),f,n,x,o;if(this.leftover){for(o=this.leftover,this.buffer[o++]=1;o<16;o++)this.buffer[o]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(f=this.h[1]>>>13,this.h[1]&=8191,o=2;o<10;o++)this.h[o]+=f,f=this.h[o]>>>13,this.h[o]&=8191;for(this.h[0]+=f*5,f=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=f,f=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=f,e[0]=this.h[0]+5,f=e[0]>>>13,e[0]&=8191,o=1;o<10;o++)e[o]=this.h[o]+f,f=e[o]>>>13,e[o]&=8191;for(e[9]-=1<<13,n=(f^1)-1,o=0;o<10;o++)e[o]&=n;for(n=~n,o=0;o<10;o++)this.h[o]=this.h[o]&n|e[o];for(this.h[0]=(this.h[0]|this.h[1]<<13)&65535,this.h[1]=(this.h[1]>>>3|this.h[2]<<10)&65535,this.h[2]=(this.h[2]>>>6|this.h[3]<<7)&65535,this.h[3]=(this.h[3]>>>9|this.h[4]<<4)&65535,this.h[4]=(this.h[4]>>>12|this.h[5]<<1|this.h[6]<<14)&65535,this.h[5]=(this.h[6]>>>2|this.h[7]<<11)&65535,this.h[6]=(this.h[7]>>>5|this.h[8]<<8)&65535,this.h[7]=(this.h[8]>>>8|this.h[9]<<5)&65535,x=this.h[0]+this.pad[0],this.h[0]=x&65535,o=1;o<8;o++)x=(this.h[o]+this.pad[o]|0)+(x>>>16)|0,this.h[o]=x&65535;t[r+0]=this.h[0]>>>0&255,t[r+1]=this.h[0]>>>8&255,t[r+2]=this.h[1]>>>0&255,t[r+3]=this.h[1]>>>8&255,t[r+4]=this.h[2]>>>0&255,t[r+5]=this.h[2]>>>8&255,t[r+6]=this.h[3]>>>0&255,t[r+7]=this.h[3]>>>8&255,t[r+8]=this.h[4]>>>0&255,t[r+9]=this.h[4]>>>8&255,t[r+10]=this.h[5]>>>0&255,t[r+11]=this.h[5]>>>8&255,t[r+12]=this.h[6]>>>0&255,t[r+13]=this.h[6]>>>8&255,t[r+14]=this.h[7]>>>0&255,t[r+15]=this.h[7]>>>8&255};gf.prototype.update=function(t,r,e){var f,n;if(this.leftover){for(n=16-this.leftover,n>e&&(n=e),f=0;f=16&&(n=e-e%16,this.blocks(t,r,n),r+=n,e-=n),e){for(f=0;f>16&1),x[e-1]&=65535;x[15]=o[15]-32767-(x[14]>>16&1),n=x[15]>>16&1,x[14]&=65535,q0(o,x,1-n)}for(e=0;e<16;e++)t[2*e]=o[e]&255,t[2*e+1]=o[e]>>8}function yt(t,r){var e=new Uint8Array(32),f=new Uint8Array(32);return X0(e,t),X0(f,r),Hf(e,0,f,0)}function Yt(t){var r=new Uint8Array(32);return X0(r,t),r[0]&1}function Gf(t,r){var e;for(e=0;e<16;e++)t[e]=r[2*e]+(r[2*e+1]<<8);t[15]&=32767}function B0(t,r,e){for(var f=0;f<16;f++)t[f]=r[f]+e[f]}function T0(t,r,e){for(var f=0;f<16;f++)t[f]=r[f]-e[f]}function $(t,r,e){var f,n,x=0,o=0,s=0,a=0,b=0,d=0,S=0,p=0,g=0,B=0,I=0,O=0,P=0,j=0,D=0,U=0,L=0,T=0,Y=0,M=0,R=0,h=0,u=0,_=0,w=0,v=0,F=0,H=0,q=0,G=0,c=0,i=e[0],y=e[1],l=e[2],N=e[3],z=e[4],X=e[5],m=e[6],W=e[7],V=e[8],Q=e[9],f0=e[10],k=e[11],r0=e[12],n0=e[13],x0=e[14],i0=e[15];f=r[0],x+=f*i,o+=f*y,s+=f*l,a+=f*N,b+=f*z,d+=f*X,S+=f*m,p+=f*W,g+=f*V,B+=f*Q,I+=f*f0,O+=f*k,P+=f*r0,j+=f*n0,D+=f*x0,U+=f*i0,f=r[1],o+=f*i,s+=f*y,a+=f*l,b+=f*N,d+=f*z,S+=f*X,p+=f*m,g+=f*W,B+=f*V,I+=f*Q,O+=f*f0,P+=f*k,j+=f*r0,D+=f*n0,U+=f*x0,L+=f*i0,f=r[2],s+=f*i,a+=f*y,b+=f*l,d+=f*N,S+=f*z,p+=f*X,g+=f*m,B+=f*W,I+=f*V,O+=f*Q,P+=f*f0,j+=f*k,D+=f*r0,U+=f*n0,L+=f*x0,T+=f*i0,f=r[3],a+=f*i,b+=f*y,d+=f*l,S+=f*N,p+=f*z,g+=f*X,B+=f*m,I+=f*W,O+=f*V,P+=f*Q,j+=f*f0,D+=f*k,U+=f*r0,L+=f*n0,T+=f*x0,Y+=f*i0,f=r[4],b+=f*i,d+=f*y,S+=f*l,p+=f*N,g+=f*z,B+=f*X,I+=f*m,O+=f*W,P+=f*V,j+=f*Q,D+=f*f0,U+=f*k,L+=f*r0,T+=f*n0,Y+=f*x0,M+=f*i0,f=r[5],d+=f*i,S+=f*y,p+=f*l,g+=f*N,B+=f*z,I+=f*X,O+=f*m,P+=f*W,j+=f*V,D+=f*Q,U+=f*f0,L+=f*k,T+=f*r0,Y+=f*n0,M+=f*x0,R+=f*i0,f=r[6],S+=f*i,p+=f*y,g+=f*l,B+=f*N,I+=f*z,O+=f*X,P+=f*m,j+=f*W,D+=f*V,U+=f*Q,L+=f*f0,T+=f*k,Y+=f*r0,M+=f*n0,R+=f*x0,h+=f*i0,f=r[7],p+=f*i,g+=f*y,B+=f*l,I+=f*N,O+=f*z,P+=f*X,j+=f*m,D+=f*W,U+=f*V,L+=f*Q,T+=f*f0,Y+=f*k,M+=f*r0,R+=f*n0,h+=f*x0,u+=f*i0,f=r[8],g+=f*i,B+=f*y,I+=f*l,O+=f*N,P+=f*z,j+=f*X,D+=f*m,U+=f*W,L+=f*V,T+=f*Q,Y+=f*f0,M+=f*k,R+=f*r0,h+=f*n0,u+=f*x0,_+=f*i0,f=r[9],B+=f*i,I+=f*y,O+=f*l,P+=f*N,j+=f*z,D+=f*X,U+=f*m,L+=f*W,T+=f*V,Y+=f*Q,M+=f*f0,R+=f*k,h+=f*r0,u+=f*n0,_+=f*x0,w+=f*i0,f=r[10],I+=f*i,O+=f*y,P+=f*l,j+=f*N,D+=f*z,U+=f*X,L+=f*m,T+=f*W,Y+=f*V,M+=f*Q,R+=f*f0,h+=f*k,u+=f*r0,_+=f*n0,w+=f*x0,v+=f*i0,f=r[11],O+=f*i,P+=f*y,j+=f*l,D+=f*N,U+=f*z,L+=f*X,T+=f*m,Y+=f*W,M+=f*V,R+=f*Q,h+=f*f0,u+=f*k,_+=f*r0,w+=f*n0,v+=f*x0,F+=f*i0,f=r[12],P+=f*i,j+=f*y,D+=f*l,U+=f*N,L+=f*z,T+=f*X,Y+=f*m,M+=f*W,R+=f*V,h+=f*Q,u+=f*f0,_+=f*k,w+=f*r0,v+=f*n0,F+=f*x0,H+=f*i0,f=r[13],j+=f*i,D+=f*y,U+=f*l,L+=f*N,T+=f*z,Y+=f*X,M+=f*m,R+=f*W,h+=f*V,u+=f*Q,_+=f*f0,w+=f*k,v+=f*r0,F+=f*n0,H+=f*x0,q+=f*i0,f=r[14],D+=f*i,U+=f*y,L+=f*l,T+=f*N,Y+=f*z,M+=f*X,R+=f*m,h+=f*W,u+=f*V,_+=f*Q,w+=f*f0,v+=f*k,F+=f*r0,H+=f*n0,q+=f*x0,G+=f*i0,f=r[15],U+=f*i,L+=f*y,T+=f*l,Y+=f*N,M+=f*z,R+=f*X,h+=f*m,u+=f*W,_+=f*V,w+=f*Q,v+=f*f0,F+=f*k,H+=f*r0,q+=f*n0,G+=f*x0,c+=f*i0,x+=38*L,o+=38*T,s+=38*Y,a+=38*M,b+=38*R,d+=38*h,S+=38*u,p+=38*_,g+=38*w,B+=38*v,I+=38*F,O+=38*H,P+=38*q,j+=38*G,D+=38*c,n=1,f=x+n+65535,n=Math.floor(f/65536),x=f-n*65536,f=o+n+65535,n=Math.floor(f/65536),o=f-n*65536,f=s+n+65535,n=Math.floor(f/65536),s=f-n*65536,f=a+n+65535,n=Math.floor(f/65536),a=f-n*65536,f=b+n+65535,n=Math.floor(f/65536),b=f-n*65536,f=d+n+65535,n=Math.floor(f/65536),d=f-n*65536,f=S+n+65535,n=Math.floor(f/65536),S=f-n*65536,f=p+n+65535,n=Math.floor(f/65536),p=f-n*65536,f=g+n+65535,n=Math.floor(f/65536),g=f-n*65536,f=B+n+65535,n=Math.floor(f/65536),B=f-n*65536,f=I+n+65535,n=Math.floor(f/65536),I=f-n*65536,f=O+n+65535,n=Math.floor(f/65536),O=f-n*65536,f=P+n+65535,n=Math.floor(f/65536),P=f-n*65536,f=j+n+65535,n=Math.floor(f/65536),j=f-n*65536,f=D+n+65535,n=Math.floor(f/65536),D=f-n*65536,f=U+n+65535,n=Math.floor(f/65536),U=f-n*65536,x+=n-1+37*(n-1),n=1,f=x+n+65535,n=Math.floor(f/65536),x=f-n*65536,f=o+n+65535,n=Math.floor(f/65536),o=f-n*65536,f=s+n+65535,n=Math.floor(f/65536),s=f-n*65536,f=a+n+65535,n=Math.floor(f/65536),a=f-n*65536,f=b+n+65535,n=Math.floor(f/65536),b=f-n*65536,f=d+n+65535,n=Math.floor(f/65536),d=f-n*65536,f=S+n+65535,n=Math.floor(f/65536),S=f-n*65536,f=p+n+65535,n=Math.floor(f/65536),p=f-n*65536,f=g+n+65535,n=Math.floor(f/65536),g=f-n*65536,f=B+n+65535,n=Math.floor(f/65536),B=f-n*65536,f=I+n+65535,n=Math.floor(f/65536),I=f-n*65536,f=O+n+65535,n=Math.floor(f/65536),O=f-n*65536,f=P+n+65535,n=Math.floor(f/65536),P=f-n*65536,f=j+n+65535,n=Math.floor(f/65536),j=f-n*65536,f=D+n+65535,n=Math.floor(f/65536),D=f-n*65536,f=U+n+65535,n=Math.floor(f/65536),U=f-n*65536,x+=n-1+37*(n-1),t[0]=x,t[1]=o,t[2]=s,t[3]=a,t[4]=b,t[5]=d,t[6]=S,t[7]=p,t[8]=g,t[9]=B,t[10]=I,t[11]=O,t[12]=P,t[13]=j,t[14]=D,t[15]=U}function U0(t,r){$(t,r,r)}function Wf(t,r){var e=C(),f;for(f=0;f<16;f++)e[f]=r[f];for(f=253;f>=0;f--)U0(e,e),f!==2&&f!==4&&$(e,e,r);for(f=0;f<16;f++)t[f]=e[f]}function Ot(t,r){var e=C(),f;for(f=0;f<16;f++)e[f]=r[f];for(f=250;f>=0;f--)U0(e,e),f!==1&&$(e,e,r);for(f=0;f<16;f++)t[f]=e[f]}function _f(t,r,e){var f=new Uint8Array(32),n=new Float64Array(80),x,o,s=C(),a=C(),b=C(),d=C(),S=C(),p=C();for(o=0;o<31;o++)f[o]=r[o];for(f[31]=r[31]&127|64,f[0]&=248,Gf(n,e),o=0;o<16;o++)a[o]=n[o],d[o]=s[o]=b[o]=0;for(s[0]=d[0]=1,o=254;o>=0;--o)x=f[o>>>3]>>>(o&7)&1,q0(s,a,x),q0(b,d,x),B0(S,s,b),T0(s,s,b),B0(b,a,d),T0(a,a,d),U0(d,S),U0(p,s),$(s,b,s),$(b,a,S),B0(S,s,b),T0(s,s,b),U0(a,s),T0(b,d,p),$(s,b,rr),B0(s,s,d),$(b,b,s),$(s,d,p),$(d,a,n),U0(a,S),q0(s,a,x),q0(b,d,x);for(o=0;o<16;o++)n[o+16]=s[o],n[o+32]=b[o],n[o+48]=a[o],n[o+64]=d[o];var g=n.subarray(32),B=n.subarray(16);return Wf(g,g),$(B,B,g),X0(t,B),0}function Ef(t,r){return _f(t,r,Tt)}function Lt(t,r){return vf(r,32),Ef(t,r)}function Af(t,r,e){var f=new Uint8Array(32);return _f(f,e,r),pf(t,tr,f,m0)}var Kt=Vf,or=qf;function sr(t,r,e,f,n,x){var o=new Uint8Array(32);return Af(o,n,x),Kt(t,r,e,f,o)}function ar(t,r,e,f,n,x){var o=new Uint8Array(32);return Af(o,n,x),or(t,r,e,f,o)}var wt=[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 vt(t,r,e,f){for(var n=new Int32Array(16),x=new Int32Array(16),o,s,a,b,d,S,p,g,B,I,O,P,j,D,U,L,T,Y,M,R,h,u,_,w,v,F,H=t[0],q=t[1],G=t[2],c=t[3],i=t[4],y=t[5],l=t[6],N=t[7],z=r[0],X=r[1],m=r[2],W=r[3],V=r[4],Q=r[5],f0=r[6],k=r[7],r0=0;f>=128;){for(M=0;M<16;M++)R=8*M+r0,n[M]=e[R+0]<<24|e[R+1]<<16|e[R+2]<<8|e[R+3],x[M]=e[R+4]<<24|e[R+5]<<16|e[R+6]<<8|e[R+7];for(M=0;M<80;M++)if(o=H,s=q,a=G,b=c,d=i,S=y,p=l,g=N,B=z,I=X,O=m,P=W,j=V,D=Q,U=f0,L=k,h=N,u=k,_=u&65535,w=u>>>16,v=h&65535,F=h>>>16,h=(i>>>14|V<<32-14)^(i>>>18|V<<32-18)^(V>>>41-32|i<<32-(41-32)),u=(V>>>14|i<<32-14)^(V>>>18|i<<32-18)^(i>>>41-32|V<<32-(41-32)),_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,h=i&y^~i&l,u=V&Q^~V&f0,_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,h=wt[M*2],u=wt[M*2+1],_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,h=n[M%16],u=x[M%16],_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,w+=_>>>16,v+=w>>>16,F+=v>>>16,T=v&65535|F<<16,Y=_&65535|w<<16,h=T,u=Y,_=u&65535,w=u>>>16,v=h&65535,F=h>>>16,h=(H>>>28|z<<32-28)^(z>>>34-32|H<<32-(34-32))^(z>>>39-32|H<<32-(39-32)),u=(z>>>28|H<<32-28)^(H>>>34-32|z<<32-(34-32))^(H>>>39-32|z<<32-(39-32)),_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,h=H&q^H&G^q&G,u=z&X^z&m^X&m,_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,w+=_>>>16,v+=w>>>16,F+=v>>>16,g=v&65535|F<<16,L=_&65535|w<<16,h=b,u=P,_=u&65535,w=u>>>16,v=h&65535,F=h>>>16,h=T,u=Y,_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,w+=_>>>16,v+=w>>>16,F+=v>>>16,b=v&65535|F<<16,P=_&65535|w<<16,q=o,G=s,c=a,i=b,y=d,l=S,N=p,H=g,X=B,m=I,W=O,V=P,Q=j,f0=D,k=U,z=L,M%16===15)for(R=0;R<16;R++)h=n[R],u=x[R],_=u&65535,w=u>>>16,v=h&65535,F=h>>>16,h=n[(R+9)%16],u=x[(R+9)%16],_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,T=n[(R+1)%16],Y=x[(R+1)%16],h=(T>>>1|Y<<32-1)^(T>>>8|Y<<32-8)^T>>>7,u=(Y>>>1|T<<32-1)^(Y>>>8|T<<32-8)^(Y>>>7|T<<32-7),_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,T=n[(R+14)%16],Y=x[(R+14)%16],h=(T>>>19|Y<<32-19)^(Y>>>61-32|T<<32-(61-32))^T>>>6,u=(Y>>>19|T<<32-19)^(T>>>61-32|Y<<32-(61-32))^(Y>>>6|T<<32-6),_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,w+=_>>>16,v+=w>>>16,F+=v>>>16,n[R]=v&65535|F<<16,x[R]=_&65535|w<<16;h=H,u=z,_=u&65535,w=u>>>16,v=h&65535,F=h>>>16,h=t[0],u=r[0],_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,w+=_>>>16,v+=w>>>16,F+=v>>>16,t[0]=H=v&65535|F<<16,r[0]=z=_&65535|w<<16,h=q,u=X,_=u&65535,w=u>>>16,v=h&65535,F=h>>>16,h=t[1],u=r[1],_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,w+=_>>>16,v+=w>>>16,F+=v>>>16,t[1]=q=v&65535|F<<16,r[1]=X=_&65535|w<<16,h=G,u=m,_=u&65535,w=u>>>16,v=h&65535,F=h>>>16,h=t[2],u=r[2],_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,w+=_>>>16,v+=w>>>16,F+=v>>>16,t[2]=G=v&65535|F<<16,r[2]=m=_&65535|w<<16,h=c,u=W,_=u&65535,w=u>>>16,v=h&65535,F=h>>>16,h=t[3],u=r[3],_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,w+=_>>>16,v+=w>>>16,F+=v>>>16,t[3]=c=v&65535|F<<16,r[3]=W=_&65535|w<<16,h=i,u=V,_=u&65535,w=u>>>16,v=h&65535,F=h>>>16,h=t[4],u=r[4],_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,w+=_>>>16,v+=w>>>16,F+=v>>>16,t[4]=i=v&65535|F<<16,r[4]=V=_&65535|w<<16,h=y,u=Q,_=u&65535,w=u>>>16,v=h&65535,F=h>>>16,h=t[5],u=r[5],_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,w+=_>>>16,v+=w>>>16,F+=v>>>16,t[5]=y=v&65535|F<<16,r[5]=Q=_&65535|w<<16,h=l,u=f0,_=u&65535,w=u>>>16,v=h&65535,F=h>>>16,h=t[6],u=r[6],_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,w+=_>>>16,v+=w>>>16,F+=v>>>16,t[6]=l=v&65535|F<<16,r[6]=f0=_&65535|w<<16,h=N,u=k,_=u&65535,w=u>>>16,v=h&65535,F=h>>>16,h=t[7],u=r[7],_+=u&65535,w+=u>>>16,v+=h&65535,F+=h>>>16,w+=_>>>16,v+=w>>>16,F+=v>>>16,t[7]=N=v&65535|F<<16,r[7]=k=_&65535|w<<16,r0+=128,f-=128}return f}function H0(t,r,e){var f=new Int32Array(8),n=new Int32Array(8),x=new Uint8Array(256),o,s=e;for(f[0]=1779033703,f[1]=3144134277,f[2]=1013904242,f[3]=2773480762,f[4]=1359893119,f[5]=2600822924,f[6]=528734635,f[7]=1541459225,n[0]=4089235720,n[1]=2227873595,n[2]=4271175723,n[3]=1595750129,n[4]=2917565137,n[5]=725511199,n[6]=4215389547,n[7]=327033209,vt(f,n,r,e),e%=128,o=0;o=0;--n)f=e[n/8|0]>>(n&7)&1,pt(t,r,f),bf(r,t),bf(t,t),pt(t,r,f)}function Ff(t,r){var e=[C(),C(),C(),C()];Y0(e[0],lt),Y0(e[1],dt),Y0(e[2],W0),$(e[3],lt,dt),Qf(t,e,r)}function Jf(t,r,e){var f=new Uint8Array(64),n=[C(),C(),C(),C()],x;for(e||vf(r,32),H0(f,r,32),f[0]&=248,f[31]&=127,f[31]|=64,Ff(n,f),$f(t,n),x=0;x<32;x++)r[x+32]=t[x];return 0}var hf=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 kf(t,r){var e,f,n,x;for(f=63;f>=32;--f){for(e=0,n=f-32,x=f-12;n>4)*hf[n],e=r[n]>>8,r[n]&=255;for(n=0;n<32;n++)r[n]-=e*hf[n];for(f=0;f<32;f++)r[f+1]+=r[f]>>8,t[f]=r[f]&255}function Of(t){var r=new Float64Array(64),e;for(e=0;e<64;e++)r[e]=t[e];for(e=0;e<64;e++)t[e]=0;kf(t,r)}function Ct(t,r,e,f){var n=new Uint8Array(64),x=new Uint8Array(64),o=new Uint8Array(64),s,a,b=new Float64Array(64),d=[C(),C(),C(),C()];H0(n,f,32),n[0]&=248,n[31]&=127,n[31]|=64;var S=e+64;for(s=0;s>7&&T0(t[0],Yf,t[0]),$(t[3],t[0],t[1]),0)}function ft(t,r,e,f){var n,x=new Uint8Array(32),o=new Uint8Array(64),s=[C(),C(),C(),C()],a=[C(),C(),C(),C()];if(e<64||jt(a,f))return-1;for(n=0;n=0};Z.sign.keyPair=function(){var t=new Uint8Array(V0),r=new Uint8Array(Q0);return Jf(t,r),{publicKey:t,secretKey:r}};Z.sign.keyPair.fromSecretKey=function(t){if(_0(t),t.length!==Q0)throw new Error("bad secret key size");for(var r=new Uint8Array(V0),e=0;e{const r=typeof t=="string"?new TextEncoder().encode(t):new Uint8Array(t),e=Math.ceil(r.length/3)*3,f=new Uint8Array(e);f.set(r);const n=_t.encode(f).split(""),x=e*4/3;for(;n.length{const r=_t.decode(t.replace(/=/g,"A")),e=Math.ceil(3*t.length/4),f=(t.match(/=/g)||[]).length,n=r.length-e;return r.slice(n,r.length-f)}};function it(t){const r={ALPHABET_MAP:{},BASE:t.length,LEADER:t.charAt(0),ALPHABET:t};for(let e=0;ebr(e,r),decode:e=>wr(e,r)}}function br(t,r){if(t.length===0)return"";const e=[0];for(let n of t){for(let x=0;x0;)e.push(n%r.BASE),n=n/r.BASE|0}let f="";for(let n=0;t[n]===0&&n=0;--n)f+=r.ALPHABET[e[n]];return f}function yr(t,r){if(typeof t!="string")throw new TypeError("Expected String");if(t.length===0)return new Uint8Array(0);const e=[0];for(const f of t){const n=r.ALPHABET_MAP[f];if(n===void 0)return;let x=n;for(let o=0;o>=8;for(;x>0;)e.push(x&255),x>>=8}for(let f=0;t[f]===r.LEADER&&ff.z));return r.map((f,n)=>f.toAffine(e[n]))}static normalizeZ(r){return this.toAffineBatch(r).map(this.fromAffine)}equals(r){At(r);const{x:e,y:f,z:n}=this,{x,y:o,z:s}=r,a=E(e*s),b=E(x*n),d=E(f*s),S=E(o*n);return a===b&&d===S}negate(){return new t0(E(-this.x),this.y,this.z,E(-this.t))}double(){const{x:r,y:e,z:f}=this,{a:n}=o0,x=E(r*r),o=E(e*e),s=E(G0*E(f*f)),a=E(n*x),b=r+e,d=E(E(b*b)-x-o),S=a+o,p=S-s,g=a-o,B=E(d*p),I=E(S*g),O=E(d*g),P=E(p*S);return new t0(B,I,P,O)}add(r){At(r);const{x:e,y:f,z:n,t:x}=this,{x:o,y:s,z:a,t:b}=r,d=E((f-e)*(s+o)),S=E((f+e)*(s-o)),p=E(S-d);if(p===u0)return this.double();const g=E(n*G0*b),B=E(x*G0*a),I=B+g,O=S+d,P=B-g,j=E(I*p),D=E(O*P),U=E(I*P),L=E(p*O);return new t0(j,D,L,U)}subtract(r){return this.add(r.negate())}precomputeWindow(r){const e=1+256/r,f=[];let n=this,x=n;for(let o=0;o>=S,B>a&&(B-=d,r+=J),B===0){let I=n[g];p%2&&(I=I.negate()),o=o.add(I)}else{let I=n[g+Math.abs(B)-1];B<0&&(I=I.negate()),x=x.add(I)}}return t0.normalizeZ([x,o])[0]}multiply(r,e){return this.wNAF(Kf(r,o0.l),e)}multiplyUnsafe(r){let e=Kf(r,o0.l,!1);const f=t0.BASE,n=t0.ZERO;if(e===u0)return n;if(this.equals(n)||e===J)return this;if(this.equals(f))return this.wNAF(e);let x=n,o=this;for(;e>u0;)e&J&&(x=x.add(o)),o=o.double(),e>>=J;return x}isSmallOrder(){return this.multiplyUnsafe(o0.h).equals(t0.ZERO)}isTorsionFree(){return this.multiplyUnsafe(o0.l).equals(t0.ZERO)}toAffine(r=Rf(this.z)){const{x:e,y:f,z:n}=this,x=E(e*r),o=E(f*r);if(E(n*r)!==J)throw new Error("invZ was invalid");return new l0(x,o)}fromRistrettoBytes(){zf()}toRistrettoBytes(){zf()}fromRistrettoHash(){zf()}}t0.BASE=new t0(o0.Gx,o0.Gy,J,E(o0.Gx*o0.Gy));t0.ZERO=new t0(u0,J,J,u0);function At(t){if(!(t instanceof t0))throw new TypeError("ExtendedPoint expected")}function Nf(t){if(!(t instanceof S0))throw new TypeError("RistrettoPoint expected")}function zf(){throw new Error("Legacy method: switch to RistrettoPoint")}class S0{constructor(r){this.ep=r}static calcElligatorRistrettoMap(r){const{d:e}=o0,f=E(k0*r*r),n=E((f+J)*_r);let x=BigInt(-1);const o=E((x-e*f)*E(f+e));let{isValid:s,value:a}=st(n,o),b=E(a*r);K0(b)||(b=E(-b)),s||(a=b),s||(x=f);const d=E(x*(f-J)*Er-o),S=a*a,p=E((a+a)*o),g=E(d*pr),B=E(J-S),I=E(J+S);return new t0(E(p*I),E(B*g),E(g*I),E(p*B))}static hashToCurve(r){r=ef(r,64);const e=Mf(r.slice(0,32)),f=this.calcElligatorRistrettoMap(e),n=Mf(r.slice(32,64)),x=this.calcElligatorRistrettoMap(n);return new S0(f.add(x))}static fromHex(r){r=ef(r,32);const{a:e,d:f}=o0,n="RistrettoPoint.fromHex: the hex is not valid encoding of RistrettoPoint",x=Mf(r);if(!Tr(yf(x),r)||K0(x))throw new Error(n);const o=E(x*x),s=E(J+e*o),a=E(J-e*o),b=E(s*s),d=E(a*a),S=E(e*f*b-d),{isValid:p,value:g}=St(E(S*d)),B=E(g*a),I=E(g*B*S);let O=E((x+x)*B);K0(O)&&(O=E(-O));const P=E(s*I),j=E(O*P);if(!p||K0(j)||P===u0)throw new Error(n);return new S0(new t0(O,P,J,j))}toRawBytes(){let{x:r,y:e,z:f,t:n}=this.ep;const x=E(E(f+e)*E(f-e)),o=E(r*e),s=E(o*o),{value:a}=St(E(x*s)),b=E(a*x),d=E(a*o),S=E(b*d*n);let p;if(K0(n*S)){let B=E(e*k0),I=E(r*k0);r=B,e=I,p=E(b*gr)}else p=d;K0(r*S)&&(e=E(-e));let g=E((f-e)*p);return K0(g)&&(g=E(-g)),yf(g)}toHex(){return Uf(this.toRawBytes())}toString(){return this.toHex()}equals(r){Nf(r);const e=this.ep,f=r.ep,n=E(e.x*f.y)===E(e.y*f.x),x=E(e.y*f.y)===E(e.x*f.x);return n||x}add(r){return Nf(r),new S0(this.ep.add(r.ep))}subtract(r){return Nf(r),new S0(this.ep.subtract(r.ep))}multiply(r){return new S0(this.ep.multiply(r))}multiplyUnsafe(r){return new S0(this.ep.multiplyUnsafe(r))}}S0.BASE=new S0(t0.BASE);S0.ZERO=new S0(t0.ZERO);const Lf=new WeakMap;class l0{constructor(r,e){this.x=r,this.y=e}_setWindowSize(r){this._WINDOW_SIZE=r,Lf.delete(this)}static fromHex(r,e=!0){const{d:f,P:n}=o0;r=ef(r,32);const x=r.slice();x[31]=r[31]&-129;const o=Tf(x);if(e&&o>=n)throw new Error("Expected 0 < hex < P");if(!e&&o>=Vt)throw new Error("Expected 0 < hex < 2**256");const s=E(o*o),a=E(s-J),b=E(f*s+J);let{isValid:d,value:S}=st(a,b);if(!d)throw new Error("Point.fromHex: invalid y coordinate");const p=(S&J)===J;return(r[31]&128)!==0!==p&&(S=E(-S)),new l0(S,o)}static async fromPrivateKey(r){return(await Gt(r)).point}toRawBytes(){const r=yf(this.y);return r[31]|=this.x&J?128:0,r}toHex(){return Uf(this.toRawBytes())}toX25519(){const{y:r}=this,e=E((J+r)*Rf(J-r));return yf(e)}isTorsionFree(){return t0.fromAffine(this).isTorsionFree()}equals(r){return this.x===r.x&&this.y===r.y}negate(){return new l0(E(-this.x),this.y)}add(r){return t0.fromAffine(this).add(t0.fromAffine(r)).toAffine()}subtract(r){return this.add(r.negate())}multiply(r){return t0.fromAffine(this).multiply(r,this).toAffine()}}l0.BASE=new l0(o0.Gx,o0.Gy);l0.ZERO=new l0(u0,J);function Ft(...t){if(!t.every(f=>f instanceof Uint8Array))throw new Error("Expected Uint8Array list");if(t.length===1)return t[0];const r=t.reduce((f,n)=>f+n.length,0),e=new Uint8Array(r);for(let f=0,n=0;fr.toString(16).padStart(2,"0"));function Uf(t){if(!(t instanceof Uint8Array))throw new Error("Uint8Array expected");let r="";for(let e=0;e=u0?e:r+e}function Rf(t,r=o0.P){if(t===u0||r<=u0)throw new Error(`invert: expected positive integers, got n=${t} mod=${r}`);let e=E(t,r),f=r,n=u0,x=J;for(;e!==u0;){const s=f/e,a=f%e,b=n-x*s;f=e,e=a,n=x,x=b}if(f!==J)throw new Error("invert: does not exist");return E(n,r)}function Sr(t,r=o0.P){const e=new Array(t.length),f=t.reduce((x,o,s)=>o===u0?x:(e[s]=x,E(x*o,r)),J),n=Rf(f,r);return t.reduceRight((x,o,s)=>o===u0?x:(e[s]=E(x*e[s],r),E(x*o,r)),n),e}function z0(t,r){const{P:e}=o0;let f=t;for(;r-- >u0;)f*=f,f%=e;return f}function Br(t){const{P:r}=o0,e=BigInt(5),f=BigInt(10),n=BigInt(20),x=BigInt(40),o=BigInt(80),a=t*t%r*t%r,b=z0(a,G0)*a%r,d=z0(b,J)*t%r,S=z0(d,e)*d%r,p=z0(S,f)*S%r,g=z0(p,n)*p%r,B=z0(g,x)*g%r,I=z0(B,o)*B%r,O=z0(I,o)*B%r,P=z0(O,f)*S%r;return{pow_p_5_8:z0(P,G0)*t%r,b2:a}}function st(t,r){const e=E(r*r*r),f=E(e*e*r),n=Br(t*f).pow_p_5_8;let x=E(t*e*n);const o=E(r*x*x),s=x,a=E(x*k0),b=o===t,d=o===E(-t),S=o===E(-t*k0);return b&&(x=s),(d||S)&&(x=a),K0(x)&&(x=E(-x)),{isValid:b||d,value:x}}function St(t){return st(J,t)}function Ur(t){return E(Tf(t),o0.l)}function Tr(t,r){if(t.length!==r.length)return!1;for(let e=0;e{if(t=ef(t),t.length<40||t.length>1024)throw new Error("Expected 40-1024 bytes of private key as per FIPS 186");return E(Tf(t),o0.l-J)+J},randomBytes:(t=32)=>{if(af.web)return af.web.getRandomValues(new Uint8Array(t));throw new Error("The environment doesn't have randomBytes function")},randomPrivateKey:()=>at.randomBytes(32),sha512:async(...t)=>{const r=Ft(...t);if(af.web){const e=await af.web.subtle.digest("SHA-512",r.buffer);return new Uint8Array(e)}else throw new Error("The environment doesn't have sha512 function")},precompute(t=8,r=l0.BASE){const e=r.equals(l0.BASE)?r:new l0(r.x,r.y);return e._setWindowSize(t),e.multiply(G0),e},sha512Sync:void 0};Object.defineProperties(at,{sha512Sync:{configurable:!1,get(){return Pf},set(t){Pf||(Pf=t)}}});async function zr(t,r){if(!t&&!r)return Math.random();!r&&typeof t=="number"&&(r=t,t=new Uint8Array(r));const e=65536,f=r,n=new Uint8Array(r);for(let x=0;x44)throw new O0("too_long","Base58 string too long, see rfc/0009_Duniter_Blockchain_Protocol_V11.md#public-key for details.");if(!/^[A-HJ-NP-Za-km-z1-9]+$/.test(t))throw new O0("not_b58","Character out of base 58, see rfc/0009_Duniter_Blockchain_Protocol_V11.md#public-key for details.");if(b0.decode(t).length>32)throw new O0("too_long","binary key too long, see rfc/0009_Duniter_Blockchain_Protocol_V11.md#public-key for details.");return!0}function Wt(t){const r=of(t);try{l0.fromHex(r)}catch(e){throw new O0("bad_ed25519_point",`Invalid public key : not a valid ed25519 point RFC8032 5.1.3 https://www.rfc-editor.org/rfc/rfc8032#page-11 Internal:${e}`)}return!0}function kr(t){try{return Wt(t)}catch{return!1}}function Zr(t,r=!0){if(!t)throw new O0("empty","Invalid public key : empty input.");let e;try{const f=of(t);e=typeof t=="string"?t:b0.encode(f)}catch(f){throw f.message.match(/base58/)?new O0("not_b58","Character out of base 58, see rfc/0009_Duniter_Blockchain_Protocol_V11.md#public-key for details."):f.name==="RangeError"?new O0("too_long","Binary key too long, see rfc/0009_Duniter_Blockchain_Protocol_V11.md#public-key for details."):f}return r&&(jr(e),Wt(e)),!0}function fe(t){try{return Zr(t)}catch{return!1}}async function te(t,r){const e=await $t(t.trim()+`
+`,r);return`${t.trim()}
+${e}`}function $t(t,r,e="b64"){const f=new TextEncoder,n=Dr(f.encode(t),Kr(r).slice(0,32));switch(e.toLocaleLowerCase()){case"raw":case"array":case"uint8array":return n;case"b64":return xt.encode(n);case"b58":return b0.encode(n);default:throw new Error(`OutputFormat ${e} not handled.`)}}function Dr(t,r){const e=ct(r);return Z.sign.detached(t,e.secretKey)}const Hr=24,mr=32;function Xr(t,r){return typeof t=="string"?r(t):t}function Vr(t){const r=new TextEncoder;return typeof t=="string"?r.encode(t):t}function qr(t){return Xr(t,b0.decode)}function Gr(t){return new TextDecoder().decode(t)}function jf(t){return qr(t).slice(0,mr)}function re(t,r,e,f=0,n=""){const x=n?b0.decode(n):Z.randomBytes(Hr),o=Ht(of(e)),s=mt(jf(r)),a=p=>xt.encode(Z.box(Vr(p),x,o,s)),b=b0.encode(ct(jf(r)).publicKey),d=f||Math.trunc(Date.now()/1e3),S={nonce:b0.encode(x),issuer:b,recipient:e,time:d,version:2};return t.title&&(S.title=a(t.title)),t.content&&(S.content=a(t.content)),S.hash=dr.encode(Cf.digest(JSON.stringify(S))).toUpperCase(),S.signature=$t(S.hash,r),S}function ee(t,r){const e=b0.decode(t.nonce),f=mt(jf(r)),n=Ht(of(t.issuer)),x=s=>Gr(Z.box.open(xt.decode(s),e,n,f)),o={};return t.content&&(o.content=x(t.content)),t.title&&(o.title=x(t.title)),o}class O0 extends Error{constructor(r,e){super(e),this.name=r}}export{b0 as b58,qr as b58orBin2bin,Bt as b58pubKey2bin,Kr as b58secretKey2bin,xt as b64,Gr as bin2str,jr as checkDuniterPubKey,Wt as checkEd25519PubKey,Zr as checkKey,$r as idSecPass2cleanKeys,Pr as idSecPass2rawAll,Jr as isDuniterPubKey,kr as isEd25519PubKey,fe as isPubKey,Wr as mockRandom,Cr as onlyPubKey,of as pubKey2bin,M0 as pubKey2checksum,Qr as pubKey2shortKey,Yr as raw2b58,Dr as rawSign,Or as saltPass2seed,ct as seed2keyPair,Zf as sha256,$t as sign,te as signDocument,Lr as sliceInitialsZero,Vr as strOrBin2bin,ee as textDecrypt,re as textEncrypt,Xr as typedStrOrBin2Bin};